
:root{
  --navy:#212E40;
  --deep:#0D1A26;
  --gold:#D9A13B;
  --gold-light:#F2BE5C;
  --gold-deep:#A6691F;
  --bg:#0D1A26;
  --bg-2:#212E40;
  --bg-3:#0D1A26;
  --card:#212E40;
  --card-2:#0D1A26;
  --line:rgba(242,190,92,.13);
  --line-strong:rgba(217,161,59,.30);
  --text:#FFFFFF;
  --muted:rgba(255,255,255,.72);
  --silver:rgba(255,255,255,.82);
  --shadow:0 32px 90px rgba(0,0,0,.38);
  --radius:26px;
  --container:min(1200px,calc(100% - 40px));
  --font-display: Georgia, 'Times New Roman', serif;
  --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-sans);background:
 radial-gradient(circle at top left, rgba(217,161,59,.12), transparent 38%),
 radial-gradient(circle at 85% 10%, rgba(242,190,92,.06), transparent 26%),
 linear-gradient(180deg,#0D1A26,#0D1A26 34%,#0D1A26 100%);color:var(--text);line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:16px;top:16px;background:#fff;color:#000;padding:10px 14px;z-index:2000}
.container{width:var(--container);margin:0 auto}
.noise{position:fixed;inset:0;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}
.loader{position:fixed;inset:0;z-index:1400;background:radial-gradient(circle at top, rgba(217,161,59,.18), transparent 34%), #0D1A26;display:grid;place-items:center;transition:opacity .9s ease,visibility .9s ease}
.loader.hidden{opacity:0;visibility:hidden}
.loader-shell{text-align:center}
.loader-mark{width:min(480px,72vw);margin:0 auto 22px;filter:drop-shadow(0 12px 42px rgba(217,161,59,.16))}
.loader-count{font-family:var(--font-display);font-size:calc((clamp(3.2rem,8vw,6rem)) + 4px);line-height:1;color:var(--gold);letter-spacing:.06em}
.loader-copy{color:var(--muted);text-transform:uppercase;letter-spacing:.28em;font-size:calc((.72rem) + 4px);margin-top:10px}
.site-header{position:fixed;inset:0 0 auto 0;z-index:1200;height:88px;backdrop-filter:blur(18px);background:rgba(8,10,13,.28);border-bottom:1px solid transparent;transition:background .35s ease,border-color .35s ease,height .35s ease}
.site-header.scrolled{height:78px;background:rgba(8,10,13,.75);border-color:var(--line)}
.header-inner{height:100%;display:flex;align-items:center;gap:24px;justify-content:space-between}
.brand{display:flex;align-items:center;gap:14px;min-width:0;position:relative;z-index:2}
.brand-mark{width:72px;max-width:72px;filter:drop-shadow(0 6px 20px rgba(217,161,59,.15));transition:transform .35s ease,width .35s ease}
.site-header.scrolled .brand-mark{width:62px}
.brand-wording{display:flex;flex-direction:column;line-height:1.02}
.brand-title{font-family:var(--font-display);font-size:calc((1.15rem) + 4px);letter-spacing:.06em;color:var(--gold)}
.brand-sub{font-size:calc((.62rem) + 4px);letter-spacing:.38em;color:var(--silver);text-transform:uppercase;margin-top:4px}
.main-nav{display:flex;align-items:center;gap:18px}
.main-nav a{position:relative;font-size:calc((.93rem) + 4px);color:rgba(246,241,234,.82);padding:10px 0}
.main-nav a::after{content:'';position:absolute;left:0;right:0;bottom:3px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transition:transform .35s ease}
.main-nav a:hover,.main-nav a.active{color:#fff}.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.header-cta,.button{display:inline-flex;align-items:center;gap:10px;padding:14px 20px;border-radius:999px;border:1px solid var(--line-strong);transition:transform .35s ease,background .35s ease,border-color .35s ease,color .35s ease;white-space:nowrap}
.button svg,.header-cta svg,.text-link svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.button:hover,.header-cta:hover{transform:translateY(-2px)}
.button-primary,.header-cta{background:linear-gradient(135deg, rgba(217,161,59,.18), rgba(166,105,31,.13));border-color:rgba(217,161,59,.32);color:#fff}
.button-secondary{background:rgba(255,255,255,.03);color:var(--text)}
.button-dark{background:#0D1A26;color:#fff}
.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--gold);font-size:calc((.92rem) + 4px)}
.nav-toggle{display:none;width:46px;height:46px;border-radius:999px;border:1px solid var(--line);background:transparent;color:#fff;padding:0;position:relative;z-index:2}
.nav-toggle span{position:absolute;left:12px;right:12px;height:1px;background:#fff;transition:transform .35s ease, opacity .35s ease}
.nav-toggle span:nth-child(1){top:15px}.nav-toggle span:nth-child(2){top:22px}.nav-toggle span:nth-child(3){top:29px}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.page-hero{position:relative;min-height:100vh;padding:140px 0 70px;display:flex;align-items:center;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:0;background:
 linear-gradient(90deg, rgba(7,8,10,.95) 0%, rgba(7,8,10,.84) 42%, rgba(7,8,10,.52) 100%),
 radial-gradient(circle at 72% 28%, rgba(217,161,59,.16), transparent 26%);
pointer-events:none}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(440px,.98fr);gap:56px;align-items:end}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--gold);text-transform:uppercase;font-size:calc((.72rem) + 4px);letter-spacing:.32em}
.eyebrow::before{content:'';width:44px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.display{font-family:var(--font-display);font-size:calc((clamp(3.4rem,8vw,7rem)) + 4px);line-height:.95;margin:22px 0 22px;letter-spacing:-.03em;max-width:12ch}
.display span{color:var(--gold)}
.lead{max-width:62ch;color:var(--muted);font-size:calc((1.06rem) + 4px)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-signals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:42px}
.signal{padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.03)}
.signal strong{display:block;font-size:calc((.78rem) + 4px);color:#fff;text-transform:uppercase;letter-spacing:.18em;margin-bottom:10px}
.signal small{display:block;color:var(--muted)}
.hero-stage{position:relative;min-height:540px;display:grid;align-items:end}
.hero-orbit{position:absolute;inset:8% 3% auto auto;width:min(560px,100%);aspect-ratio:1;border-radius:50%;border:1px solid rgba(217,161,59,.16);opacity:.9}
.hero-orbit::before,.hero-orbit::after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(217,161,59,.12);inset:9%}
.hero-orbit::after{inset:18%;border-color:rgba(242,190,92,.08)}
.logo-stage{position:relative;margin-left:auto;width:min(620px,100%);padding:26px;border-radius:36px;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);overflow:hidden;transform-style:preserve-3d}
.logo-stage::before{content:'';position:absolute;inset:auto -6% -28% -6%;height:54%;background:radial-gradient(circle at center, rgba(217,161,59,.16), transparent 56%);filter:blur(30px)}
.logo-stage::after{content:'';position:absolute;inset:1px;background:linear-gradient(180deg, rgba(255,255,255,.03), transparent 26%);border-radius:inherit;pointer-events:none}
.logo-stage img{position:relative;z-index:2;width:100%;filter:drop-shadow(0 20px 60px rgba(0,0,0,.5));will-change:transform;transition:transform .25s linear}
.hero-card{margin-top:22px;padding:20px;border-radius:24px;background:rgba(9,11,14,.88);border:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end}
.hero-card small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.18em;font-size:calc((.66rem) + 4px);margin-bottom:8px}
.hero-card strong{display:block;font-family:var(--font-display);font-size:calc((1.5rem) + 4px);line-height:1.08;color:#fff}
.hero-card span{display:block;color:var(--muted);margin-top:8px}
.hero-kicker{writing-mode:vertical-rl;transform:rotate(180deg);color:var(--silver);text-transform:uppercase;letter-spacing:.3em;font-size:calc((.65rem) + 4px)}
.section{position:relative;padding:110px 0}
.section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:end;margin-bottom:48px}
.section-title{font-family:var(--font-display);font-size:calc((clamp(2.5rem,5vw,4.6rem)) + 4px);line-height:.98;margin:0}
.section-lead{max-width:62ch;color:var(--muted);margin:0}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.chip{padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--silver);font-size:calc((.82rem) + 4px)}
.story-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(380px,.95fr);gap:42px;align-items:start}
.story-steps{display:grid;gap:14px}
.story-step{padding:26px;border-radius:24px;border:1px solid var(--line);background:rgba(255,255,255,.02);min-height:calc(100vh - 180px)}
.story-step span{display:block;color:rgba(217,161,59,.74);font-size:calc((.72rem) + 4px);letter-spacing:.28em;text-transform:uppercase;margin-bottom:12px}
.story-step h3{font-family:var(--font-display);font-size:calc((clamp(2.1rem,3vw,3.1rem)) + 4px);line-height:1;margin:0 0 14px}
.story-step p{max-width:55ch;color:var(--muted)}
.story-visual-wrap{position:sticky;top:108px}
.story-visual{padding:30px;border-radius:30px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));min-height:520px;box-shadow:var(--shadow);display:grid;align-content:space-between;overflow:hidden}
.story-visual::before{content:'';position:absolute}
.story-index{font-family:var(--font-display);font-size:calc((clamp(5rem,10vw,8rem)) + 4px);line-height:.9;color:rgba(217,161,59,.16)}
.story-copy small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.18em;margin-bottom:12px}
.story-copy strong{display:block;font-family:var(--font-display);font-size:calc((2rem) + 4px);line-height:1.05}
.story-copy p{color:var(--muted);max-width:34ch}
.story-meter{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px}
.story-meter i{display:block;height:2px;background:rgba(255,255,255,.1);border-radius:999px;overflow:hidden;position:relative}
.story-meter i::after{content:'';position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,var(--gold),#fff);transition:width .35s ease}
.story-visual[data-active="1"] .story-meter i:nth-child(1)::after,
.story-visual[data-active="2"] .story-meter i:nth-child(-n+2)::after,
.story-visual[data-active="3"] .story-meter i:nth-child(-n+3)::after,
.story-visual[data-active="4"] .story-meter i:nth-child(-n+4)::after{width:100%}
.grid-cards{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.service-card{grid-column:span 4;min-height:300px;padding:26px;border-radius:28px;border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;transition:transform .4s ease,border-color .4s ease,background .4s ease}
.service-card::before{content:'';position:absolute;inset:auto -20% -20% auto;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle, rgba(217,161,59,.15), transparent 60%);transition:transform .45s ease,opacity .45s ease;opacity:.7}
.service-card:hover{transform:translateY(-8px);border-color:rgba(217,161,59,.3);background:linear-gradient(180deg, rgba(217,161,59,.06), rgba(255,255,255,.02))}
.service-card:hover::before{transform:scale(1.15);opacity:1}
.service-card small{display:block;color:var(--silver);text-transform:uppercase;letter-spacing:.2em;font-size:calc((.68rem) + 4px)}
.service-card h3{font-family:var(--font-display);font-size:calc((1.85rem) + 4px);line-height:1.02;margin:18px 0 14px;max-width:12ch}
.service-card p{color:var(--muted);max-width:40ch;margin:0}
.service-card .card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:26px;color:var(--gold)}
.service-card .index{font-family:var(--font-display);font-size:calc((3rem) + 4px);line-height:1;color:rgba(255,255,255,.12)}
.magnetic{will-change:transform}
.surface{padding:26px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.03)}
.spotlight-layout{display:grid;grid-template-columns:minmax(420px,.95fr) minmax(0,1.05fr);gap:34px;align-items:start}
.spotlight-stage{position:sticky;top:106px;padding:22px;border-radius:34px;border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));box-shadow:var(--shadow)}
.spotlight-photo{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/5;background:#0D1A26}
.spotlight-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .55s ease, transform .55s ease}
.spotlight-photo img.active{opacity:1;transform:scale(1)}
.spotlight-meta{display:grid;gap:10px;padding-top:20px}
.spotlight-meta small{color:var(--gold);text-transform:uppercase;letter-spacing:.18em}
.spotlight-meta strong{font-family:var(--font-display);font-size:calc((2.1rem) + 4px);line-height:1}
.spotlight-meta p{color:var(--muted);margin:0}
.team-list{display:grid;gap:12px}
.team-item{padding:22px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.025);transition:border-color .35s ease,background .35s ease,transform .35s ease;cursor:pointer}
.team-item:hover,.team-item.active{border-color:rgba(217,161,59,.28);background:rgba(217,161,59,.06);transform:translateX(6px)}
.team-item .top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.team-item strong{font-family:var(--font-display);font-size:calc((1.7rem) + 4px);line-height:1.02}
.team-item span{display:block;color:var(--silver);font-size:calc((.9rem) + 4px);margin-top:6px}
.team-item p{color:var(--muted);max-width:48ch;margin:14px 0 0}
.principles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.principle{padding:24px;border-radius:24px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.principle h3{font-family:var(--font-display);font-size:calc((1.6rem) + 4px);margin:0 0 10px}
.principle p{margin:0;color:var(--muted)}
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.insight-card{padding:26px;min-height:320px;border-radius:28px;border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));display:flex;flex-direction:column;justify-content:space-between}
.insight-card span{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.05);width:max-content;color:var(--gold);font-size:calc((.73rem) + 4px);letter-spacing:.16em;text-transform:uppercase}
.insight-card h3{font-family:var(--font-display);font-size:calc((2rem) + 4px);line-height:1.03;margin:18px 0 12px}
.insight-card p{color:var(--muted);margin:0 0 20px}
.cta-panel{padding:38px;border-radius:34px;border:1px solid rgba(217,161,59,.18);background:linear-gradient(135deg, rgba(217,161,59,.09), rgba(255,255,255,.03));box-shadow:var(--shadow);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end}
.cta-panel h2{font-family:var(--font-display);font-size:calc((clamp(2.5rem,5vw,4.4rem)) + 4px);line-height:.95;margin:0}
.cta-panel p{color:var(--muted);max-width:52ch;margin:12px 0 0}
.contact-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(380px,.92fr);gap:34px}
.contact-card{padding:28px;border-radius:28px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.contact-lines{display:grid;gap:12px;margin-top:18px}
.contact-line{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.02)}
.contact-line svg{width:18px;height:18px;stroke:var(--gold);fill:none;stroke-width:1.8;margin-top:2px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.contact-line small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.14em;font-size:calc((.68rem) + 4px)}
.contact-line strong,.contact-line span{display:block}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.field{display:grid;gap:8px}.field.full{grid-column:1/-1}
.field span{font-size:calc((.8rem) + 4px);color:var(--silver);text-transform:uppercase;letter-spacing:.14em}
.field input,.field select,.field textarea{width:100%;border-radius:18px;border:1px solid var(--line);background:#0D1A26;color:#fff;padding:15px 16px;outline:none;transition:border-color .3s ease, transform .3s ease}
.field textarea{min-height:140px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(217,161,59,.4);transform:translateY(-1px)}
.form-note{color:var(--muted);font-size:calc((.9rem) + 4px);margin-top:14px}
.mini-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:24px}
.mini-stat{padding:20px;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.mini-stat strong{display:block;font-family:var(--font-display);font-size:calc((2rem) + 4px);color:var(--gold)}
.mini-stat span{display:block;color:var(--muted);margin-top:6px}
.internal-hero{padding:160px 0 84px;min-height:auto}
.internal-hero .display{max-width:13ch;font-size:calc((clamp(3rem,6vw,5.8rem)) + 4px)}
.meta-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.meta-pills span{padding:9px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03);font-size:calc((.8rem) + 4px);color:var(--silver)}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.feature-card{padding:22px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.feature-card h3{font-family:var(--font-display);font-size:calc((1.55rem) + 4px);margin:0 0 8px}.feature-card p{margin:0;color:var(--muted)}
.check-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.check-list li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.02)}
.check-list svg{width:18px;height:18px;stroke:var(--gold);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto;margin-top:2px}
.process-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.process-item{padding:24px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.process-item small{display:block;color:var(--gold);letter-spacing:.18em;text-transform:uppercase;font-size:calc((.66rem) + 4px);margin-bottom:10px}
.process-item h3{font-family:var(--font-display);font-size:calc((1.7rem) + 4px);margin:0 0 8px}
.process-item p{margin:0;color:var(--muted)}
.link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.link-card{padding:22px;border-radius:24px;border:1px solid var(--line);background:rgba(255,255,255,.03);min-height:220px;display:flex;flex-direction:column;justify-content:space-between}
.link-card h3{font-family:var(--font-display);font-size:calc((1.55rem) + 4px);line-height:1.06;margin:12px 0 10px}.link-card p{margin:0;color:var(--muted)}
.privacy article{max-width:860px;margin:0 auto;padding:30px;border-radius:26px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.privacy h1,.privacy h2{font-family:var(--font-display)}
.site-footer{padding:28px 0 46px;border-top:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,.02))}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr;gap:18px;align-items:start}.footer-brand img{width:min(230px,100%)}
.footer-grid h3{font-size:calc((.78rem) + 4px);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.footer-links{display:grid;gap:10px;color:var(--muted)}.footer-links a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;padding-top:22px;margin-top:22px;border-top:1px solid var(--line);color:var(--muted);font-size:calc((.92rem) + 4px)}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease}.reveal.in-view{opacity:1;transform:translateY(0)}
.center{text-align:center}.center .section-head{grid-template-columns:1fr;justify-items:center}.center .section-lead{max-width:70ch}
.footer-note{color:var(--muted)}
.anchor-spacer{height:1px}
.mobile-only{display:none}
.desktop-only{display:block}
.not-found{min-height:100vh;display:grid;place-items:center;padding:140px 0 60px}
.not-found-shell{max-width:720px;text-align:center;padding:34px;border-radius:30px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.not-found-shell h1{font-family:var(--font-display);font-size:calc((clamp(3rem,6vw,5rem)) + 4px);margin:0 0 10px}
.not-found-shell p{color:var(--muted);margin:0 auto 18px;max-width:52ch}
.back-top{position:fixed;right:18px;bottom:18px;width:46px;height:46px;border-radius:999px;display:grid;place-items:center;background:rgba(10,12,15,.85);color:#fff;border:1px solid var(--line);opacity:0;pointer-events:none;transition:opacity .35s ease, transform .35s ease;z-index:800}.back-top.visible{opacity:1;pointer-events:auto}.back-top:hover{transform:translateY(-3px)}
@media (max-width: 1100px){
  .hero-grid,.story-shell,.spotlight-layout,.contact-grid,.section-head,.cta-panel,.footer-grid{grid-template-columns:1fr}
  .hero-stage{min-height:auto}
  .service-card{grid-column:span 6}
  .insight-grid,.principles,.mini-stat-grid,.feature-grid,.process-list,.link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .story-visual-wrap,.spotlight-stage{position:relative;top:auto}
  .story-step{min-height:420px}
}
@media (max-width: 820px){
  .nav-toggle{display:inline-grid;place-items:center}
  .main-nav{position:fixed;left:20px;right:20px;top:88px;display:grid;gap:4px;padding:18px;border-radius:24px;background:rgba(8,10,13,.96);border:1px solid var(--line);opacity:0;pointer-events:none;transform:translateY(-12px);transition:opacity .35s ease,transform .35s ease}
  .main-nav.open{opacity:1;pointer-events:auto;transform:translateY(0)}
  .header-cta{display:none}
  .hero-signals{grid-template-columns:1fr}
  .service-card{grid-column:span 12}
  .insight-grid,.principles,.mini-stat-grid,.feature-grid,.process-list,.link-grid,.form-grid{grid-template-columns:1fr}
  .display{font-size:calc((clamp(2.9rem,13vw,5rem)) + 4px)}
  .page-hero{padding-top:132px}
  .internal-hero{padding-top:138px}
  .brand-wording{display:none}
  .story-step{min-height:360px}
  .desktop-only{display:none}
  .mobile-only{display:block}
}
@media (max-width: 560px){
  :root{--container:min(100% - 28px,1200px)}
  .section{padding:84px 0}
  .page-hero{padding-bottom:56px}
  .logo-stage{padding:18px;border-radius:28px}
  .hero-card,.contact-card,.cta-panel,.story-visual,.spotlight-stage,.surface,.service-card,.insight-card,.principle,.feature-card,.process-item,.link-card,.team-item,.story-step{padding:20px}
  .section-title{font-size:calc((clamp(2.15rem,11vw,3rem)) + 4px)}
  .team-item strong,.spotlight-meta strong{font-size:calc((1.8rem) + 4px)}
  .footer-bottom{display:grid}
}

/* ==========================================================
   SIGNATURE EXPERIENCE V2 — interaction layer
   Inspired by editorial storytelling, tactile navigation and
   restrained 3D depth. No external animation dependency.
   ========================================================== */

::selection{background:rgba(217,161,59,.28);color:#fff}
body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,transparent 0 24.9%,rgba(255,255,255,.018) 25%,transparent 25.1% 49.9%,rgba(255,255,255,.018) 50%,transparent 50.1% 74.9%,rgba(255,255,255,.018) 75%,transparent 75.1%)}

.scroll-progress{position:fixed;left:0;top:0;width:100%;height:2px;z-index:1600;background:rgba(255,255,255,.025);pointer-events:none}
.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--gold-deep),var(--gold),#F2BE5C);box-shadow:0 0 16px rgba(217,161,59,.45);will-change:width}

