/* Separate standards for homepage, catalogues and details. */
@media screen{
body[data-template-level]{--template-width:1100px;--template-ink:#183f43;--template-edge:#dce8e5;--template-radius:12px;color:var(--template-ink)}
body[data-template-level]:not([data-template-level="1"]) .wrap{width:min(var(--template-width),calc(100% - 36px));max-width:var(--template-width);margin-left:auto;margin-right:auto;padding-left:0;padding-right:0;min-width:0}
body[data-template-level]:not([data-template-level="1"]) :is(.hero,.intro):has(h1){background:#e4efea;color:var(--template-ink);padding:24px 0}
body[data-template-level]:not([data-template-level="1"]) h1{font-size:32px;line-height:1.3;letter-spacing:0;margin:6px 0 12px;overflow-wrap:anywhere}
body[data-template-level]:not([data-template-level="1"]) :is(.hero,.intro):has(h1) p{font-size:17px;line-height:1.7;color:var(--template-ink)}
body[data-template-level="2"] [data-catalog-grid]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;align-items:stretch}
body[data-template-level="2"] .catalog-card{display:flex!important;flex-direction:column!important;background:white!important;border:1px solid var(--template-edge)!important;border-radius:var(--template-radius)!important;overflow:hidden!important;padding:0!important;margin:0!important;height:auto!important;min-height:0!important;min-width:0!important;box-shadow:none!important;color:var(--template-ink);text-decoration:none;gap:0!important}
body[data-template-level="2"] .catalog-card .catalog-media{display:block!important;width:100%!important;height:auto!important;aspect-ratio:16/9!important;min-height:0!important;margin:0!important;border-radius:0!important;flex:none!important;padding:0!important;overflow:hidden}
body[data-template-level="2"] .catalog-card img{display:block!important;width:100%!important;height:100%!important;aspect-ratio:16/9!important;object-fit:cover!important;border-radius:0!important;margin:0!important}
body[data-template-level="2"] .catalog-card img[data-media-kind="document"]{object-fit:contain!important;background:#eef3f0}
body[data-template-level="2"] .catalog-card .catalog-copy{display:flex!important;flex-direction:column!important;flex:1;gap:8px!important;padding:18px!important;min-width:0;color:var(--template-ink)}
body[data-template-level="2"] .catalog-copy>:is(.copy,.body,.card-body,.route-copy,.home-product-copy,.asia-card-body){display:flex!important;flex-direction:column!important;gap:8px!important;flex:1;padding:0!important;min-width:0}
body[data-template-level="2"] .catalog-copy :is(h2,h3,.home-product-title,.copy>strong){font-size:22px!important;line-height:1.45!important;font-weight:800;margin:0!important;color:var(--template-ink)}
body[data-template-level="2"] .catalog-copy :is(p,.home-product-description){font-size:16px!important;line-height:1.65!important;margin:0!important;color:#536d70}
body[data-template-level="2"] .catalog-copy :is(small,.code,.home-product-meta,.fine,.status){font-size:15px!important;line-height:1.55!important;overflow-wrap:anywhere}
body[data-template-level="2"] .catalog-copy :is(.price,.money){font-size:26px!important;line-height:1.4!important;font-weight:850;margin:4px 0!important}
body[data-template-level="2"] .catalog-copy :is(.actions,.route-action,.home-product-footer){margin-top:auto!important;padding-top:12px!important}
body[data-template-level="2"] .catalog-copy :is(a,b,.route-action,.home-product-footer){font-size:16px;line-height:1.5}
body[data-template-level="2"] .catalog-copy :is(h2,h3,p,strong,a){margin-left:0!important;margin-right:0!important;overflow-wrap:anywhere}
body[data-template-level="3"] h2{font-size:26px;line-height:1.4}
body[data-template-level="3"] h3{font-size:21px;line-height:1.45}
body[data-template-level="3"] main{font-size:17px;line-height:1.75;min-width:0}
body[data-template-level="3"] :is(.panel,.section,.box){border-radius:12px}
body[data-template-level="3"] main img[data-media-kind="photo"]{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px}
body[data-template-level="3"] main img[data-media-kind="document"]{max-width:100%;height:auto;object-fit:contain}
body[data-template-level] :is(img,video){max-width:100%}
body[data-template-level] :is(.table-wrap,.table-scroll){max-width:100%;overflow-x:auto}
body[data-template-level] :is(a,button):focus-visible{outline:3px solid #b67929;outline-offset:3px}
@media(max-width:900px) and (min-width:721px){body[data-template-level="2"] [data-catalog-grid]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){
body[data-template-level]:not([data-template-level="1"]) .wrap{width:calc(100% - 30px)}
body[data-template-level]:not([data-template-level="1"]) :is(.hero,.intro):has(h1){padding:18px 0}
body[data-template-level]:not([data-template-level="1"]) h1{font-size:28px}
body[data-template-level]:not([data-template-level="1"]) :is(.hero,.intro):has(h1) p{font-size:16px}
body[data-template-level="2"] [data-catalog-grid]{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
body[data-template-level="2"] .catalog-card :is(.catalog-media,img){aspect-ratio:8/3!important}
body[data-template-level="2"] .catalog-card .catalog-copy{padding:14px 16px!important}
body[data-template-level="2"] .catalog-copy :is(h2,h3,.home-product-title,.copy>strong){font-size:21px!important}
body[data-template-level="3"] h2{font-size:24px}body[data-template-level="3"] h3{font-size:20px}
}
}
@media screen{body[data-template-level="2"] .catalog-card :is(.catalog-media,img){max-height:none!important;max-width:100%!important}}
/* 2026-10-23: clear typography and restrained colour after the reference review. */
@media screen{
body[data-template-level]{--template-ink:#193f45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:#f6f8f7}
body[data-template-level] :is(h1,h2,h3){text-wrap:pretty}
body[data-template-level="2"] .catalog-copy :is(h2,h3,.home-product-title,.copy>strong){font-weight:750!important;color:#193f45!important}
body[data-template-level="2"] .catalog-copy p{font-size:17px!important;line-height:1.75!important;color:#425f65!important}
body[data-template-level="2"] .catalog-copy :is(.price,.money){color:#98513b!important;font-weight:750!important}
body[data-template-level="3"] main :is(p,li,dd){font-size:17px;line-height:1.8;color:#294c53}
body[data-template-level="3"] :is(.panel,.section,.box)>h2{padding:0 0 10px 12px;border-left:3px solid #8bb7ac;border-bottom:1px solid #e3ece8;color:#193f45;letter-spacing:.01em}
body[data-template-level="3"] .day{padding:16px 0;border-top:1px solid #e3ece8}
body[data-template-level="3"] .day h3{background:#eef5f1;border-radius:7px;padding:8px 12px;font-size:20px;color:#205b55;line-height:1.5}
body[data-template-level="3"] :is(.small,.photo-note,.scroll-help){color:#4b6469;font-size:15px;line-height:1.7}
body[data-template-level="3"] .price{color:#98513b}
body[data-template-level] img{image-rendering:auto}
.product-section-nav{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;background:#f6f8f7f5;border-bottom:1px solid #dce8e2;backdrop-filter:blur(8px)}
.product-section-nav a{display:block;background:white;border:1px solid #cfdfd8;border-radius:8px;padding:8px 12px;color:#205b55;text-decoration:none;font-size:16px;font-weight:750}
.product-section-nav a:hover{background:#eaf3ee}
body[data-template-level] :is(section[id],div[id]){scroll-margin-top:86px}
@media(max-width:720px){body[data-template-level="3"] main :is(p,li,dd){font-size:17px;line-height:1.8}.product-section-nav{gap:6px}.product-section-nav a{font-size:15px;padding:8px 10px}body[data-template-level="2"] .catalog-copy p{font-size:16px!important}}
}

/* A photo and its caption have separate, continuous edges at each level. */
@media screen {
 body[data-template-level="1"] .home-product-photo + .home-product-copy,
 body[data-template-level="2"] .catalog-media + .catalog-copy {
  border-top:1px solid #c5d9d6;
 }
}

/* One product = one closed frame around its photo and all of its copy. */
@media screen {
 body[data-template-level="1"] .home-catalog-section .home-catalog-panel a.home-product-card,
 body[data-template-level="2"] .catalog-card {
  border:1px solid #9eafb6!important;
  box-shadow:0 2px 8px rgba(24,60,73,.08)!important;
  background:#fff!important;
 }
 body[data-template-level="1"] .home-product-photo + .home-product-copy,
 body[data-template-level="2"] .catalog-media + .catalog-copy {
  border-top:1px solid #afc1c8;
 }
 body[data-template-level="1"] .home-product-copy,
 body[data-template-level="2"] .catalog-copy {
  border-left:0;border-right:0;border-bottom:0;
 }
}

/* Readable utility controls and phone links across the existing header templates. */
@media screen {
 #siteLanguage {font-size:16px!important;line-height:1.4!important;min-height:38px!important;}
 body[data-template-level="1"] .utility-actions .language-picker #siteLanguage {
  width:100px!important;min-width:100px!important;max-width:118px!important;height:38px!important;
 }
 body[data-template-level="3"]:has(#flightForm) .hero small {color:#246b86!important;}
 body[data-template-level="1"] .brand-contact .brand-phones {font-size:21px!important;font-weight:400;}
 body[data-template-level]:not([data-template-level="1"]) header:not(.pe-header) a[href^="tel:"] {font-size:18px!important;font-weight:400!important;color:#2c64ad;line-height:1.45;}
 body[data-template-level]:not([data-template-level="1"]) footer a[href^="tel:"] {font-size:17px!important;line-height:1.5;}
}
@media screen and (max-width:700px) {
 body[data-template-level="1"] .brand-contact .brand-phones {font-size:17px!important;gap:12px;}
}

@media screen {
 .site-contact-phones {display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px 18px;padding:7px 16px;background:#eaf5fc;border-top:1px solid #c1ddeb;color:#0b354f;}
 body[data-template-level]:not([data-template-level="1"]) header .site-contact-phones a[href^="tel:"] {font-size:18px!important;font-weight:400;color:#2c64ad;text-decoration:none;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;}
}
@media print {.site-contact-phones{display:none!important}}

/* Detail artwork keeps its own size instead of stretching to a long itinerary. */
@media screen {
 body[data-template-level="3"] :is(.hero,.intro):has(h1){min-height:0;height:auto;}
 body[data-template-level="3"] .journey-layout{align-items:start;}
 body[data-template-level="3"] .journey-art{align-self:start;min-height:0;height:auto;padding:0;gap:0;background:#fff;color:var(--template-ink);border:1px solid var(--template-edge);border-radius:12px;}
 body[data-template-level="3"] .journey-art::before{display:none;}
 body[data-template-level="3"] .journey-art .journey-cover-photo{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:0;}
 body[data-template-level="3"] .journey-cover-copy{padding:20px;}
 body[data-template-level="3"] .journey-art .eyebrow{color:#88602c;font-size:14px;}
 body[data-template-level="3"] .journey-art h2{font-size:26px;line-height:1.35;margin:10px 0;}
 body[data-template-level="3"] .journey-art p{color:#294c53;font-size:17px;line-height:1.7;}
 body[data-template-level="3"] .journey-art .journey-route{margin-top:16px;padding-top:12px;border-top:1px solid var(--template-edge);color:#425f65;font-size:15px;font-weight:400;}
 body[data-template-level="3"] .itinerary-head>a{max-width:100%;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;}
}
@media screen and (max-width:700px) {
 body[data-template-level="3"] .journey-cover-copy{padding:16px;}
 body[data-template-level="3"] .journey-art h2{font-size:24px;line-height:1.3;}
 body[data-template-level="3"] .journey-art p{font-size:16px;line-height:1.6;}
}

/* Shared, compact company identity for category and product browsing pages. */
@media screen {
 body[data-template-level] > header.site-inner-header {display:block!important;position:relative!important;inset:auto!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;height:auto!important;min-height:0!important;background:#eaf5fc!important;border:0!important;border-bottom:1px solid #bdd6e8!important;border-radius:0!important;box-shadow:none!important;color:#1553a4!important;}
 body[data-template-level] .site-inner-header * {box-sizing:border-box;}
 body[data-template-level] .site-inner-header .inner-utility {background:#087ca4;padding:0;margin:0;border:0;}
 body[data-template-level] .site-inner-header .inner-utility-content {width:min(1100px,calc(100% - 32px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:3px 0;}
 body[data-template-level] .site-inner-header .inner-home {display:inline-flex;align-items:center;min-height:38px;padding:0 4px;color:white!important;font:400 16px/1.4 var(--site-text-font,system-ui);text-decoration:none;border:0;background:none;}
 body[data-template-level] .site-inner-header .inner-language {display:flex;align-items:center;gap:10px;margin:0;color:white;font:400 14px/1.4 var(--site-text-font,system-ui);}
 body[data-template-level] .site-inner-header #siteLanguage {appearance:auto;width:112px;min-width:112px;max-width:120px;height:38px;margin:0;padding:4px 6px;border:1px solid #ffffff80;border-radius:7px;color:white;background:#087ca4;font:400 16px/1.4 var(--site-text-font,system-ui);}
 body[data-template-level] .site-inner-header #siteLanguage option {color:#183f58;background:white;}
 body[data-template-level] .site-inner-header .inner-brand-content {display:flex;align-items:center;justify-content:space-between;gap:28px;width:min(1100px,calc(100% - 32px));margin:0 auto;padding:14px 0;}
 body[data-template-level] .site-inner-header .inner-logo {display:block!important;flex:0 1 420px;min-width:0;max-width:420px;width:100%;margin:0;padding:0;border:0;background:none;}
 body[data-template-level] .site-inner-header .inner-logo img {display:block!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:1800/392;object-fit:contain!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;}
 body[data-template-level] .site-inner-header .inner-contact {display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex:none;margin:0;padding:0;}
 body[data-template-level] .site-inner-header .inner-phones {display:flex;align-items:center;justify-content:center;gap:20px;margin:0;padding:0;}
 body[data-template-level] .site-inner-header .inner-phones a[href^="tel:"] {display:inline-flex;align-items:center;min-height:34px;padding:0!important;margin:0!important;border:0!important;background:none!important;color:#2c64ad!important;font:400 18px/1.4 var(--site-text-font,system-ui)!important;white-space:nowrap;letter-spacing:.01em;text-decoration:none!important;font-variant-numeric:lining-nums tabular-nums;}
 body[data-template-level] .site-inner-header .inner-website {display:block;padding:0;margin:0;border:0;background:none;color:#386db2!important;font:400 15px/1.4 var(--site-text-font,system-ui);text-decoration:none;}
 body[data-template-level] .site-inner-header a:focus-visible,body[data-template-level] .site-inner-header select:focus-visible {outline:2px solid #1553a4;outline-offset:3px;}
 body[data-template-level] .site-return-strip {padding:0 max(16px,calc((100vw - 1100px)/2))!important;background:#f2f7fb!important;border-bottom:1px solid #cadce9!important;margin:0!important;}
 body[data-template-level] .site-return-strip a {min-height:40px!important;padding:5px 0!important;color:#245985!important;font-weight:400!important;font-size:15px!important;}
 body[data-template-level="1"] .utility-actions .menu-caption {font-size:16px!important;font-weight:500;}
}
@media screen and (max-width:700px) {
 body[data-template-level] .site-inner-header .inner-language-label {display:none;}
 body[data-template-level] .site-inner-header .inner-brand-content {flex-direction:column;gap:7px;padding:12px 0 9px;}
 body[data-template-level] .site-inner-header .inner-logo {flex:none;width:min(340px,100%);max-width:340px;}
 body[data-template-level] .site-inner-header .inner-contact {width:100%;align-items:center;gap:0;}
 body[data-template-level] .site-inner-header .inner-phones {gap:18px;}
 body[data-template-level] .site-inner-header .inner-phones a[href^="tel:"] {font-size:18px!important;min-height:32px;}
 body[data-template-level] .site-inner-header .inner-website {font-size:13px;line-height:1.4;}
}
@media print {body[data-template-level] > header.site-inner-header {display:none!important;}}
@media screen {body[data-template-level] > header.site-inner-header {background:#fff!important;}}

/* Company website follows the English name; telephone numbers occupy the next line. */
@media screen {
 body[data-template-level] .site-inner-header .inner-brand-content{flex-direction:column;gap:5px;padding:12px 0 9px;}
 body[data-template-level] .site-inner-header .inner-identity{width:min(420px,100%);}
 body[data-template-level] .site-inner-header .inner-logo{width:100%;max-width:none;}
 body[data-template-level] .site-inner-header .inner-website{padding-left:29%;text-align:center;font-size:15px;line-height:1.5;}
 body[data-template-level] .site-inner-header .inner-contact{width:min(420px,100%);align-items:center;}
 body[data-template-level] .site-return-strip a{color:#164c78!important;font-weight:650!important;font-size:16px!important;min-height:44px!important;display:inline-flex;align-items:center;text-decoration:none;}
 body[data-template-level] .site-return-strip a:focus-visible{outline:2px solid #164c78;outline-offset:2px;}
}
@media screen and (max-width:700px){
 body[data-template-level] .site-inner-header .inner-identity{width:min(340px,100%);}
 body[data-template-level] .site-inner-header .inner-website{font-size:14px;}
}

/* Keep both phone numbers together as one centered group. */
@media screen {
 body[data-template-level] .site-inner-header .inner-phones{width:auto;max-width:100%;justify-content:center;gap:18px;}
 body[data-template-level] .site-inner-header .inner-brand-content{gap:2px;padding-bottom:10px;}
 body[data-template-level] .site-inner-header .inner-phones a[href^="tel:"]{line-height:1.5!important;min-height:36px;}
}
@media screen and (max-width:700px){
 body[data-template-level] .site-inner-header .inner-contact{width:min(340px,100%);}
 body[data-template-level] .site-inner-header .inner-phones{width:auto;justify-content:center;gap:18px;}
}

/* English destination labels must wrap within the tablet grid. */
@media screen and (min-width:701px) and (max-width:960px){html[lang="en"] body[data-template-level="1"] .destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[lang="en"] body[data-template-level="1"] .destination{min-width:0;overflow-wrap:anywhere}}
