/* ===== Final homepage — minimal burger header · logo-first · editorial statement ===== */

/* hero — logo only on first paint */
.hero-solo{min-height:100vh; min-height:100svh; display:flex; flex-direction:column; align-items:center;
  justify-content:center; text-align:center; padding:90px 26px; position:relative}
.hero-solo img{width:150px; height:auto; opacity:0;
  animation:soloIn 1.2s cubic-bezier(.22,.61,.36,1) .15s both, soloFloat 7s ease-in-out 1.6s infinite}
@keyframes soloIn{0%{opacity:0; transform:scale(.86) translateY(8px)}100%{opacity:1; transform:none}}
@keyframes soloFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.hero-solo .cue{position:absolute; bottom:34px; left:50%; transform:translateX(-50%);
  font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:#8a8378;
  opacity:0; animation:soloCue .9s ease 1.4s forwards}
@keyframes soloCue{to{opacity:1}}
.hero-solo .cue .dot{display:block; width:22px; height:36px; border:2px solid rgba(48,84,162,.4); border-radius:14px; margin:10px auto 0; position:relative}
.hero-solo .cue .dot::after{content:""; position:absolute; left:50%; bottom:7px; width:4px; height:8px; border-radius:4px; background:var(--blue); transform:translateX(-50%); animation:cueDot 1.6s ease-in-out infinite}
@keyframes cueDot{0%,100%{opacity:0; transform:translate(-50%,0)}50%{opacity:1; transform:translate(-50%,-8px)}}

/* editorial statement — below the fold, reveals on scroll */
.statement{padding:16vh 30px; max-width:1200px; margin:0 auto}
.statement h1{font-family:"Assistant",sans-serif; font-weight:800; letter-spacing:-.03em; line-height:1.05;
  font-size:clamp(38px,7.6vw,92px); color:var(--ink); max-width:15ch; margin:0}
.statement h1 .l{display:block; overflow:hidden; padding-bottom:.04em}
.statement h1 .l span{display:block; transform:translateY(115%); transition:transform .9s cubic-bezier(.22,.61,.36,1)}
.statement.in h1 .l span{transform:none}
.statement h1 .l:nth-child(2) span{transition-delay:.09s}
.statement h1 .l:nth-child(3) span{transition-delay:.18s}
.statement h1 em{font-family:"Newsreader",Georgia,serif; font-style:italic; font-weight:500; color:var(--blue)}
.statement .sub{font-family:"Newsreader",Georgia,serif; font-style:italic; font-size:clamp(20px,2.4vw,28px);
  color:#3a382f; max-width:620px; margin:34px 0 0; opacity:0; transform:translateY(20px);
  transition:opacity .8s ease .35s, transform .8s cubic-bezier(.22,.61,.36,1) .35s}
.statement.in .sub{opacity:1; transform:none}
.statement .cta{display:flex; gap:14px; flex-wrap:wrap; margin-top:36px; opacity:0; transform:translateY(20px);
  transition:opacity .8s ease .5s, transform .8s cubic-bezier(.22,.61,.36,1) .5s}
.statement.in .cta{opacity:1; transform:none}

@media(prefers-reduced-motion:reduce){
  .hero-solo img{animation:none; opacity:1}
  .statement h1 .l span,.statement .sub,.statement .cta{transition:none; transform:none; opacity:1}
}