.page-transition{position:fixed;inset:0;z-index:1500;pointer-events:none;transform:scaleY(0);transform-origin:bottom;background:radial-gradient(circle at 50% 35%,rgba(217,161,59,.12),transparent 26%),#0D1A26;transition:transform .62s cubic-bezier(.77,0,.18,1)}
.page-transition::after{content:'BM CAPITAL';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--font-display);font-size:calc((clamp(2rem,6vw,5.5rem)) + 4px);letter-spacing:.12em;color:rgba(217,161,59,.78);white-space:nowrap}
.page-transition.active{transform:scaleY(1);transform-origin:top}
body.page-transitioning{overflow:hidden}

@media (pointer:fine){
  html.has-custom-cursor,html.has-custom-cursor a,html.has-custom-cursor button,html.has-custom-cursor input,html.has-custom-cursor select,html.has-custom-cursor textarea{cursor:none!important}
  .cursor-dot,.cursor-ring{position:fixed;left:0;top:0;z-index:1700;pointer-events:none;opacity:0;will-change:transform}
  .cursor-dot{width:5px;height:5px;border-radius:50%;background:#fff;box-shadow:0 0 18px rgba(217,161,59,.55)}
  .cursor-ring{width:46px;height:46px;border:1px solid rgba(217,161,59,.5);border-radius:50%;display:grid;place-items:center;transition:width .28s ease,height .28s ease,border-color .28s ease,background .28s ease,opacity .28s ease}
  .cursor-ring span{font-size:calc((.54rem) + 4px);letter-spacing:.12em;color:#0D1A26;font-weight:800;opacity:0;transition:opacity .2s ease}
  .cursor-ring.is-link{width:74px;height:74px;background:rgba(217,161,59,.92);border-color:rgba(217,161,59,.98)}
  .cursor-ring.is-link span{opacity:1}
  .cursor-ring.visible,.cursor-dot.visible{opacity:1}
}

.page-hero{isolation:isolate}
.page-hero::after{content:'BM';position:absolute;right:-.03em;bottom:-.30em;z-index:-1;font-family:var(--font-display);font-size:calc((min(44vw,680px)) + 4px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(217,161,59,.065);letter-spacing:-.08em;pointer-events:none}
.page-hero .hero-grid{perspective:1400px}
.hero-stage{transform-style:preserve-3d;transition:transform .65s cubic-bezier(.16,1,.3,1)}
.logo-stage{transform-style:preserve-3d;perspective:1200px;isolation:isolate}
.logo-stage::before{height:78%;inset:auto -12% -38% -12%;background:radial-gradient(circle at center,rgba(217,161,59,.27),transparent 58%);filter:blur(38px)}
.logo-stage img{transform-style:preserve-3d;backface-visibility:hidden}
.logo-stage .logo-reflection{position:absolute;inset:0;pointer-events:none}
.hero-orbit{animation:orbitPulse 7s ease-in-out infinite}
.hero-orbit::before{animation:orbitPulse 8.5s ease-in-out infinite reverse}
.hero-orbit::after{animation:orbitPulse 10s ease-in-out infinite}
@keyframes orbitPulse{0%,100%{transform:scale(.98);opacity:.45}50%{transform:scale(1.025);opacity:1}}

.marquee-band{position:relative;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.015);padding:15px 0}
.marquee-track{display:flex;align-items:center;gap:30px;width:max-content;animation:signatureMarquee 28s linear infinite;will-change:transform}
.marquee-track span{font-family:var(--font-display);font-size:calc((clamp(2.1rem,5vw,5rem)) + 4px);line-height:.9;letter-spacing:-.025em;color:rgba(246,241,234,.16);white-space:nowrap}
.marquee-track span:nth-of-type(2n){color:rgba(217,161,59,.64)}
.marquee-track i{display:block;width:7px;height:7px;border:1px solid rgba(217,161,59,.62);transform:rotate(45deg)}
@keyframes signatureMarquee{to{transform:translateX(-50%)}}

.reveal{filter:blur(7px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1)}
.reveal.in-view{filter:blur(0)}

.story-step{transition:border-color .45s ease,background .45s ease,transform .45s ease}
.story-step.active{border-color:rgba(217,161,59,.26);background:linear-gradient(135deg,rgba(217,161,59,.07),rgba(255,255,255,.025));transform:translateX(8px)}
.story-visual{position:relative}
.story-visual::after{content:'';position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;bottom:-90px;background:radial-gradient(circle,rgba(217,161,59,.19),transparent 68%);filter:blur(8px);transition:transform .7s cubic-bezier(.16,1,.3,1)}
.story-visual[data-active="2"]::after{transform:translate(-120px,-180px) scale(.78)}
.story-visual[data-active="3"]::after{transform:translate(-250px,-70px) scale(1.15)}
.story-visual[data-active="4"]::after{transform:translate(-120px,-290px) scale(.92)}

.rail-section{padding:0!important;position:relative}
.rail-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;overflow:hidden}
.rail-sticky>.container{padding-top:88px}
.rail-section .section-head{margin-bottom:30px}
.rail-viewport{overflow:visible;width:100%;position:relative}
.signature-rail{display:flex!important;grid-template-columns:none!important;width:max-content;gap:18px;will-change:transform;transform:translate3d(0,0,0)}
.signature-rail .service-card{grid-column:auto!important;flex:0 0 clamp(330px,31vw,430px);min-height:400px;padding:30px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));backdrop-filter:blur(12px)}
.signature-rail .service-card h3{font-size:calc((clamp(2rem,2.6vw,2.8rem)) + 4px)}
.signature-rail .service-card .index{font-size:calc((4.2rem) + 4px);color:rgba(255,255,255,.08)}
.signature-rail .service-card::after{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(217,161,59,.7),transparent);transform:translateX(-100%);transition:transform .8s cubic-bezier(.16,1,.3,1)}
.signature-rail .service-card:hover::after{transform:translateX(100%)}
.rail-progress{height:1px;background:rgba(255,255,255,.08);margin-top:28px;position:relative;overflow:hidden}
.rail-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold-deep),var(--gold),#F2BE5C);will-change:width}

