/* Payidar — type, color and component scale are configurable in the CMS. */
@font-face{font-family:Manrope;src:url("fonts/manrope-400.woff2") format("woff2");font-display:swap;font-weight:400}
@font-face{font-family:Manrope;src:url("fonts/manrope-500.woff2") format("woff2");font-display:swap;font-weight:500}
@font-face{font-family:Manrope;src:url("fonts/manrope-600.woff2") format("woff2");font-display:swap;font-weight:600}
@font-face{font-family:Manrope;src:url("fonts/manrope-700.woff2") format("woff2");font-display:swap;font-weight:700}
:root{--teal:#00a8a6;--ink:#07383b;--sun:#ffea22;--paper:#fff;--container:1180px;--body-font:Manrope,Arial,sans-serif;--heading-font:Manrope,Arial,sans-serif;--radius:8px;--line:#c5dedc;--teal-deep:color-mix(in srgb,var(--teal) 82%,#004c4e);--teal-light:color-mix(in srgb,var(--teal) 75%,#00ebdt);--mist:color-mix(in srgb,var(--teal) 5%,white);--gutter:clamp(20px,4vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:18px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body-font);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg,picture{display:block;max-width:100%}img{height:auto}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font:800 1em/1.05 var(--heading-font);letter-spacing:-.045em}h1,h2,h3{overflow-wrap:break-word}p+p{margin-top:.9em}button:disabled{cursor:wait;opacity:.65}[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #005f95;outline-offset:4px}.container{width:min(calc(100% - 2 * var(--gutter)),var(--container));margin-inline:auto}.icon{width:22px;height:22px;flex:none;display:inline-block;vertical-align:middle}.skip-link{position:fixed;top:-100px;left:12px;z-index:50;background:var(--sun);color:var(--ink);padding:12px 18px}.skip-link:focus{top:12px}.button{display:inline-flex;justify-content:center;align-items:center;gap:.65em;min-height:46px;max-width:100%;border:1px solid transparent;border-radius:var(--radius);padding:.8em 1.25em;font-weight:800;line-height:1.15;font-size:14px;text-align:center;cursor:pointer;transition:filter .18s,transform .18s}.button:hover,.square-arrow:hover,.hero-booking:hover{filter:brightness(.96)}.button-primary,.square-arrow,.hero-booking{background:var(--sun);color:#052d32}.button-teal,.button-whatsapp{background:var(--teal-deep);color:#fff}.button-light{background:#fff;color:var(--ink)}.button-outline{border-color:currentColor;color:var(--ink);background:transparent}.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-size:13px;font-weight:750;border-bottom:2px solid var(--sun);padding-bottom:2px}.text-link .icon{width:17px;height:17px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-deep);margin-bottom:8px}.responsive-media,.desktop-media,.mobile-media{width:100%;height:100%;display:block}.mobile-media{display:none}.photo-crop{overflow:hidden}.bg-white{--surface:var(--paper);--fg:var(--ink)}.bg-teal,.bg-copper{--surface:var(--teal);--fg:white}.bg-yellow,.bg-cream{--surface:var(--sun);--fg:var(--ink)}.bg-dark{--surface:var(--ink);--fg:white}.section-tail{padding-block:24px}.section-tail:empty{display:none}.section-tail .button-row{margin-top:16px}.square-arrow{display:inline-grid;place-items:center;flex:none;border-radius:calc(var(--radius) * .55);width:34px;height:34px;transition:filter .18s}.square-arrow .icon{width:60%;height:60%}
/* Header */
.site-header{background:var(--paper);position:relative;z-index:8;border-bottom:1px solid #07383b0b}.header-inner{width:min(94.6%,1550px);min-height:clamp(64px,8.68vw,104px);display:flex;align-items:center;justify-content:space-between;gap:clamp(9px,2.1vw,34px);margin:auto}.brand{display:flex;align-items:center;flex:0 1 auto;min-width:0;width:min(25.4vw,315px);padding-right:clamp(12px,2.7vw,38px);border-right:1px solid #9ed4d1}.brand img,.brand svg{width:100%;height:auto;object-fit:contain;max-height:72px}.desktop-navigation{display:flex;gap:clamp(10px,2.6vw,40px);align-items:center;justify-content:space-between;min-width:0;flex-wrap:wrap}.desktop-navigation>a,.service-nav>a{font-size:clamp(9px,1.16vw,15px);font-weight:750;white-space:nowrap;padding:.6em 0}.desktop-navigation a:hover,.footer-links a:hover,.footer-page-links a:hover{text-decoration:underline;text-underline-offset:3px}.service-nav{display:flex;position:relative;align-items:center}.drop-toggle{display:grid;place-items:center;padding:0;width:18px;min-height:32px;color:var(--ink);background:none;border:0}.drop-toggle .icon{width:10px;height:10px;stroke-width:2.6}.drop-toggle[aria-expanded=true] .icon{transform:rotate(180deg)}.service-drop{position:absolute;top:100%;left:-14px;z-index:10;background:var(--paper);padding:9px;min-width:200px;box-shadow:0 15px 36px #07383b25;border-top:3px solid var(--teal)}.service-drop a{display:block;font-size:13px;padding:8px 12px}.service-drop a:focus-visible,.service-drop a:hover{background:var(--mist);text-decoration:none}.service-drop .drop-divider{border-top:1px solid var(--line);margin-top:5px;font-weight:800}.header-actions{display:flex;align-items:center;gap:clamp(7px,1.2vw,18px);flex:none}.header-actions .button{font-size:clamp(9px,1.21vw,15px);min-height:clamp(33px,4.6vw,52px);padding:.55em .85em;gap:.6em;text-align:left;line-height:1.08;border-radius:clamp(6px,.95vw,12px)}.header-actions .button .icon{width:clamp(15px,2.4vw,27px);height:clamp(15px,2.4vw,27px)}.header-actions .button span,.appointment-column .button span{max-width:6.6em}.header-actions .button-primary span,.appointment-column .button-primary span{max-width:4.8em}.menu-toggle,.menu-close{border:0;color:var(--ink);background:transparent;place-items:center;padding:8px;width:42px;height:42px}.menu-toggle{display:none}.menu-close{display:grid}.mobile-nav-backdrop{position:fixed;inset:0;background:#042a2ed9;z-index:25}.mobile-navigation{position:fixed;inset:0 0 0 auto;width:min(90%,370px);z-index:26;padding:74px 25px 25px;overflow-y:auto;background:var(--paper);color:var(--ink)}.mobile-navigation>.menu-close{position:absolute;right:16px;top:15px}.mobile-navigation>a:not(.button){display:block;font-size:18px;padding:15px 0;border-bottom:1px solid var(--line);font-weight:700}.mobile-navigation>.button{width:100%;margin-top:15px}
/* The reference photographs retain their native aspect ratios. The two colored
   masks and every word/button are independently rendered HTML/CSS. */
.hero{background:var(--surface,var(--teal));color:var(--fg,white)}.hero-frame{container-type:inline-size;position:relative;width:100%;aspect-ratio:744/510;max-height:min(750px,86svh);overflow:hidden}.hero-stage{position:absolute;inset:auto 0 0;aspect-ratio:744/510;background:var(--surface);isolation:isolate}.hero-media,.hero-color{position:absolute;inset:0}.hero-media img,.hero-media svg{width:100%;height:100%;object-fit:cover}.hero-color{background:linear-gradient(119deg,color-mix(in srgb,var(--surface),#05ded4 30%),var(--surface) 46%,color-mix(in srgb,var(--surface),#007f80 32%));clip-path:polygon(0 37.45%,38.5% 44.5%,59% 100%,0 100%)}.hero-copy{position:absolute;left:3.7%;bottom:6.05%;width:50%;z-index:1}.hero-copy h1{font-size:clamp(40px,8.1cqw,114px);font-weight:900;letter-spacing:-.057em;line-height:.935;-webkit-text-stroke:.014em currentColor}.hero-summary{font-size:clamp(13px,2.25cqw,27px);line-height:1.42;letter-spacing:-.02em;max-width:96%}.hero-summary:before,.texture-copy .section-description:before{content:"";display:block;width:8.6cqw;height:clamp(4px,.83cqw,10px);margin:2.65cqw 0 1.6cqw;background:var(--sun);border-radius:5px}.hero-copy .eyebrow{color:inherit}.hero-booking{position:absolute;bottom:0;right:0;width:30.45%;height:13.55%;display:flex;align-items:center;justify-content:center;gap:1.2cqw;clip-path:polygon(18.7% 0,100% 0,100% 100%,0 100%);padding-left:5.2%;padding-right:1%;font-weight:900;font-size:clamp(14px,2.3cqw,30px);line-height:1.04;letter-spacing:-.045em}.hero-booking span{max-width:4.6em}.hero-booking .icon{width:4.7cqw;height:4.7cqw}.hero-booking .icon:last-child{width:2.8cqw;height:2.8cqw}.hero-booking:focus-visible{outline-offset:-8px}
/* Section titles and the three secondary service tiles */
.showcase{background:var(--surface);color:var(--fg);container-type:inline-size}.services-intro{min-height:16.5cqw;max-height:none;padding:3.1cqw 3.35cqw;display:grid;grid-template-columns:49% minmax(0,1fr);gap:0;align-items:center}.services-intro h2{font-size:clamp(30px,5.4cqw,76px);line-height:.99;letter-spacing:-.064em;-webkit-text-stroke:.014em currentColor}.services-intro h2:after,.faq-appointment h2:after,.footer-domain:before{content:"";display:block;width:8.8cqw;height:clamp(4px,.87cqw,9px);border-radius:4px;background:var(--sun);margin-top:1.5cqw}.services-intro-text{border-left:1px solid var(--teal);padding:.35em 0 .35em 3.8cqw;font-size:clamp(13px,1.85cqw,23px);font-weight:550;line-height:1.44;letter-spacing:-.027em}.spotlight{position:relative;aspect-ratio:744/306;max-height:550px;overflow:hidden;background:var(--teal);color:white;isolation:isolate}.spotlight-photo,.spotlight-panel{position:absolute;inset:0}.spotlight-photo img,.spotlight-photo svg{width:100%;height:100%;object-fit:fill}.spotlight-panel{background:linear-gradient(110deg,var(--teal-light),var(--teal) 27%,var(--teal-deep));clip-path:polygon(0 0,42.7% 0,25.6% 100%,0 100%)}.spotlight-copy{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:100%;padding-left:4.35%;width:32%}.spotlight-copy h3{font-size:clamp(35px,7.15cqw,98px);line-height:.96;letter-spacing:-.052em;-webkit-text-stroke:.012em currentColor}.spotlight-copy p{font-size:clamp(12px,1.85cqw,23px);line-height:1.38;max-width:24cqw;margin:1.8cqw 0 1.9cqw;letter-spacing:-.016em}.spotlight-copy .square-arrow{width:5.25cqw;height:5cqw;max-width:65px;max-height:62px}.mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.45cqw;padding:1.72cqw 1.4cqw 3.8cqw}.mini-card{min-width:0}.mini-photo{display:block;width:100%;aspect-ratio:234/190;background:var(--mist);overflow:hidden}.mini-photo img,.mini-photo svg{width:100%;height:100%;object-fit:cover}.mini-copy{padding:1.35cqw 1.25cqw 0}.mini-copy h3{font-size:clamp(18px,2.95cqw,40px);line-height:1.1;-webkit-text-stroke:.012em currentColor;letter-spacing:-.055em}.mini-copy h3 a:hover,.spotlight-copy h3 a:hover{text-decoration:underline;text-underline-offset:4px}.mini-desc{display:flex;align-items:flex-start;justify-content:space-between;gap:1.4cqw;margin-top:.85cqw}.mini-desc p{font-size:clamp(12px,1.58cqw,19px);line-height:1.38;font-weight:550;letter-spacing:-.018em}.mini-desc .square-arrow{margin-top:.3em;width:3.2cqw;height:3.2cqw;max-width:40px;max-height:40px}.texture-banner{background:var(--surface,var(--teal));color:var(--fg,white);container-type:inline-size}.texture-stage{position:relative;isolation:isolate;min-height:31.7cqw;padding:3.7cqw 3.6cqw 2.9cqw}.texture-photo{position:absolute;inset:0 0 0 30%;z-index:-2}.texture-photo img,.texture-photo svg{width:100%;height:100%;object-fit:cover;object-position:center}.texture-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--surface),#006a6a 28%) 0%,var(--surface) 23%,color-mix(in srgb,var(--surface) 65%,transparent) 40%,transparent 64%)}.texture-copy{width:44%}.texture-copy h2{font-size:clamp(36px,6.47cqw,86px);line-height:.94;font-weight:900;letter-spacing:-.062em;-webkit-text-stroke:.014em currentColor}.texture-copy .section-description{font-size:clamp(13px,2.03cqw,24px);line-height:1.42;letter-spacing:-.017em;max-width:93%}.texture-copy .section-description:before{width:7.3cqw;margin:2.0cqw 0 1.6cqw}.texture-copy .eyebrow{color:inherit}.faq-appointment{container-type:inline-size;display:grid;grid-template-columns:minmax(0,58.3fr) minmax(0,41.7fr);background:var(--paper);padding:3.9% 2.25% 4% 3.2%}.faq-column,.appointment-column{background:var(--surface,var(--paper));color:var(--fg,var(--ink));min-width:0}.faq-column{padding-right:4.4cqw}.appointment-column{padding-left:4.4cqw;border-left:1px solid var(--teal)}.faq-appointment h2{font-size:clamp(23px,3.65cqw,46px);line-height:1.02;letter-spacing:-.052em;font-weight:850;-webkit-text-stroke:.01em currentColor}.faq-appointment h2:after{width:7.3cqw;height:clamp(3px,.72cqw,7px);margin:1.45cqw 0 1.6cqw}.faq-list{display:grid}.faq-item{border-bottom:1px solid #bacfce}.faq-item summary{display:flex;list-style:none;justify-content:space-between;gap:12px;align-items:center;padding:1.45cqw .65cqw;font-size:clamp(12px,1.7cqw,20px);line-height:1.35;font-weight:650;letter-spacing:-.022em;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary .icon{display:none}.faq-item summary:after{content:"+";font-weight:800;font-size:1.3em;line-height:1}.faq-item[open] summary:after{content:"−"}.faq-answer{padding:2px .65cqw 1.6cqw}.faq-appointment .faq-answer p{font-size:clamp(12px,1.65cqw,17px)}.appointment-column .section-description{font-size:clamp(13px,1.85cqw,23px);line-height:1.47;letter-spacing:-.023em}.appointment-column .button-row{margin-top:2.4cqw;gap:1.4cqw;flex-wrap:wrap}.appointment-column .button{min-height:5.9cqw;font-size:clamp(11px,1.65cqw,20px);padding:.55em .78em;gap:.56em;text-align:left;line-height:1.02;letter-spacing:-.035em}.appointment-column .button .icon{width:3.45cqw;height:3.45cqw}.section-faq .faq-item summary{font-size:16px;min-height:50px;padding:12px 4px}.section-faq .faq-answer{padding:6px 4px 18px}
/* Footer — the reference columns, followed by shared address and page directory. */
.site-footer{color:white;background:linear-gradient(145deg,var(--teal-light) -15%,var(--teal-deep) 75%);padding:clamp(22px,3.75vw,52px) 0 0}.site-footer>.container{width:min(calc(100% - 7.6vw),1500px)}.footer-main{display:grid;grid-template-columns:38% 18% 22% minmax(0,1fr);align-items:stretch}.footer-main>div{min-width:0}.footer-main>div+div{border-left:1px solid #ffffff8c;padding:0 clamp(12px,3.5vw,48px)}.footer-main>div:last-child{padding-right:0}.footer-brand{padding:0 5.6vw 0 2.6vw}.footer-brand>a:first-child{display:block;max-width:340px}.footer-brand img,.footer-brand svg{width:100%;height:auto;max-height:clamp(90px,15vw,175px);object-fit:contain}.footer-domain{display:block;font-size:clamp(12px,1.85vw,22px);line-height:1.2;overflow-wrap:anywhere;letter-spacing:-.035em;font-weight:700}.footer-domain:before{width:5vw;height:clamp(3px,.53vw,6px);margin:1.1vw 0 1vw}.footer-main h2,.footer-pages h2{font-size:clamp(13px,1.8vw,22px);line-height:1.2;letter-spacing:-.025em;margin:0 0 1.3vw;font-weight:800}.footer-links{display:grid;gap:.45em;line-height:1.45;font-size:clamp(11px,1.45vw,17px)}.footer-text,.footer-legal{font-size:clamp(10px,1.35vw,16px);line-height:1.55}.footer-legal{display:flex;align-items:center;gap:.2em .8em;flex-wrap:wrap;padding-top:1em;border-top:1px solid #ffffff5c;margin-top:1.15em}.footer-legal a:hover,.footer-domain:hover,.footer-bottom a:hover{text-decoration:underline}.footer-nap{margin-top:clamp(24px,3.3vw,52px);padding:clamp(18px,2.8vw,36px) 0;border-top:1px solid #ffffff65}.example-note{font-size:12px;font-weight:600;line-height:1.4;margin:0 0 14px;color:var(--teal-deep)}.site-footer .example-note{color:#fff;opacity:.86}.contact-data{margin:0;display:grid;gap:18px}.contact-data>div{min-width:0}.contact-data dt{display:flex;align-items:center;gap:7px;font-weight:700;font-size:12px;opacity:.82}.contact-data dt .icon{width:16px;height:16px}.contact-data dd{margin:5px 0 0;line-height:1.5;overflow-wrap:anywhere;font-size:15px}.contact-data dd a{display:inline-flex;align-items:center;gap:6px;text-decoration:underline;text-underline-offset:3px}.contact-data dd .icon{width:14px;height:14px}.footer-nap .contact-data{grid-template-columns:1.5fr 1fr .7fr 1.1fr 1.25fr;gap:2.2vw}.footer-nap .contact-data dd{font-size:clamp(12px,1.3vw,16px)}.footer-pages{padding:18px 0 24px;border-top:1px solid #ffffff4f}.footer-pages h2{font-size:14px;margin-bottom:9px}.footer-page-links{display:flex;gap:5px 14px;flex-wrap:wrap;font-size:12px}.footer-bottom{display:flex;justify-content:center;align-items:center;gap:14px;padding:15px 16px;border-top:4px solid var(--sun);text-align:center;font-size:clamp(11px,1.27vw,15px)}.footer-bottom a{padding-left:14px;border-left:1px solid #ffffff8c}.mobile-booking{display:none}
/* Interior pages use bounded photos and the same type/color vocabulary. */
.section{padding:clamp(32px,4.8vw,74px) 0;background:var(--surface,var(--paper));color:var(--fg,var(--ink))}.section>.container>h2,.section-heading h2{font-size:clamp(28px,3.5vw,46px);margin-bottom:20px}.section-description{line-height:1.6}.section-description+.service-grid,.section-description+.process-list{margin-top:32px}.page-heading{background:linear-gradient(111deg,var(--mist) 10%,#f5fffe 60%,color-mix(in srgb,var(--sun) 21%,white));position:relative;padding:clamp(34px,5.8vw,84px) 0;border-bottom:1px solid var(--line)}.page-heading .container{position:relative}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px;margin-bottom:26px;color:#416966}.breadcrumbs a{text-decoration:underline}.page-heading h1{font-size:clamp(37px,5.2vw,76px);font-weight:850;line-height:1.04}.page-heading h1:after{content:"";display:block;width:clamp(45px,5.5vw,80px);height:6px;background:var(--sun);margin-top:18px;border-radius:4px}.page-intro{max-width:750px;font-size:clamp(16px,1.75vw,22px);line-height:1.6;margin-top:20px}.page-heading .button{margin-top:22px}.article-layout{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(260px,1fr);gap:clamp(25px,4.2vw,65px);align-items:start}.page-article{min-width:0}.article-cover{width:100%;aspect-ratio:17/8;max-height:325px;overflow:hidden;margin-bottom:27px;border-radius:var(--radius)}.article-cover img,.article-cover svg,.region-card-photo img,.region-card-photo svg,.gallery-photo img,.gallery-photo svg,.service-photo img,.service-photo svg,.contact-photo img,.contact-photo svg,.section-extra-photo img,.section-extra-photo svg{width:100%;height:100%;object-fit:cover}.prose{font-size:16px;line-height:1.82;overflow-wrap:anywhere}.prose p+p{margin-top:1.1em}.prose h2,.prose h3{margin:1.3em 0 .55em;line-height:1.16;font-size:clamp(23px,2.4vw,33px)}.prose h3{font-size:22px}.prose>:first-child{margin-top:0}.article-aside,.booking-panel{border:1px solid var(--line);border-top:5px solid var(--teal);border-radius:var(--radius);padding:clamp(22px,2.4vw,38px);background:var(--mist)}.article-aside{position:sticky;top:25px}.contact-panel>h2{font-size:clamp(22px,2.2vw,30px);margin-bottom:16px}.aside-cta{padding-top:24px;margin-top:24px;border-top:1px solid var(--line)}.aside-cta .button{width:100%}.service-grid,.region-page-grid,.section-gallery{display:grid;gap:clamp(16px,2.5vw,32px);margin-top:30px;grid-template-columns:repeat(3,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card,.region-card{min-width:0}.service-photo,.region-card-photo{display:block;overflow:hidden;border-radius:var(--radius);background:var(--mist);aspect-ratio:16/9;max-height:245px}.region-card-photo{max-height:205px}.service-copy,.region-card>div{padding:17px 0}.service-copy h2,.region-card h2{font-size:clamp(23px,2.5vw,31px);line-height:1.14}.service-copy p,.region-card p{font-size:14px;line-height:1.7;margin:11px 0 15px}.inner-content .service-grid,.inner-content .region-page-grid,.inner-content>.container>.faq-list{border-top:1px solid var(--line);padding-top:32px;margin-top:42px}.gallery-photo{aspect-ratio:4/3;max-height:240px;border-radius:var(--radius);overflow:hidden}.section-extra-photo,.contact-photo{aspect-ratio:16/7;max-height:340px;overflow:hidden;border-radius:var(--radius);margin:28px 0}.extra-title{font-size:26px;margin:26px 0 12px}.extra-feature{border-bottom:1px solid var(--line);padding:10px 0}.process-list{display:grid}.process-row{display:grid;align-items:center;grid-template-columns:60px minmax(0,1fr) minmax(20%,28%);gap:22px;padding:18px 0;border-bottom:1px solid var(--line)}.step-number{font:800 40px/1 var(--heading-font);color:var(--teal-deep)}.step-copy h3{font-size:24px}.step-copy p{margin-top:7px}.step-photo{height:95px;overflow:hidden;border-radius:var(--radius)}.step-photo img,.step-photo svg{width:100%;height:100%;object-fit:cover}.step-extra{grid-column:2/-1}.region-links{display:flex;gap:20px;flex-wrap:wrap}.region-links a{display:inline-flex;gap:10px;align-items:center;border-bottom:2px solid var(--sun);padding:8px 0}.contact-page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,5vw,76px);align-items:start}.contact-page-grid .contact-panel{margin-top:28px;padding-top:26px;border-top:1px solid var(--line)}.contact-page-grid .contact-data{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-page-grid .contact-data>div:first-child{grid-column:1/-1}.booking-panel h2{font-size:clamp(27px,3.1vw,42px);line-height:1.08;margin-bottom:15px}.booking-panel>p:not(.eyebrow){font-size:14px;margin-bottom:24px}.booking-form{display:grid;gap:16px}.booking-form label{display:grid;gap:6px;min-width:0}.booking-form label>span{font-size:13px;font-weight:650}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-form input:not([type=checkbox]),.booking-form select,.booking-form textarea{display:block;width:100%;min-width:0;min-height:44px;padding:10px 12px;color:var(--ink);border:1px solid #aacac8;border-radius:calc(var(--radius) * .6);background:#fff;resize:vertical}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--teal)}.booking-form .consent{display:flex;align-items:flex-start;gap:9px}.booking-form .consent span{font-size:12px;line-height:1.55;font-weight:450}.booking-form .consent a{text-decoration:underline}.booking-form .consent input{width:17px;height:17px;margin-top:2px;flex:none;accent-color:var(--teal-deep)}.booking-form .button{justify-self:start}.form-honeypot{position:absolute!important;clip-path:inset(50%);height:1px;width:1px;overflow:hidden;pointer-events:none}.form-feedback{border-left:3px solid var(--teal);background:var(--mist);padding:12px 15px;margin:16px 0;font-size:14px}.form-feedback.error{border-color:#b0342e;background:#fff1ed}.cookie-banner{position:fixed;bottom:20px;left:20px;max-width:min(440px,calc(100vw - 40px));z-index:30;background:white;border:1px solid var(--line);box-shadow:0 8px 42px #12383824;padding:22px;border-radius:var(--radius)}.cookie-banner p{font-size:14px;margin-bottom:15px}.cookie-settings{position:fixed;bottom:10px;left:10px;z-index:18;font-size:11px;border:1px solid var(--line);background:var(--paper);padding:6px 10px;color:var(--ink);border-radius:4px}
@media(min-width:1200px){.services-intro{min-height:clamp(165px,14vw,208px)}.texture-stage{min-height:clamp(310px,28vw,418px);padding-block:clamp(35px,3.3vw,53px)}.footer-nap .contact-data{grid-template-columns:1.4fr 1fr .6fr 1fr 1.2fr}}
@media(min-width:701px) and (max-width:850px){.header-inner{gap:1.45vw;width:95%}.desktop-navigation{gap:2.2vw}.drop-toggle{width:12px}.footer-main>div+div{padding-inline:2.6vw}.footer-main>div:last-child{padding-right:0}.footer-brand{padding-right:4vw}.faq-appointment{padding-right:2.2%}.appointment-column{padding-left:4cqw}.appointment-column .button-row{gap:1.2cqw}.appointment-column .button{padding:.6em .6em;font-size:1.64cqw}.article-layout{grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);gap:22px}.contact-page-grid{grid-template-columns:1fr}.contact-page-grid .contact-data{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-nap .contact-data{grid-template-columns:1.5fr .95fr .6fr 1fr;gap:15px}.footer-nap .contact-data>div:nth-child(5){grid-column:1/3}}
@media(max-width:700px){.header-inner{min-height:64px;width:calc(100% - 28px);gap:10px}.brand{width:clamp(132px,36vw,210px);border:0;padding:0}.desktop-navigation{display:none}.header-actions{gap:6px}.header-actions .button{font-size:10px;min-height:34px;padding:6px 9px;gap:5px}.header-actions .button .icon{width:17px;height:17px}.header-actions .button-whatsapp{min-width:34px;width:34px;padding:7px}.header-actions .button-whatsapp span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.menu-toggle{display:grid;width:36px;height:36px;padding:6px}.faq-appointment{grid-template-columns:1fr;gap:26px;padding:28px var(--gutter)}.faq-column,.appointment-column{padding:0}.appointment-column{border-left:0;border-top:1px solid var(--line);padding-top:25px}.faq-appointment h2{font-size:29px}.faq-appointment h2:after{width:45px;height:4px;margin:12px 0 10px}.faq-item summary,.section-faq .faq-item summary{font-size:14px;min-height:46px;padding:10px 2px}.faq-answer{padding:3px 2px 15px}.faq-appointment .faq-answer p{font-size:14px}.appointment-column .section-description{font-size:15px;max-width:420px}.appointment-column .button-row{gap:10px;margin-top:16px}.appointment-column .button{min-height:46px;font-size:13px;padding:9px 14px}.appointment-column .button .icon{width:22px;height:22px}.footer-main{grid-template-columns:1fr 1fr;gap:24px 18px}.footer-main>div+div{border:0;padding:0}.footer-brand{padding:0}.footer-brand>a:first-child{max-width:145px}.footer-brand img,.footer-brand svg{max-height:90px}.footer-domain{font-size:12px}.footer-domain:before{width:30px;height:3px;margin:8px 0}.footer-main h2{font-size:16px;margin-bottom:10px}.footer-links,.footer-text,.footer-legal{font-size:13px}.footer-nap .contact-data{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.footer-nap .contact-data>div:first-child{grid-column:1/-1}.footer-nap .contact-data dd{font-size:13px}.footer-bottom{flex-wrap:wrap;gap:5px}.footer-bottom a{border:0;padding-left:0}.footer-page-links{font-size:12px;gap:7px 16px}.article-layout,.contact-page-grid{grid-template-columns:1fr}.article-aside{position:static}.article-cover{max-height:255px;aspect-ratio:16/9}.article-aside .contact-data{grid-template-columns:repeat(2,minmax(0,1fr))}.article-aside .contact-data>div:first-child{grid-column:1/-1}.service-grid,.region-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-copy h2,.region-card h2{font-size:21px}.service-copy p,.region-card p{font-size:13px}.prose{font-size:15px}.section-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.region-links{gap:13px}.process-row{grid-template-columns:35px minmax(0,1fr);gap:10px}.step-number{font-size:29px}.step-photo{grid-column:2;height:98px}.mobile-booking{position:fixed;left:0;right:0;bottom:0;z-index:15;display:flex;justify-content:center;background:var(--sun);color:#063033;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -1px 10px #07383b12}.mobile-booking a{display:flex;gap:8px;justify-content:center;align-items:center;flex:1;min-height:47px;padding:9px 12px;font-size:13px;font-weight:800}.mobile-booking a+a{border-left:1px solid #07383b38}.mobile-booking .icon{width:19px;height:19px}body:has(.mobile-booking){padding-bottom:calc(47px + env(safe-area-inset-bottom))}.mobile-booking~.cookie-banner,.mobile-booking~.cookie-settings{bottom:55px}}
@media(max-width:640px){.hero-frame{aspect-ratio:auto;max-height:none;overflow:visible}.hero-stage{position:relative;aspect-ratio:auto;display:flex;flex-direction:column}.hero-media{position:relative;aspect-ratio:1.55;width:100%;overflow:hidden}.hero-media img,.hero-media svg{object-position:center}.hero-color{display:none}.hero-copy{position:relative;left:auto;bottom:auto;width:100%;margin-top:-32px;padding:40px var(--gutter) 24px;clip-path:polygon(0 0,100% 28px,100% 100%,0 100%);background:linear-gradient(110deg,var(--teal-light),var(--surface) 55%,color-mix(in srgb,var(--surface),#006e70 25%))}.hero-copy h1{font-size:clamp(38px,9.4vw,55px);line-height:.99;max-width:11em;letter-spacing:-.055em}.hero-copy h1 br{display:none}.hero-summary{font-size:15px;line-height:1.5;max-width:410px}.hero-summary:before,.texture-copy .section-description:before{width:44px;height:4px;margin:15px 0 11px}.hero-booking{position:relative;bottom:auto;right:auto;align-self:stretch;width:auto;min-height:50px;clip-path:none;gap:10px;padding:10px var(--gutter);font-size:15px;justify-content:flex-end}.hero-booking span{max-width:none}.hero-booking .icon{width:22px;height:22px}.hero-booking .icon:last-child{width:17px;height:17px}.services-intro{padding:clamp(25px,6vw,38px) var(--gutter);grid-template-columns:1fr;gap:15px}.services-intro h2{font-size:clamp(31px,7vw,43px)}.services-intro h2:after{width:46px;height:4px;margin-top:11px}.services-intro-text{padding:0;border:0;font-size:14px;max-width:420px}.spotlight{aspect-ratio:1.62;max-height:340px}.spotlight-photo{left:35%}.spotlight-photo img,.spotlight-photo svg{object-fit:cover;object-position:center}.spotlight-panel{clip-path:polygon(0 0,57% 0,42% 100%,0 100%)}.spotlight-copy{width:46%;padding-left:var(--gutter)}.spotlight-copy h3{font-size:clamp(29px,7.1vw,45px)}.spotlight-copy p{font-size:clamp(12px,2.85vw,15px);line-height:1.32;max-width:95%;margin:9px 0 12px}.spotlight-copy .square-arrow{width:30px;height:30px}.mini-grid{padding:20px var(--gutter) 25px;gap:15px;grid-template-columns:1fr}.mini-card{display:grid;grid-template-columns:minmax(85px,34%) minmax(0,1fr);gap:15px;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--line)}.mini-card:last-child{border:0;padding-bottom:0}.mini-photo{aspect-ratio:1.23}.mini-copy{padding:0}.mini-copy h3{font-size:clamp(20px,5.5vw,28px)}.mini-desc{margin-top:6px;align-items:center;gap:6px}.mini-desc p{font-size:12px;line-height:1.46}.mini-desc .square-arrow{width:25px;height:28px;max-width:none;max-height:none}.texture-stage{min-height:250px;padding:30px var(--gutter)}.texture-photo{left:15%}.texture-shade{background:linear-gradient(90deg,var(--surface) 0%,var(--surface) 22%,color-mix(in srgb,var(--surface) 85%,transparent) 40%,transparent 85%)}.texture-copy{width:74%;max-width:345px}.texture-copy h2{font-size:clamp(35px,8.8vw,52px)}.texture-copy .section-description{font-size:14px;line-height:1.5}.texture-copy .section-description:before{width:37px}.contact-photo,.section-extra-photo{aspect-ratio:16/9;max-height:245px}.form-fields{grid-template-columns:1fr}.desktop-media{display:none}.mobile-media{display:block}}
@media(max-width:390px){:root{--gutter:16px}.header-inner{width:calc(100% - 20px);gap:6px}.brand{width:clamp(118px,36vw,140px)}.header-actions{gap:3px}.header-actions .button{font-size:9px;gap:3px;padding:5px 7px}.header-actions .button-whatsapp{width:30px;min-width:30px}.menu-toggle{width:33px}.spotlight{aspect-ratio:1.43}.spotlight-copy{width:46%;padding-left:13px}.spotlight-copy p{font-size:11px}.mini-card{grid-template-columns:30% 1fr;gap:11px}.mini-copy h3{font-size:19px}.mini-desc{gap:6px}.mini-desc p{font-size:12px}.mini-desc .square-arrow{width:22px;height:24px}.service-grid,.region-page-grid{grid-template-columns:1fr}.footer-main{column-gap:14px}.article-aside .contact-data,.contact-page-grid .contact-data{grid-template-columns:1fr}.article-aside,.booking-panel{padding:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
body[data-motion-enabled=false] *,body[data-motion-enabled=false] *:before,body[data-motion-enabled=false] *:after{animation:none!important;transition:none!important}
@media print{.site-header,.site-footer,.mobile-booking,.mobile-navigation,.mobile-nav-backdrop,.cookie-banner,.cookie-settings,.button,.hero-booking,.booking-panel{display:none!important}body{background:white;color:black}.container{width:100%}.article-layout{display:block}.article-aside{position:static;margin-top:24px}.prose{font-size:11pt}}

.contact-map{width:100%;height:260px;border:1px solid var(--line);border-radius:var(--radius);margin-top:24px}.aside-title{font:700 19px/1.3 var(--heading-font);margin:0 0 13px}.social-links{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid #ffffff4f;padding:17px 0}.social-links a{display:inline-flex;align-items:center;gap:4px;font-size:14px}.social-links .icon{width:15px;height:15px}.footer-extra-image{margin:22px 0;max-height:180px;overflow:hidden}.footer-extra-image img{max-height:180px;width:100%;object-fit:cover}.brand>span{font-weight:800;line-height:1.16}.brand>span small{display:block;font-size:.6em;letter-spacing:.12em}

/* Widen the heavy display face to the proportions in the supplied artwork.
   Geometry of each section stays fixed; at phone widths natural wrapping wins. */
@media(min-width:651px){
 .hero-copy h1,.services-intro h2,.spotlight-copy h3,.texture-copy h2,.mini-copy h3,.faq-appointment h2{transform-origin:left center}
 .hero-copy h1{width:89%;letter-spacing:-.034em;-webkit-text-stroke:.025em currentColor;transform:scaleX(1.115)}
 .services-intro h2{width:87%;letter-spacing:-.035em;-webkit-text-stroke:.027em currentColor;transform:scaleX(1.14)}
 .spotlight-copy h3{width:90%;letter-spacing:-.032em;-webkit-text-stroke:.026em currentColor;transform:translateY(-.92cqw) scaleX(1.115)}
 .texture-copy h2{width:90%;letter-spacing:-.038em;-webkit-text-stroke:.025em currentColor;transform:scaleX(1.11)}
 .mini-copy h3{width:93%;letter-spacing:-.04em;-webkit-text-stroke:.021em currentColor;transform:scaleX(1.075)}
 .faq-appointment h2{width:94%;letter-spacing:-.037em;-webkit-text-stroke:.022em currentColor;transform:scaleX(1.055)}
}
