/* Shared modern presentation. Loaded after legacy theme and feature styles. */
body{--ch-paper:#f8f7f2;--ch-ink:#19372e;--ch-forest:#204e3e;--ch-mist:#e9eee5;--ch-radius:16px;--ch-border:#dce2d9;background:var(--ch-paper);color:var(--ch-ink)}
body :is(h1,h2,h3,h4,p,a,button,input,select,textarea){font-family:Inter,"Noto Sans Khmer",Arial,sans-serif}
body :is(.ch-page-hero,.ch-reference__header,.ch-archive-header) h1{font-size:clamp(2.6rem,5.2vw,4.75rem);line-height:1.06;letter-spacing:-.05em;font-weight:600;max-width:20ch}
body :is(.ch-home,.ch-page-content,.ch-reference,.ch-places-explorer) h2{font-size:clamp(1.85rem,3.2vw,2.9rem);line-height:1.14;letter-spacing:-.035em;font-weight:600}
body :is(.ch-home,.ch-page-content,.ch-reference,.ch-places-explorer) h3{font-weight:600;line-height:1.3;letter-spacing:-.02em}
body :is(.ch-page-content,.ch-reference__content) p{line-height:1.75}
body :is(.ch-kicker,.ch-page-hero__eyebrow,.ch-community-kicker){font-size:.7rem;letter-spacing:.13em;line-height:1.6}
body .ch-header{background:#f8f7f2;border-bottom:1px solid #e4e8df;box-shadow:none}
body .ch-header__inner{max-width:1280px;min-height:88px;padding:18px 28px;gap:24px}
body .custom-logo{max-width:210px;max-height:56px;width:auto;object-fit:contain}
body .ch-primary-nav a{font-size:.85rem;font-weight:600}
body .ch-header-search{width:40px;height:40px;border-radius:50%;font-size:20px}
body .ch-mobile-nav{border-radius:16px;background:#f8f7f2;padding:20px;box-shadow:0 15px 45px #19372e18}
body :is(.ch-home-shell,.ch-page-shell){max-width:1216px}
body .ch-home-section{padding-block:clamp(44px,5.5vw,76px)}
body .ch-home-hero{position:relative;isolation:isolate;overflow:hidden;margin:0 24px;border-radius:24px;min-height:570px;background:#244b3a;color:#fff}
body .ch-modern-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
body .ch-home-hero::before{display:none}
body .ch-home-hero::after{content:"";position:absolute;inset:0;width:100%;height:100%;border-radius:0;transform:none;opacity:1;background:linear-gradient(90deg,#081d18de,#081d1830);z-index:-1;pointer-events:none}
body .ch-home-hero__motif{display:none}
body .ch-home-hero__inner{padding-block:64px}
body .ch-home-hero h1{font-size:clamp(3rem,6vw,5.15rem);max-width:10ch;line-height:1.03;letter-spacing:-.055em;font-weight:600;color:#fff}
body .ch-home-hero :is(.ch-kicker,.ch-home-hero__intro){color:#f0f3ec}
body .ch-home-hero__intro{max-width:520px;font-size:1.05rem;line-height:1.7}
body .ch-home-search{max-width:580px}
body :is(.ch-home-button,.ch-button,.ch-save-control,.ch-trip-finder__actions button,.ch-search-form button){border-radius:30px;font-size:.875rem;padding:13px 22px;line-height:1.5;font-weight:600}
body .ch-home-hero .ch-home-button{background:#f5efdf;color:#19372e;border-color:#f5efdf}
body .ch-home-hero .ch-home-button--secondary{background:transparent;color:#fff;border:1px solid #ffffff85}
body .ch-home-hero .ch-home-button:hover{background:#d8e6d3;color:#19372e}
body :is(input[type=search],input[type=text],input[type=number],select,textarea){border-radius:12px;border-color:#bcc9bd;font-size:1rem;min-width:0;max-width:100%}
body :is(.ch-experience-grid,.ch-collection-grid,.ch-topic-grid,.ch-latest-grid,.ch-results,.ch-plan-grid){gap:20px;border:0}
body :is(.ch-experience-grid>a,.ch-collection-grid>a,.ch-topic,.ch-latest-grid>article,.ch-plan-card,.ch-result-card){border:1px solid #dce2d9;border-radius:16px;background:#fffefa;padding:24px;box-shadow:none;min-width:0}
body :is(.ch-experience-grid>a,.ch-collection-grid>a){align-items:flex-start;justify-content:flex-start;min-height:210px}
body .ch-experience-grid strong{margin-top:18px;font-size:1.2rem;font-family:inherit}
body :is(.ch-experience-grid>a:hover,.ch-collection-grid>a:hover){background:#e9eee5;color:#19372e}
body :is(.ch-experience-grid>a,.ch-collection-grid>a):hover :is(strong,small){color:#19372e}
body .ch-place-card{padding:0;overflow:hidden}
body .ch-place-card__image{border-radius:16px 16px 0 0;overflow:hidden;aspect-ratio:1.4}
body .ch-place-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .25s}
body .ch-place-card:hover img{transform:scale(1.025)}
body .ch-place-card__body{padding:24px}
body :is(.ch-page-hero,.ch-archive-header){background:#e9eee5;padding:clamp(40px,6vw,80px) 24px;margin:0 24px 36px;border-radius:24px}
body :is(.ch-page-hero__standfirst,.ch-reference__standfirst){font-size:clamp(1.05rem,1.6vw,1.25rem);line-height:1.7;max-width:65ch}
body :is(.ch-page-lead-media img,.ch-destination-hero__visual,.ch-destination-hero__visual img){border-radius:20px}
body :is(.ch-destination-hero,.ch-reference__header){gap:40px}
body :is(.ch-toc,.ch-knowledge-panel,.ch-route-box,.ch-visitor-facts,.ch-start-guide,.ch-ready,.ch-trip-finder,.ch-community-grid article){border-radius:16px;box-shadow:none}
body :is(.ch-start-guide__choices,.ch-ready__stages){gap:8px}
body :is(.ch-start-guide__choices button,.ch-ready__stages button){border-radius:12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:18px;font-size:1rem;line-height:1.4;padding:20px;min-width:0}
body :is(.ch-start-guide__choices button,.ch-ready__stages button)>span{margin:0;font-size:.72rem}
body .ch-trip-finder__controls{padding:clamp(20px,3vw,40px);min-width:0}
body .ch-trip-finder__result{padding:clamp(24px,3vw,44px);border-radius:20px;min-width:0}
body .ch-trip-finder__result h2{font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.12}
body .ch-trip-finder__summary{font-size:1.05rem;line-height:1.65}
body :is(.ch-trip-finder__facts,.ch-trip-finder__route){font-size:1rem}
body .ch-community-pathway{width:min(1216px,calc(100% - 48px));border-radius:24px;gap:28px;flex-wrap:wrap}
body .ch-community-pathway h2{font-size:clamp(2rem,3.2vw,3rem);font-weight:600;letter-spacing:-.035em}
body .ch-community-pathway .ch-community-kicker{color:#e2c68f}
body .ch-community-grid{border:0;gap:20px}
body .ch-community-grid article{border:1px solid #dce2d9}
body .ch-community-guide-note{border-radius:24px}
body .ch-community-intro h2{font-size:clamp(2rem,3.5vw,3rem)}
body .ch-site-footer{background:#edf0e8;color:#19372e;border-top:1px solid #dce2d9}
body .ch-site-footer :is(a,p,strong){color:inherit}
body :is(.ch-result-card__link,.ch-text-link,.ch-start-guide__result a)>:is(b,span[aria-hidden]){font-size:14px;line-height:1;font-weight:400}
body :is(a,button,input,select,summary):focus-visible{outline:3px solid #a65a34;outline-offset:4px}
@media(max-width:900px){body :is(.ch-experience-grid,.ch-topic-grid,.ch-collection-grid){grid-template-columns:repeat(2,minmax(0,1fr))}body .ch-trip-finder{grid-template-columns:1fr}body .ch-header__inner{gap:12px}}
@media(max-width:600px){body .ch-header__inner{min-height:74px;padding:14px 20px}body .custom-logo{max-width:170px}body :is(.ch-home-hero,.ch-page-hero,.ch-archive-header){margin-inline:12px;border-radius:18px}body .ch-home-hero__inner{padding:44px 24px}body .ch-home-hero{min-height:530px}body :is(.ch-experience-grid,.ch-topic-grid,.ch-collection-grid,.ch-latest-grid,.ch-results){grid-template-columns:1fr}body :is(.ch-experience-grid>a,.ch-collection-grid>a){min-height:0}body .ch-community-pathway{width:calc(100% - 24px)}body :is(.ch-page-hero,.ch-archive-header) h1{font-size:2.6rem}body .ch-home-hero::after{background:#081d189e}body .ch-home-hero__actions{flex-wrap:wrap}}
/* Archive headers must include their gutters within the available width. */
.ch-experience-pilot{grid-column:1/-1;width:100%;max-width:1216px;min-width:0;margin:32px auto 56px;padding:clamp(20px,3vw,40px);box-sizing:border-box;background:#edf0e8;border-radius:24px}
.ch-experience-pilot__intro{max-width:65ch}
.ch-experience-pilot__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;margin-top:28px}
.ch-experience-pilot__card{display:flex;flex-direction:column;min-width:0;padding:clamp(20px,3vw,32px);border:1px solid #dce2d9;border-radius:18px;background:#fffefa}
body .ch-experience-pilot__card h3{font-size:1.5rem;line-height:1.25;margin:0 0 16px}
.ch-experience-pilot__card dl{margin:12px 0 24px}.ch-experience-pilot__card dl>div{padding:12px 0;border-top:1px solid #dce2d9}.ch-experience-pilot__card dt{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.ch-experience-pilot__card dd{margin:8px 0 0;font-size:.95rem;line-height:1.6}
.ch-experience-pilot__links{display:grid;gap:12px;margin-top:auto}.ch-experience-pilot__links a{color:#204e3e;text-decoration:underline;text-underline-offset:4px;font-size:.9rem}.ch-experience-pilot__note{font-size:.8rem;margin-top:24px}
.ch-experience-pilot__pairing{margin-top:24px;border-top:1px solid #c6d0c3;padding-top:24px;max-width:70ch}.ch-experience-pilot__pairing a{color:#204e3e;text-underline-offset:4px}.ch-experience-pilot__pairing h3{font-size:1.3rem}
@media(max-width:1050px){.ch-experience-pilot__grid{grid-template-columns:1fr}}
body .ch-archive-header--places{width:calc(100% - 48px);max-width:1216px;margin-inline:auto;padding:clamp(32px,5vw,64px);overflow-wrap:break-word}
body .ch-archive-header--places::before{display:none}
body .ch-places-explorer :is(.ch-explorer-panel,.ch-places-intro,.ch-place-results){box-sizing:border-box;width:calc(100% - 48px);max-width:1216px;margin-inline:auto;min-width:0}
body .ch-explorer-panel{border-radius:20px;box-shadow:none}
body .ch-explorer-form{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}
body .ch-explorer-form label{min-width:0}
body .ch-explorer-form button{border-radius:30px}
body .ch-places-explorer .ch-place-card{padding:0}
@media(max-width:600px){body .ch-archive-header--places,body .ch-places-explorer :is(.ch-explorer-panel,.ch-places-intro,.ch-place-results){width:calc(100% - 24px)}body .ch-explorer-form{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body .ch-place-card__image img{transition:none}}
