/* Our Destination only: intentionally scoped to preserve legacy page styling. */
.destination-page { --destination-green:#246f46; --destination-deep:#173e2c; --destination-gold:#d4af56; --destination-cream:#f6f6f1; --destination-ink:#24352d; --destination-muted:#6d7b70; color:var(--destination-ink); font-family:'Kanit',Arial,sans-serif; font-weight:300; overflow:hidden; }
.destination-page *, .destination-page *::before, .destination-page *::after { box-sizing:border-box; }
.destination-page a { color:inherit; text-decoration:none; }
.destination-page .container { width:min(1360px, calc(100% - 48px)); max-width:none; }
.destination-page-hero { position:relative; display:grid; min-height:clamp(440px,60vh,680px); overflow:hidden; place-items:center; background:#183d2c; }
.destination-page-hero-carousel, .destination-page-hero-carousel .carousel-inner, .destination-page-hero-carousel .carousel-item, .destination-page-hero-media { position:absolute; inset:0; width:100%; height:100%; }
.destination-page-hero-media img { width:100%; height:100%; object-fit:cover; }
.destination-page-hero-fallback { background:url('../images/cover-OUR-DESTINATION.png') center/cover no-repeat; }
.destination-page-hero-shade { position:absolute; z-index:2; inset:0; background:linear-gradient(110deg,rgba(15,41,29,.72),rgba(20,50,35,.25) 58%,rgba(15,35,26,.44)); }
.destination-page-hero-content { position:relative; z-index:3; max-width:860px; padding:48px 24px; color:#fff; text-align:center; }
.destination-page-hero-content p,.destination-page-heading>p,.destination-page-intro-content>p { margin:0 0 14px; color:var(--destination-gold); font-size:12px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; }
.destination-page-hero-content h1,.destination-page-heading h2,.destination-page-intro-content h2 { margin:0; font-family:'Kanit',Arial,sans-serif; font-weight:500; letter-spacing:0; line-height:1.1; }
.destination-page-hero-content h1 { color:#fff; font-size:clamp(48px,7.4vw,96px); }
.destination-page-hero-content>span,.destination-page-heading>span { display:block; width:58px; height:2px; margin:27px auto 18px; background:var(--destination-gold); }
.destination-page-hero-content>div { max-width:560px; margin:0 auto; color:rgba(255,255,255,.93); font-size:17px; line-height:1.65; }
.destination-page-hero-control { z-index:4; width:11%; color:#fff; opacity:1; }
.destination-page-hero-control i { display:grid; width:43px; height:43px; place-items:center; border:1px solid rgba(255,255,255,.75); border-radius:50%; font-size:13px; }
.destination-page-intro { position:relative; display:grid; min-height:390px; place-items:center; padding:80px 0; background:url('../images/cover-OUR-DESTINATION.png') center 44%/cover no-repeat; }
.destination-page-intro-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(22,63,42,.84),rgba(31,74,49,.49) 54%,rgba(17,51,34,.69)); }
.destination-page-intro-content { position:relative; z-index:1; max-width:900px; margin:auto; color:#fff; text-align:center; }
.destination-page-intro-content h2 { color:#fff; font-size:clamp(38px,5vw,64px); }
.destination-page-richtext { max-width:820px; margin:21px auto 0; color:rgba(255,255,255,.93); font-size:16px; line-height:1.78; }
.destination-page-richtext p:last-child { margin-bottom:0; }.destination-page-richtext a { color:#fff; text-decoration:underline; }.destination-page-richtext img { max-width:100%; height:auto; }
.destination-page-styles { padding:87px 0 68px; background:var(--destination-cream); }
.destination-page-heading { margin:0 auto 37px; text-align:center; }.destination-page-heading h2 { color:var(--destination-deep); font-size:clamp(37px,4.8vw,62px); }.destination-page-heading>div { max-width:600px; margin:auto; color:var(--destination-muted); font-size:15px; line-height:1.7; }
.destination-page-style-list { display:flex; justify-content:center; gap:10px; overflow-x:auto; padding:7px 4px 21px; scrollbar-color:#b8c6bc transparent; }
.destination-page-style { display:flex; min-width:112px; flex:0 0 112px; flex-direction:column; align-items:center; gap:10px; color:#738077; font-size:12px; line-height:1.25; text-align:center; transition:color .25s ease,transform .25s ease; }
.destination-page-style:hover { color:var(--destination-green); transform:translateY(-3px); }.destination-page-style i,.destination-page-style img { display:grid; width:65px; height:65px; place-items:center; padding:11px; border:1px solid #d5e0d7; border-radius:50%; background:rgba(255,255,255,.72); color:#78917e; font-size:25px; object-fit:contain; transition:background .25s,border-color .25s,box-shadow .25s; }
.destination-page-style.is-active { color:var(--destination-green); }.destination-page-style.is-active i,.destination-page-style.is-active img { border:2px solid var(--destination-green); background:#fff; box-shadow:0 7px 18px rgba(36,111,70,.14); filter:none; }.destination-page-style.is-active i { color:var(--destination-green); }
.destination-page-tours { padding:88px 0 105px; background:#fff; }.destination-page-list-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:23px; text-align:left; }.destination-page-list-heading .destination-page-heading>p { margin-bottom:9px; }.destination-page-list-heading h2 { font-size:clamp(33px,4vw,51px); }.destination-page-result { margin:0 0 5px; color:#8a978e; font-size:13px; }.destination-page-result strong { color:var(--destination-green); font-size:19px; font-weight:500; }
.destination-page-search { display:flex; gap:9px; max-width:590px; margin:0 0 31px; }.destination-page-search input { min-width:0; flex:1; padding:11px 14px; border:1px solid #d5e0d7; border-radius:4px; color:var(--destination-ink); outline:0; font:400 14px inherit; }.destination-page-search input:focus { border-color:var(--destination-green); box-shadow:0 0 0 3px rgba(36,111,70,.11); }.destination-page-search button { border:0; border-radius:4px; padding:0 16px; color:#fff; background:var(--destination-green); font:500 13px inherit; }.destination-page-search button i { margin-right:7px; }.destination-page-search>a { align-self:center; color:var(--destination-green); font-size:13px; text-decoration:underline; white-space:nowrap; }
.destination-page-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:37px 24px; }.destination-page-card { overflow:hidden; border:1px solid #e2e9e3; background:#fff; box-shadow:0 8px 22px rgba(33,63,45,.04); transition:transform .3s,box-shadow .3s; }.destination-page-card:hover { box-shadow:0 18px 34px rgba(33,63,45,.13); transform:translateY(-6px); }.destination-page-card-image { position:relative; display:block; aspect-ratio:800/560; overflow:hidden; background:#dfe9e2; }.destination-page-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .65s cubic-bezier(.2,.65,.25,1); }.destination-page-card:hover .destination-page-card-image img { transform:scale(1.055); }.destination-page-card-image:after { position:absolute; inset:0; content:''; background:linear-gradient(180deg,transparent 48%,rgba(18,42,28,.55)); }.destination-page-card-image>span { position:absolute; z-index:1; right:17px; bottom:15px; display:grid; width:36px; height:36px; place-items:center; border:1px solid rgba(255,255,255,.75); border-radius:50%; color:#fff; background:rgba(22,61,39,.5); }.destination-page-card-image.is-empty { display:grid; place-items:center; color:#71917c; font-size:36px; }.destination-page-card-image.is-empty:after { display:none; }.destination-page-card-copy { padding:19px 20px 22px; }.destination-page-tags { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:11px; }.destination-page-tags small { padding:4px 8px; border-radius:999px; color:#557060; background:#eff5f0; font-size:10px; letter-spacing:.04em; line-height:1; text-transform:uppercase; }.destination-page-card h3 { margin:0; color:#213d2c; font-family:'Playfair Display',Georgia,serif; font-size:23px; font-weight:600; line-height:1.2; }.destination-page-card h3 a:hover { color:var(--destination-green); }.destination-page-card p { display:-webkit-box; min-height:64px; margin:12px 0 18px; overflow:hidden; color:#718077; font-size:14px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:3; }.destination-page-card-link { color:var(--destination-green); font-size:12px; font-weight:500; letter-spacing:.05em; text-transform:uppercase; }.destination-page-card-link i { margin-left:8px; font-size:11px; }
.destination-page-empty { padding:75px 20px; color:var(--destination-muted); text-align:center; }.destination-page-empty i { color:var(--destination-gold); font-size:36px; }.destination-page-empty h3 { margin:15px 0 0; color:var(--destination-deep); font-family:'Playfair Display',Georgia,serif; font-size:27px; }.destination-page-empty p { margin:10px 0 0; font-size:14px; }.destination-page-pagination { display:flex; justify-content:center; gap:7px; margin-top:48px; }.destination-page-pagination a { display:grid; width:37px; height:37px; place-items:center; border:1px solid #c7d8cb; border-radius:50%; color:var(--destination-green); font-size:13px; }.destination-page-pagination a.is-active,.destination-page-pagination a:hover { color:#fff; border-color:var(--destination-green); background:var(--destination-green); }
@media (max-width:991.98px) { .destination-page-style-list { justify-content:flex-start; }.destination-page-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767.98px) { .destination-page .container { width:min(100% - 32px,1360px); }.destination-page-hero { min-height:470px; }.destination-page-hero-content>div { font-size:15px; }.destination-page-hero-control { display:none; }.destination-page-intro { min-height:340px; padding:65px 0; }.destination-page-richtext { font-size:15px; line-height:1.7; }.destination-page-styles,.destination-page-tours { padding:65px 0 70px; }.destination-page-list-heading { display:block; }.destination-page-result { margin-top:15px; }.destination-page-search { flex-wrap:wrap; }.destination-page-search input { min-height:44px; flex-basis:100%; }.destination-page-search button { min-height:42px; }.destination-page-grid { grid-template-columns:1fr; gap:24px; }.destination-page-card-copy { padding:18px 17px 20px; }.destination-page-card p { min-height:0; } }
@media (prefers-reduced-motion:reduce) { .destination-page * { scroll-behavior:auto!important; transition-duration:.01ms!important; } }

/* Production page refinement: use the same Kanit/weight hierarchy as About,
   Contact and the existing home sections. */
.destination-page-hero-content { width:min(1360px,calc(100% - 48px)); max-width:none; align-self:end; margin:0 auto; padding:0 0 58px; text-align:left; }
.destination-page-hero-content p,.destination-page-heading>p,.destination-page-intro-content>p { font-family:'Kanit',Arial,sans-serif; font-size:.72rem; font-weight:800; letter-spacing:.2em; line-height:1.2; }
.destination-page-hero-content h1 { font-family:'Kanit',Arial,sans-serif; font-size:clamp(2rem,3.2vw,3.8rem); font-weight:700; letter-spacing:0; line-height:1.08; }
.destination-page-hero-content>span { margin:18px 0 12px; }
.destination-page-hero-content>div { margin:0; font-family:'Kanit',Arial,sans-serif; font-size:1rem; line-height:1.65; }
.destination-page-heading h2,.destination-page-intro-content h2 { font-family:'Kanit',Arial,sans-serif; font-size:clamp(30px,3vw,42px); font-weight:500; letter-spacing:0; line-height:1.1; text-transform:uppercase; }
.destination-page-heading>span { margin:15px auto 13px; }
.destination-page-intro { scroll-margin-top:105px; }
.destination-page-intro-content h2 { font-size:clamp(32px,4vw,54px); font-weight:700; text-transform:none; }
.destination-page-style.is-active img { opacity:1!important; visibility:visible!important; filter:none!important; }
.destination-page-card { display:flex; flex-direction:column; min-height:100%; border-radius:3px; }
.destination-page-card-copy { display:flex; flex:1 1 auto; flex-direction:column; }
.destination-page-card h3 { min-height:2.4em; font-family:'Kanit',Arial,sans-serif; font-size:clamp(1.05rem,1.35vw,1.23rem); font-weight:700; line-height:1.28; }
.destination-page-card p { min-height:4.65em; margin-bottom:18px; font-family:'Kanit',Arial,sans-serif; font-size:.88rem; line-height:1.55; }
.destination-page-card-link { margin-top:auto; font-family:'Kanit',Arial,sans-serif; font-size:.72rem; font-weight:800; letter-spacing:.08em; }
.destination-page-tags small { font-family:'Kanit',Arial,sans-serif; font-weight:500; }
@media (max-width:767.98px) { .destination-page-hero-content { width:min(100% - 32px,1360px); padding-bottom:38px; }.destination-page-intro { scroll-margin-top:78px; }.destination-page-card h3 { min-height:0; }.destination-page-card p { min-height:0; } }

/* Final production refinements. The hero now uses the exact About Us
   structure/classes; listing styles remain scoped to this page. */
.destination-page-hero.exotic-about-hero { min-height:560px; }
.destination-page-hero.exotic-about-hero .exotic-contact-hero-carousel,
.destination-page-hero.exotic-about-hero .carousel-inner,
.destination-page-hero.exotic-about-hero .carousel-item,
.destination-page-hero.exotic-about-hero .destination-page-hero-media { height:560px; }
.destination-page-hero.exotic-about-hero .exotic-contact-hero-content-wrap { max-width:1360px; }
.destination-page-hero.exotic-about-hero .exotic-about-hero-content { text-align:left; }
.destination-page-list-heading { align-items:flex-end; margin-bottom:29px; text-align:left; }
.destination-page-list-heading > div { min-width:0; }
.destination-page-list-heading > div > p { margin:0 0 10px; color:#72824f; font-family:'Kanit',sans-serif; font-size:11px; font-weight:500; letter-spacing:.12em; line-height:1.2; text-transform:uppercase; }
.destination-page-list-heading > div > h2 { margin:0; color:#4e5934; font-family:'Kanit',sans-serif; font-size:clamp(30px,3vw,42px); font-weight:500; line-height:1.1; text-transform:uppercase; }
.destination-page-list-heading > .destination-page-result { align-self:center; margin:0; color:#68735f; font-family:'Kanit',sans-serif; font-size:13px; font-weight:400; letter-spacing:0; text-transform:uppercase; white-space:nowrap; }
.destination-page-list-heading > .destination-page-result strong { color:var(--destination-green); font-size:19px; font-weight:600; }
.destination-page-search { max-width:none; margin:0 0 38px; padding:18px; border:1px solid #dbe1cf; border-radius:14px; background:#fafbf8; box-shadow:0 10px 24px rgba(46,59,34,.05); }
.destination-page-search input { font-family:'Kanit',sans-serif; }
.destination-page-search button { min-width:104px; font-family:'Kanit',sans-serif; }
.destination-page-search > a { margin-left:4px; font-family:'Kanit',sans-serif; }
.destination-page-card-meta { display:flex; min-height:48px; flex-direction:column; justify-content:flex-start; gap:8px; margin-bottom:13px; }
.destination-page-category { display:flex; flex-wrap:wrap; gap:4px 10px; color:#72824f; font-size:.68rem; font-weight:600; letter-spacing:.12em; line-height:1.2; text-transform:uppercase; }
.destination-page-category span + span::before { margin-right:10px; color:#b18420; content:'·'; }
.destination-page-tags { margin:0; }
.destination-page-style.is-active img { background:#fff; filter:none!important; opacity:1!important; visibility:visible!important; }
.destination-page-tour-group { margin:0 0 54px; padding:22px; border:1px solid #dce5d9; border-radius:20px; background:linear-gradient(135deg,#f7faf5 0%,#fffdf9 100%); box-shadow:0 14px 32px rgba(45,76,48,.07); }
.destination-page-tour-group-heading { display:flex; align-items:center; justify-content:space-between; gap:22px; margin:0 0 22px; padding:18px 20px; border-radius:14px; background:linear-gradient(110deg,#174d35,#2f7753); color:#fff; }
.destination-page-tour-group-heading > span { color:#e7c65d; font-family:'Kanit',sans-serif; font-size:10px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.destination-page-tour-group-heading > div { display:flex; align-items:center; gap:16px; min-width:0; }
.destination-page-tour-group-heading h3 { margin:0; color:#fff; font-family:'Kanit',sans-serif; font-size:clamp(22px,2.4vw,32px); font-weight:600; line-height:1.1; }
.destination-page-tour-group-heading p { margin:0; padding:6px 10px; border:1px solid rgba(255,255,255,.28); border-radius:999px; color:#f8f5e9; font-family:'Kanit',sans-serif; font-size:12px; white-space:nowrap; }
.destination-page-tour-group-link { display:inline-flex; align-items:center; gap:9px; padding:10px 13px; border-radius:999px; background:#e7c65d; color:#174d35; font-family:'Kanit',sans-serif; font-size:12px; font-weight:700; letter-spacing:.02em; text-decoration:none; white-space:nowrap; transition:transform .2s ease,background .2s ease; }
.destination-page-tour-group-link:hover { background:#f2d87e; color:#103d2a; transform:translateY(-1px); }
.destination-page-tour-group.is-summary .destination-page-tour-group-heading { margin-bottom:0; }
.destination-page-tour-group .destination-page-grid { margin:0; }
@media (max-width:767.98px) { .destination-page-tour-group { margin-bottom:34px; padding:14px; border-radius:16px; }.destination-page-tour-group-heading { align-items:flex-start; flex-direction:column; gap:10px; padding:17px; }.destination-page-tour-group-heading > div { align-items:flex-start; flex-direction:column; gap:9px; }.destination-page-tour-group-heading h3 { font-size:24px; } }
@media (max-width:767.98px) { .destination-page-hero.exotic-about-hero,.destination-page-hero.exotic-about-hero .exotic-contact-hero-carousel,.destination-page-hero.exotic-about-hero .carousel-inner,.destination-page-hero.exotic-about-hero .carousel-item,.destination-page-hero.exotic-about-hero .destination-page-hero-media { min-height:440px; height:440px; }.destination-page-list-heading { align-items:flex-start; flex-direction:column; gap:14px; }.destination-page-list-heading > .destination-page-result { align-self:flex-start; }.destination-page-search { padding:14px; } }
