:root{--bg:#f7f7f5;--fg:#0b0b0b;--accent:#b00000;--surface:#fff;--muted:#5f6368;--border:#d6d6d4;--font-display:"Stack Sans Headline", system-ui, sans-serif;--font-body:"Manrope", system-ui, sans-serif;--radius:8px;--border-w:1px;--space:4px;--max:1120px;--nav-h:72px;--motion-fast:.18s;--motion-base:.36s;--motion-ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}ul{list-style:none}html.motion-loading [data-motion-header]{opacity:0;transform:translateY(-10px)}html.motion-loading [data-motion-hero-image]{opacity:.68;transform:scale(1.035)}html.motion-loading [data-motion-hero-item]{opacity:0;transform:translateY(18px)}html.motion-reveals [data-motion-reveal]:not([data-motion-revealed]){opacity:0;filter:blur(5px);will-change:opacity, filter, transform;transform:translateY(-14px)}.wrap{width:min(100% - 40px, var(--max));margin-inline:auto}.eyebrow{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;font-weight:600;line-height:1.12}h1{letter-spacing:-.025em;font-size:clamp(36px,5vw,56px)}h2{letter-spacing:-.02em;font-size:clamp(28px,3.2vw,40px)}h3{letter-spacing:-.01em;font-size:20px;line-height:1.25}.lead{color:var(--muted);text-wrap:pretty;max-width:52ch;font-size:17px;line-height:1.6}.muted{color:var(--muted)}.small{letter-spacing:.01em;color:var(--muted);font-size:13px}.btn{border-radius:var(--radius);border:var(--border-w) solid transparent;min-height:48px;font-family:var(--font-display);letter-spacing:.02em;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:14px;font-weight:500;transition:background .15s,color .15s,border-color .15s,transform .12s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:#0b0b0b;border-color:#0b0b0b}.btn-secondary{background:var(--surface);color:var(--fg);border-color:var(--border)}.btn-secondary:hover{border-color:var(--fg)}.btn-ghost{color:var(--fg);background:0 0;border-color:#0000;padding-inline:12px}.btn-ghost:hover{color:var(--muted)}.btn-block{width:100%}.ph-img{border:var(--border-w) solid var(--border);border-radius:var(--radius);color:var(--muted);text-align:center;background:linear-gradient(135deg,#f7f7f5 0%,#d6d6d4 100%);place-items:center;display:grid;position:relative;overflow:hidden}.ph-img:after{content:"";opacity:.35;pointer-events:none;background:repeating-linear-gradient(-45deg,#0000,#0000 10px,#d6d6d4 10px 11px);position:absolute;inset:0}.ph-img .ph-meta{z-index:1;max-width:90%;padding:16px;position:relative}.ph-img .ph-label{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--fg);margin-bottom:6px;font-size:12px;font-weight:500}.ph-img .ph-ratio{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:11px}.ph-img .ph-prompt{color:var(--muted);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin-top:10px;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.site-header{z-index:50;border-bottom:var(--border-w) solid transparent;background-color:#0000;transition:background-color .25s,border-color .25s,box-shadow .25s;position:fixed;top:0;left:0;right:0}.site-header.is-scrolled{-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--border);background-color:#f7f7f5f5;box-shadow:0 6px 24px #0b0b0b14}.site-header:not(.is-scrolled) .nav-logo{filter:brightness(0)invert()}.nav{height:var(--nav-h);justify-content:space-between;align-items:center;gap:24px;display:flex}.logo{flex-shrink:0;align-items:center;min-width:0;display:inline-flex}.nav-logo{width:160px;height:auto}.nav-links{align-items:center;gap:4px;display:flex}.nav-links a{font-family:var(--font-display);letter-spacing:.02em;border-radius:var(--radius);color:var(--muted);padding:10px 12px;font-size:13px;font-weight:500;transition:color .15s,background .15s}.site-header:not(.is-scrolled) .nav-links a{color:#fff}.site-header:not(.is-scrolled) .nav-links a:hover{color:#fff;background:#ffffff24}.nav-links a:hover{color:var(--fg);background:var(--surface)}.nav-actions{align-items:center;gap:10px;display:flex}.nav-toggle{border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;place-items:center;width:44px;height:44px;display:none}.nav-toggle span{background:var(--fg);width:16px;height:1.5px;transition:background-color var(--motion-fast) ease;display:block;position:relative}.nav-toggle span:before,.nav-toggle span:after{content:"";background:var(--fg);width:16px;height:1.5px;transition:top var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);position:absolute;left:0}.nav-toggle span:before{top:-5px}.nav-toggle span:after{top:5px}.nav-toggle[aria-expanded=true] span{background:0 0}.nav-toggle[aria-expanded=true] span:before{top:0;transform:rotate(45deg)}.nav-toggle[aria-expanded=true] span:after{top:0;transform:rotate(-45deg)}.hero{background:#0b0b0b;align-items:flex-end;min-height:min(88vh,760px);padding:0;display:flex;position:relative;overflow:hidden}.hero-bg{object-fit:cover;z-index:0;border:0;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.hero-scrim{z-index:1;pointer-events:none;opacity:.88;background:linear-gradient(90deg,#0b0b0b 0% 38%,#0000 72%),linear-gradient(#0000 58%,#0b0b0b 100%);position:absolute;inset:0}.hero-content{z-index:2;width:min(100% - 40px, var(--max));margin-inline:auto;padding:88px 0 64px;position:relative}.hero-copy{color:#fff;flex-direction:column;justify-content:flex-end;gap:22px;max-width:640px;display:flex}.hero-copy .eyebrow,.hero-copy .lead,.hero-copy .muted{color:#d6d6d4}.trust-row{flex-wrap:wrap;gap:10px;display:flex}.trust-chip{border:var(--border-w) solid #5f6368;letter-spacing:.01em;color:#fff;background:#0b0b0b;border-radius:999px;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.trust-chip.rating .stars{font-family:var(--font-display);letter-spacing:.04em;font-variant-numeric:tabular-nums;font-weight:600}.trust-chip.experience .experience-value{font-family:var(--font-display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-weight:600}.hero-ctas{flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.btn-outline-light{color:#fff;background:0 0;border-color:#d6d6d4}.btn-outline-light:hover{color:#0b0b0b;background:#fff;border-color:#fff}section{padding:72px 0}section[id]{scroll-margin-top:var(--nav-h)}section.hero{padding:0}.section-head{flex-direction:column;gap:12px;max-width:640px;margin-bottom:36px;display:flex}.section-head.row{flex-direction:row;justify-content:space-between;align-items:end;gap:24px;max-width:none}.section-head.row .lead{margin:0}.trust-bar{padding:24px 0}.trust-bar-inner{background:var(--border);border:var(--border-w) solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.trust-item{background:var(--surface);flex-direction:column;gap:12px;padding:24px;display:flex}.trust-item-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.trust-item strong{font-family:var(--font-display);letter-spacing:-.01em;font-size:15px;font-weight:600}.trust-item-value{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:22px;font-weight:600;line-height:1}.trust-item-icon{width:32px;height:32px;color:var(--fg);flex-shrink:0}.trust-item p{color:var(--muted);font-size:13px;line-height:1.5}.services{background:var(--surface);border-block:var(--border-w) solid var(--border)}.service-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.service-card{background:var(--bg);border:var(--border-w) solid var(--border);border-radius:var(--radius);will-change:transform;flex-direction:column;transition:border-color .15s;display:flex;overflow:hidden}.service-card:hover{border-color:var(--fg)}.service-card .ph-img{aspect-ratio:4/3;border:0;border-bottom:var(--border-w) solid var(--border);border-radius:0}.service-card img.service-img{aspect-ratio:4/3;object-fit:cover;border:0;border-bottom:var(--border-w) solid var(--border);will-change:transform;border-radius:0;width:100%;height:auto;display:block}.service-body{flex-direction:column;flex:1;gap:8px;padding:18px 18px 20px;display:flex}.service-body p{color:var(--muted);flex:1;font-size:14px;line-height:1.5}.service-tag{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:500}.testimonials{background:var(--surface);border-block:var(--border-w) solid var(--border);overflow:hidden}.testimonials-head{margin-bottom:48px}.testimonials-head .section-head{margin-bottom:0}.testimonial-viewport{outline:none;padding:10px 0 18px;overflow:hidden}.testimonial-viewport:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.testimonials-track{touch-action:pan-y;display:grid}.testimonial-slide{opacity:0;pointer-events:none;will-change:transform, opacity;flex-direction:column;grid-area:1/1;justify-self:center;width:calc(33.3333% - 24px);min-height:318px;padding:8px;transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .45s;display:flex;transform:translate(0)scale(.92)}.testimonial-viewport.is-motion-ready .testimonial-slide{transition:none}.testimonial-slide[data-position="-2"]{transform:translate(calc(-200% - 72px))scale(.92)}.testimonial-slide[data-position="-1"]{opacity:.28;pointer-events:auto;cursor:pointer;transform:translate(calc(-100% - 36px))scale(.94)}.testimonial-slide[data-position="0"]{opacity:1;pointer-events:auto;transform:translate(0)scale(1)}.testimonial-slide[data-position="1"]{opacity:.28;pointer-events:auto;cursor:pointer;transform:translate(calc(100% + 36px))scale(.94)}.testimonial-slide[data-position="-1"]:hover,.testimonial-slide[data-position="1"]:hover,.testimonial-slide[data-position="-1"]:focus-visible,.testimonial-slide[data-position="1"]:focus-visible{opacity:.48}.testimonial-slide:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.testimonial-slide[data-position="2"]{transform:translate(calc(200% + 72px))scale(.92)}.testimonial-quote-mark{min-height:54px;color:var(--fg);font-family:Georgia,serif;font-size:64px;font-weight:700;line-height:.9;display:block}.testimonial-slide blockquote{flex-direction:column;flex:1;gap:30px;display:flex}.testimonial-rating{color:var(--muted);letter-spacing:.02em;gap:4px;font-size:16px;line-height:1;display:flex}.testimonial-star.is-filled{color:var(--accent)}.testimonial-slide blockquote>p{font-family:var(--font-display);letter-spacing:-.012em;text-wrap:pretty;font-size:18px;font-weight:500;line-height:1.55}.testimonial-slide blockquote footer{flex-direction:column;gap:3px;margin-top:auto;display:flex}.testimonial-slide cite{font-family:var(--font-display);font-size:14px;font-style:normal;font-weight:600}.testimonial-slide blockquote footer span{color:var(--muted);font-size:12px}.location-grid{grid-template-columns:1fr 1.2fr;align-items:stretch;gap:20px;display:grid}.location-card{background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius);flex-direction:column;gap:20px;padding:28px;display:flex}.location-card h2{max-width:12ch}.location-list{flex-direction:column;gap:14px;display:flex}.location-list li{border-bottom:var(--border-w) solid var(--border);grid-template-columns:88px 1fr;gap:12px;padding-bottom:14px;font-size:15px;display:grid}.location-list li:last-child{border-bottom:0;padding-bottom:0}.location-list dt,.location-list .label{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:3px;font-size:12px;font-weight:500}.map-ph{height:100%;min-height:360px}.forms{background:var(--surface);border-block:var(--border-w) solid var(--border)}.forms-layout{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(40px,7vw,96px);display:grid}.contact-intro{padding-top:8px}.contact-intro .section-head{margin-bottom:0}.contact-details{flex-direction:column;gap:16px;margin-top:40px;display:flex}.contact-detail{border-bottom:var(--border-w) solid var(--border);flex-direction:column;gap:4px;padding-bottom:16px;display:flex}.contact-detail-label{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.contact-detail a{font-size:15px;font-weight:500}.contact-detail a:hover{color:var(--accent)}.contact-callout{background:var(--fg);border-radius:var(--radius);color:#fff;flex-direction:column;gap:8px;margin-top:28px;padding:20px;display:flex}.contact-callout strong{font-family:var(--font-display);font-size:15px;font-weight:500;line-height:1.35}.contact-callout p{color:#d6d6d4;font-size:13px;line-height:1.5}.form-card{background:var(--bg);border:var(--border-w) solid var(--border);border-radius:var(--radius);flex-direction:column;gap:20px;padding:28px;display:flex}.form-card header{flex-direction:column;gap:8px;display:flex}.form-card header p{color:var(--muted);max-width:42ch;font-size:14px}.field{flex-direction:column;gap:6px;display:flex}.field label{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.field input,.field select,.field textarea{background:var(--surface);border:var(--border-w) solid var(--border);border-radius:var(--radius);outline:none;width:100%;min-height:48px;padding:12px 14px;transition:border-color .15s}.field textarea{resize:vertical;min-height:120px;line-height:1.5}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--fg)}.field-error{color:var(--accent);font-size:12px;display:none}.field.is-invalid .field-error{display:block}.field.is-invalid input,.field.is-invalid select,.field.is-invalid textarea{border-color:var(--accent)}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-note{color:var(--muted);font-size:12px;line-height:1.45}.form-status{border-radius:var(--radius);border:var(--border-w) solid var(--border);background:var(--surface);padding:12px 14px;font-size:14px;display:none}.form-status.is-visible{display:block}.form-status.ok{border-color:var(--fg)}.site-footer{padding:40px 0 48px}.footer-grid{border-bottom:var(--border-w) solid var(--border);grid-template-columns:1.4fr 1fr 1fr;gap:32px;margin-bottom:20px;padding-bottom:28px;display:grid}.footer-brand{flex-direction:column;gap:14px;max-width:36ch;display:flex}.footer-logo-link{align-self:flex-start}.footer-logo{width:160px;height:auto}.footer-brand p{color:var(--muted);font-size:14px;line-height:1.55}.footer-col h4{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-size:12px;font-weight:500}.footer-col a,.footer-col p{color:var(--fg);padding:5px 0;font-size:14px;display:block}.footer-col a:hover{color:var(--muted)}.footer-bottom{color:var(--muted);letter-spacing:.02em;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:12px;display:flex}.footer-credit{color:var(--fg);align-items:center;gap:6px;text-decoration:none;transition:color .18s;display:inline-flex;position:relative}.footer-credit:before{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .18s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.footer-credit:after{content:"↗";font-size:14px;line-height:1;transition:transform .18s}.footer-credit:hover,.footer-credit:focus-visible{color:var(--muted)}.footer-credit:hover:before,.footer-credit:focus-visible:before{transform-origin:0;transform:scaleX(1)}.footer-credit:hover:after,.footer-credit:focus-visible:after{transform:translate(2px,-2px)}.nav-drawer{border-top:var(--border-w) solid var(--border);background:var(--bg);padding:12px 20px 20px;display:none}.nav-drawer.is-open{display:block;overflow:hidden}.nav-drawer>a{border-bottom:var(--border-w) solid var(--border);font-family:var(--font-display);padding:14px 0;font-size:15px;font-weight:500;display:block}.nav-drawer .drawer-actions{flex-direction:column;gap:10px;margin-top:16px;display:flex}@media (width<=980px){.location-grid,.footer-grid,.forms-layout{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.testimonial-slide{width:min(64vw,520px)}.testimonial-slide[data-position="-2"]{transform:translate(calc(-200% - 56px))scale(.92)}.testimonial-slide[data-position="-1"]{transform:translate(calc(-100% - 28px))scale(.94)}.testimonial-slide[data-position="1"]{transform:translate(calc(100% + 28px))scale(.94)}.testimonial-slide[data-position="2"]{transform:translate(calc(200% + 56px))scale(.92)}.nav-links,.nav-actions .btn-secondary{display:none}.nav-toggle{display:grid}.hero{min-height:min(92vh,700px)}.hero-scrim{opacity:.92;background:linear-gradient(#0000 0%,#0b0b0b 58% 100%)}.hero-bg .ph-meta{display:none}.section-head.row{flex-direction:column;align-items:start}}@media (width<=640px){.wrap{width:min(100% - 28px, var(--max))}.nav{gap:12px}section{padding:56px 0}.hero-content{width:min(100% - 28px, var(--max));padding:72px 0 48px}.service-grid,.trust-bar-inner,.form-row{grid-template-columns:1fr}.testimonials-head{margin-bottom:34px}.testimonial-viewport{margin-inline:-14px;padding-inline:14px}.testimonial-slide{width:min(76vw,360px);min-height:350px;padding-inline:4px}.testimonial-slide[data-position="-2"]{transform:translate(calc(-200% - 36px))scale(.92)}.testimonial-slide[data-position="-1"]{opacity:.22;transform:translate(calc(-100% - 18px))scale(.94)}.testimonial-slide[data-position="1"]{opacity:.22;transform:translate(calc(100% + 18px))scale(.94)}.testimonial-slide[data-position="2"]{transform:translate(calc(200% + 36px))scale(.92)}.testimonial-slide blockquote>p{font-size:17px}.hero-ctas .btn{width:100%}.location-list li{grid-template-columns:1fr;gap:4px}.nav-logo{width:128px}.footer-bottom{flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.footer-credit,.footer-credit:before,.footer-credit:after{transition:none}html.motion-loading [data-motion-header],html.motion-loading [data-motion-hero-image],html.motion-loading [data-motion-hero-item]{opacity:1;transform:none}html.motion-reveals [data-motion-reveal]:not([data-motion-revealed]){opacity:1;filter:none;will-change:auto;transform:none}.btn,.site-header,.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{transition-duration:.01ms}.testimonial-slide{transition:none}}
