/* Staging revision from the owner's supplied composition, 02 October 2026. */
:root{--paper:#faf9f4;--ink:#111310;--red:#ff352c;--line:#e3dfd7;--muted:#65686a}
body{background:radial-gradient(ellipse at 50% 20%,#fffefb 0%,var(--paper) 70%)}
.booking-box{border:1px solid var(--line);border-radius:9px;padding:12px;background:#f8f6f0;box-shadow:none}
.date-row{gap:7px;margin-bottom:8px;grid-template-columns:1fr 1fr .65fr}
.date-row label,.date-row label:first-child,.date-row label:last-child{padding:8px;border:1px solid var(--line);border-radius:6px;background:#fffaf5;font-weight:500;text-transform:none;letter-spacing:0;color:#626872}
.date-row input,.date-row select{font-weight:600;letter-spacing:-.03em;color:#101310}
.booking-box>.button{border-radius:6px;justify-content:center;background:linear-gradient(105deg,#111311,#20211e);font-weight:500;font-size:16px}
.reference-art{height:auto;aspect-ratio:597/300;width:100%;border-radius:0;max-width:none;background-image:url('/assets/hero-reference.png');background-size:106.7002% auto;background-position:50% 60.59%;background-repeat:no-repeat}
.hero{gap:20px}
.manifesto{display:block;border:0;padding:0;margin-top:0;margin-bottom:50px}
.manifesto h2{font-family:'DM Sans',Arial,sans-serif;font-weight:1000;letter-spacing:-.065em;font-size:clamp(38px,6.4vw,70px);line-height:.98;color:#050505;max-width:none}
.manifesto .eyebrow{margin-bottom:8px}
.manifesto p:last-child{max-width:none;color:var(--ink);font-size:20px;line-height:1.35;margin-top:9px}
.room,.bar-section,.story img,.art-note img{border-radius:12px;overflow:hidden}
@media(max-width:760px){
 main{padding-inline:18px}
 .hero{gap:7px;margin-bottom:9px}
 .hero-copy .lead{margin-bottom:18px}
 .booking-box{padding:8px}
 .date-row{gap:5px;grid-template-columns:1fr 1fr .58fr}
 .date-row label,.date-row label:first-child,.date-row label:last-child{padding:6px 5px;font-size:10px}
 .date-row input,.date-row select{font-size:11px;min-height:32px}
 .booking-box>.button{min-height:44px;font-size:14px}
 .reference-art{height:auto;aspect-ratio:597/300;border-radius:0;max-width:none;width:calc(100% + 10px)}
 .manifesto{padding:0 8px;margin-bottom:40px}
 .manifesto h2{font-size:clamp(33px,8.4vw,58px)}
 .manifesto p:last-child{font-size:16px;margin-top:8px}
}

.brand-logo{width:48px;height:50px;object-fit:contain;flex-shrink:0}.brand{gap:5px}.language{gap:7px;padding-inline:13px}
@media(max-width:760px){.brand-logo{width:39px;height:42px}.brand{gap:3px}}

/* Readable one-row booking controls, including native iPhone date pickers. */
.booking-box{padding:10px;border-radius:12px}
.date-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.68fr);gap:6px;margin-bottom:10px}
.date-row label,.date-row label:first-child,.date-row label:last-child{position:relative;padding:10px 9px;min-height:88px;border-radius:9px;background:#fffdf8;font-size:12px;line-height:1.3;color:#626872}
.date-display{display:none;pointer-events:none}
.date-enhanced .date-display{display:flex;flex-direction:column;gap:4px;margin-top:7px}
.date-display strong{font-size:23px;font-weight:700;line-height:1.15;letter-spacing:-.04em;color:var(--ink);white-space:nowrap}
.date-display small{font-size:11px;line-height:1.2;color:#747670;white-space:nowrap}
.date-row .date-enhanced input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer;font-size:16px}
.date-row .date-enhanced input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer}
.date-row label:focus-within{outline:2px solid var(--red);outline-offset:2px}
.date-row select{font-size:22px;font-weight:700;line-height:1.2;min-height:40px;padding:7px 0 0;letter-spacing:0;text-align:start}
.booking-box>.button{min-height:49px;border-radius:8px;font-size:16px;gap:12px}
.booking-box>.button svg{width:20px;height:20px}
@media(max-width:760px){
 .hero{gap:27px}
 .date-row label,.date-row label:first-child,.date-row label:last-child{padding:10px 8px;min-height:85px;font-size:11px}
 .date-display strong{font-size:21px}
 .date-row select{font-size:21px}
}
@media(max-width:350px){
 .booking-box{padding:8px}
 .date-row{gap:4px}
 .date-row label,.date-row label:first-child,.date-row label:last-child{padding-inline:6px}
 .date-display strong{font-size:19px}
}

#languages{width:calc(100% - 28px);max-width:420px;padding:14px;border-radius:16px;height:fit-content}
#languages .language-grid{margin:0;gap:8px}
#languages .language-grid a{padding:11px 10px;min-width:0;gap:9px;font-size:14px;min-height:48px}

/* Clear WhatsApp identity and larger contact icons. */
.header-whatsapp{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:50%;background:var(--ink);color:#25d366;border:1px solid #25d366}
.header-whatsapp svg{width:26px;height:26px;flex-shrink:0}
.header-whatsapp:hover{background:#203c2b;color:#25d366}
.contact-dock svg{width:26px;height:26px;flex:0 0 26px}
.contact-dock #whatsapp{background:transparent;color:var(--ink)}
.contact-dock #whatsapp svg{color:#128c49;stroke-width:2}
.header-actions{flex-shrink:0}
@media(max-width:400px){header{padding-inline:12px;gap:8px}.brand-logo{width:30px;height:34px}header .brand{font-size:17px}.header-actions{gap:4px}.header-actions .language{padding-inline:8px;gap:4px}.contact-dock a,.contact-dock button{gap:4px}}
