.language-choice select{border:1px solid var(--border);background:var(--surface,transparent);color:var(--text);font:inherit;font-size:12px;border-radius:24px;padding:10px 12px;cursor:pointer}.language-choice option{color:#173c32;background:#fff}.journal{padding-top:55px;padding-bottom:70px}.journal>h1{font:clamp(44px,7vw,90px) var(--display);line-height:1.05;margin:20px 0}.journal>p{max-width:650px;color:var(--muted);line-height:1.7;margin-bottom:35px}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.blog-card{overflow:hidden;text-decoration:none;color:inherit;border-radius:24px;transition:transform .2s}.blog-card:hover{transform:translateY(-4px)}.blog-card>img{width:100%;height:240px;object-fit:cover}.blog-card>div{padding:28px}.blog-card h3{font:32px var(--display);margin:14px 0}.blog-card p{font-size:14px;line-height:1.7;color:var(--muted)}.empty-state{padding:40px;border-radius:24px}.empty-state h3{font:32px var(--display);margin-top:0}.article-body{max-width:850px;margin:auto;padding:38px;border-radius:28px}.article-body p{font-size:18px;line-height:1.85;white-space:normal}.article-cover{width:100%;max-height:500px;object-fit:cover;border-radius:18px}.booking-search{padding:25px;border-radius:24px;display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin:25px auto}.booking-search label{display:grid;gap:8px;flex:1;min-width:130px;font-size:12px}.booking-search input,.booking-search select,.booking-form input,.booking-form textarea{border:1px solid var(--border);border-radius:12px;padding:13px;background:var(--surface,#fff);color:var(--text);font:inherit;width:100%;box-sizing:border-box}.booking-search .button{min-height:46px}.booking-results{display:grid;gap:20px}.booking-result{padding:22px;border-radius:22px;display:grid;grid-template-columns:180px 1fr auto;gap:25px;align-items:center}.booking-result img{width:180px;height:140px;object-fit:cover;border-radius:16px}.booking-result h3{font:30px var(--display);margin:5px 0}.booking-result p{color:var(--muted);font-size:14px}.booking-form{max-width:700px;padding:32px;border-radius:24px;margin:30px auto}.booking-form label{display:grid;gap:8px;margin:18px 0}.booking-form h2{font:36px var(--display)}.notice{padding:16px;border-radius:12px;background:#e8f2eb;color:#164835;line-height:1.6}.notice.error{background:#fae8e4;color:#8e3021}button:disabled{opacity:.55;cursor:wait}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #c5904a;outline-offset:3px}[hidden]{display:none!important}
@media(max-width:1100px){.header{gap:15px}.header nav{gap:13px}.header-actions{gap:8px}.header-actions>.button{font-size:9px;padding:12px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.header-actions>.button{display:none}.language-choice select{max-width:100px;padding:9px;font-size:11px}.blog-grid{grid-template-columns:1fr}.article-body{padding:22px}.booking-search{gap:12px;padding:20px}.booking-search label{min-width:40%}.booking-search .button{width:100%}.booking-result{grid-template-columns:90px 1fr;gap:15px}.booking-result img{width:90px;height:110px}.booking-result>.button{grid-column:1/-1}.booking-result h3{font-size:25px}.booking-form{padding:22px}.journal{padding-top:30px}}
@media(max-width:380px){.header{padding:12px 10px;gap:6px}.header .brand{gap:6px;font-size:20px}.header .brand-icon{width:29px;height:29px;font-size:24px}.header .brand small{font-size:7px;letter-spacing:.18em}.header-actions{gap:4px}.header-actions .theme,.header-actions .menu{width:28px;min-width:28px;padding:0}.language-choice select{width:80px;max-width:80px;padding:8px 4px;font-size:10px}}
/* A single photographic header contains the booking search throughout each slide. */
.hero-slider{position:relative;isolation:isolate;overflow:hidden;border-radius:30px;background:#253d33;min-height:660px;color:#fffaf2;margin:18px 0 24px;box-shadow:0 15px 45px #1b30251a}
.hero-track{position:absolute;inset:0;display:flex;transition:transform 1s cubic-bezier(.22,.61,.36,1);will-change:transform;z-index:-3}
.hero-frame{flex:0 0 100%;min-width:0;height:100%}.hero-frame img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(13,31,25,.78),rgba(13,31,25,.28) 65%,rgba(13,31,25,.08)),linear-gradient(0deg,rgba(13,31,25,.55),transparent 55%)}
.opening .hero-copy{min-height:0;border-radius:0;background:none;border:0;box-shadow:none;overflow:visible;isolation:auto;padding:66px 64px 210px;max-width:850px;display:block}
.opening .hero-copy:before{display:none}.opening .hero-copy .eyebrow{color:#f0dac6;font-size:10px;letter-spacing:.19em}.opening .hero-copy h1{font-size:clamp(48px,5.9vw,83px);line-height:1.03;letter-spacing:-.045em;margin:24px 0 22px;color:#fffaf2;text-shadow:0 2px 30px #10231b22}.opening .hero-copy h1 em{color:#e9c6a7}.opening .hero-copy>p{color:#f4f0e7;font-size:14px;line-height:1.8;max-width:500px;margin-bottom:24px}.opening .hero-copy>.button{background:#f5eee3;color:#253d33;font-size:10px;min-height:44px}
.hero-controls{position:absolute;top:38px;right:38px;display:flex;align-items:center;gap:18px;font-size:11px;color:#fffaf2}.hero-controls .slider-controls{display:flex;gap:8px}.hero-controls .slider-controls button{width:37px;height:37px;background:#fffaf219;border:1px solid #fffaf266;color:#fffaf2;border-radius:50%;backdrop-filter:blur(12px);font-size:16px}.hero-controls .slider-controls button:hover{background:#fffaf23d}
.hero-search{position:absolute;left:45px;right:45px;bottom:34px}.hero-search .booking-search{margin:0;padding:23px 26px;background:rgba(249,246,238,.95);color:#233e32;border:1px solid #fff8;border-radius:21px;backdrop-filter:blur(18px);box-shadow:0 10px 45px #0c251a26;gap:20px}.hero-search .booking-search label{font-size:11px;font-weight:500;letter-spacing:.01em}.hero-search .booking-search input,.hero-search .booking-search select{background:#fffdf8;color:#213e32;border:1px solid #203e321c;border-radius:10px;min-height:49px;font-size:13px;min-width:0}.hero-search .booking-search>.button{min-height:49px;padding:14px 28px;font-size:10px;background:#a76a4c;color:#fffaf2;box-shadow:none}
@media(min-width:1500px){.hero-slider{min-height:700px}}
@media(max-width:1100px){.hero-slider{min-height:650px}.opening .hero-copy{padding:84px 40px 215px;max-width:760px}.opening .hero-copy h1{font-size:64px}.hero-controls{top:25px;right:25px}.hero-search{left:28px;right:28px;bottom:28px}.hero-search .booking-search{padding:20px;gap:12px}.hero-search .booking-search label{min-width:100px}.hero-search .booking-search>.button{padding:14px 19px}}
@media(max-width:760px){.hero-slider{border-radius:24px;min-height:760px;margin:12px 0 22px}.hero-shade{background:linear-gradient(90deg,#10271fd9,#10271f45),linear-gradient(0deg,#10271f88,transparent 65%)}.opening .hero-copy{padding:87px 26px 330px;max-width:none}.opening .hero-copy h1{font-size:clamp(43px,9vw,60px);margin:20px 0}.opening .hero-copy .eyebrow{font-size:8px;max-width:270px;line-height:1.8}.opening .hero-copy>p{font-size:12px;line-height:1.7;max-width:400px}.hero-controls{top:22px;right:22px;left:26px;justify-content:space-between}.hero-controls .slider-controls button{width:32px;height:32px;font-size:14px}.hero-search{left:16px;right:16px;bottom:18px}.hero-search .booking-search{padding:18px;gap:13px;border-radius:18px}.hero-search .booking-search label{min-width:40%;flex-basis:40%;font-size:10px}.hero-search .booking-search label:nth-child(3){flex:1;min-width:0}.hero-search .booking-search>.button{flex:1;width:auto;min-width:115px;align-self:end;gap:10px;font-size:9px;padding:13px 14px}.hero-search .booking-search input,.hero-search .booking-search select{padding:10px 8px;font-size:12px;min-height:46px}}
@media(max-width:380px){.hero-slider{min-height:800px}.opening .hero-copy{padding:82px 22px 355px}.opening .hero-copy h1{font-size:43px}.opening .hero-copy>p{font-size:11px}.hero-search{left:12px;right:12px;bottom:14px}.hero-search .booking-search{padding:14px;gap:12px}.hero-search .booking-search label{min-width:100%;flex-basis:100%}.hero-search .booking-search label:nth-child(3){min-width:75px;flex-basis:30%}.hero-search .booking-search>.button{min-width:110px;padding:12px 10px}.hero-controls{left:22px;right:22px}}
@media(prefers-reduced-motion:reduce){.hero-track{transition:none}}
.hero-search .booking-search{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto}.hero-search .booking-search label{min-width:0}.hero-search .booking-search input,.hero-search .booking-search select{width:100%;min-width:0}
@media(max-width:760px){.hero-search .booking-search{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-search .booking-search label,.hero-search .booking-search label:nth-child(3){min-width:0}.hero-search .booking-search>.button{width:100%;min-width:0}}
@media(max-width:380px){.hero-search .booking-search label:nth-child(-n+2){grid-column:1/-1}}
/* Keep house photographs visible without relying on negative stacking layers. */
.hero-slider{background:#253d33 url('images/listing/gastehuis-01.jpg') center/cover no-repeat}
.hero-track{z-index:0}.hero-shade{z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(13,31,25,.68),rgba(13,31,25,.22) 65%,rgba(13,31,25,.04)),linear-gradient(0deg,rgba(13,31,25,.38),transparent 55%)}
.opening .hero-copy{position:relative;z-index:2}.hero-controls,.hero-search{z-index:3}
@media(max-width:760px){.hero-shade{background:linear-gradient(90deg,#10271fb3,#10271f29),linear-gradient(0deg,#10271f66,transparent 65%)}}
@media(min-width:761px) and (max-width:1000px){.header nav{display:none;position:absolute;top:calc(100% + 10px);left:12px;right:12px;flex-direction:column;gap:16px;padding:22px;background:var(--soft);border:1px solid var(--line);border-radius:20px;backdrop-filter:blur(25px);font-size:13px}.header nav.open{display:flex}.header nav~.header-actions .menu{display:grid}.header nav~.header-actions>.button{display:none}}
/* Restored guesthouse identity: original crown and uppercase wordmark. */
.brand .brand-logo{display:block;width:180px;height:auto;max-width:none;object-fit:contain;flex-shrink:0}
.header{min-height:96px}.header .brand{line-height:1;flex-shrink:0}.header .brand:hover{opacity:.85}
footer .brand .brand-logo{width:205px;filter:brightness(0) invert(1);opacity:.95}
:root[data-theme=dark] .header .brand-logo{filter:brightness(0) invert(1);opacity:.94}
.amenity-crown{display:block;width:32px;height:30px}.amenity-crown img{height:100%;width:100%;object-fit:contain}
@media(max-width:1100px){.brand .brand-logo{width:155px}}
@media(max-width:760px){.header{min-height:82px}.brand .brand-logo{width:135px}.header .brand{gap:0}footer .brand .brand-logo{width:175px}}
@media(max-width:380px){.brand .brand-logo{width:112px}.header{padding-top:9px;padding-bottom:9px;min-height:74px}}
.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:45;display:flex;align-items:center;gap:9px;padding:8px 16px 8px 9px;border-radius:30px;background:#faf7f1ed;color:#29432c;border:1px solid #ffffffd9;backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);box-shadow:inset 0 1px 0 #fff,0 8px 35px #30251a1c;font-size:12px;font-weight:600}.whatsapp-float .wa-icon{width:30px;height:30px;flex-shrink:0}.whatsapp-float small{display:block;font-size:8px;font-weight:400;letter-spacing:.04em}.whatsapp-float:hover{transform:translateY(-2px)}:root[data-theme=dark] .whatsapp-float{background:#28392bed;border-color:#ffffff3b;color:#edf1e5;box-shadow:inset 0 1px 0 #ffffff21,0 8px 35px #0003}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:26px;align-items:start}.contact-details,.contact-form-panel{padding:36px;border-radius:26px}.contact-details h2{font-size:39px;line-height:1.15;margin:16px 0 30px}.contact-method{margin:22px 0}.contact-method small{display:block;font-size:9px;letter-spacing:.12em;color:var(--accent);margin-bottom:5px}.contact-method>a{font-size:15px;overflow-wrap:anywhere}.contact-method address{margin:5px 0;font-size:14px}.contact-form-panel h2{font-size:37px;margin-bottom:25px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.contact-form-panel label{display:grid;gap:7px;font-size:12px;margin-bottom:18px}.contact-form-panel input,.contact-form-panel textarea{min-width:0;box-sizing:border-box;width:100%;border:1px solid var(--border);border-radius:12px;padding:13px;background:var(--soft);color:var(--ink);font:14px Figtree,sans-serif}.contact-form-panel textarea{resize:vertical}.contact-consent{display:flex!important;align-items:start;gap:10px!important;line-height:1.6}.contact-consent input{width:auto;margin-top:3px}.contact-honeypot{position:absolute;left:-10000px;visibility:hidden}.contact-form-panel .notice{margin-top:20px}.mail-state{font-size:11px;color:var(--muted)}
@media(max-width:760px){.whatsapp-float{right:12px;bottom:12px;padding:7px 12px 7px 7px;font-size:11px}.whatsapp-float .wa-icon{width:26px;height:26px}.whatsapp-float small{display:none}.contact-layout{grid-template-columns:1fr}.contact-details,.contact-form-panel{padding:24px}.contact-details h2{font-size:34px}.contact-fields{grid-template-columns:1fr}.contact-form-panel h2{font-size:33px}}
.coastal-panel{position:absolute;z-index:3;top:100px;right:40px;width:330px;padding:23px;border-radius:24px;background:rgba(246,242,230,.91);color:#283329;border:1px solid #ffffffa6;box-shadow:0 8px 35px #10281d1a;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.coastal-clock{padding-bottom:14px;border-bottom:1px solid #2833291c}.coastal-clock>.eyebrow{font-size:8px;color:#9c5c43}.coastal-clock time{display:block;font:36px/1.2 var(--display);letter-spacing:.03em;margin:4px 0}.coastal-clock>span:last-child{font-size:10px;display:block}.weather-head{display:flex;align-items:center;gap:16px;margin:13px 0}.weather-icon{width:65px;height:65px;overflow:visible}.weather-head strong{font:43px/1 var(--display)}.weather-head span{display:block;font-size:11px;margin-top:5px}.weather-metrics{display:grid;grid-template-columns:1fr 1fr;gap:11px 13px}.weather-metrics small{display:block;font-size:7px;letter-spacing:.08em;color:#697260}.weather-metrics b{font-size:12px;font-weight:500}.weather-source{font-size:8px!important;line-height:1.6;margin:12px 0;color:#697260!important}.weather-source a,.coastal-tides>a{text-decoration:underline}.weather-loading{font-size:11px!important;color:#697260!important;padding:16px 0}.coastal-tides{padding-top:11px;border-top:1px solid #2833291c}.coastal-tides>.eyebrow{font-size:8px;color:#9c5c43}.coastal-tides iframe{display:block;width:100%;height:175px;border:0;border-radius:12px;background:#fffdf5;margin:9px 0}.coastal-tides>a{font-size:8px}.coastal-tides>small{font-size:7px;line-height:1.5;display:block;color:#697260;margin-top:5px}.hero-slider:has(.coastal-panel){min-height:850px}.opening .hero-copy{max-width:calc(100% - 390px);padding-bottom:240px}.opening .hero-copy h1{font-size:clamp(48px,5vw,75px)}.weather-sun{transform-origin:32px 30px;animation:weather-spin 24s linear infinite}.weather-cloud{animation:weather-drift 5s ease-in-out infinite}.weather-rain{animation:weather-rain 1.2s ease-in-out infinite}@keyframes weather-spin{to{transform:rotate(360deg)}}@keyframes weather-drift{50%{transform:translateX(3px)}}@keyframes weather-rain{0%,100%{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(4px)}}
@media(max-width:1100px){.coastal-panel{right:25px;width:295px;padding:19px}.opening .hero-copy{max-width:calc(100% - 340px);padding-left:35px;padding-right:20px}.opening .hero-copy h1{font-size:58px}.hero-slider:has(.coastal-panel){min-height:900px}}
@media(max-width:900px){.opening .hero-copy{max-width:none;padding:90px 26px 35px}.opening .hero-copy h1{font-size:clamp(43px,8vw,65px)}.coastal-panel{position:relative;top:auto;right:auto;width:calc(100% - 48px);margin:0 24px 200px;padding:23px}.coastal-tides iframe{height:175px}.hero-slider:has(.coastal-panel){min-height:0}.weather-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.coastal-clock time{font-size:35px}}
@media(max-width:760px){.coastal-panel{width:calc(100% - 40px);margin:0 20px 265px;padding:20px}.weather-metrics{grid-template-columns:1fr 1fr}.opening .hero-copy{padding-bottom:28px}.coastal-clock time{font-size:32px}}
@media(max-width:380px){.coastal-panel{width:calc(100% - 32px);margin:0 16px 345px;padding:16px}}
@media(prefers-reduced-motion:reduce){.weather-sun,.weather-cloud,.weather-rain{animation:none}}
@media(min-width:1001px) and (max-width:1180px){.header nav{display:none;position:absolute;top:calc(100% + 10px);left:12px;right:12px;flex-direction:column;gap:16px;padding:22px;background:var(--soft);border:1px solid var(--line);border-radius:20px;backdrop-filter:blur(25px);font-size:13px}.header nav.open{display:flex}.header nav~.header-actions .menu{display:grid}.header nav~.header-actions>.button{display:none}}
.admin-body .header-actions>#logout{display:inline-flex}
@media(min-width:901px){.hero-slider:has(.coastal-panel){min-height:1020px}}
@media(min-width:901px) and (max-width:1100px){.hero-slider:has(.coastal-panel){min-height:1100px}}
.coastal-panel{top:90px;padding:19px;line-height:1.4}.coastal-clock{padding-bottom:10px}.coastal-clock time{font-size:32px}.weather-head{margin:10px 0}.weather-icon{width:52px;height:52px}.weather-head strong{font-size:37px}.weather-metrics{gap:7px 12px}.weather-source{margin:8px 0;line-height:1.4}.coastal-tides{padding-top:8px}.coastal-tides iframe{height:150px;margin:7px 0}.coastal-tides>small{line-height:1.35}
@media(min-width:901px){.hero-slider:has(.coastal-panel){min-height:880px}}
@media(min-width:901px) and (max-width:1100px){.hero-slider:has(.coastal-panel){min-height:930px}}
@media(max-width:900px){.coastal-panel{top:auto}}
.weather-moon{animation:weather-moon 4s ease-in-out infinite;transform-origin:center}@keyframes weather-moon{50%{opacity:.65;transform:translateY(-2px)}}@media(prefers-reduced-motion:reduce){.weather-moon{animation:none}}
/* Translucent, layered glass with visible, controllable weather motion. */
.coastal-panel{background:linear-gradient(135deg,#f5fbff2e,#d7f4f20f 48%,#f1e5d71c);border:1px solid #ffffff69;color:#f8fbf6;backdrop-filter:blur(24px) saturate(175%);-webkit-backdrop-filter:blur(24px) saturate(175%);box-shadow:inset 0 1px 0 #ffffff96,inset 0 -1px 0 #ffffff21,0 18px 50px #0a1e2440;text-shadow:0 1px 12px #08201855;overflow:hidden}
.coastal-panel:before{content:'';position:absolute;top:0;left:0;right:0;height:95px;pointer-events:none;background:linear-gradient(135deg,#ffffff21,transparent 70%);border-radius:inherit}.coastal-clock{position:relative;border-color:#ffffff35}.coastal-clock>.eyebrow,.coastal-tides>.eyebrow{color:#f1d7be}.coastal-clock time{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:28px;font-weight:300;font-variant-numeric:tabular-nums;letter-spacing:-.035em;margin:9px 0}.coastal-clock>span:last-child{color:#f7fbf2e0}.weather-head strong{font-size:45px;font-weight:400}.weather-head span{color:#f7fbf2}.weather-metrics{border-radius:13px;padding:12px;background:#0b283121;border:1px solid #ffffff21}.weather-metrics small{color:#edf5edc7}.weather-metrics b{color:#fff;font-variant-numeric:tabular-nums}.weather-source,.weather-loading{color:#edf5edd1!important}.weather-source a,.coastal-tides>a{color:#fff}.coastal-tides{position:relative;border-color:#ffffff35}.coastal-tides>small{color:#f0f6ecbd}.coastal-tides iframe{background:transparent;mix-blend-mode:screen;opacity:.96;border:1px solid #ffffff21}.weather-icon{filter:drop-shadow(0 3px 13px #e5f7ff44)}.weather-motion{position:absolute;top:0;right:0;display:grid;place-items:center;width:26px;height:26px;padding:0;border-radius:50%;border:1px solid #ffffff55;background:#ffffff13;color:white;font-size:11px}.weather-motion:hover{background:#ffffff2b}.wind-motion{display:inline-block;width:30px;height:13px;vertical-align:middle;margin-right:4px;overflow:visible}.wind-motion path{fill:none;stroke:#c7edf7;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:19 10}.tide-motion{position:absolute;right:0;top:2px;width:75px;height:18px;overflow:hidden;opacity:.8}.tide-motion path{fill:none;stroke:#bde8f1;stroke-width:1.5}
.coastal-panel[data-motion=on] .weather-sun{animation:weather-spin 12s linear infinite}.coastal-panel[data-motion=on] .weather-cloud{animation:glass-cloud-float 4s ease-in-out infinite}.coastal-panel[data-motion=on] .weather-rain{animation:glass-rain 1.2s linear infinite}.coastal-panel[data-motion=on] .weather-moon{animation:weather-moon 4s ease-in-out infinite}.coastal-panel[data-motion=on] .wind-motion path{animation:glass-wind 2.5s linear infinite}.coastal-panel[data-motion=on] .tide-motion g{animation:glass-tide 3.8s linear infinite}.coastal-panel[data-motion=off] .weather-icon *,.coastal-panel[data-motion=off] .wind-motion *,.coastal-panel[data-motion=off] .tide-motion *{animation:none!important}
@keyframes glass-cloud-float{50%{transform:translate(6px,-3px)}}@keyframes glass-rain{0%{opacity:.2;transform:translateY(-3px)}50%{opacity:1}100%{opacity:.2;transform:translateY(7px)}}@keyframes glass-wind{to{stroke-dashoffset:-58}}@keyframes glass-tide{to{transform:translateX(-40px)}}
.hero-search .booking-search{background:linear-gradient(135deg,#faf8f0d9,#f4f3ebad);backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);border-color:#ffffff9c;box-shadow:inset 0 1px 0 #ffffffb0,0 12px 40px #0b28312b}
/* Slim smoked glass: the photographs remain visible through both panels. */
.coastal-panel{width:305px;padding:16px;background:linear-gradient(135deg,#112d3959,#0b303c2e 55%,#234a403d);border-color:#ffffff5c;box-shadow:inset 0 1px 0 #ffffff94,inset 1px 0 0 #ffffff25,0 16px 45px #061e2738;text-shadow:0 1px 5px #061e2799}.coastal-clock{padding-bottom:8px}.coastal-clock time{font-size:25px;margin:7px 0}.coastal-clock>span:last-child{font-size:9px}.weather-head{margin:8px 0;gap:12px}.weather-head strong{font-size:37px}.weather-icon{width:47px;height:47px}.weather-metrics{padding:9px;gap:5px 10px;background:#092b3421}.weather-metrics b{font-size:11px}.weather-source{margin:7px 0;font-size:7px!important}.coastal-tides iframe{height:190px;border:0;border-radius:0;background:transparent;filter:contrast(1.5) brightness(1.12);mix-blend-mode:screen;opacity:.84}.coastal-tides>small{font-size:7px}
.hero-search .booking-search{padding:18px 22px;gap:14px;background:linear-gradient(135deg,#eaf6f33b,#e4ebe221);color:#fffaf2;border-color:#ffffff70;backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);text-shadow:0 1px 5px #10271f77}.hero-search .booking-search label{color:#fffaf2}.hero-search .booking-search input,.hero-search .booking-search select{min-height:44px;background:#edf8f31c;color:#fff;border-color:#ffffff4d;color-scheme:dark}.hero-search .booking-search select option{background:#203c36;color:white}.hero-search .booking-search>.button{min-height:44px;padding:12px 25px}
@media(max-width:1100px) and (min-width:901px){.coastal-panel{width:285px}}
@media(max-width:900px){.coastal-panel{width:calc(100% - 48px)}}
@media(max-width:760px){.coastal-panel{width:calc(100% - 40px)}.hero-search .booking-search{padding:16px;gap:12px}.hero-search .booking-search>.button{padding:12px 10px}}
@media(max-width:380px){.coastal-panel{width:calc(100% - 32px)}}
/* Compact weather instrument: retain the width and halve the visual height. */
.coastal-panel{padding:13px 15px;border-radius:21px;background:linear-gradient(135deg,#0d2c3b50,#163e3f29 60%,#274d3f38)}.coastal-clock{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:8px;padding-bottom:7px}.coastal-clock>.eyebrow{grid-column:1/-1;font-size:6px;letter-spacing:.14em;padding-right:25px}.coastal-clock time{font-size:21px;line-height:1.1;margin:4px 0 1px}.coastal-clock>span:last-child{font-size:7px;max-width:115px;text-align:right;line-height:1.35}.weather-motion{width:21px;height:21px;font-size:9px}.weather-head{margin:6px 0;gap:8px}.weather-icon{width:35px;height:35px}.weather-head>div{display:flex;align-items:center;gap:11px}.weather-head strong{font-size:31px}.weather-head span{font-size:9px;margin:0}.weather-metrics{grid-template-columns:repeat(4,minmax(0,1fr));padding:7px 6px;gap:6px;border-radius:10px}.weather-metrics small{font-size:5px;letter-spacing:.02em;white-space:nowrap}.weather-metrics b{font-size:9px;white-space:nowrap}.wind-motion{width:17px;height:9px;margin-right:2px}.weather-source{font-size:6px!important;line-height:1.35;margin:5px 0}.weather-source br{display:none}.weather-source a{margin-left:4px}.coastal-tides{padding-top:5px}.coastal-tides>.eyebrow{font-size:6px}.tide-motion{height:11px;width:51px;top:0}.tide-window{height:130px;overflow:hidden;position:relative;margin-top:4px}.coastal-tides .tide-window iframe{width:117.647%;height:150px;transform:scale(.85);transform-origin:left top;margin:0;max-width:none}.coastal-tides>small{font-size:6px;line-height:1.25;margin-top:3px}.weather-loading{padding:8px 0;font-size:9px!important}
@media(max-width:900px){.coastal-panel{max-width:360px;margin-left:auto;margin-right:auto}.weather-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:380px){.coastal-panel{padding:12px}.weather-metrics small{font-size:5px}.weather-metrics b{font-size:8px}}
@media(min-width:901px){.hero-slider:has(.coastal-panel){min-height:690px}}
@media(min-width:901px) and (max-width:1100px){.hero-slider:has(.coastal-panel){min-height:800px}}
.coastal-panel{display:flex;flex-direction:column;max-height:var(--hero-copy-height,340px)}.coastal-clock,#coastal-weather{flex-shrink:0}.coastal-tides{display:flex;flex-direction:column;flex:1;min-height:0}.coastal-tides>.eyebrow,.coastal-tides>small{flex-shrink:0}.coastal-tides .tide-window{flex:1;min-height:55px;max-height:130px}.coastal-panel .weather-source{margin-top:4px;margin-bottom:4px}
.whatsapp-float{padding:7px 14px 7px 8px;gap:8px;border-radius:25px;background:linear-gradient(135deg,#fffdf5b8,#f3eee47a);color:#283329;border:1px solid #ffffffe0;box-shadow:inset 0 1px 0 #ffffffcc,0 8px 28px #263d2f24;backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);font-size:11px}.whatsapp-float .wa-icon{width:27px;height:27px}.whatsapp-float .wa-icon>circle{fill:#9c5c43}.whatsapp-float small{font-size:7px;letter-spacing:.03em}.whatsapp-float:hover{border-color:#e0b697;background:linear-gradient(135deg,#fffdf5dd,#f3eee4a3)}:root[data-theme=dark] .whatsapp-float{background:linear-gradient(135deg,#263b2fc4,#18312a94);color:#f3eee4;border-color:#ffffff69}:root[data-theme=dark] .whatsapp-float .wa-icon>circle{fill:#bd896a}
@media(max-width:760px){.whatsapp-float{padding:6px 11px 6px 7px;font-size:10px}.whatsapp-float .wa-icon{width:25px;height:25px}}
.social-instagram{width:32px;height:32px;min-width:32px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;color:var(--ink);background:#ffffff14}.social-instagram svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}.social-instagram .instagram-dot{fill:currentColor;stroke:none}.social-instagram:hover{border-color:var(--accent);color:var(--accent);background:#ffffff29}
.coastal-clock time{font-size:18px;letter-spacing:-.02em}.coastal-clock>.eyebrow{font-size:5px}.coastal-clock>span:last-child{font-size:6px;max-width:100px}.coastal-clock{padding-bottom:5px}.weather-motion{height:19px;width:19px;font-size:8px}
@media(max-width:760px){.header-actions{gap:5px}.header .brand-logo{width:120px}.header .language-choice select{width:82px;max-width:82px;font-size:10px;padding:8px 5px}.header .theme,.header .menu,.social-instagram{width:28px;min-width:28px;height:28px}.social-instagram svg{width:15px;height:15px}.header{gap:10px}}
@media(max-width:380px){.header .brand-logo{width:96px}.header-actions{gap:4px}.header .language-choice select{width:75px;max-width:75px;font-size:9px;padding:8px 3px}.header .theme,.header .menu,.social-instagram{width:26px;min-width:26px;height:26px}.header{gap:6px}}
/* Explicit animation opt-in also works when the device requests reduced motion. */
.coastal-panel[data-motion=on] .weather-sun{animation:weather-spin 12s linear infinite!important}.coastal-panel[data-motion=on] .weather-cloud{animation:glass-cloud-float 4s ease-in-out infinite!important}.coastal-panel[data-motion=on] .weather-rain{animation:glass-rain 1.2s linear infinite!important}.coastal-panel[data-motion=on] .weather-moon{animation:weather-moon 4s ease-in-out infinite!important}.coastal-panel[data-motion=on] .wind-motion path{animation:glass-wind 2.5s linear infinite!important}.coastal-panel[data-motion=on] .tide-motion g{animation:glass-tide 3.8s linear infinite!important}
.hero-controls{top:20px;left:64px;right:auto;bottom:auto;justify-content:flex-start;gap:14px}.hero-controls .slider-controls button{width:32px;height:32px;font-size:14px}.hero-controls>span{font-size:9px}
.hero-search .booking-search{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.hero-search .booking-search label{width:100%;min-width:0;margin:0;line-height:1.4}.hero-search .booking-search input,.hero-search .booking-search select,.hero-search .booking-search>.button{box-sizing:border-box;height:48px;min-height:48px;max-height:48px;width:100%;min-width:0;margin:0;line-height:normal;align-self:end;border-radius:12px}.hero-search .booking-search input,.hero-search .booking-search select{appearance:none;-webkit-appearance:none;padding:11px 13px;font-family:inherit;font-size:12px}.hero-search .booking-search select{padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23fffaf2' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:11px 8px}.hero-search .booking-search>.button{display:flex;justify-content:center;gap:10px;padding:11px 13px;font-size:10px}
@media(max-width:1100px){.hero-controls{left:35px}}
@media(max-width:760px){.hero-controls{left:26px;right:auto;top:22px}.hero-search .booking-search{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-search .booking-search input,.hero-search .booking-search select{font-size:11px;padding-left:9px;padding-right:9px}.hero-search .booking-search select{padding-right:27px;background-position:right 9px center}.hero-search .booking-search>.button{font-size:9px;padding:10px 7px;letter-spacing:.04em}.coastal-panel{margin-bottom:220px}}
@media(max-width:380px){.hero-controls{left:22px}.hero-search .booking-search label:nth-child(-n+2){grid-column:auto}.hero-search .booking-search{gap:11px}.coastal-panel{margin-bottom:220px}}
.header nav .nav-directions{display:inline-flex;align-items:center;justify-content:center;padding:6px 11px;border:1px solid var(--border);border-radius:20px;color:var(--accent);white-space:nowrap;line-height:1.4}.header nav .nav-directions:hover{border-color:var(--accent);background:#ffffff22}
@media(max-width:1180px){.header nav .nav-directions{align-self:flex-start;padding:9px 15px}}
/* Shared glass material across the navigation, content, forms and footer. */
:root{--glass:linear-gradient(135deg,rgba(255,253,246,.36),rgba(235,243,238,.14));--line:rgba(255,255,255,.64);--shadow:0 12px 36px rgba(22,46,37,.10);--glass-blur:24px;--input-glass:rgba(255,253,246,.30)}
:root[data-theme=dark]{--glass:linear-gradient(135deg,rgba(32,55,47,.42),rgba(18,39,34,.21));--line:rgba(255,255,255,.27);--shadow:0 12px 38px rgba(0,0,0,.17);--input-glass:rgba(255,255,255,.07)}
.glass:not(.coastal-panel),.header,.section:not(.booking),.room-page,.gallery-photo,.escape,footer{background:var(--glass);border-color:var(--line);backdrop-filter:blur(var(--glass-blur)) saturate(150%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);box-shadow:inset 0 1px 0 #ffffff88,inset 1px 0 0 #ffffff25,var(--shadow)}
.header nav.open{background:var(--glass);border-color:var(--line);backdrop-filter:blur(var(--glass-blur)) saturate(150%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%)}
.contact-form-panel input,.contact-form-panel textarea,.booking-form input,.booking-form textarea,.admin-body input,.admin-body textarea,.admin-body select{background:var(--input-glass);border-color:var(--border);color:var(--ink);box-shadow:inset 0 1px 0 #ffffff33}
footer{color:var(--ink)}footer>p,footer>small{color:var(--muted)}footer .brand .brand-logo{filter:none;opacity:1}:root[data-theme=dark] footer .brand .brand-logo{filter:brightness(0) invert(1);opacity:.95}
.header .language-choice select{height:32px;min-height:32px;appearance:none;-webkit-appearance:none;padding:7px 24px 7px 11px;background-color:var(--input-glass);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%239c5c43' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-size:9px 6px;background-position:right 9px center;background-repeat:no-repeat;color:var(--ink)}
@media(max-width:760px){.header .language-choice select{height:28px;min-height:28px;padding:6px 18px 6px 7px;background-position:right 6px center}}
@media(max-width:380px){.header .language-choice select{height:26px;min-height:26px}}
.header nav{align-items:center}@media(max-width:1180px){.header nav{align-items:stretch}}
/* Slim navigation and one compact WhatsApp chooser for both contact numbers. */
.header{min-height:72px;padding:8px 20px}.header .brand-logo{width:140px}.header nav{gap:12px;font-size:10px}.header-actions{gap:8px}.header-actions .button.small{padding:8px 13px;font-size:9px}.hero-slider{margin-top:12px}.opening .hero-copy{padding-bottom:190px}
.whatsapp-contact{position:fixed;right:16px;bottom:16px;z-index:45;border:0!important}.whatsapp-contact>.whatsapp-float{position:static;padding:6px 12px 6px 7px;margin:0;gap:7px;list-style:none;font-size:10px;justify-content:flex-start}.whatsapp-contact>.whatsapp-float::-webkit-details-marker{display:none}.whatsapp-contact>.whatsapp-float>span{font-size:10px;transform:none}.whatsapp-choices{position:absolute;right:0;bottom:calc(100% + 10px);width:225px;padding:16px;background:var(--glass);border:1px solid var(--line);border-radius:19px;backdrop-filter:blur(26px) saturate(160%);-webkit-backdrop-filter:blur(26px) saturate(160%);box-shadow:inset 0 1px 0 #ffffff99,var(--shadow);color:var(--ink)}.whatsapp-choices strong{display:block;font:23px var(--display);margin-bottom:8px}.whatsapp-choices a{display:block;padding:11px 5px;border-top:1px solid var(--border);font-size:13px;color:var(--ink);white-space:nowrap}.whatsapp-choices a:hover{color:var(--accent)}
@media(min-width:901px){.hero-slider:has(.coastal-panel){min-height:620px}}
@media(min-width:901px) and (max-width:1100px){.hero-slider:has(.coastal-panel){min-height:650px}}
@media(max-width:760px){.header{min-height:64px;padding:7px 14px}.header .brand-logo{width:115px}.header-actions{gap:5px}.whatsapp-contact{right:10px;bottom:10px}}
@media(max-width:380px){.header{min-height:60px;padding:7px 10px}.header .brand-logo{width:96px}.header-actions{gap:4px}}
/* The standalone booking search uses the same four equal controls in both themes. */
.booking-search{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;color:var(--ink)}.booking-search label{min-width:0;width:100%;margin:0;line-height:1.4}.booking-search input,.booking-search select,.booking-search>.button{box-sizing:border-box;width:100%;min-width:0;height:48px;min-height:48px;max-height:48px;align-self:end;margin:0;border-radius:12px;line-height:normal}.booking-search input,.booking-search select{appearance:none;-webkit-appearance:none;padding:11px 13px;background-color:var(--input-glass);border:1px solid var(--border);color:var(--ink);font-family:inherit;font-size:12px;color-scheme:inherit}.booking-search select{padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%239c5c43' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:11px 8px}.booking-search select option{background:var(--bg);color:var(--ink)}.booking-search>.button{display:flex;justify-content:center;gap:10px;padding:11px 12px;font-size:10px}.booking-search input::-webkit-date-and-time-value{text-align:left}.booking-search input:focus,.booking-search select:focus{border-color:var(--accent)}#booking-status a{text-decoration:underline;color:var(--accent)}
@media(max-width:760px){.booking-search{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-search input,.booking-search select{font-size:11px;padding-left:9px}.booking-search>.button{font-size:9px;letter-spacing:.03em}}
.whatsapp-stack{position:fixed;right:16px;bottom:16px;z-index:45;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.whatsapp-stack .whatsapp-float{position:static;margin:0;padding:5px 11px 5px 6px;gap:7px;min-width:135px;font-size:10px}.whatsapp-stack .wa-icon{width:25px;height:25px}.whatsapp-stack .whatsapp-float>span{font-size:10px;font-weight:500;letter-spacing:.03em}
@media(max-width:760px){.whatsapp-stack{right:10px;bottom:10px;gap:4px}.whatsapp-stack .whatsapp-float{padding:5px 9px 5px 5px;min-width:128px}.whatsapp-stack .wa-icon{width:23px;height:23px}}