.leadership-section{overflow:hidden}
.leadership-section::before{content:'LEADERSHIP';position:absolute;left:-.03em;top:17%;font-family:var(--font-display);font-size:calc((clamp(7rem,19vw,19rem)) + 4px);letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.035);pointer-events:none;white-space:nowrap}
.spotlight-stage{isolation:isolate;overflow:hidden}
.spotlight-stage::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.08) 50%,transparent 64%);transform:translateX(-140%);transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
.spotlight-stage:hover::after{transform:translateX(140%)}
.spotlight-photo img{clip-path:inset(0 0 100% 0);transform:scale(1.12);transition:opacity .08s linear,clip-path .78s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.spotlight-photo img.active{clip-path:inset(0 0 0 0);transform:scale(1);opacity:1}
.team-item{position:relative;overflow:hidden}
.team-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(var(--gold),transparent);transform:scaleY(0);transform-origin:top;transition:transform .45s ease}
.team-item.active::before,.team-item:hover::before{transform:scaleY(1)}

.insight-card{position:relative;overflow:hidden;transition:transform .45s cubic-bezier(.16,1,.3,1),border-color .45s ease}
.insight-card:hover{transform:translateY(-8px);border-color:rgba(217,161,59,.26)}
.insight-card::after{content:'';position:absolute;inset:auto -60px -80px auto;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(217,161,59,.14),transparent 65%);transition:transform .6s ease}
.insight-card:hover::after{transform:scale(1.3)}

