*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --black:#050505;
  --black2:#0a0a0a;
  --gold:#C9A84C;
  --gold-dim:rgba(201,168,76,0.08);
  --gold-mid:rgba(201,168,76,0.18);
  --gold-glow:rgba(201,168,76,0.05);
  --white:#F0EDE6;
  --white2:rgba(240,237,230,0.85);
  --white3:rgba(240,237,230,0.52);
  --white4:rgba(240,237,230,0.14);
  --border:rgba(201,168,76,0.15);
  --border2:rgba(201,168,76,0.07);
  --mono:'JetBrains Mono',monospace;
  --serif:'Cormorant Garamond',serif;
}
html{scroll-behavior:smooth;cursor:none;scroll-padding-top:80px;}
body{background:var(--black);color:var(--white);font-family:var(--mono);font-weight:300;overflow-x:hidden;line-height:1.7;}

/* SCROLL PROGRESS */
.scroll-progress{position:fixed;top:0;left:0;height:1px;background:var(--gold);z-index:9999;width:0%;transition:width 0.1s linear;opacity:0.7;}

/* CURSOR */
.cursor{position:fixed;width:5px;height:5px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:transform 0.08s;}
.cursor-ring{position:fixed;width:26px;height:26px;border:1px solid rgba(201,168,76,0.35);border-radius:50%;pointer-events:none;z-index:9997;transform:translate(-50%,-50%);transition:all 0.18s ease;}

/* NOISE */
body::after{content:'';position:fixed;top:0;left:0;width:100%;height:100%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");pointer-events:none;z-index:0;opacity:0.45;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;padding:1.8rem 5rem;display:flex;justify-content:space-between;align-items:center;z-index:100;transition:all 0.5s;}
.nav-logo{font-family:var(--serif);font-size:0.75rem;letter-spacing:0.4em;text-transform:uppercase;color:var(--white);opacity:0;animation:fadeIn 1.2s ease forwards 0.3s;}
.nav-right{display:flex;align-items:center;gap:3rem;opacity:0;animation:fadeIn 1.2s ease forwards 0.5s;}
.nav-link{font-size:0.75rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--white3);text-decoration:none;transition:color 0.4s;}
.nav-link:hover{color:var(--gold)}
.nav-cta{font-size:0.75rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);text-decoration:none;padding:0.6rem 1.5rem;border:1px solid var(--border);transition:all 0.4s;cursor:none;}
.nav-cta:hover{background:var(--gold-dim);}

/* LIVE TICKER */
.live-ticker{font-size:0.75rem;letter-spacing:0.2em;color:var(--white3);display:flex;align-items:center;gap:0.6rem;}
.ticker-dot{width:4px;height:4px;background:var(--gold);border-radius:50%;animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.3;}}

/* HERO */
.hero{min-height:auto;display:grid;place-items:center;text-align:center;padding:10rem 2rem 6rem;position:relative;overflow:hidden;}
.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,0.025) 1px,transparent 1px);background-size:100px 100px;mask-image:radial-gradient(ellipse 80% 60% at center,black 10%,transparent 75%);transition:transform 0.1s ease-out;}
.hero-glow{position:absolute;top:15%;left:50%;transform:translateX(-50%);width:700px;height:500px;background:radial-gradient(ellipse,rgba(201,168,76,0.04) 0%,transparent 70%);pointer-events:none;}
.hero-content{position:relative;z-index:2;max-width:820px;}

.hero-pre{font-size:0.75rem;letter-spacing:0.7em;text-transform:uppercase;color:var(--gold);margin-bottom:3rem;opacity:0;animation:fadeUp 1s ease forwards 0.4s;display:flex;align-items:center;justify-content:center;gap:1.5rem;}
.hero-pre::before,.hero-pre::after{content:'';display:block;width:50px;height:1px;background:linear-gradient(to right,transparent,var(--gold));opacity:0.35;}
.hero-pre::after{background:linear-gradient(to left,transparent,var(--gold));}

