@font-face{font-family:Cormorant;src:url('./display.woff2') format('woff2');font-style:normal;font-weight:400 500;font-display:swap}
@font-face{font-family:Cormorant;src:url('./display-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('./body.woff2') format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
:root{--paper:#faf7f2;--cream:#f1e9e2;--ink:#33282d;--muted:#6b5961;--plum:#5b3447;--line:#d9cbc8;--white:#fffdf9;--serif:Cormorant,Georgia,serif;--sans:Manrope,Arial,sans-serif;scroll-behavior:smooth;scroll-padding-top:2rem;color-scheme:light;accent-color:var(--plum)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.8 var(--sans);-webkit-font-smoothing:antialiased}body,button,input,textarea{font-family:var(--sans)}button,input,textarea{font-size:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:var(--plum)}a,button{transition:color .2s ease,background-color .2s ease,border-color .2s ease}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #9c5e80;outline-offset:5px}::selection{background:#e6cbd8;color:#33282d}input,textarea{caret-color:var(--plum)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-thumb{background:#b9a0aa;border:2px solid var(--paper);border-radius:8px}::-webkit-scrollbar-track{background:var(--paper)}[hidden]{display:none!important}svg{width:23px;height:23px;flex:none;vertical-align:middle}picture{display:block;overflow:hidden}picture img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;text-wrap:balance}h1{font-size:clamp(3.5rem,6.1vw,6rem);letter-spacing:-.035em;margin-bottom:26px}h2{font-size:clamp(2.65rem,4.2vw,4.5rem);letter-spacing:-.025em;margin-bottom:24px}h3{font-size:2rem;letter-spacing:-.015em}em{font-weight:400;color:var(--plum)}p{max-width:67ch;margin-bottom:20px}strong{font-weight:600}address{font-style:normal;margin:24px 0}.wrap{width:calc(100% - 112px);max-width:1328px;margin-inline:auto}.section{padding-top:110px;padding-bottom:110px}.lead{font-size:17px;line-height:1.85;max-width:58ch}.small{font-size:12px;line-height:1.75;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding:6px 0}.text-link svg{width:20px}.text-link:hover svg{transform:translateX(3px)}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:17px 24px;background:var(--plum);color:var(--white);font-size:12px;font-weight:600;text-decoration:none;line-height:1.5;border:1px solid var(--plum);min-height:52px}.button:hover{background:#3e2331;color:var(--white);border-color:#3e2331}.button-small{padding:13px 19px;min-height:46px;gap:15px}.button-small svg{width:18px}.skip-link{position:absolute;top:4px;left:8px;transform:translateY(-150%);z-index:200;background:var(--plum);color:white;padding:8px 18px}.skip-link:focus{transform:none}.location-line{padding:8px 16px;background:var(--plum);color:var(--white);text-align:center;font-size:10px;letter-spacing:.055em}.location-line a{color:inherit;text-decoration:none}.location-line span{margin:0 13px}.masthead{height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;line-height:1}.brand>span{font-family:var(--serif);font-size:35px;font-style:italic}.brand>strong{font-size:10px;letter-spacing:.24em;margin-top:9px;font-weight:500}.main-nav{display:flex;align-items:center;gap:31px;font-size:12px}.main-nav>a:not(.button){text-decoration:none;padding-block:15px}.main-nav a[aria-current=page]{text-decoration:underline}.care-menu{position:relative}.care-menu>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:15px 0}.care-menu>summary::-webkit-details-marker{display:none}.care-menu summary svg{width:13px;height:13px}.care-links{position:absolute;left:-22px;top:50px;z-index:20;width:245px;background:var(--white);box-shadow:0 10px 22px #3e233114;padding:18px 22px}.care-links a{display:block;padding:8px 0;text-decoration:none}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:49% 51%;min-height:650px;max-width:1800px;margin:auto;border-block:1px solid var(--line)}.hero-copy{padding:70px 50px 38px max(56px,calc((100vw - 1328px)/2));align-self:center}.hero-copy>p{font-size:14px;max-width:46ch;margin-bottom:30px}.hero h1{font-size:clamp(3.8rem,5.65vw,5.8rem);line-height:.98;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.hero-actions .text-link{font-size:11px}.hero-note{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:10px;margin-top:42px;padding-top:16px;max-width:410px}.hero-note strong{font-size:12px}.hero-photo{position:relative;min-height:650px}.hero-photo picture{position:absolute;inset:0}.hero-photo img{object-position:51% center}.photo-note{position:absolute;bottom:24px;right:24px;background:var(--paper);padding:11px 19px;font:italic 25px/1.2 var(--serif);color:var(--plum)}.promise-line{display:flex;justify-content:space-between;gap:22px;padding-block:25px;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted)}.promise-line span+span{border-left:1px solid var(--line);padding-left:45px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:45px}.section-heading h2{margin:0}.section-heading p{font-size:14px;max-width:45ch;margin-bottom:7px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.service-link{position:relative;display:block;text-decoration:none}.service-link picture{aspect-ratio:1/1.06;margin-bottom:25px}.service-grid article:nth-child(2){padding-top:55px}.service-grid article:nth-child(3){padding-top:25px}.service-link img{transition:transform .6s cubic-bezier(.16,1,.3,1)}.service-link:hover img{transform:scale(1.025)}.service-title{display:flex;align-items:start;justify-content:space-between;gap:12px}.service-title h3{font-size:28px;margin-bottom:15px}.service-title>span{font-size:10px;padding-top:6px;white-space:nowrap;color:var(--muted)}.service-link>p{font-size:12px;max-width:37ch;padding-right:25px;margin-bottom:14px}.service-link>svg{width:30px}.editorial-section{background:var(--cream);padding-block:90px}.editorial-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:100px;align-items:center}.editorial-photo{aspect-ratio:1/1.05}.editorial-copy{padding:20px 5px}.editorial-grid p{font-size:14px}.detail-note{margin-top:34px;padding-top:22px;border-top:1px solid #cbb6bc;max-width:40ch;color:var(--muted);font-size:11px}.gallery{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}.gallery>picture{aspect-ratio:1.65}.gallery>.gallery-large{grid-row:span 2;aspect-ratio:auto}.gallery-large img{object-position:52% center}.gallery>picture:last-child img{object-position:center}.institute-preview{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px;border-top:1px solid var(--line)}.institute-preview p{font-size:14px;max-width:46ch}.institute-preview picture{aspect-ratio:1.2}.institute-preview address{font-weight:600;font-size:13px}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;border-top:1px solid var(--line)}.faq-section .text-link{margin-top:8px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:30px;cursor:pointer;list-style:none;padding:24px 0;font-size:14px;line-height:1.6;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font:400 27px/1 var(--serif);color:var(--plum)}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:13px;padding:0 40px 10px 0;color:var(--muted)}.closing{background:var(--plum);color:var(--white);padding-block:85px}.closing-inner{display:grid;grid-template-columns:1.3fr 1fr;gap:90px;align-items:center}.closing h2{font-size:clamp(3.3rem,5.2vw,5.4rem);margin:0;line-height:1.04}.closing em{color:#eac8d0}.closing p{font-size:13px;max-width:39ch}.closing .button{color:var(--plum);background:var(--paper);border-color:var(--paper)}.closing .button:hover{background:#e9d9d9}.closing-phone{display:block;margin-top:18px;width:fit-content;font-size:16px;text-decoration:none}.closing .small{color:#e3cbd4;margin-top:12px;font-size:10px}.footer{padding-top:75px;padding-bottom:25px}.footer-top{display:grid;grid-template-columns:1.1fr 1.3fr 1.2fr .9fr;gap:35px}.footer .brand{margin-bottom:22px}.footer h2{font:600 12px/1.5 var(--sans);letter-spacing:0;margin-bottom:20px}.footer p,.footer address,.footer a:not(.brand),.footer button{font-size:11px;color:var(--muted);line-height:2}.footer address{margin:0}.footer-top>div:last-child>a{display:block;text-decoration:none;margin-bottom:5px}.footer-top .text-link{font-size:10px}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid var(--line);margin-top:55px;padding-top:22px;font-size:9px;color:var(--muted)}.footer-bottom nav{display:flex;gap:20px}.footer-bottom nav a,.footer-bottom nav button{font-size:9px!important;text-decoration:none}.footer button{background:none;border:0;padding:0}.mobile-booking{display:none}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:10px;line-height:1.6;color:var(--muted);margin-bottom:35px}.breadcrumbs a{text-decoration:none}.page-heading{padding-top:55px;max-width:1328px}.page-heading h1{max-width:950px}.page-heading .lead{max-width:70ch;margin-bottom:0}.inner-hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:35px;padding-bottom:30px}.inner-hero h1{font-size:clamp(3.2rem,4.9vw,5rem)}.inner-hero .lead{font-size:14px}.inner-visual{aspect-ratio:1/1.05;min-width:0}.service-content{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.service-content h2{font-size:42px}.prose{max-width:74ch}.prose p{font-size:15px}.prose h2{margin-top:48px}.prose h2:first-child{margin-top:0}.service-prices h2{margin-bottom:30px}.service-prices .button{margin-top:16px}.full-photo picture{max-height:420px;aspect-ratio:2.8}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums;text-align:left}th{font-weight:500}thead{font-size:10px;letter-spacing:.015em;color:var(--muted)}th,td{padding:19px 0;border-bottom:1px solid var(--line)}th:first-child{padding-right:30px}td:last-child,th:last-child{text-align:right;padding-left:25px;white-space:nowrap}td:nth-child(2),th:nth-child(2){white-space:nowrap;min-width:66px}.price-section{max-width:1080px;padding-top:55px}.price-section h2{font-size:42px;margin-top:65px}.price-section .small{margin-top:25px}.price-filter{display:flex;gap:12px;flex-wrap:wrap}.price-filter button{border:1px solid var(--line);padding:11px 22px;background:transparent;color:var(--ink);font-size:12px}.price-filter button[aria-pressed=true]{color:var(--white);background:var(--plum);border-color:var(--plum)}.price-filter button:hover{border-color:var(--plum)}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;border-top:1px solid var(--line)}.access-grid p{font-size:14px}.hours dl{margin:0 0 30px}.hours dl>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0;font-size:13px}.hours dd{margin:0}.faq-page{max-width:950px;padding-top:55px}.advice{padding-top:65px}.advice h2{font-size:39px}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:110px;padding-top:65px}.contact-grid h2{font-size:42px}.contact-number{display:block;font:400 38px/1.3 var(--serif);text-decoration:none;margin-bottom:18px}.contact-info p{font-size:13px}.contact-info .small{font-size:11px;margin-top:18px}.contact-info address{margin:30px 0;font-size:15px}.contact-form{display:grid;gap:20px}.contact-form>label,.contact-form [data-kai-antibot]>label{display:grid;gap:6px;font-size:12px}.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;border:1px solid #ba9fa9;background:var(--white);border-radius:0;padding:13px 15px;color:var(--ink);min-height:48px}.contact-form textarea{resize:vertical}.contact-form .check{display:flex;align-items:start;gap:10px;font-size:11px}.check input{width:16px;height:16px;margin-top:4px;flex:none}.contact-form button{justify-self:start;min-width:210px}.contact-form button:disabled{opacity:.6;cursor:wait}.contact-form .honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-message{font-size:13px}.form-message[data-state=error],[data-kai-antibot-error]{color:#8c263c}.form-message[data-state=success]{color:#27553b}.error-page{min-height:65vh}.error-page>p:first-child{font:italic 60px var(--serif);color:var(--plum)}.error-page h1{font-size:60px}.error-page .text-link{margin-left:30px}.legal-content h2{font-size:35px}.legal-content h3{font-size:28px}.notice-banner{position:fixed;bottom:20px;left:20px;right:20px;z-index:60;background:var(--plum);color:var(--white);padding:20px}.notice-banner button{float:right;background:none;border:1px solid currentColor;color:inherit;padding:7px 14px}.cookie-banner{position:fixed;bottom:20px;left:20px;max-width:520px;padding:26px;background:var(--white);box-shadow:0 8px 35px #33282d26;z-index:80;font-size:12px}.cookie-banner>div,.cookie-modal section>div{display:flex;gap:10px;flex-wrap:wrap}.cookie-banner button,.cookie-modal button{background:var(--plum);color:white;padding:10px 14px;border:1px solid var(--plum);font-size:11px}.cookie-modal{position:fixed;inset:0;background:#33282d99;z-index:90;padding:25px;display:grid;place-items:center}.cookie-modal section{background:var(--paper);padding:35px;max-width:600px;max-height:90vh;overflow:auto}.cookie-modal label{display:grid;grid-template-columns:1fr auto;gap:10px;padding:15px 0}.cookie-modal label small{grid-column:1}.cookie-modal h2{font-size:38px}.cookie-modal section>button{margin-bottom:15px}
@media(min-width:1600px){.hero-copy{padding-left:80px}}@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.main-nav{gap:20px}.hero-copy{padding-left:32px;padding-right:28px}.hero h1{font-size:66px}.hero-actions{gap:20px}.hero-actions .text-link{font-size:10px}.hero .button{padding-inline:16px;gap:15px}.hero-photo,.hero{min-height:600px}.editorial-grid,.institute-preview,.service-content{gap:55px}.footer-top{gap:24px}.promise-line span+span{padding-left:25px}.contact-grid{gap:65px}}
@media(max-width:900px){.masthead{height:90px}.main-nav{gap:16px}.main-nav>a,.care-menu summary{font-size:11px}.main-nav .button{padding:11px;gap:9px}.brand>span{font-size:30px}.brand>strong{font-size:8px}.hero h1{font-size:56px}.hero-copy{padding-top:40px;padding-bottom:35px}.hero-copy>p{font-size:12px}.hero-photo,.hero{min-height:580px}.hero-actions{align-items:start;flex-direction:column;gap:15px}.hero-note{margin-top:28px}.section{padding-block:80px}.service-grid{gap:22px}.service-title{display:block}.service-title h3{font-size:27px;margin-bottom:3px}.service-title>span{display:block;margin-bottom:13px}.editorial-grid{gap:45px}.faq-section{gap:45px}.closing-inner{gap:45px}.footer-top{grid-template-columns:1fr 1fr;row-gap:45px}.section-heading{gap:45px}.institute-preview{gap:45px}.inner-hero{gap:35px}.inner-hero h1{font-size:52px}.service-content{grid-template-columns:1fr;gap:45px}.access-grid{gap:55px}.contact-grid{gap:45px}.contact-number{font-size:30px}.promise-line{font-size:9px}.promise-line span+span{padding-left:15px}}
@media(max-width:700px){:root{scroll-padding-top:20px}.wrap{width:calc(100% - 40px)}body{font-size:14px}.location-line{font-size:9px;padding-block:8px}.location-line span{margin-inline:8px}.masthead{height:85px;position:relative;z-index:30}.brand>span{font-size:31px}.brand>strong{font-size:8px;letter-spacing:.24em}.menu-toggle{display:flex;align-items:center;gap:9px;padding:10px 0 10px 10px;border:0;background:none;color:var(--ink);font-size:12px}.menu-toggle svg{width:24px;height:24px}.main-nav{display:none;position:absolute;top:84px;left:-20px;right:-20px;background:var(--paper);border-bottom:1px solid var(--line);padding:20px;box-shadow:0 13px 20px #33282d0d}.main-nav.is-open{display:flex;align-items:stretch;flex-direction:column;gap:0}.main-nav>a:not(.button),.care-menu>summary{padding:13px 0;font-size:15px}.main-nav .button{margin-top:15px;padding:16px}.care-links{position:static;background:transparent;box-shadow:none;padding:0 0 12px 20px;width:auto}.care-links a{font-size:13px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:43px 20px 30px;width:100%}.hero h1{font-size:clamp(3.3rem,11.9vw,4.7rem);margin-bottom:23px;line-height:.98}.hero-copy>p{font-size:12px;line-height:1.85;max-width:48ch;margin-bottom:25px}.hero-actions{flex-direction:row;align-items:center;gap:20px}.hero-actions .button{font-size:10px;gap:12px;padding:14px 16px;min-height:47px}.hero-actions .text-link{font-size:9px;gap:8px}.hero-actions .text-link svg{width:17px}.hero-note{font-size:9px;padding-top:14px;margin-top:25px;max-width:none}.hero-note strong{font-size:11px}.hero-photo{min-height:0;height:auto;aspect-ratio:1.25}.photo-note{bottom:15px;right:15px;font-size:22px;padding:10px 15px}.promise-line{display:flex;flex-direction:column;gap:10px;padding-block:22px;font-size:11px}.promise-line span+span{border:0;padding:0}.promise-line span{display:flex;align-items:center;gap:10px}.promise-line span:before{content:'';width:5px;height:5px;background:#a27b89;border-radius:50%;flex:none}.section{padding-block:62px}h2{font-size:44px;line-height:1.06}.section-heading{display:block;margin-bottom:32px}.section-heading h2{margin-bottom:22px}.section-heading p{font-size:13px;max-width:48ch}.section-heading .small{font-size:10px}.service-grid{display:block}.service-grid article,.service-grid article:nth-child(2),.service-grid article:nth-child(3){padding-top:0;margin-bottom:38px}.service-grid article:last-child{margin-bottom:0}.service-link picture{aspect-ratio:1.25;margin-bottom:20px}.service-title{display:flex;gap:15px;align-items:baseline}.service-title h3{font-size:30px;margin-bottom:12px}.service-title>span{font-size:9px;white-space:normal;text-align:right}.service-link>p{font-size:12px;max-width:44ch;margin-bottom:12px;padding-right:0}.service-link>svg{width:27px}.editorial-section{padding-block:45px}.editorial-grid{display:flex;flex-direction:column;gap:34px;align-items:stretch}.editorial-photo{aspect-ratio:1.2}.editorial-copy{padding:0}.editorial-grid p{font-size:13px}.detail-note{max-width:none;font-size:11px;margin-top:25px}.gallery{gap:12px;grid-template-columns:1fr 1fr}.gallery>.gallery-large{grid-column:span 2;grid-row:auto;aspect-ratio:1.4}.gallery>picture{aspect-ratio:.95}.gallery>picture:nth-child(2) img{object-position:55%}.institute-preview{display:flex;flex-direction:column;gap:35px;align-items:stretch}.institute-preview p{font-size:13px}.institute-preview picture{aspect-ratio:1.15}.faq-section{display:block}.faq-section>div:first-child{margin-bottom:33px}.faq-list summary{padding-block:20px;font-size:12px;gap:20px}.faq-list details>p{font-size:12px;padding-right:15px}.closing{padding-block:55px}.closing-inner{display:block}.closing h2{font-size:52px;line-height:1.05;margin-bottom:30px}.closing p{max-width:40ch;font-size:12px}.closing .button{font-size:11px;padding:16px 21px}.closing-phone{font-size:17px}.footer{padding-top:50px;padding-bottom:86px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 22px}.footer-top>div:first-child{grid-column:span 2}.footer-top>div:first-child p{margin-bottom:0}.footer-top>div:last-child{grid-column:span 2}.footer-top>div:last-child>a{display:inline-block;margin-right:20px}.footer-top h2{font-size:11px;margin-bottom:15px}.footer p,.footer address,.footer a:not(.brand){font-size:10px}.footer-bottom{margin-top:35px;gap:12px;flex-direction:column;font-size:9px}.mobile-booking{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;box-shadow:0 -3px 15px #33282d14;background:var(--paper);padding-bottom:env(safe-area-inset-bottom)}.mobile-booking a{display:flex;align-items:center;justify-content:center;gap:22px;width:50%;min-height:55px;font-size:11px;text-decoration:none}.mobile-booking a:last-child{background:var(--plum);color:var(--white)}.mobile-booking svg{width:20px}.breadcrumbs{font-size:9px;gap:8px;margin-bottom:26px}.page-heading{padding-top:35px}.page-heading h1{font-size:52px;margin-bottom:25px}.page-heading .lead{font-size:13px}.inner-hero{display:flex;flex-direction:column;padding-top:28px;padding-bottom:0;gap:35px;align-items:stretch}.inner-hero h1{font-size:51px}.inner-hero .lead{font-size:13px}.inner-hero .button{font-size:11px;padding:15px 20px}.inner-visual{aspect-ratio:1.25}.service-content{display:block}.service-content h2{font-size:38px}.service-content .prose{margin-bottom:45px}.service-content p{font-size:13px}.service-prices h2{font-size:38px}.service-prices table{font-size:11px}table{font-size:12px}th,td{padding-block:17px}th:first-child{padding-right:15px}td:last-child,th:last-child{padding-left:15px}td:nth-child(2),th:nth-child(2){min-width:48px;font-size:10px}.full-photo picture{aspect-ratio:1.4}.price-section{padding-top:35px}.price-filter{gap:7px}.price-filter button{padding:10px 12px;font-size:10px}.price-section h2{font-size:38px;margin-top:40px}.access-grid{display:block}.hours{margin-top:55px}.hours dl>div{font-size:12px}.faq-page{padding-top:35px}.advice{padding-top:40px}.advice h2{font-size:36px;margin-top:45px}.advice p{font-size:13px}.contact-grid{display:block;padding-top:40px}.contact-grid>div+div{margin-top:60px}.contact-grid h2{font-size:40px}.contact-number{font-size:38px}.contact-form{gap:18px}.contact-form input:not([type=checkbox]),.contact-form textarea{font-size:16px}.contact-form .check{font-size:10px}.legal-content h2{font-size:30px}.legal-content h3{font-size:26px}.error-page h1{font-size:45px}.error-page .text-link{margin-left:0;margin-top:20px}.cookie-banner{left:10px;right:10px;bottom:65px;padding:20px}.cookie-modal{padding:12px}.cookie-modal section{padding:24px}.notice-banner{bottom:65px}.prose{max-width:none}}
.faq-toggle{width:20px;height:20px;color:var(--plum);transition:transform .2s ease}.faq-list details[open] .faq-toggle{transform:rotate(45deg)}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Onglerie Monthey identity */
.brand>strong{font-family:var(--sans);font-size:12px;letter-spacing:.15em;margin-top:6px}.brand>span{font-style:normal}#formulaire{scroll-margin-top:32px}
@media(max-width:900px){.brand>strong{font-size:10px}}
@media(max-width:700px){.hero-actions{flex-wrap:wrap;row-gap:16px}}

/* Keep empty visitor variants out of layout without removing CMS bindings. */
[data-theme-visitor-value]{white-space:pre-wrap;overflow-wrap:anywhere}
[data-theme-visitor-block][hidden]{display:none!important}
@supports selector(:has(*)){
  [data-theme-visitor-block]:has([data-theme-visitor-value]):not(:has([data-theme-visitor-value]:not(:empty))){display:none}
}
.legal-contact{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.legal-contact h2{font-family:Manrope,Arial,sans-serif;font-size:1.1rem;font-style:normal}
@media(max-width:700px){.mobile-booking>a{flex:1;width:auto}}

/* Keep navigation available while reserving the correct space for anchor targets. */
:root{--masthead-space:105px;scroll-padding-top:calc(var(--masthead-space) + 20px)}
.masthead-shell{position:sticky;top:0;z-index:60;background:var(--paper);border-bottom:1px solid var(--line)}
.skip-link{position:fixed}
.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:24px}
.contact-actions .button{max-width:100%}
[data-booking-human-only][hidden],[data-booking-source]{display:none!important}
@media(max-width:900px){:root{--masthead-space:91px}}
@media(max-width:700px){
  :root{--masthead-space:86px}
  .main-nav{top:100%;max-height:calc(100vh - var(--masthead-space) - 56px - env(safe-area-inset-bottom));max-height:calc(100dvh - var(--masthead-space) - 56px - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}
  .contact-actions{align-items:stretch}
}

/* Contact fields occupy their final space while the native verifier responds.
   Common headings, copy and booking buttons are never held back. */
.visitor-slot{display:grid;position:relative;align-items:start}
.visitor-slot>*{grid-area:1/1;min-width:0}
.visitor-slot.is-empty{display:none}
.visitor-slot-fallback[hidden]{display:none!important}
.visitor-slot-fallback{font-size:12px;align-self:center;justify-self:start}
.visitor-slot[data-visitor-slot="action"]{justify-items:start}
.visitor-slot[data-visitor-slot="address"]{margin:24px 0}
.visitor-slot[data-visitor-slot="address"]>address{margin:0}
.contact-info .visitor-slot[data-visitor-slot="address"]{margin:30px 0}
.footer .visitor-slot[data-visitor-slot="address"]{margin:0}
.contact-actions>.visitor-slot{inline-size:min(100%,20rem)}
.mobile-booking>.visitor-slot{flex:1;min-width:0}
.mobile-booking>.visitor-slot>a{width:100%;background:var(--paper);color:var(--ink);justify-self:stretch}
@media(scripting:enabled){
  html:not([data-visitor-profile="bot"]) .visitor-slot{min-block-size:1.8em}
  html:not([data-visitor-profile="bot"]) .visitor-slot[data-visitor-slot="address"]{min-block-size:3.6em}
  html:not([data-visitor-profile="bot"]) .visitor-slot[data-visitor-slot="large-phone"]{min-block-size:86px}
  html:not([data-visitor-profile="bot"]) .visitor-slot[data-visitor-slot="legal"]{min-block-size:250px}
  html:not([data-visitor-profile="bot"]) .visitor-slot[data-visitor-slot="action"]{min-block-size:60px}
  html:not([data-visitor-profile="bot"]) .hero-actions .visitor-slot{min-inline-size:min(100%,18rem)}
  html:not([data-visitor-profile="bot"]) .mobile-booking>.visitor-slot{min-block-size:55px;justify-items:stretch}
  html:not([data-visitor-profile="bot"]) .footer [data-visitor-slot="phone"]{min-block-size:27px}
  html:not([data-visitor-profile="human"]):not([data-visitor-profile="bot"]) .visitor-slot>[data-theme-visitor-block]{visibility:hidden!important}
  html:not([data-visitor-profile="human"]):not([data-visitor-profile="bot"]) .visitor-slot:not(.is-stalled)::before{content:"";grid-area:1/1;align-self:center;display:block;inline-size:min(10em,80%);block-size:.7em;background:var(--line)}
  html:not([data-visitor-profile="human"]):not([data-visitor-profile="bot"]) .mobile-booking>.visitor-slot::before{justify-self:center;inline-size:7em}
}
