/* Port listing: native Elementor containers and widgets. */
.tt-port { --blue:#005BAA; --ink:#111827; --navy:#071D3B; --muted:#667085; --warm:#F6F5F2; --line:#dedde0; color:var(--ink); font:17px/1.65 Helvetica,Arial,sans-serif; }
.tt-port *, .tt-port *::before, .tt-port *::after {box-sizing:border-box;}
.tt-port .port-inner {width:min(78%,1080px);margin-inline:auto;}
.tt-port h1,.tt-port h2,.tt-port h3,.tt-port p {margin:0;}
.tt-port h1,.tt-port h2,.tt-port h3 {font-family:Manrope,Arial,sans-serif;color:var(--ink);}
.tt-port a {text-decoration:none;color:var(--blue);}
.tt-port a:focus-visible,.tt-port button:focus-visible,.tt-port summary:focus-visible {outline:3px solid #E6A700;outline-offset:4px;}
.tt-port .port-eyebrow {font-size:12px;font-weight:700;line-height:1.4;letter-spacing:1.2px;color:#b37c00;text-transform:uppercase;}
.tt-port .port-intro {padding:62px 32px 40px;}
.tt-port .port-breadcrumb {display:flex;gap:9px;align-items:center;font-size:13px;color:var(--muted);margin-bottom:30px;}
.tt-port .port-breadcrumb a {color:var(--muted);}
.tt-port h1 {font-size:56px;font-weight:500;line-height:1.07;letter-spacing:-1.7px;margin:14px 0 20px;}
.tt-port .port-lead {max-width:760px;color:var(--muted);font-size:19px;line-height:1.6;}
.tt-port .port-assurances {display:flex;flex-wrap:wrap;gap:12px 30px;list-style:none;padding:0;margin:24px 0 0;font-size:14px;}
.tt-port .port-assurances li {display:flex;gap:9px;align-items:center;}
.tt-port .port-check {color:#E6A700;font-weight:700;font-size:18px;}
.tt-port .port-tours {padding:8px 32px 72px;scroll-margin-top:24px;}
.tt-port .port-section-heading {display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:22px;}
.tt-port .port-section-heading h2 {font-size:30px;line-height:1.2;font-weight:600;letter-spacing:-.7px;}
.tt-port .port-section-heading p {font-size:14px;color:var(--muted);}
.tt-port .port-tour-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.tt-port .port-tour {display:flex;flex-direction:column;border:1px solid #c9c3c8;border-radius:6px;overflow:hidden;background:var(--warm);}
.tt-port .port-tour-photo {display:block;width:100%;aspect-ratio:3/2;object-fit:cover;}
.tt-port .port-tour-body {padding:26px;display:flex;flex-direction:column;flex:1;}
.tt-port .port-tour h3 {font-size:28px;line-height:1.18;letter-spacing:-.7px;font-weight:600;margin:10px 0 14px;}
.tt-port .port-tour-copy {color:var(--muted);font-size:16px;line-height:1.6;flex:1;}
.tt-port :is(.port-tour-facts,.port-native-facts .elementor-icon-list-items) {display:flex;flex-wrap:wrap;gap:6px 18px;margin:21px 0;padding:0;list-style:none;font-size:14px;color:var(--ink);}
.tt-port :is(.port-tour-facts,.port-native-facts .elementor-icon-list-items) li {display:flex;align-items:center;gap:7px;margin:0;padding:0;}
.tt-port .port-tour-facts svg {width:16px;height:16px;color:var(--blue);fill:none;stroke:currentColor;stroke-width:1.7;}
/* Native Icon Lists keep each icon separate from its editable text. */
.tt-port .port-native-facts.elementor-widget-icon-list .elementor-icon-list-items .elementor-icon-list-item {margin:0;padding:0;}
.tt-port .port-native-facts.elementor-widget-icon-list .elementor-icon-list-icon {display:flex;align-items:center;flex:0 0 var(--e-icon-list-icon-size,16px);}
body .tt-port .port-native-facts.elementor-widget-icon-list .elementor-icon-list-icon svg {margin:0;}
/* Preserve uploaded outline SVGs without removing the fill from library icons. */
body .tt-port .port-native-facts.elementor-widget-icon-list .elementor-icon-list-icon svg[fill="none"][stroke="currentColor"] {fill:none;color:var(--blue);}
.tt-port .port-native-facts.elementor-widget-icon-list .elementor-icon-list-text {padding:0;}
.tt-port .port-card-bottom {border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;align-items:end;gap:15px;}
.tt-port .port-price small {display:block;color:var(--muted);font-size:12px;line-height:1.3;margin-bottom:4px;}
.tt-port .port-price strong {font:600 23px/1.2 Manrope,Arial,sans-serif;color:var(--ink);white-space:nowrap;}
.tt-port .port-button {display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;border:0;border-radius:4px;padding:13px 20px;background:var(--blue);color:#fff;font:600 14px/1.2 Helvetica,Arial,sans-serif;text-decoration:none;box-shadow:none;cursor:pointer;white-space:nowrap;}
.tt-port .port-button:hover {background:#004989;color:#fff;}
.tt-port .port-local {background:var(--warm);padding:64px 32px;}
.tt-port .port-local-grid {display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.tt-port .port-wave {display:block;width:46px;height:auto;margin-bottom:18px;}
.tt-port .port-local h2 {font-size:36px;line-height:1.12;letter-spacing:-1px;font-weight:600;color:var(--blue);margin-bottom:18px;}
.tt-port .port-local-copy {max-width:400px;color:var(--muted);font-size:16px;line-height:1.6;}
.tt-port .port-local-link {display:inline-block;margin-top:20px;font-size:14px;font-weight:600;}
.tt-port .port-promises {list-style:none;margin:0;padding:0;}
.tt-port .port-promises li {border-top:1px solid #d5d1d4;padding:18px 0;}
.tt-port .port-promises li:last-child {border-bottom:1px solid #d5d1d4;}
.tt-port .port-promises h3 {font:600 18px/1.3 Manrope,Arial,sans-serif;margin-bottom:6px;}
.tt-port .port-promises p {font-size:14px;line-height:1.55;color:var(--muted);}
.tt-port .port-faq {padding:72px 32px 80px;}
.tt-port .port-faq-grid {display:grid;grid-template-columns:1fr 1.7fr;gap:72px;}
.tt-port .port-faq h2 {font-size:32px;line-height:1.2;font-weight:600;letter-spacing:-.8px;margin-bottom:14px;}
.tt-port .port-faq-intro {font-size:16px;color:var(--muted);}
.tt-port .port-faq-intro a {display:inline-block;margin-top:14px;font-weight:600;}
.tt-port .port-questions details {border-top:1px solid var(--line);padding:18px 0;}
.tt-port .port-questions details:last-child {border-bottom:1px solid var(--line);}
.tt-port .port-questions summary {list-style:none;display:flex;justify-content:space-between;gap:18px;align-items:center;cursor:pointer;font-size:17px;font-weight:600;line-height:1.45;}
.tt-port .port-questions summary::-webkit-details-marker {display:none;}
.tt-port .port-questions summary::after {content:'+';color:var(--blue);font-size:24px;font-weight:400;}
.tt-port .port-questions details[open] summary::after {content:'−';}
.tt-port .port-questions details p {margin-top:14px;font-size:16px;color:var(--muted);}
.tt-port dialog {width:min(calc(100% - 40px),560px);max-height:85dvh;padding:30px;border:1px solid #c9c3c8;border-radius:6px;color:var(--ink);background:#fff;}
.tt-port dialog::backdrop {background:rgba(7,29,59,.5);}
.tt-port dialog h2 {font-size:28px;line-height:1.2;margin:14px 0 18px;}
.tt-port dialog p {margin:14px 0;color:var(--muted);font-size:16px;}
.tt-port .port-dialog-close {display:block;margin-left:auto;background:none;color:var(--blue);border:0;padding:8px;font:600 14px/1 Helvetica,sans-serif;cursor:pointer;}
@media(max-width:1100px) and (min-width:768px) { .tt-port .port-card-bottom {align-items:start;flex-direction:column;} }
@media(max-width:1024px) {
 .tt-port .port-inner {width:90%;}
 .tt-port .port-intro {padding:40px 24px 32px;}
 .tt-port h1 {font-size:48px;}
 .tt-port .port-tours {padding-inline:24px;}
 .tt-port .port-tour-body {padding:22px;}
 .tt-port .port-tour h3 {font-size:25px;}
 .tt-port .port-local,.tt-port .port-faq {padding:48px 24px;}
 .tt-port .port-local-grid,.tt-port .port-faq-grid {gap:36px;}
}
@media(max-width:767px) {
 .tt-port .port-inner {width:100%;}
 .tt-port .port-intro {padding:24px 20px 24px;}
 .tt-port .port-breadcrumb {font-size:12px;margin-bottom:22px;}
 .tt-port h1 {font-size:34px;line-height:1.1;letter-spacing:-.7px;margin:12px 0 16px;}
 .tt-port .port-eyebrow {font-size:11px;letter-spacing:.9px;}
 .tt-port .port-lead {font-size:16px;line-height:1.6;}
 .tt-port .port-assurances {gap:8px;margin-top:17px;font-size:13px;flex-direction:column;}
 .tt-port .port-assurances li {gap:8px;}
 .tt-port .port-assurances li:last-child {display:none;}
 .tt-port .port-tours {padding:8px 20px 40px;}
 .tt-port .port-section-heading {display:block;margin-bottom:18px;}
 .tt-port .port-section-heading h2 {font-size:25px;}
 .tt-port .port-section-heading p {margin-top:8px;font-size:13px;}
 .tt-port .port-tour-grid {grid-template-columns:1fr;gap:24px;}
 .tt-port .port-tour-photo {aspect-ratio:16/10;}
 .tt-port .port-tour-body {padding:20px;}
 .tt-port .port-tour h3 {font-size:25px;line-height:1.2;margin:8px 0 12px;}
 .tt-port .port-tour-copy {font-size:15px;}
 .tt-port :is(.port-tour-facts,.port-native-facts .elementor-icon-list-items) {font-size:13px;gap:6px 14px;margin:18px 0;}
 .tt-port .port-card-bottom {padding-top:18px;gap:10px;}
 .tt-port .port-price strong {font-size:21px;}
 .tt-port .port-button {padding:13px 16px;font-size:13px;}
 .tt-port .port-local {padding:40px 20px;}
 .tt-port .port-local-grid {grid-template-columns:1fr;gap:28px;}
 .tt-port .port-local h2 {font-size:30px;}
 .tt-port .port-local-copy {font-size:15px;}
 .tt-port .port-promises li {padding:16px 0;}
 .tt-port .port-faq {padding:40px 20px 48px;}
 .tt-port .port-faq-grid {grid-template-columns:1fr;gap:24px;}
 .tt-port .port-faq h2 {font-size:28px;}
 .tt-port .port-faq-intro {font-size:15px;}
 .tt-port .port-questions summary {font-size:16px;}
 .tt-port .port-questions details p {font-size:15px;}
}

/* Neutralize container defaults while keeping the actual content editable. */
body .tt-port.e-con, body .tt-port .e-con {--width:100%;--min-height:0;--container-widget-width:100%;--container-widget-align-self:stretch;--flex-wrap:nowrap;--gap:0;min-width:0;}
body .tt-port.e-con {display:block;padding:0;gap:0;}
body .tt-port .elementor-widget {margin:0;min-width:0;}
body .tt-port .elementor-widget-heading .elementor-heading-title {color:var(--ink);font-family:Manrope,Arial,sans-serif;}
body .tt-port h1.elementor-heading-title {font-size:56px;font-weight:500;line-height:1.07;letter-spacing:-1.7px;}
body .tt-port .port-local .elementor-heading-title {color:var(--blue);}
body .tt-port .port-local .port-promises h3 {color:var(--ink);}
body .tt-port .port-inner {width:min(78%,1080px);margin-inline:auto;}
body .tt-port .port-intro>.port-inner, body .tt-port .port-tours>.port-inner {display:block;}
body .tt-port .port-section-heading {display:flex;flex-direction:row;align-items:flex-end;gap:20px;}
body .tt-port .port-section-heading>.elementor-widget {width:auto;}
body .tt-port .port-section-heading .elementor-widget-text-editor {font-size:14px;color:var(--muted);}
body .tt-port .port-tour-grid {display:grid;gap:22px;}
body .tt-port .port-tour {width:auto;display:flex;flex-direction:column;}
body .tt-port .port-tour-photo {aspect-ratio:auto;}
body .tt-port .port-tour-photo img {display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;}
body .tt-port .port-tour-body {padding:22px;gap:0;flex:1;}
body .tt-port .port-tour h3 {font-size:25px;}
body .tt-port .port-tour-copy {flex:1;font-size:15px;}
body .tt-port .port-card-bottom {display:flex;flex-flow:row wrap;gap:14px;align-items:flex-end;}
body .tt-port .port-price {width:auto;}
body .tt-port .port-price strong {font-size:21px;}
body .tt-port .port-card-bottom .port-action {width:auto;}
body .tt-port .port-action .elementor-button {padding:14px 20px;min-height:46px;white-space:nowrap;background:#005BAA;color:#fff;border:0;border-radius:4px;box-shadow:none;}
body .tt-port .port-action .elementor-button:hover,body .tt-port .port-action .elementor-button:focus-visible {background:#004989;color:#fff;}
body .tt-port .port-lead {max-width:760px;}
body .tt-port .port-local-copy {max-width:400px;}
body .tt-port .port-wave {width:46px;margin-bottom:18px;}
body .tt-port .port-wave img {width:46px;}
body .tt-port .port-local-grid {display:grid;gap:64px;}
body .tt-port .port-local-grid>.e-con {display:block;}
body .tt-port .port-faq-grid {display:grid;}
body .tt-port .port-faq-grid>.e-con {display:block;}
body .tt-port .port-dialog-widget {height:0;}
body .tt-port .port-controls-widget {display:none;}
body .tt-port .port-carousel-controls {display:flex;align-items:center;justify-content:center;gap:22px;margin-top:20px;font-size:14px;color:var(--muted);}
body .tt-port .port-carousel-controls button {width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid #c9c3c8;border-radius:4px;background:#fff;color:var(--blue);font:22px/1 Arial,sans-serif;cursor:pointer;}
body .tt-port .port-carousel-controls button:disabled {opacity:.4;cursor:default;}
body .tt-port .port-intro.port-hero {position:relative;isolation:isolate;min-height:440px;padding:74px 32px 60px;text-align:center;}
body .tt-port .port-hero::before {content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(7,29,59,.48),rgba(7,29,59,.30) 60%,rgba(7,29,59,.08));pointer-events:none;}
body .tt-port .port-hero>.port-inner {position:relative;z-index:1;}
body .tt-port .port-hero h1.elementor-heading-title,body .tt-port .port-hero .port-eyebrow {color:#fff;}
body .tt-port .port-hero h1.elementor-heading-title {margin-bottom:0;}
body .tt-port .port-after-hero {padding:32px 32px 28px;}
body .tt-port .port-after-hero>.port-inner {display:block;}
@media(min-width:768px) and (max-width:1200px) {
 body .tt-port .port-tour-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:1024px) {
 body .tt-port .port-intro.port-hero {min-height:400px;padding:64px 24px 48px;}
 body .tt-port .port-after-hero {padding:28px 24px 24px;}
 body .tt-port h1.elementor-heading-title {font-size:48px;}
 body .tt-port .port-inner {width:90%;}
 body .tt-port .port-local-grid {gap:36px;}
}
/* Match the shared header's existing mobile column widths at tablet size. */
@media(min-width:768px) and (max-width:1024px) {
 body:is(.page-id-32,.page-id-34,.page-id-36) .elementor-location-header .elementor-element-1785904 {--width:50%;}
}
@media(max-width:767px) {
 body .tt-port .port-intro.port-hero {min-height:340px;padding:42px 20px 40px;}
 body .tt-port .port-after-hero {padding:24px 20px 24px;}
 body .tt-port h1.elementor-heading-title {font-size:34px;line-height:1.1;letter-spacing:-.7px;}
 body .tt-port .port-inner {width:100%;}
 body .tt-port .port-section-heading {display:block;}
 body .tt-port .port-tour-grid {display:flex;flex-flow:row nowrap;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;gap:14px;padding:4px 4px 8px;margin:-4px -4px -8px;width:calc(100% + 8px);scrollbar-width:none;}
 body .tt-port .port-tour-grid::-webkit-scrollbar {display:none;}
 body .tt-port .port-tour {flex:0 0 calc(100% - 22px);scroll-snap-align:start;scroll-margin-left:4px;}
 body .tt-port .port-tour-photo img {aspect-ratio:16/10;}
 body .tt-port .port-tour-body {padding:20px;}
 body .tt-port .port-tour h3 {font-size:24px;}
 body .tt-port .port-controls-widget {display:block;}
 body .tt-port .port-local-grid,body .tt-port .port-faq-grid {grid-template-columns:1fr;gap:28px;}
}


/* Shared destination layout. */
body .tt-port.tt-port-destination .port-inner{width:min(calc(100% - 112px),1280px)}
body .tt-port.tt-port-destination .port-intro.port-hero{min-height:560px;padding:76px 0 48px;text-align:left}
body .tt-port.tt-port-destination .port-hero::before{background:linear-gradient(100deg,rgba(7,29,59,.45),rgba(7,29,59,.12) 62%,rgba(7,29,59,.02))}
body .tt-port.tt-port-destination .port-hero h1.elementor-heading-title{font-size:68px;line-height:1.04;letter-spacing:-2px;max-width:840px;margin-top:18px}
body .tt-port.tt-port-destination .port-hero .port-eyebrow{letter-spacing:1.8px}
body .tt-port.tt-port-destination .port-after-hero{padding:0;background:#fff}
body .tt-port-destination .port-arrival-assurances{border-bottom:1px solid #dedde0;padding:22px 0}
.tt-port.tt-port-destination .port-arrival-assurances .port-assurances{margin:0;gap:18px 48px;font-size:15px}
body .tt-port-destination .port-destination-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:64px 0 68px;align-items:start}
.tt-port.tt-port-destination .port-destination-intro h2{font:500 44px/1.12 Manrope,Arial,sans-serif;letter-spacing:-1.2px;max-width:490px;margin-top:14px}
.tt-port.tt-port-destination .port-destination-intro p:not(.port-eyebrow){font:18px/1.7 Helvetica,Arial,sans-serif;color:#667085;margin-top:12px}
body .tt-port.tt-port-destination .port-tours{background:#F6F5F2;padding:64px 0 72px}
body .tt-port.tt-port-destination .port-section-heading{margin-bottom:30px;align-items:end}
body .tt-port.tt-port-destination .port-section-heading h2{font-size:42px;letter-spacing:-1.2px;font-weight:500}
body .tt-port.tt-port-destination .port-section-heading p{font-size:16px;max-width:340px}
body .tt-port.tt-port-destination .port-tour-grid{gap:24px;grid-template-columns:repeat(3,minmax(0,1fr))}
body .tt-port.tt-port-destination .port-tour{background:#fff;border-color:#dedde0}
body .tt-port.tt-port-destination .port-tour-photo img{aspect-ratio:4/3}
body .tt-port.tt-port-destination .port-tour-body{padding:28px}
body .tt-port.tt-port-destination .port-tour h3{font-size:28px;line-height:1.2;font-weight:500;margin-top:12px;margin-bottom:18px}
body .tt-port.tt-port-destination .port-tour-copy{font-size:17px;line-height:1.6}
body .tt-port.tt-port-destination :is(.port-tour-facts,.port-native-facts .elementor-icon-list-items){font-size:14px;margin:26px 0}
body .tt-port.tt-port-destination .port-card-bottom{padding-top:24px;gap:12px}
body .tt-port.tt-port-destination .port-price strong{font-size:24px}
body .tt-port-destination .port-experiences{padding:84px 0;background:#071D3B;color:#fff}
body .tt-port-destination .port-experience-row{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center}
body .tt-port-destination .port-experience-row+.port-experience-row{grid-template-columns:1.1fr 1fr;margin-top:72px}
.tt-port.tt-port-destination .port-experiences h2{font:500 46px/1.12 Manrope,Arial,sans-serif;color:#fff;letter-spacing:-1.2px;margin:18px 0 24px}
.tt-port.tt-port-destination .port-experiences h3{font:500 38px/1.15 Manrope,Arial,sans-serif;color:#fff;letter-spacing:-.9px;margin:18px 0 22px}
.tt-port.tt-port-destination .port-experiences p:not(.port-eyebrow){font:17px/1.75 Helvetica,Arial,sans-serif;color:#dce4ed;max-width:480px}
.tt-port.tt-port-destination .port-experiences .port-eyebrow{color:#e6a700}
body .tt-port-destination .port-experience-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px}
body .tt-port-destination .port-experience-caption{display:block;margin-top:12px;font:13px/1.5 Helvetica,Arial,sans-serif;color:#b8c8d9}
body .tt-port-destination .port-destination-intro>.e-con,
body .tt-port-destination .port-arrival-assurances,
body .tt-port-destination .port-experiences>.port-inner,
body .tt-port-destination .port-experience-copy,
body .tt-port-destination .port-experience-figure{display:block;}
body .tt-port-destination .port-experience-figure{margin:0;}
body .tt-port-destination .port-experience-photo.elementor-widget{aspect-ratio:auto;}
body .tt-port-destination .port-experience-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px;}
body .tt-port.tt-port-destination .port-experiences .port-experience-caption p{margin:0;max-width:none;font:13px/1.5 Helvetica,Arial,sans-serif;color:#b8c8d9;}
body .tt-port.tt-port-destination .port-local{background:#fff;padding:76px 0}
body .tt-port.tt-port-destination .port-local h2{font-size:42px;font-weight:500}
body .tt-port.tt-port-destination .port-local-copy{font-size:18px;max-width:480px}
body .tt-port.tt-port-destination .port-promises p{font-size:16px}
body .tt-port.tt-port-destination .port-promises h3{font-size:20px}
body .tt-port.tt-port-destination .port-faq{background:#F6F5F2;padding:64px 0 76px}
body .tt-port.tt-port-destination .port-faq h2{font-size:38px;font-weight:500}
body .tt-port.tt-port-destination .port-questions summary{font-size:18px}
@media(max-width:1100px) and (min-width:768px){body .tt-port.tt-port-destination .port-tour-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body .tt-port.tt-port-destination .port-inner{width:calc(100% - 64px)}.port-destination-intro,.port-experience-row,.port-experience-row+.port-experience-row{gap:40px}}
@media(max-width:767px){
 body .tt-port.tt-port-destination .port-inner{width:calc(100% - 40px)}
 body .tt-port.tt-port-destination .port-intro.port-hero{min-height:400px;padding:44px 0}
 body .tt-port.tt-port-destination .port-hero h1.elementor-heading-title{font-size:37px;letter-spacing:-1px;line-height:1.08;max-width:350px}
 body .tt-port-destination .port-arrival-assurances{padding:20px 0}
 .tt-port.tt-port-destination .port-arrival-assurances .port-assurances{font-size:13px;gap:9px}
 body .tt-port-destination .port-destination-intro{grid-template-columns:1fr;gap:16px;padding:40px 0}
 .tt-port.tt-port-destination .port-destination-intro h2{font-size:32px;letter-spacing:-.8px}
 .tt-port.tt-port-destination .port-destination-intro p:not(.port-eyebrow){font-size:16px;line-height:1.65}
 body .tt-port.tt-port-destination .port-tours{padding:40px 0 44px}
 body .tt-port.tt-port-destination .port-section-heading{margin-bottom:24px}
 body .tt-port.tt-port-destination .port-section-heading h2{font-size:31px;line-height:1.15}
 body .tt-port.tt-port-destination .port-section-heading p{font-size:15px;margin-top:12px}
 body .tt-port.tt-port-destination .port-tour-grid{gap:14px}
 body .tt-port.tt-port-destination .port-tour-body{padding:22px}
 body .tt-port.tt-port-destination .port-tour h3{font-size:25px}
 body .tt-port.tt-port-destination .port-tour-copy{font-size:16px}
 body .tt-port.tt-port-destination :is(.port-tour-facts,.port-native-facts .elementor-icon-list-items){margin:22px 0;font-size:13px}
 body .tt-port.tt-port-destination .port-price strong{font-size:22px}
 body .tt-port-destination .port-experiences{padding:44px 0}
 body .tt-port-destination .port-experience-row,body .tt-port-destination .port-experience-row+.port-experience-row{grid-template-columns:1fr;gap:26px}
 body .tt-port-destination .port-experience-row+.port-experience-row{margin-top:48px}
 body .tt-port-destination .port-experience-row+.port-experience-row>figure{order:2}
 .tt-port.tt-port-destination .port-experiences h2{font-size:33px;margin:14px 0 20px}
 .tt-port.tt-port-destination .port-experiences h3{font-size:31px;margin:14px 0 20px}
 .tt-port.tt-port-destination .port-experiences p:not(.port-eyebrow){font-size:16px}
 body .tt-port.tt-port-destination .port-local{padding:44px 0}
 body .tt-port.tt-port-destination .port-local h2{font-size:33px}
 body .tt-port.tt-port-destination .port-local-copy{font-size:16px}
 body .tt-port.tt-port-destination .port-faq{padding:40px 0 48px}
 body .tt-port.tt-port-destination .port-faq h2{font-size:32px}
 body .tt-port.tt-port-destination .port-questions summary{font-size:16px}
}

@media(max-width:1100px) and (min-width:768px){body .tt-port-destination .port-destination-intro,body .tt-port-destination .port-experience-row,body .tt-port-destination .port-experience-row+.port-experience-row{gap:40px;}}
@media(max-width:767px){body .tt-port-destination .port-experience-row+.port-experience-row>.port-experience-figure{order:2;}}

/* A single excursion fills the same section without carousel controls. */
body .tt-port.tt-port-destination .port-tour-grid:has(>.port-tour:only-child){display:grid;grid-template-columns:1fr;overflow:visible;width:100%;margin:0;padding:0;}
body .tt-port.tt-port-destination .port-tour-grid>.port-tour:only-child{display:grid;grid-template-columns:1.1fr 1fr;}
body .tt-port.tt-port-destination .port-tour:only-child .port-tour-photo,
body .tt-port.tt-port-destination .port-tour:only-child .port-tour-photo .elementor-widget-container{height:100%;}
body .tt-port.tt-port-destination .port-tour:only-child .port-tour-photo img{height:100%;aspect-ratio:auto;min-height:380px;}
body .tt-port.tt-port-destination .port-tour:only-child .port-tour-body{padding:36px;}
body .tt-port .port-tour-grid:has(>.port-tour:only-child)+.port-controls-widget{display:none;}
@media(max-width:767px){
 body .tt-port.tt-port-destination .port-tour-grid>.port-tour:only-child{grid-template-columns:1fr;}
 body .tt-port.tt-port-destination .port-tour:only-child .port-tour-photo img{height:auto;min-height:0;aspect-ratio:4/3;}
 body .tt-port.tt-port-destination .port-tour:only-child .port-tour-body{padding:22px;}
}

/* Main shore-excursion page: two visible port choices at every screen size. */
body .tt-port.tt-shore-hub .port-intro.port-hero {min-height:500px;}
body .tt-shore-hub .shore-port-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
body .tt-port.tt-shore-hub .shore-port-grid .port-tour-photo img {aspect-ratio:16/10;}
body .tt-port.tt-shore-hub .shore-port-grid .port-tour-body {padding:32px;gap:0;}
body .tt-port.tt-shore-hub .shore-port-grid h3 {font-size:36px;margin:0 0 16px;}
body .tt-shore-hub .shore-port-destinations {font:500 15px/1.6 Helvetica,Arial,sans-serif;color:#111827;margin-top:22px;}
body .tt-shore-hub .shore-port-action {margin-top:24px;padding-top:24px;border-top:1px solid #dedde0;}
body .tt-port.tt-shore-hub .port-local {background:#071D3B;color:#fff;}
body .tt-port.tt-shore-hub .port-local .elementor-heading-title,
body .tt-port.tt-shore-hub .port-local .port-promises h3 {color:#fff;}
body .tt-port.tt-shore-hub .port-local-copy,
body .tt-port.tt-shore-hub .port-local .port-promises p {color:#dce4ed;}
body .tt-port.tt-shore-hub .port-local .port-promises li {border-color:#ffffff30;}
body .tt-port.tt-shore-hub .port-local-link {color:#fff;}
@media(max-width:767px){
 body .tt-port.tt-shore-hub .port-intro.port-hero {min-height:360px;}
 body .tt-shore-hub .shore-port-grid {grid-template-columns:1fr;gap:24px;}
 body .tt-port.tt-shore-hub .shore-port-grid .port-tour-body {padding:24px;}
 body .tt-port.tt-shore-hub .shore-port-grid h3 {font-size:29px;}
 body .tt-shore-hub .shore-port-destinations {font-size:14px;margin-top:18px;}
}


/* Standalone FAQ uses the port pages' question rows and warm section. */
body .tt-port.tt-faq-page .port-faq{padding:80px 0;}
body .tt-port.tt-faq-page .port-faq-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);align-items:start;}
body .tt-port.tt-faq-page h1.elementor-heading-title{font-size:46px;line-height:1.12;letter-spacing:-1.3px;margin:0;}
body .tt-port.tt-faq-page .port-questions>.elementor-widget-html+.elementor-widget-html details{border-top:0;}
body .tt-port.tt-faq-page .port-questions summary::after{flex:0 0 18px;text-align:center;}
body .tt-port.tt-faq-page .port-questions details[open] summary::after{content:"\2212";}
@media(min-width:768px) and (max-width:1024px){
body.page-id-48 .elementor-location-header .elementor-element-1785904{--width:50%;}
body .tt-port.tt-faq-page .port-faq{padding:64px 0;}
body .tt-port.tt-faq-page h1.elementor-heading-title{font-size:38px;}
}
@media(max-width:767px){
body .tt-port.tt-faq-page .port-faq{padding:40px 0 48px;}
body .tt-port.tt-faq-page .port-faq-grid{grid-template-columns:1fr;gap:28px;}
body .tt-port.tt-faq-page h1.elementor-heading-title{font-size:36px;letter-spacing:-1px;}
}


/* Destination trust sections match the homepage's wave and proof markers. */
body .tt-port.tt-port-destination .port-local .elementor-element.port-wave{width:72px;margin:0 0 24px;line-height:1;}
body .tt-port.tt-port-destination .port-local .port-wave img{display:block;width:72px;height:auto;opacity:.7;}
body .tt-port.tt-port-destination .port-promises li{display:grid;grid-template-columns:15px minmax(0,1fr);column-gap:24px;}
body .tt-port.tt-port-destination .port-proof-mark{grid-column:1;grid-row:1;align-self:start;padding-top:6px;color:var(--e-global-color-accent,#e6a700);font:600 15px/15px Manrope,sans-serif;letter-spacing:.9px;}
body .tt-port.tt-port-destination .port-promises h3,body .tt-port.tt-port-destination .port-promises p{grid-column:2;}
@media(min-width:768px) and (max-width:1024px){
body .tt-port.tt-port-destination .port-local .elementor-element.port-wave,body .tt-port.tt-port-destination .port-local .port-wave img{width:64px;}
}
@media(max-width:767px){
body .tt-port.tt-port-destination .port-local .elementor-element.port-wave{width:56px;margin-bottom:21.5px;}
body .tt-port.tt-port-destination .port-local .port-wave img{width:56px;}
body .tt-port.tt-port-destination .port-promises li{column-gap:16px;}
}
