:root{--forest:#102c26;--forest-2:#183a32;--forest-3:#264b40;--cream:#f4f0e6;--paper:#faf8f1;--gold:#dfc27d;--gold-2:#f1dfac;--ink:#1c2925;--muted:#87918a;--line:rgba(244,240,230,.22);--line-dark:rgba(28,41,37,.16);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--ease:cubic-bezier(.2,.72,.18,1);--page-gutter:clamp(24px,6.2vw,100px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:12px 16px;transform:translateY(-160%);background:white;color:var(--forest);border-radius:4px}.skip-link:focus{transform:translateY(0)}.topline{position:absolute;top:0;left:0;width:100%;height:13px;z-index:20;display:flex;justify-content:space-around;pointer-events:none}.topline span{width:6px;height:6px;border-radius:50%;margin-top:5px;background:#f6db9e;box-shadow:0 0 8px 3px rgba(243,209,136,.62);animation:twinkle 3.2s infinite alternate}.topline span:nth-child(3n){animation-delay:.7s;background:#a4c6a9}.topline span:nth-child(4n){animation-delay:1.5s}.topline span:nth-child(5n){background:#d9907c;animation-delay:.35s}@keyframes twinkle{from{opacity:.42;box-shadow:0 0 4px 1px rgba(243,209,136,.35)}to{opacity:1;box-shadow:0 0 12px 4px rgba(243,209,136,.7)}}
.site-header{height:88px;padding:0 var(--page-gutter);display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:15;top:0;left:0;width:100%;color:white;border-bottom:1px solid rgba(255,255,255,.15);transition:background .35s,transform .35s,box-shadow .35s}.site-header.scrolled{position:fixed;background:rgba(16,44,38,.94);backdrop-filter:blur(16px);box-shadow:0 8px 30px rgba(0,0,0,.12);animation:header-in .45s var(--ease)}@keyframes header-in{from{transform:translateY(-100%)}to{transform:translateY(0)}}.brand{display:flex;align-items:center;width:124px;height:58px}.brand img,.footer-brand img,.dialog-brand img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.site-header nav{display:flex;align-items:center;gap:clamp(22px,3.3vw,53px);margin-left:auto;margin-right:clamp(24px,5vw,80px)}.site-header nav a,.footer-links a{font-size:11px;letter-spacing:.08em;text-transform:uppercase;position:relative}.site-header nav a:after,.footer-links a:after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}.site-header nav a:hover:after,.footer-links a:hover:after{transform:scaleX(1);transform-origin:left}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:0 24px;font-weight:600;font-size:11px;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:transform .25s var(--ease),background .25s,color .25s,box-shadow .25s}.button:hover{transform:translateY(-3px);box-shadow:0 14px 25px rgba(0,0,0,.2)}.button span{font-size:16px;font-weight:400}.button-small{min-height:43px;padding:0 18px;font-size:9px;gap:13px}.button-gold{background:var(--gold);color:#24372e}.button-gold:hover{background:#edd694}.button-dark{background:var(--forest);color:var(--cream)}.button-dark:hover{background:#285044}.menu-toggle{display:none}
.hero{height:min(820px,100svh);min-height:650px;position:relative;background:var(--forest);color:var(--cream);overflow:hidden}.hero-image,.hero-shade,.hero-grain{position:absolute;inset:0}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 52%;animation:hero-arrive 1.3s var(--ease) both;transform:scale(1.035)}@keyframes hero-arrive{to{transform:scale(1)}}.hero-shade{background:linear-gradient(90deg,rgba(8,25,20,.82) 0%,rgba(8,25,20,.62) 36%,rgba(8,25,20,.08) 82%),linear-gradient(0deg,rgba(7,19,15,.47),transparent 28%)}.hero-grain{opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.2'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.hero-copy{position:absolute;z-index:2;left:var(--page-gutter);top:50%;transform:translateY(-42%);max-width:700px}.eyebrow{font-size:9px;letter-spacing:.19em;text-transform:uppercase;color:var(--gold-2);display:flex;align-items:center;gap:12px}.hero-eyebrow{margin-bottom:30px}.eyebrow-line{width:28px;height:1px;background:var(--gold)}.hero h1,.display{font-family:var(--serif);font-weight:400;letter-spacing:-.05em;line-height:.99;margin:0}.hero h1{font-size:clamp(74px,10vw,144px);animation:copy-in .85s .15s var(--ease) both}.hero h1 em,.display em{font-weight:400;color:var(--gold);font-style:italic}.hero-subtitle{font-size:clamp(15px,1.4vw,18px);line-height:1.85;max-width:460px;color:rgba(250,248,241,.83);margin:28px 0 33px;animation:copy-in .85s .25s var(--ease) both}.hero-actions{display:flex;align-items:center;gap:30px;animation:copy-in .85s .35s var(--ease) both}.text-link{font-size:10px;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;align-items:center;gap:16px;border:0;background:none;cursor:pointer;padding:9px 0}.text-link span{font-size:16px;transition:transform .3s var(--ease)}.text-link:hover span{transform:translate(4px,-2px)}.hero-link{color:white}.hero-foot{position:absolute;bottom:35px;left:var(--page-gutter);right:var(--page-gutter);display:flex;justify-content:space-between;z-index:2;text-transform:uppercase;font-size:8px;letter-spacing:.12em;color:rgba(250,248,241,.72)}.hero-foot a{display:flex;gap:14px;align-items:center}.hero-foot a span{font-size:14px}.hero-index{position:absolute;right:var(--page-gutter);top:51%;display:flex;align-items:center;gap:13px;transform:rotate(90deg);transform-origin:right center;font-size:8px;letter-spacing:.12em;color:rgba(255,255,255,.65)}.hero-index i{width:68px;height:1px;background:rgba(255,255,255,.55)}@keyframes copy-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.section-cream{background:var(--cream)}.intro{padding:128px var(--page-gutter) 90px}.section-kicker{display:flex;align-items:center;gap:24px;color:#63746a;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.kicker-rule{height:1px;background:var(--line-dark);flex:1}.intro-grid{display:grid;grid-template-columns:1.05fr .7fr;gap:10%;align-items:end;padding:62px 0 77px}.display{font-size:clamp(57px,7.4vw,108px)}.display em{color:#a88d51}.intro-story{max-width:420px;padding-bottom:6px}.intro-story p{line-height:1.9;color:#69756e;font-size:13px;margin:14px 0}.intro-story .large-copy{font-family:var(--serif);font-size:24px;line-height:1.45;color:var(--ink);margin:0 0 18px}.dark-link{color:var(--forest);margin-top:14px}.promise-row{display:grid;grid-template-columns:repeat(4,1fr);padding-top:24px;border-top:1px solid var(--line-dark);align-items:start}.promise-row>div:not(.promise-mark){display:flex;gap:18px;align-items:flex-start}.promise-number{font-family:var(--serif);font-size:19px;color:#aa935f}.promise-row p{font-size:10px;line-height:1.7;margin:0;color:#394a41}.promise-mark{justify-self:end;font-size:35px;line-height:1;color:#b99e65;animation:slow-spin 30s linear infinite}@keyframes slow-spin{to{transform:rotate(360deg)}}
.before-after-section{height:min(720px,74vw);min-height:470px;position:relative;overflow:hidden;background:#172822;color:white}.before-photo,.after-photo,.ba-wash{position:absolute;inset:0}.before-photo img,.after-photo img{width:100%;height:100%;object-fit:cover;object-position:center 46%}.before-photo img{filter:saturate(.52) brightness(.7)}.after-photo{clip-path:inset(0 0 0 55%);transition:clip-path .04s linear}.after-photo img{filter:saturate(1.1) brightness(.88)}.ba-wash{background:linear-gradient(90deg,rgba(5,18,14,.63),rgba(5,18,14,.1) 80%),linear-gradient(0deg,rgba(5,18,14,.48),transparent 50%);pointer-events:none}.ba-copy{position:absolute;z-index:3;top:14%;left:var(--page-gutter);max-width:640px;pointer-events:none}.light-display{color:var(--paper)}.ba-copy .display{font-size:clamp(58px,8.6vw,122px);margin-top:27px}.ba-copy .eyebrow{margin:0}.ba-caption{font-size:9px;letter-spacing:.08em;color:rgba(255,255,255,.72);margin-top:31px}.ba-labels{position:absolute;top:30px;left:var(--page-gutter);right:var(--page-gutter);display:flex;justify-content:space-between;z-index:3;font-size:8px;letter-spacing:.16em}.ba-controls{position:absolute;z-index:4;left:0;right:0;bottom:0;height:100%;display:flex;align-items:center;pointer-events:none}.ba-controls input{pointer-events:auto;position:absolute;left:0;bottom:0;width:100%;height:44px;margin:0;opacity:0;cursor:ew-resize}.ba-controls:after{content:"";position:absolute;pointer-events:none;left:55%;top:0;bottom:0;width:1px;background:rgba(255,255,255,.82);box-shadow:0 0 12px rgba(255,255,255,.5);transition:left .04s linear}.ba-handle{position:absolute;pointer-events:none;left:55%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border:1px solid rgba(255,255,255,.8);border-radius:50%;display:grid;place-items:center;backdrop-filter:blur(4px);transition:left .04s linear}.ba-handle span{font-size:18px}.ba-note{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);z-index:4;font-size:8px;letter-spacing:.15em;text-transform:uppercase;display:flex;gap:12px;align-items:center;pointer-events:none}.ba-note span{font-size:15px}.before-after-section:focus-within .ba-controls:after{box-shadow:0 0 0 2px var(--gold)}
.work{padding:117px var(--page-gutter) 130px}.work-title-row{display:flex;align-items:end;justify-content:space-between;margin:54px 0 55px}.work-title-row .display{font-size:clamp(58px,7.3vw,102px)}.work-note{max-width:240px;font-size:10px;line-height:1.85;color:#78817b;margin:0 4% 5px 35px}.gallery-grid{display:grid;grid-template-columns:1.04fr .75fr 1fr .58fr;gap:2.2%;align-items:start}.gallery-card{margin:0;min-width:0}.gallery-large{grid-column:1;grid-row:1 / span 2}.gallery-offset{grid-column:2;grid-row:1;margin-top:126px}.gallery-third{grid-column:3;grid-row:1 / span 2;margin-top:36px}.gallery-image{position:relative;overflow:hidden;background:#d3d4c9}.gallery-large .gallery-image{aspect-ratio:4/5}.gallery-offset .gallery-image{aspect-ratio:3/4}.gallery-third .gallery-image{aspect-ratio:4/5}.gallery-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s var(--ease),filter .7s}.gallery-card:hover .gallery-image img{transform:scale(1.045);filter:saturate(1.07)}.gallery-index{position:absolute;top:14px;left:16px;color:#fff;font-size:9px;letter-spacing:.12em;text-shadow:0 1px 12px rgba(0,0,0,.5)}.gallery-card figcaption{display:flex;flex-direction:column;gap:6px;padding-top:15px}.gallery-card figcaption span:first-child{text-transform:uppercase;color:#869087;font-size:8px;letter-spacing:.14em}.gallery-card figcaption span:nth-child(2){font-family:var(--serif);font-size:16px}.gallery-card figcaption b{font-family:var(--sans);font-size:12px;color:#a98e55;font-weight:400;margin-left:7px}.gallery-aside{grid-column:4;grid-row:2;align-self:end;padding:0 0 8px 8px}.spark-mark{font-size:25px;color:#ae9560}.gallery-aside p{font-family:var(--serif);font-size:21px;line-height:1.45;margin:20px 0}.gallery-aside p em{color:#a88d51}.gallery-aside .text-link{font-size:8px;gap:9px}
.steps-section{position:relative;background:var(--forest);color:var(--cream);padding:111px var(--page-gutter) 120px;overflow:hidden}.steps-backdrop{position:absolute;inset:0;opacity:.09;background:radial-gradient(ellipse at 80% 40%,#a9bc93,transparent 32%),radial-gradient(ellipse at 25% 100%,#e0c981,transparent 40%)}.steps-section>.section-kicker,.steps-heading,.steps-list{position:relative}.steps-section .section-kicker{color:#bdc8bb}.steps-section .kicker-rule{background:var(--line)}.steps-heading{display:flex;justify-content:space-between;align-items:end;margin:57px 0 49px}.steps-heading .display{font-size:clamp(61px,7vw,100px)}.steps-lead{width:260px;max-width:32%;margin:0 5% 7px 20px;color:#c2cdc4;font-size:12px;line-height:1.9}.steps-list{border-top:1px solid var(--line)}.step{min-height:130px;display:grid;grid-template-columns:.2fr 1fr .2fr;gap:20px;align-items:center;border-bottom:1px solid var(--line);transition:padding .45s var(--ease)}.step:hover{padding:0 12px}.step-number{color:var(--gold);font-family:var(--serif);font-size:20px}.step h3{font-family:var(--serif);font-size:clamp(21px,2.4vw,31px);font-weight:400;margin:0 0 8px}.step p{font-size:11px;line-height:1.8;color:#bac7bd;margin:0;max-width:520px}.step-icon{font-family:var(--serif);font-size:32px;color:var(--gold);justify-self:end}
.packages{padding:118px var(--page-gutter) 122px}.packages-heading{display:flex;justify-content:space-between;align-items:end;margin:52px 0 49px}.packages-heading .display{font-size:clamp(58px,7vw,100px)}.package-disclaimer{display:flex;align-items:flex-start;gap:12px;max-width:290px;margin:0 4% 8px 20px}.disclaimer-dot{width:7px;height:7px;border-radius:50%;background:#ac9155;flex:none;margin-top:5px}.package-disclaimer p{font-size:9px;line-height:1.75;color:#78817a;margin:0}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.package-card{position:relative;min-height:390px;padding:28px 29px 27px;border:1px solid rgba(28,41,37,.18);display:flex;flex-direction:column;transition:transform .45s var(--ease),box-shadow .45s,border .3s}.package-card:hover{transform:translateY(-7px);box-shadow:0 22px 35px rgba(33,46,39,.1);border-color:rgba(28,41,37,.4)}.package-featured{background:var(--forest);color:var(--cream);border-color:var(--forest)}.package-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.15em;color:#858f87}.package-featured .package-top{color:#b9c7bc}.package-spark{font-size:16px;color:#bda46c}.package-card h3{font-family:var(--serif);font-size:clamp(27px,3vw,38px);font-weight:400;margin:33px 0 9px;letter-spacing:-.03em}.package-desc{color:#748079;font-size:10px;line-height:1.8;margin:0;max-width:265px;min-height:36px}.package-featured .package-desc{color:#c1cdc4}.package-price{font-family:var(--serif);font-size:21px;margin:21px 0 16px;color:#aa8d4f}.package-price span{font-size:12px}.package-line{height:1px;background:var(--line-dark)}.package-featured .package-line{background:var(--line)}.package-card ul{list-style:none;margin:14px 0 21px;padding:0;display:grid;gap:8px}.package-card li{font-size:9px;color:#5d6b62;line-height:1.5}.package-featured li{color:#d0d8d1}.package-card li:before{content:"✳";font-size:8px;color:#ab925e;margin-right:9px}.package-link{margin-top:auto;border:0;border-bottom:1px solid rgba(28,41,37,.35);background:transparent;padding:0 0 9px;display:flex;align-items:center;justify-content:space-between;text-align:left;font-size:8px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.package-featured .package-link{color:white;border-color:rgba(255,255,255,.42)}.package-link span{font-size:15px;color:#a88d51;transition:transform .3s}.package-link:hover span{transform:translate(4px,-2px)}.package-footnote{margin:17px 0 0;color:#9a9c91;font-size:8px;letter-spacing:.02em}
.care-section{display:grid;grid-template-columns:1fr 1fr;background:#17362e;color:var(--cream);min-height:690px}.care-photo{min-height:100%;overflow:hidden;position:relative}.care-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,27,20,.15),transparent)}.care-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center;transition:transform 1.5s var(--ease)}.care-section:hover .care-photo img{transform:scale(1.035)}.care-copy{padding:95px clamp(48px,9vw,145px) 87px clamp(50px,7vw,110px)}.care-copy .display{font-size:clamp(51px,6.1vw,84px);margin:28px 0 22px}.care-body{font-size:11px;line-height:1.95;color:#c0cdc4;max-width:360px;margin:0 0 28px}.care-detail{display:flex;gap:20px;align-items:flex-start;padding:17px 0;border-top:1px solid var(--line)}.care-detail>span{font-family:var(--serif);font-size:15px;color:var(--gold)}.care-detail p{font-family:var(--serif);font-size:17px;margin:0}.care-detail small{display:inline-block;font-family:var(--sans);font-size:9px;color:#b8c3b9;margin-top:6px}.care-footnote{font-size:8px;color:#a9b6ab;line-height:1.7;margin:18px 0 0}
.service-area{padding:110px var(--page-gutter);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.service-orbit{min-height:440px;position:relative;display:grid;place-items:center;overflow:hidden}.orbit{position:absolute;border:1px solid rgba(139,155,130,.26);border-radius:50%;width:370px;height:370px}.orbit-two{width:270px;height:270px;border-color:rgba(139,155,130,.33)}.orbit-dot{position:absolute;left:51%;top:48%;font-size:29px;color:#aa9059;animation:slow-spin 18s linear infinite}.map-label,.map-small{position:absolute;color:#6b7b70;font-size:8px;letter-spacing:.18em}.label-ga{left:18%;top:26%}.label-tn{right:18%;top:19%}.map-small{left:50%;top:67%;text-align:center;transform:translateX(-50%);font-size:7px;line-height:1.6;color:#94998b}.service-copy{max-width:460px}.service-copy .display{font-size:clamp(51px,6.5vw,88px);margin:28px 0 25px}.service-copy>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#6e7a72;max-width:400px}.service-copy .dark-link{margin-top:15px}
.faq-section{background:#112a24;color:var(--cream);padding:110px var(--page-gutter) 130px;display:grid;grid-template-columns:.75fr 1fr;gap:12%}.faq-intro .display{font-size:clamp(55px,6.4vw,88px);margin:29px 0 24px}.faq-note{font-size:9px;line-height:1.8;color:#acb8ad;max-width:230px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{min-height:73px;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-family:var(--serif);font-size:17px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{color:var(--gold);font-family:var(--sans);font-size:20px;transition:transform .3s}.faq-item[open] summary span{transform:rotate(45deg)}.faq-item p{max-width:580px;margin:0;padding:0 40px 24px 0;font-size:10px;line-height:1.9;color:#bac6bb;animation:faq-in .25s var(--ease)}@keyframes faq-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
.closing-cta{min-height:610px;position:relative;overflow:hidden;background:var(--forest);color:var(--cream);display:flex;align-items:center}.closing-image,.closing-shade{position:absolute;inset:0}.closing-image img{width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.85)}.closing-shade{background:linear-gradient(90deg,rgba(10,31,23,.82),rgba(10,31,23,.53) 47%,rgba(10,31,23,.18)),linear-gradient(0deg,rgba(5,18,14,.35),transparent)}.closing-copy{position:relative;z-index:2;padding:92px var(--page-gutter);max-width:790px}.closing-copy .display{font-size:clamp(64px,8vw,112px);margin:25px 0 19px}.closing-note{font-size:11px;line-height:1.8;color:#d0d8ce;margin:0 0 26px}.closing-disclaimer{display:block;color:rgba(245,243,231,.7);font-size:8px;margin-top:13px}.closing-ornament{position:absolute;z-index:2;right:10%;top:16%;color:rgba(230,209,151,.55);font-size:52px;animation:slow-spin 36s linear infinite}.site-footer{background:#0e211c;color:var(--cream);padding:52px var(--page-gutter) 25px;display:grid;grid-template-columns:.65fr 1fr 1fr;gap:35px;align-items:center}.footer-brand{width:110px;height:62px}.footer-brand img{object-position:left}.site-footer>p{font-family:var(--serif);font-size:16px;line-height:1.6;margin:0;color:#e9e4d7}.site-footer>p span{font-family:var(--sans);font-size:9px;color:#9eada1}.site-footer>p a{text-decoration:underline;text-underline-offset:3px}.footer-links{justify-self:end;display:flex;gap:21px;flex-wrap:wrap;justify-content:flex-end}.footer-links a{font-size:8px;color:#cad1c8}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:17px;margin-top:10px;display:flex;justify-content:space-between;gap:14px;color:#98a69a;font-size:8px;letter-spacing:.04em}.footer-bottom i{font-style:normal;color:#6d7b70}.prototype-label{letter-spacing:.15em;color:var(--gold)}
.mockup-dialog{border:0;padding:0;width:min(1020px,calc(100% - 32px));max-width:none;max-height:min(760px,calc(100% - 32px));overflow:auto;background:var(--paper);color:var(--ink);box-shadow:0 35px 120px rgba(0,0,0,.45)}.mockup-dialog::backdrop{background:rgba(3,14,10,.73);backdrop-filter:blur(8px)}.mockup-dialog[open]{animation:dialog-in .45s var(--ease)}@keyframes dialog-in{from{opacity:0;transform:translateY(20px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.dialog-close{position:absolute;z-index:3;right:15px;top:13px;width:38px;height:38px;border:1px solid rgba(28,41,37,.14);background:transparent;border-radius:50%;font-size:24px;line-height:1;cursor:pointer}.dialog-layout{min-height:620px;display:grid;grid-template-columns:.78fr 1fr}.dialog-aside{background:var(--forest);color:var(--cream);padding:39px 38px 30px;display:flex;flex-direction:column;align-items:flex-start}.dialog-brand{width:110px;height:62px;margin:0 0 auto}.dialog-brand img{object-position:left}.dialog-aside .eyebrow{margin:30px 0 15px}.dialog-aside .display{font-size:clamp(38px,4.4vw,59px)}.dialog-aside>p:not(.eyebrow){font-size:10px;line-height:1.8;color:#c2cec2;max-width:260px}.dialog-step-list{display:flex;flex-direction:column;gap:11px;margin-top:36px}.dialog-step-list span{font-size:9px;color:#809286;letter-spacing:.12em}.dialog-step-list span.current{color:var(--gold)}.dialog-step-list i{font-style:normal;letter-spacing:.08em;text-transform:uppercase;margin-left:12px;font-size:8px}.dialog-aside>small{margin-top:auto;color:#829287;font-size:8px}.dialog-main{padding:67px 59px 42px;position:relative}.form-progress{position:absolute;top:0;left:0;width:100%;height:3px;background:#e5e1d5}.form-progress span{height:100%;display:block;width:33.33%;background:#b89b5f;transition:width .45s var(--ease)}.form-step{display:none;animation:form-in .32s var(--ease)}.form-step.active{display:block}@keyframes form-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.dark-eyebrow{color:#9e8755}.form-step h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;font-size:clamp(29px,4vw,42px);line-height:1.15;margin:15px 0 10px}.form-intro{font-size:10px;line-height:1.8;color:#727e75;margin:0 0 25px}.upload-area{position:relative;min-height:133px;border:1px dashed #acb5ab;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;background:#f4f2e9;transition:border .2s,background .2s;margin-bottom:20px}.upload-area:hover,.upload-area:focus-within{border-color:#9a8150;background:#f1eddf}.upload-area input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.upload-icon{font-size:22px;color:#a48c59}.upload-label{font-size:10px;font-weight:600}.upload-area small{font-size:8px;color:#858e85}.upload-preview{display:none;max-height:120px;max-width:90%;object-fit:contain;margin-bottom:5px}.upload-area.has-preview .upload-preview{display:block}.upload-area.has-preview .upload-icon{display:none}.upload-area.has-preview .upload-label{color:#817149}.field-label{display:block;font-size:9px;line-height:1.7;font-weight:600;margin:14px 0 7px}.field-label>span{font-size:8px;color:#858f87;font-weight:400;margin-left:5px}.text-field{width:100%;min-height:43px;border:1px solid #d3d6cc;background:transparent;padding:11px 12px;outline:0;border-radius:0;font-size:10px;color:#26372f;transition:border .2s,box-shadow .2s}.text-field:focus{border-color:#9f8855;box-shadow:0 0 0 2px rgba(170,144,82,.16)}textarea.text-field{resize:vertical;min-height:75px}.form-nav{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:25px}.form-nav .button{min-height:45px;font-size:8px;gap:14px}.form-hint,.success-note{font-size:8px;color:#858e85}.back-button{border:0;background:transparent;color:#6d7a70;font-size:9px;cursor:pointer;padding:12px 0}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.style-choice{border:1px solid #d5d7cc;background:transparent;padding:13px;text-align:left;display:grid;grid-template-columns:27px 1fr;column-gap:10px;cursor:pointer;transition:border .2s,background .2s}.style-choice:hover,.style-choice.selected{border-color:#9b8451;background:#f1eee4}.style-choice b{font-size:9px;font-weight:600;align-self:end}.style-choice small{grid-column:2;font-size:8px;color:#858e85;margin-top:4px}.swatch{grid-row:span 2;width:26px;height:26px;border-radius:50%;align-self:center;border:1px solid rgba(0,0,0,.08)}.swatch-warm{background:radial-gradient(circle,#fff7cf 0 17%,#eed78f 20% 35%,#cfb879 40%,#f2ebd7 70%)}.swatch-color{background:conic-gradient(#df5856 0 25%,#ddc65f 0 50%,#6c9a79 0 75%,#7384b3 0)}.swatch-holiday{background:conic-gradient(#b53832 0 50%,#43634a 0 100%)}.swatch-custom{display:grid;place-items:center;background:#e9e5d8;color:#a28b58}.areas-heading{margin-top:22px}.area-choices{display:flex;flex-wrap:wrap;gap:7px}.area-choices label input{position:absolute;opacity:0}.area-choices label span{display:block;border:1px solid #d5d7cc;padding:8px 11px;font-size:8px;cursor:pointer;transition:all .2s}.area-choices input:checked+span,.area-choices input:focus-visible+span{background:var(--forest);color:white;border-color:var(--forest)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-row .field-label{margin-top:5px}.form-success{padding-top:30px}.success-spark{display:block;font-size:33px;color:#ad935d}.brief-summary{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);padding:15px 0;margin:23px 0 18px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.brief-summary div{font-size:8px;color:#859087;line-height:1.65}.brief-summary b{display:block;font-size:9px;color:#24342c;margin-bottom:2px}.form-success>.button{min-height:43px;font-size:8px}.success-note{line-height:1.7;margin-top:15px}.toast{position:fixed;z-index:100;bottom:20px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--forest);color:white;padding:12px 18px;font-size:10px;transition:opacity .25s,transform .25s}.toast.show{opacity:1;transform:translate(-50%,0)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal:nth-child(2){transition-delay:.08s}.reveal:nth-child(3){transition-delay:.14s}
@media(max-width:1000px){:root{--page-gutter:5vw}.site-header nav{gap:18px;margin-right:24px}.site-header nav a{font-size:9px}.header-cta{padding:0 13px}.gallery-grid{grid-template-columns:1fr .82fr 1fr}.gallery-aside{grid-column:3;grid-row:2;padding:40px 0 0}.gallery-third{margin-top:70px}.care-copy{padding:70px 6vw}.package-card{padding:24px 20px}.dialog-main{padding:65px 38px 38px}.dialog-aside{padding:34px 28px}.site-footer{grid-template-columns:.45fr 1fr 1fr}}
@media(max-width:700px){html{scroll-padding-top:70px}.topline{height:10px}.site-header{height:70px;padding:0 22px}.brand{width:93px;height:46px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;margin:0;padding:22px;background:rgba(16,44,38,.98);flex-direction:column;align-items:flex-start;gap:21px}.site-header nav.open{display:flex}.site-header nav a{font-size:10px}.menu-toggle{display:grid;gap:5px;place-content:center;width:36px;height:36px;border:0;background:transparent;margin-left:auto;margin-right:11px}.menu-toggle span{width:18px;height:1px;background:white;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.header-cta{min-height:37px;padding:0 12px;font-size:8px;gap:8px}.hero{height:88svh;min-height:660px;max-height:850px}.hero-image img{object-position:59% center}.hero-shade{background:linear-gradient(90deg,rgba(8,25,20,.79),rgba(8,25,20,.4) 65%,rgba(8,25,20,.15)),linear-gradient(0deg,rgba(7,19,15,.46),transparent 45%)}.hero-copy{left:24px;right:24px;top:51%;transform:translateY(-42%)}.hero h1{font-size:clamp(73px,17vw,112px)}.hero-subtitle{font-size:14px;max-width:370px;margin:24px 0 25px}.hero-actions{gap:18px;align-items:flex-start;flex-direction:column}.hero-actions .button{min-height:50px}.hero-foot{left:24px;right:24px;bottom:24px;font-size:7px}.hero-foot>span{max-width:57%;line-height:1.6}.hero-index{display:none}.intro{padding:83px 24px 60px}.intro-grid{grid-template-columns:1fr;gap:28px;padding:47px 0 43px}.intro-grid .display{font-size:clamp(59px,14vw,92px)}.intro-story{max-width:480px}.promise-row{grid-template-columns:1fr 1fr;gap:23px 10px}.promise-mark{display:none}.before-after-section{height:590px;min-height:0}.before-photo img,.after-photo img{object-position:57% center}.ba-copy{top:13%;left:24px;right:24px}.ba-copy .display{font-size:clamp(51px,12vw,79px)}.ba-labels{left:24px;right:24px;top:22px}.ba-caption{max-width:190px;line-height:1.7}.ba-handle{width:44px;height:44px}.work{padding:82px 24px 88px}.work-title-row{display:block;margin:43px 0 33px}.work-title-row .display{font-size:clamp(56px,13vw,84px)}.work-note{margin:21px 0 0;max-width:290px}.gallery-grid{grid-template-columns:1fr 1fr;gap:30px 13px}.gallery-large{grid-column:1;grid-row:1}.gallery-offset{grid-column:2;grid-row:1;margin-top:46px}.gallery-third{grid-column:1;grid-row:2;margin-top:0}.gallery-aside{grid-column:2;grid-row:2;padding:20px 0 0 8px;align-self:center}.gallery-card figcaption span:nth-child(2){font-size:14px}.gallery-aside p{font-size:18px}.steps-section{padding:83px 24px 86px}.steps-heading{display:block;margin:43px 0 34px}.steps-heading .display{font-size:clamp(57px,13vw,83px)}.steps-lead{max-width:330px;width:auto;margin:19px 0 0;font-size:11px}.step{min-height:129px;grid-template-columns:39px 1fr 25px;gap:8px}.step h3{font-size:21px}.step p{font-size:9px;max-width:340px}.step-icon{font-size:25px}.packages{padding:84px 24px 88px}.packages-heading{display:block;margin:44px 0 30px}.packages-heading .display{font-size:clamp(58px,13vw,84px)}.package-disclaimer{margin:23px 0 0;max-width:350px}.package-grid{grid-template-columns:1fr;gap:12px}.package-card{min-height:345px;padding:25px}.package-card h3{margin-top:25px}.package-desc{min-height:0}.package-footnote{line-height:1.7}.care-section{grid-template-columns:1fr}.care-photo{min-height:430px}.care-copy{padding:66px 26px 70px}.care-copy .display{font-size:clamp(52px,12vw,78px)}.service-area{padding:75px 25px 82px;grid-template-columns:1fr;gap:10px}.service-orbit{min-height:330px;grid-row:2}.orbit{width:290px;height:290px}.orbit-two{width:210px;height:210px}.service-copy .display{font-size:clamp(53px,12vw,78px);margin:24px 0 20px}.faq-section{padding:78px 25px 84px;grid-template-columns:1fr;gap:35px}.faq-intro .display{font-size:clamp(57px,13vw,83px);margin:24px 0 17px}.faq-item summary{min-height:68px;font-size:15px}.faq-item p{font-size:9px}.closing-cta{min-height:590px}.closing-image img{object-position:59% center}.closing-shade{background:linear-gradient(90deg,rgba(10,31,23,.82),rgba(10,31,23,.55) 78%),linear-gradient(0deg,rgba(5,18,14,.4),transparent)}.closing-copy{padding:70px 25px}.closing-copy .display{font-size:clamp(65px,14vw,93px)}.closing-ornament{right:8%;top:11%;font-size:36px}.site-footer{padding:39px 24px 20px;grid-template-columns:1fr 1fr;gap:20px}.footer-brand{width:95px;height:54px}.site-footer>p{font-size:13px}.site-footer>p span{font-size:8px}.footer-links{grid-column:1/-1;justify-self:start;justify-content:flex-start;gap:15px 21px}.footer-bottom{gap:10px;flex-direction:column;font-size:7px}.dialog-layout{grid-template-columns:1fr}.dialog-aside{padding:24px 26px 20px;min-height:212px}.dialog-brand{width:76px;height:43px;margin:0}.dialog-aside .eyebrow{margin:16px 0 8px;font-size:8px}.dialog-aside .display{font-size:35px}.dialog-aside>p:not(.eyebrow){display:none}.dialog-step-list{position:absolute;top:24px;right:22px;display:flex;flex-direction:row;gap:9px;margin:0}.dialog-step-list span{font-size:7px}.dialog-step-list i{display:none}.dialog-aside>small{display:none}.dialog-main{padding:36px 25px 28px}.form-progress{top:0}.form-step h3{font-size:32px}.upload-area{min-height:110px}.field-row{grid-template-columns:1fr;gap:0}.mockup-dialog{max-height:calc(100% - 18px);width:calc(100% - 18px)}.dialog-close{top:12px;right:12px;width:31px;height:31px;background:rgba(255,255,255,.1);color:white;border-color:rgba(255,255,255,.3);font-size:21px}.form-nav .button{padding:0 14px}.brief-summary{grid-template-columns:1fr 1fr}}
@media(max-width:380px){.header-cta{font-size:7px;padding:0 9px}.hero h1{font-size:69px}.hero-actions .button{padding:0 16px;font-size:9px}.promise-row{gap:20px 5px}.promise-row p{font-size:9px}.style-choice{padding:10px 8px}.area-choices{gap:5px}.area-choices label span{padding:7px 8px}.footer-links a{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.hero-image img{animation:none;transform:none}}

/* Refinement pass: stable layout, one source of truth for the comparison, and
   visible content when scripts are unavailable during reload or restoration. */
.header-cta{background:var(--gold);color:var(--forest);border:1px solid rgba(255,255,255,.18);box-shadow:0 5px 18px rgba(0,0,0,.12)}
.header-cta:hover{background:var(--gold-2);transform:translateY(-1px);box-shadow:0 7px 20px rgba(0,0,0,.16)}
.header-cta span{color:var(--forest)}
.reveal{opacity:1;transform:none}
.motion-ready .reveal{opacity:0;transform:translateY(18px)}
.motion-ready .reveal.visible{opacity:1;transform:translateY(0)}
.step{transition:background-color .25s ease}
.step:hover{padding:0;background:rgba(255,255,255,.025)}
.step-icon{transition:color .25s ease}
.step:hover .step-icon{color:var(--gold-2)}
.work-title-row{align-items:center;gap:clamp(30px,6vw,90px)}
.work-title-row .display{flex:1}
.work-note{flex:0 0 min(260px,28%);margin:0}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,36px);align-items:start}
.gallery-large,.gallery-offset,.gallery-third{grid-column:auto;grid-row:auto;margin-top:0}
.gallery-image{aspect-ratio:16/9!important;border:1px solid rgba(28,41,37,.09)}
.gallery-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.gallery-aside{grid-column:1/-1;grid-row:auto;align-self:auto;padding:20px 0 0;display:flex;align-items:center;justify-content:flex-end;gap:24px;border-top:1px solid var(--line-dark)}
.gallery-aside p{margin:0 auto 0 0}
.gallery-aside .text-link{margin:0}
.before-photo img,.after-photo img{object-fit:cover;object-position:center;height:100%;width:100%;display:block}
.after-photo{clip-path:inset(0 0 0 var(--compare,55%));transition:none;will-change:clip-path}
.ba-controls:after,.ba-handle{left:var(--compare,55%);transition:none;will-change:left}
.ba-controls input{z-index:5;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;touch-action:pan-y}
.ba-handle{z-index:4}
.ba-controls:after{z-index:3}
.ba-note{bottom:28px}
.package-grid{align-items:stretch;gap:clamp(12px,1.5vw,22px)}
.package-card{min-height:414px;padding:clamp(22px,2.25vw,34px);transform:none!important;box-shadow:none;transition:border-color .25s ease,box-shadow .25s ease,background-color .25s ease}
.package-card:hover{transform:none!important;box-shadow:0 14px 32px rgba(33,46,39,.09);border-color:rgba(28,41,37,.34)}
.package-card h3{min-height:46px;margin:27px 0 8px}
.package-desc{min-height:54px;max-width:290px}
.package-price{margin:20px 0 18px;min-height:32px;display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:clamp(19px,2.1vw,27px);letter-spacing:-.025em;color:#92743c}
.package-price span{color:#a6a08f}
.package-featured .package-price{color:var(--gold-2)}
.package-line{flex:none}
.package-card ul{align-content:start;min-height:83px;gap:10px;margin:17px 0 22px}
.package-card li{font-size:10px}
.package-link{font-size:9px;min-height:35px}
.package-link:hover span{transform:none}
.service-area{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(44px,8vw,120px)}
.service-map{width:100%;max-width:560px;margin-inline:auto;text-align:center}
.service-map svg{display:block;width:100%;height:auto;overflow:visible}
.service-map .us-outline{fill:#e5e0d1;stroke:#b6b7a9;stroke-width:2;stroke-linejoin:round}
.service-map .state-tn,.service-map .state-ga{fill:#b99c5e;stroke:var(--cream);stroke-width:2;stroke-linejoin:round}
.service-map text{font:600 9px var(--sans);letter-spacing:1px;fill:#536258}
.service-map .map-pin{fill:var(--forest);stroke:var(--cream);stroke-width:2}
.service-map>p{margin:3px 0 0;color:#68756b;font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.service-copy{max-width:520px}
.service-copy>p:not(.eyebrow){max-width:440px}
.care-copy{align-self:center}
.care-detail{min-height:72px}
.site-header.scrolled .header-cta{color:var(--forest)}
.is-restored .site-header.scrolled{animation:none}
.is-restored .hero h1,.is-restored .hero-subtitle,.is-restored .hero-actions{animation:none;opacity:1;transform:none}
@media(max-width:1000px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.package-card{padding:22px 18px}.package-price{font-size:19px}.work-title-row{gap:35px}}
@media(max-width:700px){.work-title-row{display:block}.work-title-row .display{font-size:clamp(51px,12vw,76px)}.work-note{max-width:360px;margin:18px 0 0}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.gallery-third{grid-column:1;grid-row:2}.gallery-offset{grid-column:2;grid-row:1;margin-top:28px}.gallery-aside{grid-column:1/-1;grid-row:3;flex-wrap:wrap;justify-content:flex-start;gap:12px 20px}.gallery-aside p{width:100%;margin:0}.gallery-image{aspect-ratio:4/3!important}.gallery-card figcaption span:nth-child(2){font-size:14px}.package-card{min-height:0;padding:24px}.package-card h3{min-height:0}.package-desc{min-height:0}.package-card ul{min-height:0}.package-price{font-size:24px}.service-map{grid-row:2;max-width:460px}.ba-copy{top:15%}.ba-controls input{inset:0}.ba-note{bottom:22px}}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none}.package-card,.step{transition:none}}
/* Keep the native range target active across the full comparison for pointer and touch input. */
.ba-controls input{inset:0;width:100%;height:100%}
