/* Connected travel CTA/FAQ widgets and positively identified legacy sections. */
.ppt-site-cta,.ppt-site-faqs,.ppt-site-empty { box-sizing:border-box; color:var(--ppt-site-text,#173237); }
.ppt-site-cta *,.ppt-site-faqs *,.ppt-site-empty * { box-sizing:border-box; }
.ppt-site-cta { display:flex; align-items:stretch; overflow:hidden; min-width:0; margin:24px 0; border:1px solid #dfe8e5; border-radius:var(--ppt-site-radius,20px); background:var(--ppt-site-bg,#f1f6f4); }
.ppt-site-cta-image { position:relative; flex:0 0 43%; min-width:0; min-height:300px; overflow:hidden; }
.ppt-site-cta-image img { position:absolute; inset:0; display:block; width:100%; height:100%; max-width:none; object-fit:cover; }
.ppt-site-cta-copy { flex:1; min-width:0; padding:clamp(24px,4vw,48px); align-self:center; }
.ppt-site-eyebrow { display:block; margin:0 0 14px; color:var(--ppt-site-accent,#064e56); font-size:10px; font-weight:700; line-height:1.6; letter-spacing:.13em; text-transform:uppercase; overflow-wrap:anywhere; }
.ppt-site-cta-title { margin:0 0 14px; color:var(--ppt-site-text,#173237); font-size:clamp(27px,3vw,40px); line-height:1.14; font-weight:650; letter-spacing:-.025em; overflow-wrap:anywhere; }
.ppt-site-cta-text,.ppt-site-faq-intro { margin:0 0 22px; color:var(--ppt-site-muted,#65777b); font-size:14px; line-height:1.75; overflow-wrap:anywhere; }
.ppt-site-cta-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.ppt-site-button-primary,.ppt-site-button-secondary { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; max-width:100%; padding:12px 18px; border:1px solid transparent; border-radius:8px; background:var(--ppt-site-button-bg,#064e56); color:var(--ppt-site-button-text,#fff)!important; font-size:12px; font-weight:650; line-height:1.4; text-align:center; text-decoration:none!important; overflow-wrap:anywhere; transition:transform .16s ease,box-shadow .16s ease; }
.ppt-site-button-secondary { border-color:#cbdad6; color:var(--ppt-site-accent,#064e56)!important; background:transparent; }
.ppt-site-button-primary:hover,.ppt-site-button-secondary:hover { transform:translateY(-1px); box-shadow:0 4px 12px rgb(11 54 58 / 10%); }
.ppt-site-cta :is(a,button):focus-visible,.ppt-site-faqs summary:focus-visible,.ppt-site-empty a:focus-visible { outline:3px solid var(--ppt-site-accent,#064e56); outline-offset:4px; }
.ppt-site-faqs { width:100%; max-width:1100px; margin:clamp(28px,6vw,64px) auto; padding:0 20px; }
.ppt-site-faq-heading { max-width:760px; margin:0 0 14px; color:var(--ppt-site-text,#173237); font-size:clamp(28px,4vw,44px); font-weight:650; line-height:1.2; letter-spacing:-.025em; }
.ppt-site-faq-intro { max-width:740px; }
.ppt-site-faq-list { display:grid; gap:10px; }
.ppt-site-faq-item { min-width:0; border:1px solid #dfe8e5; border-radius:12px; background:var(--ppt-site-bg,#f7faf8); }
.ppt-site-faq-item > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 22px; color:var(--ppt-site-text,#173237); font-size:15px; font-weight:600; line-height:1.5; list-style:none; cursor:pointer; overflow-wrap:anywhere; }
.ppt-site-faq-item > summary::-webkit-details-marker { display:none; }
.ppt-site-faq-item > summary::after { content:'+'; flex:none; color:var(--ppt-site-accent,#064e56); font-size:23px; font-weight:400; }
.ppt-site-faq-item[open] > summary::after { content:'−'; }
.ppt-site-faq-answer { padding:0 22px 22px; color:var(--ppt-site-muted,#65777b); font-size:14px; line-height:1.8; white-space:pre-line; overflow-wrap:anywhere; }
.ppt-site-faq-answer p { margin:0; }
.ppt-site-faqs > .ppt-site-cta { margin-top:30px; }
.ppt-managed-page-heading { max-width:1100px; margin:0 auto; padding:clamp(32px,6vw,64px) 20px 0; }
.ppt-managed-page-heading h1 { max-width:850px; margin:0 0 18px; color:var(--ppt-site-text,#173237); font-size:clamp(34px,5vw,56px); font-weight:650; line-height:1.13; letter-spacing:-.03em; }
.ppt-managed-page-heading > p:last-child { max-width:760px; color:var(--ppt-site-muted,#65777b); font-size:15px; line-height:1.8; }
.ppt-managed-faq-page > .ppt-site-cta,.ppt-managed-gateway-page > .ppt-site-cta { max-width:1100px; margin:36px auto; }
.ppt-site-empty { max-width:900px; margin:40px auto; padding:clamp(24px,5vw,54px); border:1px solid #dfe8e5; border-radius:20px; background:var(--ppt-site-bg,#f1f6f4); text-align:center; }
.ppt-site-empty h2 { margin:0 0 14px; font-size:clamp(26px,4vw,38px); line-height:1.2; }
.ppt-site-empty p { max-width:620px; margin:0 auto 24px; color:var(--ppt-site-muted,#65777b); line-height:1.8; }
body.ppt-catalog-design .ppt-site-newsletter { width:100%; max-width:1200px; margin:40px auto!important; overflow:hidden; border:1px solid #dfe8e5; border-radius:24px; background:var(--ppt-site-bg,#f1f6f4); }
body.ppt-catalog-design .ppt-site-newsletter > .elementor-container { display:grid!important; grid-template-columns:43% minmax(0,1fr); gap:0; }
body.ppt-catalog-design .ppt-site-newsletter > .elementor-container > .elementor-column { width:100%!important; min-width:0; }
body.ppt-catalog-design .ppt-site-newsletter-visual { min-height:320px; }
body.ppt-catalog-design .ppt-site-newsletter-visual > .elementor-widget-wrap { min-height:100%; }
body.ppt-catalog-design .ppt-site-newsletter-visual :is(.elementor-widget-image,.elementor-widget-container) { width:100%; height:100%; margin:0!important; padding:0!important; }
body.ppt-catalog-design .ppt-site-newsletter-visual img { display:block; width:100%; height:100%; max-width:none; object-fit:cover; }
body.ppt-catalog-design .ppt-site-newsletter-copy > .elementor-widget-wrap { padding:0!important; background:transparent!important; align-content:center; }
body.ppt-catalog-design .ppt-site-newsletter-copy .elementor-widget-shortcode { width:100%; margin:0!important; }
body.ppt-catalog-design .ppt-site-newsletter-copy .ppt-site-cta { margin:0; border:0; border-radius:0; box-shadow:none; min-height:320px; }
body.ppt-catalog-design .ppt-site-newsletter [hidden],body.ppt-catalog-design .ppt-site-managed-footer [hidden] { display:none!important; }
body.ppt-catalog-design .ppt-site-managed-footer { margin-top:44px; border-top:1px solid #e1e8e5; background:#f5f8f6; color:var(--ppt-site-text,#173237); }
body.ppt-catalog-design .ppt-site-managed-footer [data-id="79e2771e"] { padding-top:0!important; }
.ppt-site-footer-brand { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px 24px; max-width:1200px; margin:0 auto; padding:34px 24px 20px; border-bottom:1px solid #e2e9e6; }
.ppt-site-footer-brand > a { color:var(--ppt-site-text,#173237); font-size:20px; font-weight:650; letter-spacing:-.02em; text-decoration:none; }
.ppt-site-footer-brand > span { color:var(--ppt-site-muted,#65777b); font-size:12px; }
body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns { display:grid!important; grid-template-columns:repeat(var(--ppt-footer-columns,3),minmax(0,1fr)); gap:clamp(20px,5vw,64px); max-width:1200px; margin:0 auto; padding:28px 24px!important; }
body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns > .elementor-column { width:100%!important; min-width:0; }
body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns > .elementor-column > .elementor-widget-wrap { padding:0!important; }
body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns .elementor-widget-heading { margin-bottom:10px!important; }
body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns h2 { margin:0 0 12px!important; color:var(--ppt-site-text,#173237)!important; font-size:12px!important; font-weight:700!important; letter-spacing:.08em; text-transform:uppercase; }
body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns .elementor-heading-title,body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns a { color:var(--ppt-site-muted,#65777b); font-size:13px; line-height:1.7; text-decoration:none; overflow-wrap:anywhere; }
body.ppt-catalog-design .ppt-site-managed-footer a:hover { color:var(--ppt-site-accent,#064e56); text-decoration:underline; }
.ppt-site-footer-contact { display:grid; gap:8px; margin-top:14px; padding-top:14px; border-top:1px solid #e1e8e5; }
.ppt-site-author-hidden,.ppt-site-unclassified { display:none!important; }
.ppt-site-policy-unconfigured { color:#788583; cursor:help; text-decoration:none; border-bottom:1px dotted currentColor; }
.ppt-site-policy-note { display:block; margin-top:7px; font-size:11px; line-height:1.6; }
.ppt-site-faq-admin-row { padding:18px; margin:14px 0; border:1px solid var(--ppt-admin-border,#dfe7e7); border-radius:10px; background:#f8faf9; }
@media(max-width:767px) { .ppt-site-cta { flex-direction:column; } .ppt-site-cta-image { flex:auto; min-height:180px; height:190px; } .ppt-site-cta-copy { padding:26px; } .ppt-site-faqs { padding:0 14px; } .ppt-site-faq-item > summary { padding:17px; font-size:14px; } .ppt-site-faq-answer { padding:0 17px 18px; font-size:13px; } body.ppt-catalog-design .ppt-site-newsletter > .elementor-container { grid-template-columns:minmax(0,1fr); } body.ppt-catalog-design .ppt-site-newsletter-visual { min-height:190px; height:190px; } body.ppt-catalog-design .ppt-site-newsletter-copy .ppt-site-cta { min-height:0; } body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; } }
@media(max-width:480px) { .ppt-site-cta-actions { align-items:stretch; } .ppt-site-cta-actions > a { flex:1 1 140px; } .ppt-site-footer-brand { padding:26px 20px 18px; } body.ppt-catalog-design .ppt-site-managed-footer .ppt-site-footer-columns { grid-template-columns:minmax(0,1fr); padding:24px 20px!important; } }
@media(prefers-reduced-motion:reduce) { .ppt-site-button-primary,.ppt-site-button-secondary { transition:none; } }

/* Keep Traveler's original mobile inquiry close handler accessible. */
@media(max-width:991px) {
  body.single-st_tours .st-fixed-form-booking.open > .close-icon { display:flex!important; position:absolute!important; top:12px!important; right:12px!important; z-index:5; align-items:center; justify-content:center; width:36px; height:36px; padding:8px; border:1px solid #dfe8e5; border-radius:50%; background:#fff; box-shadow:0 2px 8px rgb(0 0 0 / 8%); cursor:pointer; }
  body.single-st_tours.admin-bar .st-fixed-form-booking.open > .close-icon { top:58px!important; }
  body.single-st_tours .st-fixed-form-booking.open > .close-icon:focus-visible { outline:3px solid #064e56; outline-offset:3px; }
  body.single-st_tours .st-fixed-form-booking.open > .close-icon svg { display:block; width:18px; height:18px; }
}
