:root{--ink:#20343b;--bronze:#a8865a;--paper:#f5f2eb;--slate:#52636a;--line:#d9ddd6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit}img{max-width:100%;height:auto}a:focus-visible,summary:focus-visible{outline:3px solid #8d642f;outline-offset:5px}.skip{position:absolute;left:15px;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}.wrap{max-width:1200px;margin:auto;padding-left:40px;padding-right:40px}.preview{background:#e7e9e3;color:#374a50;text-align:center;font-size:12px;padding:7px 15px}.preview span{margin-left:15px;color:#52636a}.header{border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:105px;gap:25px}.brand{display:block;width:275px;flex-shrink:0}.brand img{display:block}nav{display:flex;align-items:center;gap:26px;font-size:14px}nav>a:not(.button){text-decoration:none}nav>a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--ink);color:white;text-decoration:none;padding:16px 23px;font-size:15px;font-weight:600;border:1px solid var(--ink);border-radius:2px}.button:hover{background:#314c55}.button.small{padding:12px 16px;font-size:13px;gap:16px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 23px;color:var(--slate)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(38px,4.1vw,57px);line-height:1.13;letter-spacing:-1.5px;margin-bottom:26px}h1 em{font-style:normal;color:#59695c}h2{font-size:40px;line-height:1.18;letter-spacing:-.6px;margin-bottom:23px}h3{font-size:19px;line-height:1.35;margin-bottom:15px}p{margin-bottom:20px}.hero{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:65px;padding-top:75px;padding-bottom:80px}.lead{font-size:18px;line-height:1.7;max-width:740px}.support{color:var(--slate);max-width:700px}.hero .button{margin-top:12px}.hero-aside{align-self:center;padding:25px 0 0 30px;border-left:1px solid #c7cbbb}.experience-number{font:86px/1 Georgia,serif;letter-spacing:-5px}.experience-number span{font-size:45px;vertical-align:top;line-height:1.4;letter-spacing:0}.aside-title{font-size:16px;line-height:1.5;margin-top:15px}.aside-rule{height:3px;width:40px;background:var(--bronze);margin:30px 0}.hero-aside>p:last-of-type{font-size:14px;line-height:1.9;color:var(--slate)}.landscape{width:100%;margin-top:35px}.section{padding-top:80px;padding-bottom:80px}.white{background:#fff}.section-heading{max-width:750px;margin-bottom:42px}.section-heading>p:last-child{max-width:680px;color:var(--slate)}.three-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.three-columns article{border-top:1px solid var(--line);padding-top:25px}.number{font:24px Georgia,serif;color:#79613f;display:block;margin-bottom:22px}.three-columns p{color:var(--slate);font-size:16px}.scope{display:grid;grid-template-columns:1fr 1fr;gap:90px}.scope h2{max-width:430px}.scope>div>p:not(.eyebrow){color:var(--slate)}.scope-list{list-style:none;padding:0;margin:30px 0 0}.scope-list li{border-top:1px solid var(--line);padding:12px 0}.scope-list li:before{content:'—';margin-right:15px;color:#80613a}.process{background:var(--ink);color:white}.process .eyebrow{color:#d4c2a5}.process .section-heading>p:last-child{color:#d3dddf}.steps{display:grid;grid-template-columns:repeat(4,1fr);padding:0;list-style:none;counter-reset:steps;gap:28px}.steps li{counter-increment:steps;border-top:1px solid #708087;padding-top:20px}.steps li:before{content:'0' counter(steps);display:block;color:#d4c2a5;font:26px Georgia,serif;margin-bottom:22px}.steps h3{font-size:18px}.steps p{color:#d3dddf;font-size:15px}.case-note{display:grid;grid-template-columns:1fr 2fr;gap:40px;border-top:1px solid #708087;margin-top:35px;padding-top:28px}.case-note p{color:#d3dddf;font-size:16px;margin-bottom:0}.founder{display:grid;grid-template-columns:1fr 1.35fr;gap:80px}.founder-subtitle{color:var(--slate);font-size:17px}.founder .large-copy{font:27px/1.4 Georgia,serif}.founder>div:last-child>p:not(.large-copy){color:var(--slate)}.faq-layout{display:grid;grid-template-columns:1fr 1.7fr;gap:80px}.faqs{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:21px 35px 21px 0;font-weight:600;position:relative;list-style:none;font-size:16px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:2px;font-size:24px;font-weight:400;top:15px}details[open] summary:after{content:'−'}details p{font-size:16px;color:var(--slate);padding-right:25px}.contact{background:#e7e8df;padding:75px 0}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact h2{font-size:44px}.contact-inner>div>p:last-child{max-width:430px}.email-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--slate)}.email{font:30px/1.4 Georgia,serif;overflow-wrap:anywhere}.contact-note{font-size:14px;color:var(--slate)}.preview-contact{font-size:12px;border-left:2px solid #8c714c;padding-left:12px;color:#52636a}footer{padding:30px 0;background:white}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-inner>img{width:230px}.footer-inner>div{display:flex;align-items:center;gap:25px;font-size:12px;color:var(--slate)}.footer-inner p{margin:0}.privacy{max-width:800px;padding-top:60px;padding-bottom:70px}.privacy h1{font-size:44px}.privacy h2{font-size:26px;margin-top:35px}.privacy .back{display:inline-block;margin-bottom:35px}.privacy li{margin-bottom:12px}@media(max-width:1000px){.nav{flex-wrap:wrap;justify-content:center;padding-top:20px;padding-bottom:20px;gap:15px}.hero{gap:35px;grid-template-columns:1fr 220px}.hero-aside{padding-left:20px}.scope,.founder,.faq-layout,.contact-inner{gap:45px}.three-columns{gap:25px}.steps{grid-template-columns:repeat(2,1fr);gap:25px 35px}}@media(max-width:700px){.wrap{padding-left:24px;padding-right:24px}.preview{font-size:10px}.preview span{margin-left:8px}.brand{width:250px}nav{gap:19px;font-size:13px}nav .button{display:none}.hero{grid-template-columns:1fr;padding-top:45px;padding-bottom:45px;gap:40px}h1{font-size:40px;letter-spacing:-1px}h2{font-size:33px}.hero-aside{border-left:0;border-top:1px solid var(--line);padding:25px 0 0;display:grid;grid-template-columns:95px 1fr;gap:10px 20px}.experience-number{font-size:65px}.experience-number span{font-size:32px}.aside-title{margin:6px 0}.aside-rule,.hero-aside>p:last-of-type,.landscape{display:none}.section{padding-top:50px;padding-bottom:50px}.three-columns,.scope,.founder,.faq-layout,.contact-inner,.case-note{grid-template-columns:1fr;gap:25px}.three-columns{gap:20px}.section-heading{margin-bottom:30px}.three-columns article{padding-top:20px}.number{margin-bottom:12px}.scope{gap:10px}.steps{grid-template-columns:1fr;gap:20px}.case-note h3{margin:0}.case-note{gap:8px}.founder{gap:15px}.contact{padding:50px 0}.contact h2{font-size:37px}.contact-inner{gap:25px}.email{font-size:28px}.footer-inner{flex-direction:column;align-items:flex-start}.footer-inner>div{width:100%;justify-content:space-between}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Gentle motion, with content visible even if scripts cannot load. */
@keyframes section-arrival {
  from { opacity: .25; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: no-preference) {
  .revealed { animation: section-arrival 650ms cubic-bezier(.2,.65,.3,1) var(--reveal-delay, 0ms) backwards; }
  .button { transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease; }
  .button span { transition: transform 180ms ease; }
  .three-columns article, .steps li { transition: border-color 220ms ease; }
  nav > a:not(.button) { text-decoration: none; background-image: linear-gradient(var(--bronze),var(--bronze)); background-repeat: no-repeat; background-position: left bottom; background-size: 0 2px; transition: background-size 200ms ease; }
  nav > a:not(.button):hover, nav > a:not(.button):focus-visible { background-size: 100% 2px; text-decoration: none; }
  summary { transition: color 180ms ease; }
}
@media (hover: hover) {
  .three-columns article:hover, .steps li:hover { border-top-color: var(--bronze); }
  summary:hover { color: #80613a; }
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .button:hover { transform: translateY(-2px); box-shadow: 0 5px 12px #20343b20; }
  .button:hover span { transform: translate(2px,-2px); }
}
@media (prefers-reduced-motion: reduce) {
  .revealed { animation: none; }
}

/* Focused support cards: a clear, quiet response to pointer hover. */
.three-columns article { position: relative; isolation: isolate; }
.three-columns article::before {
  content: ''; position: absolute; inset: -1px -16px -12px;
  background: #f5f2eb; border-radius: 3px; z-index: -1;
  opacity: 0; pointer-events: none;
}
@media (prefers-reduced-motion: no-preference) {
  .three-columns article { transition: transform 220ms ease, border-color 220ms ease; }
  .three-columns article::before { transition: opacity 220ms ease, box-shadow 220ms ease; }
  .three-columns .number { transition: color 220ms ease; }
}
@media (hover: hover) {
  .three-columns article:hover { border-top-color: var(--bronze); }
  .three-columns article:hover::before { opacity: 1; box-shadow: 0 10px 24px #20343b0d; }
  .three-columns article:hover .number { color: #8b602d; }
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .three-columns article:hover { transform: translateY(-5px); }
}

/* Process steps echo the support cards on the dark section. */
.steps li { position: relative; isolation: isolate; }
.steps li::after {
  content: ''; position: absolute; inset: -1px -12px -12px;
  background: #2c444c; border-radius: 3px; z-index: -1;
  opacity: 0; pointer-events: none;
}
@media (prefers-reduced-motion: no-preference) {
  .steps li { transition: transform 220ms ease, border-color 220ms ease; }
  .steps li::after { transition: opacity 220ms ease, box-shadow 220ms ease; }
  .steps li::before { transition: color 220ms ease; }
}
@media (hover: hover) {
  .steps li:hover { border-top-color: var(--bronze); }
  .steps li:hover::after { opacity: 1; box-shadow: 0 10px 24px #101c2440; }
  .steps li:hover::before { color: #e6cba5; }
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .steps li:hover { transform: translateY(-5px); }
}

.contact-page{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:start;min-height:620px}.back-link{display:inline-block;margin-bottom:36px;font-size:14px;text-underline-offset:4px}.contact-intro h1{font-size:clamp(38px,4vw,54px)}.inquiry-panel{background:white;border-top:3px solid var(--bronze);padding:36px;margin-top:55px}.inquiry-panel h2{font-size:34px}.inquiry-panel .email{font-size:clamp(23px,2.5vw,30px);margin:26px 0}.contact-page .eyebrow{margin-bottom:18px}@media(max-width:1000px){.contact-page{gap:35px}.inquiry-panel{padding:26px}}@media(max-width:700px){.contact-page{grid-template-columns:1fr;gap:12px;min-height:0}.inquiry-panel{margin-top:0}.back-link{margin-bottom:28px}}

/* Inquiry form */
.contact-page{grid-template-columns:1fr 1.15fr;gap:56px}.inquiry-panel{margin-top:0}.field{margin:20px 0}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.field label span{font-weight:400;color:var(--slate)}.field input,.field textarea{box-sizing:border-box;width:100%;padding:12px 14px;border:1px solid #adb7b8;border-radius:3px;background:#fff;color:var(--ink);font:inherit;line-height:1.5}.field textarea{resize:vertical;min-height:135px}.field input:focus,.field textarea:focus{outline:2px solid var(--bronze);outline-offset:2px;border-color:var(--ink)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-row .field{margin:0}.form-hint,.email-alternative{font-size:13px;color:var(--slate);line-height:1.65}.form-hint a,.email-alternative a{text-underline-offset:3px}.form-status{font-size:14px;margin-bottom:0;line-height:1.6}.form-status[data-state="error"]{color:#973d2d}.form-status[data-state="success"]{color:#285940}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button.button{font:inherit;cursor:pointer;border:0}button.button:disabled{opacity:.6;cursor:default;transform:none;box-shadow:none}button:focus-visible{outline:2px solid var(--bronze);outline-offset:4px}.email-alternative{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}@media(max-width:800px){.contact-page{grid-template-columns:1fr;gap:28px}.form-row{grid-template-columns:1fr;gap:20px}}

.legal-note{font-size:12px;line-height:1.7;color:var(--slate);margin-top:24px;margin-bottom:0;max-width:1160px}

.analytics-choice{position:fixed;bottom:18px;left:18px;right:18px;z-index:1000;max-width:820px;margin:auto;padding:20px 24px;background:#fff;color:#20343b;border:1px solid #a8865a;box-shadow:0 6px 30px #20343b26;display:flex;gap:24px;align-items:center;font-size:14px}.analytics-choice[hidden]{display:none}.analytics-choice p{margin:6px 0 0;line-height:1.5}.analytics-actions{display:flex;gap:8px;flex-shrink:0;flex-direction:column}.analytics-actions button{padding:10px 16px;border:1px solid #20343b;background:#20343b;color:white;font:inherit;cursor:pointer}.analytics-actions button+button{background:white;color:#20343b}.analytics-preferences button{border:0;background:none;color:inherit;text-decoration:underline;font:inherit;padding:0;cursor:pointer}.analytics-choice button:focus-visible,.analytics-preferences button:focus-visible{outline:3px solid #a8865a;outline-offset:3px}@media(max-width:600px){.analytics-choice{left:10px;right:10px;bottom:10px;padding:16px;flex-direction:column;gap:14px;align-items:stretch}.analytics-actions{flex-direction:row}.analytics-actions button{flex:1}}