.button,.header-cta,.text-link{position:relative;overflow:hidden}
.button::before,.header-cta::before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.16) 50%,transparent 75%);transform:translateX(-150%);transition:transform .75s cubic-bezier(.16,1,.3,1)}
.button:hover::before,.header-cta:hover::before{transform:translateX(150%)}

@media (max-width:900px){
  .rail-section{height:auto!important;padding:84px 0!important}
  .rail-sticky{position:relative;top:auto;height:auto;display:block;overflow:visible}
  .rail-sticky>.container{padding-top:0}
  .rail-viewport{overflow:visible}
  .signature-rail{display:grid!important;width:100%;grid-template-columns:1fr!important;transform:none!important}
  .signature-rail .service-card{flex:auto;min-height:320px;width:100%}
  .rail-progress{display:none}
  .marquee-track{animation-duration:34s}
}

@media (max-width:560px){
  .marquee-band{padding:12px 0}
  .marquee-track{gap:20px}
  .page-hero::after{font-size:calc((80vw) + 4px);bottom:-.12em}
  .signature-rail .service-card{padding:22px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .signature-rail{transform:none!important}
  .rail-section{height:auto!important;padding:84px 0!important}
  .rail-sticky{position:relative;height:auto;overflow:visible}
  .rail-sticky>.container{padding-top:0}
}

/* ==========================================================
   STABILITY PATCH — progressive enhancement / fail-open
   ========================================================== */
/* Content is visible by default. JavaScript opts each element into reveal. */
.reveal{opacity:1;transform:none;filter:none}
.reveal.reveal-ready{opacity:0;transform:translateY(26px);filter:blur(7px)}
.reveal.reveal-ready.in-view{opacity:1;transform:translateY(0);filter:blur(0)}

/* Never allow a loader to permanently block the site. */
.loader{pointer-events:none;animation:bmLoaderFailsafe .2s 3.2s forwards}
.loader.hidden{animation:none;opacity:0;visibility:hidden}
@keyframes bmLoaderFailsafe{to{opacity:0;visibility:hidden}}

/* A rail remains readable even if JS is disabled. */
.signature-rail{overflow:visible}
@media (max-width:900px){.reveal.reveal-ready{filter:none}}


/* ================================================================
   BM CAPITAL — PALETA OFICIAL 2026
   #212E40 · #0D1A26 · #D9A13B · #F2BE5C · #A6691F
   Somente identidade cromatica, nova aguia e legibilidade.
   ================================================================ */
body{
  background:
    radial-gradient(circle at top left,rgba(217,161,59,.12),transparent 38%),
    radial-gradient(circle at 85% 10%,rgba(242,190,92,.07),transparent 26%),
    linear-gradient(180deg,#0D1A26 0%,#212E40 40%,#0D1A26 100%);
}
.loader{background:radial-gradient(circle at top,rgba(217,161,59,.20),transparent 34%),#0D1A26}
.site-header{background:rgba(13,26,38,.34)}
.site-header.scrolled{background:rgba(13,26,38,.88)}
.page-hero::before{background:linear-gradient(90deg,rgba(13,26,38,.97) 0%,rgba(13,26,38,.88) 42%,rgba(33,46,64,.66) 100%),radial-gradient(circle at 72% 28%,rgba(217,161,59,.18),transparent 26%)}
.button-primary,.header-cta{background:linear-gradient(135deg,rgba(217,161,59,.20),rgba(166,105,31,.20));border-color:rgba(217,161,59,.42)}
.button-secondary,.signal,.service-card,.surface,.story-step,.story-visual,.spotlight-stage,.team-item,.principle,.insight-card,.contact-card,.mini-stat{background-color:rgba(33,46,64,.42)}
.button-dark,.field input,.field select,.field textarea,.spotlight-photo{background:#0D1A26}
.cta-panel{background:linear-gradient(135deg,rgba(217,161,59,.12),rgba(33,46,64,.52));border-color:rgba(217,161,59,.30)}
.logo-stage{background:linear-gradient(180deg,rgba(33,46,64,.68),rgba(13,26,38,.72));border-color:rgba(242,190,92,.16)}
.logo-stage::before{background:radial-gradient(circle at center,rgba(217,161,59,.27),transparent 58%)}
.logo-stage img{width:min(78%,470px);margin-inline:auto;object-fit:contain}
.loader-mark{width:min(245px,50vw);max-height:245px;object-fit:contain}
.brand-mark{object-fit:contain}
.footer-brand-lockup{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.footer-brand-lockup img{width:74px;height:74px;object-fit:contain;filter:drop-shadow(0 10px 26px rgba(217,161,59,.18))}
.footer-brand-wording{display:flex;flex-direction:column;line-height:1}
.footer-brand-wording strong{font-family:var(--font-display);font-size:calc((1.35rem) + 4px);letter-spacing:.055em;color:var(--gold-light)}
.footer-brand-wording span{margin-top:7px;font-size:calc((.67rem) + 4px);letter-spacing:.30em;text-transform:uppercase;color:rgba(255,255,255,.76)}

/* Conteudo ligeiramente maior — titulos e composicao permanecem intactos. */
body{font-size:20.5px;line-height:1.62}
.lead{font-size:calc((1.12rem) + 4px);line-height:1.68}
.section-lead,.story-step p,.story-copy p,.service-card p,.team-item p,.spotlight-meta p,.principle p,.insight-card p,.cta-panel p,.footer-note,.contact-card p{font-size:calc((1.03rem) + 4px);line-height:1.68}
.signal small,.hero-card span,.mini-stat span,.contact-line strong,.contact-line span{font-size:calc((.98rem) + 4px);line-height:1.55}
@media(max-width:760px){
  body{font-size:20px}
  .lead{font-size:calc((1.06rem) + 4px)}
  .section-lead,.story-step p,.story-copy p,.service-card p,.team-item p,.spotlight-meta p,.principle p,.insight-card p,.cta-panel p,.footer-note,.contact-card p{font-size:calc((1rem) + 4px)}
  .logo-stage img{width:min(76%,360px)}
}
