:root{--offWhite:#FAF7F0;--brown:#5A3C28;--red:#D5322F;--orange:#F28A30;--yellow:#F6CE46;--green:#509E60;--sand:#EED4BE}
*{box-sizing:border-box}body{margin:0;background:var(--offWhite);color:var(--brown);font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,Arial}
a{color:var(--green);text-decoration:none}a:hover{opacity:.85}
.container{max-width:1120px;margin:0 auto;padding:0 20px}
.header{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.header h1{font-size:28px;margin:0}
.header nav{display:flex;gap:18px;font-size:14px}
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center;padding:12px 0 32px}
.hero h2{font-size:42px;line-height:1.1;margin:0 0 8px}.hero h2 span{display:block}
.hero p{opacity:.9}.cta{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:14px;font-weight:600;border:1px solid transparent}
.btn-primary{background:var(--green);color:#fff}.btn-outline{border-color:var(--brown);color:var(--brown);background:#fff}.btn-green{background:var(--green);color:#fff;border:0}.full{width:100%}
.badges{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}
.badge{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}
.badge-sand{background:var(--sand);color:var(--brown)}.badge-red{background:var(--red);color:#fff}.badge-orange{background:var(--orange);color:#fff}.badge-yellow{background:var(--yellow);color:var(--brown)}.badge-green{background:var(--green);color:#fff}
.hero-art{position:relative;aspect-ratio:4/3;background:linear-gradient(160deg,var(--sand),var(--offWhite));border-radius:22px;box-shadow:0 10px 24px rgba(0,0,0,.08);overflow:hidden}
.hero-art svg{position:absolute;inset:0;width:100%;height:100%}.art-mark{position:absolute;right:12px;bottom:10px;font-size:12px;opacity:.7}
.section{padding:22px 0}.section h3{font-size:28px;margin:8px 0}.section .muted{opacity:.75}.section .link-green{color:var(--green)}.section .section-head{display:flex;align-items:end;justify-content:space-between}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.card{background:#fff;border-radius:16px;box-shadow:0 10px 24px rgba(0,0,0,.06);padding:18px}
.card h4{margin:0 0 8px}.selection{background:var(--offWhite);border:1px solid var(--sand);border-radius:12px;padding:14px}
.row{display:flex;align-items:center;gap:8px;margin:6px 0}.small{font-size:14px}.tiny{font-size:12px}
.note{display:flex;gap:10px;align-items:flex-start;background:#fff;border-radius:12px;padding:12px 14px;margin-top:16px;box-shadow:0 10px 24px rgba(0,0,0,.06);max-width:620px}
.note-icon{color:var(--green)}.booking{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:14px;font-weight:600}input,select,textarea{width:100%;margin-top:6px;padding:10px 12px;border:1px solid #d9d4cd;border-radius:10px;background:#fff;color:var(--brown)}
.mt{margin-top:16px}.iframe-wrap{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden}.iframe-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.footer{margin-top:24px;padding:28px 0 12px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .6fr;gap:16px}.brand{font-size:20px;font-weight:700}.foot-head{font-weight:700;margin-bottom:6px}.copy{padding:10px 0;text-align:center}
@media (max-width:900px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.booking{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}
@media (max-width:560px){.grid{grid-template-columns:1fr}.hero h2{font-size:34px}}
