/* Page-level tweaks live here. */
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
body{font-family:var(--fs-font-family)}
:focus-visible{outline:3px solid var(--fs-focus);outline-offset:2px}
.band-dark :focus-visible,.hero :focus-visible{outline-color:var(--fs-cyan)}
.band-dark .micro,.hero .micro{color:rgba(245,248,251,.86)}
.hero .lead{line-height:1.7}

/* ============== HEADER V2 ============== */
.fs-header{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(8,27,46,.10)}
.fs-header__inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s20)}
.fs-header__brand{display:flex;align-items:center;gap:var(--s12);align-self:flex-end}
.fs-header__nav{justify-content:center}
.fs-header__cta{white-space:nowrap}
.fs-header .nav a{padding:var(--s8) var(--s8);color:var(--fs-navy)}
.fs-header .nav a[aria-current="page"]::after{transform:scaleX(1)}
.fs-header .brand-logo{filter:none}
@media(max-width:520px){
  .fs-header__cta{white-space:normal;font-size:14px}
}

/* ============== HERO V2 (Homepage only) ============== */
.fs-hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(900px 520px at 10% 10%,rgba(25,211,255,.2),transparent 60%),radial-gradient(820px 480px at 85% 20%,rgba(46,242,178,.16),transparent 60%),linear-gradient(120deg,#061524,#081b2e 42%,#06131f 100%)}
.fs-hero__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.fs-hero__photo-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,6,23,.48),rgba(2,6,23,.24),rgba(2,6,23,.08));z-index:10;pointer-events:none}
.fs-hero__trust-layer{position:absolute;inset:0;z-index:20;pointer-events:none}
.fs-hero::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");mix-blend-mode:soft-light;opacity:.18;pointer-events:none;z-index:6}
.fs-hero__bg{position:absolute;inset:-10%;background:radial-gradient(620px 260px at 70% 10%,rgba(25,211,255,.22),transparent 70%);pointer-events:none;animation:hero-glow 18s ease-in-out infinite;z-index:5}
.fs-hero__bg::before{content:"";position:absolute;inset:0;background:radial-gradient(420px 200px at 80% 55%,rgba(46,242,178,.18),transparent 70%);opacity:.9;animation:hero-glow 22s ease-in-out infinite reverse}
.fs-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.08) 35%,transparent 60%);transform:translateX(-40%);opacity:.4;filter:blur(1px);animation:hero-streak 12s linear infinite}
.fs-hero__inner{position:relative;z-index:30;display:grid;gap:var(--s32);grid-template-columns:1fr;align-items:center;padding:var(--s72) 0}
.fs-hero__content{max-width:640px}
.fs-hero__title{font-size:clamp(32px,4vw,52px);line-height:1.05;margin:0 0 var(--s16)}
.fs-hero__lede{font-size:clamp(16px,1.6vw,20px);margin:0 0 var(--s20);color:rgba(245,248,251,.9)}
.fs-hero__form{margin:0 0 var(--s12)}
.fs-hero__row{display:flex;gap:var(--s12);flex-wrap:wrap}
.fs-hero__input{flex:1 1 240px;background:#fff;color:var(--fs-navy);border:1px solid rgba(8,27,46,.12);border-radius:16px;padding:14px 16px;min-height:52px}
.fs-hero__input::placeholder{color:rgba(8,27,46,.45)}
.fs-hero__button{min-height:52px;border-radius:16px;padding:0 var(--s20);font-size:16px}
.fs-hero__input{min-width:0}
@media(max-width:520px){
  .fs-hero__row{flex-direction:column;align-items:stretch}
  .fs-hero__input{flex:1 1 auto}
  .fs-hero__button{width:100%}
}
.fs-hero__note{font-size:14px;margin:var(--s8) 0;color:rgba(245,248,251,.78)}
.fs-hero__what{font-size:14px;margin:var(--s8) 0 0;color:rgba(245,248,251,.78)}
.fs-hero__micro{display:flex;flex-wrap:wrap;gap:var(--s12);margin-top:var(--s16);font-size:14px;color:rgba(245,248,251,.78)}
.fs-hero__micro a{text-decoration:underline}
.trust-card{position:absolute;transform:translate(-50%,-50%);opacity:0;animation-name:trustFloatFade;animation-timing-function:cubic-bezier(.22,.61,.36,1);animation-fill-mode:both;will-change:transform,opacity;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(18px);box-shadow:0 20px 40px rgba(0,0,0,.28);border-radius:14px;padding:8px 14px;color:rgba(255,255,255,.96);font-size:12px;text-shadow:0 1px 6px rgba(0,0,0,.35)}
@media (min-width:768px){.trust-card{font-size:15px}}
@keyframes trustFloatFade{0%{opacity:0;transform:translate(-50%,-48%) scale(.985)}14%{opacity:1;transform:translate(-50%,-50%) scale(1)}74%{opacity:1;transform:translate(-50%,-52%) scale(1)}100%{opacity:0;transform:translate(-50%,-54%) scale(.995)}}
@media (prefers-reduced-motion: reduce){
  .trust-card{animation:none !important;opacity:0 !important}
  .fs-hero__trust-layer{display:none !important}
}
@media(min-width:980px){
  .fs-hero__inner{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .fs-hero__bg{animation:none}
  .fs-hero__bg::before,.fs-hero__bg::after{animation:none}
  .fs-hero::after{display:none}
}

@keyframes hero-glow{
  0%,100%{transform:translate3d(0,0,0);opacity:.9}
  50%{transform:translate3d(2%,1%,0);opacity:1}
}
@keyframes hero-streak{
  0%{transform:translateX(-60%)}
  100%{transform:translateX(60%)}
}
