
:root{
  --ink:#0a1520;
  --navy:#07111d;
  --navy-2:#0b1a29;
  --blue:#58a9e5;
  --blue-soft:#dceefb;
  --paper:#f5f3ee;
  --white:#fff;
  --muted:#66727c;
  --line:#d9dde0;
  --serif:Georgia,"Times New Roman",serif;
  --sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --max:1380px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.55}
img{max-width:100%;display:block}
a{color:inherit}
.container{width:min(var(--max),calc(100% - 64px));margin:0 auto}
.narrow{width:min(1040px,calc(100% - 64px))}
.site-header{position:sticky;top:0;z-index:50;background:rgba(245,243,238,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(10,21,32,.08)}
.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:650;letter-spacing:-.02em}
.brand-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--ink);font-size:.72rem;letter-spacing:.08em}
.brand-name{font-size:1rem}
.site-nav{display:flex;gap:30px}
.site-nav a{text-decoration:none;font-size:.92rem;color:#263542;position:relative}
.site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:1px;background:var(--blue);transition:.25s}
.site-nav a:hover:after{right:0}
html[data-page="home"] .site-nav a[href="index.html"]:after,
html[data-page="expertise"] .site-nav a[href="capabilities.html"]:after,
html[data-page="perspective"] .site-nav a[href="executive-experience.html"]:after,
html[data-page="projects"] .site-nav a[href="projects.html"]:after,
html[data-page="about"] .site-nav a[href="about.html"]:after,
html[data-page="contact"] .site-nav a[href="contact.html"]:after{right:0}
.menu-toggle{display:none;background:none;border:0;font:inherit}

