:root{--bg:#fff;--ink:#0b0b0c;--muted:#716b65;--faint:#a29b94;--line:rgba(11,11,12,.11);--wash:#f7f5f2;--orange:#ff5a0a;--orange-dark:#d74800;--sans:"Geist",system-ui,sans-serif;--mono:"Geist Mono",monospace;--serif:"Instrument Serif",Georgia,serif;--col:1080px;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding:0 16px;background:var(--bg);color:var(--ink);font:400 15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.frame,.topbar__inner{width:min(100%,var(--col));margin:auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.topbar{position:sticky;z-index:20;top:0;margin:0 -16px;background:rgba(255,255,255,.9);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.topbar__inner{height:64px;padding:0 39px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;font-size:17px;font-weight:500;letter-spacing:-.02em}.brand__mark{position:relative;width:27px;height:27px;display:inline-block;border-radius:7px;background:#0b0b0c;overflow:hidden}.brand__mark i,.brand__mark b{position:absolute;top:7px;width:10px;height:11px;border:1.5px solid #fff;border-top-color:transparent;border-left-color:transparent;border-radius:0 0 9px 0}.brand__mark i{left:3px;transform:rotate(35deg)}.brand__mark b{right:3px;transform:scaleX(-1) rotate(35deg)}.brand__mark em{position:absolute;width:6px;height:6px;left:10.5px;top:14px;background:var(--orange);transform:rotate(45deg);border-radius:1px}.nav{display:flex;align-items:center;gap:28px;font-size:13px;color:var(--muted)}.nav a:hover{color:var(--ink)}
.button{min-height:40px;padding:0 16px;border:1px solid var(--line);border-radius:10px;background:#fff;display:inline-flex;align-items:center;justify-content:center;gap:16px;font-weight:500;font-size:14px;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(11,11,12,.08)}.button--primary{background:var(--orange);border-color:var(--orange);color:#0b0b0c}.button--primary:hover{background:#ff6a20}.button--small{min-height:34px;padding:0 13px;font-size:12px;border-radius:9px}
.hero{min-height:508px;display:grid;grid-template-columns:1.05fr 1fr;border-bottom:1px solid var(--line)}.hero__copy{padding:102px 40px 76px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font:500 11px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#68625d;display:flex;align-items:center;gap:11px}.eyebrow:before,.mini-rule{content:"";width:18px;height:1px;background:var(--orange);display:inline-block}.hero h1{margin:24px 0 22px;font-size:61px;line-height:.96;letter-spacing:-.055em;font-weight:500}.hero h1 em{font-family:var(--serif);font-weight:400;color:var(--orange-dark);letter-spacing:-.02em}.hero__lede{max-width:490px;color:var(--muted);font-size:18px;line-height:1.55}.actions{display:flex;gap:10px;margin-top:30px}.hero__art{position:relative;border-left:1px solid var(--line);overflow:hidden;display:grid;place-items:center;padding:24px;min-width:0}.readout{position:absolute;bottom:0;left:0;right:0;height:38px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 16px;font:11px var(--mono);letter-spacing:.02em;color:#736d67}.readout i{display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--orange)}.readout b{color:var(--ink);font-weight:500}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.benefits article{padding:33px 40px 36px;min-height:196px}.benefits article+article{border-left:1px solid var(--line)}.benefits h3{font-size:18px;line-height:1.3;margin:17px 0 12px;letter-spacing:-.025em}.benefits p{color:var(--muted);line-height:1.6}.section{border-bottom:1px solid var(--line)}.section__intro{padding:82px 40px 56px;max-width:790px}.section__intro h2,.contact__intro h2,.success h2{font-size:42px;line-height:1.08;letter-spacing:-.045em;font-weight:500;margin:22px 0 17px}.section__intro>p:last-child,.contact__intro>p{color:var(--muted);font-size:17px;max-width:650px}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.service-card{display:grid;grid-template-rows:auto 1fr;min-height:0;min-width:0;transition:background 200ms ease}.service-card:not(:nth-child(3n)){border-right:1px solid var(--line)}.service-card:nth-child(n+4){border-top:1px solid var(--line)}.service-art{position:relative;border-bottom:1px solid var(--line);background:#f7f5f3;overflow:hidden;display:grid;place-items:center;padding:14px clamp(18px,4vw,40px);transition:background 200ms ease}.service-copy{padding:29px 30px 35px}.service-copy>span{font:10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--orange-dark)}.service-copy h3{font-size:18px;line-height:1.25;letter-spacing:-.03em;margin:20px 0 10px}.service-copy p{color:var(--muted);font-size:13px}
/* Hairline 0.5.0: the reference site's exact palette, stroke weight, and figure sizes. */
.fig{max-width:100%;width:100%;aspect-ratio:5/4;--hairline-plate:#ffffff;--hairline-hi:var(--orange);--hairline-edge:#9f9891;--hairline-mid:#cdc8c3;--hairline-lo:#e6e2de;--hairline-stroke:1}
.hero__art .fig{max-width:480px}
.service-art .fig{max-width:260px}
@media (hover:hover){.service-card:hover{background:#f7f5f3}.service-card:hover .service-art{background:var(--bg)}}
.process{display:grid;grid-template-columns:1fr 1fr}.process .section__intro{padding:72px 40px}.process-grid{margin:0;padding:43px 40px;list-style:none;display:grid;grid-template-columns:1fr;border-left:1px solid var(--line)}.process-grid li{display:flex;gap:22px;padding:25px 0}.process-grid li+li{border-top:1px solid var(--line)}.process-grid>li>span,.form-group legend span{font:500 11px var(--mono);color:var(--orange-dark)}.process-grid h3{font-size:15px;margin-bottom:8px}.process-grid p{color:var(--muted);font-size:13px}
.contact{display:grid;grid-template-columns:360px 1fr}.contact__intro{padding:76px 40px;border-right:1px solid var(--line);align-self:start;position:sticky;top:64px}.contact__intro h2{font-size:38px}.check-list{list-style:none;padding:0;margin:30px 0 0;border-top:1px solid var(--line)}.check-list li{position:relative;padding:14px 0 14px 25px;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--orange-dark);font-weight:600}.audit-form{min-width:0}.form-group{border:0;margin:0;padding:0}.form-group+ .form-group{border-top:1px solid var(--line)}.form-group legend{float:left;width:100%;padding:24px 30px;border-bottom:1px solid var(--line);font-size:17px;font-weight:500}.form-group legend span{margin-right:16px}.fields{clear:both;padding:31px 30px 36px;display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.fields--stack{display:block}.fields--stack>.fields{padding:30px 0 0}.fields>label,.choice-field>p{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:500}.fields label b,.choice-field b,.consent b{color:var(--orange-dark);font-weight:500}.fields label i,.choice-field i{font:10px var(--mono);color:var(--faint);text-transform:uppercase;margin-left:5px}.fields input,.fields select,.fields textarea{width:100%;border:0;border-bottom:1px solid #bbb4ae;border-radius:0;background:transparent;padding:10px 0 11px;outline:0}.fields select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#777 50%),linear-gradient(135deg,#777 50%,transparent 50%);background-position:calc(100% - 8px) 50%,calc(100% - 3px) 50%;background-size:5px 5px;background-repeat:no-repeat}.fields textarea{min-height:110px;resize:vertical}.fields input:focus,.fields select:focus,.fields textarea:focus{border-color:var(--orange)}.fields small[data-error],.choice-field>small,.form-footer>small{min-height:15px;color:var(--orange-dark);font-size:11px;font-weight:400}.field-full{grid-column:1/-1}.choice-field+.choice-field{margin-top:31px;padding-top:30px;border-top:1px solid var(--line)}.choice-field>p{margin-bottom:11px;display:block}.choices{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.choices label{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid var(--line);border-radius:8px;font-weight:400;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.choices label:hover{border-color:#aaa29b}.choices input{appearance:none;width:15px;height:15px;min-width:15px;margin:3px 0 0;padding:0;border:1px solid #aaa29b;border-radius:3px}.choices input[type=radio]{border-radius:50%}.choices input:checked{background:var(--orange);border-color:var(--orange);box-shadow:inset 0 0 0 3px #fff}.choices label:has(input:checked){border-color:var(--orange);background:#fffaf7}.choices small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.choices--compact{grid-template-columns:repeat(3,1fr)}.form-footer{padding:31px 30px 42px;border-top:1px solid var(--line)}.consent{display:flex;gap:10px;color:var(--muted);font-size:12px;margin-bottom:20px}.consent input{width:16px;height:16px;margin:2px 0 0;accent-color:var(--orange)}.consent a{text-decoration:underline;text-underline-offset:3px}.form-footer .button{width:100%;min-height:48px}.form-message{margin-top:12px;text-align:center;color:var(--orange-dark);font-size:12px}.honeypot{position:absolute;left:-10000px;opacity:0}.success{grid-column:2;padding:90px 58px;min-height:480px}.success p{color:var(--muted);font-size:17px}.reference{margin-top:25px;padding:18px;border-left:2px solid var(--orange);background:var(--wash);font:13px var(--mono)!important}.footer{width:min(100%,var(--col));margin:0 auto;min-height:184px;border-left:1px solid var(--line);border-right:1px solid var(--line);padding:42px 40px;display:grid;grid-template-columns:1fr auto;position:relative}.footer p{margin-top:12px;color:var(--muted);font-size:13px}.footer nav{display:flex;gap:24px;color:var(--muted);font-size:12px}.footer>span{position:absolute;bottom:35px;left:40px;font:10px var(--mono);color:var(--faint)}
.reveal{opacity:1;transform:none}.hero__copy{animation:hero-in .65s var(--ease) both}.hero__art{animation:hero-in .8s .08s var(--ease) both}@keyframes hero-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (max-width:900px){.hero{grid-template-columns:1fr}.hero__copy{padding:80px 32px 55px}.hero__art{border-left:0;border-top:1px solid var(--line);padding-bottom:56px;min-height:0}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card:not(:nth-child(3n)){border-right:0}.service-card:not(:nth-child(2n)){border-right:1px solid var(--line)}.service-card:nth-child(n+3){border-top:1px solid var(--line)}.contact{grid-template-columns:1fr}.contact__intro{position:static;border-right:0;border-bottom:1px solid var(--line)}.success{grid-column:1}.process-grid{padding:35px 30px}.topbar__inner{padding:0 30px}}
@media (max-width:680px){body{padding:0}.frame,.topbar__inner,.footer{border-left:0;border-right:0}.topbar{margin:0}.topbar__inner{height:58px;padding:0 18px}.nav>a:not(.button){display:none}.hero__copy{padding:66px 20px 46px}.hero h1{font-size:48px}.hero__lede{font-size:16px}.benefits,.services-grid,.process{grid-template-columns:1fr}.benefits article+article,.service-card:nth-child(odd){border-left:0}.benefits article+article,.service-card:nth-child(n+2){border-top:1px solid var(--line)}.benefits article{padding:28px 20px;min-height:0}.section__intro,.contact__intro{padding:58px 20px 40px}.section__intro h2,.contact__intro h2{font-size:35px}.service-card,.service-card:not(:nth-child(2n)){grid-template-rows:auto 1fr;min-height:0;border-right:0}.service-copy{padding:28px 22px 34px}.service-copy h3{font-size:18px}.process .section__intro{padding:58px 20px 40px}.process-grid{border-left:0;border-top:1px solid var(--line);padding:10px 20px 24px}.process-grid li,.process-grid li+li{padding:24px 0}.form-group legend{padding:21px 20px}.fields{grid-template-columns:1fr;padding:27px 20px 32px;gap:22px}.choices,.choices--compact{grid-template-columns:1fr}.form-footer{padding:27px 20px 36px}.footer{padding:36px 20px;grid-template-columns:1fr}.footer nav{margin-top:30px;flex-wrap:wrap}.footer>span{position:static;margin-top:32px}.actions{flex-direction:column;align-items:stretch}.button{width:100%}}
.hero__note{margin-top:16px;max-width:390px;font-size:12px;line-height:1.6;color:var(--muted)}
.section{scroll-margin-top:64px}
.actions{flex-wrap:wrap}.actions .button{gap:10px;padding-inline:13px}
.fields>label{display:block}
.fields>label>input,.fields>label>select,.fields>label>textarea{display:block;margin-top:8px}
.fields>label>small[data-error]{display:block;margin-top:5px}
.fields>label>b{margin-left:3px}
.form-details{border-top:1px solid var(--line)}
.form-details summary{padding:24px 30px;cursor:pointer;font-size:14px;font-weight:500}
.form-details summary::marker{color:var(--orange-dark)}
.form-details summary span{display:block;margin-top:5px;font-size:12px;font-weight:400;color:var(--muted)}
.form-details[open] summary{border-bottom:1px solid var(--line);background:var(--wash)}
.form-details summary:focus-visible,.button:focus-visible,.choices input:focus-visible{outline:2px solid var(--orange-dark);outline-offset:4px}
@media (max-width:680px){.form-details summary{padding:22px 20px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__copy,.hero__art{animation:none}.button{transition:none}}