/* LOGO SVG ANIMÉ */
.hero-symbol{margin-bottom:2rem;opacity:0;animation:fadeUp 1.4s ease forwards 0.6s;}
.logo-arc{stroke-dasharray:320;stroke-dashoffset:320;animation:drawArc 2.2s ease forwards 1s;}
.logo-line{stroke-dasharray:90;stroke-dashoffset:90;animation:drawLine 1s ease forwards 3s;}
.logo-reticle-ring{stroke-dasharray:35;stroke-dashoffset:35;animation:drawReticle 0.7s ease forwards 3.8s;}
.logo-reticle-dot{opacity:0;animation:fadeIn 0.4s ease forwards 4.3s;transform-origin:center;animation-fill-mode:both;}
@keyframes drawArc{to{stroke-dashoffset:0;}}
@keyframes drawLine{to{stroke-dashoffset:0;}}
@keyframes drawReticle{to{stroke-dashoffset:0;}}

/* TYPEWRITER */
.hero-title{font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,5vw,4.5rem);letter-spacing:0.35em;color:#FFFFFF;line-height:1.05;text-transform:uppercase;margin-bottom:0.8rem;opacity:0;animation:fadeUp 1.2s ease forwards 0.9s;}
.hero-title em{color:#C9A24B;font-style:normal;}
.hero-tagline{font-family:var(--serif);font-style:italic;font-size:clamp(1.125rem,1.5vw,1.375rem);color:var(--gold);letter-spacing:0.2em;margin-bottom:3.5rem;opacity:0;animation:fadeUp 1s ease forwards 1.1s;}
.hero-divider{width:1px;height:70px;background:linear-gradient(to bottom,var(--gold),transparent);margin:0 auto 3rem;opacity:0;animation:fadeIn 1s ease forwards 1.3s;}

.typewriter-container{max-width:600px;margin:0 auto 1.5rem;opacity:0;animation:fadeIn 0.1s ease forwards 1.5s;}
.typewriter-line1{font-family:var(--serif);font-size:1.3rem;font-weight:300;line-height:1.7;color:var(--white2);letter-spacing:0.04em;display:block;overflow:hidden;white-space:nowrap;border-right:1px solid var(--gold);width:0;animation:typing1 2s steps(45) forwards 1.8s, blink 0.8s infinite 3.8s;}
.typewriter-line2{font-family:var(--serif);font-size:1.3rem;font-weight:300;color:var(--gold);letter-spacing:0.04em;font-style:italic;display:block;opacity:0;animation:fadeUp 0.5s ease forwards 4s;}
@keyframes typing1{to{width:100%;}}
@keyframes blink{50%{border-color:transparent;}}

.hero-sub{max-width:420px;margin:2rem auto 3.5rem;font-size:0.875rem;line-height:2.2;color:var(--white3);letter-spacing:0.12em;opacity:0;animation:fadeUp 1s ease forwards 4.3s;}

.hero-reg{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:3.5rem;opacity:0;animation:fadeUp 1s ease forwards 4.5s;}
.hero-reg span{font-size:0.75rem;letter-spacing:0.22em;color:var(--white3);text-transform:uppercase;padding:0.3rem 0.7rem;border:1px solid var(--border2);}

.hero-ctas{display:flex;gap:1.5rem;justify-content:center;opacity:0;animation:fadeUp 1s ease forwards 4.7s;}
.btn-primary{padding:1rem 3.2rem;border:1px solid var(--gold);color:var(--gold);background:transparent;font-family:var(--mono);font-size:0.75rem;letter-spacing:0.4em;text-transform:uppercase;text-decoration:none;cursor:none;transition:all 0.5s;position:relative;overflow:hidden;}
.btn-primary::before{content:'';position:absolute;inset:0;background:var(--gold);transform:translateX(-101%);transition:transform 0.5s ease;}
.btn-primary:hover{color:var(--black);}
.btn-primary:hover::before{transform:translateX(0);}
.btn-primary span{position:relative;z-index:1;}
.btn-ghost{padding:1rem 3.2rem;border:1px solid var(--border);color:var(--white3);background:transparent;font-family:var(--mono);font-size:0.75rem;letter-spacing:0.4em;text-transform:uppercase;text-decoration:none;cursor:none;transition:all 0.4s;}
.btn-ghost:hover{border-color:var(--gold-mid);color:var(--white2);}

.scroll-hint{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:0.5rem;opacity:0;animation:fadeIn 1s ease forwards 5.5s;}
.scroll-line{width:1px;height:45px;background:linear-gradient(to bottom,var(--gold),transparent);animation:scrollPulse 2s ease infinite 6s;}
@keyframes scrollPulse{0%{opacity:0.4;}50%{opacity:1;}100%{opacity:0.4;}}
.scroll-label{font-size:0.75rem;letter-spacing:0.45em;text-transform:uppercase;color:var(--white3);}

/* STATS BAND */
.stats-band{border-top:1px solid var(--border2);border-bottom:1px solid var(--border2);display:grid;grid-template-columns:repeat(4,1fr);position:relative;z-index:2;}
.stat-item{padding:2.5rem 1.5rem;text-align:center;border-right:1px solid var(--border2);cursor:default;}
.stat-item:last-child{border-right:none;}
.stat-number{font-family:var(--serif);font-size:2.8rem;font-weight:300;color:var(--gold);line-height:1;display:block;letter-spacing:0.05em;}
.stat-label{font-size:0.75rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--white3);margin-top:0.6rem;display:block;}

