:root { --ink:#162e3c; --ink-soft:#4e6370; --navy:#142f40; --paper:#f6f3ec; --white:#fff; --gold:#a27637; --line:#d9dfde; --max:1280px; --sans:"DM Sans","Segoe UI",sans-serif; --serif:"Instrument Serif",Georgia,serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:108px; }
body { margin:0; color:var(--ink); background:var(--paper); font:16px/1.65 var(--sans); -webkit-font-smoothing:antialiased; }
body.menu-open { overflow:hidden; }
button,input,select,textarea { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; flex:0 0 auto; }
.svg-sprite { position:absolute; width:0; height:0; overflow:hidden; }
[hidden] { display:none!important; }
:focus-visible { outline:3px solid #a87e44; outline-offset:5px; }
.skip-link { position:fixed; z-index:150; top:8px; left:8px; padding:12px 18px; color:#fff; background:var(--navy); transform:translateY(-150%); }
.skip-link:focus { transform:none; }
.section-shell,.hero-shell { width:min(calc(100% - 80px),var(--max)); margin-inline:auto; }
.eyebrow { display:flex; align-items:center; gap:11px; color:#806039; font-size:12px; font-weight:650; letter-spacing:.14em; line-height:1.5; text-transform:uppercase; }
.eyebrow>span { flex:0 0 auto; width:25px; height:1px; background:#ad8550; }

/* Shared navigation: the mobile panel keeps every link in normal flow. */
.site-header { position:sticky; top:0; z-index:60; display:flex; align-items:center; gap:55px; height:88px; padding-inline:max(40px,calc((100vw - var(--max))/2)); border-bottom:1px solid #e2e3dc; background:rgba(250,248,243,.97); backdrop-filter:blur(14px); transition:box-shadow .2s; }
.site-header.scrolled { box-shadow:0 7px 24px #142f4009; }
.brand { display:inline-flex; align-items:center; gap:11px; width:max-content; flex:0 0 auto; font-size:27px; font-weight:700; letter-spacing:-.055em; line-height:1; }
.brand>span:last-child>span { color:var(--gold); }
.brand-mark { display:inline-flex; align-items:flex-end; gap:4px; height:30px; padding:0 3px 4px 0; border-bottom:2px solid currentColor; }
.brand-mark i { display:block; width:6px; background:#b88c4c; }
.brand-mark i:nth-child(1) { height:12px; }.brand-mark i:nth-child(2) { height:20px; }.brand-mark i:nth-child(3) { height:28px; }
.navigation-panel { display:flex; flex:1; align-items:center; justify-content:space-between; gap:25px; min-width:0; }
.main-nav { display:flex; align-items:center; gap:27px; }
.main-nav a { position:relative; color:#435660; font-size:14px; font-weight:600; white-space:nowrap; }
.main-nav a::after { content:""; position:absolute; bottom:-7px; left:0; width:100%; height:1px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform .2s; }
.main-nav a:hover::after,.main-nav a:focus-visible::after { transform:scaleX(1); }
.header-actions { display:flex; align-items:center; gap:20px; }
.client-link { display:inline-flex; align-items:center; gap:7px; font-size:14px; font-weight:600; white-space:nowrap; }
.client-link svg { width:17px; height:17px; color:var(--gold); }
.header-cta,.primary-button,.submit-button,.inverse-button { display:inline-flex; justify-content:center; align-items:center; gap:17px; min-height:54px; padding:14px 22px; border:1px solid transparent; border-radius:8px; background:var(--navy); color:#fff; font-size:15px; font-weight:600; line-height:1.4; transition:background .2s,transform .2s,box-shadow .2s; }
.header-cta { min-height:44px; padding:11px 17px; font-size:14px; white-space:nowrap; }.header-cta svg { width:17px; height:17px; }
.primary-button:hover,.submit-button:hover,.inverse-button:hover,.header-cta:hover { background:#285165; transform:translateY(-2px); box-shadow:0 8px 22px #142f401a; }
.primary-button svg,.submit-button svg,.inverse-button svg,.header-cta svg,.text-button svg { transition:transform .2s; }
.primary-button:hover svg,.submit-button:hover svg,.inverse-button:hover svg,.header-cta:hover svg,.text-button:hover svg { transform:translateX(3px); }
.menu-toggle { display:none; position:relative; width:44px; height:44px; padding:0; border:1px solid #d7dedf; border-radius:8px; background:#fff; color:var(--ink); touch-action:manipulation; }
.menu-toggle span { position:absolute; left:11px; width:20px; height:2px; border-radius:2px; background:currentColor; transition:transform .2s,top .2s; }
.menu-toggle span:first-child { top:16px; }.menu-toggle span:last-child { top:24px; }.menu-toggle.open span { top:20px; }.menu-toggle.open span:first-child { transform:rotate(45deg); }.menu-toggle.open span:last-child { transform:rotate(-45deg); }

/* Ambition, editorial imagery and contact share the opening composition. */
.hero { background:linear-gradient(115deg,#f8f5ef,#f2f2ed); border-bottom:1px solid #e0e3dc; }
.hero-shell { display:grid; grid-template-columns:minmax(0,1.13fr) minmax(420px,.87fr); gap:clamp(38px,5.2vw,78px); align-items:start; padding-block:48px 62px; }
.hero-copy { min-width:0; padding-top:6px; }
.hero h1 { margin:20px 0 22px; font-family:var(--serif); font-size:clamp(63px,5.8vw,86px); font-weight:400; line-height:.91; letter-spacing:-.018em; }
.hero h1 em { color:#97713b; font-weight:400; }
.hero-copy>p { max-width:580px; margin:0; color:#435965; font-size:16px; line-height:1.7; }.hero-copy>p strong { color:#183444; font-weight:600; }
.hero-copy>p.hero-invitation { margin-top:9px; color:#314957; font-size:15px; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:24px; }
.text-button { display:inline-flex; align-items:center; gap:11px; min-height:44px; color:#384e59; font-size:15px; font-weight:600; }.text-button svg { width:17px; height:17px; }
.hero-editorial { position:relative; overflow:hidden; height:190px; margin:29px 0 0; border-radius:13px; background:#dcded5; }
.hero-editorial img { width:100%; height:100%; object-fit:cover; object-position:50% 65%; }
.hero-editorial::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#102632b3,transparent 74%); }
.hero-editorial figcaption { position:absolute; z-index:1; inset:0; display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding:21px 24px; color:#fff; }
.hero-editorial figcaption span { font-size:14px; line-height:1.5; }.hero-editorial figcaption strong { font-family:var(--serif); font-size:26px; font-weight:400; }
.hero-editorial figcaption small { align-self:flex-start; font-size:14px; padding:5px 9px; border:1px solid #ffffff70; border-radius:4px; background:#19364570; }
.lead-card { position:relative; min-width:0; padding:28px 28px 22px; border:1px solid #d7dedc; border-radius:18px; background:#fff; box-shadow:0 16px 60px #1732430b; scroll-margin-top:108px; }
.lead-card::before { content:""; position:absolute; top:-1px; left:28px; width:52px; height:3px; background:#b99152; }
.lead-card-top { display:flex; align-items:center; gap:12px; }.lead-icon { display:grid; place-items:center; width:42px; height:42px; color:#94713d; border:1px solid #e7dfd0; border-radius:11px; background:#faf6ee; }
.lead-card-top>div { display:grid; gap:3px; }.lead-card-top small { color:#2c4755; font-size:12px; font-weight:650; letter-spacing:.06em; text-transform:uppercase; }.lead-card-top>div span { color:#677a83; font-size:12px; }
.lead-card-index { margin-left:auto; color:#bfa577; font-family:var(--serif); font-size:34px; line-height:1; }
.lead-card-heading { margin:20px 0 16px; }.lead-card h2 { margin:0 0 12px; font-family:var(--serif); font-size:41px; font-weight:400; line-height:1; letter-spacing:-.015em; }
.lead-card-heading p { margin:0; color:#506773; font-size:15px; line-height:1.65; }
.appointment-preview { display:flex; align-items:center; gap:11px; margin-bottom:19px; padding:11px 13px; border:1px solid #e2e7e7; border-radius:8px; color:#4d6672; background:#f5f8f8; font-size:12px; line-height:1.6; }
.appointment-preview svg { width:19px; height:19px; color:#647e89; }.appointment-preview strong { color:#2c4654; font-weight:600; }
.lead-form { display:grid; gap:13px; }.form-grid { display:grid; gap:12px; }.form-grid.two,.phone-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.lead-form label { display:grid; min-width:0; gap:6px; color:#3a515e; font-size:14px; font-weight:550; line-height:1.4; }
input,select { min-width:0; width:100%; min-height:46px; padding:9px 11px; border:1px solid #ced8da; border-radius:6px; outline:none; color:#203c4b; background:#fff; font-size:15px; transition:border-color .2s,box-shadow .2s; }
select { text-overflow:ellipsis; }input:focus,select:focus { border-color:#9e7c49; box-shadow:0 0 0 3px #b9915221; }
.field-hint { margin-top:-8px; color:#617781; font-size:12px; line-height:1.4; }
.lead-form label.consent-row { display:grid; grid-template-columns:16px 1fr; gap:8px; margin-block:0 1px; color:#536a76; font-size:12px; font-weight:400; line-height:1.6; }
.consent-row input { width:16px; height:16px; min-height:16px; padding:0; margin:2px 0 0; accent-color:var(--navy); }.consent-row a,.lead-risk a { text-decoration:underline; text-underline-offset:2px; }
.submit-button { width:100%; justify-content:space-between; font-size:15px; padding-inline:18px; }.submit-button:disabled { opacity:.65; cursor:wait; }
.form-status { display:none; border-radius:6px; padding:11px; font-size:14px; }.form-status.error { display:block; color:#9d2e28; background:#fff0ed; }.form-status.success { display:block; color:#225c4b; background:#edf7f2; }
.lead-reassurance { display:flex; justify-content:center; flex-wrap:wrap; gap:7px 16px; margin-top:11px; color:#5a6d75; font-size:12px; }.lead-reassurance span { display:inline-flex; align-items:center; gap:4px; }.lead-reassurance svg { width:12px; height:12px; color:#6b7d72; }
.lead-risk { margin:13px 0 0; padding-top:12px; border-top:1px solid #e3e7e5; color:#64747b; font-size:12px; line-height:1.5; }
.lead-success { display:grid; justify-items:center; align-content:center; min-height:300px; padding:25px 8px; text-align:center; }
.success-mark { display:grid; place-items:center; width:55px; height:55px; margin-bottom:18px; border:1px solid #c9ddd5; border-radius:50%; color:#315c4c; background:#edf4ef; }
.lead-success h3 { margin:15px 0 12px; font-family:var(--serif); font-weight:400; font-size:43px; line-height:1; }.lead-success p { color:#536c79; font-size:15px; line-height:1.65; }
.lead-success .success-next { margin-top:12px; color:#6d7d84; font-size:12px; }.lead-success .success-client-link { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; border-bottom:1px solid #b5996d; color:#7b5c31; font-size:15px; font-weight:600; }

/* The illustrative workflow supports the prospect's benefits. */
.intelligence-section { padding-block:90px; background:#fff; }
.intelligence-layout { display:grid; grid-template-columns:1fr 1fr; gap:clamp(42px,7vw,108px); align-items:center; }
.intelligence-copy h2,.section-heading h2,.approach h2,.faq-heading h2 { margin:20px 0 23px; font-family:var(--serif); font-size:clamp(47px,4.5vw,66px); font-weight:400; line-height:.99; letter-spacing:-.018em; }
.intelligence-copy h2 em,.section-heading h2 em,.approach h2 em { color:#95713c; font-weight:400; }
.intelligence-copy>p { margin:0; color:#536874; font-size:15px; line-height:1.75; }
.intelligence-benefits { display:grid; gap:22px; margin-block:29px 24px; }.intelligence-benefits article { display:grid; grid-template-columns:40px 1fr; gap:15px; }
.intelligence-benefits article>span { display:grid; place-items:center; width:38px; height:38px; border:1px solid #e5dccb; border-radius:10px; color:#9b783e; background:#fcf8f1; }.intelligence-benefits svg { width:19px; height:19px; }
.intelligence-benefits h3 { margin:1px 0 6px; color:#2a4554; font-family:var(--sans); font-size:15px; font-weight:600; line-height:1.45; }.intelligence-benefits p { margin:0; color:#576e79; font-size:15px; line-height:1.7; }
.method-link { display:inline-flex; align-items:center; gap:10px; min-height:43px; padding-block:5px; border-bottom:1px solid #b39565; color:#7e6037; font-size:15px; font-weight:550; }.method-link svg { width:17px; height:17px; }
.analysis-example { min-width:0; padding:28px; border:1px solid #274957; border-radius:18px; color:#fff; background:#163746; box-shadow:0 22px 44px #17344014; }
.analysis-top { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:17px; border-bottom:1px solid #ffffff26; }
.analysis-wordmark { font-size:21px; font-weight:650; letter-spacing:-.045em; }.analysis-wordmark em { font-family:var(--serif); font-size:25px; color:#e1c694; font-weight:400; }.example-label { color:#d2dcde; font-size:12px; letter-spacing:.03em; }
.analysis-example>h3 { margin:20px 0; font-family:var(--serif); font-size:36px; font-weight:400; line-height:1.03; }
.analysis-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; padding:4px; border:1px solid #ffffff2b; border-radius:8px; background:#102c3980; }
.analysis-tabs button { min-height:40px; padding:7px 4px; border:0; border-radius:5px; color:#d4e1e4; background:transparent; font-size:12px; font-weight:550; }.analysis-tabs button:hover { background:#ffffff12; }.analysis-tabs button[aria-selected="true"] { color:#243d48; background:#efe5d2; }
#analysisPanel { margin-top:20px; }.analysis-question { min-height:38px; margin:0 0 9px; color:#e1e8e9; font-size:15px; font-weight:550; line-height:1.5; }
.analysis-factors { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:19px; }.analysis-factors span { padding:3px 9px; border:1px solid #ffffff26; border-radius:4px; color:#c5d4d9; font-size:12px; }
.analysis-step { display:grid; grid-template-columns:34px 1fr; gap:12px; padding:17px; border:1px solid #ffffff26; border-radius:10px; background:#ffffff06; }
.analysis-step-icon { display:grid; place-items:center; width:33px; height:33px; border:1px solid #8aa1aa73; border-radius:9px; color:#c5d9e0; }.analysis-step-icon svg { width:17px; height:17px; }
.analysis-step small { display:block; color:#b3c9d2; font-size:11px; font-weight:550; letter-spacing:.1em; }.analysis-step h4 { margin:4px 0 6px; font-size:15px; font-weight:550; line-height:1.3; }.analysis-step p { min-height:57px; margin:0; color:#c5d3d9; font-size:14px; line-height:1.6; }
.analysis-step.human { border-color:#cfb17b69; background:#dac0910c; }.analysis-step.human small,.analysis-step.human .analysis-step-icon { color:#e1c493; }.analysis-step.human .analysis-step-icon { border-color:#cfb17b69; }
.analysis-connector { display:flex; align-items:center; justify-content:center; height:22px; color:#c6b494; }.analysis-connector svg { width:15px; height:15px; transform:rotate(90deg); }
.example-disclaimer { margin:18px 0 0; color:#b5c6cc; font-size:12px; line-height:1.6; }

.markets { padding-block:85px; }.section-heading { display:grid; grid-template-columns:1.1fr .8fr; align-items:end; gap:90px; margin-bottom:37px; }.section-heading h2 { margin-bottom:0; }.section-heading>p { max-width:400px; margin:0 0 3px; color:#526976; font-size:15px; line-height:1.75; }
.market-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.market-card { display:flex; flex-direction:column; overflow:hidden; border:1px solid #dadfdc; border-radius:13px; background:#fff; transition:transform .25s,box-shadow .25s; }.market-card:hover { transform:translateY(-5px); box-shadow:0 16px 35px #162e3c0d; }.market-card>img { width:100%; height:225px; object-fit:cover; }
.market-card-body { display:flex; flex:1; flex-direction:column; padding:25px; }.card-index { color:#947143; font-size:12px; font-weight:550; letter-spacing:.08em; }
.market-card h3 { margin:13px 0; font-family:var(--serif); font-size:35px; font-weight:400; line-height:1.03; letter-spacing:-.012em; }.market-card p { flex:1; margin:0 0 22px; color:#566c78; font-size:15px; line-height:1.75; }
.market-card :is(button,.market-link) { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:44px; padding:12px 0 0; border:0; border-top:1px solid #e0e5e1; color:#344e5c; background:transparent; font-size:14px; font-weight:600; text-align:left; }
.market-card :is(button,.market-link) svg { width:28px; height:28px; padding:5px; border:1px solid #d5dfdf; border-radius:50%; color:#92703f; transition:transform .2s; }.market-card :is(button,.market-link):hover svg { transform:translateX(3px); }

.approach { display:grid; grid-template-columns:.9fr 1.1fr; width:min(calc(100% - 80px),var(--max)); margin:0 auto 85px; overflow:hidden; border:1px solid #daded8; border-radius:18px; background:#fff; }
.approach-media { position:relative; min-height:500px; overflow:hidden; }.approach-media>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:70% center; }.approach-media::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#0f2a3ce0,transparent 66%); }
.media-caption { position:absolute; z-index:1; left:33px; right:33px; bottom:30px; display:grid; gap:18px; padding-top:19px; border-top:1px solid #ffffff6b; color:#fff; }.media-caption span { font-family:var(--serif); font-size:38px; font-weight:400; line-height:1.05; }.media-caption small { color:#d4dee3; font-size:12px; }
.approach-content { padding:47px 45px; }.approach h2 { font-size:clamp(44px,4vw,57px); }.approach-intro { margin:0 0 26px; color:#536b78; font-size:15px; line-height:1.75; }
.appointment-agenda-title { margin:0 0 13px; color:#917040; font-size:12px; font-weight:600; letter-spacing:.02em; }.approach-list { border-top:1px solid #dce2df; }
.approach-list article { display:grid; grid-template-columns:26px 1fr; gap:12px; padding-block:16px; border-bottom:1px solid #dce2df; }.approach-list article>span { color:#b59663; font-family:var(--serif); font-size:24px; line-height:1.1; }
.approach-list h3 { margin:0 0 5px; font-family:var(--sans); font-size:15px; font-weight:600; }.approach-list p { margin:0; color:#576f7b; font-size:14px; line-height:1.65; }.inverse-button { margin-top:23px; }.appointment-next { margin:11px 0 0; color:#657781; font-size:12px; line-height:1.6; }

.faq { padding-block:70px; background:#ebece6; border-top:1px solid #dee2d9; }.faq-shell { display:grid; grid-template-columns:.8fr 1.2fr; gap:95px; }.faq-heading h2 { font-size:55px; margin-block:17px 22px; }.faq-heading p { max-width:330px; margin:0; color:#526977; font-size:15px; line-height:1.7; }
.faq-conversion-button { display:inline-flex; align-items:center; gap:12px; min-height:44px; margin-top:18px; border-bottom:1px solid #ab8d5f; color:#795e36; font-size:14px; font-weight:600; }.faq-conversion-button svg { width:16px; height:16px; }
.faq-list { border-top:1px solid #cbd4d1; }.faq-list details { border-bottom:1px solid #cbd4d1; }.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:22px; padding-block:22px; color:#294552; font-size:15px; font-weight:550; list-style:none; cursor:pointer; }.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { flex:0 0 auto; color:#8d703f; font-size:21px; font-weight:400; line-height:1; transition:transform .2s; }.faq-list details[open] summary span { transform:rotate(45deg); }.faq-list p { margin:-4px 30px 22px 0; color:#506975; font-size:15px; line-height:1.75; }.faq-list p a { text-decoration:underline; text-underline-offset:3px; }
.site-footer { padding:54px max(40px,calc((100vw - var(--max))/2)) 23px; color:#d3dfe4; background:#142e3e; }.footer-top { display:grid; grid-template-columns:1.5fr repeat(3,1fr); gap:40px; padding-bottom:36px; }
.brand.inverse { color:#fff; }.brand.inverse>span:last-child>span { color:#d4b47f; }.footer-brand p { margin:19px 0 0; color:#b6c8d0; font-size:15px; line-height:1.75; }.footer-top>div:not(.footer-brand) { display:grid; align-content:start; gap:12px; }
.footer-top strong { margin-bottom:6px; color:#d8bd91; font-size:12px; font-weight:550; letter-spacing:.09em; text-transform:uppercase; }.footer-top a:not(.brand) { width:fit-content; color:#c8d6dc; font-size:14px; }.footer-top a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.risk-note { padding-block:21px; border-block:1px solid #ffffff26; color:#b8cbd4; font-size:12px; line-height:1.75; }.risk-note strong { color:#e8eff2; font-weight:550; }.risk-note a { text-decoration:underline; text-underline-offset:3px; }.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:21px; color:#a5b9c3; font-size:12px; }
.mobile-conversion { display:none; }.toast { position:fixed; z-index:120; left:50%; bottom:25px; max-width:calc(100% - 30px); padding:12px 18px; border:1px solid #ffffff30; border-radius:8px; color:#fff; background:#173c4c; box-shadow:0 8px 25px #132b4026; font-size:15px; text-align:center; opacity:0; pointer-events:none; transform:translate(-50%,15px); transition:transform .2s,opacity .2s; }.toast.show { opacity:1; transform:translate(-50%,0); }
.reveal.visible { animation:gentleReveal .55s ease both; }@keyframes gentleReveal { from { opacity:.65; transform:translateY(12px); } to { opacity:1; transform:none; } }

@media(max-width:1200px) {
  .site-header { gap:30px; }.main-nav { gap:20px; }.header-actions { gap:15px; }.client-link svg { display:none; }
  .hero-shell { gap:40px; grid-template-columns:minmax(0,1fr) minmax(400px,.92fr); }.hero h1 { font-size:70px; }.hero-actions { gap:16px; }.lead-card { padding-inline:24px; }.lead-card h2 { font-size:37px; }
  .intelligence-layout { gap:45px; }.analysis-example { padding:23px; }.section-heading { gap:55px; }.approach-content { padding:38px 32px; }.approach h2 { font-size:47px; }
}
@media(max-width:1050px) {
  .site-header { height:78px; padding-inline:28px; justify-content:space-between; }.menu-toggle { display:block; z-index:3; }.site-header>.brand { position:relative; z-index:3; }
  .navigation-panel { position:absolute; z-index:2; top:calc(100% + 9px); left:20px; right:20px; display:flex; flex-direction:column; align-items:stretch; gap:14px; max-height:calc(100svh - 110px); overflow-y:auto; padding:17px; border:1px solid #d9dfdc; border-radius:13px; background:#fff; box-shadow:0 20px 55px #142e3e24; visibility:hidden; opacity:0; pointer-events:none; transform:translateY(-8px); transition:opacity .2s,transform .2s,visibility .2s; }
  .site-header.menu-active .navigation-panel { visibility:visible; opacity:1; pointer-events:auto; transform:none; }.site-header.menu-active::after { content:""; position:fixed; z-index:1; inset:78px 0 0; background:#132a3b45; pointer-events:none; }
  .main-nav { display:grid; gap:0; }.main-nav a { min-height:47px; padding:12px 10px; font-size:15px; }.main-nav a::after { display:none; }.header-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-top:14px; border-top:1px solid #e1e6e3; }.client-link { justify-content:center; min-height:46px; border:1px solid #d3dedd; border-radius:7px; font-size:15px; }.client-link svg { display:block; }.header-cta { min-height:46px; font-size:15px; }
  .hero-shell { width:min(calc(100% - 64px),780px); grid-template-columns:1fr; gap:35px; padding-block:38px 50px; }.hero-copy { padding-top:0; }.hero h1 { font-size:84px; }.hero-copy>p { max-width:680px; font-size:17px; }.hero-copy>p.hero-invitation { font-size:15px; }.hero-editorial { height:225px; }.hero-editorial img { object-position:50% 62%; }
  .lead-card { width:100%; padding:30px; }.lead-card h2 { font-size:44px; }.lead-card-heading p { max-width:580px; font-size:15px; }.lead-card-top small,.lead-card-top>div span,.appointment-preview { font-size:14px; }.lead-form label { font-size:15px; }input,select { min-height:49px; font-size:16px; }.lead-form label.consent-row { font-size:14px; }.field-hint { font-size:12px; }.submit-button { justify-content:center; font-size:15px; }.lead-reassurance,.lead-risk { font-size:12px; }
  .intelligence-layout { grid-template-columns:1fr; width:min(calc(100% - 64px),780px); gap:35px; }.intelligence-copy h2 { font-size:64px; }.intelligence-copy>p { max-width:640px; }.intelligence-benefits h3 { font-size:16px; }.intelligence-benefits p { font-size:15px; }.analysis-example { padding:28px; }.analysis-step p,.analysis-question { min-height:0; }.analysis-step p { font-size:15px; }.analysis-tabs button { font-size:15px; }.analysis-example>h3 { font-size:43px; }
  .market-cards { gap:15px; }.market-card-body { padding:21px 18px; }.market-card h3 { font-size:30px; }.market-card img { height:185px; }.approach { grid-template-columns:1fr; }.approach-media { min-height:380px; }.approach-media>img { object-position:center 42%; }.approach-content { padding:43px; }.approach h2 { font-size:60px; }
  .faq-shell { gap:40px; }.footer-top { grid-template-columns:repeat(3,1fr); gap:34px; }.footer-brand { grid-column:1/-1; }.footer-brand p { max-width:none; }
}
@media(max-width:720px) {
  html { scroll-padding-top:90px; }.section-shell,.hero-shell { width:calc(100% - 36px); }.site-header { height:70px; padding-inline:18px; }.site-header.menu-active::after { top:70px; }.brand { font-size:25px; }.brand-mark { transform:scale(.9); transform-origin:left; margin-right:-3px; }
  .navigation-panel { left:12px; right:12px; top:calc(100% + 7px); max-height:calc(100svh - 94px); }.header-actions { grid-template-columns:1fr; }.main-nav a { min-height:44px; }.client-link,.header-cta { min-height:47px; }.eyebrow { font-size:12px; gap:9px; letter-spacing:.1em; }.eyebrow>span { width:20px; }
  .hero-shell { padding-block:28px 40px; gap:26px; }.hero h1 { font-size:clamp(57px,13.6vw,78px); line-height:.94; margin-block:19px 22px; }.hero-copy>p { font-size:15px; line-height:1.7; }.hero-copy>p.hero-invitation { font-size:15px; margin-top:10px; }.hero-actions { gap:15px; margin-top:22px; }.primary-button { min-height:51px; padding-inline:16px; font-size:15px; }.text-button { font-size:14px; gap:8px; }
  .hero-editorial { height:170px; margin-top:24px; border-radius:10px; }.hero-editorial figcaption { padding:16px; }.hero-editorial figcaption strong { font-size:24px; }.hero-editorial figcaption small { font-size:12px; }
  .lead-card { padding:24px 19px 20px; border-radius:14px; scroll-margin-top:86px; }.lead-card h2 { font-size:39px; }.lead-card-heading p { font-size:15px; }.lead-card-top small,.lead-card-top>div span { font-size:12px; }.lead-card-heading { margin-top:19px; }.lead-icon { width:38px; height:38px; }.lead-card-index { font-size:30px; }.appointment-preview { margin-bottom:18px; font-size:12px; }
  .form-grid.two { grid-template-columns:1fr; }.phone-grid { grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); gap:9px; }.lead-form { gap:14px; }.lead-form label { font-size:14px; }.lead-form label.consent-row { font-size:12px; }.submit-button { justify-content:space-between; padding-inline:14px; font-size:15px; }.lead-reassurance { font-size:12px; }.lead-risk { font-size:12px; }.lead-success h3 { font-size:40px; }
  .intelligence-section { padding-block:55px; }.intelligence-layout { gap:32px; }.intelligence-copy h2,.section-heading h2 { font-size:clamp(44px,10vw,57px); margin-block:17px 20px; }.intelligence-copy>p { font-size:15px; }.intelligence-benefits { margin-block:25px 17px; gap:20px; }.intelligence-benefits article { grid-template-columns:34px 1fr; gap:12px; }.intelligence-benefits article>span { width:33px; height:33px; border-radius:8px; }.intelligence-benefits h3 { font-size:15px; }.intelligence-benefits p { font-size:15px; }.method-link { font-size:14px; }
  .analysis-example { padding:23px 17px; border-radius:13px; }.analysis-wordmark { font-size:21px; }.analysis-example>h3 { font-size:35px; }.analysis-tabs button { font-size:12px; }.analysis-step { padding:14px 12px; grid-template-columns:29px 1fr; gap:9px; }.analysis-step-icon { width:28px; height:28px; border-radius:7px; }.analysis-step p { font-size:14px; line-height:1.7; }.analysis-step h4 { font-size:15px; }.example-disclaimer { font-size:12px; }
  .markets { padding-block:55px; }.section-heading { grid-template-columns:1fr; gap:0; margin-bottom:25px; }.section-heading>p { font-size:15px; max-width:none; }.market-cards { grid-template-columns:1fr; gap:20px; }.market-card>img { height:210px; }.market-card-body { padding:22px; }.market-card h3 { font-size:36px; }.market-card p { font-size:15px; }.market-card :is(button,.market-link) { font-size:15px; }
  .approach { width:calc(100% - 36px); margin-bottom:55px; border-radius:14px; }.approach-media { min-height:300px; }.approach-media>img { object-position:50% center; }.media-caption { left:23px; right:23px; bottom:23px; gap:13px; }.media-caption span { font-size:32px; }.approach-content { padding:30px 22px; }.approach h2 { font-size:45px; margin-block:18px 21px; }.approach-intro { font-size:15px; }.appointment-agenda-title { font-size:12px; }.approach-list h3 { font-size:15px; }.approach-list p { font-size:14px; }.inverse-button { width:100%; min-height:52px; padding-inline:13px; font-size:14px; }.appointment-next { font-size:12px; }
  .faq { padding-block:50px; }.faq-shell { grid-template-columns:1fr; gap:27px; }.faq-heading h2 { font-size:48px; }.faq-heading p { max-width:none; }.faq-conversion-button { font-size:14px; }.faq-list summary { font-size:15px; }.faq-list p { margin-right:10px; font-size:15px; }.site-footer { padding:45px 22px 98px; }.footer-top { grid-template-columns:1fr 1fr; gap:29px; }.footer-top>div:last-child { grid-column:1/-1; }.footer-brand p { font-size:15px; }.footer-top a:not(.brand) { font-size:14px; }.risk-note { font-size:12px; }.footer-bottom { flex-direction:column; gap:8px; }
  .mobile-conversion { position:fixed; z-index:50; left:12px; right:12px; bottom:max(10px,env(safe-area-inset-bottom)); display:grid; grid-template-columns:26px 1fr 20px; align-items:center; gap:12px; min-height:60px; padding:10px 17px; border:1px solid #4c6b7a; border-radius:10px; color:#fff; background:#173849f5; box-shadow:0 9px 27px #112f4052; transition:opacity .2s,transform .2s; }
  .mobile-conversion>svg:first-child { color:#e0c495; }.mobile-conversion span { display:grid; gap:3px; color:#c6d6de; font-size:12px; line-height:1.3; }.mobile-conversion strong { color:#fff; font-size:15px; font-weight:600; }body.lead-visible .mobile-conversion { opacity:0; pointer-events:none; transform:translateY(90px); }body.menu-open .mobile-conversion { display:none; }.toast { bottom:86px; width:max-content; }
}
@media(max-width:360px) { .hero-actions { align-items:stretch; flex-direction:column; gap:8px; }.text-button { justify-content:center; }.phone-grid { grid-template-columns:1fr; }.hero-editorial figcaption small { display:none; }.lead-card { padding-inline:16px; }.lead-card h2 { font-size:36px; }.hero h1 { font-size:55px; }.example-label { font-size:11px; } }
/* Public pages remain real HTML documents, with a shared visual language. */
.main-nav a[aria-current="page"] { color:var(--ink); font-weight:700; }
.main-nav a[aria-current="page"]::after { transform:scaleX(1); }
.page-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:13px; padding-block:25px; color:#536874; font-size:13px; }
.page-breadcrumb a { text-decoration:underline; text-underline-offset:4px; }
.page-heading { margin:20px 0 23px; font-family:var(--serif); font-size:clamp(47px,4.5vw,66px); font-weight:400; line-height:.99; letter-spacing:-.018em; }
.page-heading em { color:#95713c; font-weight:400; }
.standalone-page .intelligence-section { padding-block:45px 65px; }
.standalone-page .markets { padding-block:25px 75px; }
.standalone-page .faq { padding-block:45px 65px; border-top:0; }
.standalone-page .hero-shell { padding-top:24px; }
.page-next { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; padding-block:35px 55px; }
.page-next strong { font-family:var(--serif); font-size:35px; font-weight:400; }
.page-next p { margin:7px 0 0; color:#536874; font-size:15px; }
.page-directory { padding-block:55px 65px; }
.page-directory h2 { margin:18px 0 30px; font-family:var(--serif); font-size:clamp(38px,4vw,53px); line-height:1.05; font-weight:400; }
.page-directory h2 em { color:var(--gold); }
.directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.directory-grid>a { display:flex; flex-direction:column; padding:27px; border:1px solid var(--line); border-radius:13px; background:#fff; transition:border-color .2s,transform .2s; }
.directory-grid>a:hover { border-color:#a88a5c; transform:translateY(-3px); }
.directory-grid>a>span { color:#806039; font-size:12px; letter-spacing:.06em; }
.directory-grid h3 { margin:19px 0 12px; font-family:var(--serif); font-size:32px; font-weight:400; line-height:1.05; }
.directory-grid p { flex:1; margin:0 0 25px; color:#536874; font-size:15px; }
.directory-grid strong { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:16px; border-top:1px solid var(--line); font-size:14px; font-weight:600; }
@media(max-width:1200px) { .main-nav { gap:16px; }.navigation-panel { gap:17px; }.site-header { gap:23px; } }
@media(max-width:720px) {
  .page-breadcrumb { padding-block:19px; font-size:12px; }
  .page-heading { font-size:clamp(43px,10vw,57px); margin-block:16px 20px; }
  .standalone-page .intelligence-section,.standalone-page .faq { padding-block:25px 45px; }
  .standalone-page .markets { padding-block:15px 45px; }
  .page-directory { padding-block:40px; }.directory-grid { grid-template-columns:1fr; gap:16px; }.directory-grid>a { padding:23px; }
  .page-next { align-items:stretch; flex-direction:column; padding-block:25px 40px; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation:none!important; } }
