.auth-page{background:#fff;color:#111;font-family:"Source Sans 3",Arial,sans-serif}
.auth-page main{overflow-x:hidden}
.auth-page h2{color:#111}
.auth-page p{margin:0}

.auth-hero{
  position:relative;
  min-height:560px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.72) 42%,rgba(255,255,255,.55) 100%),
    url("images/auth/auth-europe-hero.png") center/cover no-repeat;
}
.auth-hero-inner{
  max-width:1180px;margin:0 auto;padding:42px 28px 36px;
  display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center
}

.auth-kicker{
  margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#222
}
.auth-diamond{display:flex;align-items:center;gap:10px;margin:0 0 16px;max-width:220px}
.auth-diamond::before,.auth-diamond::after{content:"";height:1px;flex:1;background:#c98a00}
.auth-diamond span{width:8px;height:8px;transform:rotate(45deg);background:#c98a00;display:block}

.auth-title{
  margin:0 0 16px;font-size:clamp(28px,3.4vw,42px);font-weight:800;line-height:1.15;letter-spacing:.01em;color:#111
}
.auth-title .em{color:#c98a00}
.auth-lead{margin:0 0 28px;max-width:36rem;color:#333;font-size:16px;line-height:1.65}
.auth-lead .em{color:#c98a00;font-weight:700}

.auth-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:520px}
.auth-benefits article{text-align:center}
.auth-ico{
  width:54px;height:54px;border-radius:50%;margin:0 auto 8px;display:grid;place-items:center;
  border:2px solid #c98a00;color:#c98a00;background:rgba(255,255,255,.75)
}
.auth-ico svg{width:22px;height:22px}
.auth-benefits h3{margin:0 0 4px;font-size:12px;letter-spacing:.08em;font-weight:800}
.auth-benefits p{margin:0;color:#555;font-size:12px;line-height:1.35}

.auth-card{
  background:#fff;border-radius:16px;padding:28px 26px 24px;
  box-shadow:0 18px 50px rgba(18,18,18,.12);border:1px solid rgba(201,138,0,.18)
}
.auth-card .brand-mini{
  margin:0 0 8px;color:#c98a00;font-weight:800;letter-spacing:.16em;font-size:13px
}
.auth-card h1{
  margin:0 0 8px;font-size:32px;font-weight:800;color:#111
}
.auth-card .hello{margin:0 0 6px;font-weight:700;color:#111;font-size:16px}
.auth-card .intro{margin:0 0 18px;color:#555;font-size:14px;line-height:1.5}

.auth-field{position:relative;margin:0 0 12px}
.auth-field input{
  width:100%;box-sizing:border-box;height:48px;margin:0;padding:10px 42px 10px 44px;
  border:1px solid #d8d8d8;border-radius:10px;background:#fff;font:inherit;color:#111
}
.auth-field input:focus{outline:2px solid rgba(201,138,0,.35);border-color:#c98a00}
.auth-field .ico{
  position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#c98a00;pointer-events:none
}
.auth-toggle{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);
  width:36px;height:36px;border:0;background:transparent;color:#888;cursor:pointer;display:grid;place-items:center
}
.auth-toggle svg{width:18px;height:18px}

.auth-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 16px;flex-wrap:wrap}
.auth-check{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;cursor:pointer}
.auth-check input{width:auto;margin:0;padding:0;height:auto}
.auth-forgot{color:#c98a00;font-weight:700;text-decoration:none;font-size:14px}
.auth-forgot:hover{text-decoration:underline}

.auth-submit{
  width:100%;border:0;border-radius:10px;padding:13px 18px;cursor:pointer;
  background:linear-gradient(135deg,#f2c45b,#c98a00);color:#fff;font-weight:800;letter-spacing:.06em;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:15px
}
.auth-submit svg{width:20px;height:20px}
.auth-submit:disabled{opacity:.55;cursor:not-allowed}

.auth-sep{display:flex;align-items:center;gap:10px;margin:16px 0 14px;color:#888;font-size:13px}
.auth-sep::before,.auth-sep::after{content:"";flex:1;height:1px;background:#e6e6e6}

.auth-register{
  width:100%;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:1.5px solid #c98a00;border-radius:10px;padding:12px 18px;color:#c98a00;text-decoration:none;
  font-weight:800;background:#fff
}
.auth-register svg{width:18px;height:18px}
.auth-resend{
  display:block;width:100%;margin:12px 0 0;border:0;background:transparent;
  color:#c98a00;font-weight:700;cursor:pointer;font:inherit;padding:8px
}
.auth-resend:disabled{opacity:.55;cursor:not-allowed;color:#888}

.auth-msg{margin:10px 0 0;font-size:14px;min-height:1.2em}
.auth-msg.ok{color:#11643e}
.auth-msg.err{color:#8f1d14}

.auth-info{
  background:#fff;border-top:1px solid rgba(201,138,0,.18);border-bottom:1px solid rgba(201,138,0,.18)
}
.auth-info-grid{
  max-width:1180px;margin:0 auto;padding:22px 12px;
  display:grid;grid-template-columns:repeat(6,1fr)
}
.auth-info article{
  text-align:center;padding:8px 12px;border-right:1px solid #eee
}
.auth-info article:last-child{border-right:0}
.auth-info svg{width:26px;height:26px;color:#c98a00;display:block;margin:0 auto 8px}
.auth-info h3{margin:0 0 4px;font-size:12px;letter-spacing:.04em;font-weight:800}
.auth-info p{margin:0;color:#555;font-size:12px;line-height:1.35}

.auth-foot{
  background:#fff;color:#333;padding:22px 28px;display:flex;justify-content:space-between;align-items:center;
  gap:16px;flex-wrap:wrap
}
.auth-foot a{color:#333;text-decoration:none;font-size:13px}
.auth-foot a:hover{color:#c98a00}
.auth-foot-legal{display:flex;flex-wrap:wrap;gap:8px 14px}
.auth-copy{display:flex;align-items:center;gap:8px;margin:0;font-size:13px}
.auth-copy img{width:28px;height:28px;object-fit:cover;border-radius:50%}
.auth-social{display:flex;gap:8px;flex-wrap:wrap}
.auth-social a{
  width:36px;height:36px;border-radius:50%;display:grid;place-items:center;padding:0;
  color:#c98a00;border:1px solid rgba(201,138,0,.45);background:#fff;text-decoration:none
}
.auth-social svg{width:16px;height:16px;fill:currentColor}
.auth-social .is-unset{opacity:.55;cursor:not-allowed}

@media (max-width:1100px){
  .auth-info-grid{grid-template-columns:repeat(3,1fr);gap:12px}
  .auth-info article{border-right:0;border-bottom:1px solid #eee}
}
@media (max-width:980px){
  .auth-hero-inner{grid-template-columns:1fr;padding:28px 18px}
  .auth-benefits{max-width:none}
  .auth-title{font-size:30px}
  .auth-foot{padding-left:18px;padding-right:18px}
}
@media (max-width:700px){
  .auth-benefits,.auth-info-grid{grid-template-columns:1fr 1fr}
  .auth-card{padding:22px 16px}
  .auth-hero{min-height:0;background:
    linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.78)),
    url("images/auth/auth-europe-hero.png") center/cover no-repeat}
}
@media (max-width:420px){
  .auth-benefits{grid-template-columns:1fr 1fr}
  .auth-info-grid{grid-template-columns:1fr}
}
