/* TourDetailPage: one layout and one type scale for all five languages. */
.tour-detail-page{--td-ink:#183e45;--td-blue:#384c56;--td-ivory:#f8f7f2;--td-sand:#eeece2;--td-gold:#a79165;color:var(--td-ink);background:var(--td-ivory);font-size:16px;line-height:1.75}
.tour-detail-page *{min-width:0}
.tour-detail-page h1,.tour-detail-page h2,.tour-detail-page h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;text-wrap:balance;overflow-wrap:break-word}
.tour-detail-page h1{font-size:clamp(46px,6vw,88px);line-height:1.04;letter-spacing:-2.6px}
.tour-detail-page h2{font-size:clamp(34px,3.5vw,54px);line-height:1.13;letter-spacing:-1.5px}
.tour-detail-page h3{font-size:clamp(26px,2.1vw,32px);line-height:1.2;letter-spacing:-.6px}
.tour-detail-page p{margin:18px 0;overflow-wrap:break-word}
.tour-detail-page img{display:block;width:100%;object-fit:cover}
.tour-detail-page ul{list-style:none;padding:0;margin:0}
.tour-detail-page svg{width:30px;height:30px;flex-shrink:0;color:var(--td-gold)}
.tour-detail-page button,.tour-detail-page summary,.tour-detail-page a{-webkit-tap-highlight-color:transparent}
.tour-detail-page :focus-visible{outline:2px solid var(--td-gold);outline-offset:5px}
.tour-detail-page section[id],.td-selected-boat{scroll-margin-top:30px}
.td-eyebrow{font:600 10px/1.6 Arial,Helvetica,sans-serif;letter-spacing:2.2px;text-transform:uppercase;color:#8a764e;margin:0 0 18px!important}
.td-section{width:min(1180px,84%);margin-inline:auto;padding-block:84px}
.td-section-heading{max-width:700px;margin-bottom:36px}
.td-muted,.td-capacity-note{font-size:12px;line-height:1.6;color:#61767a}
.td-hero{position:relative;isolation:isolate;min-height:690px;display:flex;align-items:center;color:#fff;padding:72px 8%;overflow:hidden}
.td-hero-photo{position:absolute;inset:0;height:100%;z-index:-2;object-position:50% 55%}
.td-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,35,43,.75),rgba(9,35,43,.38) 65%,rgba(9,35,43,.2)),linear-gradient(0deg,rgba(9,35,43,.28),transparent 60%)}
.td-hero-content{max-width:860px}
.td-hero .td-eyebrow{color:#e6d8bb}
.td-hero h1{max-width:790px}
.td-hero-subtitle{max-width:550px;font-size:18px;line-height:1.6;color:#f0f1eb;margin:24px 0!important}
.td-hero-facts{display:flex;flex-wrap:wrap;gap:14px 25px;font-size:13px;margin:28px 0!important}
.td-hero-facts li+li{border-left:1px solid #ffffff60;padding-left:25px}
.td-actions{display:flex;flex-wrap:wrap;gap:20px 30px;align-items:center;margin-top:30px}
.td-button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;padding:17px 22px;background:var(--td-ink);border:1px solid var(--td-ink);color:#fff;font-size:11px;font-weight:600;line-height:1.5;letter-spacing:.6px;text-align:left;transition:background .2s}
.td-button span{font-size:22px;font-weight:400;flex-shrink:0}
.td-button:hover{background:#29555e}
.td-button-light{background:#e9ddc8;border-color:#e9ddc8;color:var(--td-ink)}
.td-button-light:hover{background:#f5ead6}
.td-whatsapp{display:inline-flex;align-items:center;gap:18px;font-size:11px;line-height:1.5;letter-spacing:.5px;border-bottom:1px solid currentColor;padding-block:12px;min-height:48px}
.td-whatsapp span{font-size:20px}
.td-hero .td-capacity-note{color:#e0e6e1;max-width:570px;margin-top:22px}
.td-scroll{position:absolute;right:8%;bottom:30px;border:1px solid #ffffff70;border-radius:50%;display:grid;place-items:center;width:40px;height:40px;font-size:22px}
.td-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:80px}
.td-lead{font-size:17px;color:#4d666c;line-height:1.85}
.td-cruise{padding-top:35px}
.td-cruise>p{color:#4d666c;font-size:15px}
.td-highlights{border-top:1px solid #d9dcd2;margin-top:26px!important;padding-top:16px!important}
.td-highlights li{display:flex;align-items:center;gap:14px;font-size:13px;padding:9px 0}
.td-highlights svg{width:20px;height:20px}
.td-stops{border-top:1px solid #d9dcd2;padding-top:64px}
.td-stop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.td-stop{background:#f0efe7}
.td-stop-photo{aspect-ratio:4/3;height:auto}
.td-stop-copy{padding:25px}
.td-number{display:block;font:italic 17px Georgia,serif;color:#927d52;margin-bottom:13px}
.td-stop h3{font-size:28px}
.td-stop p{font-size:14px;line-height:1.8;color:#526c72;margin-bottom:0}
.td-expand{border-top:1px solid #d6d9ce;border-bottom:1px solid #d6d9ce;margin-top:28px}
.td-expand>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:19px 0;font-size:13px;min-height:56px}
.td-expand>summary::-webkit-details-marker,.td-question>summary::-webkit-details-marker{display:none}
.td-expand>summary>span,.td-question>summary>span{font-size:23px;color:var(--td-gold);flex-shrink:0}
.td-expand[open]>summary>span,.td-question[open]>summary>span{transform:rotate(45deg)}
.td-itinerary-note{font-size:12px;line-height:1.7;color:#61767a;border-left:2px solid var(--td-gold);padding-left:18px;margin-top:28px!important;max-width:850px}
.td-carousel-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#a79165 #e7e7df;overscroll-behavior-x:contain}
.td-carousel-track>.td-stop{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start}
.td-stop-extra{background:#fffef9}
.td-stop-extra .td-stop-photo{max-height:180px}
.td-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0 20px}
.td-carousel-controls button{width:44px;height:44px;border:1px solid #b8c2bc;background:transparent;color:var(--td-ink);font-size:22px}
.td-carousel-controls span{font-size:10px;letter-spacing:1px;text-align:center;color:#61767a}
.td-swimming{display:grid;grid-template-columns:1fr 1fr;background:var(--td-blue);color:#fff}
.td-swimming-photo{height:100%;min-height:510px}
.td-swimming-copy{padding:65px max(35px,8vw) 65px 65px}
.td-swimming .td-eyebrow{color:#e0cfab}
.td-swimming-copy>p{font-size:15px;color:#e0e6e4}
.td-snorkel{display:flex;gap:18px;margin-top:28px;padding-top:24px;border-top:1px solid #ffffff35}
.td-snorkel h3{font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5;letter-spacing:0}
.td-snorkel p{font-size:13px;color:#dae2e1;margin:10px 0 0}
.td-relax-lunch{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.td-relax-photo{height:auto;aspect-ratio:16/9;margin-bottom:30px}
.td-relax>p,.td-lunch>p{font-size:15px;color:#526c72}
.td-private-line{border-left:2px solid var(--td-gold);padding-left:20px;font:italic 21px/1.5 Georgia,serif!important;color:var(--td-ink)!important}
.td-lunch-points{margin:25px 0!important}
.td-lunch-points li{display:flex;gap:18px;align-items:center;border-bottom:1px solid #d9dcd2;padding:14px 0;font-size:13px}
.td-lunch-points .td-number{margin:0}
.td-lunch-note{font-size:12px!important;border-left:2px solid var(--td-gold);padding-left:18px}
.td-practical{display:grid;grid-template-columns:2fr 1fr;gap:60px;padding:50px;background:var(--td-sand);margin-bottom:65px}
.td-included h2{font-size:36px}
.td-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px!important}
.td-services li{display:flex;flex-direction:column;gap:15px;font-size:13px}
.td-included .td-expand .td-services{padding:10px 0 25px}
.td-bring{border-left:1px solid #d3d7cd;padding-left:36px}
.td-bring h3{font-size:28px}
.td-bring ul{margin-top:25px}
.td-bring li{display:flex;align-items:center;gap:16px;margin:18px 0;font-size:13px}
.td-bring svg{width:25px;height:25px}
.td-boat-section{padding-top:25px}
.td-boat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:35px}
.td-boat-choice{padding:0;text-align:left;color:var(--td-ink);background:#fffef9;border:1px solid #d4d9ce;cursor:pointer}
.td-boat-choice[aria-pressed="true"]{outline:2px solid var(--td-ink);outline-offset:2px}
.td-boat-choice>img{aspect-ratio:16/9;height:auto}
.td-boat-choice>span{display:block;padding:24px}
.td-boat-choice strong{display:block;font:28px/1.2 Georgia,serif;margin-bottom:14px}
.td-boat-choice small{font-size:12px;color:#526c72;display:block}
.td-boat-action{display:flex;justify-content:space-between;gap:16px;font-size:12px;border-top:1px solid #d9dcd2;margin-top:20px;padding-top:15px}
.td-selected-boat{background:var(--td-sand);padding:35px;margin-top:30px}
.td-selected-name>p:not(.td-eyebrow){font-size:13px}
.td-booking-facts{display:flex;flex-wrap:wrap;gap:20px 50px;border-block:1px solid #d5d9ce;padding-block:20px;margin:25px 0}
.td-booking-facts dt{font-size:11px;color:#61767a;margin-bottom:5px}
.td-booking-facts dd{margin:0;font-size:14px}
.td-selected-boat>.td-muted{max-width:750px}
.td-faq{display:grid;grid-template-columns:1fr 1.6fr;gap:70px;padding-top:45px}
.td-question{border-bottom:1px solid #d5d9ce}
.td-question>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;min-height:64px;padding:16px 0;font-size:14px;line-height:1.6}
.td-question>p{color:#526c72;font-size:14px;padding-right:20px;margin:0 0 20px}
.td-more-faq{margin-top:20px}
.td-more-faq>summary{color:#836e49}
.td-finale{position:relative;isolation:isolate;min-height:420px;display:flex;align-items:center;padding:65px 8%;color:white}
.td-finale>img{position:absolute;inset:0;height:100%;z-index:-2;object-position:50% 55%}
.td-finale:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#09232bcc,#09232b80)}
.td-finale>div{max-width:760px}
.td-finale h2{font-size:clamp(36px,4vw,58px)}
.td-finale .td-eyebrow{color:#e0cfab}
.td-finale p:not(.td-eyebrow){font-size:15px;max-width:530px}
@media(max-width:1000px){.td-intro,.td-relax-lunch{gap:40px}.td-stop-grid{gap:16px}.td-stop-copy{padding:20px}.td-swimming-copy{padding:45px 7%}.td-practical{gap:30px;padding:35px}.td-faq{gap:40px}.td-section{width:88%}.td-hero{min-height:650px;padding-inline:6%}.td-hero h1{max-width:700px}.td-stop h3{font-size:26px}}
@media(max-width:760px){.tour-detail-page{font-size:15px}.tour-detail-page h1{font-size:clamp(42px,10vw,62px);letter-spacing:-1.7px}.tour-detail-page h2{font-size:clamp(33px,8vw,44px);letter-spacing:-1px}.tour-detail-page h3{font-size:27px}.td-section{width:88%;padding-block:48px}.td-hero{min-height:660px;padding:45px 6% 55px}.td-hero-photo{object-position:58% 50%}.td-hero:before{background:linear-gradient(90deg,#09232bbd,#09232b55),linear-gradient(0deg,#09232b75,transparent)}.td-hero-subtitle{font-size:16px;max-width:450px}.td-hero-facts{display:grid;grid-template-columns:1fr;gap:8px;margin:22px 0!important}.td-hero-facts li+li{border:0;padding-left:0}.td-hero-facts li{font-size:13px}.td-actions{gap:12px;margin-top:24px}.td-actions .td-button{width:100%;max-width:390px}.td-whatsapp{margin-right:35px}.td-capacity-note{max-width:360px;padding-right:35px}.td-scroll{bottom:22px;right:6%}.td-intro,.td-relax-lunch,.td-practical,.td-faq{grid-template-columns:1fr;gap:35px}.td-cruise{padding-top:0}.td-lead{font-size:16px}.td-stop-grid{display:flex;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory;padding:0 0 14px;scrollbar-width:thin;scrollbar-color:#a79165 #e7e7df}.td-stop-grid>.td-stop{flex:0 0 90%;scroll-snap-align:start}.td-stop h3{font-size:28px}.td-stop-photo{aspect-ratio:4/3}.td-stop-copy{padding:24px}.td-stop p{font-size:14px}.td-stops{padding-top:38px}.td-carousel-track>.td-stop{flex:0 0 90%}.td-swimming{grid-template-columns:1fr}.td-swimming-photo{min-height:0;height:auto;aspect-ratio:4/3}.td-swimming-copy{padding:38px 6% 42px}.td-snorkel{gap:15px}.td-snorkel h3{font-size:15px}.td-relax-lunch{gap:42px}.td-relax-photo{margin-bottom:25px}.td-practical{padding:32px 6%;width:100%;margin-bottom:0}.td-included h2{font-size:33px}.td-services{gap:16px}.td-services li{font-size:12px}.td-bring{border:0;border-top:1px solid #d3d7cd;padding:28px 0 0}.td-bring ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.td-bring li{flex-direction:column;align-items:flex-start;margin:0;font-size:12px}.td-boat-section{padding-top:48px}.td-boat-grid{gap:20px;grid-template-columns:1fr;margin-top:28px}.td-boat-choice>img{aspect-ratio:16/9}.td-boat-choice>span{padding:22px}.td-selected-boat{padding:27px 22px}.td-selected-boat .td-button{width:100%}.td-booking-facts{gap:18px;flex-direction:column}.td-faq{gap:24px;padding-top:20px}.td-finale{min-height:430px;padding:45px 6% 75px}.td-finale>img{object-position:60% 50%}.td-finale h2{font-size:36px}.td-question>summary{font-size:14px}.td-expand>summary{font-size:13px}.td-itinerary-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){.tour-detail-page *{scroll-behavior:auto!important;transition:none!important}}
/* Choose the type of day before reading its content. */
.td-mode-selector{padding:32px 8%;display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;background:#eeece2}
.td-mode-selector h2{font-size:30px;letter-spacing:-.7px}
.td-mode-selector p:not(.td-eyebrow){font-size:13px;color:#526c72;margin-bottom:0}
.td-mode-selector .td-eyebrow{margin-bottom:9px!important}
.td-mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.td-mode-buttons button{padding:18px;text-align:left;border:1px solid #bbc7bf;background:#f8f7f2;color:#183e45}
.td-mode-buttons strong{display:block;font-size:15px;line-height:1.4}
.td-mode-buttons span{display:block;font-size:12px;line-height:1.5;margin-top:7px}
.td-mode-buttons button[aria-pressed="true"]{background:#183e45;color:#fff;border-color:#183e45}
.td-mode-content[hidden]{display:none!important}
.td-rental-excluded{border-top:1px solid #d3d7cd;padding-top:24px;margin-top:24px}
.td-rental-excluded h3{font-size:24px}
.td-rental-excluded p{font-size:14px;color:#526c72}
.td-boat-grid:has(>:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.td-mode-selector{padding:26px 6%;grid-template-columns:1fr;gap:22px}.td-mode-selector h2{font-size:29px}.td-mode-buttons button{padding:15px}.td-mode-buttons strong{font-size:14px}.td-mode-buttons span{font-size:11px}.td-boat-grid:has(>:nth-child(3)){grid-template-columns:1fr}}
/* This long page already offers WhatsApp in both heroes; avoid a fixed button covering booking controls. */
body:has(.tour-detail-page) > .floating-contact{position:static;margin:0 6% 24px auto}

.td-boat-card{background:#fffef9;display:flex;flex-direction:column}
.td-boat-card>.td-boat-choice{width:100%;flex:1}
.td-boat-information{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border:1px solid #d4d9ce;border-top:0;min-height:52px;font-size:13px;color:#183e45;text-decoration:underline;text-underline-offset:4px}
.td-boat-information:hover{background:#eeece2}
.td-relax-boat-link{display:block}
.td-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Vector arrows stay monochrome on mobile browsers, including iOS. */
.tour-detail-page .td-arrow{width:20px;height:20px;flex:0 0 20px;display:block}
.td-button>.td-arrow,.td-whatsapp>.td-arrow,.td-boat-information>.td-arrow{color:var(--td-gold)}
.td-boat-action{align-items:center}
.td-boat-action>.td-arrow{width:17px;height:17px;flex-basis:17px}
.td-carousel-controls button{display:grid;place-items:center}

/* Preserve the terrace and sea view in the supplied Giardini Eden photo. */
.td-relax-photo.td-relax-destination-photo{aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:12px}

.td-schedule-note{font-size:14px;line-height:1.8;color:#48656c;margin-top:20px;max-width:680px}

.td-hero-facts{display:flex;flex-wrap:wrap;gap:10px 24px;margin:24px 0 0!important;max-width:760px}.td-hero-facts li{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.6;color:#fff}.td-hero-facts svg{width:17px;height:17px;color:#e7d9bb}@media(max-width:600px){.td-hero-facts{display:grid;gap:8px}.td-hero-facts li{font-size:12px}}