/* STATEMENT */
.statement-section{padding:9rem 5rem;max-width:860px;margin:0 auto;text-align:center;position:relative;z-index:2;}
.statement-tag{font-size:0.75rem;letter-spacing:0.55em;text-transform:uppercase;color:var(--gold);margin-bottom:3rem;display:flex;align-items:center;justify-content:center;gap:1rem;}
.statement-tag::before,.statement-tag::after{content:'';display:block;width:28px;height:1px;background:var(--gold);opacity:0.3;}
.statement-quote{font-family:var(--serif);font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:300;line-height:1.5;color:var(--white);letter-spacing:0.03em;margin-bottom:2rem;}
.statement-quote em{color:var(--gold);font-style:italic;}
.statement-body{font-size:0.875rem;line-height:2.4;color:var(--white3);letter-spacing:0.1em;max-width:580px;margin:0 auto;}

/* FULL HEIGHT CITATION */
.citation-section{min-height:85vh;display:grid;place-items:center;text-align:center;position:relative;z-index:2;padding:4rem 2rem;border-top:1px solid var(--border2);border-bottom:1px solid var(--border2);}
.citation-bg{position:absolute;inset:0;background:radial-gradient(ellipse 50% 50% at center,rgba(201,168,76,0.03) 0%,transparent 70%);}
.citation-text{font-family:var(--serif);font-size:clamp(2.5rem,5vw,5rem);font-weight:300;line-height:1.3;color:var(--white);letter-spacing:0.06em;position:relative;z-index:1;}
.citation-text em{display:block;color:var(--gold);font-style:italic;}

/* SECTORS */
.sectors-band{padding:3rem 5rem;border-bottom:1px solid var(--border2);display:flex;justify-content:center;align-items:center;gap:3rem;flex-wrap:wrap;position:relative;z-index:2;}
.sector-item{font-size:0.75rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--white3);transition:color 0.4s;}
.sector-item:hover{color:var(--gold);}
.sector-sep{color:var(--border);font-size:0.6rem;}

