/* Forman Pacific — Premier (golden standard) — dark vault theme */

.premier{
  --ink:#050608;
  --ink-soft:#0A0C10;
  --muted:#7A756C;
  --muted-light:#A39E94;
  --ivory:#050608;
  --parchment:#0A0C10;
  --paper:#0E1016;
  --gold:#B8926A;
  --gold-light:#D4B483;
  --gold-bright:#E8D9B8;
  --gold-deep:#7A5C32;
  --gold-line:rgba(184,146,106,.28);
  --gold-glow:rgba(232,217,184,.18);
  --max:1160px;
  --display:"Cormorant Garamond","IBM Plex Serif",Georgia,serif;
  --sans:"IBM Plex Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  --serif:var(--display);
  color:rgba(247,245,240,.88);
  background:var(--ink);
}

.premier .site-header{
  position:sticky;top:var(--fp-vv-offset-top,0);z-index:9200;
  background:rgba(5,6,8,.88);
  backdrop-filter:blur(16px) saturate(1.1);
  border-bottom:1px solid rgba(184,146,106,.22);
}
.premier .site-header .brand-name{color:var(--gold-bright);font-family:var(--display);font-weight:500}

.premier .brand .header-emblem{
  flex-shrink:0;
  width:40px;height:40px;
  filter:drop-shadow(0 2px 10px rgba(184,146,106,.25));
}
.premier .brand{gap:.65rem}
.premier .site-header .brand-sub{color:rgba(232,217,184,.55)}
.premier .site-header .nav-link{color:rgba(247,245,240,.55)}
.premier .site-header .nav-link:hover,.premier .site-header .nav-link.is-active{color:var(--gold-bright)}
.premier .site-header .btn-ghost{
  border-color:rgba(184,146,106,.45);color:var(--gold-bright);
  background:rgba(184,146,106,.08);
}
.premier .site-header .btn-ghost:hover{
  border-color:var(--gold-light);background:rgba(184,146,106,.16);
}
.premier .nav-toggle span{background:var(--gold-bright)}
.premier .mobile-nav{
  position:relative;z-index:9190;
  background:var(--ink-soft);border-bottom:1px solid var(--gold-line);
}
body.fp-nav-open{overflow:hidden}
@media (max-width:900px){
  .premier .mobile-nav:not([hidden]){
    position:fixed;left:0;right:0;top:var(--fp-header-height,3.25rem);z-index:10150;
    max-height:calc(var(--fp-vv-height,100dvh) - var(--fp-header-height,3.25rem) - var(--fp-vv-offset-bottom,0px));
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    box-shadow:0 12px 32px rgba(0,0,0,.45);
  }
}
.premier .mobile-nav .nav-link{color:rgba(247,245,240,.7)}
.premier .mobile-nav .btn-primary{background:linear-gradient(135deg,var(--gold-deep),var(--gold));color:var(--ink)}

.premier .mobile-nav-section{
  margin-top:.35rem;padding-top:.85rem;
  border-top:1px solid rgba(184,146,106,.22);
}
.premier .mobile-nav-kicker{
  margin:0 0 .35rem;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(232,217,184,.45);
}

/* Gold rain overlay */
.fp-gold-rain{
  position:fixed;inset:0;z-index:8500;pointer-events:none;overflow:hidden;
  top:var(--fp-vv-offset-top,0);left:0;right:0;width:100%;height:var(--fp-vv-height,100dvh);
  opacity:1;
  -webkit-touch-callout:none;
  -webkit-user-select:none;user-select:none;
}
.fp-gold-rain.is-live{opacity:1}
.fp-gold-rain.is-interactive{pointer-events:none;touch-action:auto}
.fp-gold-rain.is-interactive canvas{
  pointer-events:none;display:block;width:100%;height:100%;
}

/* Touch-minted FP coin */
.fp-gold-mint-coin{
  position:fixed;z-index:8600;pointer-events:none;
  transform:translate(-50%,-50%);
  width:40px;height:40px;
  animation:fp-mint-coin-life 3s ease-out forwards;
}
.fp-gold-mint-coin-scene{
  position:absolute;left:50%;top:50%;
  width:82%;height:82%;
  transform:translate(-50%,-50%);
  perspective:520px;
}
.fp-gold-mint-coin-3d{
  width:100%;height:100%;position:relative;transform-style:preserve-3d;
  animation:fp-mint-coin-spin 3s cubic-bezier(0.12,0,0.95,0.55) forwards;
}
@keyframes fp-mint-coin-spin{
  from{transform:rotateY(0deg)}
  to{transform:rotateY(1800deg)}
}
.fp-gold-mint-ring{
  position:fixed;z-index:8595;pointer-events:none;
  transform:translate(-50%,-50%);
  border:2px solid rgba(255,249,238,.85);
  border-radius:50%;
  box-shadow:0 0 28px rgba(255,249,238,.55), inset 0 0 18px rgba(255,249,238,.25);
  animation:fp-mint-ring 0.68s cubic-bezier(.12,.85,.22,1) forwards;
}
@keyframes fp-mint-ring{
  from{width:8px;height:8px;opacity:1}
  to{width:240px;height:240px;opacity:0;border-width:1px}
}

