/* Comfortable reading sizes for a broad age range, in both Thai and English. */
:root{--muted:#55634e}
body{font-size:18px;line-height:1.85}
.eyebrow{font-size:13px;letter-spacing:1.2px}
.section-index{color:#6c715e}
h2 em,.experience-copy h2 em{color:#627153}
.button{font-size:16px;min-height:56px;padding:15px 25px}
.text-link{font-size:16px;min-height:46px}
#main-nav{font-size:16px;gap:26px}
.header-actions{gap:20px}
.header-book{font-size:15px;min-height:50px;padding:12px 20px}
.language-switch{font-size:14px;gap:5px}
.language-switch a{min-width:34px;min-height:46px;color:#626a59}
.brand>span{font-size:21px}
.brand small{font-size:10px;letter-spacing:2px}
.hero-kicker{font-size:14px;letter-spacing:1px;max-width:650px}
.hero-description,html[data-script=latin] .hero-description{font-size:18px;line-height:1.85;max-width:490px}
.hero-copy{max-width:830px}
.hero-edition{font-size:11px;letter-spacing:1.5px}
.hero-caption,.motion-toggle{font-size:13px}
.motion-toggle{min-height:44px}
.motion-icon{width:34px;height:34px}
.scroll-link{font-size:12px;letter-spacing:.5px;min-height:44px}
.hero-shade{background:linear-gradient(90deg,rgba(11,37,30,.75),rgba(11,37,30,.10) 80%),linear-gradient(0deg,rgba(13,35,29,.7),transparent 45%)}
.finder-intro .eyebrow{font-size:13px;color:#5c6652}
.finder-intro p{font-size:24px}
html[data-script=latin] .finder-intro p{font-size:30px}
.stay-finder label>span{font-size:13px;color:#5c6652;letter-spacing:.3px}
.stay-finder select{font-size:16px;min-height:42px;margin-top:3px}
.stay-finder .button{min-width:190px}
.section-intro{font-size:17px;color:#59664f;max-width:430px;line-height:1.9}
.stay-card h3{font-size:35px}
.stay-card h3 small{font-size:13px;letter-spacing:1.6px}
.stay-badge{font-size:13px;padding:8px 13px;letter-spacing:0}
.circle-button{width:46px;height:46px}
.stay-desc{font-size:17px;color:#59664f;line-height:1.85;min-height:92px}
.stay-meta{font-size:14px;color:#526048;gap:12px;line-height:1.8}
.stay-meta span+span:before{margin-right:12px}
.stay-details{font-size:16px;min-height:44px;color:#7c4e30;margin-top:10px}
.amenity-strip{font-size:15px;color:#526048;gap:38px}
.amenity-strip i{font-size:23px}
.filter-status{font-size:16px;gap:16px;align-items:flex-start}
.filter-status button{font-size:16px;flex-shrink:0;min-height:44px}
.empty-state{font-size:17px}
.experience-copy{padding-block:70px}
.experience-lead{font-size:17px;color:#526048;max-width:100%;line-height:1.9}
.experience-tabs{gap:25px}
.experience-tabs button{font-size:16px;min-height:50px;color:#526048}
#experience-panel{min-height:190px}
#experience-panel h3{font-size:20px;line-height:1.65}
#experience-panel p{font-size:17px;color:#526048;line-height:1.9}
.experience-photo-note,.experience-photo-note .eyebrow{font-size:12px;letter-spacing:.7px}
.story-copy>p:not(.eyebrow){font-size:17px;color:#59664f;line-height:1.95}
.handwritten{font-size:25px}
.story-tag>span{font-size:13px;letter-spacing:2px}
.faq-section>div>p:last-child{font-size:17px;color:#59664f}
.faq-list summary{font-size:17px;line-height:1.85;padding-block:22px}
.faq-list details p{font-size:17px;line-height:1.95;color:#59664f}
.contact-section p{font-size:17px;color:#e0e5d8;line-height:1.9}
.contact-section .eyebrow{color:#d2dac7}
.direct-contact{font-size:16px;color:#e0e5d8;gap:20px;flex-wrap:wrap}
.direct-contact a{min-height:44px;display:inline-flex;align-items:center}
.site-footer>p{font-size:16px;color:#59664f;line-height:1.9}
.footer-links,.footer-links button{font-size:15px}
.footer-links{gap:22px;flex-wrap:wrap}
.footer-links>*{min-height:44px;display:inline-flex;align-items:center}
.footer-bottom{font-size:13px;color:#59664f;gap:15px}
.footer-bottom a{width:44px;height:44px;display:grid;place-items:center}
.footer-brand span{font-size:12px}
.dialog-close{width:46px;height:46px}
.modal-body>p{font-size:17px;color:#59664f;line-height:1.9}
.room-row{font-size:17px;line-height:1.8;padding-block:18px}
.room-row small{font-size:15px;color:#59664f}
.room-row>span{font-size:15px;color:#765234}
.modal-note{font-size:14px!important;line-height:1.9}
.booking-content>p{font-size:17px;color:#59664f;line-height:1.9}
.privacy-copy p{font-size:17px;line-height:1.9;color:#59664f}
@media(min-width:651px){.stay-card-topline{min-height:76px;align-items:flex-start}.circle-button{margin-top:2px}}
@media(max-width:1100px){
  .site-header{height:86px}
  #main-nav{position:absolute;top:86px;left:0;right:0;background:var(--cream);display:none;flex-direction:column;align-items:stretch;padding:15px 30px 25px;border-bottom:1px solid var(--line);gap:0;font-size:17px}
  #main-nav.is-open{display:flex}#main-nav a{padding:13px 0}
  .menu-toggle{display:block;width:44px;height:44px}
  .section-heading{gap:40px}.section-intro{max-width:360px}
  .stay-finder form{gap:15px}.stay-finder label{padding-left:17px}.stay-finder .button{min-width:170px}
  .stay-badge{font-size:12px}.stay-meta{flex-wrap:wrap;gap:3px 12px;font-size:14px}
  .stay-card h3{font-size:31px}.stay-desc{min-height:125px}
  .amenity-strip{gap:22px;font-size:14px}
  .experience-copy{padding:55px 35px}.experience-tabs{gap:20px}.experience-tabs button{font-size:15px}
  .experience-photo-note{align-items:flex-start;flex-direction:column;gap:6px}
  .story-section{gap:50px;align-items:start}.story-image>img{height:600px}
  .footer-links{gap:16px;font-size:14px}.footer-links button{font-size:14px}
}
@media(max-width:800px) and (min-width:651px){
  .stay-grid{grid-template-columns:1fr 1fr}.stay-card:last-child{grid-column:1/-1;max-width:calc(50% - 9px)}
  .section-heading{display:block}.section-intro{max-width:100%;margin-top:24px}
  .experience-section{grid-template-columns:1fr}.experience-visual{min-height:450px;height:450px}
  .experience-copy{padding:45px}.experience-tabs{max-width:450px}#experience-panel{min-height:130px;max-width:650px}
  .story-section{gap:35px}.story-image{padding-right:20px}.story-image>img{height:580px}
  .stay-finder form{flex-wrap:wrap}.stay-finder .button{min-width:180px}
  .amenity-strip{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .faq-section{grid-template-columns:1fr;gap:25px}
}
@media(max-width:650px){
  body{font-size:17px}
  html{scroll-padding-top:100px}
  .site-header{height:84px;padding-inline:18px;gap:8px}
  .brand{gap:7px}.brand>span{font-size:16px;letter-spacing:.5px}.brand small{font-size:9px;letter-spacing:1.1px}.brand-icon{width:28px}
  .header-actions{gap:8px}.language-switch{gap:2px;font-size:14px}.language-switch a{min-width:30px;min-height:44px}
  .menu-toggle{width:38px;height:44px;padding:5px}#main-nav{top:84px;padding-inline:22px;font-size:18px}
  .button{font-size:16px;min-height:54px;padding-inline:22px}.text-link{font-size:16px;min-height:46px}
  .eyebrow{font-size:12px;letter-spacing:.7px}
  .hero{height:700px;max-height:none;min-height:650px}
  .hero-shade{background:linear-gradient(90deg,#0b251ec9,#0b251e70),linear-gradient(0deg,#0d231db3,transparent 55%)}
  .hero-copy{top:48%;transform:translateY(-37%)}
  .hero-kicker,html[data-script=latin] .hero-kicker{font-size:12px;letter-spacing:.4px;line-height:1.85;max-width:290px}
  .hero h1{font-size:clamp(31px,8.7vw,45px);line-height:1.6}
  .hero-description,html[data-script=latin] .hero-description{font-size:17px;line-height:1.9;max-width:330px;margin:20px 0 25px}
  .hero .button{font-size:16px;min-height:54px;min-width:230px}
  .hero-topline .eyebrow{font-size:11px;letter-spacing:1.4px}
  .hero-caption{font-size:12px;max-width:245px;line-height:1.8}.hero-bottom{bottom:21px}
  .hero-stamp{top:60px;width:82px;height:82px}
  .motion-icon{width:44px;height:44px}
  html[data-script=latin] .hero h1{font-size:clamp(45px,13vw,66px);line-height:1.08}
  .finder-intro .eyebrow{font-size:12px}.finder-intro p{font-size:24px;margin-top:8px}
  .stay-finder label>span{font-size:13px;line-height:1.8;letter-spacing:0}
  .stay-finder select{font-size:16px;min-height:46px}
  .stay-finder form{grid-template-columns:1.2fr 1fr;gap:18px 10px}
  .stay-finder .button{min-height:54px;font-size:16px}
  .section-intro{font-size:17px;max-width:100%;line-height:1.9}
  .stay-card h3{font-size:35px}.stay-card h3 small{font-size:13px;letter-spacing:1.5px}
  .stay-badge{font-size:13px;padding:8px 12px;max-width:calc(100% - 32px)}
  .stay-desc{font-size:17px;line-height:1.9;min-height:0;max-width:100%}
  .stay-meta{font-size:14px;gap:5px 12px;line-height:1.9;margin-top:18px}
  .stay-meta span+span:before{margin-right:12px}.stay-details{font-size:16px;min-height:44px;margin-top:10px}
  .circle-button{width:46px;height:46px}
  .amenity-strip{font-size:14px;gap:20px 10px}.amenity-strip>span{align-items:flex-start;gap:5px}.amenity-strip i{flex-shrink:0}
  .filter-status{font-size:15px;flex-wrap:wrap;gap:5px}.filter-status button{font-size:15px}
  .empty-state{padding:28px 22px;font-size:17px}
  .experience-copy{padding:45px 24px 50px}.experience-lead{font-size:17px;line-height:1.9}
  .experience-tabs{gap:24px;justify-content:flex-start}.experience-tabs button{font-size:16px;min-height:52px}
  #experience-panel{min-height:0;margin-bottom:15px;gap:15px}#experience-panel h3{font-size:20px}#experience-panel p{font-size:17px;line-height:1.9}
  .experience-photo-note{flex-direction:column;align-items:flex-start;gap:6px}.experience-photo-note .eyebrow,.experience-photo-note>span:last-child{font-size:11px}
  .story-section{gap:45px}.story-image>img{height:420px}.story-copy>p:not(.eyebrow){font-size:17px;line-height:1.95}
  .story-tag>span{font-size:12px}.handwritten{font-size:24px}
  .faq-section>div>p:last-child{font-size:17px}.faq-list summary{font-size:17px;line-height:1.85;padding-block:21px}.faq-list details p{font-size:17px;line-height:1.95}
  .contact-section p{font-size:17px;max-width:330px;line-height:1.9}.contact-actions .button{min-height:54px;max-width:340px;font-size:16px}
  .direct-contact{font-size:15px;gap:6px}.direct-contact a{min-height:40px;overflow-wrap:anywhere}
  .site-footer>p{font-size:16px}.footer-links,.footer-links button{font-size:15px}.footer-links{gap:8px 20px}
  .footer-brand{font-size:22px}.footer-brand span{font-size:11px;display:block;margin:8px 0 0;letter-spacing:2px}
  .footer-bottom{font-size:13px;gap:10px}
  .modal-body>p{font-size:17px;line-height:1.9}.modal-body h2{font-size:38px}
  .room-row{font-size:16px;grid-template-columns:1fr;gap:7px}.room-row small{font-size:15px}.room-row>span{font-size:15px}
  .modal-actions .button{font-size:16px;min-height:54px}.modal-note{font-size:14px!important}
  .booking-content h2{font-size:27px;line-height:1.65}.booking-content>p{font-size:17px;line-height:1.9}
  .booking-option span{font-size:26px}.booking-bottom .button{font-size:16px;min-height:54px}
  .privacy-copy p{font-size:17px;line-height:1.95}.dialog-close{width:46px;height:46px}
}
@media(max-width:360px){
  .brand>span{font-size:14px}.brand small{font-size:8px}.brand-icon{width:25px}.header-actions{gap:5px}.language-switch{font-size:13px}.language-switch a{min-width:27px}.site-header{padding-inline:14px}
  .hero-copy,.hero-topline,.hero-bottom{left:20px;right:20px}.hero h1{font-size:30px}.hero{height:730px}
  .hero-description,html[data-script=latin] .hero-description{font-size:17px}.hero-kicker{max-width:270px}
  .stay-finder form{grid-template-columns:1fr}.stay-finder label{padding-left:0;border-left:0}.stay-finder .button{grid-column:1}
  .stay-badge{font-size:12px}.experience-tabs{gap:20px}.experience-tabs button{font-size:15px}
}

/* The Ayutthaya collection — warm heritage colours, generous type and clear booking paths. */
:root{--cream:#f8f5ed;--paper:#fffdf8;--ink:#193b32;--rust:#a74b2d;--gold:#d9b77d;--line:#deded0}
body{background:var(--cream)}
.welcome-strip{background:#193b32;color:#f7f0dc;display:flex;justify-content:space-between;gap:20px;padding:9px 56px;font-size:13px;line-height:1.6}
.welcome-strip>a{border-bottom:1px solid #f7f0dc66;white-space:nowrap}
.site-header{height:100px;padding-inline:56px;box-shadow:0 3px 15px #193b3205}
.brand-icon{width:36px;stroke:#947b48}.brand>span{font-size:23px}.brand small{font-size:10px;letter-spacing:2.2px}
#main-nav{gap:32px;font-size:16px}.header-book{font-size:15px;padding-inline:23px;gap:20px;min-height:52px}
.button{border-radius:3px;font-size:16px;min-height:56px}.button-rust{background:var(--rust)}.button-rust:hover{background:#86391f}
.hero{height:800px;min-height:740px;max-height:none;background:#303f31;overflow:hidden}
.hero-image{object-position:50% 52%;filter:none}
.hero-shade{background:linear-gradient(90deg,#102b24b8 0%,#142c2270 46%,#172e1f12 90%),linear-gradient(0deg,#152b24d9 0%,transparent 60%)}
.hero-topline{left:56px;right:56px;top:32px}.hero-edition{font-size:12px;letter-spacing:2.5px}.hero-topline .eyebrow{font-size:12px;letter-spacing:2.2px}
.hero-copy{top:auto;bottom:146px;transform:none;left:max(56px,calc((100vw - 1320px)/2));max-width:820px}
.hero-kicker{font-size:14px;letter-spacing:1.7px;margin-bottom:20px}
.hero h1{font-size:clamp(43px,4.7vw,70px);line-height:1.45;letter-spacing:-1.4px;text-shadow:0 2px 25px #0d2d221f}
.hero h1 em{color:#e8c690}
html[data-script=latin] .hero h1{font-size:clamp(73px,7vw,106px);line-height:.98;letter-spacing:-3px}
.hero-description,html[data-script=latin] .hero-description{font-size:18px;max-width:550px;line-height:1.9;margin:24px 0 26px;color:#fffdf4}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-actions .button{gap:25px;background:#ba5a38;color:#fff;min-height:60px}
.hero-secondary{display:flex;gap:24px;align-items:center;min-height:48px;border-bottom:1px solid #ffffff70;font-size:16px}
.hero-secondary:hover{color:#e9c78e}.hero-reassurance{font-size:13px;color:#e8eadd;margin-top:18px}
.hero-postcard{position:absolute;right:max(56px,calc((100vw - 1320px)/2));bottom:143px;width:245px;background:#fffdf2;box-shadow:0 14px 45px #071b2330;color:var(--ink);padding:7px;transform:rotate(3deg);transition:transform .3s}
.hero-postcard:hover{transform:rotate(0) translateY(-4px)}.hero-postcard>img{width:100%;height:140px;object-fit:cover}.hero-postcard>div{position:relative;padding:17px 30px 15px 13px}.hero-postcard .eyebrow{font-size:10px;letter-spacing:.7px;display:block;color:#697451}.hero-postcard strong{font-family:var(--serif);font-weight:400;display:block;font-size:19px;line-height:1.55;margin-top:5px}html[data-script=latin] .hero-postcard strong{font-size:24px;line-height:1.05}.postcard-arrow{position:absolute;right:6px;bottom:17px;font-size:26px}
.hero-bottom{left:56px;right:56px;bottom:30px;padding-top:22px;border-top:1px solid #ffffff44;display:flex;align-items:center;gap:20px;justify-content:space-between}
.hero-views{display:flex;gap:22px}.hero-views button{display:flex;align-items:center;gap:9px;padding:8px 0;min-height:44px;color:#f7f5eea8;font-size:14px;border-bottom:2px solid transparent}.hero-views button[aria-pressed=true]{border-color:#e0c28c;color:#fff}.view-number{font-family:'Cormorant Garamond',serif;font-size:22px;color:#d4be91}.hero-caption{max-width:420px;text-align:center;font-size:12px;color:#f5f1df;line-height:1.7}.motion-toggle{font-size:12px;flex-shrink:0}.motion-icon{width:36px;height:36px}
.stay-finder{position:relative;background:#fffdf7;border:1px solid #e2dfd0;box-shadow:0 14px 40px #25362c07;padding:30px 34px;margin-top:30px;gap:32px}
.finder-intro{flex:0 0 28%}.finder-intro p{font-size:23px}.finder-intro .eyebrow{font-size:11px;letter-spacing:1.1px}.stay-finder label{padding-left:25px}.stay-finder label>span{font-size:13px;letter-spacing:0}.stay-finder select{font-size:16px;min-height:43px}.stay-finder .button{min-width:180px;gap:25px}.stay-finder form{gap:22px}
.stays-section{padding-top:95px;padding-bottom:66px}.section-heading{gap:70px;margin-bottom:45px}.section-intro{max-width:440px;font-size:18px;line-height:1.9}.section-heading .eyebrow{color:#8b6443;font-size:13px}h2{font-size:clamp(32px,3.4vw,49px);line-height:1.48}h2 em{color:#758266}html[data-script=latin] h2{font-size:clamp(46px,4.6vw,68px);line-height:1.04}
.stay-grid{gap:28px}.stay-card{background:#fffdf7;border:1px solid #e2dfd0;padding-bottom:22px;position:relative;display:flex;flex-direction:column}.stay-image-button{aspect-ratio:1.12}.stay-image-button img{filter:saturate(.92)}.stay-badge{bottom:16px;left:16px;background:#fffdf2eb;padding:7px 12px;font-size:12px}.stay-number{font-size:30px}.stay-card-topline,.stay-desc,.stay-meta,.card-actions,.card-room-teaser{margin-left:23px;margin-right:23px}.stay-card-topline{min-height:78px;margin-top:23px;align-items:flex-start}.stay-card h3{font-size:35px}.stay-card h3 small{font-size:11px;letter-spacing:2px}.circle-button{width:44px;height:44px}.stay-desc{font-size:17px;line-height:1.85;min-height:92px;margin-top:8px}.stay-meta{margin-top:auto;padding-top:18px;font-size:14px;line-height:1.75;display:flex;flex-wrap:wrap;gap:8px 12px;color:#55644c}.card-room-teaser{font-size:14px;color:#59664d;margin-top:12px}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.card-actions .button{font-size:15px;min-height:51px;padding:11px 10px;gap:12px}.button-border{border:1px solid #b4bda7;background:transparent;color:var(--ink)}.button-border:hover{background:#edf0e4}.collection-footnote{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:26px}.collection-footnote p{font-size:14px;color:#647255}.collection-footnote .text-link{font-size:16px;white-space:nowrap}.amenity-strip{margin-top:30px;padding-top:25px;font-size:16px;gap:45px}
.direct-band{border-top:1px solid #d9d9c9;border-bottom:1px solid #d9d9c9;padding:45px 0 50px;margin-bottom:85px}.direct-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:32px}.direct-intro .eyebrow{color:#8b6443;max-width:240px}.direct-intro h2{font-size:30px;line-height:1.5}html[data-script=latin] .direct-intro h2{font-size:42px}.direct-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.direct-reasons>div{position:relative;padding-left:45px}.reason-mark{position:absolute;left:0;top:0;font-family:'Cormorant Garamond',serif;font-size:29px;color:#ad8150}.direct-reasons h3{font-size:18px;font-weight:500;margin-bottom:10px}.direct-reasons p{font-size:16px;line-height:1.85;color:#59664f}
.experience-section{grid-template-columns:1.05fr 1fr;background:#213f34;color:#f8f3e5}.experience-copy{padding:75px 65px}.experience-copy>.eyebrow,.experience-copy .section-index{color:#d6bd8a}.experience-copy h2 em{color:#e3c48b}.experience-lead{color:#e2e5d8;font-size:18px;line-height:1.9}.experience-tabs{border-color:#d6dec044;gap:28px}.experience-tabs button{font-size:16px;color:#d4ddc6}.experience-tabs button[aria-selected=true]{color:#fff5dd}.experience-tabs button[aria-selected=true]:after{background:#d6ba82}#experience-panel h3{color:#fff5dd;font-size:21px}#experience-panel p{color:#e0e4d4;font-size:17px}.experience-number{color:#d0b27a}.experience-copy .text-link{color:#fff5dd;border-color:#b1bea3;font-size:16px}.experience-photo-note{font-size:12px}.experience-visual{min-height:740px}.experience-visual img{filter:saturate(.9)}
.story-section{padding-block:110px;gap:105px}.story-image{padding-right:45px}.story-image>img{height:620px;filter:saturate(.9)}.story-tag{background:#aa5031;width:180px;height:180px;bottom:45px;transform:rotate(-5deg)}.story-tag>span{font-size:13px}.story-tag em{font-size:33px}.story-copy{max-width:490px}.story-copy>p:not(.eyebrow){font-size:18px;line-height:1.95}.story-copy .eyebrow{color:#8b6443;font-size:13px}.handwritten{font-size:26px}.story-copy .text-link{font-size:16px}
.gallery-section{padding-bottom:95px}.gallery-section .section-heading{align-items:flex-end}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap;max-width:470px;justify-content:flex-end}.gallery-filters button{font-size:14px;padding:10px 15px;min-height:44px;border:1px solid #ced3bf;border-radius:2px}.gallery-filters button[aria-pressed=true]{background:#193b32;color:#fffdf2;border-color:#193b32}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-photo{position:relative;padding:0;overflow:hidden;aspect-ratio:1.28;text-align:left;background:#d1d3c4}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.gallery-photo:hover img{transform:scale(1.04)}.gallery-photo:after{position:absolute;inset:50% 0 0;content:'';background:linear-gradient(transparent,#0b241bc4)}.gallery-photo>span{position:absolute;z-index:1;bottom:20px;left:20px;right:20px;color:#fff;display:flex;justify-content:space-between;align-items:center;font-size:14px}.gallery-photo i{font-style:normal;font-size:25px}
.destination-note{padding:50px 0 60px;border-top:1px solid #d9d9c9;display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:center}.destination-note h2{font-size:32px;margin-top:17px;line-height:1.55}html[data-script=latin] .destination-note h2{font-size:47px}.destination-note p{font-size:18px;line-height:1.9;color:#59664f;margin:20px 0}.destination-note .eyebrow{color:#8b6443}.arrival-facts{display:grid;grid-template-columns:1fr 1fr;border:1px solid #d7dcc9;background:#eeeee2;padding:30px 20px}.arrival-facts>div{text-align:center;padding:8px}.arrival-facts>div+div{border-left:1px solid #cdd4bd}.arrival-facts span{display:block;font-size:14px;letter-spacing:1px}.arrival-facts strong{font-family:'Cormorant Garamond',serif;font-size:58px;font-weight:400;display:block;line-height:1.4}.arrival-facts small{font-size:14px;display:block;color:#5c6b51}
.faq-section{padding-top:50px;padding-bottom:95px;gap:80px}.faq-list summary,.faq-list details p{font-size:18px;line-height:1.85}.faq-section>div>p:last-child{font-size:17px}
.contact-section{background:#17372d}.contact-inner{padding:90px 0 60px}.contact-section h2{font-size:49px}.contact-section p{font-size:18px;max-width:670px;margin:auto}.contact-actions{gap:18px}.contact-actions .button{min-width:245px}.direct-contact{font-size:16px;color:#e0e5d3;gap:20px}.photo-credit{font-size:12px;grid-column:1/-1;color:#657354;line-height:1.8;margin-top:20px}.photo-credit a{text-decoration:underline}.footer-links{font-size:15px}.footer-links button{font-size:15px}.footer-bottom{margin-top:7px;color:#657354;font-size:13px}.site-footer>p{font-size:16px}.mobile-booking{display:none}
/* Room gallery and comparison keep the decision in the same page. */
.modal-gallery{display:block;height:auto;background:#e6e7dc;position:relative}.modal-main-image{width:100%;height:370px;object-fit:cover}.room-photo-buttons{position:absolute;left:24px;bottom:20px;display:flex;gap:8px}.room-photo-buttons button{width:72px;height:52px;padding:3px;background:#fff;border:2px solid transparent;box-shadow:0 3px 15px #0002}.room-photo-buttons button[aria-pressed=true]{border-color:#c18f48}.room-photo-buttons img{width:100%;height:100%;object-fit:cover}.modal-body{padding:35px 45px 40px}.modal-body>p{font-size:18px;line-height:1.9}.modal-body h2{font-size:49px}.room-row{font-size:17px;padding-block:17px}.room-row small,.room-row>span{font-size:15px}.modal-note{font-size:15px!important}.modal-actions{padding-top:10px}.modal-actions .button{font-size:16px}.compare-body{padding:55px 38px 35px}.compare-body>h2{font-size:34px;line-height:1.5}.compare-body>p{font-size:17px;color:#5c6b51;margin:15px 0 25px}.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.compare-grid article{background:#eceedf;padding:23px}.compare-grid h3{font-family:'Cormorant Garamond',serif;font-size:30px;line-height:1.2;margin-bottom:20px}.compare-grid dl{font-size:15px}.compare-grid dt{color:#647255;margin-top:17px}.compare-grid dd{margin:0;font-weight:500}.compare-grid .button{width:100%;font-size:15px;margin-top:18px;padding:12px 8px}.gallery-lightbox{padding:0;background:#142e25;color:#fff5de}.gallery-lightbox>img{width:100%;height:min(65svh,620px);object-fit:contain;background:#10271f}.gallery-lightbox-bar{padding:20px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px}.gallery-lightbox h2{font-size:26px;color:#fff5de}.gallery-lightbox p{font-size:14px;color:#c9d4be;margin-top:3px}.lightbox-controls{display:flex;gap:10px}.lightbox-controls button{width:48px;height:48px;border:1px solid #dce4d477;border-radius:50%;font-size:23px;color:#fff}.lightbox-controls button:hover{background:#ffffff22}.gallery-lightbox .text-link{color:#fff5de}.privacy-copy p,.booking-content>p{font-size:17px;line-height:1.9}
@media(min-width:1650px){.hero{height:850px}.hero-topline,.hero-bottom{left:calc((100vw - 1320px)/2);right:calc((100vw - 1320px)/2)}}
@media(max-width:1200px){.site-header{padding-inline:35px}#main-nav{gap:22px;font-size:15px}.brand>span{font-size:20px}.header-actions{gap:13px}.header-book{padding-inline:17px;font-size:14px}.welcome-strip{padding-inline:35px}.hero-postcard{width:215px;right:36px}.hero-postcard>img{height:130px}.hero-copy{left:36px;max-width:720px}.hero-topline,.hero-bottom{left:36px;right:36px}.hero-description{max-width:505px}.hero-caption{max-width:290px}.hero-views{gap:17px}.stay-finder{padding:26px}.finder-intro{flex-basis:25%}.finder-intro p{font-size:21px}.stay-finder label{padding-left:18px}.stay-finder .button{min-width:160px;padding-inline:18px}.stay-card-topline,.stay-desc,.stay-meta,.card-actions,.card-room-teaser{margin-inline:18px}.stay-card h3{font-size:31px}.stay-card-topline{min-height:74px}.card-actions .button{font-size:14px}.stay-desc{min-height:126px}.direct-reasons{gap:32px}.experience-copy{padding:65px 42px}.story-section{gap:65px}.story-image>img{height:600px}.gallery-filters{max-width:400px}.arrival-facts{padding:25px 12px}.amenity-strip{gap:25px;font-size:15px}}
@media(max-width:1100px){.site-header{height:86px}#main-nav{display:none;position:absolute;top:86px;padding:15px 30px 25px;left:0;right:0;background:var(--cream);flex-direction:column;align-items:stretch;font-size:18px;gap:0}#main-nav.is-open{display:flex}.menu-toggle{display:block;width:44px;height:44px}.hero{height:800px}.hero-postcard{bottom:150px;width:185px}.hero-postcard>img{height:120px}.hero-postcard strong{font-size:17px}.hero-copy{max-width:680px}.hero h1{font-size:51px}html[data-script=latin] .hero h1{font-size:84px}.hero-description,html[data-script=latin] .hero-description{max-width:510px}.hero-views button{font-size:13px}.motion-text{display:none}.hero-caption{max-width:300px}.section-heading{gap:40px}.section-intro{font-size:17px;max-width:370px}.stay-grid{gap:20px}.stay-card h3{font-size:29px}.stay-card .circle-button{display:none}.card-actions{grid-template-columns:1fr}.card-actions .button{font-size:16px}.stay-meta{font-size:14px}.direct-intro{align-items:flex-start}.direct-intro h2{font-size:27px}.direct-reasons{gap:25px}.direct-reasons>div{padding-left:0}.reason-mark{position:static;display:block;margin-bottom:12px}.amenity-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;font-size:14px}.experience-copy{padding:55px 35px}.story-section{gap:50px}.story-copy>p:not(.eyebrow){font-size:17px}.gallery-filters{max-width:350px;gap:7px}.gallery-filters button{font-size:13px;padding:9px 12px}.destination-note{gap:45px}.destination-note h2{font-size:30px}.destination-note p{font-size:17px}.arrival-facts strong{font-size:49px}.compare-grid{gap:13px}.compare-grid article{padding:18px}}
@media(max-width:900px){.hero-postcard{display:none}.hero-copy{max-width:90%;bottom:140px}.hero-description,html[data-script=latin] .hero-description{max-width:560px}.hero{height:780px}.hero-caption{display:none}.hero-views{gap:25px}.hero-views button{font-size:15px}.hero-bottom{bottom:25px}.stay-finder{margin-top:25px}.finder-intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.finder-intro p{font-size:24px}.stay-finder form{display:flex;gap:20px}.stay-finder label:first-child{border-left:0;padding-left:0}.section-heading{display:block}.section-intro{max-width:100%;margin-top:23px}.stay-grid{grid-template-columns:1fr 1fr}.stay-card:last-child{grid-column:auto;max-width:none}.stay-card h3{font-size:31px}.stay-desc{min-height:96px}.card-actions{grid-template-columns:1fr 1fr}.card-actions .button{font-size:14px}.direct-intro{display:block}.direct-intro .eyebrow{max-width:100%}.direct-intro h2{margin-top:20px}.direct-reasons{gap:30px}.experience-section{grid-template-columns:1fr}.experience-visual{min-height:470px;height:470px}.experience-copy{padding:60px 45px}.experience-copy h2{font-size:40px}.experience-lead{max-width:650px}#experience-panel{min-height:140px;max-width:650px}.story-section{grid-template-columns:1fr 1fr;gap:40px;align-items:start}.story-image>img{height:650px}.story-image{padding-right:25px}.story-tag{width:145px;height:145px}.story-tag em{font-size:27px}.gallery-filters{max-width:none;justify-content:flex-start;margin-top:28px}.gallery-filters button{font-size:14px}.photo-grid{grid-template-columns:1fr 1fr}.destination-note{grid-template-columns:1fr;gap:25px}.arrival-facts{max-width:530px}.faq-section{grid-template-columns:1fr;gap:30px}.site-footer{grid-template-columns:1fr}.footer-links{grid-column:1;grid-row:auto;justify-content:flex-start;margin-top:10px}.site-footer>p{grid-row:auto}.contact-section h2{font-size:42px}.contact-section p{max-width:620px}.compare-grid{grid-template-columns:1fr}.compare-grid article{display:grid;grid-template-columns:1fr 1.3fr;gap:10px 25px}.compare-grid dl{margin:0}.compare-grid h3{margin:0}.compare-grid .button{margin:10px 0 0;grid-column:1/-1}.compare-grid dt:first-child{margin-top:0}}
@media(max-width:650px){
  html{scroll-padding-top:99px}body{font-size:17px;padding-bottom:89px}.container{width:calc(100% - 40px)}
  .welcome-strip{padding:8px 18px;justify-content:center;font-size:11px;line-height:1.6}.welcome-strip>a{display:none}.site-header{height:82px;padding:0 18px;gap:9px}.brand>span{font-size:16px}.brand small{font-size:8px;letter-spacing:1.8px}.brand-icon{width:28px;height:38px}.brand{gap:8px}.header-actions{gap:6px}.header-book{display:none}.language-switch{font-size:14px;gap:1px}.language-switch a{min-width:30px;min-height:44px}.menu-toggle{width:38px;padding:5px}.menu-toggle span{margin:7px 0}#main-nav{top:82px;font-size:18px;padding:15px 22px 22px}
  .hero{height:780px;min-height:760px;max-height:none}.hero-image{object-position:52% 50%}.hero-shade{background:linear-gradient(90deg,#122d24a6,#122d246b),linear-gradient(0deg,#122d24e6,transparent 90%)}
  .hero-topline{left:24px;right:24px;top:23px}.hero-topline .eyebrow{font-size:11px;letter-spacing:1.5px}.hero-edition{display:none}
  .hero-copy{left:24px;right:24px;top:auto;bottom:138px;transform:none;max-width:none}.hero-kicker,html[data-script=latin] .hero-kicker{font-size:12px;letter-spacing:.7px;line-height:1.8;max-width:320px;margin-bottom:17px}.hero h1{font-size:clamp(31px,8.9vw,48px);line-height:1.6;letter-spacing:-1px}html[data-script=latin] .hero h1{font-size:clamp(51px,14.3vw,77px);line-height:1.02;letter-spacing:-1.8px}
  .hero-description,html[data-script=latin] .hero-description{font-size:17px;line-height:1.9;max-width:100%;margin:22px 0 25px}.hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px}.hero-actions .button{font-size:16px;min-height:58px;justify-content:space-between;padding-inline:22px}.hero-secondary{justify-content:center;border-bottom:0;font-size:16px;min-height:44px;gap:20px}.hero-reassurance{font-size:12px;line-height:1.8;margin-top:12px;max-width:300px}
  .hero-bottom{left:24px;right:24px;bottom:20px;padding-top:14px;gap:12px}.hero-views{gap:15px;flex:1;justify-content:space-between}.hero-views button{font-size:12px;gap:6px;padding:6px 0;white-space:nowrap}.view-number{font-size:19px}.motion-toggle{margin-left:5px;min-height:44px}.motion-icon{width:36px;height:36px}.hero-caption{display:none}
  .stay-finder{padding:25px 22px;margin-top:24px;gap:0}.finder-intro{display:block;margin-bottom:20px}.finder-intro p{font-size:24px;margin-top:7px}.finder-intro .eyebrow{font-size:12px}.stay-finder form{display:grid;grid-template-columns:1.2fr 1fr;gap:16px 10px}.stay-finder label{padding-left:12px}.stay-finder label>span{font-size:12px}.stay-finder select{font-size:16px;min-height:44px;padding-right:10px}.stay-finder .button{grid-column:1/-1;min-height:54px;font-size:16px;justify-content:space-between}.stay-finder label:first-child{padding:0}
  .stays-section{padding-block:65px 45px}.section-heading{margin-bottom:28px}.section-heading .eyebrow{font-size:12px}.section-intro{font-size:17px;line-height:1.95;margin-top:23px}h2{font-size:31px;line-height:1.55;letter-spacing:-.6px}html[data-script=latin] h2{font-size:47px;line-height:1.05}.section-heading .eyebrow,.story-copy .eyebrow,.experience-copy>.eyebrow{margin-bottom:19px}
  .stay-grid{grid-template-columns:1fr;gap:25px}.stay-card{padding-bottom:22px}.stay-image-button{aspect-ratio:1.15}.stay-card h3{font-size:35px}.stay-card-topline{min-height:0;margin-top:23px}.stay-card h3 small{margin-top:7px;font-size:11px}.stay-card .circle-button{display:grid}.stay-card-topline,.stay-desc,.stay-meta,.card-actions,.card-room-teaser{margin-inline:20px}.stay-badge{font-size:12px;left:14px;bottom:14px;padding:7px 11px;max-width:calc(100% - 28px)}.stay-desc{font-size:17px;min-height:0;line-height:1.9;margin-top:17px;margin-bottom:0}.stay-meta{margin-top:20px;font-size:14px;gap:8px 12px}.card-room-teaser{font-size:14px;margin-top:10px}.card-actions{grid-template-columns:1fr 1fr;margin-top:20px;gap:10px}.card-actions .button{font-size:15px;min-height:52px;gap:8px;padding:12px 8px}.collection-footnote{display:block;margin-top:22px}.collection-footnote p{font-size:14px;line-height:1.8}.collection-footnote .text-link{font-size:16px;margin-top:15px}.amenity-strip{grid-template-columns:1fr 1fr;gap:16px 15px;font-size:14px;margin-top:25px;padding-top:23px}.amenity-strip>span{align-items:flex-start;gap:5px}.amenity-strip i{font-size:23px}
  .direct-band{padding:37px 0 42px;margin-bottom:55px}.direct-intro{margin-bottom:28px}.direct-intro .eyebrow{font-size:12px}.direct-intro h2{font-size:28px;line-height:1.6;margin-top:15px}html[data-script=latin] .direct-intro h2{font-size:39px}.direct-reasons{grid-template-columns:1fr;gap:27px}.direct-reasons>div{padding-left:40px}.reason-mark{position:absolute;left:0;top:0;font-size:27px}.direct-reasons h3{font-size:18px;margin-bottom:7px}.direct-reasons p{font-size:17px;line-height:1.85}
  .experience-visual{height:390px;min-height:390px}.experience-copy{padding:47px 24px 52px}.experience-copy h2{font-size:34px}.experience-lead{font-size:17px;line-height:1.95}.experience-tabs{gap:26px;margin-top:22px}.experience-tabs button{font-size:16px;min-height:52px}#experience-panel{margin-top:25px;min-height:0;gap:16px}#experience-panel h3{font-size:21px;line-height:1.6}#experience-panel p{font-size:17px;line-height:1.95}.experience-copy .text-link{font-size:16px;margin-top:25px}.experience-photo-note{left:24px;right:24px;bottom:24px;font-size:12px;flex-direction:column;align-items:flex-start;gap:5px}.experience-photo-note .eyebrow{font-size:11px}
  .story-section{grid-template-columns:1fr;gap:43px;padding-block:65px}.story-image{padding-right:25px}.story-image>img{height:420px}.story-tag{width:145px;height:145px;bottom:30px}.story-tag>span{font-size:12px}.story-copy>p:not(.eyebrow){font-size:17px;line-height:1.95}.story-copy .eyebrow{font-size:12px}.handwritten{font-size:25px}
  .gallery-section{padding-bottom:65px}.gallery-filters{gap:7px;margin-top:24px}.gallery-filters button{font-size:13px;padding:9px 11px;min-height:44px}.photo-grid{gap:10px;grid-template-columns:1fr 1fr}.gallery-photo{aspect-ratio:.88}.gallery-photo>span{left:12px;right:12px;bottom:13px;align-items:flex-end;font-size:12px;line-height:1.6;gap:10px}.gallery-photo i{font-size:22px}.gallery-photo:first-child{grid-column:1/-1;aspect-ratio:1.3}
  .destination-note{padding-top:40px;padding-bottom:50px;gap:24px}.destination-note .eyebrow{font-size:12px}.destination-note h2{font-size:28px;line-height:1.6;margin-top:15px}html[data-script=latin] .destination-note h2{font-size:41px}.destination-note p{font-size:17px;line-height:1.95}.destination-note .text-link{font-size:16px;gap:15px}.arrival-facts{width:100%;padding:22px 10px}.arrival-facts strong{font-size:50px}.arrival-facts span{font-size:13px}.arrival-facts small{font-size:13px;line-height:1.7}
  .faq-section{padding-top:40px;padding-bottom:60px;gap:24px}.faq-section h2{font-size:30px}.faq-list summary,.faq-list details p{font-size:17px;line-height:1.9}.faq-list summary{padding:20px 30px 20px 0}.faq-section>div>p:last-child{font-size:17px}
  .contact-inner{padding:60px 0 45px}.contact-section h2{font-size:33px;line-height:1.5}html[data-script=latin] .contact-section h2{font-size:52px;line-height:1.05}.contact-section p{font-size:17px;line-height:1.9;max-width:100%}.contact-actions{gap:13px;margin:27px 0}.contact-actions .button{font-size:16px;width:100%;max-width:350px;min-height:56px;justify-content:space-between}.direct-contact{font-size:15px;gap:7px;flex-direction:column}.direct-contact a{min-height:38px}.site-footer{display:block;padding-top:37px}.footer-brand{font-size:23px}.footer-brand span{display:block;margin:8px 0 0;font-size:10px;letter-spacing:2px}.site-footer>p{font-size:16px;line-height:1.9;margin-top:18px}.footer-links{justify-content:flex-start;gap:6px 20px;font-size:15px;margin-top:20px}.footer-links button{font-size:15px}.photo-credit{margin-top:25px;font-size:12px;line-height:1.9}.footer-bottom{font-size:12px;padding:18px 0 20px;margin-top:20px}.footer-bottom>span:nth-child(2){display:none}
  .mobile-booking{display:flex;position:fixed;z-index:35;bottom:0;left:0;right:0;background:#fffdf6;border-top:1px solid #d9ddcf;box-shadow:0 -7px 28px #193b3210;padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:12px;align-items:center}.mobile-booking .button{min-height:54px;flex:1;font-size:16px;padding:12px 17px;gap:15px;justify-content:space-between}.mobile-contact{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;min-height:54px;min-width:72px;line-height:1.3}.chat-symbol{font-family:Georgia,serif;font-size:27px;line-height:1.1;color:#315c45}.dialog-open .mobile-booking{visibility:hidden}
  dialog{width:calc(100vw - 24px);max-height:92svh}.dialog-close{width:46px;height:46px;top:12px;right:12px}.modal-main-image{height:280px!important}.room-photo-buttons{left:15px;bottom:15px}.room-photo-buttons button{width:61px;height:45px}.modal-body{padding:28px 23px}.modal-body h2{font-size:38px}.modal-body>p{font-size:17px;line-height:1.95}.room-row{font-size:16px;grid-template-columns:1fr;gap:7px}.room-row small,.room-row>span{font-size:15px}.modal-actions .button{font-size:16px}.modal-note{font-size:14px!important}.compare-body{padding:52px 23px 25px}.compare-body>h2{font-size:28px;line-height:1.6}.compare-body>p{font-size:17px}.compare-grid{gap:16px}.compare-grid article{display:block;padding:23px}.compare-grid h3{font-size:31px;margin-bottom:18px}.compare-grid dl{font-size:16px}.compare-grid .button{font-size:16px;margin-top:20px}.gallery-lightbox>img{height:55svh}.gallery-lightbox-bar{padding:20px;flex-wrap:wrap;gap:20px}.gallery-lightbox h2{font-size:25px}.gallery-lightbox p{font-size:14px}.lightbox-controls button{width:46px;height:46px}.gallery-lightbox .text-link{font-size:16px}.privacy-copy p{font-size:17px;line-height:1.95}
}
@media(max-width:360px){.site-header{padding-inline:12px}.brand>span{font-size:14px}.brand small{font-size:7px}.brand-icon{width:25px}.language-switch{font-size:13px}.language-switch a{min-width:28px}.hero{height:840px}.hero-copy{left:20px;right:20px;bottom:145px}.hero h1{font-size:30px}html[data-script=latin] .hero h1{font-size:49px}.hero-topline,.hero-bottom{left:20px;right:20px}.hero-kicker{max-width:280px}.hero-views{gap:9px}.hero-views button{font-size:11px;gap:4px}.motion-toggle{margin-left:0}.stay-finder{padding:23px 18px}.stay-finder form{grid-template-columns:1fr}.stay-finder label{border:0;padding:0}.stay-finder .button{grid-column:auto}.card-actions{grid-template-columns:1fr}.card-actions .button{font-size:16px}.amenity-strip{grid-template-columns:1fr}.mobile-booking{padding-inline:10px;gap:7px}.mobile-booking .button{font-size:15px;padding-inline:13px}.mobile-contact{min-width:66px}.direct-contact{font-size:14px}}
@media(prefers-reduced-motion:reduce){.hero-postcard{transform:none}.hero-postcard:hover{transform:none}}

.language-switch a{display:inline-flex;align-items:center;justify-content:center}.language-switch a[aria-current=page]{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:7px}.modal-gallery>.modal-main-image{height:370px}

/* Language selection uses names, rather than flags: languages cross borders. */
.language-menu{position:relative;flex-shrink:0;font-family:'Noto Sans Thai',Arial,sans-serif;line-height:1.5}
.language-menu summary{list-style:none;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;padding:9px 6px;color:var(--ink);font-size:15px;font-weight:600;white-space:nowrap;border-radius:3px}
.language-menu summary::-webkit-details-marker{display:none}.language-menu summary:hover{background:#e9ede2}.language-menu summary:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.language-menu[open] summary{background:#e9ede2}
.language-panel{position:absolute;z-index:90;top:calc(100% + 20px);right:0;width:min(620px,calc(100vw - 48px));padding:28px;background:#fffdf8;border:1px solid #d8ddce;box-shadow:0 18px 70px #173b3233;border-radius:6px;color:var(--ink)}
.language-panel-heading{display:flex;align-items:flex-start;gap:20px;justify-content:space-between;margin-bottom:22px}
.language-panel h2,html[data-script=latin] .language-panel h2{font:500 23px/1.5 'Noto Sans Thai',Arial,sans-serif;letter-spacing:0;margin:0}
.language-panel p{font-size:15px;color:#536559;margin:8px 0 0;line-height:1.7;max-width:480px}
.language-panel-heading>button{font-size:28px;line-height:1;width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}
.language-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.language-options a{position:relative;display:flex;flex-direction:column;padding:13px 30px 13px 14px;min-height:78px;border:1px solid #dfe3d8;border-radius:3px;background:#fffdf8;gap:5px;font-size:16px;line-height:1.5;text-decoration:none}
.language-options a:hover{background:#f0f2e9;border-color:#557263}.language-options a[aria-current=page]{background:#e8eedf;border-color:#355a48}.language-options small{font-size:12px;color:#5c6e62}.language-options i{position:absolute;right:12px;top:15px;font-style:normal;color:#315c45}
.contact-section .booking-language-note{font-size:14px;line-height:1.8;max-width:750px;margin:0 auto 20px;color:#e0e5d8}
html[data-script=latin]:not([lang=en]) .hero h1{font-size:clamp(58px,6.1vw,88px);line-height:1.1;letter-spacing:-1.6px}
html[data-script=latin]:not([lang=en]) .hero-copy{max-width:800px}
html[data-script=cjk] body{font-family:system-ui,'PingFang SC','Hiragino Sans','Microsoft YaHei',sans-serif;line-height:1.9}
html[data-script=cjk] .hero h1,html[data-script=cjk] h2{font-family:'Songti SC','Yu Mincho','Noto Serif CJK JP',serif;line-height:1.4;letter-spacing:0;font-weight:400}
html[data-script=cjk] .hero h1{font-size:57px;line-height:1.45;max-width:800px}
html[data-script=cjk] h2{font-size:43px}html[data-script=cjk] .hero-copy{max-width:850px}
html[data-script=cjk] .hero-kicker{letter-spacing:1px;font-size:15px}
html[data-script=cjk] .hero-description{font-size:18px;line-height:2;max-width:650px}
html[data-script=cjk] .stay-desc{line-height:1.95}
html[lang=ru] h1,html[lang=ru] h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}
html[lang=ru] .hero h1{font-size:68px;line-height:1.2}
.stay-card,.card-actions>*{min-width:0}.card-actions .button{white-space:normal;text-align:center;line-height:1.55;overflow-wrap:anywhere}
@media(min-width:1101px) and (max-width:1350px){#main-nav{gap:18px;font-size:15px}.site-header{padding-inline:30px}.header-actions{gap:12px}.header-book{max-width:230px;font-size:15px;padding-inline:16px}.brand>span{font-size:19px}}
@media(max-width:1100px){html[data-script=latin]:not([lang=en]) .hero h1{font-size:70px}html[lang=ru] .hero h1{font-size:59px}html[data-script=cjk] .hero h1{font-size:51px}.language-panel{right:0}}
@media(max-width:650px){
  .header-actions{gap:7px}.language-menu summary{font-size:14px;gap:5px;padding:8px 3px;min-height:46px}.language-menu summary svg{width:18px;height:18px}
  .language-panel{position:fixed;top:100px;left:12px;right:12px;width:auto;max-height:calc(100svh - 120px);overflow:auto;padding:22px 18px;border-radius:5px}
  .language-panel-heading{gap:10px;margin-bottom:18px}.language-panel h2,html[data-script=latin] .language-panel h2{font-size:21px}.language-panel p{font-size:14px;line-height:1.7}.language-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.language-options a{font-size:16px;padding:12px 27px 12px 12px;min-height:76px}.language-options small{font-size:12px}
  html[data-script=latin]:not([lang=en]) .hero h1{font-size:46px;line-height:1.12;letter-spacing:-1px}
  html[data-script=latin]:not([lang=en]) .hero{height:880px}
  html[lang=ru] .hero h1{font-size:39px;line-height:1.25}
  html[data-script=cjk] .hero h1{font-size:36px;line-height:1.65;letter-spacing:0}
  html[data-script=cjk] .hero-description{font-size:17px;line-height:2}
  html[data-script=cjk] h2{font-size:29px;line-height:1.6}
  .hero-actions .button{white-space:normal;line-height:1.6;text-align:left;gap:12px}.hero-actions .button>span:first-child{flex:1}
  .hero-views{flex-wrap:wrap;gap:6px 16px}.hero-views button{min-height:44px;font-size:12px}.hero-bottom{align-items:flex-end}.hero-views{max-width:calc(100% - 46px)}
  .mobile-booking .button{white-space:normal;line-height:1.6;font-size:15px}.mobile-booking .button>span:first-child{flex:1}.mobile-contact{min-width:66px;max-width:78px;font-size:12px;line-height:1.5}
  .stay-finder label>span{letter-spacing:0;font-size:13px;line-height:1.7}.finder-intro .eyebrow{letter-spacing:0}
  .contact-section .booking-language-note{font-size:14px;line-height:1.9;margin-bottom:22px}
}
@media(max-width:360px){.brand>span{font-size:13px}.brand small{font-size:6px}.brand-icon{width:23px}.header-actions{gap:4px}.language-menu summary{font-size:12px;gap:4px}.language-menu summary svg{width:15px}.menu-toggle{width:38px}.language-panel{top:90px;padding:20px 14px}.language-panel h2,html[data-script=latin] .language-panel h2{font-size:19px}.hero-bottom{left:20px;right:20px}html[data-script=latin]:not([lang=en]) .hero h1{font-size:39px}html[lang=ru] .hero h1{font-size:33px}html[data-script=cjk] .hero h1{font-size:30px}.hero-actions .button{font-size:15px}.hero-views{gap:4px 12px}.hero-views button{font-size:11px}}

/* Shared vector arrow: fixed geometry across fonts, languages and devices. */
.icon-arrow{display:inline-block;width:20px;height:20px;flex:0 0 20px;vertical-align:-.2em;pointer-events:none}

/* Fixed icon columns keep amenity labels aligned, including wrapped translations. */
.amenity-strip>span{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;column-gap:10px;min-width:0}
.amenity-strip>span>span{min-width:0;line-height:1.6}
.amenity-icon{display:block;width:24px;height:24px;color:#7e8b6d}
@media(min-width:1101px){.amenity-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}}
