/* Tours use their own layout, independent of the legacy Elementor dimensions. */
.ss-tour.elementor-section { padding:64px 24px; background:#fff; color:var(--ss-ink); }
.ss-tour.elementor-inner-section { padding:0; background:transparent; }
.ss-tour > .elementor-container { display:block; width:100%; max-width:1200px !important; margin-inline:auto; }
.ss-tour.elementor-inner-section > .elementor-container { max-width:100% !important; }
.ss-tour > .elementor-container > .elementor-column { width:100%; min-width:0; }
.ss-tour .elementor-widget-wrap { padding:0 !important; align-content:flex-start; }
.ss-tour .elementor-widget { width:100%; margin-bottom:20px; }
.ss-tour .elementor-widget:last-child { margin-bottom:0; }
.ss-tour :is(h1,h2,h3,h4,h5,.elementor-heading-title) { color:var(--ss-navy); text-align:left; text-transform:none; line-height:1.25; letter-spacing:-.5px; }
.ss-tour h1.elementor-heading-title { font-size:clamp(36px,3.6vw,52px); font-weight:700; line-height:1.1; letter-spacing:-1.2px; }
.ss-tour h2.elementor-heading-title { font-size:clamp(30px,3vw,40px); font-weight:700; line-height:1.2; }
.ss-tour h3.elementor-heading-title { font-size:22px; font-weight:650; }
.ss-tour .elementor-widget-text-editor { font-size:17px; line-height:1.7; color:var(--ss-ink); }
.ss-tour p { font-size:inherit; line-height:inherit; margin:0 0 16px; }
.ss-tour p:last-child { margin-bottom:0; }
.ss-tour p:empty { display:none; }
.ss-tour a { color:var(--ss-blue); text-underline-offset:3px; }
.ss-tour .elementor-button { color:#fff; background:var(--ss-blue); text-align:center; }
.ss-tour .elementor-button:hover { background:#0056bd; }
.ss-tour .elementor-widget-image-carousel { min-width:0; margin:0; }
.ss-tour .elementor-image-carousel-wrapper { width:100%; min-width:0; border-radius:18px; overflow:hidden; }
.ss-tour .swiper-slide-inner { display:block; aspect-ratio:16/10; overflow:hidden; }
.ss-tour .swiper-slide-inner img { display:block; width:100% !important; height:100% !important; object-fit:cover; }
.ss-tour .elementor-swiper-button { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#fff; color:var(--ss-navy); box-shadow:0 2px 12px #102b4420; font-size:16px; }
.ss-tour .elementor-swiper-button-prev { left:10px; }
.ss-tour .elementor-swiper-button-next { right:10px; }
.ss-tour .elementor-swiper-button :is(svg,i),.ss-detail-section .elementor-swiper-button :is(svg,i) { color:var(--ss-navy) !important; fill:var(--ss-navy) !important; width:18px; height:18px; }
.ss-tour-hero-image .swiper-slide-inner,.ss-tour-feature .swiper-slide-inner,.ss-detail-section:not(.ss-detail-story-grid) .swiper-slide-inner { border-radius:18px; }
.ss-tour .swiper-pagination-bullet-active { background:var(--ss-blue); }
.ss-tour .swiper-pagination { position:static; margin-top:10px; line-height:1; }
.ss-tour-hero > .elementor-container,
.ss-tour-feature > .elementor-container,
.ss-tour-form > .elementor-container,
.ss-tour-two-grid > .elementor-container,
.ss-tour-learning-outro > .elementor-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; align-items:center; }
.ss-tour-hero > .elementor-container > .elementor-column,
.ss-tour-feature > .elementor-container > .elementor-column,
.ss-tour-form > .elementor-container > .elementor-column,
.ss-tour-two-grid > .elementor-container > .elementor-column,
.ss-tour-learning-outro > .elementor-container > .elementor-column { width:auto; min-width:0; }
.ss-tour-hero { padding-top:56px !important; }
.ss-tour-hero .ss-tour-subtitle .elementor-heading-title { font-size:20px; line-height:1.45; font-weight:600; letter-spacing:0; }
.ss-tour-hero .elementor-widget-text-editor { font-size:17px; }
.ss-tour-hero .ss-tour-hero-image .swiper-slide-inner { aspect-ratio:4/3; }
.ss-tour-hero-photo { align-self:center; }
.ss-tour-cost { padding-top:20px !important; }
.ss-tour-two-grid > .elementor-container { gap:24px; align-items:stretch; }
.ss-tour-two-grid { margin:28px 0 !important; }
.ss-tour-panel > .elementor-widget-wrap { padding:28px !important; border:1px solid var(--ss-line); border-radius:20px; background:#fff; height:100%; }
.ss-tour-panel .elementor-widget-text-editor p { padding:12px 0; margin:0; border-bottom:1px solid var(--ss-line); }
.ss-tour-panel .elementor-widget-text-editor p:first-child { padding-top:0; }
.ss-tour-panel .elementor-widget-text-editor p:last-child { padding-bottom:0; border-bottom:0; }
.ss-tour-panel strong { font-weight:600; }
.ss-tour-note { padding:22px 26px; background:var(--ss-ice); border-left:3px solid var(--ss-blue); border-radius:0 14px 14px 0; }
.ss-tour-story-heading { padding-bottom:28px !important; }
.ss-tour-story-heading .elementor-widget-heading { margin-bottom:12px; }
.ss-tour-story-grid { padding-top:0 !important; }
.ss-tour-story-grid > .elementor-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.ss-tour-story-grid > .elementor-container > .elementor-column { width:auto; min-width:0; }
.ss-tour-step-card > .elementor-widget-wrap { padding:0 !important; display:flex; flex-direction:column; flex-wrap:nowrap; border:1px solid var(--ss-line); border-radius:20px; overflow:hidden; height:100%; }
.ss-tour-step-card .elementor-widget-image-carousel { margin:0; }
.ss-tour-step-card .elementor-image-carousel-wrapper { border-radius:0; }
.ss-tour-step-card .elementor-widget-text-editor { font-size:16px; line-height:1.65; margin:0; }
.ss-tour-step-card .elementor-widget-text-editor > .elementor-widget-container { padding:22px; }
.ss-tour-step-number { display:inline; color:var(--ss-blue); font-size:25px; font-weight:700; line-height:1; margin-right:6px; }
.ss-tour-ice.elementor-section { background:var(--ss-ice); }
.ss-tour-feature .elementor-widget-text-editor { max-width:580px; }
.ss-tour-routes-intro h2 { max-width:540px; }
.ss-tour-route-group-heading .elementor-heading-title { font-size:30px !important; letter-spacing:-.5px; }
.ss-tour-routes .ss-tour-two-grid { margin-bottom:0 !important; }
.ss-tour-timetable h3 { color:var(--ss-blue); }
.ss-tour-timetable .elementor-widget-text-editor { font-size:16px; }
.ss-tour-timetable a { overflow-wrap:anywhere; }
.ss-tour-faq .elementor-toggle-item { border-bottom:1px solid var(--ss-line); }
.ss-tour-faq .elementor-tab-title { padding:22px 0; border:0; font-size:19px; font-weight:600; line-height:1.5; }
.ss-tour-faq .elementor-tab-title a { color:var(--ss-navy); font-size:inherit; }
.ss-tour-faq .elementor-toggle-icon { color:var(--ss-blue); margin-left:18px; }
.ss-tour-faq .elementor-tab-content { padding:0 34px 24px 0; border:0; font-size:17px; line-height:1.7; }
.ss-tour-learning > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-text-editor { max-width:1020px; }
.ss-tour-lesson > .elementor-container { display:grid; grid-template-columns:160px minmax(0,1fr); gap:28px; border-bottom:1px solid #ccdeee; padding:24px 0; }
.ss-tour-lesson > .elementor-container > .elementor-column { width:auto; }
.ss-tour-lesson h3.elementor-heading-title { font-size:20px; line-height:1.45; color:var(--ss-blue); letter-spacing:0; }
.ss-tour-lesson .elementor-widget-text-editor { font-size:17px; }
.ss-tour-learning-outro { margin-top:40px !important; }
.ss-tour-form { padding-block:72px !important; }
.ss-tour-form > .elementor-container { align-items:start; }
.ss-tour-form-panel > .elementor-widget-wrap { padding:28px !important; background:var(--ss-ice); border:1px solid var(--ss-line); border-radius:20px; }
.ss-tour-form .elementor-field-label { color:var(--ss-ink); }
.ss-tour-form input { background:#fff; color:var(--ss-ink); }
.ss-tour-form .elementor-button { width:100%; }
.ss-tour-consent.elementor-widget-text-editor { font-size:13px; line-height:1.6; color:var(--ss-muted); }
.ss-tour-integration.elementor-section { padding:0; height:0; min-height:0; }
/* Common information layout for the other existing tour pages. */
.ss-detail-section.elementor-section { padding:56px 24px !important; }
.ss-detail-layout.elementor-inner-section { padding:0 !important; margin:0 !important; }
.ss-detail-layout > .elementor-container,.ss-detail-section > .elementor-container { width:100%; max-width:1200px !important; margin-inline:auto; gap:28px; }
.ss-detail-layout.elementor-inner-section > .elementor-container { max-width:100% !important; }
.ss-detail-layout .elementor-widget-wrap,.ss-detail-section .elementor-widget-wrap { padding:0 !important; margin:0 !important; align-content:flex-start; }
.ss-detail-layout > .elementor-container > .elementor-column { min-width:0; }
.ss-detail-layout[class*="ss-detail-grid-"] > .elementor-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.ss-detail-layout[class*="ss-detail-grid-"] > .elementor-container > .elementor-column { width:auto !important; }
.ss-detail-layout.ss-detail-grid-2 > .elementor-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.ss-detail-layout.ss-detail-grid-3 > .elementor-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.ss-detail-layout.ss-detail-grid-4 > .elementor-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
.ss-detail-layout:is(.ss-detail-grid-2,.ss-detail-grid-3,.ss-detail-grid-4) > .elementor-container > .elementor-column { width:auto !important; }
.ss-detail-section:not(.ss-detail-hero) :is(h1,h2,h3,h4,h5,p,li,label,.elementor-heading-title,.elementor-icon-list-text) { color:var(--ss-ink) !important; }
.ss-detail-section .elementor-widget { margin-bottom:20px; }
.ss-detail-section .elementor-widget:last-child { margin-bottom:0; }
.ss-detail-section h2.elementor-heading-title { font-size:36px; line-height:1.25; letter-spacing:-.6px; font-weight:700; }
.ss-detail-section h3.elementor-heading-title { font-size:24px; line-height:1.35; font-weight:650; }
.ss-detail-section .elementor-widget-text-editor,.ss-detail-section .elementor-widget-text-editor :is(p,li,span) { font-size:17px !important; line-height:1.7 !important; }
.ss-detail-section .elementor-widget-text-editor p { margin-bottom:16px; }
.ss-detail-section .elementor-widget-text-editor p:last-child { margin-bottom:0; }
.ss-detail-section .elementor-button { background:var(--ss-blue); color:white; }
.ss-detail-section .elementor-widget-image-carousel { min-width:0; }
.ss-detail-section .elementor-image-carousel-wrapper { border-radius:18px; overflow:hidden; }
.ss-detail-section .swiper-slide-inner { height:clamp(240px,32vw,420px); overflow:hidden; }
.ss-detail-section .swiper-slide-inner img { width:100% !important; height:100% !important; object-fit:cover; display:block; }
.ss-detail-section .elementor-swiper-button { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:white; color:var(--ss-navy); box-shadow:0 2px 12px #102b4420; font-size:16px; }
.ss-detail-section .elementor-swiper-button-prev { left:10px; }.ss-detail-section .elementor-swiper-button-next { right:10px; }
.ss-detail-section .swiper-pagination { position:static; margin-top:10px; line-height:1; }
.ss-detail-section .swiper-pagination-bullet-active { background:var(--ss-blue); }
.ss-detail-hero.elementor-section { padding-block:72px !important; }
.ss-detail-hero .elementor-widget-wrap { align-content:center; }
.ss-detail-hero h1.elementor-heading-title { font-size:clamp(36px,4vw,56px); line-height:1.12; letter-spacing:-1px; max-width:1080px; margin-inline:auto; }
.ss-detail-hero .elementor-heading-title,.ss-detail-hero .elementor-widget-text-editor { color:#fff !important; text-align:center; }
.ss-detail-hero .elementor-widget-heading:not(:has(h1)) .elementor-heading-title { font-size:clamp(21px,2.4vw,30px); line-height:1.4; max-width:960px; margin-inline:auto; }
.ss-detail-hero .elementor-widget-text-editor,.ss-detail-hero .elementor-widget-text-editor :is(p,li,span) { font-size:20px !important; line-height:1.65 !important; max-width:900px; margin-inline:auto; }
.ss-detail-hero .elementor-widget-button { text-align:center; }
.ss-detail-story-grid > .elementor-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.ss-detail-story-grid > .elementor-container > .elementor-column { width:auto !important; min-width:0; }
.ss-detail-story-heading.elementor-section { padding-bottom:28px !important; }
.ss-detail-story-grid.elementor-section { padding-top:0 !important; }
.ss-detail-step > .elementor-widget-wrap { display:flex; flex-direction:column; flex-wrap:nowrap; padding:0 !important; border:1px solid var(--ss-line); border-radius:20px; overflow:hidden; height:100%; }
.ss-detail-step .elementor-widget-image-carousel { margin:0; }
.ss-detail-step .elementor-image-carousel-wrapper { border-radius:0; }
.ss-detail-step .swiper-slide-inner { height:auto; aspect-ratio:16/10; }
.ss-detail-step .elementor-widget-text-editor { margin:0; }
.ss-detail-step .elementor-widget-text-editor > .elementor-widget-container { padding:22px; }
.ss-detail-step .elementor-widget-text-editor :is(p,li,span) { font-size:16px !important; }
.ss-detail-step .elementor-widget-text-editor .ss-tour-step-number { font-size:25px !important; color:var(--ss-blue) !important; }
.ss-detail-instructors-grid > .elementor-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.ss-detail-instructors-grid > .elementor-container > .elementor-column { width:auto !important; min-width:0; }
.ss-detail-instructor > .elementor-widget-wrap { padding:24px !important; border:1px solid var(--ss-line); border-radius:20px; background:#fff; height:100%; }
.ss-detail-instructor .elementor-widget-image { text-align:left; }
.ss-detail-instructor .elementor-widget-image img { width:112px !important; height:112px !important; border-radius:50% !important; object-fit:cover; }
.ss-detail-instructor .elementor-heading-title { font-size:23px !important; text-align:left; }
.ss-detail-instructor .elementor-widget-text-editor { font-size:16px !important; }
.ss-detail-offers .elementor-widget-image img { width:100% !important; height:240px !important; object-fit:cover; border-radius:18px; }
.ss-detail-offers .elementor-heading-title { font-size:24px !important; line-height:1.3; min-height:62px; }
.ss-detail-section .elementor-tab-title { padding:22px 0; border:0; font-size:19px; line-height:1.5; font-weight:600; }
.ss-detail-section .elementor-tab-title a { color:var(--ss-navy); }
.ss-detail-section .elementor-tab-content { padding:0 30px 24px 0; border:0; font-size:17px; line-height:1.7; }
.ss-detail-section .elementor-toggle-item { border-bottom:1px solid var(--ss-line); }
.ss-detail-section .elementor-form { max-width:560px; margin-inline:auto; }
.ss-detail-utility.elementor-section,.ss-utility.elementor-section { padding:0 !important; min-height:0 !important; }
body:is(.page-id-669,.page-id-386) .page-header { width:100%; max-width:1248px; padding:0 24px; margin:40px auto 24px; }
.ss-document-section.elementor-section { padding-block:24px !important; }
.ss-document-section .elementor-widget-text-editor { font-size:16px; }
.ss-document-section .elementor-widget-text-editor p { font-size:16px; line-height:1.5; margin-bottom:8px; }
.ss-utility.ss-document-section.elementor-section { padding:0 !important; height:0; min-height:0; }
body:is(.page-id-669,.page-id-386) .page-header h1 { font-size:40px; font-weight:700; line-height:1.2; color:var(--ss-navy); letter-spacing:-.6px; }
body.page-id-386 .elementor-top-section { padding:0 24px 48px; }
body.page-id-386 .elementor-container { max-width:1200px; }
@media (max-width:1023px) {
 .ss-tour-hero > .elementor-container,.ss-tour-feature > .elementor-container,.ss-tour-form > .elementor-container,.ss-tour-learning-outro > .elementor-container { gap:28px; }
 .ss-tour-story-grid > .elementor-container { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ss-tour h1.elementor-heading-title { font-size:40px; }
 .ss-tour-panel > .elementor-widget-wrap { padding:24px !important; }
 .ss-detail-story-grid > .elementor-container { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ss-detail-instructors-grid > .elementor-container { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:767px) {
 .ss-tour.elementor-section { padding:40px 20px; }
 .ss-tour.elementor-inner-section { padding:0; }
 .ss-tour-hero > .elementor-container,.ss-tour-feature > .elementor-container,.ss-tour-form > .elementor-container,.ss-tour-two-grid > .elementor-container,.ss-tour-learning-outro > .elementor-container { grid-template-columns:1fr; gap:24px; }
 .ss-tour h1.elementor-heading-title { font-size:36px; line-height:1.15; letter-spacing:-.8px; }
 .ss-tour h2.elementor-heading-title { font-size:30px; line-height:1.25; }
 .ss-tour h3.elementor-heading-title { font-size:21px; }
 .ss-tour .elementor-widget-text-editor { font-size:16px; }
 .ss-tour-hero { padding-top:36px !important; }
 .ss-tour-hero .ss-tour-subtitle .elementor-heading-title { font-size:19px; }
 .ss-tour-hero .elementor-widget-text-editor { font-size:16px; }
 .ss-tour-cost { padding-top:16px !important; }
 .ss-tour-panel > .elementor-widget-wrap { padding:22px !important; }
 .ss-tour-story-grid > .elementor-container { grid-template-columns:1fr; gap:24px; }
 .ss-tour-story-grid { padding-top:0 !important; }
 .ss-tour-story-heading { padding-bottom:24px !important; }
 .ss-tour-note { padding:20px; }
 .ss-tour-route-group-heading .elementor-heading-title { font-size:25px !important; }
 .ss-tour-faq .elementor-tab-title { padding:20px 0; font-size:17px; }
 .ss-tour-faq .elementor-tab-content { font-size:16px; }
 .ss-tour-lesson > .elementor-container { grid-template-columns:1fr; gap:10px; padding:22px 0; }
 .ss-tour-lesson .elementor-widget-text-editor { font-size:16px; }
 .ss-tour-form { padding-block:44px !important; }
 .ss-tour-form-panel > .elementor-widget-wrap { padding:22px !important; }
 .ss-tour-consent.elementor-widget-text-editor { font-size:13px; }
 .ss-tour-integration.elementor-section { padding:0; }
 .ss-detail-section.elementor-section { padding:40px 20px !important; }
 .ss-detail-layout.elementor-inner-section { padding:0 !important; }
 .ss-detail-layout[class*="ss-detail-grid-"] > .elementor-container,.ss-detail-story-grid > .elementor-container,.ss-detail-instructors-grid > .elementor-container { grid-template-columns:1fr; gap:24px; }
 .ss-detail-section h2.elementor-heading-title { font-size:30px; }
 .ss-detail-section h3.elementor-heading-title { font-size:22px; }
 .ss-detail-section .elementor-widget-text-editor,.ss-detail-section .elementor-widget-text-editor :is(p,li,span) { font-size:16px !important; }
 .ss-detail-hero.elementor-section { padding-block:44px !important; }
 .ss-detail-hero h1.elementor-heading-title { font-size:34px; }
 .ss-detail-hero .elementor-widget-heading:not(:has(h1)) .elementor-heading-title { font-size:21px; }
 .ss-detail-hero .elementor-widget-text-editor,.ss-detail-hero .elementor-widget-text-editor :is(p,li,span) { font-size:18px !important; }
 .ss-detail-section .swiper-slide-inner { height:250px; }
 .ss-detail-step .swiper-slide-inner { height:auto; }
 .ss-detail-offers .elementor-heading-title { min-height:0; }
 .ss-detail-utility.elementor-section,.ss-utility.elementor-section { padding:0 !important; }
 .ss-detail-story-heading.elementor-section { padding-bottom:24px !important; }
 .ss-detail-story-grid.elementor-section { padding-top:0 !important; }
 body:is(.page-id-669,.page-id-386) .page-header { padding-inline:20px; margin-block:28px 16px; }
 body.page-id-386 .elementor-top-section { padding:0 20px 36px; }
}
