:root{--bg:oklch(1 0 0);--ink:oklch(.25 .04 263.388);--primary:oklch(.28770 .04838 263.388);--primary-light:oklch(.38 .06 263.388);--accent:oklch(.69661 .15988 55.339);--surface:oklch(.965 .012 263.388);--muted:oklch(.43 .026 263.388);--line:oklch(.84 .017 263.388);--on-dark:oklch(.86 .02 263.388);--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'Manrope',Arial,sans-serif;--z-nav:10;--z-menu:20;--z-skip:30}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.65}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid oklch(.59 .14 220);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;left:1rem;top:1rem;transform:translateY(-160%);background:var(--accent);padding:12px 24px;z-index:var(--z-skip)}.skip-link:focus{transform:none}.utility{background:var(--surface);font-size:.8rem;font-weight:600}.utility .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:9px}.utility a span{margin-left:10px}.site-header{background:var(--bg)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:96px}.wordmark{font-size:1.5rem;font-weight:800;letter-spacing:-.065em;white-space:nowrap}.wordmark>span:first-child{font-weight:500}.logo-dot{color:var(--accent);font-size:2rem}.desktop-nav{display:flex;align-items:center;gap:32px;font-size:.875rem;font-weight:650}.desktop-nav>a:not(.button){padding-block:15px}.desktop-nav>a:not(.button):hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:56px;background:var(--primary);color:var(--bg);padding:15px 24px;border:0;border-radius:5px;font-size:.9375rem;font-weight:750;line-height:1.4;transition:transform .18s ease-out,background .18s ease-out}.button:hover{background:var(--primary-light);transform:translateY(-2px)}.button span{font-size:1.3rem;line-height:1}.button.small{min-height:48px;padding:13px 19px;font-size:.825rem;gap:18px}.button.accent{background:var(--accent);color:var(--ink)}.button.accent:hover{background:oklch(.76 .145 55.339)}.menu-toggle{display:none;border:1px solid var(--line);background:var(--bg);min-height:44px;padding:8px 14px;border-radius:4px;color:var(--ink)}.mobile-nav{padding-block:0 24px}.mobile-nav a{display:block;padding:12px 0}.hero{background:var(--primary);color:var(--bg);padding-top:70px;overflow:clip}.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:60px;align-items:center}.location-label{display:flex;align-items:center;gap:10px;color:var(--on-dark);font-size:.8125rem;font-weight:650;margin-bottom:23px}.location-label>span{color:var(--accent);font-size:1.25rem}.hero h1{font-family:var(--display);font-size:clamp(4rem,7.2vw,6rem);font-weight:700;line-height:.97;letter-spacing:-.02em}.hero h1 span{color:var(--accent)}.hero-description{margin-top:25px;max-width:45ch;color:var(--on-dark);font-size:1.03rem;line-height:1.8}.hero-actions{display:flex;align-items:flex-start;gap:21px;flex-direction:column;margin-top:30px}.text-link{display:inline-flex;gap:15px;align-items:center;font-size:.875rem;font-weight:650}.text-link.light{color:var(--bg)}.hero-note{font-size:.75rem;color:var(--on-dark);margin-top:22px}.hero-photo{position:relative;align-self:stretch;display:flex;flex-direction:column;min-height:460px}.hero-photo img{width:100%;height:100%;min-height:390px;object-fit:cover;object-position:61% center;flex:1}.hero-photo figcaption{background:var(--primary-light);padding:17px 22px;display:flex;align-items:center;justify-content:space-between;font-size:.875rem;font-weight:650}.photo-arrow{font-size:1.6rem;color:var(--accent);line-height:1}.hero-foot{display:flex;justify-content:space-between;gap:25px;margin-top:55px;padding-block:22px;border-top:1px solid oklch(.49 .04 263.388);color:var(--on-dark);font-size:.8rem;font-weight:600}.hero-foot span::before{content:'✓';color:var(--accent);margin-right:12px}.section{padding-block:100px}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:40px}.section-heading h2,h2{font-family:var(--display);font-size:clamp(2.5rem,4.2vw,3.5rem);font-weight:600;line-height:1.07;letter-spacing:-.015em}.section-heading>p{max-width:41ch;color:var(--muted);font-size:.975rem}.service-preview{display:flex;gap:30px;justify-content:space-between;padding-block:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:700}.hero-copy{animation:arrive .6s cubic-bezier(.16,1,.3,1)}@keyframes arrive{from{transform:translateY(14px);opacity:.8}to{transform:none;opacity:1}}
@media(min-width:1350px){.hero-actions{flex-direction:row;align-items:center;gap:23px}.hero-actions .button{padding-inline:22px}.hero-description{max-width:44ch}.hero-grid{gap:76px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.desktop-nav{gap:22px}.hero-grid{gap:36px}.hero{padding-top:52px}.hero-photo{min-height:430px}.desktop-nav .button{gap:8px}.hero h1{font-size:clamp(4.5rem,8.5vw,6rem)}}
@media(max-width:820px){.desktop-nav{display:none}.menu-toggle{display:inline-flex;align-items:center;gap:12px}.header-inner{min-height:80px}.hero-grid{gap:36px}.hero-photo{min-height:400px}.hero-note{font-size:.75rem}.hero-description{font-size:.95rem}.section-heading{gap:30px}.hero h1{font-size:4.5rem}.hero-foot{font-size:.75rem}.hero-foot span::before{margin-right:6px}}
@media(max-width:680px){.wrap{width:calc(100% - 40px)}.utility{font-size:.75rem}.utility .wrap{gap:6px;padding-block:8px}.utility a{font-size:0}.utility a span{font-size:.75rem;margin:0}.wordmark{font-size:1.3rem}.header-inner{min-height:76px}.hero{padding-top:37px}.hero-grid{grid-template-columns:1fr;gap:34px}.location-label{margin-bottom:21px}.hero h1{font-size:clamp(4.4rem,17vw,6rem)}.hero-description{font-size:1rem;max-width:44ch}.hero-actions{flex-direction:row;flex-wrap:wrap;gap:20px;align-items:center}.hero-note{margin-top:19px}.hero-photo{min-height:0}.hero-photo img{height:auto;min-height:0;aspect-ratio:1.3;object-position:60% 65%}.hero-photo figcaption{padding:14px 18px}.hero-foot{flex-wrap:wrap;justify-content:flex-start;gap:9px 24px;margin-top:30px;padding-block:20px}.hero-foot span{font-size:.75rem}.section{padding-block:62px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:45ch}.service-preview{flex-direction:column;gap:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.service-list { border-top:1px solid var(--line); }
.service-row { display:grid; grid-template-columns:1fr 1fr 50px; align-items:center; gap:44px; padding:31px 0; border-bottom:1px solid var(--line); }
.service-tag { font-size:.75rem; color:var(--muted); display:block; margin-bottom:7px; }
.service-row h3 { font-size:1.25rem; font-weight:750; line-height:1.35; letter-spacing:-.025em; }
.service-row>p { color:var(--muted); font-size:.925rem; max-width:43ch; }
.round-arrow { border:1px solid var(--line); border-radius:50%; width:45px; height:45px; display:grid; place-items:center; font-size:1.4rem; transition:background .2s,color .2s; }
.service-row:hover .round-arrow { background:var(--primary); color:var(--bg); border-color:var(--primary); }
.service-note { margin-top:24px; max-width:85ch; color:var(--muted); font-size:.825rem; }
.process-section { padding-block:78px 86px; background:var(--surface); }
.process-section .section-heading { margin-bottom:48px; }
.process-list { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(3,1fr); gap:55px; }
.process-list li { position:relative; }
.step-number { display:block; color:var(--primary-light); font-family:var(--display); font-size:2.5rem; line-height:1; margin-bottom:20px; }
.process-list h3 { font-size:1.075rem; line-height:1.4; margin-bottom:14px; }
.process-list p { color:var(--muted); font-size:.9rem; max-width:36ch; }
.estimate-section { padding-block:96px; background:oklch(.91 .032 263.388); }
.estimate-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; align-items:start; }
.estimate-intro { padding-top:20px; }
.location-label.dark { color:var(--primary); }
.estimate-intro h2 { font-size:clamp(3rem,4.8vw,4rem); }
.estimate-intro>p:not(.location-label) { color:var(--muted); margin-top:24px; font-size:1rem; max-width:38ch; }
.pricing-note { margin-top:38px; padding-top:28px; border-top:1px solid oklch(.69 .04 263.388); }
.pricing-note h3 { font-size:.975rem; margin-bottom:9px; }
.pricing-note p { color:var(--muted); font-size:.85rem; max-width:43ch; }
.contact-note { margin-top:35px; }
.contact-note>span { display:block; color:var(--muted); font-size:.8rem; margin-bottom:6px; }
.contact-note a { display:flex; align-items:center; gap:28px; font-size:1.25rem; font-weight:750; }
.request-panel { min-width:0; padding:34px 36px 28px; background:var(--bg); border-radius:10px; scroll-margin-top:25px; }
.form-progress { display:flex; justify-content:space-between; list-style:none; padding:0 0 25px; margin:0 0 28px; border-bottom:1px solid var(--line); gap:13px; }
.form-progress li { display:flex; align-items:center; gap:9px; color:var(--muted); font-size:.75rem; white-space:nowrap; }
.form-progress li>span { width:24px; height:24px; border-radius:50%; display:grid; place-items:center; border:1px solid var(--muted); line-height:1; font-size:.75rem; }
.form-progress li[aria-current] { color:var(--primary); font-weight:800; }
.form-progress li[aria-current]>span,.form-progress li[data-complete]>span { border-color:var(--primary); background:var(--primary); color:var(--bg); }
.form-step { border:0; margin:0; padding:0; min-width:0; }
.form-step legend { padding:0; margin-bottom:25px; font-size:1.25rem; line-height:1.4; font-weight:750; letter-spacing:-.025em; width:100%; }
.service-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:27px; }
.service-options label { display:flex; align-items:center; gap:10px; min-height:51px; padding:12px 13px; border:1px solid oklch(.58 .024 263.388); border-radius:5px; cursor:pointer; font-size:.85rem; font-weight:650; }
.service-options label:has(input:checked) { border:2px solid var(--primary); padding:11px 12px; background:var(--surface); }
.service-options input { margin:0; width:17px; height:17px; accent-color:var(--primary); flex-shrink:0; }
.service-options label:focus-within { outline:3px solid oklch(.59 .14 220); outline-offset:3px; }
.service-options input:focus-visible { outline:none; }
.field { margin-top:19px; min-width:0; }
.field>label,#copy-fallback>label { display:block; margin-bottom:7px; font-size:.8rem; font-weight:700; line-height:1.5; }
.required,.optional { color:var(--muted); font-weight:400; font-size:.75rem; }
input:not([type=radio]),textarea,select { display:block; width:100%; border:1px solid oklch(.58 .024 263.388); padding:12px; border-radius:4px; min-height:47px; background:var(--bg); color:var(--ink); font-size:1rem; line-height:1.5; }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:1; }
textarea { resize:vertical; }
.field-hint { font-size:.75rem; color:var(--muted); line-height:1.65; margin-top:8px; }
.partner-hint { padding:12px 14px; background:var(--surface); border-radius:4px; margin-block:-9px 20px; }
.photo-note { display:flex; align-items:center; gap:12px; margin-top:20px; padding:14px 0; color:var(--muted); }
.photo-note>span { font-size:1.3rem; }
.photo-note>p { font-size:.8rem; line-height:1.6; }
.field-pair { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-actions { border-top:1px solid var(--line); padding-top:23px; margin-top:25px; display:flex; justify-content:space-between; align-items:center; gap:12px; }
.form-step-label { color:var(--muted); font-size:.75rem; }
.form-actions .button { padding:13px 18px; min-height:49px; font-size:.85rem; gap:17px; margin-left:auto; }
.back-button,.copy-button { border:0; background:none; color:var(--primary); font-size:.85rem; min-height:44px; padding:10px 0; font-weight:700; }
.back-button { display:flex; align-items:center; gap:7px; }
.copy-button { display:block; margin-inline:auto; text-decoration:underline; text-underline-offset:5px; }
.review-intro { color:var(--muted); font-size:.875rem; margin-bottom:20px; }
.request-summary { margin:0; padding:0; }
.request-summary>div { display:grid; grid-template-columns:100px 1fr; gap:16px; padding-block:12px; border-top:1px solid var(--line); }
.request-summary dt { font-size:.75rem; color:var(--muted); }
.request-summary dd { font-size:.85rem; margin:0; white-space:pre-wrap; overflow-wrap:anywhere; }
.send-disclosure { padding:16px; background:var(--surface); font-size:.75rem; margin-block:19px; color:var(--muted); }
#email-request { width:100%; }
.copy-status { font-size:.8rem; color:var(--primary); line-height:1.65; }
.copy-status:empty { display:none; }
#copy-fallback { margin-top:20px; }
.more-help-grid { display:grid; grid-template-columns:1fr 1.15fr; gap:110px; align-items:start; }
.more-help-description { color:var(--muted); font-size:.925rem; max-width:39ch; margin-top:22px; }
.partner-services { border-top:1px solid var(--line); }
.partner-services>a { display:flex; align-items:center; justify-content:space-between; gap:30px; border-bottom:1px solid var(--line); padding:28px 0; }
.partner-services h3 { font-size:1.2rem; margin-bottom:6px; }
.partner-services p { color:var(--muted); font-size:.875rem; max-width:43ch; }
.partner-services>a>span { font-size:1.6rem; }
.partner-services>a:hover h3 { text-decoration:underline; text-underline-offset:6px; }
.story-section { background:var(--primary); color:var(--bg); padding-block:70px; }
.story-grid { display:grid; grid-template-columns:1fr 1.15fr; gap:110px; align-items:center; }
.story-title>p { color:var(--on-dark); font-size:.8rem; margin-bottom:20px; }
.story-title h2 { color:var(--accent); }
.story-copy>p:first-child { font-size:1.3rem; font-weight:550; line-height:1.6; }
.story-body { color:var(--on-dark); margin-top:20px; font-size:.875rem; }
.story-copy>span { display:block; margin-top:24px; font-size:.75rem; color:var(--on-dark); }
.faq-section { display:grid; grid-template-columns:1fr 1.15fr; gap:110px; }
.faq-section>div>p { margin-top:24px; color:var(--muted); font-size:.875rem; }
.faq-section .text-link { margin-top:12px; color:var(--primary); }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:22px 0; cursor:pointer; list-style:none; font-size:.925rem; font-weight:700; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary>span { font-size:1.5rem; font-weight:400; transition:transform .2s ease-out; }
.faq-list details[open] summary>span { transform:rotate(45deg); }
.faq-list details>p { padding:0 35px 23px 0; font-size:.875rem; color:var(--muted); }
.closing { background:var(--surface); padding-block:55px; }
.closing>.wrap { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.closing h2 { font-size:clamp(2.3rem,3.7vw,3rem); }
.site-footer { padding-top:60px; }
.footer-grid { display:grid; grid-template-columns:1fr 1fr 1.2fr; gap:50px; padding-bottom:45px; }
.footer-grid>div>p { font-size:.8rem; color:var(--muted); margin-top:12px; }
.footer-grid h2 { font-family:var(--body); font-size:.85rem; letter-spacing:0; font-weight:750; line-height:1.5; margin-bottom:14px; }
.footer-grid>div>a:not(.wordmark) { display:block; font-size:.8rem; padding-block:3px; overflow-wrap:anywhere; }
.footer-grid>div>a:hover:not(.wordmark) { text-decoration:underline; text-underline-offset:4px; }
.footer-bottom { display:flex; justify-content:space-between; gap:24px; border-top:1px solid var(--line); padding-block:22px; color:var(--muted); font-size:.75rem; }
.footer-bottom a { color:var(--primary); }
.notice { margin-bottom:24px; padding:16px; background:var(--surface); font-size:.875rem; }
.notice a { text-decoration:underline; }

@media(min-width:821px) { .mobile-nav { display:none!important; } }
@media(max-width:1100px) {
  .estimate-grid { gap:50px; grid-template-columns:.75fr 1.25fr; }
  .request-panel { padding:27px; }
  .more-help-grid,.story-grid,.faq-section { gap:60px; }
  .service-row { gap:30px; }
  .process-list { gap:35px; }
}
@media(max-width:900px) {
  .estimate-grid { grid-template-columns:1fr; gap:36px; }
  .estimate-intro { display:grid; grid-template-columns:1fr 1fr; gap:0 45px; padding:0; }
  .estimate-intro .location-label { grid-column:1 / -1; }
  .estimate-intro h2 { grid-row:2 / 4; }
  .estimate-intro>p:not(.location-label) { margin-top:0; max-width:44ch; }
  .pricing-note { grid-column:2; margin-top:20px; padding-top:20px; }
  .contact-note { margin-top:25px; }
  .request-panel { max-width:680px; width:100%; margin-inline:auto; padding:35px; }
  .process-list { gap:25px; }
  .service-row { grid-template-columns:1fr 1fr 36px; gap:25px; }
  .round-arrow { width:36px; height:36px; }
  .service-row h3 { font-size:1.125rem; }
  .service-row>p { font-size:.85rem; }
  .more-help-grid,.story-grid,.faq-section { gap:40px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:30px; }
  .footer-grid>div:last-child { grid-column:2; }
  .footer-grid>div:first-child { grid-row:1 / 3; }
}
@media(max-width:680px) {
  .service-row { grid-template-columns:1fr 40px; gap:12px 18px; padding-block:25px; }
  .service-row>p { grid-column:1; grid-row:2; font-size:.875rem; }
  .service-row .round-arrow { grid-column:2; grid-row:1 / 3; }
  .service-row h3 { font-size:1.125rem; }
  .service-note { font-size:.8rem; }
  .process-section { padding-block:55px 60px; }
  .process-list { grid-template-columns:1fr; gap:29px; }
  .process-list li { display:grid; grid-template-columns:35px 1fr; gap:0 18px; }
  .process-list .step-number { grid-row:1 / 3; font-size:2.25rem; }
  .process-list h3 { margin-bottom:9px; }
  .process-list p { grid-column:2; max-width:47ch; }
  .process-section .section-heading { margin-bottom:34px; }
  .estimate-section { padding-block:58px; }
  .estimate-intro { display:block; }
  .estimate-intro h2 { font-size:3.25rem; }
  .estimate-intro>p:not(.location-label) { margin-top:22px; }
  .pricing-note { margin-top:24px; }
  .pricing-note p { max-width:48ch; }
  .contact-note { margin-top:23px; }
  .request-panel { padding:25px 20px 21px; border-radius:8px; }
  .form-progress { gap:8px; margin-bottom:24px; padding-bottom:20px; }
  .form-progress li { font-size:.75rem; gap:6px; }
  .form-progress li>span { width:21px; height:21px; font-size:.75rem; }
  .form-step legend { font-size:1.15rem; }
  .service-options { gap:8px; margin-bottom:24px; }
  .service-options label { padding:11px 9px; gap:7px; font-size:.8rem; }
  .service-options label:has(input:checked) { padding:10px 8px; }
  .field-pair { grid-template-columns:1fr; gap:0; }
  .form-actions { flex-wrap:wrap; gap:8px; }
  .form-actions .button { padding-inline:14px; gap:12px; }
  .form-actions .form-step-label { font-size:.75rem; }
  .form-actions:has(#back-step:not([hidden])) .form-step-label { display:none; }
  .request-summary>div { grid-template-columns:75px 1fr; gap:12px; }
  .more-help-grid,.story-grid,.faq-section { grid-template-columns:1fr; gap:32px; }
  .more-help-description { max-width:48ch; }
  .more-help-grid h2 br:nth-child(2) { display:none; }
  .story-section { padding-block:55px; }
  .story-title h2 { font-size:2.8rem; }
  .story-copy>p:first-child { font-size:1.15rem; }
  .story-grid { gap:27px; }
  .faq-section { gap:35px; }
  .closing { padding-block:40px; }
  .closing>.wrap { align-items:flex-start; flex-direction:column; gap:25px; }
  .footer-grid { display:block; padding-bottom:30px; }
  .footer-grid>div+div { margin-top:27px; }
  .site-footer { padding-top:44px; }
  .footer-bottom { gap:10px; flex-direction:column; font-size:.75rem; }
}

@media(max-width:380px){.form-progress li{flex-direction:column;flex:1;min-width:0;white-space:normal;text-align:center;gap:6px}}

.field>label,#copy-fallback>label{font-size:.875rem}.footer-grid>div>a:not(.wordmark){font-size:.875rem}

/* Shared pages retain the original navy and orange identity. */
@media(min-width:681px) and (max-width:820px) {
  .hero-grid { grid-template-columns:1fr; }
  .hero h1 { font-size:clamp(4.5rem,10vw,6rem); }
  .hero-actions { flex-direction:row; align-items:center; flex-wrap:wrap; }
  .hero-photo { min-height:0; }
  .hero-photo img { height:auto; min-height:0; aspect-ratio:1.5; }
}
.desktop-nav { gap:23px; }
.desktop-nav [aria-current="page"],.mobile-nav [aria-current="page"] { text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:3px; text-underline-offset:8px; }
.nav-login { border-left:1px solid var(--line); padding-left:23px; }
.footer-bottom nav { display:flex; flex-wrap:wrap; gap:24px; }
.inline-link { text-decoration:underline; text-underline-offset:3px; }
.story-link { display:flex; margin-top:25px; }
.page-intro { background:var(--primary); color:var(--bg); padding-block:65px 72px; }
.page-intro h1 { font-family:var(--display); font-size:clamp(3.5rem,6.5vw,5.5rem); line-height:1.02; letter-spacing:-.02em; max-width:20ch; }
.page-intro h1 span { color:var(--accent); }
.page-intro .location-label { margin-bottom:20px; }
.page-lead { max-width:58ch; color:var(--on-dark); margin-top:25px; font-size:1.05rem; }
.service-feature,.prose-split { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.service-feature h2 { margin-top:12px; }
.service-feature p,.prose-split p { color:var(--muted); margin-top:24px; max-width:52ch; }
.service-feature .button { margin-top:30px; }
.scope-list { background:var(--surface); padding:36px; align-self:start; }
.scope-list h3 { font-size:1.1rem; }
.scope-list ul { padding-left:20px; margin:20px 0 0; }
.scope-list li { padding-bottom:14px; }
.scope-list p { font-size:.875rem; margin-top:15px; }
.prose-split p:first-child { margin-top:0; }
.prose-split .text-link { margin-top:28px; }
.about-story { display:grid; grid-template-columns:1fr 1.05fr; align-items:start; gap:80px; }
.about-photo img { width:100%; height:420px; object-fit:cover; }
.about-photo>p { color:var(--muted); font-size:.875rem; padding-top:15px; }
.about-story h2 { margin-bottom:28px; }
.about-story>div>p:not(.founder-signature) { margin-bottom:20px; color:var(--muted); }
.founder-signature { margin-top:30px; font-weight:750; }
.founder-signature span { font-size:.875rem; color:var(--muted); font-weight:500; }
.contact-strip { display:flex; justify-content:space-between; gap:30px; padding-block:40px; border-bottom:1px solid var(--line); }
.contact-strip>div { min-width:0; }
.contact-strip h2 { font-family:var(--body); font-size:.875rem; font-weight:600; color:var(--muted); margin-bottom:10px; }
.contact-strip a { font-size:1rem; font-weight:750; overflow-wrap:anywhere; }
.contact-strip a:hover { text-decoration:underline; text-underline-offset:4px; }
@media(max-width:1120px) { .desktop-nav { display:none; } .menu-toggle { display:inline-flex; align-items:center; gap:12px; } }
@media(min-width:1121px) { .mobile-nav { display:none!important; } }
@media(max-width:900px) { .about-story,.service-feature,.prose-split { gap:40px; } .contact-strip { flex-wrap:wrap; gap:25px 45px; } .scope-list { padding:28px; } }
@media(max-width:680px) { .page-intro { padding-block:42px 50px; } .page-intro h1 { font-size:clamp(3.3rem,13vw,4.5rem); } .page-lead { font-size:1rem; } .about-story,.service-feature,.prose-split { grid-template-columns:1fr; gap:34px; } .about-photo img { height:300px; } .about-story>div:nth-child(2) { grid-row:1; } .contact-strip { flex-direction:column; padding-block:30px; } .footer-bottom nav { gap:20px; } }
