:root{
  --navy:#153448;--deep:#102d3e;--deepest:#0d2533;--ink:#18323f;--muted:#60717a;
  --paper:#fbfaf6;--cream:#f4f3ec;--white:#fff;--line:#d9ded9;--teal:#3b7778;
  --mint:#e3f0e8;--mint-strong:#c1ded5;--pale:#eaf1ee;
  --serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --sans:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}
::selection{background:#b5d7c9;color:var(--navy)}
:focus-visible{outline:3px solid #329d9f;outline-offset:4px}
.page-width{width:min(100% - 96px,1280px);margin-inline:auto}
.skip-link{position:absolute;z-index:50;left:14px;top:-100px;padding:12px 16px;background:var(--white);color:var(--navy)}.skip-link:focus{top:14px}
.site-header{height:91px;border-bottom:1px solid #e3e7e2;background:var(--paper);position:sticky;top:0;z-index:20}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;min-width:230px;color:var(--navy)}
.brand-icon{width:45px;height:45px;flex:none}.brand-wordmark{display:flex;flex-direction:column;line-height:1}
.brand-wordmark strong{font-family:Georgia,serif;font-size:26px;letter-spacing:.02em;font-weight:600}
.brand-wordmark>span{font-size:10px;letter-spacing:.34em;margin-top:6px;font-weight:700}
.primary-nav{display:flex;align-items:center;gap:39px;font-size:13px;font-weight:600;letter-spacing:.01em}
.primary-nav>a:not(.nav-contact){transition:color .2s}.primary-nav>a:hover{color:var(--teal)}
.primary-nav .nav-contact{background:var(--navy);padding:13px 20px;color:white;display:inline-flex;align-items:center;gap:23px;transition:background .2s,transform .2s}
.primary-nav .nav-contact:hover{background:#245568;transform:translateY(-2px)}.nav-contact span{font-size:17px;font-weight:400}
.menu-toggle{display:none;border:0;background:transparent;padding:12px;cursor:pointer}.menu-toggle span{display:block;width:25px;height:2px;background:var(--navy);margin:5px 0;transition:transform .2s}
.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.155em;font-weight:700;line-height:1.5;margin:0;color:inherit}
.eyebrow-rule{display:inline-block;vertical-align:middle;height:1px;width:27px;margin-right:12px;background:var(--teal)}
.eyebrow-accent{color:#315f5c}
.hero{background:var(--paper);position:relative;overflow:hidden}
.hero-inner{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);gap:42px;align-items:center;padding-top:82px;padding-bottom:76px}
.hero-copy{position:relative;z-index:1;padding-top:14px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}h1 em,h2 em,h3 em{font-family:var(--serif);font-weight:400}
.hero h1{font-size:clamp(59px,5.6vw,88px);line-height:1.07;letter-spacing:-.058em;margin:35px -90px 28px 0;font-weight:600;color:var(--deep);max-width:900px}
.hero h1 em{color:#3d7f7e;font-size:1.06em;line-height:.97;white-space:nowrap;letter-spacing:-.03em}
.hero-lede{max-width:555px;font-size:18px;color:#51636b;line-height:1.8;margin-bottom:28px}
.hero-actions{display:flex;gap:30px;align-items:center;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:55px;padding:14px 23px;font-size:13px;font-weight:700;letter-spacing:.005em;transition:background .2s,color .2s,transform .2s}
.button:hover{transform:translateY(-3px)}.button span{font-size:19px;font-weight:400}.button-primary{background:var(--navy);color:white}.button-primary:hover{background:#2a596b}
.text-link{display:inline-flex;gap:17px;align-items:center;border-bottom:1px solid var(--ink);padding:4px 0 7px;font-size:13px;font-weight:700;transition:color .2s}
.text-link:hover{color:var(--teal)}.text-link span{font-size:18px;font-weight:400}
.hero-sidenote{font-size:14px;line-height:1.7;color:#52666b;margin-top:70px;display:flex;align-items:center;gap:11px}.tiny-star{color:#458786;font-size:19px}
.hero-visual{height:580px;background:var(--navy);color:white;display:flex;flex-direction:column;padding:26px 27px 24px;box-shadow:18px 20px 0 #e3ebe5;overflow:hidden}
.visual-topline{display:flex;justify-content:space-between;gap:10px;color:#b1cfcb;font-size:12px;letter-spacing:.1em;font-weight:700;line-height:1.5;white-space:normal}
.systems-art-mobile{display:none}
.systems-art{display:block;width:100%;height:100%;flex:1;min-height:0;max-width:480px;align-self:center;margin-block:10px 8px;overflow:visible}
.visual-caption{border-top:1px solid #477080;padding-top:18px;display:flex;align-items:center;gap:12px;color:#d4e8df;font-family:var(--serif);font-size:25px;font-style:italic}
.visual-symbol{font-family:var(--sans);font-size:20px;font-style:normal;color:#95cdbb}
.hero-bottom{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#52666b;padding-bottom:25px}
.hero-bottom a{color:#52666b}.hero-bottom a span{margin-left:13px;font-size:16px}
.credibility{background:#eaf0ea;border-top:1px solid #dce4dd;border-bottom:1px solid #dce4dd}
.credibility-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.credibility-grid p{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:17px;padding:33px 36px 35px;margin:0;border-right:1px solid #d0ded4;align-content:start}
.credibility-grid p:first-child{padding-left:0}.credibility-grid p:last-child{border:0}
.line-icon{display:block;width:24px;height:24px;flex:none}
.credibility-icon{grid-row:1/3;display:flex;align-items:center;justify-content:center;width:38px;height:38px;color:#397d7c;background:#dbe9e1;border-radius:50%}
.credibility-grid strong{display:block;font-size:15px;font-weight:700;line-height:1.5}.credibility-grid p>span:last-child{color:#4d6562;font-size:14px;line-height:1.7;margin-top:6px}
.section-pad{padding-block:132px 137px}
.section-heading{margin-bottom:58px}.split-heading{display:grid;grid-template-columns:1fr 350px;align-items:end;gap:65px}
.section-heading h2,.about h2,.audience-band h2{font-size:clamp(46px,4.5vw,68px);line-height:1.07;letter-spacing:-.046em;color:var(--deep);margin:24px 0 0;font-weight:600}
.section-heading h2 em,.about h2 em,.audience-band h2 em{color:#3c8582;white-space:nowrap}
.section-intro{font-size:16px;line-height:1.83;color:#52666b;margin-bottom:7px}
.featured-service{display:grid;grid-template-columns:1.09fr .91fr;background:var(--mint);min-height:540px;overflow:hidden}
.featured-body{padding:52px 58px 58px}.service-index,.service-card-top{display:flex;justify-content:space-between;align-items:center;color:#3f716d;letter-spacing:.1em;font-size:12px;font-weight:700}
.featured-service h3{font-size:clamp(48px,4.7vw,76px);line-height:1.01;letter-spacing:-.055em;font-weight:600;color:var(--deep);margin:57px 0 25px}.featured-service h3 em{color:#3a8480;font-size:1.1em;letter-spacing:-.035em}
.featured-body>p{max-width:545px;color:#536b70;line-height:1.88;margin-bottom:28px}
.service-chips{display:flex;gap:9px;flex-wrap:wrap;max-width:570px}.service-chips span{border:1px solid #bbd3c9;background:#eff7f1;padding:8px 12px;font-size:13px;color:#396461;font-weight:600}
.featured-diagram{background:#d1e6dc;padding:45px 44px 27px;display:flex;flex-direction:column;justify-content:center}
.diagram-label{font-size:12px;letter-spacing:.12em;color:#4d6562;font-weight:700;text-align:center;margin-bottom:24px}
.diagram-tile{background:#fbfcf7;box-shadow:15px 17px 0 #b8d6c9;padding:27px 30px 26px;transform:rotate(-2.5deg);margin-right:18px}
.diagram-tile-top{display:flex;justify-content:space-between;color:#55726c;font-size:12px;letter-spacing:.08em;font-weight:700;border-bottom:1px solid #dbe7de;padding-bottom:18px;margin-bottom:25px}
.range-block{margin-top:22px}.range-block>span{font-size:14px;font-weight:700;color:#395d5c}
.range-track{height:18px;background:repeating-linear-gradient(to right,#e1eae4 0 1px,transparent 1px 25%);position:relative;margin-top:12px}
.range-fill{height:100%;width:56%;display:block;position:relative;background:#a2cbc0;border:1px solid #77aaa0;border-radius:2px}
.range-fill.one{margin-left:0}.range-fill.two{margin-left:22%;background:#76b3ac;border-color:#5d9e96}.range-fill.three{margin-left:44%;background:#438e8d;border-color:#327d7c}
.range-tick{position:absolute;left:50%;top:-5px;bottom:-5px;width:2px;background:#18495a;transform:translateX(-1px)}
.range-legend{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12px 8px;margin-top:24px;font-size:12px;font-weight:700;letter-spacing:0;color:#4d6562}.range-legend>span:first-child{grid-column:1;grid-row:1}.range-legend>span:last-child{grid-column:2;grid-row:1;text-align:right}
.range-key{display:flex;align-items:center;gap:5px;grid-column:1/-1;grid-row:2;justify-self:center}.range-key i{display:inline-block;height:12px;width:2px;background:#18495a}
.diagram-process{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:48px;color:#4d6562;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.04em}
.diagram-process span{font-size:19px;color:#84a6a1}.diagram-footnote{text-align:center;margin:18px 0 0;color:#4d6562;font-size:13px;line-height:1.6}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:18px}
.service-card{border:1px solid #dee4df;background:#fff;padding:30px 31px 31px;min-height:445px;display:flex;flex-direction:column}
.service-card-top{color:#4d6562}
.card-line-art{height:112px;position:relative;margin:17px 0 18px;overflow:hidden}
.organization-art svg{display:block;width:100%;height:100%;max-width:280px;margin-inline:auto}
.performance-art{display:flex;align-items:end;justify-content:center;gap:24px;padding-bottom:18px}.performance-art .line{width:48px;border-radius:5px 5px 0 0;background:#d9ece4;border:2px solid #96c7b8}.performance-art .l1{height:43px}.performance-art .l2{height:68px}.performance-art .l3{height:91px}.performance-art .dot{position:absolute;width:9px;height:9px;border-radius:50%;background:#4d9993}.performance-art .d1{left:calc(50% - 87px);bottom:61px}.performance-art .d2{left:calc(50% - 11px);bottom:86px}.performance-art .d3{left:calc(50% + 65px);bottom:109px}
.strategy-art .ring{width:83px;height:83px;border-radius:50%;position:absolute;border:2px solid #81b9b0;top:13px;background:#cce6da88}.strategy-art .ring.a{left:calc(50% - 78px)}.strategy-art .ring.b{left:calc(50% - 28px)}.strategy-art .ring.c{left:calc(50% - 53px);top:35px;border-color:#4b9592}
.service-card h3{font-weight:600;letter-spacing:-.035em;color:var(--navy);font-size:27px;line-height:1.2;margin:0 0 17px}
.service-card p{font-size:14px;line-height:1.8;color:#65747b;flex:1;margin-bottom:20px}.service-detail{font-size:13px;line-height:1.6;color:#3f716d;font-weight:700;letter-spacing:.02em;border-top:1px solid #e0e7e2;padding-top:18px}
.service-note{display:flex;align-items:start;gap:11px;color:#52666b;font-size:15px;margin:27px 0 0;line-height:1.7}.service-note span{color:#498582;font-size:19px;line-height:1.2}
.belief{background:var(--navy);color:#f6f8f1;padding:110px 0 115px;position:relative;overflow:hidden}
.belief .eyebrow{color:#acd5c8}
.belief-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:75px;align-items:end}
.belief h2{font-size:clamp(42px,4.7vw,70px);line-height:1.12;letter-spacing:-.046em;font-weight:500;margin:24px 0 0}
.belief h2 em{color:#a3d1c3;font-size:1.09em;letter-spacing:-.02em}
.belief-context{color:#c3d7d8;font-size:16px;line-height:1.9;margin:0 0 4px;max-width:460px}
.approach-process{border-top:1px solid #4b6b76;padding-top:48px;margin-top:60px}
.approach-process h2{font-size:clamp(35px,3.8vw,52px);margin:15px 0 38px}
.approach-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.approach-step{position:relative;min-width:0;padding-right:18px}
.approach-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border:1px solid #739d94;border-radius:50%;color:#c2e5d5;background:#204657}
.approach-icon .line-icon{width:28px;height:28px}
.approach-step:not(:last-child)::after{content:'';position:absolute;left:80px;right:-15px;top:31px;height:1px;background:#739d94}
.approach-step:not(:last-child)::before{content:'';position:absolute;right:-15px;top:28px;width:7px;height:7px;border-top:1px solid #9ac7b9;border-right:1px solid #9ac7b9;transform:rotate(45deg)}
.approach-steps h3{font-size:21px;line-height:1.3;letter-spacing:-.02em;font-weight:600;margin:23px 0 12px;max-width:260px}
.approach-steps p{font-size:14px;color:#b9d1d1;line-height:1.8;margin:0;max-width:300px}
.about-grid{display:grid;grid-template-columns: .85fr 1.15fr;gap:clamp(60px,8vw,145px);align-items:center}
.about-visual{max-width:480px}.about-frame{aspect-ratio:.86;min-height:480px;background:#d8e5df;border:1px solid #bdcfcb;display:flex;flex-direction:column;justify-content:space-between;padding:31px;position:relative;overflow:hidden}
.about-frame:before{content:'';position:absolute;width:125%;aspect-ratio:1;border:1px solid #b7d1c7;border-radius:50%;left:-20%;top:11%}.about-frame:after{content:'';position:absolute;width:75%;aspect-ratio:1;border:1px solid #b7d1c7;border-radius:50%;left:14%;top:31%}
.about-frame-kicker{font-size:12px;font-weight:700;letter-spacing:.1em;color:#456b65;z-index:1}.portrait-monogram{font-family:var(--serif);font-size:clamp(150px,17vw,270px);font-style:italic;line-height:1;letter-spacing:-.18em;text-align:center;color:#347371;position:relative;z-index:1;padding-right:20px}.portrait-monogram span{color:#91bbb1;margin-left:-16px}
.about-frame-bottom{font-family:var(--serif);font-size:26px;line-height:1.1;font-style:italic;color:#2d6566;z-index:1}

.about h2{margin:19px 0 36px}.about h2 em{display:block;margin-top:12px;font-size:.68em;line-height:1.2;white-space:normal;letter-spacing:-.015em}.about-lead{font-size:20px!important;color:var(--navy)!important;font-weight:600}
.about-copy>p:not(.eyebrow){color:#61727b;font-size:15px;line-height:1.9;margin-bottom:18px}
.experience-line{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 0;margin-top:26px}.experience-line>span{display:block;font-size:12px;font-weight:700;letter-spacing:.08em;color:#3f716d;margin-bottom:11px}.experience-line p{margin:0;font-size:14px;line-height:2;color:#5d7079;font-weight:600}.experience-line p span{color:#a6b4af;padding:0 3px}.about-link{margin-top:25px}
.audience-band{background:#e9f0e9;padding:68px 0}.audience-inner{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.audience-band h2{font-size:clamp(40px,4vw,59px);margin-top:14px}.audience-inner>p{max-width:570px;color:#4d6562;font-size:15px;line-height:1.9;margin:0}
.contact{background:#153448;color:#fff;padding:115px 0 125px}.contact-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:120px}.contact h2{font-size:clamp(49px,5.3vw,84px);line-height:1.04;letter-spacing:-.05em;margin:27px 0 28px;font-weight:500}.contact h2 em{color:#a5d4c5;font-size:1.04em}.contact-grid>div:first-child>p:not(.eyebrow){color:#c8d9db;font-size:16px;line-height:1.8;max-width:570px;margin-bottom:33px}.contact .eyebrow{color:#aad4c8}
.button-light{background:#e2efe5;color:var(--navy);min-width:203px}.button-light:hover{background:#fff}
.contact-details{padding-top:48px}.contact-details p{font-size:12px;letter-spacing:.17em;color:#9ac6c0;font-weight:700;margin:0 0 14px}.contact-details a{font-size:18px;color:#f2f8f0;display:flex;justify-content:space-between;gap:10px;align-items:center;word-break:break-word}.contact-details a:hover{color:#b6ded1}.contact-details a span{font-size:17px}.contact-divider{height:1px;background:#416372;margin:28px 0}.contact-address{font-size:17px;color:#f2f8f0}
.site-footer{background:#102b3a;color:#e0ece8;padding:30px 0}.footer-inner{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:30px;align-items:center}.footer-logo{font-family:Georgia,serif;font-size:24px;color:#f2f6ef;letter-spacing:.02em}.footer-logo span{font-family:var(--sans);font-size:9px;letter-spacing:.22em;display:block;font-weight:700;margin-top:-5px}.footer-inner p{font-size:14px;line-height:1.7;margin:0}.footer-inner>div{display:flex;flex-wrap:wrap;gap:12px 26px;font-size:14px;line-height:1.7}.footer-inner>div a:hover{color:#fff}
@media(max-width:1120px){.page-width{width:min(100% - 64px,1280px)}.hero-inner{grid-template-columns:minmax(0,1.1fr) minmax(350px,.9fr);gap:25px}.hero h1{font-size:clamp(58px,6vw,75px);margin-right:-45px}.hero-visual{height:520px}.featured-body{padding:45px 38px}.featured-diagram{padding-inline:25px}.contact-grid{gap:60px}.about-grid{gap:65px}}
@media(max-width:860px){.site-header{height:76px}.page-width{width:min(100% - 44px,1280px)}.brand-icon{width:38px;height:38px}.brand-wordmark strong{font-size:22px}.brand-wordmark>span{font-size:9px}.primary-nav{gap:18px}.primary-nav>a:not(.nav-contact){font-size:12px}.primary-nav .nav-contact{padding:11px 14px;gap:8px}.hero-inner{grid-template-columns:1fr;gap:45px;padding-top:70px}.hero h1{font-size:clamp(58px,8.2vw,82px);margin-right:0}.hero-visual{height:520px;width:min(100%,560px);justify-self:end}.hero-sidenote{margin-top:40px}.credibility-grid p{padding:25px 15px;grid-template-columns:1fr}.credibility-icon{grid-row:auto;margin-bottom:12px}.credibility-grid p:first-child{padding-left:0}.split-heading{grid-template-columns:1fr;gap:19px}.section-intro{max-width:620px}.featured-service{grid-template-columns:1fr}.featured-service h3{margin-top:35px}.featured-diagram{min-height:470px}.diagram-tile{max-width:480px;width:100%;margin-inline:auto}.diagram-process{justify-content:center;gap:24px}.service-grid{gap:12px}.service-card{padding:25px 20px}.service-card h3{font-size:23px}.belief-grid{grid-template-columns:1fr;gap:28px}.belief-context{max-width:650px}.approach-steps{gap:28px}.approach-steps h3{font-size:18px}.belief{padding:85px 0}.about-grid{gap:42px;grid-template-columns:.9fr 1.1fr}.about-frame{min-height:380px}.portrait-monogram{font-size:145px}.audience-inner{gap:25px}.contact-grid{gap:55px}.footer-inner{grid-template-columns:150px 1fr}.footer-inner>div{grid-column:1/-1;justify-content:space-between}}
@media(max-width:650px){html{scroll-padding-top:84px}.page-width{width:min(100% - 40px,1280px)}.site-header{height:72px}.header-inner{position:relative}.brand{min-width:0}.brand-icon{width:36px;height:36px}.brand-wordmark strong{font-size:21px}.brand-wordmark>span{font-size:8px}.menu-toggle{display:block;z-index:2}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.primary-nav{position:absolute;left:-20px;right:-20px;top:72px;max-height:calc(100dvh - 72px);overflow-y:auto;background:var(--paper);padding:20px 25px 26px;border-bottom:1px solid #dfe6e0;box-shadow:0 18px 25px #102e3c15;display:none;flex-direction:column;align-items:stretch;gap:0}.primary-nav.is-open{display:flex}.primary-nav>a:not(.nav-contact){padding:12px 2px;font-size:15px}.primary-nav .nav-contact{justify-content:space-between;margin-top:10px;padding:14px 18px;font-size:14px}
.hero-inner{padding-top:36px;padding-bottom:30px;gap:24px}.hero .eyebrow{font-size:12px;letter-spacing:.08em;max-width:350px}.eyebrow-rule{width:16px;margin-right:6px}.hero h1{font-size:clamp(49px,11.5vw,71px);line-height:1.07;letter-spacing:-.057em;margin:28px 0 23px}.hero h1 em{white-space:normal}.hero-lede{font-size:16px;line-height:1.75}.hero-actions{gap:22px}.button{font-size:12px;min-height:52px;padding:13px 16px;gap:18px}.hero-sidenote{font-size:14px;margin-top:22px}.hero-visual{height:280px;box-shadow:7px 9px 0 #e3ebe5;padding:14px 12px}.systems-art{display:none}.systems-art-mobile{display:block;flex:1;width:100%;min-height:0;margin:8px 0}.visual-topline{font-size:12px;letter-spacing:.06em}.visual-caption{font-size:21px;padding-top:10px;gap:8px}.hero-bottom{font-size:12px;padding-bottom:20px}.hero-bottom span:first-child{display:none}
.credibility-grid{grid-template-columns:1fr}.credibility-grid p{grid-template-columns:38px 1fr;padding:15px 0;border-right:0;border-bottom:1px solid #d0ded4}.credibility-grid p:last-child{border-bottom:0}.credibility-icon{grid-row:1/3;margin:0}.credibility-grid strong{font-size:14px}.credibility-grid p>span:last-child{font-size:14px;line-height:1.55;margin-top:4px}
.section-pad{padding-block:56px}.section-heading{margin-bottom:24px}.section-heading h2,.about h2{font-size:clamp(44px,10vw,62px)}.section-heading h2 em,.about h2 em,.audience-band h2 em{white-space:normal}.section-intro{font-size:14px}.featured-body{padding:28px 25px 37px}.featured-service h3{font-size:59px;margin:24px 0 21px}.featured-body>p{font-size:14px}.service-chips span{font-size:13px;padding:7px 10px}.featured-diagram{min-height:415px;padding:30px 18px}.diagram-tile{padding:19px;transform:rotate(-1.5deg);margin-right:10px}.diagram-label{margin-bottom:20px}.diagram-process{margin-top:30px;gap:8px;font-size:12px;flex-wrap:wrap}.service-grid{grid-template-columns:1fr;gap:13px;margin-top:13px}.service-card{min-height:0;padding:28px}.card-line-art{height:92px;margin:9px 0 17px}.service-card h3{font-size:28px}.service-card p{font-size:14px}.service-note{font-size:14px}
.belief{padding:82px 0}.belief h2{font-size:clamp(43px,10vw,62px)}.belief-context{font-size:15px}.approach-process{margin-top:40px;padding-top:34px}.approach-process h2{font-size:37px;margin-bottom:34px}.approach-steps{grid-template-columns:1fr;gap:34px}.approach-step{display:grid;grid-template-columns:54px minmax(0,1fr);column-gap:20px;padding:0}.approach-icon{grid-row:1/3;width:54px;height:54px}.approach-icon .line-icon{width:25px;height:25px}.approach-step:not(:last-child)::after{left:26px;right:auto;top:68px;bottom:-20px;width:1px;height:auto}.approach-step:not(:last-child)::before{left:23px;right:auto;top:auto;bottom:-20px;transform:rotate(135deg)}.approach-steps h3{margin:3px 0 9px;font-size:19px;max-width:none}.approach-steps p{font-size:13px;max-width:none}
.about-grid{grid-template-columns:1fr;gap:42px}.about-visual{max-width:370px;width:100%}.about-frame{min-height:390px;aspect-ratio:.95}.portrait-monogram{font-size:175px}.about-copy>p:not(.eyebrow){font-size:14px}.about h2{margin-bottom:24px}.audience-band{padding:69px 0}.audience-inner{grid-template-columns:1fr;gap:21px}.audience-band h2{font-size:45px}.audience-inner>p{font-size:14px}.contact{padding:78px 0 86px}.contact-grid{grid-template-columns:1fr;gap:45px}.contact h2{font-size:clamp(49px,10vw,69px)}.contact-grid>div:first-child>p:not(.eyebrow){font-size:15px}.contact-details{padding-top:0}.contact-details a{font-size:16px}.footer-inner{grid-template-columns:1fr;gap:16px}.footer-inner>div{grid-column:auto;display:block}.footer-inner>div a{display:block;margin-top:9px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Prevent long headings from forcing the single-column service layout wider than mobile screens. */
@media(max-width:860px){.featured-service{grid-template-columns:minmax(0,1fr)}.featured-body,.featured-diagram{min-width:0}}
@media(max-width:650px){.featured-service h3{font-size:clamp(42px,11vw,54px)}.about-visual{max-width:min(100%,365px)}}
@media(max-width:650px){.about-grid{grid-template-columns:minmax(0,1fr)}.about-visual,.about-copy{min-width:0}}
@media(max-width:650px){.about-frame{min-height:360px}}


/* --- Updated about photo and contact form --- */
.about-frame{margin:0;aspect-ratio:auto;min-height:0;padding:20px 20px 28px;gap:18px}
.about-headshot{position:relative;z-index:1;display:block;width:100%;height:auto;flex-shrink:0;object-fit:cover;object-position:70% 50%;aspect-ratio:4/5;border:1px solid #c6d5d0;box-shadow:0 12px 28px rgba(16,45,62,.09)}
.about-frame-bottom{position:relative;z-index:1}
.contact-grid>div{min-width:0}
.contact-form-embed{margin-top:26px;max-width:640px}
.contact-form-embed iframe{display:block;width:100%;max-width:100%;height:1000px;border:0;background:#fff;border-radius:4px}
.form-note{margin:16px 0 0;color:#c8d9db;font-size:14px;line-height:1.6}
.form-note a{text-decoration:underline;text-underline-offset:3px}
.form-note a:hover{color:#fff}
.contact-details .contact-address{display:block;line-height:1.8;color:#f2f8f0}
@media(max-width:650px){.contact-form-embed iframe{height:1100px}.about-headshot{aspect-ratio:4/5}}

/* A concrete engagement example, following the primary compensation service. */
.project-example{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:54px;margin-top:24px;padding:38px 40px;background:#f1f4ee;border:1px solid #d9e2da;border-left:4px solid #3b7778}
.project-example-heading h3{font-size:clamp(30px,2.8vw,42px);line-height:1.15;letter-spacing:-.035em;color:var(--deep);font-weight:600;margin:20px 0 18px}
.project-example-heading h3 em{font-family:var(--serif);font-weight:400;color:#346d68;letter-spacing:-.015em}
.project-example-context{font-size:14px;line-height:1.7;color:#52666b;margin:0}
.project-example-body{display:grid;gap:18px}
.project-example-body h4,.project-example-feedback h4{font-size:12px;line-height:1.5;letter-spacing:.07em;text-transform:uppercase;color:#315f5c;font-weight:700;margin:0 0 7px}
.project-example-body p,.project-example-feedback p{font-size:15px;line-height:1.8;color:#4d6562;margin:0}
.project-example-feedback{border-top:1px solid #cbd9cf;margin-top:26px;padding-top:22px}
@media(max-width:860px){.project-example{gap:30px;padding:30px}}
@media(max-width:650px){.project-example{grid-template-columns:minmax(0,1fr);gap:24px;padding:26px 24px;margin-top:18px}.project-example-heading h3{font-size:34px;margin-top:15px}.project-example-context{font-size:14px}.project-example-body p{font-size:15px}}
