@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/dm-sans-400.woff2') format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/dm-sans-500.woff2') format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/dm-sans-600.woff2') format('woff2');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/dm-sans-700.woff2') format('woff2');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/playfair-display-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/assets/fonts/playfair-display-500.woff2') format('woff2');
}
:root{--ink:#142b37;--muted:#566570;--paper:#fff;--snow:#f2f5f6;--line:#dce3e6;--accent:#b95224;--deep:#102834;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font:16px/1.65 var(--sans);background:var(--paper)}a{color:inherit;text-underline-offset:5px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d77e4d;outline-offset:5px}h1,h2,h3,p{margin:0 0 1rem}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.13;letter-spacing:-.025em}h1{font-size:clamp(2.5rem,4.8vw,4.8rem)}h2{font-size:clamp(2rem,3.3vw,3.3rem)}h3{font-size:1.22rem;line-height:1.35}p{color:var(--muted)}.wrap{width:min(1300px,90%);margin:auto}.narrow{width:min(860px,90%);margin:auto}.section{padding:88px 0}.soft{background:var(--snow)}.eyebrow{display:block;font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 25px;background:var(--accent);color:white;border:1px solid var(--accent);text-decoration:none;font-weight:600;border-radius:2px;line-height:1.3}.btn:hover{background:#983d17;border-color:#983d17}.btn.dark{background:var(--ink);border-color:var(--ink)}.btn.line{background:transparent;border-color:currentColor;color:inherit}.links{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.skip{position:fixed;z-index:100;top:-100px;background:white;padding:10px}.skip:focus{top:0}.header{height:95px;background:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.header .wrap{display:flex;height:100%;align-items:center;gap:35px}.brand{font-size:1.95rem;letter-spacing:.16em;text-decoration:none;line-height:1;font-family:var(--serif);white-space:nowrap}.brand small{display:block;font:10px/1 var(--sans);letter-spacing:.53em;text-align:center;margin-top:10px}.nav{margin-left:auto;display:flex;align-items:center;gap:24px}.nav>a{font-size:.875rem;text-decoration:none;white-space:nowrap}.nav>a[aria-current=page]{text-decoration:underline}.languages{display:flex;gap:9px;align-items:center}.languages a{font-size:.8rem;text-decoration:none;color:var(--muted)}.languages a[aria-current]{color:var(--ink);border-bottom:1px solid}.menu{display:none;border:0;background:none;font-size:1rem}.hero{position:relative;min-height:650px;height:calc(100svh - 130px);max-height:900px;color:white;display:flex;align-items:flex-end;background:var(--deep)}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 52%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,23,33,.72),rgba(7,23,33,.05) 90%),linear-gradient(0deg,rgba(7,23,33,.5),transparent 70%)}.hero .wrap{position:relative;z-index:1;padding-bottom:110px}.hero h1{max-width:900px}.hero p{max-width:560px;color:#fff;font-size:1.15rem}.hero .eyebrow{color:#fff}.hero-note{position:absolute;z-index:2;right:5%;top:30px;max-width:255px;border-left:2px solid #d89165;padding-left:18px;font-size:.9rem}.hero-note strong{display:block}.booking-wrap{position:relative;z-index:3;margin-top:-52px}.booking{background:#fff;padding:25px 32px;box-shadow:0 12px 40px #10283416;border:1px solid var(--line)}.booking-top{display:flex;justify-content:space-between;gap:18px;margin-bottom:14px;font-size:.9rem}.booking-top span{color:var(--muted)}.booking-note{font-size:.82rem;margin:14px 0 0}.book-widget{font-family:var(--sans)!important;background:none!important;border:0!important;padding:0!important}.book-widget form,.booking-native{display:grid!important;grid-template-columns:1.4fr 1.4fr .8fr .8fr 1.3fr;gap:14px;align-items:end;margin:0}.booking-native label{display:flex;flex-direction:column;gap:7px;font-size:.83rem}.booking-native input,.booking-native select{width:100%;padding:12px;border:1px solid var(--line);height:50px;color:var(--ink);background:white;border-radius:2px}.book-widget label{font-size:.85rem!important;color:var(--ink)!important}.book-widget input,.book-widget select{border:1px solid var(--line)!important;background:white!important;border-radius:2px!important;min-height:48px;color:var(--ink)!important;font-family:var(--sans)!important;box-shadow:none!important}.book-widget button,.book-widget input[type=submit]{background:var(--accent)!important;color:white!important;border:0!important;min-height:50px;font-weight:600!important}.book-widget .ui-datepicker-trigger{min-height:0!important;background:none!important;color:var(--ink)!important}.book-widget .input-group{width:100%!important}.book-widget .col-xs-12{max-width:100%}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:95px;align-items:start}.intro p{font-size:1.08rem}.stat-line{display:flex;gap:32px;border-top:1px solid var(--line);padding-top:25px;margin-top:26px}.stat-line strong{display:block;font:2.1rem var(--serif)}.stat-line span{font-size:.85rem;color:var(--muted)}.access-feature{display:grid;grid-template-columns:1fr 1fr;background:var(--deep);color:white}.access-photo{min-height:590px;position:relative}.access-photo img{width:100%;height:100%;object-fit:cover;position:absolute}.access-copy{padding:64px 11%}.access-copy p{color:#ced9df}.access-options{border-top:1px solid #ffffff35;margin-top:25px}.access-option{padding:19px 0;border-bottom:1px solid #ffffff35}.access-option strong{font-size:1.05rem;display:block}.access-option p{font-size:.9rem;margin:7px 0 0}.access-copy .links{margin-top:26px}.section-title{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:30px}.section-title h2{margin:0}.section-title p{max-width:450px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.apt-card{border-bottom:1px solid var(--line);padding-bottom:23px;min-width:0}.apt-card>a{text-decoration:none}.card-photo{overflow:hidden;position:relative;background:var(--snow)}.card-photo img{width:100%;aspect-ratio:1.36;object-fit:cover;transition:transform .5s}.apt-card:hover .card-photo img{transform:scale(1.035)}.card-photo .number{position:absolute;left:14px;top:14px;background:white;padding:4px 10px;font-size:.82rem}.apt-card h3{font:1.75rem var(--serif);margin:20px 0 13px}.card-facts{font-size:.85rem;display:flex;gap:8px 16px;flex-wrap:wrap;color:var(--muted)}.card-facts .cat{width:100%;color:var(--accent);font-weight:700;letter-spacing:.08em}.card-link{display:block;margin-top:15px;font-size:.9rem;text-decoration:underline}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split>img{width:100%;aspect-ratio:1.2;object-fit:cover}.feature-list{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.feature-list article{padding-top:25px;border-top:1px solid var(--line)}.feature-list p{font-size:.95rem}.page-heading{padding:48px 0 36px}.breadcrumb{font-size:.8rem;color:var(--muted);margin-bottom:22px}.breadcrumb a{text-decoration:none}.page-heading p{max-width:750px;font-size:1.08rem}.page-heading h1{font-size:clamp(2.5rem,4.5vw,4rem)}.photo-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;height:440px}.photo-grid a{overflow:hidden;position:relative;min-width:0}.photo-grid img{width:100%;height:100%;object-fit:cover}.photo-grid a:last-child:after{content:attr(data-label);position:absolute;bottom:20px;right:20px;background:white;padding:10px 18px;color:var(--ink);font-size:.85rem}.facts{display:grid;grid-template-columns:.65fr 1.25fr 1fr .7fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;margin-top:28px;gap:22px}.facts dt{font-size:.78rem;color:var(--muted);margin-bottom:9px}.facts dd{margin:0;font-size:1.18rem;font-weight:600}.facts dd small{font-size:.8rem;font-weight:400;display:block;color:var(--muted)}.apartment-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:80px;align-items:start}.side-book{border:1px solid var(--line);padding:28px;position:sticky;top:125px}.side-book .btn{width:100%;margin:12px 0}.side-book p{font-size:.9rem}.side-book h3{font:1.7rem var(--serif)}.original-copy{max-width:850px}.original-copy h2{font-size:2.1rem;margin-top:35px}.original-copy h3{margin-top:30px}.original-copy p{margin-bottom:20px}.original-copy a{color:var(--accent)}.original-copy ul{color:var(--muted);padding-left:20px}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;padding:0;list-style:none}.amenities li{border-bottom:1px solid var(--line);padding:10px 0;font-size:.92rem}.plans{display:grid;grid-template-columns:1fr 1fr;gap:30px}.plan{background:white;border:1px solid var(--line);padding:22px}.plan a{display:block}.plan img{width:100%;height:370px;object-fit:contain}.plan h3{font-size:1rem;margin:15px 0 0}.plan p{font-size:.85rem;margin:5px 0 0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery img{width:100%;aspect-ratio:1.4;object-fit:cover}.gallery figure{margin:0}.gallery figcaption{font-size:.8rem;padding:8px 0;color:var(--muted)}.lightbox{border:0;padding:0;background:var(--deep);color:white;max-width:95vw;width:1100px}.lightbox::backdrop{background:#07151bea}.lightbox img{width:100%;height:78vh;object-fit:contain}.lightbox-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px}.lightbox button{background:transparent;border:1px solid #ffffff60;color:white;padding:8px 18px}.filters{display:flex;flex-wrap:wrap;gap:15px;align-items:end;margin:25px 0 35px}.filters label{display:flex;flex-direction:column;gap:7px;font-size:.85rem;flex:1;min-width:160px}.filters select{padding:12px;background:white;border:1px solid var(--line);min-width:150px}.result-count{font-size:.9rem;margin-bottom:22px}.empty{padding:30px;background:var(--snow)}[hidden]{display:none!important}.map-shell{border:1px solid var(--line);background:var(--snow);margin:30px 0}.map-shell iframe{display:block;border:0;width:100%;height:790px}.map-note{font-size:.85rem;margin-top:15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;counter-reset:step}.steps article{border-top:1px solid var(--line);padding:25px 0}.steps article:before{counter-increment:step;content:'0' counter(step);font:2.8rem var(--serif);color:var(--accent);display:block;margin-bottom:15px}.notice{background:#f4e9e2;border-left:3px solid var(--accent);padding:22px 28px;margin:30px 0;color:var(--ink)}.notice p{margin:5px 0 0;color:inherit}.faq details{border-bottom:1px solid var(--line);padding:21px 0}.faq summary{font-weight:600;cursor:pointer;padding-right:30px}.faq p{margin:15px 0 0}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.video iframe{width:100%;aspect-ratio:16/9;border:0}.video h3{font-size:.95rem;margin-top:12px}.reservation-iframe{width:100%;height:1900px;border:0;background:white}.frame-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.85rem;margin:25px 0}.cta-section{text-align:center;background:var(--deep);color:white;padding:75px 0}.cta-section p{color:#c6d3da}.footer{background:#0b202b;color:white;padding:55px 0 25px}.footer .wrap{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.footer p,.footer a{color:#c6d3da;font-size:.9rem}.footer .brand{color:white;font-size:1.8rem}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin-bottom:9px}.footer a{text-decoration:none}.footer-bottom{width:min(1300px,90%);margin:40px auto 0;border-top:1px solid #ffffff24;padding-top:20px;color:#a7bbc5;font-size:.75rem;display:flex;justify-content:space-between;gap:20px}.mobile-book{display:none}.wide-photo{width:100%;height:430px;object-fit:cover}.guide-cards a{text-decoration:none}.guide-cards img{width:100%;aspect-ratio:1.5;object-fit:cover}.guide-cards h3{margin:18px 0 10px}.index-list{columns:3;list-style:none;padding:0}.index-list li{break-inside:avoid;margin:10px 0}.search-title{font:2rem var(--serif)}.external-note{font-size:.85rem;color:var(--muted)}
@media(min-width:1600px){.hero h1{font-size:5.5rem}.hero .wrap{padding-bottom:130px}}
@media(max-width:1100px){.nav{gap:14px}.header .wrap{gap:20px}.nav>a{font-size:.8rem}.brand{font-size:1.55rem}.intro{gap:50px}.access-copy{padding:45px 8%}.apartment-layout{gap:35px;grid-template-columns:minmax(0,1fr) 290px}.cards{gap:22px}.booking-native{grid-template-columns:repeat(4,1fr)}.booking-native .btn{grid-column:1/-1}.book-widget form{display:flex!important;flex-wrap:wrap}.photo-grid{height:370px}}
@media(max-width:850px){.header{height:80px}.header .wrap{justify-content:space-between}.menu{display:block}.nav{position:absolute;top:80px;left:0;right:0;padding:25px 5%;background:white;border-bottom:1px solid var(--line);display:none;flex-wrap:wrap;box-shadow:0 15px 20px #10283410}.nav.open{display:flex}.nav>a{font-size:1rem;width:45%}.nav>.btn{width:auto}.nav .languages a{font-size:1rem}.hero{height:700px;min-height:600px}.hero .wrap{padding-bottom:100px}.hero-note{font-size:.8rem;top:24px}.hero h1{font-size:3.5rem}.booking{padding:22px}.booking-top{display:block}.booking-top span{display:block}.intro,.split,.access-feature{grid-template-columns:1fr;gap:32px}.access-feature{gap:0}.access-photo{min-height:340px}.access-copy{padding:40px 5.5%}.section{padding:60px 0}.cards{grid-template-columns:repeat(2,1fr)}.feature-list{gap:22px}.section-title{align-items:start;flex-direction:column;gap:18px}.apartment-layout{grid-template-columns:1fr;gap:35px}.side-book{position:static}.facts{grid-template-columns:repeat(3,1fr)}.plans{grid-template-columns:1fr}.plan img{height:auto;max-height:600px}.photo-grid{grid-template-columns:2fr 1fr;height:340px}.photo-grid>a:nth-child(3){display:none}.gallery{grid-template-columns:repeat(2,1fr)}.steps{gap:20px}.video-grid{grid-template-columns:1fr}.video{max-width:650px}.footer .wrap{grid-template-columns:1.5fr 1fr}.footer .wrap>div:last-child{grid-column:1/-1}.map-shell iframe{height:900px}.mobile-book{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:25;background:white;border-top:1px solid var(--line);padding:10px 5%;justify-content:space-between;align-items:center;gap:15px}.mobile-book span{font-size:.9rem}.mobile-book .btn{min-height:44px;padding:10px 20px}body{padding-bottom:65px}.index-list{columns:2}}
@media(max-width:540px){.wrap{width:90%}.hero{min-height:590px;height:calc(92svh - 80px)}.hero h1{font-size:2.7rem}.hero p{font-size:1rem}.hero-note{display:none}.hero>img{object-position:61% center}.hero .eyebrow{font-size:.68rem}.hero .links .btn{font-size:.85rem;padding:12px 17px}.hero .wrap{padding-bottom:95px}.booking-wrap{margin-top:-45px}.booking-native{grid-template-columns:1fr 1fr!important;gap:12px}.booking-native .btn{grid-column:1/-1}.booking{padding:20px}.booking-note{font-size:.75rem}.intro{gap:15px}.stat-line{gap:25px}.cards,.feature-list,.steps{grid-template-columns:1fr}.cards{gap:35px}.photo-grid{height:275px;grid-template-columns:1fr}.photo-grid>a:not(:first-child){display:none}.facts{grid-template-columns:1fr 1fr;gap:20px}.facts div:first-child{grid-column:1/-1}.facts dd{font-size:1.08rem}.page-heading{padding:30px 0 25px}.amenities{grid-template-columns:1fr}.gallery{gap:12px}.gallery figcaption{font-size:.75rem}.footer .wrap{grid-template-columns:1fr;gap:30px}.footer .wrap>div:last-child{grid-column:auto}.footer-bottom{display:block}.section-title h2{font-size:2rem}.map-shell iframe{height:980px}.frame-actions{align-items:start;flex-direction:column}.reservation-iframe{height:2400px}.lightbox img{height:65vh}.lightbox-bar{padding:10px;gap:5px}.lightbox button{padding:8px 10px}.index-list{columns:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* BookingStrip keeps the provider's behaviour within the site layout. */
.book-widget .book-widget-bg{padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important}.book-widget .book-row{margin:0!important}.book-widget .book-col-12{padding:0!important}.book-widget .book-form-group{display:block!important;width:auto!important;margin:0!important;padding:0!important;min-width:0}.book-widget .book-form-group>label,.book-widget .book-form-group>div{width:100%!important;float:none!important;padding:0!important}.book-widget label{display:block!important;margin-bottom:7px!important}.book-widget .book-form-control{width:100%!important;height:50px!important;padding:10px 12px!important;font-size:16px!important}.book-widget .book-advancedsearch{display:none!important}.book-widget form:before,.book-widget form:after{display:none!important}.book-widget .book-va-bottom{padding:0!important}.book-widget .book-va-bottom>div{width:100%!important}.book-widget .book-va-bottom button{margin:0!important}.book-widget .book-col-7{position:relative}.book-widget .icon-book-calendar{position:absolute;right:12px;top:17px}
@media(max-width:1100px){.book-widget form{display:grid!important;grid-template-columns:1fr 1fr!important}.book-widget .book-va-bottom{grid-column:1/-1!important}}
/* Existing Legendär identity and repeated booking strips. */
.brand{display:block;flex:0 0 auto;letter-spacing:normal}.brand img{width:210px;height:auto}.header .brand img{filter:brightness(.18)}.footer .brand img{width:235px}.cta-section .booking{margin-top:28px;text-align:left;color:var(--ink)}.cta-section .booking p{color:var(--muted)}.booking-native[hidden]{display:none!important}.reservation-content>.booking{margin-bottom:12px;box-shadow:none}.reservation-iframe{display:block}.reservation-content .frame-actions{margin:12px 0 22px}.reservation-content .notice{margin:28px 0}.reservation-content{padding-bottom:38px}
/* The popup is appended to body by jQuery UI, outside the widget wrapper. */
#ui-datepicker-div{z-index:10000!important;background:#fff!important;opacity:1!important;border:1px solid #c7d1d7!important;border-radius:5px!important;box-shadow:0 12px 40px #10283440!important;padding:12px!important;color:#142632!important;font:15px/1.4 var(--sans)!important;width:310px!important;max-width:calc(100vw - 20px)!important}
#ui-datepicker-div .ui-datepicker-header,#ui-datepicker-div .ui-datepicker-title,#ui-datepicker-div table,#ui-datepicker-div thead,#ui-datepicker-div tbody,#ui-datepicker-div tr,#ui-datepicker-div th,#ui-datepicker-div td,#ui-datepicker-div .ui-datepicker-buttonpane{background:#fff!important;color:#142632!important;opacity:1!important}
#ui-datepicker-div .ui-datepicker-header{position:relative;padding:10px 35px!important;border:0!important;margin-bottom:8px!important}#ui-datepicker-div .ui-datepicker-title{text-align:center;font-weight:700}#ui-datepicker-div .ui-datepicker-prev,#ui-datepicker-div .ui-datepicker-next{position:absolute;top:5px;width:32px;height:32px;display:grid;place-items:center;cursor:pointer;border-radius:3px;background:#f2f5f6!important}#ui-datepicker-div .ui-datepicker-prev{left:0}#ui-datepicker-div .ui-datepicker-next{right:0}#ui-datepicker-div .ui-datepicker-prev:after{content:'‹';font-size:26px}#ui-datepicker-div .ui-datepicker-next:after{content:'›';font-size:26px}#ui-datepicker-div .ui-datepicker-prev span,#ui-datepicker-div .ui-datepicker-next span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#ui-datepicker-div table{width:100%;border-collapse:separate;border-spacing:3px;margin:0}#ui-datepicker-div th{text-align:center;padding:7px 0;font-size:13px}#ui-datepicker-div td{padding:0!important;text-align:center}#ui-datepicker-div td a,#ui-datepicker-div td span{display:block;padding:8px 3px;text-align:center;border:0!important;border-radius:3px;text-decoration:none;background:#edf2f4!important;color:#142632!important}#ui-datepicker-div td a:hover,#ui-datepicker-div td a.ui-state-active{background:var(--accent)!important;color:white!important}#ui-datepicker-div td.ui-state-disabled{opacity:.4!important}#ui-datepicker-div .ui-datepicker-today a{outline:1px solid var(--accent)}
@media(max-width:1100px){.header .brand img{width:180px}.header .wrap{gap:20px}}@media(max-width:540px){.header .brand img{width:160px}.reservation-content>.booking{margin-bottom:6px}.cta-section{padding:45px 0}}

/* Accessible homepage slideshow, with manual navigation and a pause control. */
.hero-slides,.hero-slide{position:absolute;inset:0;width:100%;height:100%}.hero-slide{object-fit:cover;opacity:0;transition:opacity 1s ease;object-position:center}.hero-slide.is-active{opacity:1}.hero-slide[data-slide="1"]{object-position:65% center}.hero-controls{position:absolute;z-index:4;bottom:62px;right:32px;display:flex;gap:8px;align-items:center}.hero-controls button{border:1px solid #ffffff55;color:#fff;background:#102a3bbf;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:18px}.hero-controls .slide-dot{width:12px;height:12px;padding:0;border:1px solid white;background:transparent}.hero-controls .slide-dot[aria-current=true]{background:#fff}.hero-controls .slide-dots{display:flex;gap:9px;margin:0 8px}.hero-controls button:hover{background:#163c53}.hero .wrap{pointer-events:none}.hero .wrap a{pointer-events:auto}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
.contact-section{padding-top:0}.contact-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:36px;align-items:start}.contact-form{background:white;border:1px solid var(--line);border-radius:4px;padding:32px;box-shadow:none}.contact-form label{display:flex;flex-direction:column;gap:8px;font-weight:650;margin-bottom:20px}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form input:not([type=checkbox]),.contact-form textarea{font:inherit;width:100%;border:1px solid #bacbd6;border-radius:3px;padding:13px;background:#fff;color:var(--ink)}.contact-form textarea{resize:vertical;min-height:180px}.contact-security{border:1px solid var(--line);border-radius:4px;padding:16px;margin:0 0 20px;background:#edf3f7}.contact-security legend{padding:0 8px;font-weight:650}.contact-security label{flex-direction:row;align-items:center;gap:15px;margin-bottom:12px}.contact-security input{max-width:110px}.text-button{background:transparent;border:0;text-decoration:underline;padding:0;color:var(--muted);font-size:14px}.contact-consent{flex-direction:row!important;font-weight:400!important;font-size:14px;align-items:flex-start}.contact-consent input{width:20px;height:20px;flex-shrink:0;margin-top:3px;accent-color:var(--deep)}.contact-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.contact-status{margin:18px 0 0;color:#244e35;overflow-wrap:anywhere}.contact-status.is-error{color:#a32c21}.contact-aside{padding:28px;background:#edf3f7;border-radius:4px}.contact-aside h2{font-size:30px}.contact-aside a{overflow-wrap:anywhere}.contact-aside hr{border:0;border-top:1px solid var(--line);margin:26px 0}.contact-form button:disabled{opacity:.6;cursor:wait}@media(max-width:800px){.contact-layout{grid-template-columns:1fr}.contact-form{padding:22px}.contact-row{grid-template-columns:1fr;gap:0}}
@media(min-width:1101px) and (max-width:1250px){.nav{gap:9px}.nav>a{font-size:14px}.header .wrap{gap:18px}.header .brand img{width:145px}}

/* Explicit foreground/background pairs keep calls to action readable in every section. */
.btn,.btn:visited{background:var(--accent);border-color:var(--accent);color:#fff}
.btn:hover,.btn:focus-visible{background:#963e19;border-color:#963e19;color:#fff}
.btn.dark,.btn.dark:visited{background:var(--ink);border-color:var(--ink);color:#fff}
.btn.dark:hover{background:var(--deep);border-color:var(--deep)}
.btn.line,.btn.line:visited{background:transparent;border-color:currentColor;color:var(--ink)}
.hero .btn.line,.access-feature .btn.line,.cta-section>.wrap>.links .btn.line{color:#fff}
.btn.line:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.booking{color:var(--ink)}.booking-top,.booking-native label{color:var(--ink)}
.booking-top span,.booking-note{color:var(--muted)}
.contact-form{color:var(--ink)}.contact-form button:disabled{opacity:1;background:#566570;border-color:#566570;color:#fff;cursor:wait}
.text-button:disabled{background:transparent!important;color:var(--muted)!important}
textarea{font:inherit}textarea:focus-visible{outline:3px solid #1896cc;outline-offset:3px}
@media(max-width:540px){.hero-note{display:block;top:18px;right:5%;font-size:14px;background:#102834e6;padding:10px 14px;max-width:250px}.hero-controls{right:5%;bottom:62px}.hero .eyebrow{font-size:12px}}

/* The mobile hero grows with its text: the access note never overlaps the heading. */
@media(max-width:850px){
 .hero{height:auto;max-height:none;min-height:650px;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:24px;padding:48px 0 112px}
 .hero .wrap{order:1;width:90%;padding:0;margin:0 auto}
 .hero-note{display:block;position:relative;order:2;top:auto;right:auto;left:auto;bottom:auto;width:90%;max-width:none;margin:0 auto;padding:14px 18px;background:#102834e6;border-left:2px solid #d89165;font-size:14px;line-height:1.5;z-index:2}
 .hero-controls{right:5%;bottom:58px}
 .hero h1{font-size:clamp(2.35rem,7vw,3.5rem);overflow-wrap:break-word}
}
.contact-security [data-question]{display:block;min-width:5ch;color:#142b37;font-size:1.125rem;font-weight:700;line-height:1.5}
.contact-security label{flex-wrap:wrap}