@keyframes fp-mint-coin-life{
  0%{opacity:0;transform:translate(-50%,-50%) scale(0);filter:brightness(3.4)}
  4%{opacity:1;transform:translate(-50%,-50%) scale(1.42);filter:brightness(2.8)}
  10%{transform:translate(-50%,-50%) scale(1);filter:brightness(1.2)}
  82%{opacity:1}
  100%{opacity:0;transform:translate(-50%,-50%) scale(0.82);filter:brightness(1.35)}
}

.premier #main{position:relative;z-index:1;background:var(--ink)}

/* Hero */
.premier-hero{
  position:relative;
  min-height:min(92vh,860px);
  display:flex;align-items:center;
  background:
    radial-gradient(900px 520px at 78% 18%, rgba(184,146,106,.12), transparent 62%),
    radial-gradient(700px 480px at 12% 88%, rgba(122,92,50,.1), transparent 58%),
    linear-gradient(168deg, #050608 0%, #0A0C10 42%, #050608 100%);
  border-bottom:1px solid rgba(184,146,106,.2);
  overflow:hidden;
}
.premier-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg, transparent 70%, rgba(5,6,8,.9) 100%);
}

.premier-hero-inner{
  position:relative;z-index:2;
  padding:5rem 0 4rem;
  max-width:40rem;
}
.header-emblem{
  position:relative;flex-shrink:0;
  width:40px;height:40px;
  overflow:hidden;border-radius:3px;
  filter:drop-shadow(0 4px 16px rgba(184,146,106,.28));
}
.fp-emblem-stack{position:relative;width:100%;height:100%;overflow:hidden;border-radius:3px}

/* Logo montage — gold on black */
.fp-logo-montage,
.fp-logo-marvel{
  position:absolute;inset:0;z-index:1;overflow:hidden;border-radius:3px;
  background:#050608;
  clip-path:inset(17.5% round 2px);
}
.fp-logo-montage img,
.fp-logo-marvel img{
  position:absolute;inset:0;width:100%;height:100%;padding:10%;
  object-fit:contain;opacity:0;filter:none;
  animation:fp-montage-slide 7.5s linear infinite;
  will-change:transform,opacity;
}
.fp-logo-montage img:nth-child(1){animation-delay:-0.000s}
.fp-logo-montage img:nth-child(2){animation-delay:-0.500s}
.fp-logo-montage img:nth-child(3){animation-delay:-1.000s}
.fp-logo-montage img:nth-child(4){animation-delay:-1.500s}
.fp-logo-montage img:nth-child(5){animation-delay:-2.000s}
.fp-logo-montage img:nth-child(6){animation-delay:-2.500s}
.fp-logo-montage img:nth-child(7){animation-delay:-3.000s}
.fp-logo-montage img:nth-child(8){animation-delay:-3.500s}
.fp-logo-montage img:nth-child(9){animation-delay:-4.000s}
.fp-logo-montage img:nth-child(10){animation-delay:-4.500s}
.fp-logo-montage img:nth-child(11){animation-delay:-5.000s}
.fp-logo-montage img:nth-child(12){animation-delay:-5.500s}
.fp-logo-montage img:nth-child(13){animation-delay:-6.000s}
.fp-logo-montage img:nth-child(14){animation-delay:-6.500s}
.fp-logo-montage img:nth-child(15){animation-delay:-7.000s}

@keyframes fp-montage-slide{
  0%{opacity:0;transform:translateX(28%) scale(.92)}
  8%{opacity:1;transform:translateX(0) scale(1)}
  13.5%{opacity:0;transform:translateX(-28%) scale(.92)}
  100%{opacity:0;transform:translateX(-28%) scale(.92)}
}
.fp-emblem-frame{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;z-index:2}

.header-emblem .fp-coin-scene{
  z-index:3;
  position:absolute;left:50%;top:50%;
  width:82%;aspect-ratio:1;
  transform:translate(-50%,-50%);
  perspective:520px;
  pointer-events:none;
}
.fp-coin-3d{
  width:100%;height:100%;position:relative;
  transform-style:preserve-3d;
  animation:fp-coin-flip 3s linear infinite;
}
.fp-coin-face{
  position:absolute;inset:0;border-radius:50%;
  backface-visibility:hidden;
  transform:translateZ(2px);
  display:flex;align-items:center;justify-content:center;
  background:transparent;border:none;box-shadow:none;
}
.fp-coin-face img{width:100%;height:100%;object-fit:contain;display:block}
.fp-coin-face::before{display:none}
.fp-coin-face span{display:none}
.fp-coin-back{transform:rotateY(180deg) translateZ(2px)}
@keyframes fp-coin-flip{
  from{transform:rotateY(0deg)}
  to{transform:rotateY(360deg)}
}