h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}
h1{font-size:clamp(4rem,8vw,8rem);line-height:.94;margin-bottom:28px}
h2{font-size:clamp(2.5rem,5vw,5rem);line-height:1.02;margin-bottom:24px}
h3{font-size:1.3rem;letter-spacing:-.02em}
.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.73rem;font-weight:700;margin-bottom:22px}
.blue{color:var(--blue)}
.lede,.large-copy{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.5;color:#334450}
.muted{color:#bec9d1}
.section{padding:120px 0}
.rule-top{border-top:1px solid var(--line)}
.dark{background:var(--navy);color:white}
.page-hero{padding:130px 0 110px;border-bottom:1px solid var(--line)}
.page-hero.compact{padding-bottom:75px}
.page-hero .lede{max-width:820px}
.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 21px;text-decoration:none;border:1px solid var(--ink);font-size:.9rem;transition:.2s}
.button:hover{transform:translateY(-2px)}
.button-light{border-color:#9ac8e8;color:#fff;background:rgba(8,26,40,.35)}
.button-outline{border-color:#688397;color:#fff}
.text-link{text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.light-link{color:#dbe8f0}

.hero-integrated{min-height:calc(100vh - 84px);display:flex;align-items:center;overflow:hidden;background:
 radial-gradient(circle at 74% 45%,rgba(54,134,191,.18),transparent 30%),
 linear-gradient(100deg,#06101b 0%,#091724 50%,#06101a 100%);color:white}
.hero-grid{display:grid;grid-template-columns:.82fr 1.18fr;align-items:center;gap:12px;padding:70px 0}
.hero-copy{position:relative;z-index:3}
.hero-copy h1{font-size:clamp(4.4rem,7.2vw,8.2rem);max-width:780px}
.hero-sub{font-size:clamp(1.08rem,1.5vw,1.32rem);max-width:650px;color:#c6d2da}
.hero-actions{display:flex;align-items:center;gap:24px;margin-top:32px}
.hero-art{width:116%;margin-right:-20%;position:relative}
.hero-art:before{content:"";position:absolute;inset:8%;background:radial-gradient(circle,rgba(53,135,194,.18),transparent 68%);filter:blur(45px)}
.hero-art img{position:relative;width:100%}
.split-intro{display:grid;grid-template-columns:.38fr 1fr;gap:70px}
.section-heading{max-width:820px;margin-bottom:55px}
.home-expertise-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}
.editorial-link{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:34px 24px 34px 0;text-decoration:none;border-bottom:1px solid var(--line)}
.editorial-link:nth-child(odd){border-right:1px solid var(--line)}
.editorial-link:nth-child(even){padding-left:34px}
.editorial-link span{font-size:.8rem;color:var(--muted)}
.editorial-link h3{margin-bottom:8px}
.editorial-link p{grid-column:2;color:var(--muted);margin:0}
.feature-grid{display:grid;grid-template-columns:1fr .9fr;gap:100px;align-items:center}
.feature-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #294050;border-left:1px solid #294050}
.feature-stats div{padding:34px;border-right:1px solid #294050;border-bottom:1px solid #294050}
.feature-stats strong,.feature-stats span{display:block}
.feature-stats span{color:#9fb0bc;margin-top:7px}
.philosophy-lines{font-family:var(--serif);font-size:clamp(3.2rem,7vw,7.4rem);line-height:.98;letter-spacing:-.05em}
.philosophy-lines span{display:block}
.philosophy-lines span:nth-child(2){color:var(--blue)}
.philosophy-note{margin-top:34px;color:var(--muted);font-size:1.1rem}

.editorial-sections{padding-top:35px}
.expertise-row{position:relative;display:grid;grid-template-columns:250px 1fr;gap:50px;padding:100px 0;border-bottom:1px solid var(--line)}
.expertise-row.reverse{text-align:right;grid-template-columns:1fr 250px}
.expertise-row.reverse .section-number{grid-column:2}
.expertise-row.reverse>div:last-child{grid-column:1;grid-row:1}
.section-number{font-family:var(--serif);font-size:9rem;line-height:.8;color:#e2e6e8}
.expertise-row h2{font-size:clamp(3rem,5vw,5.4rem)}
.expertise-row p{font-size:1.25rem;color:#44525d;max-width:730px}
.expertise-row.reverse p{margin-left:auto}
.tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.expertise-row.reverse .tags{justify-content:flex-end}
.tags span{border:1px solid #cdd4d8;padding:8px 12px;font-size:.82rem;color:#42515d}
.statement-block{max-width:900px}

.perspective-flow{padding-top:50px}
.journey-stage{display:grid;grid-template-columns:160px 1fr;gap:50px;padding:95px 0;border-bottom:1px solid var(--line)}
.stage-label{font-family:var(--serif);font-size:6rem;color:#dfe3e5;line-height:1}
.stage-body h2{font-size:clamp(2.8rem,5vw,5.2rem)}
.stage-body>p:not(.eyebrow){font-size:1.3rem;color:#42515c;max-width:800px}
.milestones{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.milestones span{font-size:.84rem;border-bottom:1px solid #aeb8be;padding-bottom:5px}
.convergence-section{background:#edf0f1}
.convergence-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cfd6da;border-left:1px solid #cfd6da;margin:35px 0 65px}
.convergence-grid div{padding:38px 20px;border-right:1px solid #cfd6da;border-bottom:1px solid #cfd6da;text-align:center;font-family:var(--serif);font-size:1.5rem}
.org-list{display:flex;flex-wrap:wrap;gap:14px 32px;font-family:var(--serif);font-size:clamp(1.7rem,3vw,3rem);color:#dbe5eb}

.projects-list{padding-top:40px}
.project-panel{display:grid;grid-template-columns:.82fr 1.18fr;min-height:620px;border-bottom:1px solid var(--line);align-items:center}
.project-panel.reverse{grid-template-columns:1.18fr .82fr}
.project-panel.reverse .project-copy{order:2;padding-left:90px;padding-right:0}
.project-panel.reverse .project-image{order:1}
.project-copy{padding-right:90px}
.project-copy h2{font-size:clamp(3rem,5vw,5rem)}
.project-copy>p:not(.eyebrow){font-size:1.18rem;color:#44515b}
.project-image{background:var(--navy);padding:34px;min-height:430px;display:flex;align-items:center}
.project-image img{width:100%;max-height:520px;object-fit:contain}

.about-grid{display:grid;grid-template-columns:.7fr 1fr;gap:100px}
.principles>div{display:grid;grid-template-columns:50px 1fr;column-gap:16px;padding:26px 0;border-top:1px solid var(--line)}
.principles span{color:var(--muted);font-size:.8rem}
.principles h3{margin-bottom:6px}
.principles p{grid-column:2;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.contact-email{font-family:var(--serif);font-size:clamp(2.4rem,5vw,5rem);text-decoration:none;border-bottom:1px solid var(--ink)}
.legal-copy{max-width:850px}
.legal-copy h2{font-size:2rem;margin-top:55px}
.legal-copy p{font-size:1.05rem;color:#3d4a54}

.site-footer{background:#030a10;color:#d6e0e7;padding:70px 0}
.footer-grid{display:grid;grid-template-columns:1.2fr .55fr .8fr;gap:70px}
.footer-brand .brand-mark{border-color:#d6e0e7}
.footer-philosophy{font-family:var(--serif);font-size:1.45rem;max-width:420px;margin-top:26px}
.footer-links,.footer-legal{display:flex;flex-direction:column;gap:10px}
.footer-links a,.footer-legal a{text-decoration:none;color:#aebcc5}
.footer-legal p{color:#71808a;font-size:.8rem;margin:10px 0 0}

.reveal{opacity:0;transform:translateY(14px);animation:reveal .7s ease forwards}
.reveal:nth-child(2){animation-delay:.12s}
@keyframes reveal{to{opacity:1;transform:none}}

@media(max-width:1000px){
  .site-nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--paper);padding:24px 32px;border-bottom:1px solid var(--line);flex-direction:column}
  .site-nav.open{display:flex}
  .menu-toggle{display:block}
  .hero-grid,.split-intro,.feature-grid,.about-grid,.contact-grid{grid-template-columns:1fr}
  .hero-art{width:100%;margin:20px 0 0}
  .home-expertise-grid{grid-template-columns:1fr}
  .editorial-link:nth-child(odd){border-right:0}
  .editorial-link:nth-child(even){padding-left:0}
  .expertise-row,.expertise-row.reverse{grid-template-columns:130px 1fr;text-align:left}
  .expertise-row.reverse .section-number{grid-column:1}
  .expertise-row.reverse>div:last-child{grid-column:2;grid-row:1}
  .expertise-row.reverse p{margin-left:0}
  .expertise-row.reverse .tags{justify-content:flex-start}
  .project-panel,.project-panel.reverse{grid-template-columns:1fr;padding:70px 0}
  .project-panel.reverse .project-copy,.project-copy{order:1;padding:0 0 40px}
  .project-panel.reverse .project-image,.project-image{order:2}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .container,.narrow{width:min(100% - 30px,100%)}
  .section{padding:82px 0}
  .page-hero{padding:88px 0 70px}
  h1{font-size:clamp(3.1rem,15vw,5rem)}
  .hero-copy h1{font-size:clamp(3.5rem,16vw,5.4rem)}
  .hero-actions{align-items:flex-start;flex-direction:column}
  .expertise-row,.expertise-row.reverse,.journey-stage{grid-template-columns:1fr;gap:15px}
  .expertise-row.reverse .section-number,.expertise-row.reverse>div:last-child{grid-column:auto;grid-row:auto}
  .section-number{font-size:6rem}
  .stage-label{font-size:4rem}
  .convergence-grid{grid-template-columns:1fr 1fr}
  .feature-stats{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
}

/* FX Development 2.1 brand integration */
.brand-logo{width:42px;height:40px;object-fit:contain;flex:0 0 auto}
.site-header .brand-name{font-weight:500;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}
.footer-brand .brand-logo{width:48px;height:46px}
.footer-brand .brand-name{letter-spacing:.12em;text-transform:uppercase;font-size:.82rem}
.brand-mark{display:none}
.button{border-radius:0}
.eyebrow{color:#8D6B42}
.dark .eyebrow,.hero-integrated .eyebrow{color:#C49C68}
::selection{background:#B89563;color:#0B1622}
