:root{--bg:#f3f3ef;--surface:#fff;--ink:#21241f;--muted:#62665d;--line:#dedfd8;--accent:#d6f678;--soft:#e8eddf;--radius:26px;--heading:'Manrope',sans-serif;--body:'DM Sans',sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 var(--body);transition:background .25s,color .25s}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}button,a,input,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #668b18;outline-offset:5px}button{border:0}img{display:block;max-width:100%;object-fit:cover}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.wrap{max-width:1320px;margin:auto;padding:0 32px}.header{height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font:800 22px/1.2 var(--heading);letter-spacing:-1px}.brand small{display:block;font:600 9px/1.6 var(--body);letter-spacing:2px;margin-top:5px}.header nav{display:flex;gap:27px;font-size:13px;font-weight:500}.header nav a:hover{color:#627a30}.header-actions{display:flex;align-items:center;gap:10px}.round{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);flex-shrink:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:26px;border-radius:100px;padding:14px 23px;font-size:13px;font-weight:600;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.dark{background:var(--ink);color:var(--surface)}#menu{display:none}.intro-line{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:23px 2px 20px;color:var(--muted);font-size:12px}.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:225px 225px 205px;gap:16px}.tile{border-radius:var(--radius);background:var(--surface);overflow:hidden;position:relative;min-width:0}.bento>a,.bento>button,.gallery>a,.gallery>button{transition:transform .25s,box-shadow .25s}.bento>a:hover,.bento>button:hover,.gallery>a:hover,.gallery>button:hover{transform:translateY(-4px);box-shadow:0 12px 25px #0000000c}.hero{grid-column:span 2;grid-row:span 2;background:var(--accent);color:#21241f;padding:34px 38px}.hero-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px;font-weight:600}.spark{width:48px;height:48px;stroke-width:3;position:absolute;right:38px;top:32px}.hero h1{font:600 clamp(44px,4.5vw,65px)/1.06 var(--heading);letter-spacing:-3.6px;margin:25px 0 18px}.hero h1 span{color:#52692f}.hero p{font-size:13px;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:22px}.hero .dark{background:#21241f;color:white}.phone{font-size:12px;text-decoration:underline;text-underline-offset:5px}.hero-foot{display:block;font-size:9px;letter-spacing:1.8px;margin-top:22px}.hero-photo{grid-row:span 2;text-align:left;padding:0;color:#fff}.photo img{width:100%;height:100%;transition:transform .6s}.photo:hover img{transform:scale(1.04)}.photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0004,transparent 35%,#0000 45%,#000a);pointer-events:none}.photo-top,.photo-bottom,.image-label{position:absolute;z-index:1;left:24px;right:24px}.photo-top{top:25px;font-size:9px;letter-spacing:1.6px}.photo-bottom{bottom:28px;display:flex;align-items:end;justify-content:space-between;font:500 30px/1.2 var(--heading);letter-spacing:-1px}.circle{display:inline-flex;align-items:center;justify-content:center;border:1px solid #ffffff80;border-radius:50%;font:400 23px/1 var(--body);height:38px;width:38px;flex-shrink:0;font-style:normal}.rating,.hours-mini{padding:25px}.label{font-size:9px;font-weight:600;letter-spacing:1.3px;display:block}.score{font:600 62px/1.1 var(--heading);letter-spacing:-4px;margin:15px 0 2px}.score>span{font-size:22px;letter-spacing:-1px;color:var(--muted);margin-left:5px}.stars{font-size:16px;letter-spacing:4px;color:#52692f}.tile-bottom{display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:12px;margin-top:17px}.hours-mini{background:#e8eddf}.status-dot{display:inline-block;width:7px;height:7px;background:#416f30;border-radius:50%;margin-right:4px}.today-time{font:500 29px/1.2 var(--heading);letter-spacing:-1px;margin-top:33px}.hours-mini .tile-bottom{margin-top:31px}.team-mini{grid-column:span 2;display:flex;align-items:center;justify-content:space-between;padding:30px;gap:15px}.team-mini h2{font:500 27px/1.25 var(--heading);letter-spacing:-1px;margin:12px 0}.team-mini span:not(.label){font-size:11px}.avatars{display:flex;padding-left:14px}.avatars img{width:79px;height:79px;border:4px solid var(--surface);border-radius:50%;margin-left:-15px}.location-mini{grid-column:span 2;background:#e8e5dc;padding:28px 30px}.location-mini h2{font:500 39px/1.2 var(--heading);letter-spacing:-2px;margin:18px 0}.pin{position:absolute;right:35px;top:35px;width:78px;height:78px;stroke-width:.8;transform:rotate(13deg);color:#747664}.location-mini .tile-bottom{margin-top:18px}.section{padding-top:96px;scroll-margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.eyebrow{display:block;font-size:10px;letter-spacing:2px;color:var(--muted);font-weight:600;margin-bottom:15px}h2{font:500 42px/1.16 var(--heading);letter-spacing:-1.8px;margin:0}h3{font:500 28px/1.2 var(--heading);letter-spacing:-1px;margin:15px 0}.section-heading p{color:var(--muted);font-size:13px;margin:0 0 3px}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.offer{padding:24px 26px;border:1px solid var(--line);border-radius:20px}.offer summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font:500 20px var(--heading);letter-spacing:-.5px}.offer summary small{font:12px var(--body);color:var(--muted);margin-right:14px}.offer summary .plus{font-size:24px;font-weight:400}.offer p{font-size:13px;color:var(--muted)}.offer a{display:inline-block;font-size:12px;text-decoration:underline;text-underline-offset:4px}.featured{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.featured a{padding:24px 26px;background:var(--surface);border-radius:20px;display:flex;justify-content:space-between;align-items:center;gap:18px}.featured strong{font:500 26px var(--heading);white-space:nowrap;letter-spacing:-1px}.featured small{display:block;color:var(--muted);font-size:11px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:290px 255px;gap:16px}.gallery .photo{padding:0;color:white;text-align:left}.transformation{grid-column:span 2}.gallery .photo:nth-child(4){grid-column:span 2}.gallery .photo:nth-child(4) img{object-position:center 48%}.image-label{bottom:20px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.gallery-cta{padding:28px;background:var(--accent);color:#21241f;display:flex;flex-direction:column;justify-content:space-between}.gallery-cta h3{font-size:32px;margin:0}.gallery-cta .circle{border-color:#21241f}.price-card{padding:30px}.price-tools{display:flex;gap:20px;align-items:start}.categories{display:flex;flex-wrap:wrap;gap:8px;flex:1}.categories button{border:1px solid var(--line);padding:9px 14px;border-radius:30px;background:transparent;font-size:12px}.categories button[aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}.search{width:230px;display:flex;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:8px 0}.search svg{flex-shrink:0;width:18px}.search input{width:100%;min-width:0;border:0;outline:none;background:transparent;color:var(--ink);font-size:13px}.search input::placeholder{color:var(--muted)}.price-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin-top:30px;padding-bottom:13px;font-size:13px;font-weight:600}.price-head span+span{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.service{display:grid;grid-template-columns:minmax(0,1fr) 90px 130px 125px;gap:20px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line)}.service h3{font:500 15px/1.4 var(--body);letter-spacing:0;margin:0}.service p{font-size:12px;margin:4px 0 0;color:var(--muted)}.service .duration{font-size:12px;color:var(--muted)}.service strong{font-size:15px;font-weight:500}.service .book{font-size:12px;text-align:center;padding:10px 14px;border:1px solid var(--line);border-radius:25px}.service .book:hover{background:var(--accent);color:#21241f}.price-note{font-size:12px;color:var(--muted);padding-top:24px}.price-note a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}.team-layout{display:grid;grid-template-columns:1.2fr 1fr .9fr;gap:16px}.team-photo img{height:100%;width:100%;object-fit:cover}.team-list{padding:10px 26px}.member{padding:20px 0;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line)}.member:last-child{border-bottom:0}.member img{width:56px;height:56px;border-radius:50%}.member h3{font-size:23px;margin:0 0 4px}.member small{font-size:11px;color:var(--muted)}.member a{margin-left:auto}.comfort{background:var(--soft);padding:28px}.comfort h3{margin:16px 0 22px}#amenities{display:flex;flex-wrap:wrap;gap:8px}#amenities span{border:1px solid #bec7ac;padding:5px 10px;border-radius:15px;font-size:10px}.care{display:grid;grid-template-columns:1fr 1fr;gap:16px}.care-copy{background:#e8e5dc;padding:40px}.care-copy h2{font-size:37px}.care-copy p{max-width:410px;font-size:13px;color:var(--muted);margin:22px 0}.brands{display:flex;flex-direction:column;gap:14px}.brands details{padding:23px 28px;flex:1}.brands summary{display:flex;justify-content:space-between;font:500 26px var(--heading);cursor:pointer;letter-spacing:-.8px}.brands p,.brands a{font-size:13px}.brands p{color:var(--muted);margin-bottom:0}.brands a{text-decoration:underline}.trust-grid{display:grid;grid-template-columns:1.2fr .85fr 1fr;gap:16px}.trust-grid>.tile{padding:30px}.trust-rating{background:var(--accent);color:#21241f}.trust-rating .score{font-size:80px}.trust-rating .score span{color:#52692f}.trust-grid p{font-size:13px}.facebook .score{font-size:80px;margin-top:25px}.awards{background:#282b25;color:#fff}.awards summary{list-style:none;cursor:pointer}.awards .medal{float:right;color:var(--accent);font-size:70px;line-height:1.6}.awards h3{font-size:31px;margin-top:27px}.awards p{color:#dde2d6}.source{display:block;font-size:10px;color:var(--muted);margin-top:15px}.faq{display:grid;grid-template-columns:1fr 1.6fr;gap:50px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-size:16px}.faq p{color:var(--muted);font-size:14px}.faq a{text-decoration:underline}summary::-webkit-details-marker{display:none}details[open] summary>span:last-child:not(.tile-bottom):not(.label){transform:rotate(45deg)}.contact-grid{display:grid;grid-template-columns:1fr 1fr .8fr;gap:16px}.contact-info{grid-row:span 2;padding:28px}.contact-info h3{font-size:23px}.contact-info p{margin-top:-5px;color:var(--muted);font-size:12px}.contact-info>a{display:block;font-size:12px;margin-top:12px}.contact-info>a.contact-phone{font-size:21px;letter-spacing:-.5px}.email{overflow-wrap:anywhere}.contact-info hr{border:0;border-top:1px solid var(--line);margin:25px 0}.contact-info small{font-size:9px;color:var(--muted)}#hours{margin:15px 0}#hours>div{display:flex;justify-content:space-between;padding:4px 8px;font-size:12px}#hours .today{background:var(--accent);color:#21241f;border-radius:6px;font-weight:600}.map{grid-column:span 2;min-height:270px}.map iframe{height:100%;width:100%;min-height:270px;border:0}.map .btn{position:absolute;bottom:20px;right:20px}.interior{grid-column:span 2;height:210px;display:flex;align-items:center;background:var(--soft)}.interior img{width:45%;height:100%}.interior span{font:500 27px/1.3 var(--heading);letter-spacing:-1px;padding:25px;max-width:250px}footer{margin-top:80px;padding:35px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line)}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}footer .brand small{font-size:9px}.mobile-bar{display:none}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--ink);color:var(--surface);padding:15px}.skip:focus{top:10px}dialog{padding:60px 20px 15px;border:0;border-radius:24px;background:var(--surface);color:var(--ink);max-width:1000px;width:calc(100% - 32px);max-height:95dvh}dialog::backdrop{background:#10130fe6;backdrop-filter:blur(8px)}dialog .close{position:absolute;right:16px;top:10px;font-size:28px}#lightbox-img{width:100%;height:70dvh;object-fit:contain}.lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.lightbox-footer p{text-align:center;font-size:13px}body:has(dialog[open]){overflow:hidden}[data-theme=dark]{--bg:#151713;--surface:#23271f;--ink:#f1f3eb;--muted:#b7bdaf;--line:#41483a;--soft:#30392a;color-scheme:dark}[data-theme=dark] .hours-mini{background:#30392a}[data-theme=dark] .location-mini,[data-theme=dark] .care-copy{background:#33342c}[data-theme=dark] .stars{color:#b0d86b}[data-theme=dark] .trust-rating .stars{color:#52692f}[data-theme=dark] .status-dot{background:#a9d676}[data-theme=dark] .pin{color:#b0b69f}
@media(min-width:1500px){.hero h1{font-size:65px}}
@media(max-width:1100px){.header nav{gap:15px}.header{gap:15px}.bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:225px 225px 190px}.hero{padding:30px}.hero h1{font-size:53px}.hero-actions{gap:13px;flex-wrap:wrap}.hero-foot{margin-top:13px}.rating,.hours-mini{padding:20px}.score{font-size:51px}.label{font-size:8px}.today-time{font-size:24px}.team-mini{padding:24px}.avatars img{width:60px;height:60px}.team-mini h2{font-size:25px}.header .brand{font-size:19px}.header-book{padding:13px 16px}.price-tools{display:block}.search{margin-top:20px;width:100%}.team-layout{grid-template-columns:1fr 1fr}.comfort{grid-column:span 2}.comfort h3 br{display:none}.comfort h3{margin:12px 0 15px}.contact-grid{grid-template-columns:1fr 1.3fr}.map,.interior{grid-column:2}.contact-info{grid-column:1}.service{grid-template-columns:minmax(0,1fr) 70px 100px 110px;gap:15px}}
@media(max-width:760px){.wrap{padding:0 18px}.header{height:83px;gap:10px}.header .brand{font-size:17px;gap:8px}.brand img{width:38px;height:38px}.brand small{font-size:7px;letter-spacing:1.4px}.header-actions{gap:7px}.header .round{width:36px;height:36px}.header-book{padding:10px 12px;font-size:10px;gap:5px}#menu{display:inline-flex}.header nav{display:none;position:absolute;top:76px;left:18px;right:18px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:15px;z-index:10;box-shadow:0 15px 30px #0002}.header nav.open{display:flex;flex-direction:column;gap:0}.header nav a{padding:12px}.intro-line{font-size:10px;padding:17px 0}.intro-line span:last-child{display:none}.bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:12px}.hero{grid-column:span 2;grid-row:auto;padding:27px 25px;min-height:410px}.hero-top{font-size:9px}.spark{right:25px;top:24px;width:38px;height:38px}.hero h1{font-size:52px;letter-spacing:-2.8px;margin:24px 0 16px}.hero p{font-size:12px}.hero-actions{gap:13px;margin-top:21px}.hero-actions .btn{font-size:11px;padding:13px 17px;gap:15px}.phone{font-size:10px}.hero-foot{font-size:8px;margin-top:24px}.hero-photo{grid-column:1;grid-row:span 2;min-height:342px}.photo-top{font-size:7px;left:16px;right:16px;top:18px;letter-spacing:.8px}.photo-bottom{left:16px;right:16px;font-size:24px;bottom:20px;display:block}.photo-bottom .circle{margin-top:15px;width:30px;height:30px;font-size:18px}.rating,.hours-mini{padding:20px 17px}.rating .label{font-size:7px;line-height:1.7}.score{font-size:43px;letter-spacing:-2.5px;margin:11px 0 0}.score span{font-size:17px}.stars{font-size:11px;letter-spacing:2px}.rating .tile-bottom{font-size:9px;margin-top:10px;gap:4px}.today-time{font-size:20px;margin-top:22px;letter-spacing:-1px}.hours-mini .tile-bottom{font-size:10px;margin-top:22px}.hours-mini .label{font-size:7px;letter-spacing:.6px}.team-mini{grid-column:span 2;padding:25px;min-height:177px}.team-mini h2{font-size:24px}.avatars img{width:64px;height:64px}.location-mini{grid-column:span 2;padding:25px;min-height:180px}.location-mini h2{font-size:34px}.location-mini .label{font-size:8px}.pin{width:65px;height:65px;right:27px;top:40px}.section{padding-top:64px}.section-heading{display:block;margin-bottom:23px}.section-heading p{margin-top:17px;font-size:12px}.section-heading .btn{margin-top:22px}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:12px}h2{font-size:31px;letter-spacing:-1.3px}.offer-grid{grid-template-columns:1fr 1fr;gap:10px}.offer{padding:18px 15px;border-radius:17px}.offer summary{font-size:15px;gap:7px;align-items:start}.offer summary small{display:block;font-size:10px;margin-bottom:12px}.offer summary .plus{font-size:20px}.offer p{font-size:12px}.featured{grid-template-columns:1fr;gap:10px}.featured a{padding:19px 23px}.featured strong{font-size:24px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:235px 240px 225px 205px;gap:12px}.transformation{grid-column:span 2}.gallery .photo:nth-child(4){grid-column:span 2}.gallery .photo:nth-child(5){grid-column:1}.gallery .image-label{left:15px;right:15px;bottom:16px;font-size:10px;gap:5px}.gallery .circle{width:28px;height:28px;font-size:18px}.gallery-cta{padding:22px 18px}.gallery-cta h3{font-size:26px}.gallery-cta .tile-bottom{font-size:10px;gap:5px}.gallery-cta .label{font-size:7px}.price-card{padding:20px}.categories{gap:6px}.categories button{padding:8px 10px;font-size:10px}.price-head span+span{display:none}.service{grid-template-columns:1fr auto;gap:12px;padding:20px 0}.service>div{grid-column:span 2}.service h3{font-size:14px}.service .duration{grid-column:1}.service strong{grid-column:2;grid-row:auto;text-align:right}.service .book{grid-column:span 2;justify-self:start;font-size:11px;padding:8px 14px}.service p{font-size:11px}.price-note{font-size:11px}.price-note a{display:block;margin-top:10px}.team-layout{grid-template-columns:1fr;gap:12px}.team-photo{max-height:330px}.team-photo img{height:auto}.team-list{padding:6px 24px}.comfort{grid-column:auto;padding:25px}.comfort h3{font-size:27px}.care{grid-template-columns:1fr}.care-copy{padding:28px}.care-copy h2{font-size:30px}.brands details{padding:23px 25px}.brands summary{font-size:24px}.trust-grid{grid-template-columns:1fr 1fr;gap:12px}.trust-grid>.tile{padding:22px 19px}.trust-rating{grid-column:span 2}.trust-rating .score{font-size:72px}.trust-grid p{font-size:12px}.facebook .score{font-size:55px;letter-spacing:-3px}.trust-grid .tile-bottom{font-size:10px}.awards h3{font-size:22px;letter-spacing:-.7px;clear:both;margin-top:16px}.awards .medal{font-size:45px;float:none;display:block;height:57px}.awards .label{font-size:7px}.faq{grid-template-columns:1fr;gap:14px}.faq summary{font-size:14px}.faq p{font-size:12px}.contact-grid{grid-template-columns:1fr}.contact-info,.map,.interior{grid-column:1;grid-row:auto}.contact-info{padding:26px}.map{height:300px}.map iframe{height:100%}.interior{height:190px}.interior span{font-size:24px;padding:20px}.contact-info .label{font-size:9px}.contact-info small{font-size:10px}footer{margin-top:55px;padding:25px 0 100px;flex-wrap:wrap;gap:15px}footer p{display:none}footer .brand{font-size:18px}footer>a:last-child{font-size:10px}.mobile-bar{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;position:fixed;bottom:0;left:0;right:0;z-index:20;padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line)}.mobile-bar a{padding:12px;text-align:center;border:1px solid var(--line);border-radius:50px;font-size:12px}.mobile-bar a:last-child{background:var(--accent);color:#21241f;border-color:var(--accent)}#lightbox-img{height:65dvh}.lightbox-footer p{font-size:11px}.lightbox-footer .round{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.map-caption{position:absolute;z-index:1;left:20px;top:20px;padding:15px 20px;border-radius:17px;background:var(--surface);box-shadow:0 3px 20px #00000012;pointer-events:none}.map-caption strong{display:block;font:500 25px var(--heading);letter-spacing:-1px;margin:5px 0}.map-caption>span:last-child{font-size:11px}.map .btn{z-index:1}
.brands details{flex:1 0 auto}
@media(max-width:760px){.brands details{flex:none}.comfort h3 br{display:initial}.avatars img{width:55px;height:55px}.hero-photo .photo-bottom .circle{display:flex}}