.premier-copy .corp-entity{color:rgba(232,217,184,.55);letter-spacing:.2em}
.premier-copy .corp-title{
  font-family:var(--display);
  font-size:clamp(3rem,7.5vw,4.75rem);
  font-weight:500;letter-spacing:-.02em;line-height:1;
  margin:0 0 .85rem;
  background:linear-gradient(135deg, #FFF9EE 0%, #E8D9B8 45%, #B8926A 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.premier-copy .corp-tagline{
  font-family:var(--display);
  font-size:clamp(1.35rem,2.8vw,1.85rem);
  color:rgba(247,245,240,.88);font-weight:400;font-style:italic;
  letter-spacing:.01em;margin:0 0 1.35rem;max-width:22ch;line-height:1.35;
}
.premier-copy .corp-lead{
  color:rgba(247,245,240,.58);font-size:1rem;line-height:1.65;max-width:34rem;margin:0 0 1.5rem;
}
.premier-copy .corp-reg{color:rgba(184,146,106,.65);font-size:.72rem;letter-spacing:.06em}

.premier-panel{
  border:1px solid rgba(184,146,106,.28);
  background:linear-gradient(145deg, rgba(255,249,238,.04), rgba(184,146,106,.03));
  backdrop-filter:blur(8px);
  padding:1.5rem 1.65rem;
  box-shadow:0 24px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,249,238,.06);
}
.premier-panel .corp-facts div{border-bottom-color:rgba(184,146,106,.18)}
.premier-panel .corp-facts dt{color:rgba(232,217,184,.5)}
.premier-panel .corp-facts dd{color:var(--gold-bright)}
.premier-panel .corp-facts a{
  color:var(--gold-bright);border-bottom-color:rgba(184,146,106,.45);
}

/* Sections — all dark */
.premier .section{
  padding:5rem 0;
  border-bottom:1px solid rgba(184,146,106,.12);
  background:var(--ink);
}
.premier .section-tint{
  background:linear-gradient(180deg, #0A0C10 0%, #050608 100%);
}
.premier .section-kicker{color:var(--gold-light);letter-spacing:.22em}
.premier .section-head h2,
.premier .page-hero h1{
  font-family:var(--display);font-weight:500;letter-spacing:-.025em;
  color:var(--gold-bright);
}
.premier .lede{color:rgba(247,245,240,.55);line-height:1.65}
.premier .lede a{color:var(--gold-light);border-bottom-color:rgba(184,146,106,.35)}
.premier .prop-body h3 a{color:var(--gold-bright)}
.premier .prop-body p{color:rgba(247,245,240,.52)}

.premier .btn-ghost{
  border-color:var(--gold);color:var(--gold-light);background:transparent;
}
.premier .btn-ghost:hover{
  background:rgba(184,146,106,.1);border-color:var(--gold-light);color:var(--gold-bright);
}
.premier .btn-primary{
  background:linear-gradient(135deg,var(--gold-deep),var(--gold));
  color:var(--ink);border:0;font-weight:600;
  box-shadow:0 8px 28px rgba(122,92,50,.25);
}

/* Portfolio — gold-on-black screenshots */
.premier .prop-media{
  background:#030405;
  position:relative;
}
.premier .prop-media::after{
  content:"";
  position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(180deg, transparent 55%, rgba(5,6,8,.75) 100%);
}
.premier .prop-shot{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
}
.premier .prop-shot-fallback{
  background:#030405;
  color:var(--gold-bright);
}
.premier .prop-shot-fallback img{
  width:56px;height:56px;
}

.premier .portfolio-showcase .prop-card{
  background:var(--paper);
  border:1px solid rgba(184,146,106,.22);
  box-shadow:0 8px 32px rgba(0,0,0,.35);
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease;
  position:relative;overflow:hidden;
}
.premier .portfolio-showcase .prop-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg, transparent, var(--gold-light), transparent);
  opacity:.85;z-index:2;
}
.premier .portfolio-showcase .prop-card:hover{
  transform:translateY(-6px);
  border-color:rgba(184,146,106,.45);
  box-shadow:0 20px 50px rgba(0,0,0,.5), 0 0 0 1px rgba(184,146,106,.15);
}
.premier .prop-meta span{color:var(--gold-deep)}
.premier .prop-body h3{font-family:var(--display);font-size:1.28rem;color:var(--gold-bright)}
.premier .text-link{color:var(--gold-light);border-bottom-color:rgba(184,146,106,.35)}
.premier .text-link:hover{border-color:var(--gold-bright);color:var(--gold-bright)}

