/* Keep the public navigation focused; booking is already the final navigation item. */
.site-header{position:sticky;top:0;z-index:10;min-height:72px;height:auto;gap:16px}
.header-cta{display:none}
.site-header nav{gap:clamp(13px,2.4vw,32px)}
.site-header nav a{white-space:nowrap}
.preview-switch{display:none!important}
.preview-mobile{max-width:none!important;margin:0!important;box-shadow:none!important}
.story-grid{align-items:stretch}
.story-card{display:flex;flex-direction:column}
.story-card img{flex:none}
.story-body{display:flex;flex:1;flex-direction:column;align-items:flex-start}
.story-body p{flex:1}
.longform-article{scroll-margin-top:96px}
.longform-article h2{max-width:850px}
.longform-layout{align-items:start}
.longform-layout img{border-radius:14px}
.longform-layout>div{max-width:640px}
.longform-layout p{white-space:pre-line}
.empty-state{padding:28px;color:var(--muted);text-align:center}
.album-intro{position:relative;overflow:hidden}
.explore-banner{--cover-image:url('./dulieu/Media/dp-toan-canh-song-da.webp');--cover-wash-rgb:227,246,237}
.guide-banner{--cover-image:url('./dulieu/Media/vuon-vua-dam-sen-thuc-te.jpg');--cover-wash-rgb:234,232,216}
.booking-banner{--cover-image:url('./dulieu/Media/dao-ngoc-xanh-toan-canh.webp');--cover-wash-rgb:227,246,237}
.album-intro{--cover-image:url('./dulieu/Media/dao-ngoc-xanh-2026.jpg');--cover-wash-rgb:230,247,238}
.page-banner,.album-intro{background-color:rgb(var(--cover-wash-rgb));background-image:linear-gradient(90deg,rgba(var(--cover-wash-rgb),1) 0%,rgba(var(--cover-wash-rgb),.97) 28%,rgba(var(--cover-wash-rgb),.72) 49%,rgba(var(--cover-wash-rgb),.06) 82%),var(--cover-image);background-size:cover,cover;background-position:center,var(--cover-position-web,center);background-repeat:no-repeat}
@media(max-width:700px){.page-banner,.album-intro{background-image:linear-gradient(90deg,rgba(var(--cover-wash-rgb),.98) 0%,rgba(var(--cover-wash-rgb),.9) 45%,rgba(var(--cover-wash-rgb),.48) 100%),var(--cover-image);background-position:center,var(--cover-position-mobile,var(--cover-position-web,center))}}
.album-intro:after{content:"";position:absolute;width:270px;height:270px;right:9%;top:-85px;border:1px solid #fff9;border-radius:50%;box-shadow:0 0 0 24px #ffffff18,0 0 0 52px #ffffff12;pointer-events:none}
.album-wall{position:relative;isolation:isolate;overflow:hidden;grid-auto-flow:dense;background:linear-gradient(155deg,#0b6177 0%,#168ca0 34%,#9ddccf 70%,#ffe4b6 100%);gap:10px}
.album-wall:before,.album-wall:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.album-wall:before{opacity:.55;background-image:radial-gradient(2px 2px at 12% 18%,#fff 45%,transparent 55%),radial-gradient(2px 2px at 76% 34%,#fff 45%,transparent 55%),radial-gradient(1.5px 1.5px at 48% 72%,#fff 45%,transparent 55%),radial-gradient(2px 2px at 89% 82%,#fff 45%,transparent 55%);background-size:190px 160px;animation:sky-drift 24s linear infinite}
.album-wall:after{inset:auto 0 0;height:24%;background:linear-gradient(transparent,#f3fbf7)}
.album-tile{transform:none;border:1px solid #ffffffa6;border-radius:16px;box-shadow:0 13px 35px #063b4a40;transition:transform .45s,box-shadow .45s}
.album-tile:hover{transform:translateY(-7px) scale(1.015);box-shadow:0 22px 50px #063b4a62}
.album-tile img{filter:saturate(.94);transition:transform .8s,filter .5s}
.album-tile:hover img{filter:saturate(1.1)}
.album-tile figcaption{left:0;right:0;bottom:0;padding:42px 16px 14px;background:linear-gradient(transparent,#042d3ad9);font-size:12px;line-height:1.55;text-shadow:none}
.album-tile figcaption strong,.album-tile figcaption span{display:block}
.album-tile figcaption strong{font-size:14px}
.album-tile figcaption span{opacity:.86}
.lightbox-close,.lightbox-prev,.lightbox-next{z-index:2;backdrop-filter:blur(8px)}
@keyframes sky-drift{to{background-position:190px 160px}}
@media(max-width:900px){
  .site-header{min-height:66px;padding:9px 4%}
  .site-header nav{gap:12px}
  .site-header nav a{font-size:11px}
  .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:10px 5% 18px;background:#fffefa;border-bottom:1px solid #d7e8e6;box-shadow:0 18px 24px #124c4a16}
  .site-header nav.open{display:flex;flex-direction:column;gap:0}
  .site-header nav a{padding:13px 4px;border-bottom:1px solid #e9f0ed;font-size:14px}
  .menu-toggle{display:block;width:42px;height:42px;padding:0;border:1px solid #cfe2dc;border-radius:11px;background:#f4faf7;font-size:21px;line-height:1;color:#08777b}
}
@media(max-width:700px){
  .site-header{min-height:64px;height:64px;padding:0 5%;flex-wrap:nowrap}
  .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:10px 5% 18px;background:#fffefa;border-bottom:1px solid #d7e8e6;box-shadow:0 18px 24px #124c4a16}
  .site-header nav.open{display:flex;flex-direction:column;gap:0}
  .site-header nav a{padding:13px 4px;border-bottom:1px solid #e9f0ed;font-size:14px}
  .menu-toggle{display:block;width:42px;height:42px;padding:0;border:1px solid #cfe2dc;border-radius:11px;background:#f4faf7;font-size:21px;line-height:1;color:#08777b}
  .menu-toggle:hover{background:#e6f4ee}
  .preview-switch{display:none!important}
  .album-wall{grid-auto-rows:145px;gap:8px;padding:18px 5%}
  .album-tile:nth-child(n){grid-column:span 1;grid-row:span 1}
  .album-tile:nth-child(1){grid-column:span 2;grid-row:span 2}
  .album-tile:nth-child(4){grid-row:span 2}
  .longform-article{scroll-margin-top:75px}
}
@media(prefers-reduced-motion:reduce){
  .album-wall:before{animation:none}
  .album-tile,.album-tile img,.album-tile:hover{transition:none}
}

/* Animated photo collage: overlapping paper-like frames on a calm sky. */
.album-wall{
  --sky-blue:#167f98;
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:clamp(54px,6.6vw,88px);
  grid-auto-flow:dense;
  align-items:stretch;
  gap:clamp(12px,1.8vw,22px);
  padding:clamp(34px,5vw,68px) clamp(22px,6vw,88px);
  overflow:hidden;
  background:
    radial-gradient(ellipse at 9% 12%,#ffffff55 0 1px,transparent 2px),
    radial-gradient(ellipse at 80% 34%,#ffffff70 0 1px,transparent 2px),
    radial-gradient(ellipse at 42% 73%,#ffffff55 0 1px,transparent 2px),
    linear-gradient(155deg,#0b6177 0%,#168ca0 34%,#9ddccf 73%,#ffe4b6 100%);
  background-size:150px 140px,190px 180px,170px 160px,cover;
}
.album-wall:before,.album-wall:after{content:"";position:absolute;z-index:-1;pointer-events:none}
.album-wall:before{
  inset:-15% -5%;
  opacity:.45;
  background:
    radial-gradient(ellipse at 20% 30%,#ffffffb0 0 2%,transparent 2.4%),
    radial-gradient(ellipse at 68% 56%,#ffffff90 0 1.6%,transparent 2%),
    radial-gradient(ellipse at 88% 16%,#ffffff95 0 1.2%,transparent 1.6%);
  background-size:420px 280px,360px 240px,300px 240px;
  animation:album-cloud-drift 32s ease-in-out infinite alternate;
}
.album-wall:after{inset:auto 0 0;height:20%;background:linear-gradient(transparent,#f3fbf7)}
.album-tile{
  --tilt:0deg;
  --float-time:7s;
  --float-delay:0s;
  position:relative;
  min-width:0;
  min-height:0;
  margin:0;
  overflow:hidden;
  transform:rotate(var(--tilt));
  transform-origin:center;
  border:5px solid #fff;
  border-radius:4px;
  background:#dbece6;
  box-shadow:0 12px 28px #073a4d54,0 2px 6px #032f4038;
  cursor:zoom-in;
  animation:album-float var(--float-time) ease-in-out var(--float-delay) infinite;
  transition:transform .35s ease,box-shadow .35s ease;
}
.album-tile:nth-child(1){grid-column:span 6;grid-row:span 5}
.album-tile:nth-child(2){grid-column:span 3;grid-row:span 3}
.album-tile:nth-child(3){grid-column:span 3;grid-row:span 3}
.album-tile:nth-child(4){grid-column:span 3;grid-row:span 5}
.album-tile:nth-child(5){grid-column:span 3;grid-row:span 3}
.album-tile:nth-child(6){grid-column:span 3;grid-row:span 3}
.album-tile:nth-child(7){grid-column:span 3;grid-row:span 3}
.album-tile:nth-child(2),.album-tile:nth-child(5){margin-top:16px}
.album-tile:nth-child(3),.album-tile:nth-child(6){margin-top:-10px}
.album-tile img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.94);
  transition:transform .65s ease,filter .45s ease;
}
.album-tile:hover,.album-tile:focus-visible{
  z-index:3;
  transform:rotate(0) scale(1.035);
  box-shadow:0 22px 44px #073a4d70;
  animation-play-state:paused;
}
.album-tile:hover img,.album-tile:focus-visible img{transform:scale(1.08);filter:saturate(1.08)}
.album-tile figcaption{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  max-height:72px;
  overflow:hidden;
  padding:32px 13px 10px;
  color:#fff;
  background:linear-gradient(transparent,#042d3ad9);
  font-size:12px;
  line-height:1.4;
  text-shadow:0 1px 5px #002b35a6;
}
.album-tile figcaption strong,.album-tile figcaption span{display:block;overflow:hidden;text-overflow:ellipsis}
.album-tile figcaption strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:13px}
.album-tile figcaption span{margin-top:2px;white-space:nowrap;opacity:.84}
@keyframes album-float{
  0%,100%{translate:0 0}
  50%{translate:0 -8px}
}
@keyframes album-cloud-drift{
  from{transform:translate3d(-1.5%,0,0)}
  to{transform:translate3d(1.5%,-1%,0)}
}
@media(max-width:700px){
  .album-intro{padding:48px 6% 30px}
  .album-intro h1{font-size:clamp(40px,11vw,51px);letter-spacing:-2px}
  .album-intro p{font-size:14px;line-height:1.65}
  .album-note{flex-direction:row;justify-content:space-between;gap:12px;margin-top:22px;font-size:9px;letter-spacing:1px}
  .album-wall{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:clamp(145px,44vw,190px);
    gap:14px 12px;
    padding:30px 7%;
  }
  .album-wall>.album-tile:nth-child(n){grid-column:span 1;grid-row:span 1;margin:0}
  .album-wall>.album-tile:nth-child(1){grid-column:1 / -1;grid-row:span 2}
  .album-wall>.album-tile:nth-child(4){grid-row:span 2}
  .album-tile:nth-child(2),.album-tile:nth-child(6){transform:rotate(-1.8deg)}
  .album-tile:nth-child(3),.album-tile:nth-child(7){transform:rotate(1.7deg)}
  .album-tile:nth-child(4){transform:rotate(-1deg)}
  .album-tile figcaption{max-height:48px;padding:22px 9px 7px;font-size:10px;line-height:1.3}
  .album-tile figcaption strong{font-size:11px;-webkit-line-clamp:2}
  .album-tile figcaption span{display:none}
  .album-tile:hover,.album-tile:focus-visible{transform:rotate(0) scale(1.02)}
  .album-tile{--float-time:8s}
  .album-tile:nth-child(2){--float-delay:-2s}
  .album-tile:nth-child(3){--float-delay:-4s}
  .album-tile:nth-child(4){--float-delay:-1s}
  .album-tile:nth-child(5){--float-delay:-5s}
  .album-tile:nth-child(6){--float-delay:-3s}
  .album-tile:nth-child(7){--float-delay:-6s}
}
@media(max-width:360px){
  .album-wall{grid-auto-rows:145px;gap:10px 8px;padding:24px 6%}
  .album-tile{border-width:4px}
  .album-note{font-size:8px}
}
@media(prefers-reduced-motion:reduce){
  .album-wall:before,.album-tile{animation:none}
  .album-tile,.album-tile img,.album-tile:hover{transition:none}
}

/* Readability and responsive spacing shared by every public page. */
:root{
  --ink:#153b43;
  --muted:#4e6267;
  --green:#075c63;
  --line:#c8d8d6;
}
body{color:var(--ink);font-size:16px;line-height:1.65}
.site-header nav a{color:#244e56;font-size:13px}
.site-header nav a:hover,.site-header nav a[aria-current=page]{color:#a74432}
.brand-logo{width:48px;height:48px}
.site-header .brand-text{font-size:16px;font-weight:800;letter-spacing:1.1px;line-height:1.05}
.site-header .brand-text small{font-size:9px;font-weight:700;letter-spacing:1.45px;margin-top:7px;line-height:1.2}
.brand-text{color:#07545d}
.brand-text small{color:#a74432}
.brand-text{display:flex;flex-direction:column;align-items:center;text-align:center}
.eyebrow,.page-banner .eyebrow,.hero .eyebrow{color:#95402f;font-size:11px;letter-spacing:1.6px;line-height:1.5}
.hero h1,.section h2,.contact-section h2,.page-banner h1{letter-spacing:-1.3px;line-height:1.12}
.hero h1{font-size:clamp(44px,4.7vw,68px)}
.home-intro h2,.section h2{font-size:clamp(32px,3.5vw,48px)}
.page-banner h1{font-size:clamp(40px,4.7vw,64px)}
.album-intro h1{font-size:clamp(38px,5.5vw,46px);line-height:1.22;letter-spacing:-1.3px;overflow-wrap:break-word}
.longform-article h2{font-size:clamp(27px,3.2vw,40px);line-height:1.18}
.p4{width:29%;height:230px;top:7%;left:4%}
.p5{width:31%;height:215px;top:67%;left:66%}
.hero h1 em,.home-intro h2 em,.section h2 em,.page-banner h1 em,.contact-section h2 em{color:#a74432}
.hero-copy>p,.page-banner p,.section-heading>p,.home-intro p,.story-body p,.guide-article p,.longform-layout p,.contact-copy>p{color:#405a61;line-height:1.75}
.text-link,.section-more,.card-link{color:#075c63}
.button.primary,.price-cta{background:#a74432;color:#fff}
.button.primary:hover,.price-cta:hover{background:#873523;color:#fff}
.filter.active,.filter:hover{background:#075c63;border-color:#075c63;color:#fff}
.story-body span,.guide-article span,.card-kicker{color:#94402f}
.price-value,.contact-links a{color:#075c63}
.price-status,.price-card-top{color:#94402f}
.price-update,.form-note{color:#4d6266}
.hero-note{color:#53666a}
.polaroid{display:flex;flex-direction:column;overflow:hidden}
.polaroid img{height:calc(100% - 26px);min-height:0;flex:0 0 calc(100% - 26px);object-fit:cover}
.polaroid span{flex:0 0 26px;margin:0;padding:5px 3px 0;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#255862;background:#fff;text-align:center}
.art-caption{color:#073f4c;background:#fffef0e8;padding:10px 14px;border-radius:4px;box-shadow:0 5px 16px #07545d2b;letter-spacing:1.7px}
.gallery-grid figcaption{color:#064b55}
.card-body p,.price-detail p{color:#4b6065}
.intro-strip{min-width:0}
.intro-strip p{line-height:1.4}
.section-heading{align-items:flex-start}
.story-body h3,.card-body h3,.guide-article h2,.longform-layout h3{line-height:1.3;overflow-wrap:anywhere}
.booking-form label{color:#294c53;font-size:12px}
.booking-form input,.booking-form select,.booking-form textarea{font-size:15px}
.form-note{font-size:12px}
footer>small{color:#d2e0d9}
.footer-copyright{margin-bottom:85px}
footer{align-items:center;gap:26px 34px}
footer>div:nth-child(2){align-self:start;padding-top:5px}
footer>div:nth-child(2) p{margin:9px 0 0;line-height:1.35}
.footer-brand{grid-template-columns:44px minmax(0,max-content) 18px}
.footer-brand .footer-mark{align-self:center}
.footer-brand small{grid-column:2/4}
.footer-links a:nth-child(1),.footer-links a:nth-child(3){color:#83e5d7;font-weight:700}
.footer-links a:nth-child(2){color:#ffd18a;font-weight:700}
.footer-links a:nth-child(1):hover,.footer-links a:nth-child(2):hover,.footer-links a:nth-child(3):hover{color:#fff}
.seo-tags{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 0;color:#075c63;font-size:12px;font-weight:700;line-height:1.6}
.seo-tags::first-letter{color:#a74432}
.footer-tags{grid-column:1/-1;margin:0;padding:16px 0 0;border-top:1px solid #ffffff2e;color:#a8d7ce;font-size:11px}
.longform-article .seo-tags,.guide-article .seo-tags{margin-top:24px;padding-top:14px;border-top:1px solid #c8d8d6}
@media(max-width:900px){
  .site-header{position:sticky}
  .site-header nav a{font-size:14px}
}
@media(max-width:760px){
  .section-heading{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:28px}
  .section-heading>p{max-width:620px;margin:0}
  .hero-actions{flex-wrap:wrap;gap:18px}
  .intro-strip{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center;gap:8px;padding:20px 6%}
  .intro-strip span{white-space:normal;font-size:9px}
  .intro-strip p{font-size:clamp(18px,5vw,22px)}
  .hero-note{position:static;margin-top:28px;gap:12px;font-size:9px;letter-spacing:1px}
  .hero-copy{padding-bottom:32px}
  .page-banner{overflow:hidden}
  .page-banner h1{max-width:100%;font-size:clamp(40px,10vw,52px);letter-spacing:-1.2px}
  .contact-section{grid-template-columns:minmax(0,1fr);gap:34px;padding:54px 6%}
  .contact-meta{grid-template-columns:minmax(0,1fr)}
  .booking-form{min-width:0;padding:24px}
  .form-row{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:420px){
  body{font-size:15px}
  .site-header{height:70px;min-height:70px;gap:9px}
  .brand{min-width:0;gap:9px}
  .brand-logo{width:46px;height:46px}
  .site-header .brand-text{font-size:13px;letter-spacing:.8px}
  .site-header .brand-text small{font-size:8px;letter-spacing:1.05px;margin-top:6px}
  .hero h1{font-size:clamp(38px,10.5vw,46px)}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:16px}
  .section{padding:42px 6%}
  .section h2,.home-intro h2{font-size:clamp(31px,8.2vw,38px)}
  .contact-section h2{font-size:clamp(36px,10vw,46px)}
  .page-banner{padding:46px 6%}
  .page-banner h1{font-size:clamp(36px,8.5vw,46px)}
  .album-intro h1{font-size:clamp(36px,9vw,44px)}
  .longform-article h2{font-size:clamp(26px,7vw,32px)}
  .filters{scrollbar-width:thin}
  footer{grid-template-columns:1fr;padding:42px 6% 20px;gap:18px}
  footer .footer-brand{grid-column:1}
  .footer-links{gap:13px}
  .footer-links a{font-size:13px}
  .footer-brand .footer-logo{width:38px;height:38px}
  .footer-brand .footer-brand-name{font-size:24px}
  .footer-brand{grid-template-columns:38px minmax(0,max-content) 18px}
  .footer-brand small{grid-column:2/4}
  .p4{width:27%;height:145px;top:6%;left:4%}
  .p5{width:28%;height:145px;top:65%;left:69%}
  footer>small{grid-column:1}
}

.footer-brand{display:grid;grid-template-columns:44px auto auto;align-items:center;justify-content:start;column-gap:9px;row-gap:5px}
.footer-brand .footer-logo{grid-row:1/3;width:44px;height:44px;border-radius:12px;object-fit:cover}
.footer-brand .footer-brand-name{font:500 clamp(19px,5.5vw,25px)/1.1 "Playfair Display",Georgia,serif;letter-spacing:0;white-space:nowrap}
.footer-brand .footer-mark{margin:0;color:#ffca70}
.footer-brand small{grid-column:2/4;justify-self:center;margin:0;font:9px/1.4 "DM Sans",Arial,sans-serif;letter-spacing:2px;text-align:center}
.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer-links a{display:flex;align-items:center;gap:9px}
.footer-links svg{width:17px;height:17px;flex:none}
.footer-links a:hover{color:#ffca70}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}

.date-field{position:relative}.date-field>input[name=date]{padding-right:52px}.date-picker-trigger{position:absolute;right:10px;top:8px;width:38px;height:38px;padding:0;background:transparent;color:#075c63;font-size:22px;border:0}.date-picker-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}

.date-error{display:block;min-height:18px;margin-top:5px;color:#b54c42;font-size:12px;font-weight:700}.date-error[hidden]{display:none}.date-field input.date-invalid{border-color:#b54c42;box-shadow:0 0 0 2px #b54c4230}
body>.section,main>.section{padding-top:var(--page-section-gap,58px);padding-bottom:var(--page-section-gap,58px)}
#preview-dialog{width:min(1280px,94vw);height:min(850px,92vh);padding:18px;border:0;border-radius:14px;box-shadow:0 25px 80px #123f4355}#preview-dialog::backdrop{background:#063b40aa}#settings-preview{width:100%;height:calc(100% - 45px);margin-top:12px;border:1px solid #c8d8d6;border-radius:10px;background:#fff}

/* Five clear, evenly spaced photos within the hero frame. */
.hero-art .polaroid img{height:calc(100% - 34px);flex-basis:calc(100% - 34px)}
.hero-art .polaroid span{flex-basis:34px;white-space:normal;overflow:visible;text-overflow:clip;display:flex;align-items:center;justify-content:center;padding:2px 3px;font-size:clamp(8px,.75vw,11px)}
.hero-art{isolation:isolate}
.hero-art .art-caption{top:22px;left:28px;right:auto;bottom:auto;z-index:10;font-size:11px;line-height:1.3;max-width:calc(100% - 56px);pointer-events:none}
.hero-art .polaroid,.hero-art .polaroid:hover{filter:none}
.hero-art .p1{width:35%;height:300px;top:15%;left:29%;z-index:3;transform:rotate(-5deg)}
.hero-art .p2{width:34%;height:275px;top:32%;left:62%;z-index:4;transform:rotate(6deg)}
.hero-art .p3{width:34%;height:220px;top:59%;left:11%;z-index:3;transform:rotate(-4deg)}
.hero-art .p4{width:29%;height:205px;top:19%;left:4%;z-index:2;transform:rotate(5deg)}
.hero-art .p5{width:31%;height:200px;top:65%;left:63%;z-index:3;transform:rotate(4deg)}
@media(max-width:640px){
  .hero-art .art-caption{top:12px;left:12px;font-size:9px;max-width:calc(100% - 24px)}
  .hero-art .p1{width:37%;height:190px;top:20%;left:28%}
  .hero-art .p2{width:35%;height:170px;top:33%;left:61%}
  .hero-art .p3{width:37%;height:130px;top:62%;left:9%}
  .hero-art .p4{width:30%;height:135px;top:21%;left:3%}
  .hero-art .p5{width:31%;height:125px;top:65%;left:65%}
}

.text-accent{color:var(--title-accent,#a74432)}

/* A fixed mobile row gap keeps the hashtag block below each article CTA. */
@media(max-width:640px){.longform-layout{row-gap:24px;column-gap:0}.longform-article .seo-tags{clear:both;position:relative;margin-top:26px}}

.load-more-posts{display:block;margin:0 auto 65px;padding:13px 23px;border:1px solid #0b6970;border-radius:28px;background:#fffdf8;color:#0b6970;font-size:13px;font-weight:800;box-shadow:0 7px 20px #0b697018}.load-more-posts:hover{background:#0b6970;color:#fff}.load-more-posts[hidden]{display:none}

/* Matching destination cards with fixed actions and restrained copy. */
.destinations .cards{align-items:stretch}
.destinations .destination-card{display:flex;flex-direction:column;height:500px;min-width:0}
.destinations .destination-card[hidden]{display:none}
.destinations .destination-card .card-image{height:235px;flex:none}
.destinations .destination-card .card-body{display:flex;flex:1;min-height:0;flex-direction:column;padding:21px 23px 23px}
.destinations .destination-card .card-kicker{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:none;margin-bottom:10px}
.destinations .destination-card .card-body h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;min-height:2.4em;max-height:2.4em;margin-bottom:11px;font-size:28px;line-height:1.2}
.destinations .destination-card .card-body p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;height:4.8em;min-height:0;margin:0;font-size:13px;line-height:1.6}
.destinations .destination-card .card-link{align-self:flex-start;flex:none;margin-top:auto;white-space:nowrap}
@media(max-width:640px){.destinations .destination-card{height:480px}.destinations .destination-card .card-image{height:220px}.destinations .destination-card .card-body{padding:20px}.destinations .destination-card .card-body h3{font-size:26px}}

/* Consistent journal cards in both home and Explore. */
.story-grid{align-items:stretch}
.story-grid .story-card{display:flex;flex-direction:column;height:500px;min-width:0}
.story-grid .story-card img{width:100%;height:215px;flex:none;object-fit:cover}
.story-grid .story-body{display:flex;flex:1;min-height:0;flex-direction:column;align-items:flex-start;padding:22px}
.story-grid .story-body>span{display:block;flex:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.story-grid .story-body h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;flex:none;min-height:3.9em;max-height:3.9em;margin:10px 0;font-size:24px;line-height:1.3}
.story-grid .story-body p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;flex:none;min-height:0;height:5.25em;margin:0;font-size:13px;line-height:1.75}
.story-grid .story-body a{flex:none;margin-top:auto;white-space:nowrap}
@media(max-width:640px){.story-grid .story-card{height:475px}.story-grid .story-card img{height:205px}.story-grid .story-body{padding:18px}.story-grid .story-body h3{font-size:23px}}

/* Contact choices on the booking page. */
.contact-links{gap:10px;align-items:flex-start;margin-top:28px}
.contact-links a{display:inline-flex;align-items:center;gap:11px;min-width:230px;max-width:100%;padding:10px 16px 10px 10px;border:1px solid #c6ded8;border-radius:12px;background:#fffdf8;color:#075c63;font-size:14px;font-weight:800;line-height:1.3;box-shadow:0 5px 16px #07545d12;transition:transform .2s,box-shadow .2s,background .2s}
.contact-links a:hover{transform:translateY(-2px);box-shadow:0 9px 22px #07545d22}
.contact-links .contact-messenger{color:#1550b8;border-color:#b9d3fb;background:#f5f9ff}
.contact-links .contact-zalo{color:#0754b7;border-color:#b9dbff;background:#f3faff}
.contact-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:9px;background:#e1f1eb;color:#075c63}
.contact-messenger .contact-icon{background:#ddeaff;color:#1550b8}.contact-zalo .contact-icon{background:#dbecff;color:#0754b7}
.contact-icon svg{width:20px;height:20px}
@media(max-width:640px){.contact-links a{width:100%;min-width:0}}
.new-info-section{padding-block:clamp(42px,6vw,88px);background:#f8f5ed}.new-info-section[hidden]{display:none}.new-info-inner{width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(28px,5vw,78px);align-items:center}.new-info-copy .eyebrow{color:#ac5b39;font-size:12px;font-weight:800;letter-spacing:.16em}.new-info-copy h2{max-width:720px;margin:14px 0 22px;color:#0a5057;font:600 clamp(31px,4vw,54px)/1.12 Georgia,serif}.new-info-body{color:#31565a;font-size:16px;line-height:1.85;white-space:pre-line}.new-info-body p{margin:0 0 16px}.new-info-inner>img{display:block;width:100%;height:clamp(270px,32vw,440px);object-fit:cover;border-radius:24px;box-shadow:0 22px 55px #174b4730}.new-info-inner>img[hidden]{display:none}@media(max-width:760px){.new-info-inner{grid-template-columns:1fr}.new-info-inner>img{height:260px}.new-info-copy h2{font-size:34px}}
.new-info-section{padding-block:clamp(28px,4vw,56px);background:linear-gradient(180deg,#e7f3ed 0%,#f8f5ed 100%)}.new-info-inner{position:relative;overflow:hidden;width:min(1220px,calc(100% - 36px));gap:clamp(28px,4vw,60px);padding:clamp(24px,3.5vw,48px);border:1px solid #c6ddd4;border-radius:28px;background:#fffdf8;box-shadow:0 22px 65px #164a461c}.new-info-inner::before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:linear-gradient(#b95637,#d6a15b)}.new-info-copy{min-width:0}.new-info-copy .eyebrow{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid #e7c4a9;border-radius:999px;background:#fff1e4;color:#9c472f;font-size:11px;line-height:1.2;letter-spacing:.1em}.new-info-copy .eyebrow::before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:#bf5535;box-shadow:0 0 0 4px #bf553526}.new-info-inner>img{border-radius:18px;box-shadow:0 15px 35px #174b4724}@media(max-width:760px){.new-info-inner{width:calc(100% - 24px);padding:25px 22px 24px;border-radius:20px}.new-info-copy .eyebrow{font-size:10px;letter-spacing:.05em}.new-info-inner>img{height:240px}}
.new-info-inner{width:100%;max-width:none;border:1px solid #c77e5b;box-shadow:0 14px 40px #164a4617}.new-info-inner::before{content:none}@media(max-width:760px){.new-info-inner{width:100%}}
.new-info-inner{display:block;padding:clamp(22px,3vw,34px)}.new-info-copy{max-width:none;margin-inline:0}.new-info-copy h2{max-width:none;margin-bottom:20px}.new-info-copy #new-info-image{display:block;width:100%;height:auto;max-height:520px;margin:0 0 26px;object-fit:cover;border-radius:15px;box-shadow:0 15px 35px #174b4724}.new-info-copy #new-info-image[hidden]{display:none}.new-info-copy #new-info-image.is-landscape{aspect-ratio:16/7}.new-info-copy #new-info-image.is-portrait{float:right;width:min(38%,360px);height:390px;max-height:390px;margin:0 0 18px 30px;object-fit:cover}.new-info-body{max-width:none}.new-info-body p:last-child{margin-bottom:0}@media(max-width:760px){.new-info-inner{padding:20px 18px}.new-info-copy #new-info-image{max-height:310px;margin:0 0 22px}.new-info-copy #new-info-image.is-landscape{aspect-ratio:16/9}.new-info-copy #new-info-image.is-portrait{float:none;width:100%;height:270px;max-height:270px;margin:0 0 22px;object-fit:contain;background:#edf4ef}}
.hero-copy>p,.page-banner>p,.section-heading>p,.home-intro p,.intro-strip p,.story-body p,.card-body>p,.guide-article p,.longform-layout p,.new-info-body p,.contact-copy>p,.booking-steps p,.price-detail p,.price-update,.form-note{text-align:justify;text-justify:inter-word}
.seo-tags,.footer-brand p,footer>div:nth-child(2)>p{ text-align:start;text-justify:auto }
