:root{
  --navy:#0b1826;
  --navy-2:#0f2134;
  --cream:#ece7dc;
  --muted:#93a0b2;
  --dim:#5e6b7d;
  --brass:#b8985a;
  --rule:rgba(184,152,90,.20);
  --rule-soft:rgba(184,152,90,.10);
  --gutter:clamp(24px, 6vw, 96px);
  --serif:'Newsreader', Georgia, 'Times New Roman', serif;
  --sans:'Inter', system-ui, -apple-system, sans-serif;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--navy); color:var(--cream);
  font-family:var(--sans); font-weight:300;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.wrap{max-width:1320px; margin:0 auto; padding-inline:var(--gutter);}

.lbl{
  font-family:var(--sans); font-size:10px; font-weight:500;
  letter-spacing:.24em; text-transform:uppercase;
}

/* ---------- header ---------- */
header{
  position:sticky; top:0; z-index:20;
  background:rgba(11,24,38,.88);
  backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--rule);
}
.bar{display:flex; align-items:center; justify-content:space-between; height:78px;}
.brand{display:flex; align-items:center; gap:15px;}
.mono{
  width:32px; height:32px; flex:none;
  border:1px solid var(--brass); color:var(--brass);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--serif); font-size:14px; letter-spacing:.5px;
}
.brand span{color:var(--cream); letter-spacing:.3em;}
header a{color:var(--muted); text-decoration:none; transition:color .2s;}
header a:hover{color:var(--brass);}

/* ---------- hero ---------- */
.hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,45vw);
  min-height:calc(100svh - 78px);
}
.hero-text{
  display:flex; flex-direction:column; justify-content:center;
  padding-block:96px;
  padding-left:max(var(--gutter), calc((100vw - 1320px) / 2 + var(--gutter)));
  padding-right:clamp(32px, 5vw, 88px);
}
.eyebrow{color:var(--brass); margin-bottom:34px;}
h1{
  font-family:var(--serif); font-weight:400;
  font-size:clamp(42px, 5.6vw, 82px);
  line-height:1.06; letter-spacing:-.015em;
  margin-bottom:32px; max-width:13ch;
}
h1 span{display:block;}
.lede{
  font-size:clamp(15px,1.15vw,17px); line-height:1.8; color:var(--muted);
  max-width:46ch;
}
.hero-rule{width:56px; height:1px; background:var(--brass); margin-top:44px;}
.hero-img{
  position:relative;
  background:url('/assets/hero.jpg') center 40%/cover no-repeat;
  min-height:420px;
  filter:saturate(.82);
}
.hero-img::after{
  content:''; position:absolute; inset:0;
  background:
    linear-gradient(100deg, var(--navy) 0%, rgba(11,24,38,.62) 30%, rgba(11,24,38,.30) 100%),
    linear-gradient(180deg, rgba(11,24,38,.34) 0%, rgba(11,24,38,0) 35%);
}

/* ---------- facts ---------- */
.facts{
  display:grid; grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
}
.fact{padding:44px 32px 46px 0;}
.fact + .fact{padding-left:32px; border-left:1px solid var(--rule-soft);}
.fact .lbl{color:var(--dim); display:block; margin-bottom:14px;}
.fact p{font-family:var(--serif); font-size:21px; color:var(--cream);}

/* ---------- register rows ---------- */
.row{
  display:grid; grid-template-columns:240px 1fr;
  gap:32px; padding:76px 0;
  border-bottom:1px solid var(--rule-soft);
}
.row .lbl{color:var(--brass); padding-top:11px;}
.row .body{
  font-family:var(--serif); font-size:clamp(19px,1.7vw,26px);
  line-height:1.62; color:#d9d3c6; max-width:34ch;
}

/* ---------- contact ---------- */
.contact{padding-block:110px 120px;}
.contact .lbl{color:var(--brass); display:block; margin-bottom:26px;}
.contact a{
  font-family:var(--serif); font-size:clamp(30px,4.2vw,58px);
  color:var(--cream); text-decoration:none;
  border-bottom:1px solid var(--rule);
  padding-bottom:6px; transition:border-color .25s, color .25s;
}
.contact a:hover{border-color:var(--brass); color:#fff;}
.contact p{margin-top:32px; color:var(--dim); font-size:14px; line-height:1.8; max-width:46ch;}

/* ---------- footer ---------- */
footer{border-top:1px solid var(--rule); background:#091320;}
.foot{
  display:flex; justify-content:space-between; gap:40px;
  padding-block:40px; font-size:11.5px; color:var(--dim); line-height:1.9;
}
.foot a{color:var(--dim);}
.credit{color:#46505f; font-size:10.5px;}
.credit a{color:#46505f; text-decoration:underline; text-underline-offset:2px;}

@media (max-width:900px){
  .hero{grid-template-columns:1fr; min-height:0;}
  .hero-text{padding:64px var(--gutter) 56px; }
  .hero-img{min-height:58vh; order:-1;}
  .hero-img::after{background:linear-gradient(180deg, rgba(11,24,38,.55) 0%, rgba(11,24,38,.15) 45%, var(--navy) 100%);}
  .facts{grid-template-columns:1fr 1fr;}
  .fact{padding:30px 20px 32px 0;}
  .fact:nth-child(odd){border-left:none; padding-left:0;}
  .fact:nth-child(n+3){border-top:1px solid var(--rule-soft);}
  .row{grid-template-columns:1fr; gap:16px; padding:52px 0;}
  .row .lbl{padding-top:0;}
  .foot{flex-direction:column; gap:14px;}
}

/* ---------- header right / language switcher ---------- */
.head-right{display:flex; align-items:center; gap:20px;}
.lang{display:flex; align-items:center; gap:8px;}
.lang a, .lang strong{
  font-family:var(--sans); font-size:10px; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase; text-decoration:none;
}
.lang strong{color:var(--brass);}
.lang a{color:var(--dim); transition:color .2s;}
.lang a:hover{color:var(--cream);}
.lang .sep{width:1px; height:11px; background:var(--rule); display:block;}
.head-div{width:1px; height:14px; background:var(--rule);}

@media (max-width:520px){
  .bar{height:66px;}
  .brand span{font-size:9px; letter-spacing:.2em;}
  .head-right{gap:13px;}
}
