/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.resize{resize:both}}:root{--ink:#171914;--muted:#626657;--cream:#f4f0e7;--paper:#fbf8f1;--olive:#3e4720;--olive-light:#697246;--olive-dark:#252c12;--line:#2b2f1b2e;--shadow:0 20px 55px #20251221;--header-height:88px;--serif:Georgia, "Times New Roman", serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%;scroll-padding-top:calc(var(--header-height) + 20px);overflow-x:hidden}body{max-width:100%;color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.55;overflow-x:hidden}body:before{z-index:-1;content:"";pointer-events:none;opacity:.25;background-image:radial-gradient(circle at 20% 20%,#3e47201a 0 .6px,#0000 .8px),radial-gradient(circle at 80% 60%,#17191414 0 .5px,#0000 .7px);background-size:7px 7px,11px 11px;position:fixed;inset:0}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit}:is(button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible){outline-offset:3px;outline:3px solid #bdc888}.shell{width:min(1180px,100% - 48px);margin-inline:auto}.section{padding:108px 0}.site-header{z-index:100;width:min(1180px,100% - 32px);height:72px;color:var(--ink);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f9f6eef0;border:1px solid #262a1824;border-radius:8px;position:fixed;top:12px;left:50%;right:auto;transform:translate(-50%);box-shadow:0 12px 38px #1f241229}.site-header.menu-is-open{background:#f9f6eefc}.header-inner{align-items:center;gap:32px;width:100%;height:100%;padding-inline:22px;display:flex}.brand{flex:0 0 154px;justify-content:center;align-items:center;width:154px;height:58px;display:flex}.brand img{object-fit:contain;width:100%;height:auto}.desktop-nav{justify-content:center;align-items:center;gap:clamp(18px,2vw,32px);margin-left:auto;display:flex}.desktop-nav a{color:#303326;letter-spacing:.1em;text-transform:uppercase;padding:24px 0 20px;font-size:.76rem;font-weight:800;position:relative}.desktop-nav a:after{content:"";background:currentColor;height:2px;transition:left .18s,right .18s;position:absolute;bottom:15px;left:50%;right:50%}.desktop-nav a:hover:after{left:0;right:0}.desktop-nav a:focus-visible:after{left:0;right:0}.header-actions,.header-phone{align-items:center;display:flex}.header-actions{gap:16px}.header-phone{white-space:nowrap;color:var(--ink);gap:8px;font-size:.84rem;font-weight:800}.button{letter-spacing:.085em;text-transform:uppercase;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:10px;min-height:54px;padding:0 25px;font-size:.78rem;font-weight:850;line-height:1;transition:transform .18s,background .18s,color .18s,border-color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--olive{color:#fffdf6;background:var(--olive);box-shadow:0 10px 20px #30391526}.button--olive:hover{background:var(--olive-dark)}.header-quote{min-height:46px;padding-inline:20px;font-size:.68rem}.menu-toggle{border:1px solid var(--line);width:48px;height:48px;color:var(--ink);background:0 0;border-radius:3px;justify-content:center;align-items:center;display:none}.mobile-nav{display:none}.hero{color:#fff;background:#182111;height:100svh;min-height:680px;position:relative;overflow:hidden}.hero-image,.hero-scrim{width:100%;height:100%;position:absolute;inset:0}.hero-image{object-fit:cover;object-position:center;animation:1.2s cubic-bezier(.2,.75,.3,1) both hero-enter}.hero-scrim{background:linear-gradient(#f4f0e780 0%,#f4f0e71f 18%,#0000 34%),radial-gradient(64% 66% at 17% 59%,#0c1109e8 0%,#0c1109c2 38%,#0c11094d 68%,#0000 100%),linear-gradient(#0000 52%,#0d110866)}.hero-inner{z-index:2;height:100%;min-height:680px;padding-block:calc(var(--header-height) + 44px) 80px;align-items:center;display:flex;position:relative}.hero-copy{width:min(680px,66%);animation:.8s ease-out .15s both copy-enter}.eyebrow{color:var(--olive);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 18px;font-size:.73rem;font-weight:850;line-height:1.2;display:flex}.hero-eyebrow{color:#dfe8af}.hero h1{max-width:700px;font-family:var(--serif);letter-spacing:-.055em;text-wrap:balance;text-shadow:0 4px 28px #00000047;margin:0;font-size:clamp(4.3rem,7.2vw,6.6rem);font-weight:700;line-height:.88}.hero-lede{color:#ffffffe0;max-width:600px;font-family:var(--serif);margin:30px 0 34px;font-size:clamp(1.15rem,1.6vw,1.4rem);line-height:1.5}.hero-buttons{flex-wrap:wrap;gap:14px;display:flex}.hero-buttons .button{min-width:196px}.button--cream{color:var(--ink);background:var(--cream)}.button--cream:hover{background:#fff}.button--ghost,.button--outline-cream{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#13190c2e;border-color:#ffffffc2}.button--ghost:hover,.button--outline-cream:hover{color:var(--ink);border-color:var(--cream);background:var(--cream)}.hero-proof{color:#fffc;gap:24px;margin-top:34px;font-size:.83rem;font-weight:700;display:flex}.hero-proof span{align-items:center;gap:7px;display:flex}.section-heading h2,.about h2,.contact h2{font-family:var(--serif);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(2.7rem,4.8vw,4.6rem);font-weight:700;line-height:.98}.heading-row{justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px;display:flex}.heading-row h2{max-width:790px}.carousel-controls{flex:none;gap:10px;display:flex}.carousel-controls button{border:1px solid var(--line);width:48px;height:48px;color:var(--olive);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;transition:color .18s,background .18s;display:inline-flex}.carousel-controls button:hover{color:#fff;background:var(--olive)}.services{background:linear-gradient(#fffdf8f5,#fffdf8f5),repeating-linear-gradient(45deg,#0000 0 4px,#38401e0a 4px 5px);position:relative;overflow:hidden}.services:after{content:"";border:1px solid #40482514;border-radius:50%;width:480px;height:480px;position:absolute;top:-220px;right:-180px;box-shadow:0 0 0 75px #40482506,0 0 0 150px #40482505}.service-track{z-index:2;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:calc(25% - 13.5px);grid-auto-flow:column;gap:18px;padding:8px 3px 22px;display:grid;position:relative;overflow-x:auto}.service-track::-webkit-scrollbar{display:none}.service-card{border:1px solid var(--line);scroll-snap-align:start;background:#faf7ef;border-radius:6px;flex-direction:column;min-height:470px;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 20px #272c170a}.service-card:hover{box-shadow:var(--shadow);border-color:#3e47205c;transform:translateY(-7px)}.service-image{background:var(--olive-dark);flex:0 0 190px;width:100%;height:190px;position:relative;overflow:hidden}.service-image:after{content:"";background:linear-gradient(#10150908,#10150952);position:absolute;inset:0}.service-image img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.65,.25,1)}.service-card:hover .service-image img{transform:scale(1.045)}.service-number{z-index:2;color:#fff;min-width:36px;height:36px;font-family:var(--serif);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#14190d4d;border:1px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex;position:absolute;top:16px;right:18px}.service-icon{z-index:3;color:#fff;background:var(--olive);border:5px solid #faf7ef;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:inline-flex;position:absolute;top:158px;left:50%;transform:translate(-50%);box-shadow:0 10px 20px #3e472033}.service-icon svg{stroke-width:1.6px;width:27px;height:27px}.service-content{text-align:center;flex-direction:column;flex:1;align-items:center;width:100%;padding:47px 28px 28px;display:flex}.service-card h3{font-family:var(--serif);margin:0 0 12px;font-size:1.4rem;line-height:1.08}.service-card p{color:var(--muted);margin:0 0 24px;font-size:.9rem;line-height:1.55}.service-card a,.text-link{color:var(--olive);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;margin-top:auto;font-size:.74rem;font-weight:850;display:inline-flex}.service-card a svg,.text-link svg{transition:transform .18s}.service-card a:hover svg,.text-link:hover svg{transform:translate(4px)}.about{background:var(--cream);overflow:hidden}.about-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(52px,7vw,100px);display:grid}.about-image-wrap{min-height:600px;position:relative}.about-image-wrap:before{z-index:0;content:"";border:1px solid #3e472057;width:55%;height:55%;position:absolute;top:-22px;left:-22px}.about-image-wrap>img{z-index:1;object-fit:cover;width:100%;height:100%;box-shadow:var(--shadow);position:absolute;inset:0}.experience-card{z-index:2;color:#fff;background:var(--olive);flex-direction:column;justify-content:center;width:230px;min-height:120px;padding:24px;display:flex;position:absolute;bottom:28px;right:-24px;box-shadow:0 16px 35px #22281138}.experience-card strong{font-family:var(--serif);font-size:1.45rem;line-height:1}.experience-card span{color:#ffffffb3;margin-top:8px;font-size:.8rem}.about-copy>p:not(.eyebrow){color:var(--muted);margin:28px 0 34px;font-size:1.03rem;line-height:1.72}.about-points{gap:18px;margin-bottom:34px;display:grid}.about-points>div{grid-template-columns:42px 1fr;align-items:start;gap:14px;display:grid}.about-points svg{width:34px;height:34px;color:var(--olive);border:1px solid #3e472040;border-radius:50%;padding:7px}.about-points span{color:var(--muted);font-size:.9rem;line-height:1.5}.about-points strong{color:var(--ink);font-family:var(--serif);margin-bottom:2px;font-size:1rem;display:block}.gallery{background:#fffdf8}.gallery-heading{justify-content:space-between;align-items:end;gap:60px;margin-bottom:42px;display:flex}.gallery-heading>p{max-width:420px;color:var(--muted);margin:0 0 4px}.project-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:210px;gap:16px;display:grid}.project-card{background:var(--olive-dark);border-radius:4px;min-height:0;position:relative;overflow:hidden}.project-card--1{grid-area:span 2/span 7}.project-card--2{grid-area:span 2/span 5}.project-card--3,.project-card--4,.project-card--5{grid-column:span 4}.project-card--6,.project-card--7{grid-column:span 6}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.65,.25,1)}.project-card:hover img{transform:scale(1.045)}.project-overlay{color:#fff;background:linear-gradient(#0000,#0e1108db);padding:45px 24px 22px;position:absolute;bottom:0;left:0;right:0}.project-overlay p{color:#dfe8af;letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px;font-size:.65rem;font-weight:850}.project-overlay h3{font-family:var(--serif);margin:0;font-size:1.35rem}.promise-strip{color:#fff;background:linear-gradient(90deg,#3e4720fa,#2d3518fa),repeating-linear-gradient(135deg,#0000 0 5px,#ffffff14 5px 6px);padding:35px 0}.promise-grid{grid-template-columns:repeat(4,1fr);display:grid}.promise-item{border-right:1px solid #ffffff42;grid-template-columns:44px 1fr;align-items:center;gap:16px;min-height:74px;padding:0 24px;display:grid}.promise-item:first-child{padding-left:0}.promise-item:last-child{border-right:0;padding-right:0}.promise-item>svg{color:#e6edbb;stroke-width:1.6px;width:35px;height:35px}.promise-item strong{letter-spacing:.11em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem;line-height:1.1;display:block}.promise-item span{color:#ffffffb3;font-size:.73rem;line-height:1.35}.reviews{background:var(--cream);overflow:hidden}.centered-heading{text-align:center;max-width:760px;margin:0 auto 44px}.centered-heading .eyebrow{justify-content:center}.review-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.review-card{border:1px solid var(--line);background:#fffdf8c7;border-radius:4px;flex-direction:column;min-height:300px;margin:0;padding:34px;display:flex}.review-stars{gap:5px;margin-bottom:25px;display:flex}.review-stars svg{width:15px;height:15px;color:var(--olive);fill:var(--olive)}.review-card blockquote{font-family:var(--serif);margin:0 0 28px;font-size:1.05rem;font-style:italic;line-height:1.65}.review-card figcaption{border-top:1px solid var(--line);flex-direction:column;margin-top:auto;padding-top:20px;display:flex}.review-card figcaption strong{font-size:.84rem}.review-card figcaption span{color:var(--muted);font-size:.77rem}.contact{color:#fff;background:var(--olive-dark);position:relative;overflow:hidden}.contact>img,.contact-scrim{width:100%;height:100%;position:absolute;inset:0}.contact>img{object-fit:cover;object-position:center 64%}.contact-scrim{background:linear-gradient(90deg,#161b0cf7,#1c230fd6 54%,#161b0cb8)}.contact-inner{z-index:2;grid-template-columns:minmax(0,.88fr) minmax(440px,1.12fr);align-items:center;gap:clamp(52px,7vw,94px);min-height:700px;padding-block:90px;display:grid;position:relative}.contact-copy{max-width:540px}.contact .eyebrow{color:#dfe8af}.contact h2{font-size:clamp(2.8rem,5vw,4.7rem)}.contact-copy>p:not(.eyebrow){color:#ffffffc2;max-width:510px;margin:24px 0 0;font-size:1rem}.contact-direct{gap:15px;margin-top:38px;display:grid}.contact-direct a{align-items:center;gap:14px;font-size:.93rem;font-weight:750;display:flex}.contact-direct a>svg{color:#dfe8af;flex:none}.contact-direct a span{flex-direction:column;display:flex}.contact-direct small{color:#ffffff94;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1px;font-size:.67rem;font-weight:800}.contact-form{color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbf8f1f5;border:1px solid #ffffff47;border-radius:7px;gap:20px;padding:38px;display:grid;box-shadow:0 25px 70px #080c054d}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-form label{color:#303326;letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:850;display:block}.contact-form label>span{color:var(--muted);letter-spacing:.06em;margin-left:3px;font-size:.62rem;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--ink);letter-spacing:0;text-transform:none;background:#fff;border:1px solid #2b2f1b38;border-radius:3px;font-size:.91rem;font-weight:450;transition:border-color .18s,box-shadow .18s}.contact-form input,.contact-form select{height:50px;margin-top:8px;padding-inline:14px}.contact-form textarea{resize:vertical;min-height:128px;margin-top:8px;padding:13px 14px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#858978}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--olive-light);box-shadow:0 0 0 3px #69724621}.contact-form .button{color:#fff;background:var(--olive);cursor:pointer;border:0;width:100%}.contact-form .button:hover{background:var(--olive-dark)}.form-note,.form-status{color:var(--muted);text-align:center;margin:-6px 0 0;font-size:.7rem;line-height:1.45}.form-status:empty{display:none}.form-status{color:var(--olive);font-weight:750}.site-footer{color:#ffffffad;background:#181a17;padding:74px 0 24px}.footer-grid{grid-template-columns:1.45fr 1.35fr .65fr .9fr .65fr;gap:44px;padding-bottom:55px;display:grid}.footer-brand img{background:var(--cream);border-radius:4px;width:205px;padding:8px 12px}.footer-brand p{font-family:var(--serif);margin:16px 0 0;font-size:1rem}.site-footer h2{color:#fff;letter-spacing:.14em;text-transform:uppercase;margin:0 0 17px;font-size:.68rem;font-weight:850}.footer-contact,.footer-links{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.footer-contact>a{align-items:flex-start;gap:9px;font-size:.75rem;line-height:1.5;display:flex}.footer-contact svg{flex:none;margin-top:1px}.footer-links a{font-size:.77rem}.footer-contact a:hover,.footer-links a:hover,.footer-bottom a:hover{color:#fff}.footer-social>div{gap:10px;display:flex}.footer-social a{color:#fff;border:1px solid #ffffff42;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:background .18s;display:inline-flex}.footer-social a:hover{background:var(--olive-light)}.footer-social svg{width:18px;height:18px}.footer-bottom{border-top:1px solid #ffffff21;justify-content:space-between;align-items:center;padding-top:22px;font-size:.7rem;display:flex}.footer-bottom p{margin:0}[data-reveal]{opacity:0;transition:opacity .65s ease var(--delay,0s), transform .65s ease var(--delay,0s);transform:translateY(18px)}[data-reveal].is-visible{opacity:1;transform:none}@keyframes hero-enter{0%{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@keyframes copy-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1120px){.desktop-nav{gap:16px}.header-phone span{display:none}.brand{flex-basis:142px;width:142px}.service-track{grid-auto-columns:calc(33.3333% - 12px)}.promise-grid{grid-template-columns:repeat(2,1fr)}.promise-item:nth-child(2){border-right:0}.promise-item:nth-child(-n+2){border-bottom:1px solid #ffffff38;margin-bottom:25px;padding-bottom:25px}.promise-item:nth-child(3){padding-left:0}.footer-grid{grid-template-columns:1.4fr 1.2fr repeat(3,.7fr);gap:28px}}@media (max-width:960px){:root{--header-height:76px}.desktop-nav,.header-phone,.header-quote{display:none}.header-actions{margin-left:auto}.brand{flex-basis:136px;width:136px;height:54px}.menu-toggle{display:inline-flex}.site-header{width:calc(100% - 24px);height:68px;top:8px}.header-inner{padding-inline:14px}.mobile-nav{visibility:hidden;z-index:90;width:100%;height:100svh;color:var(--ink);background:var(--paper);opacity:0;pointer-events:none;transition:opacity .2s,transform .24s,visibility .24s;display:block;position:fixed;inset:0;overflow-y:auto;transform:translateY(-12px)}.mobile-nav.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:none}.mobile-nav-inner{min-height:100%;padding-top:calc(100px + env(safe-area-inset-top));padding-bottom:calc(36px + env(safe-area-inset-bottom));align-content:start;display:grid}.mobile-nav-inner>a:not(.button){border-bottom:1px solid var(--line);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;min-height:64px;font-size:.82rem;font-weight:800;display:flex}.mobile-nav .button{width:100%;margin-top:24px}.hero,.hero-inner{min-height:640px}.hero-copy{width:min(710px,84%)}.service-track{grid-auto-columns:calc(50% - 9px)}.about-grid{grid-template-columns:1fr}.about-image-wrap{min-height:560px}.about-copy{max-width:680px}.project-grid{grid-auto-rows:190px}.review-grid{grid-template-columns:1fr 1fr}.review-card:last-child{grid-column:span 2;min-height:240px}.contact-inner{grid-template-columns:1fr;align-items:start;gap:44px;min-height:auto}.contact-copy{max-width:680px}.contact-form{width:100%}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-social{grid-column:3}}@media (max-width:700px){.shell{width:min(100% - 32px,580px)}.section{padding:78px 0}.brand{flex-basis:128px;width:128px}.hero,.hero-inner{height:100svh;min-height:640px}.hero-inner{align-items:center;padding-block:88px 44px}.hero-image{object-position:58% center}.hero-scrim{background:linear-gradient(#f4f0e77a 0%,#f4f0e71a 23%,#0a0e0761 50%,#0a0e07e8 100%),linear-gradient(90deg,#0a0e0733,#0000 90%)}.hero-copy{width:100%}.hero h1{font-size:clamp(3.7rem,17vw,5.2rem)}.hero-lede{margin:22px 0 28px;font-size:1.03rem;line-height:1.48}.hero-buttons{grid-template-columns:1fr 1fr;gap:10px;display:grid}.hero-buttons .button{min-width:0;padding-inline:12px;font-size:.68rem}.hero-proof{display:none}.section-heading h2,.about h2,.contact h2{font-size:clamp(2.55rem,12vw,3.6rem)}.heading-row{align-items:flex-end;gap:16px;margin-bottom:30px}.heading-row h2{max-width:440px}.carousel-controls{display:none}.service-track{grid-auto-columns:min(78vw,340px);gap:12px;width:calc(100vw - 16px);margin-right:calc(50% - 50vw);padding-right:28px}.service-card{min-height:450px}.about-grid{gap:58px}.about-image-wrap{min-height:430px}.about-image-wrap:before{top:-12px;left:-12px}.experience-card{width:200px;min-height:100px;padding:20px;bottom:-30px;right:16px}.about-copy>p:not(.eyebrow){margin:22px 0 28px;font-size:.96rem}.gallery-heading{margin-bottom:30px;display:block}.gallery-heading>p{margin-top:18px}.project-grid{grid-template-columns:1fr 1fr;grid-auto-rows:200px;gap:10px}.project-card--1,.project-card--2,.project-card--3,.project-card--4,.project-card--5,.project-card--6,.project-card--7{grid-area:auto;display:block}.project-card--1,.project-card--4,.project-card--7{grid-column:span 2}.project-overlay{padding:45px 16px 16px}.project-overlay h3{font-size:1.05rem}.promise-strip{padding:28px 0}.promise-grid{grid-template-columns:1fr}.promise-item,.promise-item:first-child,.promise-item:nth-child(3),.promise-item:last-child{border-bottom:1px solid #fff3;border-right:0;min-height:92px;margin:0;padding:18px 0}.promise-item:last-child{border-bottom:0}.review-grid{scroll-snap-type:x mandatory;scrollbar-width:none;gap:12px;width:calc(100vw - 16px);margin-right:calc(50% - 50vw);padding-right:28px;display:flex;overflow-x:auto}.review-grid::-webkit-scrollbar{display:none}.review-card,.review-card:last-child{scroll-snap-align:start;grid-column:auto;min-width:min(82vw,350px);min-height:330px;padding:28px}.contact-inner{min-height:auto;padding-block:78px}.contact-form{padding:26px 22px}.form-row{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 28px}.footer-brand,.footer-contact{grid-column:span 2}.footer-brand img{width:190px}.footer-social{grid-column:auto}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}}@media (max-width:430px){.brand{flex-basis:118px;width:118px}.hero h1{font-size:clamp(3.45rem,16vw,4.2rem)}.hero-buttons{grid-template-columns:1fr}.hero-buttons .button{width:100%}.project-grid{grid-template-columns:1fr;grid-auto-rows:220px}.project-card--1,.project-card--4,.project-card--7{grid-column:auto}.contact-form{padding-inline:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}
