:root {
  --navy: #18324a;
  --navy-950: #0c2030;
  --navy-900: #102a3e;
  --slate: #5e6a73;
  --green: #526a5b;
  --bronze: #a9854f;
  --bronze-bright: #c09b61;
  --neutral: #f5f4f0;
  --paper: #fcfbf7;
  --white: #ffffff;
  --ink: #182027;
  --line: rgba(24, 50, 74, 0.17);
  --shadow: 0 28px 80px rgba(7, 23, 35, 0.2);
  --serif: Georgia, "Times New Roman", serif;
  --sans: Inter, Aptos, "Helvetica Neue", Arial, sans-serif;
  --shell: min(1240px, calc(100% - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: clip; }
body { margin: 0; overflow-x: clip; background: var(--neutral); color: var(--ink); font-family: var(--sans); font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
img { display: block; max-width: 100%; }
.shell { width: var(--shell); margin-inline: auto; }
.skip-link { position: fixed; z-index: 1000; top: 10px; left: 10px; transform: translateY(-180%); background: var(--white); color: var(--navy); padding: 0.6rem 1rem; border-radius: 3px; }
.skip-link:focus { transform: none; }

.site-header { position: fixed; z-index: 100; inset: 0 0 auto; color: var(--white); transition: background .25s ease, box-shadow .25s ease; }
.site-header.is-scrolled { background: rgba(12, 32, 48, .96); box-shadow: 0 12px 32px rgba(0, 0, 0, .16); backdrop-filter: blur(14px); }
.header-inner { min-height: 90px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { display: inline-flex; align-items: center; gap: .85rem; text-decoration: none; min-width: 245px; }
.brand-mark { display: block; position: relative; width: 48px; height: 48px; overflow: hidden; flex: 0 0 auto; background: var(--paper); }
.brand-mark img { position: absolute; width: 106px; max-width: none; left: -29px; top: -18px; }
.brand-type { display: grid; line-height: 1; }
.brand-type strong { font-family: var(--serif); font-size: 1.06rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 600; }
.brand-type small { margin-top: .46rem; color: rgba(255,255,255,.66); font-size: .61rem; text-transform: uppercase; letter-spacing: .16em; }
.site-nav { display: flex; align-items: center; gap: clamp(.85rem, 1.5vw, 1.45rem); }
.site-nav > a { position: relative; text-decoration: none; color: rgba(255,255,255,.8); font-size: .82rem; font-weight: 650; letter-spacing: .035em; }
.site-nav > a:not(.button)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -.5rem; height: 1px; background: var(--bronze-bright); transition: right .2s ease; }
.site-nav > a:hover, .site-nav > a:focus-visible, .site-nav > a.is-active { color: var(--white); }
.site-nav > a:hover::after, .site-nav > a:focus-visible::after, .site-nav > a.is-active::after { right: 0; }
.menu-toggle { display: none; background: none; border: 0; color: inherit; }

.terrain-field { position: relative; isolation: isolate; overflow: hidden; }
.hero { min-height: min(880px, 100svh); color: var(--white); background: linear-gradient(112deg, var(--navy-950) 0%, var(--navy) 64%, #21495b 100%); }
.terrain-field::before { content: ""; position: absolute; z-index: -2; width: 920px; aspect-ratio: 1; right: -235px; top: -215px; opacity: .24; transform: rotate(-13deg); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 800'%3E%3Cg fill='none' stroke='%23c09b61' stroke-width='1.25'%3E%3Cpath d='M403 50c151 2 286 91 324 203 36 106-35 151-24 245 13 112-58 217-172 246-113 29-180-64-286-78C151 654 52 592 50 478 48 362 130 329 145 236 163 124 268 48 403 50Z'/%3E%3Cpath d='M408 92c126 1 241 74 276 169 33 88-30 132-19 213 12 96-47 184-145 211-95 26-155-54-246-65-81-10-165-62-166-157-1-97 70-127 83-207 14-96 103-165 217-164Z'/%3E%3Cpath d='M411 139c101 1 195 58 225 134 28 71-24 109-14 175 11 77-35 148-113 172-77 23-127-42-201-50-67-8-135-49-135-125 0-77 59-103 69-166 12-78 84-140 169-140Z'/%3E%3Cpath d='M416 189c77 0 149 45 173 103 22 55-18 84-10 135 8 60-28 115-88 133-58 18-97-32-154-38-51-6-104-38-104-97 0-60 45-79 54-127 9-61 63-109 129-109Z'/%3E%3Cpath d='M420 238c53 1 103 30 120 70 16 39-12 59-7 94 6 42-19 81-61 94-41 12-68-23-108-27-36-4-73-26-73-67 0-42 32-56 37-90 7-42 44-75 92-74Z'/%3E%3Cpath d='M423 286c29 0 57 16 67 39 9 21-7 33-4 53 3 23-11 44-34 51-23 7-38-13-60-15-20-2-40-14-41-37 0-23 18-31 21-50 4-23 25-42 51-41Z'/%3E%3C/g%3E%3C/svg%3E"); background-size: contain; }
.terrain-field::after { content: ""; position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(10,28,42,.34), transparent 52%), linear-gradient(0deg, rgba(6,19,29,.33), transparent 32%); }
.hero-grid { min-height: inherit; padding: 172px 0 110px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(340px, .62fr); align-items: center; gap: clamp(3rem, 7vw, 7.5rem); }
.hero-copy { max-width: 760px; }
.eyebrow { margin: 0 0 1.1rem; color: var(--bronze); font-size: .77rem; font-weight: 800; text-transform: uppercase; letter-spacing: .18em; }
.eyebrow.light { color: var(--bronze-bright); }
.hero h1 { margin: 0; max-width: 760px; font-family: var(--serif); font-size: clamp(4.2rem, 7.2vw, 7.5rem); font-weight: 400; letter-spacing: -.055em; line-height: .92; text-wrap: balance; }
.hero-lede { max-width: 700px; margin: 2.1rem 0 0; font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.85rem); line-height: 1.35; color: rgba(255,255,255,.92); }
.hero-detail { max-width: 680px; margin: 1.35rem 0 0; color: rgba(255,255,255,.68); font-size: 1.02rem; }
.button-row { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 2.25rem; }
.button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: .5rem; padding: .88rem 1.35rem; border: 1px solid var(--bronze); border-radius: 2px; background: var(--bronze); color: var(--white) !important; text-decoration: none; text-transform: uppercase; letter-spacing: .095em; font-size: .72rem; font-weight: 800; transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.button:hover, .button:focus-visible { background: #93713f; border-color: #93713f; transform: translateY(-2px); }
.button-small { min-height: 42px; padding: .68rem 1rem; }
.button-ghost-light { background: transparent; border-color: rgba(255,255,255,.46); }
.button-ghost-light:hover, .button-ghost-light:focus-visible { background: var(--white); border-color: var(--white); color: var(--navy) !important; }

.intel-card { position: relative; align-self: center; border: 1px solid rgba(255,255,255,.2); background: rgba(9, 29, 43, .72); box-shadow: var(--shadow); backdrop-filter: blur(8px); }
.intel-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: var(--bronze); }
.intel-card-topline { display: flex; justify-content: space-between; padding: 1.2rem 1.35rem .85rem; border-bottom: 1px solid rgba(255,255,255,.13); color: rgba(255,255,255,.55); font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .13em; }
.intel-card-kicker { margin: 0; padding: 1.4rem 1.35rem 1rem; font-family: var(--serif); font-size: 1.45rem; line-height: 1.25; }
.intel-card ul { list-style: none; margin: 0; padding: 0 .8rem 1.15rem; }
.intel-card li { display: grid; grid-template-columns: 2.3rem 1fr; align-items: center; min-height: 49px; padding: .45rem .55rem; border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.83); font-size: .86rem; }
.intel-card li span { color: var(--bronze-bright); font-size: .66rem; letter-spacing: .11em; }
.coordinate-line { display: flex; flex-wrap: wrap; gap: .8rem 1.1rem; padding: .95rem 1.35rem; background: rgba(255,255,255,.055); color: rgba(255,255,255,.46); font-size: .58rem; text-transform: uppercase; letter-spacing: .11em; }
.scroll-cue { position: absolute; bottom: 1.6rem; left: max(24px, calc((100% - 1240px) / 2)); display: flex; align-items: center; gap: .8rem; color: rgba(255,255,255,.42); font-size: .62rem; text-transform: uppercase; letter-spacing: .15em; }
.scroll-cue span { width: 52px; height: 1px; background: var(--bronze); }

.section { padding: clamp(5rem, 9vw, 8.5rem) 0; }
.problem-section { background: var(--paper); }
.split-heading { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .75fr); gap: clamp(3rem, 8vw, 8rem); align-items: start; }
h2 { margin: 0; color: var(--navy); font-family: var(--serif); font-size: clamp(2.5rem, 4.6vw, 4.7rem); font-weight: 400; letter-spacing: -.038em; line-height: 1.02; text-wrap: balance; }
.large-copy { margin-top: .2rem; color: var(--navy); font-family: var(--serif); font-size: clamp(1.3rem, 2vw, 1.65rem); line-height: 1.45; }
.problem-section p:not(.eyebrow):not(.large-copy) { color: var(--slate); }

.section-intro { max-width: 760px; margin-bottom: 3.25rem; }
.section-intro h2 { max-width: 720px; }
.light-intro h2 { color: var(--white); }
.outputs-band { padding: clamp(4.5rem, 8vw, 7rem) 0; background: var(--navy-950); color: var(--white); border-top: 3px solid var(--bronze); }
.output-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.17); border-bottom: 1px solid rgba(255,255,255,.17); }
.output-grid article { min-height: 210px; padding: 1.7rem 1.6rem; border-left: 1px solid rgba(255,255,255,.17); }
.output-grid article:first-child { border-left: 0; }
.output-grid span, .evidence-number { display: block; color: var(--bronze-bright); font-size: .66rem; font-weight: 800; letter-spacing: .13em; }
.output-grid h3, .evidence-grid h3 { margin: 2.25rem 0 .6rem; font-family: var(--serif); font-size: 1.55rem; font-weight: 400; }
.output-grid p { margin: 0; color: rgba(255,255,255,.63); font-size: .9rem; }
.terrain-paper { position: relative; overflow: hidden; background-color: var(--neutral); background-image: radial-gradient(circle at 75% 50%, rgba(82,106,91,.07), transparent 28%), repeating-radial-gradient(ellipse at 92% 48%, transparent 0 31px, rgba(82,106,91,.08) 32px 33px); }
.flagship-grid, .sample-grid, .ideal-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .82fr); gap: clamp(3.5rem, 8vw, 8rem); align-items: center; }
.flagship-grid > div:first-child > p:not(.eyebrow), .sample-grid > div:last-child > p:not(.eyebrow), .ideal-grid > div:last-child > p { color: var(--slate); }
.text-link { display: inline-flex; align-items: center; gap: .5rem; color: var(--navy); font-size: .79rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; text-underline-offset: .35rem; }
.report-stack { position: relative; min-height: 490px; display: grid; place-items: center; }
.report-sheet { position: relative; z-index: 2; width: min(100%, 430px); min-height: 480px; padding: 2rem; background: var(--paper); border: 1px solid var(--line); box-shadow: 0 24px 70px rgba(24,50,74,.15); }
.report-sheet-back { position: absolute; z-index: 1; transform: rotate(4.5deg) translate(17px, 4px); background: var(--green); opacity: .52; }
.report-head { display: flex; justify-content: space-between; padding-bottom: .9rem; border-bottom: 2px solid var(--bronze); color: var(--navy); font-size: .61rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.report-label { margin: 3rem 0 .7rem; color: var(--bronze); font-size: .66rem; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.report-sheet h3 { margin: 0; color: var(--navy); font-family: var(--serif); font-size: 2.15rem; font-weight: 400; line-height: 1.12; }
.report-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-top: 2rem; background: var(--line); border: 1px solid var(--line); }
.report-metrics div { padding: 1rem; background: var(--paper); }
.report-metrics small { display: block; color: var(--slate); font-size: .62rem; text-transform: uppercase; letter-spacing: .08em; }
.report-metrics strong { display: block; margin-top: .35rem; color: var(--navy); font-family: var(--serif); font-size: 1.35rem; font-weight: 400; }
.report-lines { display: grid; gap: .6rem; margin-top: 2rem; }
.report-lines i { height: 5px; background: rgba(24,50,74,.1); }
.report-lines i:nth-child(2) { width: 84%; }.report-lines i:nth-child(3) { width: 91%; }.report-lines i:nth-child(4) { width: 68%; }
.report-footer { position: absolute; inset: auto 2rem 1.7rem; display: flex; justify-content: space-between; color: var(--slate); font-size: .56rem; text-transform: uppercase; letter-spacing: .09em; }
.evidence-section { background: var(--paper); }
.evidence-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.evidence-grid article { padding: 2.2rem 2rem 2.2rem 0; border-bottom: 1px solid var(--line); }
.evidence-grid article:nth-child(even) { padding-left: 2rem; border-left: 1px solid var(--line); }
.evidence-grid h3 { margin-top: 1.3rem; color: var(--navy); }
.evidence-grid p { max-width: 520px; margin-bottom: 0; color: var(--slate); }
.sample-feature { background: var(--green); color: var(--white); }
.sample-feature h2 { color: var(--white); }
.sample-feature .large-copy { color: rgba(255,255,255,.9) !important; }
.sample-feature p:not(.eyebrow):not(.large-copy) { color: rgba(255,255,255,.66) !important; }
.sample-scorecard { background: var(--paper); color: var(--ink); box-shadow: 0 28px 80px rgba(15,34,26,.28); }
.scorecard-head { display: flex; justify-content: space-between; padding: 1rem 1.35rem; background: var(--navy); color: var(--white); font-size: .65rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
.sample-scorecard dl { margin: 0; padding: .75rem 1.35rem 1.15rem; }
.sample-scorecard dl > div { display: grid; grid-template-columns: 140px 1fr; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--line); }
.sample-scorecard dl > div:last-child { border-bottom: 0; }
.sample-scorecard dt { color: var(--slate); font-size: .68rem; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }
.sample-scorecard dd { margin: 0; color: var(--navy); font-weight: 650; }
.sample-scorecard dd strong { font-family: var(--serif); font-size: 1.9rem; font-weight: 400; }
.sample-scorecard dd small { display: block; color: var(--bronze); font-size: .6rem; text-transform: uppercase; letter-spacing: .08em; }
.status-pill { display: inline-flex; padding: .35rem .6rem; border: 1px solid rgba(82,106,91,.4); background: rgba(82,106,91,.1); color: var(--green); font-size: .7rem; text-transform: uppercase; letter-spacing: .08em; }
.button-dark { background: var(--navy-950); border-color: var(--navy-950); }
.ideal-grid { align-items: start; }
.check-list, .plain-list { list-style: none; margin: 2rem 0 0; padding: 0; }
.check-list li { position: relative; padding: 1rem 0 1rem 2rem; border-top: 1px solid var(--line); color: var(--navy); font-weight: 650; }
.check-list li::before { content: ""; position: absolute; left: .15rem; top: 1.45rem; width: 8px; height: 8px; border: 1px solid var(--bronze); transform: rotate(45deg); }
.closing-cta { padding: clamp(6rem, 11vw, 10rem) 0; background-color: var(--navy-950); color: var(--white); text-align: center; }
.closing-inner { max-width: 840px; }
.closing-cta h2 { color: var(--white); }
.closing-cta p:not(.eyebrow) { max-width: 660px; margin: 1.5rem auto 2rem; color: rgba(255,255,255,.7); font-size: 1.08rem; }
.site-footer { padding: 4.5rem 0 1.5rem; background: #081a28; color: rgba(255,255,255,.67); }
.footer-grid { display: grid; grid-template-columns: 1.4fr .5fr .65fr; gap: 4rem; }
.footer-brand .brand { color: var(--white); }.footer-brand p { max-width: 480px; margin: 1.5rem 0 0; font-size: .87rem; }
.site-footer nav, .site-footer .footer-grid > div:last-child { display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; }
.site-footer h2 { margin: 0 0 .7rem; color: var(--bronze-bright); font-family: var(--sans); font-size: .68rem; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; }
.site-footer a:not(.brand) { color: rgba(255,255,255,.72); text-decoration: none; font-size: .85rem; }
.site-footer a:hover, .site-footer a:focus-visible { color: var(--white); }
.footer-note { max-width: 260px; font-size: .75rem; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; margin-top: 3.5rem; padding-top: 1.2rem; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.38); font-size: .65rem; text-transform: uppercase; letter-spacing: .08em; }

/* Interior pages */
.interior-header { background: var(--navy-950); }
.page-hero { position: relative; overflow: hidden; padding: 175px 0 92px; background: var(--navy); color: var(--white); }
.page-hero h1 { max-width: 880px; margin: 0; font-family: var(--serif); font-size: clamp(3.5rem, 7vw, 6.8rem); font-weight: 400; letter-spacing: -.052em; line-height: .95; }
.page-hero .hero-lede { max-width: 780px; }
.page-hero .hero-detail { max-width: 740px; }
.page-hero::after { content: ""; position: absolute; inset: auto -13% -62% auto; width: 660px; aspect-ratio: 1; border: 1px solid rgba(169,133,79,.24); border-radius: 50%; box-shadow: 0 0 0 55px rgba(169,133,79,.05), 0 0 0 110px rgba(169,133,79,.04), 0 0 0 165px rgba(169,133,79,.03); }
.crumb { margin: 0 0 1.5rem; color: var(--bronze-bright); font-size: .66rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.section-white { background: var(--paper); }.section-neutral { background: var(--neutral); }.section-navy { background: var(--navy-950); color: var(--white); }.section-navy h2 { color: var(--white); }
.service-list { display: grid; gap: 1px; background: var(--line); border: 1px solid var(--line); }
.service-card { display: grid; grid-template-columns: 92px minmax(220px,.65fr) minmax(0,1fr); gap: 2rem; padding: 2.4rem; background: var(--paper); }
.service-index { color: var(--bronze); font-family: var(--serif); font-size: 2.1rem; }
.service-card h2, .method-step h2 { margin: 0; font-size: clamp(1.8rem,3vw,2.7rem); }
.service-card h3 { margin: .45rem 0 0; color: var(--slate); font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; }
.service-card p { margin-top: 0; color: var(--slate); }.service-card strong { color: var(--navy); }
.flagship-deliverables { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.flagship-deliverables article { min-height: 250px; padding: 2.2rem; background: var(--paper); }
.flagship-deliverables article > span { color: var(--bronze); font-size: .66rem; font-weight: 800; letter-spacing: .13em; }
.flagship-deliverables h3 { margin: 1.7rem 0 .7rem; color: var(--navy); font-family: var(--serif); font-size: 1.8rem; font-weight: 400; line-height: 1.15; }
.flagship-deliverables p { margin: 0; color: var(--slate); }
.flagship-capabilities { grid-template-columns: repeat(4,1fr); }
.report-metrics strong { overflow-wrap: anywhere; }
.pricing-band { display: grid; grid-template-columns: .8fr 1.2fr; gap: 3rem; align-items: center; padding: 3rem; background: var(--navy); color: var(--white); border-left: 4px solid var(--bronze); }
.pricing-band h2 { color: var(--white); font-size: clamp(2rem,4vw,3.6rem); }.pricing-band p { color: rgba(255,255,255,.68); }
.method-list { counter-reset: method; border-top: 1px solid var(--line); }
.method-step { counter-increment: method; display: grid; grid-template-columns: 96px minmax(220px,.62fr) minmax(0,1fr); gap: 2.2rem; padding: 2.5rem 0; border-bottom: 1px solid var(--line); }
.method-step::before { content: "0" counter(method); color: var(--bronze); font-family: var(--serif); font-size: 2.15rem; }
.method-step p { margin: 0; color: var(--slate); }
.standards-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 1px; background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.15); }
.standards-grid div { padding: 1.6rem 1.2rem; background: var(--navy-950); }
.standards-grid strong { display: block; color: var(--white); font-family: var(--serif); font-size: 1.18rem; font-weight: 400; }.standards-grid span { display: block; margin-top: .5rem; color: rgba(255,255,255,.48); font-size: .72rem; }
.boundary-list { columns: 2; column-gap: 4rem; margin: 2rem 0 0; padding-left: 1.2rem; }.boundary-list li { break-inside: avoid; margin: 0 0 1rem; color: var(--slate); }
.demo-meta { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }.demo-meta div { padding: 1.5rem; background: var(--paper); }.demo-meta dt { color: var(--slate); font-size: .65rem; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }.demo-meta dd { margin: .5rem 0 0; color: var(--navy); font-weight: 700; }.demo-meta dd strong { font-family: var(--serif); font-size: 2rem; font-weight: 400; }
.disclaimer { margin-top: 2rem; padding: 1.3rem 1.5rem; border-left: 3px solid var(--bronze); background: rgba(169,133,79,.08); color: var(--slate); font-size: .88rem; }
.insight-list { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; margin-top: 3rem; background: var(--line); border: 1px solid var(--line); }.insight-list article { padding: 2rem; background: var(--paper); }.insight-list span { color: var(--bronze); font-size: .65rem; font-weight: 800; letter-spacing: .1em; }.insight-list h3 { margin: 1rem 0 .6rem; color: var(--navy); font-family: var(--serif); font-size: 1.45rem; font-weight: 400; }.insight-list p { margin: 0; color: var(--slate); }
.principles { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }.principles div { padding: 1.65rem; background: var(--paper); color: var(--navy); font-family: var(--serif); font-size: 1.25rem; }
.founder-placeholder { padding: 2rem; border: 1px solid var(--line); background: var(--paper); }.founder-placeholder h3 { margin-top: 0; color: var(--navy); font-family: var(--serif); font-size: 1.7rem; font-weight: 400; }.founder-placeholder p { color: var(--slate); }
.form-trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.contact-layout { display: grid; grid-template-columns: minmax(0,.7fr) minmax(420px,1fr); gap: clamp(3rem,8vw,7rem); align-items: start; }
.contact-form { display: grid; grid-template-columns: repeat(2,1fr); gap: 1.1rem; padding: clamp(1.4rem,4vw,2.5rem); background: var(--paper); border: 1px solid var(--line); box-shadow: 0 22px 65px rgba(24,50,74,.09); }
.field { display: grid; gap: .42rem; }.field-full { grid-column: 1 / -1; }.field label { color: var(--navy); font-size: .72rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }.field input,.field select,.field textarea { width: 100%; min-height: 48px; padding: .75rem .82rem; border: 1px solid rgba(24,50,74,.24); border-radius: 0; background: var(--white); color: var(--ink); font: inherit; }.field textarea { min-height: 130px; resize: vertical; }.field input:focus,.field select:focus,.field textarea:focus { outline: 2px solid rgba(169,133,79,.35); border-color: var(--bronze); }.required { color: #87552f; }.form-notice { grid-column: 1/-1; margin: .4rem 0 0; padding: 1rem; background: rgba(169,133,79,.1); color: var(--slate); font-size: .78rem; }.form-status { grid-column: 1/-1; min-height: 1.5rem; margin: 0; color: var(--green); font-size: .86rem; font-weight: 700; }
.contact-aside h2 { font-size: clamp(2.5rem,4.5vw,4.4rem); }.contact-aside p { color: var(--slate); }.contact-facts { margin: 2rem 0 0; padding: 0; }.contact-facts div { padding: 1.05rem 0; border-top: 1px solid var(--line); }.contact-facts dt { color: var(--slate); font-size: .66rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }.contact-facts dd { margin: .35rem 0 0; color: var(--navy); font-weight: 700; }
.legal-content { max-width: 860px; }.legal-content h2 { margin-top: 3.4rem; font-size: clamp(1.8rem,3vw,2.8rem); }.legal-content p,.legal-content li { color: var(--slate); }.legal-content li { margin-bottom: .6rem; }

@media (max-width: 1040px) {
  .site-nav { position: fixed; inset: 78px 16px auto; display: none; padding: 1.25rem; background: var(--navy-950); border: 1px solid rgba(255,255,255,.15); box-shadow: var(--shadow); }
  .site-nav.is-open { display: grid; }
  .menu-toggle { display: grid; width: 44px; height: 44px; place-content: center; gap: 7px; cursor: pointer; }
  .menu-toggle span { display: block; width: 24px; height: 1px; background: currentColor; }
  .hero-grid { grid-template-columns: 1fr; padding-top: 150px; }
  .intel-card { width: min(100%, 560px); }
  .hero { min-height: auto; }
  .output-grid { grid-template-columns: repeat(2,1fr); }
  .output-grid article:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.17); }
  .output-grid article:nth-child(4) { border-top: 1px solid rgba(255,255,255,.17); }
  .standards-grid { grid-template-columns: repeat(3,1fr); }
  .flagship-capabilities { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 720px) {
  :root { --shell: min(100% - 32px, 1240px); }
  .header-inner { min-height: 78px; }
  .brand { min-width: 0; }
  .brand-mark { width: 42px; height: 42px; }
  .brand-mark img { width: 94px; left: -26px; top: -16px; }
  .brand-type strong { font-size: .84rem; }
  .brand-type small { display: none; }
  .hero-grid { padding: 130px 0 86px; gap: 3.5rem; }
  .hero h1 { font-size: clamp(3.45rem, 16vw, 5.2rem); }
  .hero-lede { font-size: 1.3rem; }
  .hero-detail { font-size: .96rem; }
  .button-row { align-items: stretch; flex-direction: column; }
  .button { width: 100%; }
  .split-heading { grid-template-columns: 1fr; gap: 2.25rem; }
  .scroll-cue { display: none; }
  .flagship-grid, .sample-grid, .ideal-grid, .contact-layout { grid-template-columns: 1fr; }
  .output-grid, .evidence-grid, .demo-meta, .insight-list, .principles, .flagship-deliverables, .flagship-capabilities { grid-template-columns: 1fr; }
  .output-grid article { min-height: 180px; border-left: 0; border-top: 1px solid rgba(255,255,255,.17); }
  .output-grid article:first-child { border-top: 0; }
  .evidence-grid article, .evidence-grid article:nth-child(even) { padding: 2rem 0; border-left: 0; }
  .footer-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .footer-bottom { flex-direction: column; }
  .service-card, .method-step { grid-template-columns: 56px 1fr; gap: 1rem 1.25rem; }
  .service-card > div:last-child, .method-step > p { grid-column: 2; }
  .pricing-band { grid-template-columns: 1fr; }
  .standards-grid { grid-template-columns: 1fr; }
  .boundary-list { columns: 1; }
  .contact-form { grid-template-columns: 1fr; }
  .field-full { grid-column: 1; }
  .page-hero { padding-top: 140px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}