/* SIGNALS */
.signals-section{padding:6rem 5rem;position:relative;z-index:2;}
.signals-header{margin-bottom:4.5rem;}
.section-tag{font-size:0.75rem;letter-spacing:0.55em;text-transform:uppercase;color:var(--gold);margin-bottom:1.5rem;}
.section-title{font-family:var(--serif);font-size:clamp(2rem,3.8vw,3.2rem);font-weight:300;line-height:1.2;color:var(--white);letter-spacing:0.06em;}
.section-subtitle{font-size:0.875rem;color:var(--white3);letter-spacing:0.1em;margin-top:1rem;line-height:2.2;}
.signals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border2);}
.signal-card{background:var(--black);padding:2.5rem;position:relative;overflow:hidden;transition:background 0.4s;}
.signal-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:1px;background:linear-gradient(to right,transparent,var(--gold),transparent);transform:scaleX(0);transition:transform 0.6s;}
.signal-card:hover{background:var(--gold-glow);}
.signal-card:hover::before{transform:scaleX(1);}
.signal-id{font-size:0.75rem;letter-spacing:0.3em;color:var(--gold);margin-bottom:1.5rem;opacity:0.55;}
.signal-name{font-family:var(--serif);font-size:1.25rem;font-weight:400;color:var(--white);margin-bottom:0.8rem;letter-spacing:0.05em;}
.signal-desc{font-size:0.875rem;color:var(--white3);line-height:2;letter-spacing:0.06em;}
.signal-reg{margin-top:1.2rem;display:flex;gap:0.4rem;flex-wrap:wrap;}
.reg-tag{font-size:0.65rem;letter-spacing:0.18em;text-transform:uppercase;padding:0.22rem 0.55rem;border:1px solid var(--border2);color:var(--white3);}

/* FINDING */
.finding-section{padding:5rem 5rem;position:relative;z-index:2;}
.finding-wrap{border:1px solid var(--border);}
.finding-header{padding:1.2rem 2.2rem;border-bottom:1px solid var(--border2);display:flex;align-items:center;justify-content:space-between;background:rgba(201,168,76,0.02);}
.finding-ref{font-size:0.75rem;letter-spacing:0.18em;color:var(--white3);}
.finding-badge{display:flex;align-items:center;gap:0.6rem;font-size:0.75rem;letter-spacing:0.18em;}
.badge-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 5px rgba(201,168,76,0.5);}
.finding-body{display:grid;grid-template-columns:1fr 1.6fr;}
.finding-left{padding:2.2rem;border-right:1px solid var(--border2);}
.finding-right{padding:2.2rem;}
.f-label{font-size:0.75rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--white3);margin-bottom:0.5rem;}
.f-title{font-family:var(--serif);font-size:1.35rem;font-weight:400;color:var(--white);line-height:1.4;margin-bottom:1.8rem;letter-spacing:0.04em;}
.f-meta{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border2);border:1px solid var(--border2);margin-bottom:1.5rem;}
.f-meta-cell{background:var(--black);padding:0.9rem 1rem;}
.f-meta-cell label{font-size:0.75rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--white3);display:block;margin-bottom:0.3rem;}
.f-meta-cell span{font-size:0.875rem;color:var(--white2);letter-spacing:0.06em;}
.f-score{font-family:var(--serif);font-size:2.5rem;font-weight:300;color:var(--gold);line-height:1;}
.f-score small{font-family:var(--mono);font-size:0.9rem;color:var(--white3);}
.f-desc{font-size:0.875rem;line-height:2.2;color:var(--white2);letter-spacing:0.05em;margin-bottom:1.5rem;}
.f-code{background:var(--black2);border:1px solid var(--border2);padding:1.3rem;font-family:var(--mono);font-size:0.75rem;line-height:1.9;color:var(--white3);overflow-x:auto;margin-bottom:1.3rem;}
.f-impact{padding:1.1rem 1.3rem;border-left:1px solid var(--gold);background:rgba(201,168,76,0.03);}
.f-impact p{font-size:0.875rem;line-height:2;color:var(--white3);letter-spacing:0.05em;}

/* APPROACH */
.approach-section{padding:7rem 5rem;position:relative;z-index:2;}
.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5rem;margin-top:5rem;}
.approach-num{font-size:0.75rem;letter-spacing:0.42em;color:var(--gold);margin-bottom:1.8rem;display:block;opacity:0.65;}
.approach-line{width:35px;height:1px;background:var(--gold);margin-bottom:1.8rem;opacity:0.28;}
.approach-title{font-family:var(--serif);font-size:1.3rem;font-weight:400;color:var(--white);margin-bottom:0.8rem;letter-spacing:0.05em;}
.approach-desc{font-size:0.875rem;line-height:2.2;color:var(--white3);letter-spacing:0.07em;}

