/* cyrillic-ext */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/assets/fonts/merriweather-400-cyrillic-ext.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/assets/fonts/merriweather-400-cyrillic.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/assets/fonts/merriweather-400-vietnamese.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/assets/fonts/merriweather-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Merriweather';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/assets/fonts/merriweather-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Separate comparison theme, adapted from the user-provided Lang Co source. */
.retreat-template{--retreat-navy:#0d2137;--retreat-ocean:#1b4965;--retreat-gold:#c9a96e;--retreat-ivory:#faf6f0;--ink:#0d2137;--blue:#1b4965;--gold:#c9a96e;--sand:#faf6f0;--muted:#606b75;--line:#e5e2dc;--radius:8px;background:var(--retreat-ivory);color:#2c2c2c;font-size:16px;line-height:1.75}
.retreat-template h1,.retreat-template h2,.retreat-template h3{font-family:"Merriweather",Georgia,"Times New Roman","AppleMyungjo","Batang","Songti SC","PMingLiU",serif;font-weight:400;letter-spacing:-.025em;line-height:1.18;color:var(--retreat-navy)}
.retreat-template .eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.17em;color:#7b6035;text-transform:uppercase;line-height:1.6}
.retreat-template .container{width:min(calc(100% - 64px),1280px)}
.retreat-template.home-page main.container{width:100%;max-width:none}
.retreat-template .button{border-radius:5px;padding:14px 28px;min-height:50px;font-size:.875rem;letter-spacing:.025em;line-height:1.5;font-weight:600}
.retreat-template .primary{background:var(--retreat-gold);color:var(--retreat-navy)}
.retreat-template .primary:hover{background:#ddc291;color:var(--retreat-navy)}
.retreat-template .primary:disabled{background:#dad4c8;color:#535b61}
.retreat-template .secondary{border-color:var(--retreat-ocean);color:var(--retreat-ocean);background:transparent}
.retreat-template .secondary:hover{background:var(--retreat-ocean);color:#fff}
.retreat-template .text-link{color:#74572b;font-size:.8125rem;font-weight:600;letter-spacing:.03em}
.retreat-template .brand-logo{width:104px;position:relative;padding:0;background:none;border:0;transition:width .25s ease}
.retreat-template .brand-logo img{width:100%;height:auto}
.retreat-template .brand-normal{display:block}
.retreat-template .brand-reverse{display:none}
.retreat-template .site-header{background:#fff;border-bottom:1px solid var(--line);box-shadow:none}
.retreat-template .header-inner{min-height:108px;padding-block:12px;gap:28px}
.retreat-template .desktop-nav{gap:26px}
.retreat-template .desktop-nav>a{color:var(--retreat-navy);font-size:.8125rem;font-weight:500;letter-spacing:.015em}
.retreat-template .header-tools{gap:22px;color:var(--retreat-navy)}
.retreat-template .header-book{background:var(--retreat-gold);color:var(--retreat-navy);padding:12px 23px;min-height:46px;font-size:.8125rem}
.retreat-template.home-page .site-header{position:fixed;inset:0 0 auto;background:linear-gradient(180deg,#0d213780,transparent);border-bottom:1px solid #ffffff20;transition:background .25s,box-shadow .25s}
.retreat-template.home-page .header-inner{min-height:144px}
.retreat-template.home-page .brand-normal{display:none}
.retreat-template.home-page .brand-reverse{display:block}
.retreat-template.home-page .desktop-nav>a,.retreat-template.home-page .header-tools{color:#fff}
.retreat-template.home-page .site-header.is-scrolled{background:#fffffff5;box-shadow:0 2px 20px #0d213710;border-bottom-color:var(--line);backdrop-filter:blur(12px)}
.retreat-template.home-page .is-scrolled .header-inner{min-height:88px;padding-block:10px}
.retreat-template.home-page .is-scrolled .brand-logo{width:70px}
.retreat-template.home-page .is-scrolled .brand-normal{display:block}
.retreat-template.home-page .is-scrolled .brand-reverse{display:none}
.retreat-template.home-page .is-scrolled .desktop-nav>a,.retreat-template.home-page .is-scrolled .header-tools{color:var(--retreat-navy)}
.retreat-template .language-picker nav,.retreat-template .mobile-menu nav{border-radius:8px;box-shadow:0 10px 40px #0d213719}
.retreat-template .retreat-hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:100svh;text-align:center;background:var(--retreat-navy);color:white;isolation:isolate}
.retreat-hero-photo{position:absolute;inset:0;z-index:-2}
.retreat-hero-photo img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 48%}
.retreat-hero-photo figcaption{bottom:22px;font-size:.68rem;right:24px;background:#0d2137a8}
.retreat-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0d21374d 0%,#0d213773 48%,#0d2137b3 100%)}
.retreat-template .retreat-hero-content{padding-block:200px 160px;max-width:1000px}
.retreat-hero-content .eyebrow{color:#e0cfa8;letter-spacing:.22em;margin-bottom:24px}
.retreat-template .retreat-hero h1{font-size:clamp(3.1rem,5.7vw,5.25rem);color:white;max-width:950px;margin-inline:auto;line-height:1.13;letter-spacing:-.035em;text-shadow:0 2px 20px #0d21372e}
.retreat-hero-intro{font-size:1.0625rem;max-width:650px;margin:28px auto 0;line-height:1.8;color:#fffffff0}
.retreat-actions{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin-top:32px}
.retreat-template .retreat-outline{color:white;background:transparent;border-color:#ffffffb3}
.retreat-template .retreat-outline:hover{background:#fff;color:var(--retreat-navy)}
.retreat-scroll{position:absolute;bottom:65px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;color:#fff;font-size:.75rem;letter-spacing:.09em;min-height:44px}
.retreat-scroll:hover{color:#e0cfa8;text-decoration:none}.retreat-scroll>span:last-child{font-size:1.65rem;font-weight:300}
.retreat-template .retreat-stay-strip{position:relative;z-index:4;width:min(calc(100% - 64px),1000px);margin:-32px auto 0;padding:24px 30px;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:24px;background:#fff;border-radius:12px;box-shadow:0 8px 28px #0d213712}
.retreat-stay-strip>div{display:flex;flex-direction:column;border-right:1px solid var(--line);padding-right:18px;gap:2px}
.retreat-stay-strip strong{font-family:"Merriweather",Georgia,"Times New Roman",serif;font-weight:400;font-size:1.75rem;line-height:1.3;color:var(--retreat-navy)}
.retreat-stay-strip span{font-size:.75rem;color:var(--muted)}
.retreat-template .retreat-stay-strip .button{max-width:260px}
.retreat-section{padding-block:96px}
.retreat-template .retreat-narrow{max-width:820px;text-align:center}
.retreat-template .retreat-narrow .intro-copy{margin:24px auto;max-width:760px;font-size:1.0625rem;line-height:1.9}
.retreat-template .retreat-section h2{font-size:clamp(2rem,3.4vw,3rem)}
.retreat-template .retreat-welcome{background:#fff;padding-top:86px;padding-bottom:90px}
.retreat-welcome .eyebrow{margin-bottom:18px}
.retreat-section-heading{max-width:800px;margin:0 auto 48px;text-align:center}
.retreat-section-heading .eyebrow{margin-bottom:16px}
.retreat-section-heading>p:last-child:not(.eyebrow){margin:20px auto 0;max-width:690px;font-size:1rem;color:var(--muted)}
.retreat-template .rooms-grid{gap:30px;margin-top:0}
.retreat-template .room-card{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #1b49650f;background:#fff;transition:box-shadow .25s,transform .25s}
.retreat-template .room-card:hover{box-shadow:0 8px 30px #1b49651f;transform:translateY(-3px)}
.retreat-template .room-card:focus-within{outline:3px solid var(--retreat-ocean);outline-offset:4px}
.retreat-template .room-card>.hotel-photo{aspect-ratio:1.6}
.retreat-template .room-card .hotel-photo img{aspect-ratio:1.6;height:100%}
.retreat-template .card-copy{padding:27px 28px 30px;border:0}
.retreat-template .card-copy .eyebrow{font-size:.6875rem;margin-bottom:10px}
.retreat-template .card-copy h3{font-size:1.65rem}
.retreat-template .card-spec{font-size:.8125rem;padding-bottom:12px;border-bottom:1px solid var(--line);width:100%}
.retreat-template .bed-summary{font-size:.8125rem;margin-top:12px!important}
.retreat-template .card-copy>.text-link{margin-top:18px;border-bottom:0;font-size:.75rem;letter-spacing:.045em;text-transform:uppercase}
.retreat-template .card-copy>.text-link:after{content:"";position:absolute;inset:0;border:0}
.retreat-section-action{text-align:center;margin-top:42px}
.retreat-feature{background:var(--retreat-navy);color:#fff}
.retreat-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:72px}
.retreat-split>div{min-width:0}.retreat-split .eyebrow{color:#e0cfa8;margin-bottom:18px}
.retreat-template .retreat-feature h2{color:#fff}
.retreat-template .retreat-feature .intro-copy{color:#ffffffcf;margin:24px 0 32px}
.retreat-feature-photo{border-radius:12px;overflow:hidden}.retreat-feature-photo img{aspect-ratio:1.25}
.retreat-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.retreat-gallery .hotel-photo{border-radius:10px}.retreat-gallery .hotel-photo img{aspect-ratio:1.15}
.retreat-contact{background:#fff;padding-top:80px;padding-bottom:90px}
.retreat-template .site-footer{position:relative;background:var(--retreat-navy);margin-top:72px;padding-top:48px;color:#fff}
.retreat-footer-wave{position:absolute;top:-71px;left:0;width:100%;height:72px;line-height:0;pointer-events:none;color:var(--retreat-navy)}
.retreat-footer-wave svg{display:block;width:100%;height:100%}
.retreat-template .footer-grid{grid-template-columns:1.25fr 1.2fr 1fr;gap:70px}
.retreat-template .footer-grid h2{font-family:inherit;color:#fff;font-size:.9375rem;font-weight:600}
.retreat-template .footer-grid address{font-size:.875rem;margin-top:24px;line-height:1.85}
.retreat-template .footer-grid>div>a:not(.brand-logo){font-size:.875rem;color:#ffffffb8;min-height:38px;padding-block:6px}
.retreat-template .footer-grid>div>a:not(.brand-logo):hover{color:#e0cfa8}
.retreat-template .footer-note{font-size:.75rem;line-height:1.85;margin-top:50px;border-top-color:#ffffff1a}
.retreat-template.inner-page main{padding-bottom:0}
.retreat-template .page-intro h1{font-size:clamp(2.5rem,4.8vw,4rem);font-weight:400}
.retreat-template .page-intro{padding-block:52px 42px}
.retreat-template .rooms-lead{gap:64px;padding-block:35px 55px}
.retreat-template .hub-photo,.retreat-template .detail-photo{border-radius:12px;overflow:hidden}
.retreat-template .filter-bar{margin-bottom:14px}.retreat-template .filter-note{margin-bottom:28px}
.retreat-template .filter-button{border-radius:6px}.retreat-template .filter-button[aria-pressed=true]{background:var(--retreat-ocean);border-color:var(--retreat-ocean)}
.retreat-template .booking-panel,.retreat-template .support-panel{border-radius:12px;background:#fff;box-shadow:0 2px 12px #1b49650d}
.retreat-template .booking-panel{border-color:var(--line);border-top:3px solid var(--retreat-gold)}
.retreat-template .booking-panel h2,.retreat-template .support-panel h2{font-family:"Merriweather",Georgia,"Times New Roman","AppleMyungjo","Batang","Songti SC","PMingLiU",serif;font-weight:400}
.retreat-template .section{margin-top:80px}
.retreat-template .mobile-book{background:var(--retreat-gold);color:var(--retreat-navy);border:0;border-radius:8px;box-shadow:0 4px 22px #0d213724;min-height:49px;font-size:.875rem}
.retreat-template :focus-visible{outline-color:var(--retreat-ocean)}
.retreat-template.home-page .site-header.is-scrolled :focus-visible{outline-color:var(--retreat-ocean)}
.retreat-template .retreat-hero :focus-visible,.retreat-template .site-footer :focus-visible{outline-color:#e0cfa8}
@media(max-width:1100px){.retreat-template .desktop-nav{gap:19px}.retreat-template .header-tools{gap:16px}.retreat-split{gap:40px}.retreat-template .footer-grid{gap:35px}.retreat-template .rooms-lead{gap:36px}}
@media(max-width:900px){.retreat-template .container{width:calc(100% - 48px)}.retreat-template .retreat-hero-content{padding-block:185px 155px}.retreat-template .retreat-hero h1{font-size:clamp(3rem,6.5vw,4.5rem)}.retreat-template .retreat-stay-strip{width:calc(100% - 48px);gap:18px;padding:22px}.retreat-stay-strip strong{font-size:1.5rem}.retreat-stay-strip>div{padding-right:10px}.retreat-template .retreat-stay-strip .button{font-size:.78rem;padding-inline:18px;max-width:205px}.retreat-template .brand-logo{width:88px}.retreat-template.home-page .header-inner{min-height:120px}.retreat-template .header-inner{min-height:106px}.retreat-section{padding-block:76px}.retreat-template .card-copy{padding:22px}.retreat-template .card-copy h3{font-size:1.45rem}}
@media(max-width:700px){.retreat-template .container{width:calc(100% - 40px)}.retreat-template .header-inner{gap:16px;padding-block:12px;min-height:104px}.retreat-template .brand-logo{width:80px}.retreat-template.home-page .header-inner{min-height:116px}.retreat-template.home-page .is-scrolled .brand-logo{width:61px}.retreat-template.home-page .is-scrolled .header-inner{min-height:78px}.retreat-template .header-tools{gap:16px}.retreat-template .retreat-hero{min-height:94svh}.retreat-template .retreat-hero-content{padding-block:168px 156px}.retreat-template .retreat-hero h1{font-size:clamp(2.8rem,9.3vw,4rem);line-height:1.14}.retreat-hero-intro{font-size:1rem;line-height:1.8;margin-top:25px}.retreat-hero-photo img{object-position:60% center}.retreat-overlay{background:linear-gradient(180deg,#0d213747,#0d21377a 45%,#0d2137bf)}.retreat-actions{gap:13px;margin-top:27px}.retreat-template .retreat-hero .button{padding:13px 20px;font-size:.85rem}.retreat-scroll{bottom:63px;font-size:.7rem}.retreat-hero-photo figcaption{bottom:19px;right:20px;font-size:.625rem}.retreat-template .retreat-stay-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 12px;padding:23px 19px;margin-top:-30px;width:calc(100% - 40px);border-radius:10px}.retreat-stay-strip>div{padding-right:8px;gap:5px}.retreat-stay-strip>div:nth-child(3){border:0;padding:0}.retreat-stay-strip strong{font-size:1.4rem;white-space:nowrap}.retreat-stay-strip span{font-size:.69rem;line-height:1.6}.retreat-template .retreat-stay-strip .button{grid-column:1/-1;width:100%;max-width:none;font-size:.875rem;min-height:46px}.retreat-section{padding-block:62px}.retreat-template .retreat-welcome{padding-top:61px;padding-bottom:62px}.retreat-template .retreat-section h2{font-size:2rem}.retreat-template .retreat-narrow .intro-copy{font-size:1rem;line-height:1.85;margin-block:22px}.retreat-section-heading{margin-bottom:30px}.retreat-section-heading>p:last-child:not(.eyebrow){font-size:.9375rem;margin-top:18px}.retreat-template .eyebrow{font-size:.69rem}.retreat-template .rooms-grid{grid-template-columns:1fr;gap:20px}.retreat-template .room-card{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:stretch}.retreat-template .room-card>.hotel-photo{aspect-ratio:auto;min-height:200px;height:100%}.retreat-template .room-card .hotel-photo img{aspect-ratio:auto;height:100%;object-position:56% center}.retreat-template .room-card .hotel-photo figcaption{left:5px;right:5px;bottom:8px;padding:3px 5px;font-size:.58rem;max-width:none}.retreat-template .card-copy{padding:19px 17px}.retreat-template .card-copy h3{font-size:1.3rem;line-height:1.25}.retreat-template .card-copy .eyebrow{font-size:.625rem;margin-bottom:7px}.retreat-template .card-spec{font-size:.75rem;margin-top:11px!important;padding-bottom:8px;line-height:1.65}.retreat-template .card-spec>span{padding-inline:5px}.retreat-template .bed-summary{font-size:.75rem;line-height:1.65;margin-top:8px!important}.retreat-template .card-copy>.text-link{font-size:.68rem;margin-top:8px;min-height:38px}.retreat-section-action{margin-top:30px}.retreat-split{grid-template-columns:1fr;gap:30px}.retreat-template .retreat-feature .intro-copy{font-size:1rem;margin-block:20px 26px}.retreat-feature-photo img{aspect-ratio:1.35}.retreat-gallery{grid-template-columns:1fr 1fr;gap:15px}.retreat-gallery .hotel-photo:first-child{grid-column:1/-1}.retreat-gallery .hotel-photo:first-child img{aspect-ratio:1.55}.retreat-gallery .hotel-photo img{aspect-ratio:1}.retreat-contact{padding-block:65px}.retreat-template .site-footer{margin-top:44px;padding:36px 0 105px}.retreat-footer-wave{height:45px;top:-44px}.retreat-template .footer-grid{grid-template-columns:1fr 1fr;gap:32px 24px}.retreat-template .footer-grid>div:first-child{grid-column:1/-1;display:flex;gap:28px;align-items:center}.retreat-template .footer-grid address{margin:0;font-size:.8125rem;max-width:230px}.retreat-template .footer-grid h2{font-size:.875rem;line-height:1.65;margin-bottom:14px}.retreat-template .footer-grid>div>a:not(.brand-logo){font-size:.8125rem;line-height:1.75}.retreat-template .footer-note{margin-top:30px;padding-top:22px;font-size:.72rem}.retreat-template .rooms-lead{gap:28px;padding-top:20px}.retreat-template .page-intro{padding-block:32px}.retreat-template .page-intro h1{font-size:2.5rem}.retreat-template .section{margin-top:62px}.retreat-template .room-detail-grid{gap:30px}}
@media(max-width:380px){.retreat-template .room-card{grid-template-columns:96px minmax(0,1fr)}.retreat-template .card-copy{padding:17px 14px}.retreat-template .card-copy h3{font-size:1.2rem}.retreat-template .footer-grid{gap:28px 18px}.retreat-stay-strip strong{font-size:1.2rem}.retreat-template .retreat-hero h1{font-size:2.7rem}.retreat-template .header-tools{gap:10px}}
@media(prefers-reduced-motion:reduce){.retreat-template .room-card:hover{transform:none}.retreat-template .site-header,.retreat-template .brand-logo{transition:none}}

/* Preserve the complete entrance photograph and the new aerial focal point. */
.retreat-template .photo-hotel-exterior img{height:auto;max-height:620px;aspect-ratio:auto;object-fit:contain;background:#eaf1f4}
