:root{--bg: #FAF8F2;--bg-alt: #F0ECDF;--white: #FFFFFF;--ink: #26312D;--ink-deep: #1A2220;--ink-soft: #55645C;--sand: #A7A376;--sand-dark: #8C885E;--sand-light: #EFEADA;--ocean: #4A6670;--line: #DCD6C2;--star: #E0A526;--font: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-head: "Fraunces", Georgia, "Times New Roman", serif;--gutter: clamp(1.1rem, 4.5vw, 4rem);--max: 1200px;--radius: 16px;--shadow: 0 1px 2px rgba(38, 49, 45, .06), 0 10px 30px rgba(38, 49, 45, .08);--shadow-lg: 0 24px 60px rgba(38, 49, 45, .16);--ease: cubic-bezier(.22, .61, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden}img,video{max-width:100%;display:block}a{color:var(--ocean)}h1,h2,h3{font-family:var(--font-head);font-weight:600;line-height:1.12;letter-spacing:-.01em;margin:0 0 .5em;color:var(--ink)}h1{font-size:clamp(2.2rem,5vw,3.7rem)}h2{font-size:clamp(1.8rem,3.6vw,2.7rem)}h3{font-size:1.3rem}h1 em,h2 em{font-style:italic;font-weight:400;color:var(--sand-dark)}p{margin:0 0 1em}:focus-visible{outline:3px solid var(--ocean);outline-offset:3px}.skip-link{position:absolute;left:-999px;top:0;z-index:200;background:var(--ink);color:#fff;padding:.6rem 1rem}.skip-link:focus{left:1rem;top:1rem}.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.eyebrow{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--sand-dark);margin-bottom:.8rem}.lede{font-size:clamp(1.05rem,1.4vw,1.2rem);color:var(--ink-soft);max-width:640px}.muted{color:var(--ink-soft)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:50px;padding:.8rem 1.5rem;border-radius:999px;border:2px solid transparent;font:700 1rem/1.1 var(--font);text-decoration:none;cursor:pointer;text-align:center;transition:transform .2s var(--ease),background .2s,border-color .2s,color .2s,box-shadow .2s}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--ink);color:#fff;box-shadow:0 8px 20px #26312d33}.btn--primary:hover{background:var(--ink-deep)}.btn--sand{background:var(--sand);color:var(--ink-deep)}.btn--sand:hover{background:#b6b286}.btn--outline{border-color:var(--ink);color:var(--ink);background:transparent}.btn--outline:hover{background:var(--ink);color:#fff}.btn--ghost-light{border-color:#ffffffb3;color:#fff}.btn--ghost-light:hover{background:#fff;color:var(--ink)}.btn--lg{min-height:56px;padding:1rem 1.8rem;font-size:1.05rem}.btn svg{width:1.15em;height:1.15em;flex:none}.header{position:sticky;top:0;z-index:50;background:#faf8f2f0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header__inner{display:flex;align-items:center;gap:1.5rem;height:74px;max-width:1320px;margin:0 auto;padding:0 var(--gutter)}.header__logo img{height:52px;width:auto}.header__nav{display:flex;gap:1.6rem;margin-left:auto}.header__nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem;padding:.3rem 0;border-bottom:2px solid transparent}.header__nav a:hover,.header__nav a[aria-current]{border-bottom-color:var(--sand)}.header__actions{display:flex;align-items:center;gap:.9rem}.header__phone{color:var(--ink);font-weight:700;text-decoration:none;white-space:nowrap}.header__actions .btn{min-height:44px;padding:.6rem 1.2rem;font-size:.92rem}.header__toggle{display:none;width:46px;height:46px;border:1px solid var(--line);background:#fff;border-radius:12px;cursor:pointer;place-items:center}.header__toggle span,.header__toggle span:before,.header__toggle span:after{display:block;width:20px;height:2px;background:var(--ink);position:relative;transition:transform .25s,background .25s}.header__toggle span:before,.header__toggle span:after{content:"";position:absolute;left:0}.header__toggle span:before{top:-6px}.header__toggle span:after{top:6px}.header__toggle[aria-expanded=true] span{background:transparent}.header__toggle[aria-expanded=true] span:before{transform:translateY(6px) rotate(45deg)}.header__toggle[aria-expanded=true] span:after{transform:translateY(-6px) rotate(-45deg)}.menu{position:fixed;inset:74px 0 0;z-index:49;background:var(--bg);padding:1.5rem var(--gutter) 2rem;overflow-y:auto}.menu[hidden]{display:none}.menu nav{display:grid;gap:.2rem;margin-bottom:1.5rem}.menu nav a{font:600 1.35rem/1.3 var(--font-head);color:var(--ink);text-decoration:none;padding:.7rem 0;border-bottom:1px solid var(--line)}.menu__cta{display:grid;gap:.7rem}.hero{position:relative;color:#fff;background:var(--ink-deep);overflow:hidden;isolation:isolate}.hero__media{position:absolute;inset:0;z-index:-2}.hero__media video,.hero__media img{width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#141b19e6,#141b19b8,#141b1959)}.hero__inner{max-width:var(--max);margin:0 auto;padding:clamp(3.5rem,9vw,7rem) var(--gutter) clamp(3rem,7vw,5.5rem)}.hero__content{max-width:680px}.hero h1{color:#fff}.hero h1 em,.hero .eyebrow{color:var(--sand)}.hero .lede{color:#ffffffdb}.hero__cta{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.8rem 0 1.6rem}.hero--page .hero__inner{padding-top:clamp(2.5rem,6vw,4.5rem);padding-bottom:clamp(2.5rem,6vw,4rem)}.hero--page h1{font-size:clamp(2rem,4.4vw,3.2rem)}.breadcrumb{font-size:.85rem;margin-bottom:1rem;color:#ffffffbf}.breadcrumb a{color:#ffffffd9}.breadcrumb span[aria-current]{color:var(--sand)}.trust{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;list-style:none;padding:0;margin:0;font-size:.93rem;font-weight:600}.trust li{display:inline-flex;align-items:center;gap:.45rem}.trust li:before{content:"✓";color:var(--sand);font-weight:800}.trust .trust__stars:before{content:none}.stars{color:var(--star);letter-spacing:.08em}.section{padding:clamp(3.5rem,8vw,6rem) 0}.section--alt{background:var(--bg-alt)}.section--white{background:var(--white)}.section--dark{background:var(--ink);color:#fff}.section--dark h2,.section--dark h3{color:#fff}.section--dark .muted,.section--dark .lede{color:#fffc}.section-head{max-width:720px;margin-bottom:2.4rem}.section-head--center{margin-left:auto;margin-right:auto;text-align:center}.section-head--center .lede{margin-left:auto;margin-right:auto}.section-foot{margin-top:2rem;text-align:center}.grid{display:grid;gap:1.2rem}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.6rem}.card p:last-child{margin-bottom:0}.svc{display:flex;flex-direction:column;text-decoration:none;color:inherit;overflow:hidden;padding:0;transition:transform .25s var(--ease),box-shadow .25s}.svc:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.svc img{width:100%;height:auto;flex:none;aspect-ratio:4 / 3;object-fit:cover;object-position:center 30%}.svc__body{padding:1.3rem 1.4rem 1.5rem;display:flex;flex-direction:column;flex:1}.svc__body p{color:var(--ink-soft);font-size:.96rem;flex:1}.svc__link{font-weight:700;color:var(--ocean);font-size:.95rem}.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.work__item{margin:0;background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}.work__item img{width:100%;aspect-ratio:3 / 4;object-fit:cover;object-position:center 30%;flex:1;min-height:0}.work__item--lead{grid-column:span 2;grid-row:span 2}.work__item--lead img{aspect-ratio:auto;height:100%}.work__item figcaption{padding:.75rem 1rem;font-size:.9rem;color:var(--ink-soft);font-weight:600}.review{display:flex;flex-direction:column;gap:.8rem}.review blockquote{margin:0;font-size:1.02rem}.review footer{font-size:.9rem;color:var(--ink-soft);font-weight:600}.rating-badge{display:inline-flex;align-items:center;gap:.6rem;padding:.55rem 1rem;border-radius:999px;background:var(--white);border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:700;box-shadow:var(--shadow)}.owner{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.owner__photo{border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg)}.owner__photo img{width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:center 25%}.creds{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0 0;padding:0;list-style:none}.creds li{background:var(--white);border:1px solid var(--line);border-radius:999px;padding:.4rem .9rem;font-size:.88rem;font-weight:600}.steps{counter-reset:step;display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;list-style:none;padding:0;margin:0}.steps li{counter-increment:step;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem}.steps li:before{content:counter(step,decimal-leading-zero);display:block;font:600 1.6rem/1 var(--font-head);color:var(--sand-dark);margin-bottom:.6rem}.steps h3{font-size:1.08rem;margin-bottom:.3rem}.steps p{font-size:.93rem;color:var(--ink-soft);margin:0}.chips{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;padding:0;margin:0}.chips--center{justify-content:center}.chip{display:inline-block;padding:.5rem 1rem;border-radius:999px;background:var(--white);border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem;transition:border-color .2s,background .2s}.chip:hover{border-color:var(--sand-dark);background:var(--sand-light)}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center}.split__media{border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg)}.split__media img{width:100%;aspect-ratio:4 / 3;object-fit:cover;object-position:center 30%}.ticks{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.6rem}.ticks li{position:relative;padding-left:1.7rem}.ticks li:before{content:"✓";position:absolute;left:0;color:var(--sand-dark);font-weight:800}.prose{max-width:760px}.prose h2{font-size:clamp(1.5rem,2.6vw,2rem);margin-top:2.2rem}.prose h2:first-child{margin-top:0}.prose p{color:var(--ink-soft)}.area-card{padding:0;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .25s var(--ease),box-shadow .25s}.area-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.area-card img{width:100%;height:auto;flex:none;aspect-ratio:16 / 9;object-fit:cover}.area-card__body{padding:1.2rem 1.3rem 1.4rem}.area-card h2,.area-card h3{font-size:1.3rem;margin-bottom:.35rem}.area-card p{font-size:.94rem;color:var(--ink-soft);margin-bottom:.6rem}.faq{display:grid;gap:.7rem;max-width:860px}.faq details{background:var(--white);border:1px solid var(--line);border-radius:12px}.faq summary{cursor:pointer;list-style:none;padding:1.1rem 3rem 1.1rem 1.3rem;font-weight:700;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:1.2rem;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--sand-dark);transition:transform .25s}.faq details[open] summary:after{transform:translateY(-50%) rotate(45deg)}.faq details p{padding:0 1.3rem 1.2rem;margin:0;color:var(--ink-soft)}.quote{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}.quote__aside .ticks li{color:#ffffffe0}.quote__aside .ticks li:before{color:var(--sand)}.quote__call{margin-top:1.6rem}.quote__call a{color:#fff;font:600 1.6rem/1.2 var(--font-head);text-decoration:none}.form{background:var(--white);color:var(--ink);border-radius:20px;padding:clamp(1.3rem,3vw,2.2rem);box-shadow:var(--shadow-lg)}.form__grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:grid;gap:.35rem}.field--full{grid-column:1 / -1}.field label{font-weight:700;font-size:.92rem}.field label small{font-weight:500;color:var(--ink-soft)}.field input,.field select,.field textarea{width:100%;font:400 1rem/1.4 var(--font);color:var(--ink);background:var(--bg);border:1.5px solid var(--line);border-radius:10px;padding:.8rem .9rem;min-height:50px}.field textarea{min-height:120px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ocean);background:#fff;box-shadow:0 0 0 3px #4a66702e}.field input[type=file]{padding:.6rem;background:var(--white);border-style:dashed;cursor:pointer}.field__hint{font-size:.82rem;color:var(--ink-soft)}.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form__submit{margin-top:1.2rem;width:100%}.form__note{font-size:.85rem;color:var(--ink-soft);margin:.8rem 0 0;text-align:center}.form__alert{padding:.9rem 1rem;border-radius:10px;margin-bottom:1rem;font-weight:600}.form__alert--error{background:#fbeaea;color:#8a2323;border:1px solid #F0C4C4}.form__alert[hidden]{display:none}.cta-band{background:var(--ink);color:#fff;border-radius:24px;padding:clamp(2rem,5vw,3.5rem);display:flex;flex-wrap:wrap;gap:1.5rem 2.5rem;align-items:center;justify-content:space-between}.cta-band h2{color:#fff;margin-bottom:.3rem}.cta-band p{color:#fffc;margin:0}.cta-band__actions{display:flex;flex-wrap:wrap;gap:.8rem}.footer{background:var(--ink-deep);color:#ffffffc7;padding:4rem 0 2rem;font-size:.95rem}.footer__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:2rem}.footer__logo{width:150px;margin-bottom:1rem}.footer h4{color:#fff;font:700 .8rem/1 var(--font);letter-spacing:.14em;text-transform:uppercase;margin:0 0 1rem}.footer a{color:#ffffffc7;text-decoration:none;display:block;margin-bottom:.45rem}.footer a:hover{color:#fff}.footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.12);font-size:.85rem}.actionbar{display:none}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.is-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}@media(max-width:1100px){.header__nav,.header__phone{display:none}.header__toggle{display:grid}.header__actions{margin-left:auto}.grid--4,.steps{grid-template-columns:repeat(2,1fr)}.footer__grid{grid-template-columns:1fr 1fr}}@media(max-width:820px){body{font-size:16px;padding-bottom:72px}.header__inner{height:66px}.header__logo img{height:44px}.menu{inset:66px 0 0}.header__actions .btn{display:none}.grid--2,.grid--3,.split,.owner,.quote,.form__grid{grid-template-columns:1fr}.work-grid{grid-template-columns:repeat(2,1fr)}.work__item--lead{grid-row:auto}.work__item--lead img{aspect-ratio:4 / 5;height:auto}.hero:after{background:linear-gradient(180deg,#141b19c7,#141b19e0)}.hero__cta .btn{flex:1 1 100%}.steps,.footer__grid{grid-template-columns:1fr}.actionbar{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom));background:#faf8f2f7;border-top:1px solid var(--line);box-shadow:0 -6px 20px #26312d1a}.actionbar .btn{min-height:48px;padding:.6rem;font-size:.98rem}}@media(max-width:480px){.grid--4{grid-template-columns:1fr}}.ig-panel{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem 2rem;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:clamp(1.4rem,3vw,2.2rem);box-shadow:var(--shadow)}.ig-panel h2{margin-bottom:.3rem}.ig-panel .lede{margin:0}.ig-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem;align-items:start}.ig-grid .instagram-media{min-width:0!important;width:100%!important;margin:0!important}.footer__ig{display:inline-flex!important;align-items:center;gap:.45rem}.footer__ig svg{width:1.1em;height:1.1em}@media(max-width:900px){.ig-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.ig-grid{grid-template-columns:1fr}.ig-panel .btn{width:100%}}.ig-grid--single{grid-template-columns:minmax(0,480px);justify-content:center}.ig-grid--pair{grid-template-columns:repeat(2,minmax(0,480px));justify-content:center}@media(max-width:560px){.ig-grid--pair{grid-template-columns:1fr}}