/* CONTACT */
.contact-section{padding:9rem 5rem;text-align:center;position:relative;z-index:2;border-top:1px solid var(--border2);}
.contact-pre{font-size:0.75rem;letter-spacing:0.65em;text-transform:uppercase;color:var(--gold);margin-bottom:3rem;display:flex;align-items:center;justify-content:center;gap:1.5rem;}
.contact-pre::before,.contact-pre::after{content:'';display:block;width:40px;height:1px;background:var(--gold);opacity:0.28;}
.contact-title{font-family:var(--serif);font-size:clamp(2.5rem,4.5vw,4rem);font-weight:300;line-height:1.2;color:var(--white);letter-spacing:0.08em;margin-bottom:2rem;}
.contact-body{max-width:460px;margin:0 auto 3rem;font-size:0.875rem;line-height:2.4;color:var(--white3);letter-spacing:0.1em;}
.contact-email{font-family:var(--serif);font-size:1.15rem;color:var(--gold);text-decoration:none;letter-spacing:0.1em;border-bottom:1px solid rgba(201,168,76,0.28);padding-bottom:0.3rem;transition:border-color 0.3s;cursor:none;}
.contact-email:hover{border-color:var(--gold);}
.contact-note{margin-top:2.5rem;font-size:0.75rem;letter-spacing:0.32em;color:var(--white3);text-transform:uppercase;}

/* FOOTER */
footer{padding:2rem 5rem;border-top:1px solid var(--border2);display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2;}
.footer-left{font-size:0.75rem;letter-spacing:0.22em;color:var(--white3);}
.footer-center{font-family:var(--serif);font-size:0.75rem;letter-spacing:0.3em;color:var(--white3);}
.footer-pgp{font-size:0.7rem;letter-spacing:0.15em;color:var(--white3);line-height:1.8;text-align:right;}
.footer-pgp span{display:block;font-size:0.62rem;opacity:0.5;letter-spacing:0.1em;}