/* ForPac / platform band shots */
.premier .forpac-shot,
.premier .platform-shot{
  background:#030405;
  border-color:rgba(184,146,106,.28);
  box-shadow:0 16px 48px rgba(0,0,0,.45);
  overflow:hidden;
}
.premier .forpac-shot img,
.premier .platform-shot img{
  display:block;
  width:100%;
  height:auto;
}

/* Asset register — dark ledger */
.premier .register-wrap{
  border:1px solid rgba(184,146,106,.25);
  box-shadow:0 12px 40px rgba(0,0,0,.35);
  background:var(--paper);
}
.premier .asset-register thead{
  background:linear-gradient(180deg, rgba(184,146,106,.12), rgba(184,146,106,.04));
}
.premier .asset-register th{color:var(--gold-light)}
.premier .asset-register td{color:rgba(247,245,240,.62)}
.premier .asset-register tbody tr:hover{background:rgba(184,146,106,.08)}
.premier .reg-co a{color:var(--gold-bright)}

/* ForPac tiers on dark */
.premier .tier{
  border-color:rgba(184,146,106,.2);
  background:rgba(255,249,238,.03);
}
.premier .tier-time{color:var(--gold-bright)}
.premier .tier-body{color:rgba(247,245,240,.58)}
.premier .tier-body strong{color:var(--gold-light)}
.premier .link-row a{color:var(--gold-light)}

.premier .forpac-band,.premier .platform-band{align-items:center}

.premier .contact-band{
  background:linear-gradient(135deg, #050608, #0E1016);
  color:rgba(247,245,240,.75);border-top:1px solid rgba(184,146,106,.25);
}
.premier .contact-band h2{
  font-family:var(--display);color:var(--gold-bright);font-weight:500;
}

.premier .site-footer{
  background:#030405;color:rgba(247,245,240,.55);
  border-top:1px solid rgba(184,146,106,.2);
}
.premier .site-footer h4{
  color:var(--gold-bright);font-family:var(--display);font-weight:500;letter-spacing:.04em;
}
.premier .site-footer a{color:rgba(247,245,240,.62)}
.premier .site-footer a:hover{color:var(--gold-bright)}
.premier .footer-bottom{border-top-color:rgba(184,146,106,.15);color:rgba(184,146,106,.55)}

.premier .reveal-premier{
  opacity:0;transform:translateY(28px);
  transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);
}
.premier .reveal-premier.is-in{opacity:1;transform:none}

@media (max-width:900px){
  .premier-hero-inner{padding:4.5rem 0 3rem}
  .premier .brand .header-emblem{width:36px;height:36px}
  .fp-gold-mint-coin{width:36px;height:36px}
}

@media (prefers-reduced-motion:reduce){
  .fp-logo-montage img,
.fp-logo-marvel img{animation:none!important;opacity:0}
  .fp-logo-montage img:first-child,
  .fp-logo-marvel img:first-child{opacity:.85;transform:none}
  .fp-coin-3d{animation:none!important}
  .reveal-premier{opacity:1;transform:none}
}

/* Corporate.css dark overrides */
html:has(body.premier),
body.premier{background:var(--ink)}
.premier .section h2{color:var(--gold-bright)}
.premier .section-head h2{color:var(--gold-bright)}
.premier a:not(.btn):not(.nav-link):not(.text-link){color:var(--gold-light)}
.premier .asset-register{border-color:rgba(184,146,106,.18)}
.premier .asset-register th,
.premier .asset-register td{border-color:rgba(184,146,106,.12)}
.premier .prop-meta span{color:var(--gold-light)}
.premier .forpac-copy h2,
.premier .platform-band h2{color:var(--gold-bright)}
.premier .forpac-copy .lede,
.premier .platform-band .lede{color:rgba(247,245,240,.55)}
.premier .contact-band p{color:rgba(247,245,240,.58)}
.premier .foot-blurb{color:rgba(247,245,240,.52)}
.premier .tiny{color:rgba(247,245,240,.45)}


body.fp-gold-light-flash::after{
  content:"";position:fixed;inset:0;z-index:8590;pointer-events:none;
  background:
    radial-gradient(circle at var(--fp-flash-x,50%) var(--fp-flash-y,42%), rgba(255,249,238,.82) 0%, rgba(255,230,170,.42) 16%, rgba(232,217,184,.18) 38%, rgba(0,0,0,0) 68%),
    radial-gradient(circle at var(--fp-flash-x,50%) var(--fp-flash-y,42%), rgba(255,249,238,.28) 0%, rgba(0,0,0,0) 52%);
  animation:fp-gold-light-flash 0.52s ease-out forwards;
}
@keyframes fp-gold-light-flash{
  0%{opacity:0}
  12%{opacity:1}
  28%{opacity:.92}
  100%{opacity:0}
}
