/* Patong Signature / Parcel hotel adaptation */
:root { --maxw: 1480px; }
.site-header .header-inner { gap: 1rem; }
.site-header .brand-mark { font-size: clamp(1.08rem,1.6vw,1.5rem); white-space:nowrap; }
.site-header .brand-mark i { font-style: italic; font-weight:300; }
.site-header .brand-sub { letter-spacing:.19em; font-size:.5rem; }
.nav-primary { gap:clamp(.7rem,1.15vw,1.4rem); }
.nav-primary .nav-link { font-size:.58rem; letter-spacing:.09em; }
.nav-active { color:var(--brass) !important; opacity:1; }
.nav-active::after { transform:scaleX(1); }
.header-cta { padding:.75rem .9rem; font-size:.6rem; letter-spacing:.07em; }
.site-header.inner-header { background:var(--chalk);color:var(--ink);}
.site-header.inner-header .header-inner{border-bottom-color:rgba(28,34,31,.13)}
.site-header.inner-header .header-cta{ color:var(--ink); border-color:var(--ink); }
.site-header.inner-header .header-cta:hover{background:var(--ink);color:var(--chalk);}
.hero.hotel-hero { min-height:min(920px,100svh); }
.hero.page-hero { min-height: min(690px,82svh); }
.hero-media img { object-fit:cover; object-position:center 48%; }
.hero::before {content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,15,13,.57),rgba(7,15,13,.12) 85%);z-index:1;}
.hero-inner,.hero-scroll {z-index:2}
.hero-title { max-width:900px; letter-spacing:-.035em; }
.hotel-hero .hero-title { font-size:clamp(3.4rem,7.8vw,8.5rem); line-height:1.02; }
.page-hero .hero-title { font-size:clamp(3.3rem,6.2vw,6.5rem); }
.hero-desc {max-width:56ch}
.hero-facts .hero-price .v{font-size:clamp(.9rem,1.2vw,1.3rem);letter-spacing:.01em}
.hotel-facts .hero-mini li span{letter-spacing:-.02em}
.hotel-facts .hero-mini li span{font-size:clamp(1.4rem,2.2vw,2.2rem)}
.overview .spec-list {align-self:start}
.overview-grid .img-frame { min-height:430px; }
.overview-grid .img-frame img{object-position:center}
.overview .stat-band {grid-template-columns:repeat(4,1fr)}
.hotel-rooms {background:var(--chalk)}
.rooms-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.4rem,2.5vw,2.5rem); }
.room-card {background:var(--white);box-shadow:0 1px 0 var(--stone-2);display:flex;flex-direction:column;}
.room-image {position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--sand);}
.room-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.room-image:hover img{transform:scale(1.045)}
.room-view{position:absolute;right:1rem;bottom:1rem;background:rgba(244,244,239,.92);color:var(--ink);font-size:.67rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.6rem .9rem;}
.room-card-content { padding:clamp(1.2rem,2vw,2rem);display:flex;flex-direction:column;align-items:flex-start;flex:1; }
.card-kicker{display:block;color:var(--brass);text-transform:uppercase;letter-spacing:.18em;font-size:.66rem;font-weight:600;margin-bottom:.75rem;}
.room-card h3 {font-size:clamp(1.4rem,2vw,2rem);line-height:1.17; margin-bottom:.8rem}
.room-card-content p{font-size:.9rem;line-height:1.7;flex:1}
.room-stats {display:flex;gap:.65rem 1.2rem;flex-wrap:wrap;border-top:1px solid var(--stone-2);border-bottom:1px solid var(--stone-2);padding:1rem 0;margin:1rem 0 1.3rem;width:100%;font-size:.73rem;letter-spacing:.04em;color:var(--slate);}
.section-copy{max-width:760px;margin:0 auto 2.5rem;text-align:center}
.center-link{text-align:center;margin-top:2.5rem}
.hotel-experiences {background:var(--mist)}
.experience-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,3vw,3.4rem)}
.experience-card .img-frame {display:block;margin-bottom:1.6rem}
.experience-card h3 {font-size:clamp(1.5rem,2.4vw,2.1rem);margin-bottom:.7rem}
.experience-card p{max-width:45ch;font-size:.91rem;line-height:1.75}
.experience-card .link-underline {margin-top:.5rem}
.hotel-experiences .experience-card .img-frame{aspect-ratio: 1.25/1}
.hotel-cta{background:var(--ink);color:var(--chalk);padding:clamp(4rem,8vw,8rem) var(--edge);display:flex;gap:2rem;align-items:center;justify-content:space-between}
.hotel-cta>div{max-width:780px}.hotel-cta h2{color:var(--chalk);font-size:clamp(2.6rem,5.5vw,5rem);margin:0 0 1.2rem;line-height:1.04}
.hotel-cta p:not(.eyebrow){max-width:45ch;color:rgba(244,244,239,.69)}
.hotel-cta-actions{display:flex;flex-direction:column;gap:.8rem;min-width:225px}
.alt-fill{background:var(--chalk);border-color:var(--chalk);color:var(--ink)}.alt-fill:hover{background:var(--brass);border-color:var(--brass);color:white}
.location-banner{display:grid;grid-template-columns:1.6fr 1fr;background:var(--mist);margin-top:3rem;align-items:center}
.location-banner .img-frame{width:100%;height:100%;min-height:340px;aspect-ratio:auto}
.location-banner>div:nth-child(2){padding:clamp(1.8rem,4vw,4rem)}
.location-banner h3{font-size:clamp(1.5rem,3.5vw,3rem);margin-bottom:1rem}
.feature-highlight {display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(2rem,6vw,7rem);align-items:center}
.feature-highlight-copy h3 {font-size:clamp(2.2rem,4vw,4rem);margin-bottom:1.4rem}
.feature-highlight-copy p{font-size:1.08rem}
.amenity-cards{margin-top:6rem}
.alt-section{background:var(--mist)}
.highlight-row{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(3rem,7vw,8rem)}
.highlight-row h3 {font-size:clamp(1.9rem,3vw,3rem);margin-bottom:1.2rem}
.room-detail-grid{display:grid;grid-template-columns:1fr .8fr;gap:clamp(2rem,8vw,8rem)}
.room-specs{border-top:1px solid var(--stone-2);margin:2rem 0}
.room-specs>div{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--stone-2)}
.room-specs span{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;color:var(--sage)}
.room-specs strong{font-size:.88rem;font-weight:500}
.detail-back{display:block;margin-top:1rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}
.feature-panel{padding:clamp(1.8rem,4vw,3.5rem);background:var(--mist)}
.feature-panel h3{font-size:clamp(1.8rem,3vw,2.8rem);margin-bottom:1.8rem}
.feature-panel p{margin-top:1.5rem}
.feature-checks{padding:0;list-style:none;margin:0}
.feature-checks li{padding:.8rem 0 .8rem 1.5rem;border-bottom:1px solid var(--stone-2);position:relative;font-size:.9rem}
.feature-checks li::before{content:"✓";position:absolute;left:0;color:var(--brass)}
.feature-note{font-size:.76rem;color:var(--sage)}
.menu-note{padding:1.25rem 1.5rem;background:var(--mist);border-left:2px solid var(--brass);font-size:.9rem;margin:3rem auto 0;max-width:800px}
.contact-grid{display:grid;grid-template-columns:.75fr 1.2fr;gap:clamp(3rem,7vw,8rem)}
.contact-entry{border-bottom:1px solid var(--stone-2);padding:1.2rem 0;display:flex;flex-direction:column;gap:.3rem}
.contact-entry>span{text-transform:uppercase;color:var(--sage);letter-spacing:.16em;font-size:.7rem}
.contact-entry strong{font-family:var(--serif);font-weight:400;font-size:1.25rem;color:var(--ink);line-height:1.4}
.contact-details>.link-underline{margin:2rem 0}
.contact-transfer{padding:2rem 0;margin-top:1rem;border-top:1px solid var(--stone-2)}
.contact-transfer h3{font-size:1.6rem;margin-bottom:.7rem}
.form-shell{padding:clamp(1.8rem,3vw,3rem);background:var(--mist)}
.form-shell h3{font-size:2.5rem;margin:0 0 1.5rem}
.hotel-form {background:none;padding:0 !important;}
.hotel-form label{display:block;margin-bottom:.4rem}
.hotel-form .field>input,.hotel-form .field>textarea,.hotel-form .field>select {width:100%;}
.hotel-form .field{margin-bottom:1.1rem}
.hotel-form select{background:transparent;border:0;border-bottom:1px solid var(--stone);color:var(--ink);border-radius:0;padding:.75rem .2rem;min-height:48px}
.hidden-field{position:absolute !important;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
.thanks-main{min-height:85vh;padding-top:190px;display:flex;align-items:center;}
.thanks-main>div{width:min(720px,100%)}.thanks-main h1{margin:1rem 0 2rem}.thanks-main p{margin-bottom:2rem}
.floating-book{display:none}
.footer-brand .brand-mark{font-size:1.7rem}.footer-brand .brand-mark i{font-style:italic;font-weight:300}
.footer-book{display:inline-block;border-bottom:1px solid var(--brass);color:var(--chalk);font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;padding-bottom:.25rem}
@media(max-width:1300px){.nav-primary{gap:.85rem}.nav-primary .nav-link{font-size:.56rem}.site-header .brand-mark{font-size:1.2rem}}
@media(max-width:1100px){.nav-primary{display:none}.nav-toggle{display:inline-flex}.rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.site-header .header-inner{height:78px}}
@media(max-width:767px){
 .hero.hotel-hero{min-height:85svh}.hero.page-hero{min-height:76svh}.hero-title{font-size:clamp(2.8rem,11vw,5rem)!important}
 .hero-inner{padding-top:5rem}.hero-desc{font-size:.93rem}
 .hero-facts{display:none}
 .overview .stat-band{grid-template-columns:repeat(2,1fr)}
 .rooms-grid,.experience-grid,.feature-highlight,.location-banner,.highlight-row,.room-detail-grid,.contact-grid{grid-template-columns:1fr}
 .hotel-experiences .experience-card .img-frame{aspect-ratio:16/9}
 .hotel-cta{flex-direction:column;align-items:stretch}
 .hotel-cta-actions{min-width:0}.location-banner .img-frame{min-height:240px}
 .amenity-cards{margin-top:3.2rem}
 .floating-book{display:block;position:fixed;bottom:0;left:0;right:0;text-align:center;z-index:950;background:var(--brass);color:white;padding:.8rem 1rem;letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:600;box-shadow:0 -4px 25px rgba(0,0,0,.12)}
 body{padding-bottom:42px}
 .footer-bottom{padding-bottom:1rem}
 .header-cta{display:none}
}
@media(max-width:520px){ .hero-cta{align-items:stretch;flex-direction:column;gap:.7rem}.hero-cta a{justify-content:center}.rooms-grid{grid-template-columns:1fr}.room-card h3{font-size:1.65rem}.hotel-contact .section-title{font-size:2.5rem}.form-shell{padding:1.4rem} }

/* Simple, high-contrast guest enquiry form on a light surface. */
.hotel-form .field label{color:var(--slate);}
.hotel-form .field input,.hotel-form .field textarea,.hotel-form .field select{background:var(--white);color:var(--ink);border:1px solid var(--stone);font-family:var(--sans);font-size:.95rem;padding:.8rem .9rem;min-height:48px;}
.hotel-form .field textarea{min-height:135px;}
.hotel-form .field input[type="date"]{color-scheme:light;}
.hotel-form .field input:focus,.hotel-form .field textarea:focus,.hotel-form .field select:focus{outline:2px solid var(--brass);outline-offset:1px;border-color:var(--brass);background:var(--white);}
.hotel-form .field input::placeholder,.hotel-form .field textarea::placeholder{color:var(--sage);}
.hotel-form .btn-fill{background:var(--ink);color:var(--chalk);border-color:var(--ink);}
.hotel-form .btn-fill:hover{background:var(--brass);color:var(--white);border-color:var(--brass);}