/* ENGAGE FORM */
.engage-section{padding:6rem 5rem;text-align:center;position:relative;z-index:2;}
.engage-pre{font-size:0.75rem;letter-spacing:0.65em;text-transform:uppercase;color:var(--gold);margin-bottom:2.5rem;display:flex;align-items:center;justify-content:center;gap:1.5rem;}
.engage-pre::before,.engage-pre::after{content:'';display:block;width:40px;height:1px;background:var(--gold);opacity:0.28;}
.engage-title{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);font-weight:300;line-height:1.3;color:var(--white);letter-spacing:0.08em;margin-bottom:1.2rem;}
.engage-sub{font-size:0.78rem;color:var(--white3);letter-spacing:0.15em;margin-bottom:3.5rem;line-height:2;}
.engage-form{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:1.2rem;text-align:left;}
.engage-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;}
.engage-field{display:flex;flex-direction:column;gap:0.4rem;}
.engage-label{font-size:0.65rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--white3);}
.engage-input,.engage-select,.engage-textarea{background:transparent;border:1px solid rgba(201,168,76,0.18);color:var(--white);font-family:var(--mono);font-size:0.78rem;font-weight:300;padding:0.85rem 1rem;outline:none;transition:border-color 0.3s;width:100%;letter-spacing:0.1em;}
.engage-input:focus,.engage-select:focus,.engage-textarea:focus{border-color:rgba(201,168,76,0.45);}
.engage-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='rgba(201,168,76,0.5)'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 1rem) center;}
.engage-select option{background:#0a0a0a;color:var(--white);}
.engage-textarea{resize:vertical;min-height:100px;line-height:1.8;}
.engage-honey{display:none!important;position:absolute;left:-9999px;}
.engage-note{font-size:0.65rem;letter-spacing:0.2em;color:var(--white4);text-align:center;margin-top:1.5rem;line-height:1.9;}
.engage-msg{display:none;margin-top:1.5rem;padding:1rem;border:1px solid rgba(201,168,76,0.25);font-size:0.75rem;letter-spacing:0.2em;text-align:center;color:var(--gold);line-height:1.8;}
.engage-msg.show{display:block;}
.engage-msg.error{border-color:rgba(255,80,80,0.3);color:#ff8080;}
/* REVEAL */
.reveal{opacity:0;transform:translateY(18px);transition:opacity 0.55s ease,transform 0.55s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
.reveal-delay{transition-delay:0.15s;}

/* MOBILE */
@media(max-width:768px){
  html{cursor:auto;}
  .cursor,.cursor-ring{display:none!important;}
  nav{padding:1.5rem 1.5rem;}
  .nav-right .nav-link{display:none;}
  .hero{padding:8rem 1.5rem 4rem;}
  .typewriter-line1{white-space:normal;border-right:none;width:auto;animation:none;opacity:1;}
  .hero-title{font-size:2.5rem;}
  .stats-band{grid-template-columns:repeat(2,1fr);}
  .signals-grid{grid-template-columns:1fr;}
  .finding-body{grid-template-columns:1fr;}
  .finding-left{border-right:none;border-bottom:1px solid var(--border2);}
  .approach-grid{grid-template-columns:1fr;gap:3rem;}
  .signals-section,.finding-section,.approach-section,.contact-section,.statement-section{padding:4rem 1.5rem;}
  .sectors-band{padding:2rem 1.5rem;gap:1.5rem;}
  footer{padding:1.5rem;flex-direction:column;gap:1rem;text-align:center;}
  .hero-reg{gap:0.8rem;}
  .hero-ctas{flex-direction:column;align-items:center;}
  .citation-section{min-height:60vh;padding:4rem 2rem;}
  .citation-text{font-size:2rem;}
}

/* SMALL MOBILE (≤480px) */
@media(max-width:480px){
  .fc-logo-anim{width:120px!important;}
  .hero-title{font-size:2.2rem;}
  .hero{padding:6rem 1.2rem 3.5rem;}
  .btn-primary,.btn-ghost{width:100%;text-align:center;min-height:44px;padding:0.9rem 2rem;display:flex;align-items:center;justify-content:center;}
  .stats-band{grid-template-columns:repeat(2,1fr);}
  .stat-number{font-size:2rem;}
  .signals-section,.finding-section,.approach-section,.contact-section,.statement-section{padding:3rem 1.2rem;}
  .contact-email{font-size:1rem;}
  nav{padding:1.2rem 1.2rem;}
  footer{padding:1.2rem;gap:0.8rem;}
}

/* TABLET */
@media(min-width:769px) and (max-width:1023px){
  nav{padding:1.5rem 2.5rem;}
  .signals-section,.finding-section,.approach-section,.contact-section,.statement-section{padding:5rem 2.5rem;}
  .sectors-band{padding:2rem 2.5rem;}
  footer{padding:1.5rem 2.5rem;}
  .signals-grid{grid-template-columns:repeat(2,1fr);}
  .approach-grid{grid-template-columns:repeat(2,1fr);gap:3rem;}
  .finding-body{grid-template-columns:1fr;}
  .finding-left{border-right:none;border-bottom:1px solid var(--border2);}
}

/* READABILITY — functional text minimum #e0e0e0 */
.signal-desc,.approach-desc,.section-subtitle,.statement-body,.contact-body,.f-desc,.f-impact p,.stat-label{color:#e0e0e0;}

/* ANIMATIONS */
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}


        .fc-stroke{fill:none;stroke:#C9A24B;stroke-linecap:round;stroke-linejoin:round;}
        .fc-omega{stroke-dasharray:385;stroke-dashoffset:385;animation:fc-draw-omega 2.5s cubic-bezier(0.2,0.0,0.4,1.0) 0s forwards;}
        .fc-foot-l,.fc-foot-r{stroke-dasharray:26;stroke-dashoffset:26;animation:fc-draw-foot 0.3s ease-out 2.5s forwards;}
        .fc-baseline{stroke-dasharray:110;stroke-dashoffset:110;animation:fc-draw-baseline 0.5s ease-out 2.8s forwards;}
        .fc-arm{stroke-dasharray:108;stroke-dashoffset:108;animation:fc-draw-arm 1.2s ease-in-out 3.3s forwards;}
        .fc-ring{stroke-dasharray:70 43;stroke-dashoffset:70;animation:fc-draw-ring 1.8s ease-out 4.5s forwards;}
        @keyframes fc-draw{to{stroke-dashoffset:0;}}
        @keyframes fc-draw-omega{to{stroke-dashoffset:0;}}
        @keyframes fc-draw-foot{to{stroke-dashoffset:0;}}
        @keyframes fc-draw-baseline{to{stroke-dashoffset:0;}}
        @keyframes fc-draw-arm{to{stroke-dashoffset:0;}}
        @keyframes fc-draw-ring{to{stroke-dashoffset:0;}}
        @keyframes fc-ring-appear{to{opacity:0.85;}}
        @keyframes fc-ring-drift{from{stroke-dashoffset:0;}to{stroke-dashoffset:135;}}
        @keyframes fc-fade{to{opacity:1;}}
        @media(prefers-reduced-motion:reduce){.fc-omega,.fc-foot-l,.fc-foot-r,.fc-baseline,.fc-arm{stroke-dashoffset:0;animation:none;}.fc-ring{stroke-dashoffset:0;animation:none;}.fc-logo-anim{animation:none;opacity:1;}}

/* Formerly inline style= attributes */
.fc-logo-anim { margin: 0 auto 2rem; display: block; opacity: 0; animation: fadeUp 1.4s ease forwards 0.6s; }
.fc-signals-finding { margin-bottom: 2.5rem; }
.engage-section { border-top: 1px solid var(--border2); }
.engage-form .btn-primary { width: 100%; }
.fc-research-section { border-top: 1px solid var(--border2); }
.fc-substack-row { margin-top: 3rem; display: flex; align-items: center; gap: 2.5rem; flex-wrap: wrap; }
.fc-substack-row .btn-primary { cursor: pointer; text-decoration: none; }
.fc-substack-note { font-size: 0.58rem; letter-spacing: 0.2em; color: #e0e0e0; }
.footer-center a { color: inherit; text-decoration: none; transition: color 0.3s; }
.footer-github a { color: var(--gold); text-decoration: none; transition: color 0.3s; }
.footer-github a:hover { color: #D4B880; }

/* ════ STRUCTURED FOOTER ════ */
.fc-footer { background:var(--black); border-top:1px solid var(--border2); padding:clamp(48px,6vw,80px) 5rem 32px; }
.fc-footer-grid { max-width:920px; margin:0 auto 48px; display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:40px; }
.fc-footer-label { display:block; font-family:var(--mono); font-size:10px; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold); margin-bottom:14px; }
.fc-footer-text { font-size:13px; color:var(--white3); line-height:1.7; }
.fc-footer-links { list-style:none; display:flex; flex-direction:column; gap:8px; }
.fc-footer-links a { font-size:13px; color:var(--white3); transition:color 160ms; text-decoration:none; }
.fc-footer-links a:hover { color:var(--gold); }
.fc-footer-base { max-width:920px; margin:0 auto; padding-top:24px; border-top:1px solid var(--border2); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; font-family:var(--mono); font-size:11px; color:var(--white3); letter-spacing:0.06em; }
.fc-footer-nav { display:flex; gap:20px; flex-wrap:wrap; }
.fc-footer-nav a { color:var(--white3); transition:color 160ms; text-decoration:none; }
.fc-footer-nav a:hover { color:var(--gold); }
.fc-footer-omega { color:var(--gold); opacity:0.5; }

/* ════ FORCE LOGO VISIBLE ════ */
.fc-logo-anim{opacity:1 !important;animation:none !important;width:200px;margin:0 auto 2rem;display:block;}
.fc-omega{stroke-dashoffset:0 !important;animation:none !important;fill:none;stroke:#C9A24B;stroke-width:1.5;}
.fc-ring,.fc-arm,.fc-foot-l,.fc-foot-r,.fc-baseline{stroke-dashoffset:0 !important;animation:none !important;opacity:1 !important;}
/* ════ FIN ════ */
