/* Styles for About, Book Your Stay and Contact pages */
/* ---------- inner pages ---------- */
.page-hero{position:relative;min-height:62vh;display:flex;align-items:center;background-size:cover;background-position:center;color:#F6F3EC}
.page-hero .hero-overlay{position:absolute;inset:0}
.page-hero .container-fluid{position:relative}
.page-hero h1{font-weight:400;font-size:clamp(2.6rem,6vw,5.2rem);line-height:1.15;letter-spacing:-.01em}
.page-hero .lead-text{font-size:clamp(1.15rem,1.9vw,1.6rem);line-height:1.6}
.sec-dark{background:var(--footer);color:#F6F3EC;text-align:center}
.sec-dark p{max-width:34rem;margin-inline:auto}
.btn-tan{border:1px solid var(--tan);color:var(--tan);border-radius:10px;padding:1.05rem 2.6rem;font-size:1.1rem;min-width:300px;background:transparent}
.btn-tan:hover{background:var(--tan);color:var(--footer)}
.feature-list p{margin-bottom:1.4rem}
.host-quote{max-width:34rem;margin:0 auto;font-size:1.7rem;line-height:1.5;font-family:'Roboto',sans-serif}
.host-quote figcaption{font-family:'Poppins',sans-serif;font-size:1.1rem;text-align:right;margin-top:.5rem}
@media(max-width:767.98px){.btn-tan{min-width:0;width:100%}.page-hero{min-height:auto;padding:3rem 0}}

/* ---------- contact page ---------- */
.contact-narrow{max-width:960px}
.contact-h1{font-family:'Poppins',sans-serif;font-weight:500;font-size:clamp(3rem,7vw,5.8rem);letter-spacing:-.02em;line-height:1.1}
.lead-lg{font-size:clamp(1.2rem,2vw,1.7rem);line-height:1.5}
.contact-form label{display:block;font-size:1.05rem;margin-bottom:.15rem}
.contact-form label.lg,.contact-form legend{font-size:1.2rem}
.contact-form legend{float:none;width:auto;padding:0;margin-bottom:.4rem}
.contact-form .req,.contact-form .hint{color:#6f6a63;font-size:1rem}
.contact-form input[type=text],.contact-form input[type=email],.contact-form input[type=tel],.contact-form select,.contact-form textarea{
  width:100%;background:transparent;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:.7rem 0;font:inherit;color:var(--ink);outline:0}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-bottom-width:2px;padding-bottom:calc(.7rem - 1px)}
.contact-form textarea{min-height:170px;resize:vertical}
.contact-form select{appearance:none;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='14' fill='none' stroke='%2333302D' stroke-width='1.5'%3E%3Cpath d='M2 2l9 9 9-9'/%3E%3C/svg%3E") no-repeat right 4px center}
.form-check-sq{display:flex;align-items:center;gap:.7rem;margin-top:.5rem}
.form-check-sq input{appearance:none;width:1.6rem;height:1.6rem;border:1px solid var(--ink);background:transparent;margin:0;cursor:pointer;flex:none}
.form-check-sq input:checked{background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23F6F3EC' stroke-width='2'%3E%3Cpath d='M3 8.5l3.2 3L13 4.5'/%3E%3C/svg%3E") center/80% no-repeat}
.form-check-sq label{margin:0!important}
.chips{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.8rem}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips label{border:1px solid var(--ink);padding:.35rem .9rem;cursor:pointer;margin:0;font-size:1.05rem}
.chips input:checked+label{background:var(--ink);color:#fff}
.chips input:focus-visible+label,.form-check-sq input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.btn-submit{min-width:0;padding:1.4rem 2.2rem;font-size:1.4rem;background:transparent;border-radius:10px}
.form-success p{margin-bottom:.5rem}
.map-wrap{height:min(72vh,780px);min-height:360px;border-radius:2px;overflow:hidden;background:#ddd}
.map-wrap iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.6)}
.directions h4{font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(1.6rem,2.6vw,2.2rem);margin:2.8rem 0 1.2rem}
.directions p{font-size:1.15rem}
