/* =====================================================================
   AIPN v11 — palette & type matched to the reference layout,
   photo-backed card frames, white footer, magnifying-lens wordmark
   ===================================================================== */
:root,.dark,.topbar,.cta-band,.control,.board,.manifesto,.mnav,.tier.feat,.pk.feat,.bplan.feat,.cam,.net,.paper,.light{
  --navy:#0B1F45;--navy-2:#13306B;--heading:#102C63;--blue:#1B3A9E;
  --lamp:#F26A1B;--lamp-2:#FF8533;
  --text:#0B1F45;--soft:#3A4E74;--muted:#5F7196;
  --ink:#FFFFFF;--ink-2:#F3F6FB;--ink-3:#E3E9F3;--line:#DCE3EF;--ghost:rgba(11,31,69,.35);
  --f-display:"Poppins","Segoe UI",system-ui,sans-serif;
  --f-cond:"Poppins","Segoe UI",system-ui,sans-serif;
  --f-type:"Poppins","Segoe UI",system-ui,sans-serif;
  --f-body:"Inter","Segoe UI",system-ui,sans-serif}
body{font-family:var(--f-body);color:var(--soft)}
.h-xl,.h-lg,.h-md,.htitle,.pf-cta h2,.fcard h2,h1,h2,h3{font-family:var(--f-display)!important;font-stretch:100%!important}
.h-lg,.h-md{color:var(--heading)!important;letter-spacing:-.015em!important;font-weight:700!important}
.h-lg{font-size:clamp(28px,2.9vw,46px)!important;line-height:1.18!important}
.h-xl{letter-spacing:-.02em!important;font-weight:700!important}
.phero .h-xl,.hero .htitle{color:#fff!important}
.lead{color:var(--soft)}
.eyebrow{font:600 13px var(--f-display)!important;letter-spacing:.12em!important;color:var(--lamp)!important}
.sec-head::after{opacity:.18}
.paper,.board,.why,.intro,.control,.net,.files{background:#F3F6FB!important}
.sec,.founder,.manifesto{background:#fff}
.tape{background:var(--navy)!important}
.btn{font-family:var(--f-display)!important;font-weight:600!important;font-size:15px!important;border-radius:6px!important}
.btn--sm{font-size:14px!important}
.btn--paper,.btn[style*="--bg:var(--paper-ink)"],.btn[style*="--bg:#0E1B42"]{--bg:var(--navy)!important}
/* small monospace labels → clean caps */
.hkick,.hstats small,.hstrip small,.polaroid .ph .st,.polaroid .stages,.cam .hud,.cam .dur,.pk .lvl,.tier .lvl,.chip,.crumbs,.fileno,.coords,.pw-sub,.pf-k,.pf-col h4,.pf-cred span,.pf-fh,.pf-file dt,.pf-file dd{font-family:var(--f-display)!important;font-stretch:100%!important}
.polaroid h3{font-family:var(--f-display)!important;text-transform:none!important;letter-spacing:0!important;color:var(--heading)}
.polaroid p{font-family:var(--f-body)!important;color:var(--soft)}
.nav>li>a{font-family:var(--f-display)!important;font-weight:500!important;color:var(--navy)!important}
.nav>li>a .ni{color:var(--navy)}
.topbar,.tb-l a,.tb-r>span{font-family:var(--f-display)!important}

/* ---------- photo-backed card frames ---------- */
.cbg{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;transition:box-shadow .55s var(--ease),transform .5s var(--ease),border-color .35s!important}
.polaroid .ph.cbg{box-shadow:inset 0 0 0 999px rgba(11,31,69,.64)!important;border:0!important}
.polaroid:hover .ph.cbg{box-shadow:inset 0 0 0 999px rgba(11,31,69,.42)!important}
.polaroid .ph.cbg svg{color:var(--lamp-2);filter:drop-shadow(0 6px 14px rgba(0,0,0,.45))}
.polaroid .ph.cbg .st{color:#fff!important;background:rgba(242,106,27,.95);padding:3px 8px;border-radius:4px;left:10px;top:10px}
.polaroid .ph.cbg .sx{color:rgba(255,255,255,.22)!important}
.cam .screen.cbg{box-shadow:inset 0 0 0 999px rgba(11,31,69,.82)!important}
.cam:hover .screen.cbg{box-shadow:inset 0 0 0 999px rgba(11,31,69,.7)!important}
.cam .screen.cbg h3,.cam .screen.cbg .price{color:#fff!important}
.cam .screen.cbg .price small,.cam .screen.cbg .hud{color:#C7D2EA!important}
.cam .screen.cbg .dur{color:var(--lamp-2)!important}
:is(.sector,.hstrip a,.law>div,.mv article,.dcard,.f-facts>div,.spec).cbg{box-shadow:inset 0 0 0 999px rgba(255,255,255,.93),0 18px 36px -28px rgba(11,31,69,.55)!important}
.spec.cbg{box-shadow:inset 0 0 0 999px rgba(255,255,255,.88),0 18px 36px -28px rgba(11,31,69,.55)!important}
:is(.sector,.hstrip a,.law>div,.mv article).cbg:hover{box-shadow:inset 0 0 0 999px rgba(11,31,69,.86),0 28px 50px -26px rgba(11,31,69,.6)!important}
:is(.sector,.hstrip a,.law>div,.mv article).cbg:hover :is(h3,p,b,span,small){color:#fff!important}
:is(.sector,.hstrip a,.law>div,.mv article).cbg:hover .eyebrow{color:var(--lamp-2)!important}
.sector.cbg:hover svg{color:var(--lamp-2)}
.hstrip a.cbg:hover svg{background:var(--lamp)!important;color:#fff!important}
.spec.cbg::before{opacity:.55}

/* ---------- footer: white ---------- */
.site-footer.pf{background:#FFFFFF!important;border-top:1px solid var(--line)}
.pf-tapes{background:#FFFFFF!important}
.pf-file{background:#F7F9FD}
.pf-cred li{background:#F7F9FD}
.pf .fs{background:#F3F6FB}
.pf-bottom{background:#FFFFFF!important;border-top:1px solid var(--line)!important}
.pf-bottom .wrap{color:var(--muted)!important}
.pf-pol a{color:var(--navy)!important}
.pf-pol a+a::before{background:var(--line)!important}
.pf-pol a:hover{color:var(--lamp)!important}

/* ---------- footer wordmark: magnifying lens over a soft-focus AIPN ---------- */
.pf-word{--R:clamp(70px,8.4vw,150px);--mx:20%;--my:50%;display:grid!important;justify-items:center;gap:clamp(8px,1.2vw,18px);padding:clamp(20px,3vw,40px) 0 clamp(30px,4vw,56px)!important;overflow:hidden;cursor:none}
.pf-word::before,.pf-word::after,.pw-scan,.pw-fill{display:none!important}
.pw-stage{position:relative;display:grid;place-items:center}
.pw-base,.pw-sharp{grid-area:1/1;font:800 clamp(120px,23vw,400px)/.86 var(--f-display);letter-spacing:.03em;user-select:none;white-space:nowrap}
.pw-base{color:#E7ECF5;filter:blur(2.2px);text-shadow:0 2px 0 #fff,0 -1px 0 rgba(11,31,69,.06)}
.pw-sharp{color:var(--navy);text-shadow:0 2px 0 rgba(242,106,27,.35);
  transform:scale(1.16);transform-origin:var(--mx) var(--my);
  -webkit-mask-image:radial-gradient(circle calc(var(--R) / 1.16 - 6px) at var(--mx) var(--my),#000 98%,transparent 100%);mask-image:radial-gradient(circle calc(var(--R) / 1.16 - 6px) at var(--mx) var(--my),#000 98%,transparent 100%)}
.pw-lens{position:absolute;left:var(--mx);top:var(--my);width:calc(var(--R) * 2);height:calc(var(--R) * 2);margin:calc(var(--R) * -1) 0 0 calc(var(--R) * -1);border-radius:50%;pointer-events:none;
  border:clamp(5px,.55vw,9px) solid var(--navy);box-shadow:0 0 0 2px rgba(255,255,255,.9),0 22px 44px -16px rgba(11,31,69,.55),inset 0 0 0 2px rgba(255,255,255,.6),inset 0 -18px 40px rgba(11,31,69,.08);
  background:radial-gradient(circle at 32% 26%,rgba(255,255,255,.55),rgba(255,255,255,0) 34%),radial-gradient(circle at 70% 78%,rgba(27,58,158,.06),transparent 55%)}
.pw-lens i{position:absolute;left:calc(50% + var(--R) * .62);top:calc(50% + var(--R) * .62);width:calc(var(--R) * .95);height:clamp(12px,1.3vw,22px);border-radius:12px;transform-origin:0 50%;transform:rotate(45deg);
  background:linear-gradient(180deg,#FF8A3D,#F26A1B 55%,#C9520F);box-shadow:0 10px 18px -8px rgba(11,31,69,.55)}
.pw-lens i::before{content:"";position:absolute;left:-12%;top:-30%;width:22%;height:160%;border-radius:6px;background:var(--navy)}
.pw-sub{display:flex!important;align-items:center;gap:clamp(12px,2vw,28px);font:600 clamp(11px,1vw,14px) var(--f-display)!important;letter-spacing:.34em!important;text-transform:uppercase;color:var(--navy)!important}
.pw-sub b{font-weight:600}
.pw-sub b:last-child{color:var(--lamp)}
.pw-sub em{display:block;width:clamp(40px,8vw,120px);height:2px;background:linear-gradient(90deg,var(--navy),var(--lamp))}
@media (max-width:560px){.pw-sub{flex-direction:column;gap:8px;letter-spacing:.24em!important}}
@media (prefers-reduced-motion:reduce){.pw-sharp{transform:none}}

/* home: moments-on-record strip */
.orw{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.ort{display:flex;gap:22px;width:max-content;animation:orScroll 60s linear infinite;padding-block:6px 20px}
.orw:hover .ort{animation-play-state:paused}
.ort figure{margin:0;position:relative;height:clamp(240px,24vw,340px);border-radius:12px;overflow:hidden;box-shadow:0 22px 40px -28px rgba(11,31,69,.6);flex:none}
.ort img{height:100%;width:auto;display:block;transition:transform .8s var(--ease)}
.ort figure:hover img{transform:scale(1.05)}
.ort figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 12px;background:linear-gradient(0deg,rgba(11,31,69,.9),transparent);color:#fff;font:500 13px var(--f-display);opacity:0;transform:translateY(10px);transition:opacity .35s,transform .45s var(--ease)}
.ort figure:hover figcaption{opacity:1;transform:none}
@keyframes orScroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ort{animation:none}}

.sector h3{color:var(--heading)!important;letter-spacing:.04em!important}.sector p{color:var(--soft)!important}
.ort figure[aria-hidden]{pointer-events:none}
