:root{--paper:#f7f3ec;--paper-deep:#eee7dc;--white:#fffdf9;--ink:#272923;--ink-soft:#55574f;--forest:#344239;--forest-deep:#28362f;--clay:#9a583b;--clay-light:#d8a17b;--gold:#95612c;--line:#d9d1c6;--sage:#d6d6c9;--serif:'Fraunces',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--wrap:1200px;--shadow:0 24px 70px rgba(37,37,31,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--clay);outline-offset:4px}.wrap{width:min(var(--wrap),calc(100% - 64px));margin-inline:auto}.section-pad{padding:112px 0}.skip-link{position:absolute;top:-60px;left:16px;z-index:1000;background:var(--ink);color:white;padding:12px 18px}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:50;background:rgba(247,243,236,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(39,41,35,.1)}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:12px;flex:none}.brand img{width:54px;height:54px}.brand-copy{display:flex;flex-direction:column;line-height:1.15}.brand-copy strong{font-family:var(--serif);font-size:21px;font-weight:600;letter-spacing:-.03em}.brand-copy small{margin-top:5px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-soft)}.primary-nav{display:flex;align-items:center;gap:clamp(22px,3vw,44px);white-space:nowrap}.primary-nav>a{font-size:13px;font-weight:600;color:var(--ink-soft);transition:color .2s ease}.primary-nav>a:hover{color:var(--clay)}.primary-nav .nav-contact{border-left:1px solid var(--line);padding-left:30px;color:var(--ink)}.nav-contact span{color:var(--clay);margin-left:6px}.menu-toggle{display:none}
.hero{position:relative;padding-top:76px;padding-bottom:32px;background:var(--paper);overflow:hidden}.hero:before{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(167,97,64,.12);border-radius:50%;right:-150px;top:46px;box-shadow:0 0 0 26px rgba(167,97,64,.025),0 0 0 56px rgba(167,97,64,.02)}.hero-inner{position:relative;display:grid;grid-template-columns:.94fr 1.06fr;align-items:center;gap:66px}.hero-copy{position:relative;z-index:2;padding:18px 0 34px}.eyebrow,.section-kicker{display:flex;align-items:center;gap:12px;color:var(--clay);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.eyebrow-mark{width:27px;height:1px;background:var(--clay)}h1,h2,h3,p{margin-top:0}.hero h1,.section-heading h2,.gallery-head h2,.reviews-intro h2,.location-copy h2,.contact h2,.intro-copy h2{font-family:var(--serif);font-weight:500;letter-spacing:-.055em;line-height:.99}.hero h1{margin:26px 0 23px;font-size:clamp(64px,7vw,94px)}h1 em,h2 em{font-weight:500;color:var(--clay);font-style:italic}.hero-lead{max-width:460px;margin-bottom:31px;color:var(--ink-soft);font-size:17px;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:19px;padding:0 22px;font-size:13px;font-weight:700;transition:transform .2s ease,background .2s ease,color .2s ease}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--forest);color:var(--white)}.button-dark:hover{background:var(--forest-deep)}.button span{font-size:17px}.text-link,.under-link{font-size:13px;font-weight:700;border-bottom:1px solid var(--clay);padding:7px 0;color:var(--ink)}.text-link span,.under-link span{margin-left:8px;color:var(--clay)}.rating-pill{display:inline-flex;align-items:center;gap:12px;margin-top:32px;border:1px solid var(--line);border-radius:999px;padding:8px 15px;background:rgba(255,253,249,.56);font-size:12px;color:var(--ink-soft);transition:border .2s ease,transform .2s ease}.rating-pill:hover{border-color:var(--clay);transform:translateY(-1px)}.rating-pill strong{color:var(--ink)}.rating-stars{color:var(--gold);letter-spacing:.09em;font-size:13px}.rating-arrow{color:var(--clay)}.hero-visual{position:relative;max-width:540px;justify-self:end;width:100%;padding:0 29px 27px 0}.hero-image-frame{height:min(590px,61vw);min-height:455px;overflow:hidden;background:var(--paper-deep);position:relative;box-shadow:var(--shadow)}.hero-image-frame:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.35);pointer-events:none}.hero-image-frame img{width:100%;height:100%;object-fit:cover;object-position:center 45%}.image-note{position:absolute;left:0;bottom:0;background:var(--white);padding:14px 20px;display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.04em}.note-dot{width:7px;height:7px;border-radius:50%;background:var(--clay)}.grain-seal{position:absolute;right:-12px;top:35px;width:123px;height:123px;border-radius:50%;background:var(--forest);color:var(--paper);display:grid;place-items:center;text-align:center;transform:rotate(8deg);box-shadow:0 12px 35px rgba(34,45,37,.18)}.grain-seal svg{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);fill:none;stroke:#d8a17b;stroke-width:1;opacity:.7}.grain-seal span{font-family:var(--serif);font-size:16px;font-style:italic;line-height:1.1}.hero-grain{position:absolute;right:-101px;bottom:-13px;width:270px;fill:none;stroke:var(--clay);stroke-width:1;opacity:.46}.hero-bottom{display:flex;align-items:center;gap:15px;padding-top:30px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#77756c}.hero-bottom-line{height:1px;flex:1;background:var(--line)}
.intro{background:var(--white);position:relative}.intro-grid{display:grid;grid-template-columns:180px minmax(0,1fr) 220px;gap:38px;align-items:start}.section-kicker{font-size:10px;letter-spacing:.16em}.section-kicker>span:first-child{color:#858176}.kicker-rule{width:29px;height:1px;background:var(--clay)}.intro-copy h2,.section-heading h2,.gallery-head h2,.reviews-intro h2,.location-copy h2{font-size:clamp(42px,5vw,66px);margin:0 0 24px}.intro-copy>p{max-width:660px;color:var(--ink-soft);font-size:16px;line-height:1.8;margin-bottom:22px}.intro-note{margin-top:76px;border-left:1px solid var(--clay);padding:3px 0 0 18px;position:relative}.note-number{font-family:var(--serif);font-size:25px;color:var(--clay);font-style:italic}.intro-note p{font-family:var(--serif);font-size:17px;line-height:1.45;margin:8px 0 16px}.intro-note svg{width:112px;fill:none;stroke:var(--clay);stroke-width:1.2}
.craft{background:var(--paper)}.section-heading{display:grid;grid-template-columns:1fr 1.2fr;align-items:end;column-gap:35px;margin-bottom:48px}.section-heading .section-kicker{grid-column:1/-1;margin-bottom:21px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:310px;margin:0 0 5px auto;color:var(--ink-soft);font-size:14px}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.craft-card{position:relative;min-height:335px;padding:29px 30px 28px;background:var(--white);border:1px solid rgba(39,41,35,.09);transition:transform .25s ease,box-shadow .25s ease}.craft-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(37,37,31,.08)}.craft-index{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#88857b}.craft-icon{width:58px;height:58px;margin:28px 0 18px;fill:none;stroke:var(--forest);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.craft-icon .icon-grain{stroke:var(--clay);stroke-width:1}.craft-card h3{font-family:var(--serif);font-weight:500;font-size:25px;letter-spacing:-.025em;margin:0 0 10px}.craft-card p{font-size:13px;line-height:1.7;color:var(--ink-soft);max-width:315px;margin-bottom:19px}.craft-card>a{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.craft-card>a span{color:var(--clay);margin-left:6px}
.gallery-section{background:var(--forest);color:var(--paper)}.gallery-section .section-kicker{color:#d5a382}.gallery-section .section-kicker>span:first-child{color:#bcbeb4}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:36px}.gallery-head h2{margin:20px 0 0}.gallery-head h2 em{color:var(--clay-light)}.gallery-head>p{max-width:340px;margin:0 0 6px;color:#d1d3ca;font-size:14px;line-height:1.75}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}.filter-chip{min-height:44px;display:inline-flex;align-items:center;gap:11px;border:1px solid rgba(247,243,236,.35);padding:0 15px;background:transparent;color:var(--paper);font-size:11px;cursor:pointer;transition:background .2s ease,color .2s ease,border .2s ease}.filter-chip span{font-size:10px;color:#c2c6bc}.filter-chip:hover,.filter-chip.is-active{background:var(--paper);border-color:var(--paper);color:var(--ink)}.filter-chip.is-active span,.filter-chip:hover span{color:var(--clay)}.gallery-grid{columns:4 220px;column-gap:14px}.gallery-card{position:relative;width:100%;display:block;padding:0;margin:0 0 14px;overflow:hidden;border:0;background:#28362f;cursor:pointer;break-inside:avoid;text-align:left;color:var(--paper)}.gallery-card[hidden]{display:none}.gallery-card img{width:100%;height:auto;transition:transform .35s ease,opacity .25s ease}.gallery-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(18,25,20,.78));opacity:.9;transition:opacity .25s ease}.gallery-card:hover img{transform:scale(1.035)}.gallery-card:hover:after{opacity:1}.gallery-caption{position:absolute;z-index:1;left:17px;right:46px;bottom:16px;display:flex;flex-direction:column;line-height:1.35}.gallery-caption span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#e2b18f}.gallery-caption strong{font-family:var(--serif);font-size:17px;font-weight:500;margin-top:3px}.gallery-plus{position:absolute;z-index:2;right:12px;bottom:12px;width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.54);border-radius:50%;font-size:14px;transition:background .2s ease,color .2s ease}.gallery-card:hover .gallery-plus{background:var(--paper);color:var(--ink)}.gallery-footnote{margin:28px 0 0;display:flex;align-items:center;gap:12px;font-size:12px;color:#d7d8d0}.gallery-footnote a{color:#fff;border-bottom:1px solid var(--clay-light)}.grain-dash{width:25px;height:1px;background:var(--clay-light)}
.reviews{background:var(--white)}.reviews-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:85px}.reviews-intro{position:sticky;top:130px;align-self:start}.reviews-intro h2{margin:25px 0 21px}.reviews-intro>p{max-width:300px;color:var(--ink-soft);font-size:14px;line-height:1.8;margin-bottom:24px}.reviews-content{min-width:0}.reviews-score{display:flex;align-items:center;gap:19px;padding:0 0 25px;border-bottom:1px solid var(--line)}.score-number{font-family:var(--serif);font-size:58px;line-height:1;color:var(--forest)}.reviews-score>div:nth-child(2){display:flex;flex-direction:column}.review-stars{font-size:15px;letter-spacing:.11em;color:var(--gold)}.score-caption{font-size:11px;color:var(--ink-soft);margin-top:4px}.google-mark{margin-left:auto;font:700 30px Arial,sans-serif;letter-spacing:-.08em;background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 25% 48%,#fbbc05 48% 70%,#ea4335 70% 86%,#4285f4 86%);color:transparent;background-clip:text}.review-list{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.review-card{padding:23px 0;border-bottom:1px solid var(--line)}.review-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:10px;color:#918e84}.review-card-top span:first-child{color:var(--gold);font-size:13px;letter-spacing:.1em}.review-card blockquote{font-family:var(--serif);font-size:16px;line-height:1.55;margin:12px 0 13px}.review-card>p{font-size:10px;font-weight:700;margin:0}.review-card>p span{font-weight:400;color:#8a887e}
.location{background:var(--paper-deep)}.location-grid{display:grid;grid-template-columns:.77fr 1.23fr;gap:75px;align-items:center}.location-copy h2{margin:23px 0 21px}.location-copy>p{max-width:370px;color:var(--ink-soft);line-height:1.8;font-size:14px;margin-bottom:19px}.opening-hours{max-width:350px;margin:0 0 25px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:7px;font-size:11px}.opening-hours>strong{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:var(--clay);margin-bottom:2px}.opening-hours>span{display:flex;justify-content:space-between;gap:12px}.opening-hours b{font-weight:500}.button-outline{border:1px solid var(--forest);color:var(--forest)}.button-outline:hover{background:var(--forest);color:var(--paper)}.map-card{position:relative;min-height:420px;background:#e6e1d7;overflow:hidden;box-shadow:0 16px 42px rgba(48,44,35,.08)}.map-card:before,.map-card:after{content:"";position:absolute;inset:22px;border:1px solid rgba(52,66,57,.1);pointer-events:none}.map-card:after{inset:34px;border-color:rgba(52,66,57,.07)}.map-lines{position:absolute;inset:0;width:100%;height:100%;fill:none}.map-road{stroke:#faf7ef;stroke-width:16}.map-road.road-main{stroke:#c8b9a4;stroke-width:20}.map-contour{stroke:#a5aa92;stroke-width:1;stroke-dasharray:2 4;opacity:.85}.map-block{fill:#d3c8b7;opacity:.55}.map-ring{fill:none;stroke:#a76140;stroke-width:1.5;opacity:.56}.map-dot{fill:var(--clay);stroke:var(--white);stroke-width:4}.map-lines text{fill:var(--forest);font-family:var(--sans);font-size:10px;letter-spacing:3px;font-weight:700}.map-label{position:absolute;z-index:2;top:24px;left:25px;display:flex;align-items:center;gap:11px;background:var(--white);padding:10px 15px 10px 10px;box-shadow:0 6px 20px rgba(39,41,35,.1)}.map-label>span:last-child{display:flex;flex-direction:column;line-height:1.35}.map-label strong{font-size:11px}.map-label small{font-size:10px;color:var(--ink-soft);margin-top:3px}.map-pin{width:38px;height:38px;display:grid;place-items:center;background:var(--forest)}.map-pin svg{width:20px;fill:none;stroke:var(--paper);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.map-foot{position:absolute;z-index:2;left:25px;right:25px;bottom:23px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.north-mark{font-weight:700;color:var(--forest)}
.contact{position:relative;overflow:hidden;background:var(--forest-deep);color:var(--paper);padding:112px 0 105px}.contact-inner{position:relative;z-index:1;max-width:790px;margin-left:max(calc((100% - var(--wrap))/2),32px)}.section-kicker-light{color:#d4a17f}.section-kicker-light>span:first-child{color:#c4c9be}.contact h2{font-size:clamp(60px,8vw,100px);margin:24px 0 20px}.contact h2 em{color:var(--clay-light)}.contact-inner>p{max-width:460px;color:#d1d4ca;font-size:15px;line-height:1.8;margin-bottom:27px}.contact-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.button-light{background:var(--paper);color:var(--forest)}.button-light:hover{background:#fff}.phone-link{min-height:48px;display:flex;align-items:center;font-size:14px;font-weight:600;border-bottom:1px solid rgba(247,243,236,.5)}.contact-address{display:inline-block;margin-top:24px;font-size:12px;color:#c6c9c0}.contact-address span{color:var(--clay-light);margin-left:8px}.contact-grain{position:absolute;right:-90px;bottom:-60px;width:min(62vw,800px);opacity:.2;fill:none;stroke:var(--clay-light);stroke-width:1.15}
.site-footer{background:var(--paper);padding:37px 0 20px}.footer-main{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding-bottom:30px;border-bottom:1px solid var(--line)}.footer-brand .brand-copy strong{font-size:19px}.footer-main>p{font-family:var(--serif);font-size:19px;line-height:1.3;margin:0}.footer-main>p span{font-family:var(--sans);font-size:11px;color:var(--ink-soft)}.footer-links{justify-self:end;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.footer-links a{font-size:11px;font-weight:600}.footer-links a span{color:var(--clay)}.footer-bottom{display:flex;justify-content:space-between;padding-top:14px;color:#77756c;font-size:10px}.floating-whatsapp{position:fixed;z-index:45;right:22px;bottom:22px;width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#335b47;color:white;box-shadow:0 7px 22px rgba(31,55,42,.25);transition:transform .2s ease,background .2s ease}.floating-whatsapp:hover{transform:translateY(-3px);background:#284a38}.floating-whatsapp svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.lightbox{position:fixed;border:0;padding:0;margin:auto;max-width:min(94vw,1100px);max-height:92vh;background:#1d2822;color:#fff;overflow:visible}.lightbox::backdrop{background:rgba(15,20,17,.88);backdrop-filter:blur(4px)}.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center}.lightbox figure img{max-width:min(78vw,900px);max-height:78vh;width:auto;height:auto;object-fit:contain}.lightbox figcaption{padding:11px 40px 0;text-align:center;font-family:var(--serif);font-size:17px}.lightbox-close,.lightbox-arrow{position:absolute;z-index:2;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);background:rgba(29,40,34,.75);color:white;cursor:pointer}.lightbox-close{top:-17px;right:-17px;width:42px;height:42px;border-radius:50%;font-size:27px}.lightbox-arrow{top:50%;width:44px;height:44px;border-radius:50%;font-size:20px;transform:translateY(-50%)}.lightbox-prev{left:-56px}.lightbox-next{right:-56px}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}.js .reveal.is-visible{opacity:1;transform:none}
@media(max-width:1050px){.wrap{width:min(var(--wrap),calc(100% - 48px))}.hero-inner{gap:42px}.hero h1{font-size:clamp(60px,7.3vw,82px)}.hero-visual{max-width:480px}.hero-image-frame{min-height:430px;height:54vw}.primary-nav{gap:22px}.primary-nav .nav-contact{padding-left:19px}.reviews-layout{gap:48px}.location-grid{gap:44px}.intro-grid{grid-template-columns:145px minmax(0,1fr) 190px;gap:25px}}
@media(max-width:820px){.section-pad{padding:84px 0}.header-inner{min-height:76px}.brand img{width:49px;height:49px}.menu-toggle{width:46px;height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);background:transparent;cursor:pointer}.menu-toggle span{width:17px;height:1.5px;background:var(--ink);transition:transform .2s ease}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.primary-nav{position:absolute;top:100%;left:0;right:0;padding:15px 24px 22px;background:var(--paper);border-bottom:1px solid var(--line);display:none;align-items:stretch;gap:0;flex-direction:column;box-shadow:0 16px 22px rgba(39,41,35,.06)}.primary-nav.is-open{display:flex}.primary-nav>a{padding:13px 0;border-bottom:1px solid rgba(39,41,35,.09);white-space:nowrap}.primary-nav .nav-contact{border-left:0;padding-left:0;border-bottom:0}.hero{padding-top:55px}.hero-inner{grid-template-columns:1fr 1fr;gap:26px}.hero h1{font-size:clamp(57px,8vw,75px)}.hero-lead{font-size:15px}.hero-actions{gap:15px}.hero .button{padding:0 16px}.text-link{font-size:11px}.hero-visual{padding-right:20px}.hero-image-frame{height:60vw;min-height:410px}.grain-seal{width:102px;height:102px;right:-5px;top:24px}.grain-seal span{font-size:14px}.intro-grid{grid-template-columns:130px 1fr}.intro-note{grid-column:2;margin:0;max-width:420px}.section-heading{grid-template-columns:1fr 1fr}.craft-grid{gap:10px}.craft-card{padding:24px 19px;min-height:350px}.craft-card h3{font-size:22px}.gallery-grid{columns:3 190px}.reviews-layout{grid-template-columns:.7fr 1.3fr;gap:30px}.review-list{grid-template-columns:1fr}.review-card{padding:19px 0}.location-grid{grid-template-columns:.85fr 1.15fr;gap:25px}.map-card{min-height:365px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>p{justify-self:end}.footer-links{grid-column:1/-1;justify-self:stretch;flex-direction:row;gap:24px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.section-pad{padding:72px 0}.brand{gap:9px}.brand img{width:45px;height:45px}.brand-copy strong{font-size:19px}.brand-copy small{font-size:9px}.hero{padding-top:42px;padding-bottom:25px}.hero:before{width:290px;height:290px;right:-160px;top:280px}.hero-inner{grid-template-columns:1fr;gap:36px}.hero-copy{padding:0}.eyebrow{font-size:9px}.hero h1{font-size:clamp(58px,16vw,78px);margin:20px 0}.hero-lead{font-size:15px;max-width:380px;margin-bottom:23px}.hero-actions{gap:17px}.hero .button{min-height:50px;font-size:12px;padding:0 16px}.text-link{font-size:11px}.rating-pill{margin-top:23px;font-size:11px;padding:7px 12px;gap:9px}.hero-visual{width:calc(100% - 10px);justify-self:center;max-width:420px;padding:0 20px 18px 0}.hero-image-frame{min-height:0;height:112vw;max-height:485px}.hero-image-frame img{object-position:center 40%}.image-note{padding:11px 14px;font-size:10px}.grain-seal{width:92px;height:92px;right:-3px;top:17px}.grain-seal span{font-size:13px}.hero-grain{width:190px;right:-75px}.hero-bottom{padding-top:18px;font-size:8px;gap:10px}.intro-grid{grid-template-columns:1fr;gap:22px}.intro-copy h2,.section-heading h2,.gallery-head h2,.reviews-intro h2,.location-copy h2{font-size:clamp(43px,12vw,58px)}.intro-copy>p{font-size:14px}.intro-note{grid-column:auto;margin:7px 0 0 36px;max-width:320px}.section-heading{display:block;margin-bottom:30px}.section-heading .section-kicker{margin-bottom:20px}.section-heading>p{margin:15px 0 0;font-size:13px}.craft-grid{grid-template-columns:1fr;gap:12px}.craft-card{min-height:0;padding:23px 23px 22px}.craft-icon{width:48px;height:48px;margin:19px 0 10px}.craft-card h3{font-size:23px}.craft-card p{font-size:13px;margin-bottom:14px}.gallery-head{display:block;margin-bottom:26px}.gallery-head h2{margin-top:19px}.gallery-head>p{margin:15px 0 0;font-size:13px}.filters{gap:7px;margin-bottom:20px}.filter-chip{min-height:42px;padding:0 11px;font-size:10px;gap:8px}.gallery-grid{columns:2 135px;column-gap:9px}.gallery-card{margin-bottom:9px}.gallery-caption{left:10px;right:35px;bottom:10px}.gallery-caption span{font-size:8px}.gallery-caption strong{font-size:14px}.gallery-plus{right:7px;bottom:7px;width:26px;height:26px;font-size:12px}.gallery-footnote{font-size:11px;align-items:flex-start;line-height:1.6}.reviews-layout{grid-template-columns:1fr;gap:35px}.reviews-intro{position:static}.reviews-intro h2{margin:19px 0 17px}.reviews-intro>p{font-size:13px;margin-bottom:17px}.reviews-score{padding-bottom:19px}.score-number{font-size:49px}.review-list{grid-template-columns:1fr 1fr;gap:0 15px}.review-card{padding:17px 0}.review-card blockquote{font-size:14px;line-height:1.5}.review-card-top{font-size:9px;align-items:flex-start;flex-direction:column;gap:3px}.review-card-top span:first-child{font-size:12px}.location-grid{grid-template-columns:1fr;gap:35px}.location-copy>p{font-size:13px}.map-card{min-height:330px}.map-label{top:16px;left:15px}.map-foot{left:16px;right:16px;bottom:16px;font-size:9px}.map-card:before{inset:13px}.map-card:after{inset:22px}.contact{padding:77px 0 75px}.contact-inner{margin-left:auto}.contact h2{font-size:clamp(64px,18vw,85px);margin:20px 0 17px}.contact-inner>p{font-size:13px}.contact-actions{gap:12px 20px}.button-light{min-height:50px}.phone-link{font-size:13px}.contact-grain{width:100vw;right:-65vw;bottom:-15px}.footer-main{grid-template-columns:1fr auto;gap:20px 10px}.footer-main>p{font-size:16px;justify-self:end}.footer-links{grid-column:1/-1;flex-wrap:wrap;gap:12px 20px;margin-top:0}.footer-links a{font-size:10px}.footer-bottom{font-size:9px}.floating-whatsapp{right:14px;bottom:14px;width:50px;height:50px}.lightbox{max-width:calc(100vw - 28px)}.lightbox figure img{max-width:calc(100vw - 36px);max-height:73vh}.lightbox-close{top:-14px;right:-4px}.lightbox-arrow{width:38px;height:38px;top:auto;bottom:-49px;transform:none}.lightbox-prev{left:calc(50% - 48px)}.lightbox-next{right:calc(50% - 48px)}}
@media(max-width:370px){.wrap{width:calc(100% - 32px)}.brand-copy small{letter-spacing:.06em}.hero h1{font-size:56px}.hero-actions{align-items:flex-start;flex-direction:column}.gallery-grid{columns:2 120px}.review-list{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr}.footer-main>p{justify-self:start}.footer-links{gap:9px 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}
