@font-face{font-family:Poppins;src:url('/assets/fonts/poppins-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/poppins-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/poppins-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Poppins;src:url('/assets/fonts/poppins-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--blue:#0ea5e9;--green:#22c55e;--deep-blue:#08749e;--deep-green:#087544;--ink:#102b35;--muted:#597078;--line:#dfe9e6;--paper:#fbfcfa;--mint:#eef7f2;--gradient:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Poppins,Arial,sans-serif;font-size:15px;line-height:1.75;font-weight:500;-webkit-font-smoothing:antialiased}::selection{background:#a0ecd3;color:#102b35}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block;height:auto}svg{display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Poppins,Arial,sans-serif;font-weight:600;letter-spacing:-.045em;line-height:1.2}h1{font-size:clamp(38px,4.3vw,58px);margin-bottom:24px}h2{font-size:clamp(29px,3vw,40px);margin-bottom:20px}h3{font-size:23px;letter-spacing:-.035em;margin-bottom:14px}p{margin-bottom:20px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--deep-blue);outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid var(--deep-green);outline-offset:2px}button:disabled{cursor:wait}section[id],form[id]{scroll-margin-top:115px}.container{width:min(1200px,calc(100% - 64px));margin:0 auto}.icon{width:23px;height:23px;flex-shrink:0}.eyebrow{font-size:10px;letter-spacing:.18em;line-height:1.7;font-weight:800;color:var(--deep-green);margin-bottom:18px;text-transform:uppercase}.text-gradient{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.skip-link{position:fixed;top:-100px;left:20px;z-index:300;background:white;padding:12px 20px;border:2px solid var(--deep-green)}.skip-link:focus{top:20px}.utility-bar{background:var(--ink);color:#d1e5df;font-size:11px;letter-spacing:.02em}.utility-bar .container{display:flex;justify-content:space-between;align-items:center;min-height:35px;gap:16px}.utility-bar a{display:flex;align-items:center;gap:8px}.utility-bar .icon{width:15px;height:15px;color:#73e4b7}.utility-bar a span{margin-left:12px}.site-header{position:sticky;top:0;z-index:100;background:rgba(251,252,250,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{display:flex;min-height:88px;align-items:center;justify-content:space-between;gap:32px}.brand{display:block;flex-shrink:0}.brand img{width:150px;height:58px;object-fit:contain}#main-nav{display:flex;align-items:center;gap:26px;font-size:13px;font-weight:700}#main-nav>a{padding:12px 0;position:relative;white-space:nowrap}#main-nav>a:hover,#main-nav>a[aria-current=page]{color:var(--deep-green)}#main-nav>a[aria-current=page]:after{content:'';position:absolute;bottom:3px;left:0;width:22px;height:3px;border-radius:5px;background:var(--gradient)}#main-nav>a:last-child{padding:10px 19px;border:1px solid var(--line);border-radius:30px}#main-nav>a:last-child:hover{background:var(--mint)}.menu-button{display:none;border:1px solid var(--line);border-radius:12px;background:white;padding:10px;color:var(--ink)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:13px 23px;background:var(--gradient);border:1px solid transparent;border-radius:12px;color:#082e35;font-size:12px;font-weight:800;line-height:1.5;transition:box-shadow .2s,transform .2s}.button .icon{width:18px;height:18px}.button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(17,70,55,.14)}.button-outline{background:transparent;border-color:#c4d9d1;color:var(--ink)}.button-dark{background:var(--ink);color:white}.button-light{background:white;color:var(--ink);border-color:white}.button-outline-light{background:transparent;color:white;border-color:#718f87}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.text-link{display:inline-flex;gap:12px;align-items:center;color:var(--deep-green);font-size:12px;font-weight:800;line-height:1.6}.text-link .icon{width:18px;height:18px;transition:transform .2s}.text-link:hover .icon{transform:translateX(4px)}.status-dot{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--green)}
.home-hero{padding:64px 0 52px;background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}.home-hero>.container{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.home-hero h1{font-size:clamp(42px,4.3vw,61px);line-height:1.14;letter-spacing:-.055em}.hero-description{font-size:15px;line-height:1.9;max-width:520px;color:var(--muted)}.hero-note{display:flex;align-items:center;gap:10px;font-size:11px;margin-top:38px;color:var(--muted)}.hero-note .icon{width:17px;height:17px;color:var(--deep-green)}.hero-visual{position:relative;min-width:0;padding:0 0 10px 0}.hero-image{height:505px;width:100%;object-fit:cover;border-radius:24px 24px 100px 24px}.hero-visual:before{content:'';position:absolute;inset:20px -13px -4px 20px;border:1px solid #b7ddd0;border-radius:24px 24px 100px 24px;z-index:0}.hero-visual>img{position:relative}.photo-caption{position:absolute;left:24px;right:40px;bottom:38px;display:grid;grid-template-columns:1fr auto;align-items:center;background:rgba(10,36,43,.79);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(9px);border-radius:14px;color:white;padding:20px 22px}.photo-caption span{font-size:8px;letter-spacing:.15em;grid-column:1}.photo-caption strong{font-family:Poppins,Arial,sans-serif;font-weight:500;font-size:20px;letter-spacing:-.04em}.photo-caption .icon{grid-column:2;grid-row:1/3;width:26px;height:26px}.floating-card{position:absolute;top:24px;right:24px;display:flex;align-items:center;gap:12px;max-width:calc(100% - 48px);background:white;padding:14px 18px;border-radius:14px;box-shadow:0 8px 25px #102b3520}.floating-card>.icon{color:var(--deep-green);background:#edf8f1;width:38px;height:38px;border-radius:10px;padding:7px}.floating-card strong,.floating-card span{display:block}.floating-card strong{font-size:11px}.floating-card span{font-size:9px;color:var(--muted)}
.section{padding:80px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:36px}.section-heading h2{margin-bottom:0}.section-description{margin:18px 0 0;max-width:640px;color:var(--muted);font-size:15px}.soft-section{background:var(--mint)}.strip-section{padding:0}.service-strip{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);padding:26px 0;gap:24px}.service-strip>div{display:flex;align-items:center;justify-content:center;gap:13px;font-size:11px;font-weight:700}.service-strip>div+div{border-left:1px solid var(--line)}.service-strip .icon{color:var(--deep-green);width:20px;height:20px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-tile{display:grid;grid-template-columns:1.15fr 1fr;min-height:326px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:white;transition:border-color .2s,box-shadow .2s}.service-tile:hover{border-color:#b1d9c8;box-shadow:0 15px 30px #133f2f0a}.service-tile-copy{padding:28px;display:flex;flex-direction:column;align-items:flex-start}.tile-number{font-size:11px;letter-spacing:.08em;color:var(--muted);display:flex;gap:10px;align-items:center;margin-bottom:24px}.tile-number .icon{width:18px;height:18px;color:var(--deep-green)}.service-tile h3{font-size:24px}.service-tile p{font-size:13px;line-height:1.9;color:var(--muted)}.service-tile .text-link{margin-top:auto;font-size:10px}.service-tile-image{overflow:hidden;background:#e8f0ed}.service-tile-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-tile:hover img{transform:scale(1.03)}.service-tile-image.vehicle-image{background:white;display:flex;align-items:center}.vehicle-image img{object-fit:contain;height:auto}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start}.split-section p:not(.eyebrow){color:var(--muted)}.split-section h2{margin-bottom:24px}.prose{padding-top:8px}.prose p{font-size:15px;line-height:1.9}.tide-feature{display:grid;grid-template-columns:1fr 1fr;background:#e6f4ec;border-radius:24px;overflow:hidden}.tide-feature-copy{padding:50px;align-self:center}.tide-feature-copy>.icon{width:38px;height:38px;margin-bottom:24px;color:var(--deep-green)}.tide-feature-copy h2{font-size:34px}.tide-feature-copy p:not(.eyebrow){color:var(--muted);font-size:13px;max-width:410px}.tide-feature-image img{width:100%;height:100%;min-height:430px;object-fit:cover;object-position:72% center}.cta-section{padding:20px 0 80px}.callout{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:52px 58px;background:var(--ink);border-radius:24px;color:white;position:relative;overflow:hidden}.callout:before{content:'';position:absolute;right:10%;top:-120px;width:300px;height:300px;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.callout:after{content:'';position:absolute;right:-100px;bottom:-280px;width:450px;height:450px;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.callout>div,.callout>a{position:relative;z-index:1}.callout h2{font-size:33px;max-width:700px;margin-bottom:14px}.callout p{color:#c5d8d3;font-size:13px;max-width:640px;margin-bottom:0}.callout .eyebrow{color:#73e4b7;margin-bottom:16px;font-size:9px}.callout>.button{flex-shrink:0}.button-stack{display:flex;flex-direction:column;gap:12px;flex-shrink:0}.callout .small-note{font-size:10px;margin-top:20px}
.page-hero{padding:54px 0 58px;background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);border-bottom:1px solid var(--line)}.page-hero>.container{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:center}.page-hero .breadcrumb{font-size:10px;display:block;color:var(--muted);margin-bottom:34px;letter-spacing:.01em;text-transform:none}.breadcrumb span{margin:0 10px;color:#97b2a8}.page-hero .eyebrow{margin-bottom:15px}.page-hero .hero-description{font-size:14px;margin-bottom:0}.page-hero .button-row{margin-top:28px}.page-hero-image{position:relative;border-radius:24px;overflow:hidden;align-self:stretch;min-height:405px;background:#e4efe9}.page-hero-image>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.photo-marker{position:absolute;bottom:20px;left:20px;background:white;border-radius:8px;padding:9px 12px;display:flex;gap:8px;align-items:center;font-size:9px;font-weight:700}.photo-marker .icon{width:14px;height:14px;color:var(--deep-green)}.rental-hero .page-hero-image{background:white}.rental-hero .page-hero-image>img{object-fit:contain;padding:18px}.rental-hero .photo-marker{border:1px solid var(--line)}.store-hero .page-hero-image>img{object-position:58% center}.tide-hero .page-hero-image>img{object-position:75% center}.tide-hero h1{font-size:clamp(35px,3.6vw,49px)}
.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.two-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.support-card{background:white;border:1px solid var(--line);border-radius:20px;padding:30px}.support-card>.icon{width:32px;height:32px;color:var(--deep-green);margin-bottom:24px}.support-card h3{font-size:21px}.support-card p{font-size:13px;color:var(--muted);line-height:1.9}.support-card p:last-child{margin-bottom:0}.support-card .check-list{margin-bottom:0}.check-list{padding:0;margin:22px 0;list-style:none;display:grid;gap:10px}.check-list li{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:var(--muted);line-height:1.65}.check-list .icon{width:15px;height:15px;margin-top:3px;color:var(--deep-green)}.number-circle{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #c0dfd0;background:#eef9f3;border-radius:50%;font-size:12px;font-weight:800;color:var(--deep-green);margin-bottom:24px}.tour-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.tour-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:white}.tour-photo{height:230px;overflow:hidden}.tour-photo img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.tour-card:hover .tour-photo img{transform:scale(1.025)}.tour-copy{padding:28px 30px}.tour-copy .eyebrow{font-size:8px;margin-bottom:12px}.tour-copy h3{font-size:23px}.tour-copy>p{font-size:13px;color:var(--muted)}details>summary{list-style:none;cursor:pointer}details>summary::-webkit-details-marker{display:none}details>summary .icon{width:18px;height:18px;transition:transform .2s}details[open]>summary .icon{transform:rotate(90deg)}.tour-copy summary,.vehicle-copy summary{display:flex;align-items:center;justify-content:space-between;color:var(--deep-green);font-size:11px;font-weight:800;gap:15px;padding-top:16px;border-top:1px solid var(--line)}.details-content{padding-top:18px}.details-content p{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:12px}.details-content .check-list{margin:10px 0 20px}.itinerary-panel{display:grid;grid-template-columns:1fr 1fr;background:#e8f5ed;border-radius:24px;overflow:hidden}.itinerary-panel>div{padding:48px}.itinerary-panel p:not(.eyebrow){color:var(--muted);max-width:420px;font-size:13px}.itinerary-panel>img{width:100%;height:100%;max-height:430px;object-fit:cover;align-self:stretch}.map-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:center}.map-layout p:not(.eyebrow){color:var(--muted);max-width:330px;font-size:13px}.map-layout iframe{width:100%;height:380px;border:0;border-radius:20px;background:#eaf3ef}.vehicle-card{border:1px solid var(--line);border-radius:20px;background:white;overflow:hidden}.vehicle-photo{height:215px;display:flex;align-items:center;justify-content:center;background:white;overflow:hidden;padding:14px}.vehicle-photo>img{width:100%;height:100%;object-fit:contain}.vehicle-copy{padding:25px 28px}.vehicle-copy .eyebrow{font-size:8px;margin-bottom:9px}.vehicle-copy h3{font-size:20px;margin-bottom:16px}.vehicle-price{font-size:12px;color:var(--muted);line-height:1.9}.vehicle-price span{font-weight:800;color:var(--ink)}.vehicle-copy details{margin-bottom:20px}.vehicle-copy>.button{width:100%;font-size:11px;gap:15px;padding:12px 14px}.included-strip{display:flex;align-items:center;gap:38px;margin-top:28px;border-top:1px solid var(--line);padding-top:25px}.included-strip strong{font-size:12px;white-space:nowrap}.included-strip .check-list{grid-template-columns:repeat(2,1fr);flex:1;margin:0;column-gap:24px}.leasing-notes{margin-top:28px}.compact-vehicle .vehicle-copy{padding-top:5px}.compact-vehicle .vehicle-copy h3{margin-bottom:0}.inline-note{font-size:12px;color:var(--muted);background:var(--mint);padding:18px 22px;border-left:3px solid var(--green);margin-top:26px}.faq-list{display:grid;gap:0}.faq-item{border-bottom:1px solid #c9ded5;padding:20px 0}.faq-item:first-child{padding-top:0}.faq-item summary{font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq-item summary>span{font-size:21px;font-weight:400;color:var(--deep-green)}.faq-item[open] summary>span{transform:rotate(45deg)}.faq-item p{font-size:12px!important;margin-bottom:3px}.faq-item a,.support-card p a{color:var(--deep-green);text-decoration:underline;text-underline-offset:3px}
.business-card{border:1px solid var(--line);background:white;border-radius:20px;padding:36px 38px}.business-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.business-card-top>.icon{width:30px;height:30px;color:var(--deep-green)}.business-card-top .tile-number{margin:0}.business-card h3{max-width:380px;font-size:26px}.business-card p{font-size:13px;color:var(--muted);line-height:1.9;max-width:470px}.business-card .check-list{border-top:1px solid var(--line);padding-top:22px;margin-bottom:0}.store-intro>article{border-radius:24px;padding:42px}.retail-product-panel{background:white;border:1px solid var(--line);overflow:hidden}.store-intro h2{font-size:32px}.store-intro p:not(.eyebrow){font-size:13px;color:var(--muted)}.product-image{height:240px;margin:28px -42px -42px;background:#e9f3ed;overflow:hidden}.product-image>img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.retail-coming-panel{background:#eef7f2;border:1px solid #d2e9dd;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.badge{display:inline-flex;align-items:center;padding:6px 12px;border:1px solid #b7d9c8;border-radius:30px;font-size:9px;letter-spacing:.14em;font-weight:800;color:var(--deep-green);margin-bottom:35px}.retail-coming-panel>.icon{width:42px;height:42px;margin-bottom:26px;color:var(--deep-green)}.retail-coming-panel p{max-width:350px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.process-grid article{border-top:1px solid #b7d7c9;padding-top:28px}.process-grid span{font-family:Poppins,Arial,sans-serif;font-size:36px;font-weight:400;color:var(--deep-green);letter-spacing:-.05em;display:block;margin-bottom:20px}.process-grid h3{font-size:21px}.process-grid p{font-size:13px;color:var(--muted);max-width:290px}.tide-story{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.tide-logo-panel{display:flex;align-items:center;justify-content:center;background:#eef7f2;border-radius:24px;padding:30px;min-height:280px}.tide-logo-panel img{width:min(300px,100%);max-height:250px;object-fit:contain}.tide-story p:not(.eyebrow){color:var(--muted);font-size:14px}.focus-card{padding:38px;background:white;border:1px solid #d4e7db;border-radius:20px}.focus-card>.icon{width:35px;height:35px;color:var(--deep-green);margin-bottom:24px}.focus-card h3{font-size:25px;max-width:370px}.focus-card p{font-size:13px;line-height:1.9;color:var(--muted)}.focus-card .check-list{margin-bottom:0}.involvement-list{padding:0;margin:0;list-style:none;align-self:start}.involvement-list li{display:flex;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid #c9ded5;font-size:13px;font-weight:700}.involvement-list li:first-child{padding-top:0}.involvement-list li>span{font-size:10px;color:var(--deep-green);font-weight:800}.involvement-list li>.icon{margin-left:auto;width:18px;height:18px}.involvement-section .button{margin-top:8px}
.booking-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px;align-items:start}.booking-intro{padding-top:32px}.booking-intro h2{font-size:35px}.booking-intro>p:not(.eyebrow){font-size:13px;line-height:1.9;color:var(--muted);max-width:340px}.form-panel{padding:40px;background:white;border:1px solid var(--line);border-radius:24px;box-shadow:0 15px 50px #163b2505;min-width:0}.form-panel>.eyebrow{font-size:9px;margin-bottom:12px}.form-panel h2{font-size:26px;margin-bottom:12px}.form-panel>p:not(.eyebrow){font-size:12px;color:var(--muted)}.enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px;margin-top:25px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{font-size:12px;font-weight:800;letter-spacing:.015em}.field label>span{color:var(--deep-green)}.field input,.field textarea,.field select{width:100%;min-width:0;background:#fbfdfb;border:1px solid #d7e4dd;border-radius:9px;padding:12px 14px;color:var(--ink);font-size:14px;line-height:1.6}.field input,.field select{min-height:45px}.field textarea{resize:vertical;min-height:130px}.field input[type=file]{font-size:10px}.field input[type=file]::file-selector-button{border:0;background:#e8f4ee;border-radius:5px;color:var(--ink);padding:5px 8px;margin-right:10px;font-weight:700}.field-full{grid-column:1/-1}.form-bottom{grid-column:1/-1;display:flex;align-items:center;gap:25px;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:4px}.form-bottom p{font-size:11px;line-height:1.8;color:var(--muted);margin:0;max-width:310px}.form-bottom .button{font-size:10px;padding:12px 17px;white-space:nowrap;gap:15px;flex-shrink:0}.form-intent-note{grid-column:1/-1;background:#eaf6ee;border:1px solid #cae7d6;font-size:11px;padding:13px 16px;margin:0;border-radius:8px;color:var(--deep-green)}.form-warning{font-size:11px;color:#963b26}.contact-hero{padding:70px 0 20px;background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}.contact-heading{text-align:center;max-width:900px;margin:0 auto}.contact-heading h1{font-size:clamp(35px,4.2vw,57px)}.contact-heading>p:not(.eyebrow){color:var(--muted);font-size:14px}.contact-channels-section{padding-top:30px;padding-bottom:70px}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.contact-channel{padding:25px 24px;border:1px solid var(--line);background:white;border-radius:18px;transition:border-color .2s,box-shadow .2s,transform .2s;min-width:0}.contact-channel:hover{border-color:#7ecbae;transform:translateY(-3px);box-shadow:0 12px 25px #153a2c08}.contact-channel-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.contact-channel-top>.icon:first-child{width:30px;height:30px;color:var(--deep-green)}.contact-channel-top>.icon:last-child{width:17px;height:17px;color:#8ca99d}.contact-channel h2{font-size:21px;margin-bottom:10px}.contact-channel p{font-size:11px;line-height:1.6;color:var(--muted);margin-bottom:16px}.contact-channel strong{display:block;font-size:11px;color:var(--deep-green);overflow-wrap:anywhere}.response-note{display:flex;align-items:flex-start;gap:15px;margin-top:36px;padding-top:28px;border-top:1px solid #c8dfd3}.response-note>.icon{color:var(--deep-green);width:28px;height:28px}.response-note p{font-size:11px;color:var(--muted);line-height:2}.response-note .text-link{font-size:10px}
.facts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.fact-card{border-top:2px solid #cce7d9;padding:22px 18px;background:white;border-radius:0 0 12px 12px}.fact-card h3{font-size:17px}.fact-card p{font-size:12px;color:var(--muted);margin-bottom:0}.history-list{display:grid;gap:28px;border-left:1px solid #b7d7c9;padding-left:30px}.history-list h3{font-size:21px}.history-list p{font-size:13px}.site-footer{background:#0d222a;color:#c0d2cc;padding:65px 0 24px;border-top:4px solid;border-image:var(--gradient) 1}.footer-top{display:grid;grid-template-columns:1.25fr .8fr 1fr;gap:75px;padding-bottom:50px}.footer-brand>img{width:155px;height:110px;object-fit:contain;object-position:left center;margin:-15px 0 16px}.footer-brand>p{font-size:11px;max-width:310px;line-height:1.8;margin-bottom:20px}.footer-title{font-size:11px;color:white;font-weight:800;margin-bottom:20px}.site-footer nav{display:grid;gap:8px;font-size:11px}.site-footer nav a:hover,.footer-contact>a:hover{color:white}.footer-contact>a,.footer-contact>span{display:block;font-size:11px;margin-bottom:10px;overflow-wrap:anywhere}.footer-contact .text-link{color:#83e6bb;margin-top:18px;display:inline-flex}.social-row{display:flex;align-items:center;gap:10px}.social-row a{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #3c5655;border-radius:50%;color:#dbede6}.social-row a:hover{background:#254a43}.social-row .icon{width:15px;height:15px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #2c4448;padding-top:23px;font-size:9px;color:#94aca6}.footer-bottom a{color:#c6dcd3}
@media(min-width:1600px){.home-hero{padding-top:80px;padding-bottom:65px}.hero-image{height:530px}}
@media(max-width:1119px){#main-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fbfcfa;padding:18px 32px 28px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #0d222a12;max-height:calc(100dvh - 95px);overflow:auto}#main-nav.is-open{display:grid;grid-template-columns:1fr 1fr;gap:8px 25px}#main-nav>a{padding:12px 8px}#main-nav>a[aria-current=page]:after{left:8px;bottom:7px}.menu-button{display:block}.header-inner{min-height:78px}.home-hero>.container{gap:35px}.home-hero h1{font-size:47px}.hero-image{height:460px}.page-hero>.container{gap:40px}.page-hero h1{font-size:43px}.page-hero-image{min-height:360px}.service-tile{grid-template-columns:1.4fr 1fr}.service-tile-copy{padding:25px}.service-tile h3{font-size:21px}.split-section{gap:45px}.tide-feature-copy{padding:38px}.tide-feature-copy h2{font-size:29px}.callout{padding:42px}.callout h2{font-size:29px}.booking-layout{gap:35px;grid-template-columns:.65fr 1.35fr}.form-panel{padding:30px}.form-bottom{flex-direction:column;align-items:flex-start;gap:16px}.form-bottom p{max-width:none}.contact-grid{grid-template-columns:repeat(2,1fr)}.footer-top{gap:40px}.business-card{padding:30px}.business-card h3{font-size:23px}.tide-story{gap:50px}}
@media(max-width:767px){html{scroll-padding-top:100px}.container{width:calc(100% - 40px)}.utility-bar .container{min-height:32px;font-size:9px}.utility-bar>a{font-size:9px}.utility-bar a span{display:none}.utility-bar .icon{width:12px;height:12px}.header-inner{min-height:74px}.brand img{width:130px;height:50px}.site-header{backdrop-filter:none}#main-nav.is-open{grid-template-columns:1fr;padding:16px 20px 22px;font-size:13px}.home-hero{padding:42px 0 35px}.home-hero>.container{grid-template-columns:1fr;gap:34px}.home-hero .hero-copy{max-width:560px}.home-hero h1{font-size:clamp(36px,7.8vw,51px)}.home-hero .eyebrow{font-size:8px;letter-spacing:.13em}.hero-description{font-size:13px;max-width:none;line-height:1.85}.hero-note{margin-top:25px;font-size:10px}.hero-image{height:390px;border-radius:20px 20px 65px 20px}.hero-visual:before{inset:12px -7px 0 12px;border-radius:20px 20px 65px 20px}.floating-card{top:17px;right:17px;padding:10px 13px}.floating-card strong{font-size:10px}.floating-card span{font-size:8px}.photo-caption{left:18px;right:30px;bottom:30px;padding:16px 18px}.photo-caption strong{font-size:19px}.section{padding:52px 0}.section-heading{margin-bottom:27px;display:block}.section-description{font-size:12px}.eyebrow{font-size:9px;margin-bottom:14px}h2{font-size:29px}.strip-section{padding:0}.service-strip{gap:14px;padding:20px 0;grid-template-columns:1fr}.service-strip>div{justify-content:flex-start;font-size:10px}.service-strip>div+div{border-left:0}.service-strip .icon{width:17px;height:17px}.service-grid,.tour-grid,.two-grid,.three-grid,.split-section,.tide-feature,.itinerary-panel,.map-layout,.booking-layout,.tide-story{grid-template-columns:1fr}.service-grid{gap:18px}.service-tile{grid-template-columns:1.2fr 1fr;min-height:280px}.service-tile-copy{padding:24px}.service-tile h3{font-size:21px}.service-tile p{font-size:12px;line-height:1.8}.tile-number{margin-bottom:20px;font-size:10px}.service-tile .text-link{font-size:10px}.split-section{gap:22px}.split-section h2{margin-bottom:10px}.prose{padding-top:0}.prose p{font-size:13px}.tide-feature-copy{padding:32px}.tide-feature-copy h2{font-size:28px}.tide-feature-image img{height:290px;min-height:0;object-position:72% center}.callout{display:block;padding:32px}.callout h2{font-size:28px}.callout p{font-size:12px}.callout>.button,.callout>.button-stack{margin-top:26px}.button-stack{align-items:flex-start}.cta-section{padding:0 0 52px}.page-hero{padding:32px 0 40px}.page-hero>.container{grid-template-columns:1fr;gap:30px}.page-hero .breadcrumb{margin-bottom:26px;font-size:9px}.page-hero h1{font-size:clamp(35px,7.7vw,46px)}.page-hero .hero-description{font-size:13px}.page-hero-image{min-height:290px;height:290px}.page-hero .button-row{margin-top:22px}.tide-hero h1{font-size:36px}.photo-marker{bottom:16px;left:16px;padding:7px 10px;font-size:8px}.tour-photo{height:220px}.tour-copy{padding:26px}.tour-copy h3{font-size:22px}.tour-copy>p{font-size:12px}.support-card{padding:26px}.three-grid,.two-grid{gap:18px}.itinerary-panel>div{padding:32px}.itinerary-panel>img{height:270px}.booking-layout{gap:28px}.booking-intro{padding-top:0}.booking-intro h2{font-size:30px}.booking-intro>p:not(.eyebrow){max-width:500px}.form-panel{padding:28px}.form-panel h2{font-size:24px}.map-layout{gap:28px}.map-layout iframe{height:300px}.map-layout p:not(.eyebrow){max-width:none}.vehicle-photo{height:230px}.vehicle-copy{padding:24px 28px}.vehicle-copy h3{font-size:22px}.vehicle-copy>.button{max-width:300px}.included-strip{display:block}.included-strip .check-list{grid-template-columns:1fr;margin-top:15px;gap:8px}.leasing-notes{margin-top:20px}.business-card{padding:29px}.business-card h3{font-size:24px}.business-card p{font-size:12px}.store-intro>article{padding:32px}.store-intro h2{font-size:29px}.product-image{margin:26px -32px -32px}.retail-coming-panel{min-height:340px}.badge{margin-bottom:25px}.process-grid{grid-template-columns:1fr;gap:24px}.process-grid article{padding-top:20px}.process-grid span{float:left;font-size:30px;margin:0 23px 16px 0}.process-grid h3{margin-bottom:12px}.process-grid p{max-width:none;margin-left:64px;font-size:12px}.tide-story{gap:28px}.tide-logo-panel{min-height:240px;padding:22px}.tide-story p:not(.eyebrow){font-size:13px}.focus-card{padding:29px}.focus-card h3{font-size:23px}.focus-card p{font-size:12px}.involvement-list{margin-top:10px}.involvement-list li{font-size:12px;gap:12px}.contact-hero{padding:42px 0 10px}.contact-heading{text-align:left}.contact-heading h1{font-size:clamp(34px,7.6vw,44px)}.contact-heading>p:not(.eyebrow){font-size:13px}.contact-heading br{display:none}.contact-channels-section{padding-top:22px;padding-bottom:42px}.contact-grid{gap:14px}.contact-channel{padding:21px}.contact-channel h2{font-size:20px}.contact-channel p{font-size:10px}.contact-channel strong{font-size:10px}.response-note{margin-top:25px;padding-top:20px}.facts-grid{grid-template-columns:1fr 1fr;gap:16px}.fact-card{padding:18px 14px}.fact-card h3{font-size:16px}.fact-card p{font-size:11px}.history-list{padding-left:23px;margin-top:10px}.history-list p{font-size:12px}.site-footer{padding:45px 0 24px}.footer-top{grid-template-columns:1fr 1fr;gap:35px;padding-bottom:35px}.footer-brand{grid-column:1/-1}.footer-brand>img{height:90px;width:140px;margin-bottom:12px}.footer-brand>p{max-width:330px}.footer-contact>a,.footer-contact>span{font-size:10px}.footer-bottom{flex-wrap:wrap;font-size:8px;row-gap:12px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:479px){.container{width:calc(100% - 32px)}.button{padding:12px 17px;font-size:11px;gap:12px;min-height:46px}.home-hero .button-row{gap:10px}.hero-image{height:325px}.photo-caption strong{font-size:17px}.floating-card .icon{width:32px;height:32px}.service-tile{grid-template-columns:1.4fr 1fr;min-height:310px}.service-tile-copy{padding:23px 20px}.service-tile h3{font-size:20px}.service-tile .text-link{font-size:9px;gap:7px}.service-tile .text-link .icon{width:15px;height:15px}.page-hero-image{height:260px;min-height:260px}.page-hero h1{font-size:34px}.tide-hero h1{font-size:33px}.button-row{gap:9px}.form-panel{padding:24px 20px}.enquiry-form{grid-template-columns:1fr;gap:17px}.field{grid-column:1}.field label{font-size:11px}.field input,.field textarea,.field select{font-size:13px}.form-bottom .button{width:100%;font-size:12px}.contact-grid{grid-template-columns:1fr}.contact-channel{display:grid;grid-template-columns:42px 1fr;column-gap:16px;row-gap:5px;padding:22px}.contact-channel-top{grid-row:1/4;grid-column:1;display:block;align-self:start;margin:0}.contact-channel-top>.icon:last-child{display:none}.contact-channel h2{grid-column:2;margin-bottom:0}.contact-channel p{grid-column:2;margin:0}.contact-channel strong{grid-column:2;font-size:11px}.callout{padding:30px 26px}.callout h2{font-size:25px}.support-card{padding:25px}.facts-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr;gap:26px}.footer-brand{grid-column:1}.site-footer nav{grid-template-columns:1fr 1fr;gap:9px 20px}.footer-contact .text-link{margin-top:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover,.contact-channel:hover{transform:none}}

/* TropiGo's original identity, paired with the new body layout. */
body{font-weight:400}h1,h2,h3{letter-spacing:-.035em;font-weight:600}.eyebrow{letter-spacing:.11em;font-weight:600}.site-header{position:fixed;top:0;left:0;right:0;border:0;background:transparent;backdrop-filter:none}.site-header>.container{width:min(1280px,calc(100% - 48px))}.header-inner{margin-top:14px;min-height:108px;padding:12px 22px;border:1px solid rgba(255,255,255,.7);border-radius:18px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);box-shadow:0 8px 30px rgba(2,6,23,.1);gap:24px}.brand{display:flex;align-items:center;gap:14px}.brand-name{font-size:15px;font-weight:600;letter-spacing:-.02em;white-space:nowrap}.logo-frame{display:block;position:relative;width:170px;height:84px;overflow:hidden;flex-shrink:0}.brand .logo-frame img,.logo-frame img{position:absolute;left:0;top:50%;width:170px;height:170px;max-width:none;transform:translateY(-50%);object-fit:contain}.brand img{margin:0}#main-nav{gap:22px;font-size:12px;font-weight:500}#main-nav>a:last-child{background:var(--gradient);color:#082e35;border-color:transparent;border-radius:12px;font-weight:700;padding:12px 18px}#main-nav>a:last-child[aria-current=page]:after{display:none}#main-nav>a:last-child:hover{background:var(--gradient);filter:brightness(.97)}.menu-button{font-size:12px;font-weight:600;padding:12px 15px;border-color:#cddbd5}.page-hero{padding-top:172px}.contact-hero{padding-top:175px}.link-arrow{font-size:19px;font-weight:400;line-height:1;flex-shrink:0}.button .link-arrow{font-size:19px}.text-link .link-arrow{font-size:17px}.disclosure-mark{font-size:21px;font-weight:400;color:var(--deep-green)}details[open]>summary .disclosure-mark{transform:rotate(45deg)}.service-tile .tile-number{font-size:13px;letter-spacing:0;margin-bottom:20px}.business-card-top{justify-content:flex-start}.business-card-top .tile-number{font-size:15px}.number-circle{background:none;border:0;border-radius:0;width:auto;height:auto;justify-content:flex-start;font-size:17px;margin-bottom:22px;font-weight:500}.callout:before,.callout:after{content:none}.social-row{gap:16px}.social-row a{width:auto;height:auto;border:0;border-radius:0;font-size:11px;line-height:1.8}.social-row a:hover{background:none;color:white;text-decoration:underline;text-underline-offset:4px}.contact-channel h2{margin-top:0}.contact-channel strong{font-weight:500}.contact-channel{padding-top:30px}.tide-feature-copy h2{font-size:31px}.service-tile-copy h3,.tour-copy h3,.vehicle-copy h3{font-weight:600}.tour-copy summary,.vehicle-copy summary{font-weight:500}.response-note{gap:0}.original-hero{position:relative;isolation:isolate;overflow:hidden;min-height:785px;padding:176px 0 92px;background:#16394a}.original-hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}.original-hero-shade{position:absolute;inset:0;background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);z-index:-1}.original-hero:after{content:'';position:absolute;left:0;right:0;bottom:0;height:80px;background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);z-index:-1;pointer-events:none}.original-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}.original-hero-copy{color:white}.original-hero-copy h1{font-size:clamp(39px,4.05vw,53px);line-height:1.23;letter-spacing:-.045em;font-weight:600;max-width:630px;margin-bottom:22px}.hero-gradient{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.original-hero-copy>p{font-size:15px;line-height:1.9;max-width:590px;color:rgba(255,255,255,.92);margin-bottom:24px}.original-hero-copy .button-row{margin-top:28px}.button-hero-outline{background:rgba(255,255,255,.1);color:white;border-color:rgba(255,255,255,.45);backdrop-filter:blur(4px)}.hero-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:32px;max-width:560px}.hero-highlights>div{border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.08);backdrop-filter:blur(5px);padding:14px;text-align:center}.hero-highlights strong{display:block;font-size:18px;font-weight:500;letter-spacing:-.02em;line-height:1.4;margin-bottom:5px}.hero-highlights span{display:block;font-size:10px;color:rgba(255,255,255,.85);line-height:1.6}.quick-request-panel{background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.6);border-radius:24px;padding:28px;box-shadow:0 15px 50px rgba(5,20,33,.18);color:var(--ink);backdrop-filter:blur(10px);min-width:0}.quick-request-heading{display:flex;align-items:center;gap:18px;padding-bottom:20px;border-bottom:1px solid #dce6df}.quick-logo{width:134px;height:70px}.quick-logo img{width:134px;height:134px}.quick-request-heading p{font-size:11px;color:var(--muted);margin:0 0 6px}.quick-request-heading h2{font-size:22px;line-height:1.3;margin:0;letter-spacing:-.025em}.quick-request-form{gap:16px;margin-top:22px}.quick-request-form .field label{font-size:11px;font-weight:500}.quick-request-form .field input,.quick-request-form .field select{font-size:12px;background:white;min-height:44px;padding:11px 12px}.quick-request-form .form-bottom{border:0;padding:0;margin:0;display:flex;flex-direction:column;align-items:stretch;gap:12px}.quick-request-form .form-bottom .button{width:100%;font-size:12px;padding:13px 20px;gap:15px}.quick-request-form .form-bottom p{font-size:10px;max-width:none;line-height:1.7}.page-home #services .section-heading h2{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.page-home #services .section-heading{display:block;text-align:center;max-width:850px;margin:0 auto 38px}.page-home #services .section-description{max-width:none}.page-home .service-tile h3{font-size:25px}
@media(max-width:1119px){.header-inner{min-height:100px;padding:10px 18px}.brand-name{font-size:15px}#main-nav{top:calc(100% + 8px);left:24px;right:24px;padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.98);max-height:calc(100dvh - 150px)}.original-hero-grid{gap:35px;grid-template-columns:1fr 1fr}.original-hero{padding-top:160px;padding-bottom:75px;min-height:760px}.original-hero-copy h1{font-size:43px}.original-hero-copy>p{font-size:14px}.quick-request-panel{padding:24px}.quick-request-heading{gap:12px}.quick-request-heading h2{font-size:20px}.quick-logo{width:112px;height:60px}.quick-logo img{width:112px;height:112px}.hero-highlights{gap:9px}.hero-highlights>div{padding:12px 8px}.hero-highlights strong{font-size:16px}.hero-highlights span{font-size:9px}.page-hero,.contact-hero{padding-top:158px}}
@media(max-width:767px){.site-header>.container{width:calc(100% - 24px)}.header-inner{margin-top:12px;min-height:92px;padding:7px 15px;border-radius:16px}.brand{gap:12px}.logo-frame{width:146px;height:76px}.brand .logo-frame img{width:146px;height:146px}.brand-name{font-size:13px}.menu-button{font-size:11px;padding:10px 12px}#main-nav{left:12px;right:12px;top:calc(100% + 8px);padding:14px}#main-nav.is-open{font-size:13px;gap:5px}#main-nav>a{padding:11px 10px}#main-nav>a:last-child{margin-top:4px;text-align:center;padding:12px}.original-hero{min-height:0;padding:148px 0 70px}.original-hero-grid{grid-template-columns:1fr;gap:35px}.original-hero-copy h1{font-size:clamp(35px,7.3vw,47px);max-width:580px}.original-hero-copy>p{font-size:14px;max-width:600px}.original-hero-background{object-position:58% center}.original-hero-shade{background:rgba(5,20,33,.72)}.original-hero-copy .button-row{margin-top:24px}.hero-highlights{max-width:580px;margin-top:26px;gap:12px}.hero-highlights strong{font-size:18px}.hero-highlights span{font-size:10px}.quick-request-panel{max-width:620px;padding:26px}.quick-request-heading{gap:22px}.quick-logo{width:134px;height:70px}.quick-logo img{width:134px;height:134px}.quick-request-heading h2{font-size:23px}.quick-request-form{grid-template-columns:1fr 1fr;gap:17px}.quick-request-form .field input,.quick-request-form .field select{font-size:14px}.page-hero,.contact-hero{padding-top:142px}.tide-feature-copy h2{font-size:29px}.page-home .service-tile h3{font-size:22px}.contact-channel{display:block;padding:25px}.contact-channel p{margin:10px 0 14px}.contact-channel strong{font-size:11px}.page-home #services .section-heading{margin-bottom:28px;text-align:left}}
@media(max-width:479px){.brand-name{display:none}.logo-frame{width:152px;height:78px}.brand .logo-frame img{width:152px;height:152px}.header-inner{min-height:94px}.original-hero{padding-top:142px}.original-hero-copy h1{font-size:35px;line-height:1.25}.original-hero-copy>p{font-size:13px}.hero-highlights{gap:8px}.hero-highlights>div{padding:12px 7px}.hero-highlights strong{font-size:14px}.hero-highlights span{font-size:9px}.quick-request-panel{padding:22px}.quick-request-heading{gap:16px}.quick-logo{width:110px;height:58px}.quick-logo img{width:110px;height:110px}.quick-request-heading h2{font-size:20px}.quick-request-form{grid-template-columns:1fr;gap:16px}.quick-request-form .field label{font-size:12px}.quick-request-form .form-bottom p{font-size:11px}.page-home .service-tile h3{font-size:21px}.tide-feature-copy h2{font-size:27px}.contact-channel h2{font-size:22px}.contact-channel p{font-size:12px}.contact-channel strong{font-size:12px}}

/* A brighter blue-and-green rhythm, with a place for customer stories. */
:root{--mint:#effbf6;--paper:#fcfefd;--muted:#486771}.soft-section{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}.service-tile{border-color:#cae4df;box-shadow:0 7px 24px rgba(15,98,88,.035)}.service-tile:nth-child(1){border-top:3px solid var(--blue)}.service-tile:nth-child(2){border-top:3px solid var(--green)}.service-tile:nth-child(3){border-top:3px solid #07a5b4}.service-tile:nth-child(4){border-top:3px solid #12ae65}.service-tile:hover{border-color:#26bba4;box-shadow:0 16px 32px rgba(15,98,88,.09)}.support-card,.business-card,.focus-card{border-color:#cde5de}.business-card:nth-child(2n+1){border-top:3px solid #21aece}.business-card:nth-child(2n){border-top:3px solid #24b974}.tide-feature{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}.callout{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}.callout h2{font-weight:500}.page-hero{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}.customer-cam-section{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%);border-top:1px solid #d1ece2;border-bottom:1px solid #d1ece2}.customer-cam-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:30px}.customer-cam-heading h2{font-size:43px;margin-bottom:14px}.customer-cam-heading>div>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:680px;margin-bottom:0}.customer-cam-heading>.button{flex-shrink:0;background:rgba(255,255,255,.6)}.customer-cam-empty{display:grid;grid-template-columns:1.05fr .95fr;border-radius:24px;overflow:hidden;background:white;border:1px solid #c8e6db}.cam-welcome-image{position:relative;min-height:355px}.cam-welcome-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}.cam-welcome-image span{position:absolute;left:20px;right:20px;bottom:20px;padding:10px 14px;border-radius:9px;background:rgba(5,29,41,.78);color:white;font-size:11px;line-height:1.7}.cam-welcome-copy{padding:45px;align-self:center}.cam-welcome-copy h3{font-size:31px;line-height:1.25;max-width:380px;margin-bottom:20px}.cam-welcome-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.85}.cam-welcome-copy .cam-empty-note{font-size:11px!important;color:#648278!important}.cam-welcome-copy .button-row{gap:15px 20px;margin-top:25px}.cam-welcome-copy .text-link{font-size:11px}.customer-cam-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:15px;scrollbar-color:#17ac80 #d9eee5;scrollbar-width:thin}.customer-story-card{scroll-snap-align:start;background:white;border:1px solid #c8e6db;border-radius:20px;overflow:hidden;min-width:0}.customer-story-card>img{width:100%;height:260px;object-fit:cover}.customer-story-copy{padding:26px}.customer-story-copy blockquote{margin:0 0 25px;font-size:16px;line-height:1.8;color:var(--ink)}.customer-story-copy .eyebrow{font-size:10px;margin-bottom:16px}.customer-story-name{font-size:13px;font-weight:600;margin:0}.customer-story-rating{font-size:12px;color:var(--deep-green);margin-top:6px;display:block}.customer-cam-controls{display:flex;align-items:center;justify-content:space-between;margin-top:18px;gap:20px}.customer-cam-controls>span{font-size:11px;color:var(--muted)}.customer-cam-controls>button{font-size:12px;color:var(--ink);border:1px solid #a8d7c8;padding:9px 17px;border-radius:9px;background:white}.customer-story-section{background:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}.publication-consent{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px}.publication-consent input{width:16px;height:16px;flex-shrink:0;margin:3px 0;accent-color:var(--deep-green)}.publication-consent label{font-size:11px;line-height:1.8;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:1119px){.customer-cam-track{grid-auto-columns:calc((100% - 24px)/2)}.cam-welcome-copy{padding:35px}.cam-welcome-copy h3{font-size:28px}}
@media(max-width:767px){.customer-cam-heading{display:block}.customer-cam-heading h2{font-size:34px}.customer-cam-heading>div>p:not(.eyebrow){font-size:13px}.customer-cam-heading>.button{margin-top:20px}.customer-cam-empty{grid-template-columns:1fr}.cam-welcome-image{min-height:285px}.cam-welcome-copy{padding:30px}.cam-welcome-copy h3{font-size:28px}.cam-welcome-copy>p:not(.eyebrow){font-size:13px}.customer-cam-track{grid-auto-columns:85%}.customer-story-card>img{height:250px}.customer-story-copy{padding:25px}.customer-story-copy blockquote{font-size:15px}.customer-cam-controls>span{display:none}.publication-consent label{font-size:12px}}

/* Original TropiGo colours, Poppins and generous readable body text. */
:root{--gradient:linear-gradient(135deg,#0ea5e9 0%,#22c55e 100%)}body{font-family:Poppins,Arial,sans-serif;font-size:17px;line-height:1.85;font-weight:400}h1,h2,h3{font-family:Poppins,Arial,sans-serif;letter-spacing:-.025em;font-weight:600}.button{color:white;font-size:16px;font-weight:600;min-height:52px;padding:14px 22px}.button-outline{background:transparent;color:var(--ink);border-color:#9ecfbf}.button-dark{color:white;background:var(--gradient)}.button-light{background:white;color:var(--deep-green)}.button-outline-light{color:white;background:transparent;border-color:rgba(255,255,255,.65)}.button-hero-outline{color:white;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5)}#main-nav{font-size:14px;gap:25px;font-weight:500}#main-nav>a:last-child{color:white;font-size:15px}.brand{gap:0}.text-link{font-size:16px;font-weight:500}.text-gradient,.hero-gradient{background:none;color:inherit;-webkit-background-clip:initial;background-clip:initial}.page-home #services .section-heading h2{background:none;color:var(--ink);-webkit-background-clip:initial;background-clip:initial}.section-description,.service-tile p,.support-card p,.business-card p,.focus-card p,.tour-copy>p,.details-content p,.vehicle-price,.check-list li,.tide-feature-copy p:not(.eyebrow),.store-intro p:not(.eyebrow),.process-grid p,.tide-story p:not(.eyebrow),.booking-intro>p:not(.eyebrow),.map-layout p:not(.eyebrow),.prose p,.split-section p:not(.eyebrow),.history-list p,.fact-card p{font-size:17px;line-height:1.85}.service-tile .text-link,.vehicle-copy>.button,.tour-copy summary,.vehicle-copy summary{font-size:15px}.service-tile-copy{padding:30px}.service-tile h3,.page-home .service-tile h3{font-size:25px}.service-tile .text-link{padding-top:8px}.section-heading{margin-bottom:32px}.support-card h3{font-size:24px}.business-card h3,.focus-card h3{font-size:27px}.support-card .check-list{margin-top:20px}.check-list li{font-size:16px}.three-grid,.two-grid,.service-grid{gap:26px}.soft-section{background:#f2faf7}.tide-feature{background:var(--gradient);color:white}.tide-feature-copy p:not(.eyebrow){color:white}.tide-feature .button{background:white;color:var(--deep-green)}.callout{background:var(--gradient);color:white}.callout h2,.callout p,.callout .small-note{color:white}.callout h2{font-size:35px;font-weight:600}.callout p{font-size:18px;line-height:1.8}.callout .small-note{font-size:15px}.callout .button-light{background:white;color:var(--deep-green)}.customer-cam-section{background:#f0fbf8;border-top:4px solid;border-image:var(--gradient) 1}.original-hero-shade{background:rgba(0,0,0,.59)}.original-hero:after{height:5px;background:var(--gradient)}.original-hero-copy>p{font-size:18px;line-height:1.85}.original-hero-copy h1{font-size:clamp(39px,4vw,53px)}.quick-request-heading h2{font-size:23px}.quick-request-heading>div>p{display:none}.quick-request-form .field label{font-size:14px}.quick-request-form .field input,.quick-request-form .field select{font-size:16px}.quick-request-form .form-bottom .button{font-size:16px;color:white}.quick-request-form .form-bottom p{font-size:13px}.hero-highlights strong{font-size:20px}.hero-highlights span{font-size:13px}.field label{font-size:14px;font-weight:500}.field input,.field select,.field textarea{font-size:16px}.form-panel>p:not(.eyebrow){font-size:16px}.form-panel h2{font-size:28px}.form-bottom p{font-size:13px}.form-bottom .button{font-size:15px}.contact-channel h2{font-size:25px}.contact-channel p{font-size:16px}.contact-channel strong{font-size:14px}.response-note p,.response-note .text-link{font-size:15px}.inline-note,.faq-item p{font-size:16px!important}.faq-item summary{font-size:18px}.included-strip strong,.footer-title{font-size:16px}.included-strip{align-items:flex-start}.footer-brand>p,.site-footer nav,.footer-contact>a,.footer-contact>span,.social-row a{font-size:14px}.footer-bottom{font-size:12px}.legacy-cover{position:relative;isolation:isolate;overflow:hidden;padding:176px 0 75px;min-height:545px;background:#202725;color:white}.legacy-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.legacy-cover-shade{position:absolute;inset:0;background:rgba(0,0,0,.62);z-index:-1}.legacy-cover>.container{position:relative}.cover-back{display:inline-flex;color:white;border:1px solid rgba(255,255,255,.45);border-radius:9px;padding:7px 14px;font-size:14px;margin-bottom:27px}.legacy-cover-copy{max-width:820px}.legacy-cover h1{font-size:clamp(36px,4vw,52px);color:white;margin-bottom:22px;line-height:1.22}.legacy-cover p{font-size:18px;line-height:1.8;color:white;max-width:800px;margin-bottom:20px}.legacy-cover .button-outline{color:white;border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.08)}.legacy-cover .button-row{margin-top:28px}.legacy-cover-store .legacy-cover-image{object-position:center 50%}.legacy-cover-rentals .legacy-cover-image{object-position:center 48%}.legacy-cover-tide .legacy-cover-image{object-position:center 50%}.customer-cam-heading h2{font-size:42px}.customer-cam-heading>div>p:not(.eyebrow){font-size:18px}.cam-subheading{font-size:22px;font-weight:500;margin:0 0 20px}.cam-reviews-heading{margin-top:42px}.cam-gallery{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#0da67f #dff2e9;padding-bottom:12px}.cam-photo{margin:0;overflow:hidden;border-radius:20px;scroll-snap-align:start;background:#d6eee4}.cam-photo img{width:100%;height:270px;object-fit:cover;display:block}.cam-gallery-controls{display:flex;justify-content:space-between;gap:20px;margin-top:12px}.cam-gallery-controls button{border:1px solid #a4d5c4;border-radius:9px;color:var(--ink);background:white;font-size:15px;padding:9px 16px}.cam-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cam-review{background:white;border:1px solid #c5e4d7;border-top:3px solid #16b88b;border-radius:18px;padding:28px}.cam-review blockquote{margin:0 0 24px;font-size:17px;line-height:1.8;color:var(--ink)}.cam-review-name{font-size:15px;font-weight:600;margin-bottom:4px}.cam-review-service{font-size:14px;color:var(--muted);margin:0}.itinerary-panel p:not(.eyebrow){font-size:17px}.process-grid h3{font-size:24px}.fact-card h3{font-size:21px}.photo-marker{font-size:13px}
@media(max-width:1119px){#main-nav{font-size:15px;gap:10px 20px}.button{font-size:15px}.legacy-cover{padding-top:162px}.original-hero-grid{grid-template-columns:1fr 1fr;gap:32px}.original-hero-copy h1{font-size:41px}.original-hero-copy>p{font-size:17px}.quick-request-panel{padding:24px}.quick-request-heading h2{font-size:20px}.quick-request-form .field label{font-size:13px}.quick-request-form .field input,.quick-request-form .field select{font-size:15px}.hero-highlights strong{font-size:17px}.hero-highlights span{font-size:11px}.cam-gallery{grid-auto-columns:calc((100% - 20px)/2)}.cam-reviews{grid-template-columns:1fr 1fr}.cam-review:last-child{grid-column:1/-1}}
@media(max-width:767px){body{font-size:16px}.original-hero-grid{grid-template-columns:1fr}.original-hero-copy>p{font-size:17px}.original-hero-copy h1{font-size:38px}.hero-highlights strong{font-size:18px}.hero-highlights span{font-size:12px}.quick-request-heading h2{font-size:23px}.quick-request-form .field label{font-size:14px}.quick-request-form .field input,.quick-request-form .field select{font-size:16px}.section-description,.service-tile p,.support-card p,.business-card p,.focus-card p,.tour-copy>p,.details-content p,.vehicle-price,.check-list li,.tide-feature-copy p:not(.eyebrow),.store-intro p:not(.eyebrow),.process-grid p,.tide-story p:not(.eyebrow),.booking-intro>p:not(.eyebrow),.map-layout p:not(.eyebrow),.prose p,.split-section p:not(.eyebrow),.history-list p,.fact-card p{font-size:16px;line-height:1.85}.service-tile .text-link,.vehicle-copy>.button,.tour-copy summary,.vehicle-copy summary{font-size:15px}.page-home .service-tile h3,.service-tile h3{font-size:23px}.service-tile-copy{padding:27px}.text-link{font-size:15px}.button{font-size:15px;padding:13px 19px}.support-card h3{font-size:23px}.business-card h3,.focus-card h3{font-size:25px}.callout h2{font-size:30px}.callout p{font-size:16px}.callout .small-note{font-size:14px}.legacy-cover{padding:145px 0 58px;min-height:470px}.legacy-cover h1{font-size:36px}.legacy-cover p{font-size:17px}.cover-back{font-size:13px;margin-bottom:24px}.legacy-cover .button-row{gap:12px}.legacy-cover-image{object-position:65% center}.legacy-cover-shade{background:rgba(0,0,0,.64)}.legacy-cover-tide .legacy-cover-image{object-position:73% center}.form-panel h2{font-size:25px}.form-panel>p:not(.eyebrow){font-size:15px}.form-bottom .button{font-size:15px}.contact-channel p{font-size:15px}.contact-channel strong{font-size:14px}.response-note p,.response-note .text-link{font-size:14px}.site-footer nav,.footer-contact>a,.footer-contact>span{font-size:14px}.footer-bottom{font-size:11px}.cam-gallery{grid-auto-columns:82%}.cam-photo img{height:260px}.cam-reviews{grid-template-columns:1fr}.cam-review:last-child{grid-column:auto}.cam-review blockquote{font-size:16px}.cam-subheading{font-size:21px}.customer-cam-heading h2{font-size:34px}.customer-cam-heading>div>p:not(.eyebrow){font-size:16px}.cam-gallery-controls button{font-size:14px}.fact-card h3{font-size:20px}}
@media(max-width:479px){.original-hero-copy h1{font-size:35px}.original-hero-copy>p{font-size:16px}.hero-highlights strong{font-size:15px}.hero-highlights span{font-size:11px}.quick-request-heading h2{font-size:20px}.quick-request-form .form-bottom p{font-size:13px}.field label{font-size:14px}.field input,.field select,.field textarea{font-size:16px}.service-grid{gap:20px}.service-tile{grid-template-columns:1.35fr 1fr}.service-tile-copy{padding:24px 20px}.page-home .service-tile h3,.service-tile h3{font-size:22px}.service-tile p{font-size:16px}.service-tile .text-link{font-size:14px}.legacy-cover h1{font-size:32px}.legacy-cover p{font-size:16px}.contact-channel h2{font-size:24px}.contact-channel p{font-size:16px}.contact-channel strong{font-size:14px}.cam-photo img{height:235px}}

.original-home-artwork{display:flex;align-items:center;justify-content:center;background:#17352f}.original-home-artwork img{width:100%;height:auto;object-fit:contain}.original-home-artwork:hover img{transform:none}.page-home .tide-feature-image{display:flex;align-items:center;justify-content:center;background:white;padding:40px}.page-home .tide-feature-image .home-tide-logo{width:min(370px,100%);height:auto;min-height:0;max-height:350px;object-fit:contain;object-position:center}.page-home .tide-feature-image{min-height:330px}@media(max-width:767px){.page-home .tide-feature-image{padding:30px;min-height:280px}.page-home .tide-feature-image .home-tide-logo{width:min(290px,100%);height:auto;max-height:260px}}

/* A closer rhythm, smaller body type and stronger TropiGo colour. */
:root{--paper:#fff;--mint:#eaf8f1;--line:#cfe3dc;--muted:#42616a;--radius:18px}
body{font-size:15.5px;line-height:1.7}
p{margin-bottom:16px}
h2{font-size:clamp(28px,2.8vw,36px);margin-bottom:16px}
h3{margin-bottom:12px}
.section{padding:60px 0}
.section-heading{gap:24px;margin-bottom:26px}
.section-heading h2:after{content:'';display:block;width:52px;height:4px;margin-top:14px;border-radius:4px;background:var(--gradient)}
.page-home #services .section-heading{margin-bottom:28px}
.page-home #services .section-heading h2:after{margin-left:auto;margin-right:auto}
.section-description{margin-top:14px}
.section-description,.service-tile p,.support-card p,.business-card p,.focus-card p,.tour-copy>p,.details-content p,.vehicle-price,.check-list li,.tide-feature-copy p:not(.eyebrow),.store-intro p:not(.eyebrow),.process-grid p,.tide-story p:not(.eyebrow),.booking-intro>p:not(.eyebrow),.map-layout p:not(.eyebrow),.prose p,.split-section p:not(.eyebrow),.history-list p,.fact-card p,.itinerary-panel p:not(.eyebrow){font-size:15.5px;line-height:1.7}
.three-grid,.two-grid,.service-grid,.tour-grid,.cam-reviews{gap:20px}
.service-tile,.support-card,.business-card,.focus-card,.tour-card,.vehicle-card,.fact-card{border-radius:16px;box-shadow:0 5px 18px rgba(15,98,88,.06)}
.service-tile{min-height:280px}
.service-tile-copy{padding:24px}
.service-tile h3,.page-home .service-tile h3{font-size:23px}
.service-tile p{margin-bottom:14px}
.support-card{padding:25px}
.business-card,.focus-card{padding:28px}
.business-card-top{margin-bottom:12px}
.business-card h3,.focus-card h3{font-size:24px}
.support-card h3,.process-grid h3{font-size:22px}
.support-card:nth-child(odd),.focus-card:nth-child(odd){border-top:3px solid var(--blue)}
.support-card:nth-child(even),.focus-card:nth-child(even){border-top:3px solid var(--green)}
.business-card .check-list{padding-top:16px}
.check-list{gap:8px;margin:16px 0}
.check-list li{font-size:15px}
.support-card .check-list{margin-top:16px}
.tour-copy{padding:24px}
.vehicle-copy{padding:22px 24px}
.tour-copy h3{font-size:22px}
.vehicle-copy h3{font-size:21px}
.text-link,.service-tile .text-link,.tour-copy summary,.vehicle-copy summary{font-size:14px}
.button{min-height:46px;padding:11px 20px;font-size:14px;gap:14px;border-radius:10px}
.vehicle-copy>.button,.form-bottom .button{font-size:14px}
.button-row{gap:10px;margin-top:22px}
.soft-section{background:#eaf8f1}
.itinerary-panel{background:#e2f6eb;border-radius:18px}
.itinerary-panel>div{padding:34px}
.store-intro>article{padding:32px;border-radius:18px}
.product-image{margin:22px -32px -32px}
.retail-coming-panel{background:#e2f6eb}
.split-section{gap:60px}
.tide-story{gap:60px}
.booking-layout{gap:48px}
.form-panel{padding:32px;border-radius:18px}
.form-panel>p:not(.eyebrow),.contact-channel p{font-size:15px;line-height:1.7}
.form-panel h2{font-size:26px}
.contact-channel{padding:23px;border-radius:16px;border-top:3px solid var(--blue)}
.contact-channel:nth-child(even){border-top-color:var(--green)}
.contact-channel h2{font-size:23px}
.faq-item{padding:16px 0}
.faq-item summary{font-size:16px}
.inline-note,.faq-item p{font-size:15px!important;line-height:1.7}
.process-grid{gap:32px}
.process-grid article{padding-top:22px}
.process-grid span{font-size:30px;margin-bottom:14px}
.tide-feature{border-radius:18px}
.tide-feature-copy{padding:36px}
.tide-feature-copy h2{font-size:32px}
.page-home .tide-feature-image{padding:32px}
.cta-section{padding:14px 0 60px}
.callout{padding:36px 40px;gap:32px;border-radius:18px}
.callout h2{font-size:31px;margin-bottom:12px}
.callout p{font-size:16px;line-height:1.7}
.callout .small-note{font-size:14px}
.customer-cam-section{background:var(--gradient);color:white;border:0}
.customer-cam-heading{margin-bottom:24px;gap:24px}
.customer-cam-heading h2{font-size:36px;margin-bottom:12px;color:white}
.customer-cam-heading>div>p:not(.eyebrow){font-size:15.5px;line-height:1.7;color:white}
.cam-subheading{font-size:20px;margin-bottom:16px;color:white}
.cam-reviews-heading{margin-top:30px}
.cam-photo{border-radius:16px;border:1px solid rgba(255,255,255,.45)}
.cam-gallery{scrollbar-color:white rgba(255,255,255,.22)}
.cam-gallery-controls button{font-size:14px;padding:8px 15px;background:transparent;border-color:rgba(255,255,255,.7);color:white}
.cam-gallery-controls button:hover{background:rgba(255,255,255,.14)}
.cam-review{padding:24px;border-radius:16px;box-shadow:0 5px 18px rgba(0,70,60,.08);color:var(--ink)}
.cam-review blockquote{font-size:15.5px;line-height:1.7;margin-bottom:18px}
.cam-review-name{font-size:14px}
.cam-review-service{font-size:13px}
.original-hero-shade,.legacy-cover-shade{background:rgba(0,0,0,.73)}
.original-hero-copy>p,.legacy-cover p{font-size:16px;line-height:1.75}
.original-hero-grid{gap:50px}
.quick-request-panel{border-radius:18px;padding:26px}
.quick-request-form{gap:14px;margin-top:18px}
.quick-request-form .form-bottom .button{font-size:14px;min-height:46px;padding:11px 18px}
.quick-request-heading{padding-bottom:16px}
.hero-highlights{gap:10px;margin-top:26px}
.hero-highlights>div{padding:12px;border-radius:10px}
.hero-highlights strong{font-size:18px}
.hero-highlights span{font-size:12px}
.site-footer{padding-top:48px}
@media(max-width:1119px){
 .original-hero-grid{gap:30px}
 .quick-request-panel{padding:24px}
 .split-section,.tide-story{gap:38px}
 .booking-layout{gap:30px}
 .hero-highlights strong{font-size:17px}
 .hero-highlights span{font-size:11px}
 .callout{padding:32px}
}
@media(max-width:767px){
 body{font-size:15px;line-height:1.7}
 .section{padding:44px 0}
 .section-heading{margin-bottom:22px}
 .page-home #services .section-heading{margin-bottom:24px}
 .page-home #services .section-heading h2:after{margin-left:0}
 .section-description,.service-tile p,.support-card p,.business-card p,.focus-card p,.tour-copy>p,.details-content p,.vehicle-price,.check-list li,.tide-feature-copy p:not(.eyebrow),.store-intro p:not(.eyebrow),.process-grid p,.tide-story p:not(.eyebrow),.booking-intro>p:not(.eyebrow),.map-layout p:not(.eyebrow),.prose p,.split-section p:not(.eyebrow),.history-list p,.fact-card p,.itinerary-panel p:not(.eyebrow){font-size:15px;line-height:1.7}
 .three-grid,.two-grid,.service-grid,.tour-grid,.cam-reviews{gap:18px}
 .service-tile-copy{padding:22px}
 .service-tile h3,.page-home .service-tile h3,.support-card h3,.process-grid h3{font-size:21px}
 .business-card,.focus-card,.support-card{padding:24px}
 .business-card h3,.focus-card h3{font-size:23px}
 .text-link,.service-tile .text-link,.vehicle-copy>.button,.tour-copy summary,.vehicle-copy summary{font-size:14px}
 .button{font-size:14px;min-height:46px;padding:11px 18px}
 .form-panel{padding:26px}
 .form-panel h2{font-size:24px}
 .contact-channel{padding:22px}
 .contact-channel p{font-size:15px}
 .split-section,.tide-story,.booking-layout{gap:26px}
 .store-intro>article{padding:26px}
 .product-image{margin:20px -26px -26px}
 .itinerary-panel>div{padding:28px}
 .tide-feature-copy{padding:28px}
 .tide-feature-copy h2{font-size:29px}
 .cta-section{padding:10px 0 44px}
 .callout{padding:28px}
 .callout h2{font-size:28px}
 .callout p{font-size:15px}
 .customer-cam-heading h2{font-size:31px}
 .customer-cam-heading>div>p:not(.eyebrow),.cam-review blockquote{font-size:15px;line-height:1.7}
 .cam-review{padding:22px}
 .cam-subheading{font-size:19px}
 .original-hero-shade,.legacy-cover-shade{background:rgba(0,0,0,.76)}
 .original-hero-copy>p,.legacy-cover p{font-size:15.5px;line-height:1.75}
 .quick-request-panel{padding:24px}
 .original-hero-grid{gap:28px}
 .hero-highlights strong{font-size:17px}
 .hero-highlights span{font-size:11px}
 .site-footer{padding-top:38px}
}
@media(max-width:479px){
 .service-tile-copy{padding:20px 18px}
 .service-tile h3,.page-home .service-tile h3{font-size:20px}
 .service-tile p{font-size:15px}
 .quick-request-panel{padding:22px}
 .hero-highlights strong{font-size:15px}
 .hero-highlights>div{padding:10px 6px}
 .contact-channel h2{font-size:22px}
 .contact-channel p{font-size:15px}
 .callout{padding:26px 24px}
}

/* Home: neutral surfaces, with the brand gradient reserved for actions. */
.page-home .customer-cam-section{background:white;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-image:none}
.page-home .customer-cam-heading h2,.page-home .cam-subheading{color:var(--ink)}
.page-home .customer-cam-heading>div>p:not(.eyebrow){color:var(--muted)}
.page-home .cam-gallery-controls button{background:white;border-color:#a4d5c4;color:var(--deep-green)}
.page-home .cam-gallery-controls button:hover{background:#edf8f1}
.page-home .cam-gallery{scrollbar-color:#0da67f #e5f1ec}
.page-home .tide-feature{background:#edf8f1;color:var(--ink);border:1px solid #cfe3dc}
.page-home .tide-feature-copy h2{color:var(--ink)}
.page-home .tide-feature-copy p:not(.eyebrow){color:var(--muted)}
.page-home .tide-feature .button{background:var(--gradient);color:white}
.page-home .callout{background:#edf6fb;color:var(--ink);border:1px solid #cee3ed}
.page-home .callout:before,.page-home .callout:after{display:none}
.page-home .callout h2{color:var(--ink)}
.page-home .callout p,.page-home .callout .small-note{color:var(--muted)}
.page-home .callout .button-light{background:var(--gradient);color:white;border-color:transparent}
.page-home .section-heading h2:after{background:var(--blue)}
.page-home #main-nav>a[aria-current=page]:after{background:var(--green)}
.page-home .site-footer{border-top:3px solid var(--blue);border-image:none}
.shuttle-panel{margin-top:20px}
@media(min-width:1120px){.page-home .cam-gallery{grid-auto-columns:calc((100% - 40px)/2.5)}}
.page-taxi-tours .tour-photo{height:auto;aspect-ratio:3/2;background:#eef5f1}
.page-taxi-tours .tour-photo img{object-fit:contain;transform:none}
.page-taxi-tours .tour-card:hover .tour-photo img{transform:none}
.tide-donation-form{display:grid;justify-items:center;gap:10px;padding:18px;background:white;border-radius:12px;min-width:245px}
.tide-donation-form .paypal-donate{width:100%;background:#ffd140;color:#000;border:0;font-family:Poppins,Arial,sans-serif}
.tide-donation-form .paypal-donate:hover{background:#ffc727}
.tide-donation-form .paypal-cards{width:210px;max-width:100%;height:auto}
.page-tide .callout .paypal-credit{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;line-height:1.5;color:var(--muted);margin:0}
.tide-donation-form .paypal-credit img{height:16px;width:auto}
@media(max-width:767px){.page-tide .callout .button-stack{width:100%}.tide-donation-form{min-width:0;width:100%}}

/* Rentals: fleet, rates and booking plans take priority. */
.page-rentals .legacy-cover{padding-bottom:110px}
.rental-hero-link{color:white;font-size:14px;align-self:center;padding:10px 0}
.rental-hero-link:hover{text-decoration:underline;text-underline-offset:4px}
.rental-planner{position:relative;margin-top:-48px;z-index:2}
.rental-planner-panel{padding:24px 28px 18px;background:white;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:16px;box-shadow:0 12px 35px rgba(12,57,65,.12)}
.rental-plan-form{display:grid;grid-template-columns:1fr 1.15fr 1.15fr auto;gap:16px;align-items:end}
.rental-plan-form .field{min-width:0}
.rental-plan-form .field label{font-size:13px;margin-bottom:7px}
.rental-plan-form .field input,.rental-plan-form .field select{width:100%;min-height:46px;background:#f8fbfa}
.rental-plan-form .button{white-space:nowrap;min-height:46px}
.rental-planner-note{margin:12px 0 0;font-size:12px;color:var(--muted)}
.rental-page-nav{display:flex;flex-wrap:wrap;gap:12px 28px;padding:22px 4px 0;font-size:14px;font-weight:500;color:var(--deep-green)}
.rental-page-nav a:hover{text-decoration:underline;text-underline-offset:4px}
.page-rentals #fleet{padding-top:38px}
.rental-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.rental-filter{border:1px solid #c4ddd2;border-radius:8px;background:white;color:var(--ink);padding:8px 16px;font-size:14px}
.rental-filter.is-active{background:#e5f6ee;border-color:var(--green);color:var(--deep-green);font-weight:600}
.rental-filter-count{margin-left:auto;color:var(--muted);font-size:13px}
.rental-fleet-grid,.rental-leasing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.page-rentals .vehicle-card{display:flex;flex-direction:column;border:1px solid #cbded7;border-radius:16px;box-shadow:0 5px 20px rgba(15,98,88,.05)}
.page-rentals .vehicle-photo{height:230px;position:relative;background:#f7faf9;padding:36px 20px 14px;border-bottom:1px solid #e4eeea}
.page-rentals .vehicle-photo img{object-fit:contain;width:100%;height:100%}
.vehicle-category{position:absolute;top:15px;left:18px;background:white;border:1px solid #d2e4dc;border-radius:6px;font-size:12px;font-weight:500;color:var(--deep-green);padding:4px 10px;line-height:1.5}
.page-rentals .vehicle-copy{padding:24px;display:flex;flex-direction:column;flex:1}
.page-rentals .vehicle-copy h3{font-size:24px;margin-bottom:14px}
.rental-specs{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-wrap:wrap;gap:7px}
.rental-specs li{font-size:12px;line-height:1.5;padding:5px 8px;border-radius:5px;background:#eff6f2;color:#42616a}
.rental-rate{padding-top:16px;border-top:1px solid var(--line);margin-bottom:15px}
.rental-rate>span{font-size:12px;color:var(--muted)}
.rental-rate p{display:flex;align-items:baseline;gap:8px;margin:2px 0}
.rental-rate strong{font-size:34px;letter-spacing:-.04em;line-height:1.3;font-weight:600;color:var(--ink)}
.rental-rate p>span{font-size:14px;color:var(--muted)}
.rental-short-rate{display:flex;justify-content:space-between;gap:12px;padding:10px 0;margin-bottom:18px;font-size:13px;color:var(--muted);border-top:1px solid #e4eeea;border-bottom:1px solid #e4eeea}
.rental-short-rate strong{color:var(--ink);font-weight:500}
.page-rentals .vehicle-copy details{margin-bottom:20px}
.page-rentals .vehicle-copy>.button{margin-top:auto;width:100%}
.page-rentals .included-strip{padding:22px 24px;background:#edf8f1;border:1px solid #d2e7da;border-radius:12px;gap:24px}
.page-rentals .included-strip strong{font-size:15px}
.page-rentals .included-strip .check-list li{font-size:14px}
.page-rentals .compact-vehicle .vehicle-photo{height:200px}
.page-rentals .compact-vehicle .vehicle-copy{padding:20px 24px}
.page-rentals .compact-vehicle h3{font-size:22px;margin-bottom:14px}
.page-rentals .leasing-notes{margin-top:24px}
.page-rentals .leasing-rate-panel{background:#e4f4eb;border-top-color:var(--green)}
.page-rentals .leasing-rate-panel h3,.page-rentals .leasing-addon-panel h3{font-size:21px}
.page-rentals .leasing-rate-panel p{font-size:16px;line-height:1.8}
.rental-request-help{border-top:1px solid #c9ded4;padding-top:22px;margin-top:28px}
.rental-request-help p{font-size:14px;line-height:1.7}
.page-rentals #book .form-panel{border-top:4px solid var(--blue)}
@media(max-width:1119px){
 .rental-plan-form{grid-template-columns:1fr 1fr}
 .rental-plan-form .button{width:100%}
 .rental-fleet-grid,.rental-leasing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .page-rentals .vehicle-photo{height:220px}
}
@media(max-width:767px){
 .page-rentals .legacy-cover{padding-bottom:90px}
 .rental-planner{margin-top:-40px}
 .rental-planner-panel{padding:22px 20px 17px}
 .rental-plan-form{grid-template-columns:1fr;gap:15px}
 .rental-plan-form .field input,.rental-plan-form .field select{font-size:16px}
 .rental-page-nav{gap:10px 20px;font-size:13px;padding-top:20px}
 .rental-fleet-grid,.rental-leasing-grid{grid-template-columns:1fr;gap:20px}
 .rental-filters{gap:7px;margin-bottom:20px}
 .rental-filter{padding:8px 12px;font-size:13px}
 .rental-filter-count{width:100%;margin:4px 0 0}
 .page-rentals .vehicle-photo{height:245px}
 .page-rentals .vehicle-copy{padding:22px}
 .page-rentals .vehicle-copy h3{font-size:23px}
 .page-rentals .included-strip{padding:20px}
 .page-rentals .included-strip .check-list{margin-top:12px}
 .rental-rate strong{font-size:32px}
}

/* Community stories and a closer footer rhythm. */
.itinerary-text-only{grid-template-columns:1fr}
.itinerary-text-only>div{display:flex;align-items:center;flex-wrap:wrap;gap:16px 30px;padding:30px 34px}
.itinerary-text-only h2{font-size:29px;margin:0;flex:1 1 220px}
.itinerary-text-only p:not(.eyebrow){margin:0;max-width:450px;flex:2 1 280px}
.itinerary-text-only .button{flex-shrink:0}
.printing-intro{display:block}
.printing-intro .retail-product-panel{display:grid;grid-template-columns:1.1fr .9fr;column-gap:40px;align-items:center;padding:32px}
.printing-intro .retail-product-panel>h2,.printing-intro .retail-product-panel>p,.printing-intro .retail-product-panel>.text-link{grid-column:1}
.printing-intro .product-image{grid-column:2;grid-row:1/4;height:260px;margin:0;border-radius:12px}
.retail-discover-section{padding-top:0}
.retail-discover-section .retail-coming-panel{border-radius:16px;padding:30px 34px;display:block}
.retail-discover-section h2{font-size:29px;margin-bottom:12px}
.retail-discover-section p{max-width:720px;font-size:15.5px;line-height:1.7}
.journal-invite{padding:32px 36px;border:1px solid #c9e1d5;border-left:4px solid var(--green);border-radius:16px;background:#eef8f2;display:flex;align-items:center;justify-content:space-between;gap:32px}
.journal-invite h2{font-size:30px;margin-bottom:12px}
.journal-invite p{font-size:15.5px;line-height:1.7;color:var(--muted);max-width:660px;margin:0}
.journal-invite .button{flex-shrink:0}
.tide-journal-teaser{padding-bottom:32px}
.journal-hero{padding:168px 0 42px;background:#edf8f1;border-bottom:1px solid var(--line)}
.journal-hero .cover-back{color:var(--deep-green);border-color:#b7d7c8;margin-bottom:20px}
.journal-hero h1{font-size:clamp(34px,4vw,46px);max-width:850px;margin-bottom:16px}
.journal-hero p{font-size:16px;line-height:1.7;color:var(--muted);max-width:670px;margin-bottom:18px}
.journal-post+.journal-post{padding-top:44px;margin-top:44px;border-top:1px solid var(--line)}
.journal-post header{margin-bottom:28px;max-width:900px}
.journal-post-meta{font-size:13px;color:var(--deep-green);font-weight:500;margin-bottom:10px}
.journal-post h2{font-size:clamp(28px,3vw,35px);margin-bottom:14px}
.journal-preview-note{font-size:13px;padding:10px 14px;border-left:3px solid var(--blue);background:#edf6fb;color:var(--muted);display:inline-block;margin:0}
.journal-post-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:start}
.journal-prose p{font-size:15.5px;line-height:1.8;margin-bottom:20px}
.journal-prose .text-link{margin-top:6px}
.journal-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.journal-photo-grid figure{margin:0;min-width:0}
.journal-photo-grid figure:first-child{grid-column:1/-1}
.journal-photo-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:12px;background:#edf4f0}
.journal-photo-grid a:focus-visible{display:block;border-radius:12px}
.journal-photo-grid figcaption{font-size:12px;color:var(--muted);line-height:1.6;margin-top:7px}
.site-footer{padding:28px 0 16px}
.footer-top{gap:36px;padding-bottom:24px;grid-template-columns:1.15fr 1fr 1fr}
.footer-brand>img{width:130px;height:70px;margin:-5px 0 10px}
.footer-brand>p{font-size:13px;line-height:1.6;margin-bottom:12px;max-width:300px}
.footer-title{font-size:14px;font-weight:600;margin-bottom:10px}
.site-footer nav{grid-template-columns:1fr 1fr;gap:5px 18px;font-size:13px;line-height:1.6}
.footer-contact>a,.footer-contact>span{font-size:13px;line-height:1.6;margin-bottom:5px;overflow-wrap:anywhere}
.social-row{gap:12px;flex-wrap:wrap}
.social-row a{font-size:12px}
.footer-bottom{padding-top:14px;font-size:11px;gap:12px}
@media(max-width:1119px){.journal-post-layout{gap:28px}.footer-top{gap:26px}}
@media(max-width:767px){
 .itinerary-text-only>div{padding:26px;display:block}
 .itinerary-text-only h2{font-size:27px;margin-bottom:16px}
 .itinerary-text-only p:not(.eyebrow){margin-bottom:20px;font-size:15px}
 .printing-intro .retail-product-panel{display:block;padding:26px}
 .printing-intro .product-image{height:230px;margin-top:22px}
 .retail-discover-section .retail-coming-panel{padding:26px}
 .retail-discover-section p{font-size:15px}
 .journal-invite{display:block;padding:26px}
 .journal-invite h2{font-size:27px}
 .journal-invite p{font-size:15px}
 .journal-invite .button{margin-top:20px}
 .journal-hero{padding:145px 0 34px}
 .journal-hero p{font-size:15px}
 .journal-post-layout{grid-template-columns:1fr;gap:28px}
 .journal-post header{margin-bottom:22px}
 .journal-prose p{font-size:15px;line-height:1.75}
 .journal-photo-grid{gap:14px}
 .journal-photo-grid figcaption{font-size:11px}
 .site-footer{padding-top:26px}
 .footer-top{grid-template-columns:1fr 1fr;gap:22px;padding-bottom:20px}
 .footer-brand{grid-column:1/-1}
 .footer-brand>img{width:120px;height:58px;margin:0 0 8px}
 .footer-brand>p{max-width:100%;margin-bottom:10px}
 .site-footer nav{grid-template-columns:1fr;gap:5px}
 .footer-title{font-size:13px}
 .footer-contact>a,.footer-contact>span{font-size:12px}
 .footer-bottom{font-size:10px}
}

/* Sliding reviews and compact story galleries. */
.site-footer,.site-footer *{font-family:Poppins,Arial,sans-serif}
.menu-button{width:44px;height:44px;padding:10px;align-items:center;justify-content:center}
.menu-lines{display:flex;flex-direction:column;gap:4px;width:22px}
.menu-lines>span{display:block;width:22px;height:2px;background:currentColor;border-radius:2px}
.review-carousel .cam-reviews{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#14a983 #e4f2eb;padding-bottom:12px}
.review-carousel .cam-review{scroll-snap-align:start;min-width:0;grid-column:auto}
.review-carousel .cam-review:last-child{grid-column:auto}
.slider-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:14px}
.slider-controls button{font-family:Poppins,Arial,sans-serif;font-size:13px;font-weight:500;border:1px solid #b4d6c6;border-radius:8px;background:white;color:var(--deep-green);padding:8px 14px;min-height:40px}
.slider-controls button:hover{background:#edf8f1}
.slider-controls [data-slider-status]{font-size:12px;color:var(--muted)}
.slider-controls [data-slider-toggle]{margin-left:auto}
.page-tide .tide-journal-teaser{padding:32px 0 0}
.journal-photo-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:100%;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#14a983 #e4f2eb;padding-bottom:10px}
.journal-photo-grid figure,.journal-photo-grid figure:first-child{grid-column:auto;scroll-snap-align:start}
.journal-gallery{min-width:0}
.journal-photo-grid img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.journal-post-layout{grid-template-columns:1fr 1fr;gap:40px}
.journal-post+.journal-post{margin-top:50px;padding-top:42px}
@media(max-width:1119px){.menu-button{display:flex}.review-carousel .cam-reviews{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:767px){
 .review-carousel .cam-reviews{grid-auto-columns:88%}
 .journal-post-layout{grid-template-columns:1fr;gap:24px}
 .page-tide .tide-journal-teaser{padding-top:24px}
 .slider-controls{gap:8px}
 .slider-controls button{font-size:12px;padding:8px 11px}
 .journal-post+.journal-post{margin-top:38px;padding-top:34px}
}

/* Community projects and alternating customer review accents */
.tide-action-invite{margin-top:30px}.tide-action-invite h3{margin-bottom:10px}.page-tide-stories,.page-tide-stories *{font-family:Poppins,Arial,sans-serif}.journal-hero .journal-draft-disclosure{font-size:12px;margin:18px 0 0;color:var(--muted)}
.page-home .cam-review:nth-child(odd){border-top-color:var(--green)}
.page-home .cam-review:nth-child(even){border-top-color:var(--blue)}

/* Authentic guest photographs: preserve full people, signs and flags. */
.page-home .cam-photo img{object-fit:contain;background:#eef5f2}
.guest-highlight{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:white;min-width:0}
.guest-highlight>img{width:100%;height:440px;object-fit:contain;background:#eef5f2}
.guest-highlight>div{padding:24px 28px}.guest-highlight h2{font-size:27px}.guest-highlight h3{font-size:23px}.guest-highlight p{font-size:15px;color:var(--muted)}
.taxi-photo-carousel{margin-top:28px}.taxi-photo-carousel .journal-photo-grid{grid-auto-columns:calc((100% - 20px)/2)}
@media(max-width:767px){.guest-highlight>img{height:350px}.guest-highlight>div{padding:22px}.guest-highlight h2{font-size:24px}.taxi-photo-carousel .journal-photo-grid{grid-auto-columns:100%}}

/* Focused photo framing and distinct Taxi page collections. */
.page-home .cam-photo img{object-fit:cover;object-position:50% 65%;height:350px}
.page-home .cam-photo img[src$="guest-img_0194.jpg"],.page-home .cam-photo img[src$="guest-img_0915.jpg"]{object-position:center}
.taxi-flag-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;margin-bottom:26px}
.taxi-flag-feature>img{height:400px}.taxi-flag-feature h2{font-size:27px}
.artist-carousel{min-width:0}.artist-carousel .journal-photo-grid{padding:0;scrollbar-width:none;gap:0}.artist-carousel .journal-photo-grid img{height:440px;aspect-ratio:auto;object-fit:contain}
.artist-carousel .slider-controls{padding:12px 22px 0}.artist-carousel+.slider-controls{margin:0}
@media(max-width:767px){.page-home .cam-photo img{height:350px}.taxi-flag-feature{grid-template-columns:1fr}.taxi-flag-feature>img{height:350px}.artist-carousel .journal-photo-grid img{height:350px}}
.page-home .cam-gallery{grid-auto-columns:max-content}
.page-home .cam-photo{width:320px}
.page-home .cam-photo:has(img[src$="guest-img_0915.jpg"]),.page-home .cam-photo:has(img[src$="guest-img_0194.jpg"]){width:520px}
@media(max-width:767px){.page-home .cam-photo{width:min(320px,82vw)}.page-home .cam-photo:has(img[src$="guest-img_0915.jpg"]),.page-home .cam-photo:has(img[src$="guest-img_0194.jpg"]){width:88vw}.page-home .cam-photo img[src$="guest-img_0915.jpg"],.page-home .cam-photo img[src$="guest-img_0194.jpg"]{height:245px}}

/* Story photographs fill frames suited to their original orientation. */
.page-tide-stories .journal-photo-grid{align-items:start}
.page-tide-stories .journal-photo-grid img{object-fit:cover;object-position:center;display:block}
.page-tide-stories .journal-photo-portrait img{aspect-ratio:4/5}
.page-tide-stories .journal-photo-landscape img{aspect-ratio:3/2}
@media(max-width:767px){.page-tide-stories .journal-photo-portrait img{aspect-ratio:3/4}}

/* Two Taxi collections and paired TIDE landscape photos. */
.island-moments-collage{display:grid;gap:12px;padding:14px;background:#eef5f2}
.island-moments-collage img{width:100%;height:245px;object-fit:cover;border-radius:10px;object-position:center}
.island-moments-collage img:first-child{height:330px;object-fit:cover;object-position:50% 60%}
.page-tide-stories .journal-collage-slide{min-width:0;scroll-snap-align:start}
.page-tide-stories .journal-landscape-stack{display:grid;gap:14px}
.page-tide-stories .journal-landscape-stack .journal-photo-landscape img{aspect-ratio:16/9}
@media(max-width:767px){.island-moments-collage img{height:220px}.island-moments-collage img:first-child{height:300px}.page-tide-stories .journal-landscape-stack{gap:12px}}

/* Taxi requests: one clear form grouped by journey and contact details. */
.page-taxi-tours .taxi-booking-layout{display:block;max-width:980px;margin:auto}
.page-taxi-tours .taxi-booking-layout .booking-intro{padding:0;margin-bottom:30px}
.page-taxi-tours .taxi-booking-layout .booking-intro h2{font-size:36px}
.page-taxi-tours .taxi-booking-layout .booking-intro>p{max-width:720px;font-size:15.5px}
.taxi-request-form{display:block;margin-top:30px}
.taxi-form-group{border:0;padding:0;margin:0 0 28px;min-width:0}
.taxi-form-group legend{font-size:18px;font-weight:600;color:var(--deep-green);padding:0 0 16px;width:100%;border-bottom:1px solid var(--line);margin-bottom:20px}
.taxi-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.taxi-request-form .field label{font-size:14px;font-weight:500}.taxi-request-form .field input,.taxi-request-form .field select,.taxi-request-form .field textarea{background:#f8fcfa;font-size:15px}
.taxi-request-form .form-bottom{display:flex}.taxi-request-form .form-bottom .button{font-size:15px;padding:14px 22px}
@media(max-width:767px){.taxi-field-grid{grid-template-columns:1fr;gap:18px}.page-taxi-tours .taxi-booking-layout .booking-intro h2{font-size:30px}.taxi-request-form .form-bottom{align-items:stretch;flex-direction:column}.taxi-request-form .form-bottom .button{width:100%}}

/* Full image Taxi cards without coloured backing or gallery controls. */
.taxi-guest-moments .guest-highlight{background:transparent;border:0;box-shadow:none}
.taxi-guest-moments .artist-carousel .journal-photo-grid{background:transparent;padding-bottom:0}
.taxi-guest-moments .artist-carousel .journal-photo-grid img{object-fit:cover;object-position:50% 40%;background:transparent;height:480px;border-radius:16px}
.taxi-guest-moments .guest-highlight>div:last-child{padding:20px 0 0}
.page-tide-stories .journal-photo-grid{scrollbar-width:none}
@media(max-width:767px){.taxi-guest-moments .artist-carousel .journal-photo-grid img{height:390px}}

/* First artist photo keeps faces in view; draggable gallery position bars. */
.taxi-guest-moments .artist-carousel:not(.island-moments-carousel) img[src$="guest-img_2410.jpg"]{object-position:50% 0%}
.gallery-position{display:block;width:100%;margin:18px 0 4px;height:18px;accent-color:var(--green);cursor:ew-resize}
.gallery-position:focus-visible{outline:2px solid var(--blue);outline-offset:4px;border-radius:10px}

/* Two separate Taxi cards, with the homepage gallery scrollbar style. */
.taxi-guest-moments .guest-highlight{background:white;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.taxi-guest-moments .guest-highlight>div:last-child{padding:22px 26px}
.taxi-guest-moments .artist-carousel .journal-photo-grid{scrollbar-width:thin;scrollbar-color:#0da67f #e5f1ec;padding-bottom:12px}
.taxi-guest-moments .artist-carousel .journal-photo-grid img{border-radius:0}

.page-tide-stories .journal-photo-grid{scrollbar-width:thin;scrollbar-color:#0da67f #e5f1ec;padding-bottom:12px}

/* Main TIDE introduction: real projects alongside the purpose. */
.page-tide .tide-story{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:40px}
.page-tide .tide-intro-copy .tide-logo-panel{background:transparent;border:0;padding:0;min-height:0;justify-content:flex-start;margin-bottom:20px}
.page-tide .tide-intro-copy .tide-logo-panel img{width:180px;max-width:100%;height:auto}
.tide-project-collage{display:grid;grid-template-columns:1fr 1.15fr;grid-template-rows:1fr 1fr;gap:12px;height:440px}
.tide-project-collage figure{margin:0;overflow:hidden;border-radius:16px;min-height:0}
.tide-project-collage .tide-collage-tall{grid-row:span 2}
.tide-project-collage img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:760px){.page-tide .tide-story{grid-template-columns:1fr;gap:24px}.tide-project-collage{height:360px}.page-tide .tide-intro-copy .tide-logo-panel img{width:150px}}
@media(max-width:420px){.tide-project-collage{height:300px;gap:8px}.tide-project-collage figure{border-radius:12px}}

/* TIDE identity has a dedicated row above the project introduction. */
.page-tide .tide-identity-row{display:flex;align-items:center;gap:32px;padding-bottom:28px;margin-bottom:32px;border-bottom:1px solid var(--line)}
.page-tide .tide-identity-row .tide-logo-panel{flex:0 0 180px;min-height:0;padding:0;border:0;background:transparent}
.page-tide .tide-identity-row .tide-logo-panel img{display:block;width:180px;max-width:100%;height:auto}
.page-tide .tide-identity-row h2{font-size:clamp(23px,2.6vw,32px);line-height:1.3;margin:0;max-width:650px}
.page-tide .tide-intro-copy h3{font-size:clamp(24px,2.8vw,34px);line-height:1.2;margin:0 0 20px}
@media(max-width:760px){.page-tide .tide-identity-row{gap:20px;padding-bottom:22px;margin-bottom:24px}.page-tide .tide-identity-row .tide-logo-panel{flex-basis:130px}.page-tide .tide-identity-row .tide-logo-panel img{width:130px}}
@media(max-width:480px){.page-tide .tide-identity-row{flex-direction:column;align-items:flex-start;gap:16px}.page-tide .tide-identity-row .tide-logo-panel{flex-basis:auto}.page-tide .tide-identity-row h2{font-size:23px}}

/* Full-width TIDE headings and an introduction-level project invitation. */
.page-tide .tide-identity-row h2{max-width:none;flex:1;font-size:clamp(22px,2.25vw,29px)}
.page-tide #story>.container>h3{font-size:clamp(24px,2.8vw,34px);line-height:1.25;margin:0 0 24px}
.page-tide .tide-intro-project-link{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.page-tide .tide-intro-project-link p{margin:0 0 16px}
.page-tide .tide-intro-project-link .button{font-size:14px;padding:13px 18px}

/* Keep the purpose heading outside the two-column introduction. */
.page-tide #story{padding-top:36px;padding-bottom:40px}
.page-tide .tide-identity-row{padding-bottom:20px;margin-bottom:24px}
.page-tide #story>.container>h3{margin-bottom:20px}
.page-tide .tide-story{align-items:start;gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
.page-tide .tide-intro-copy p{margin-top:0;margin-bottom:16px}
.page-tide .tide-intro-project-link{margin-top:18px;padding-top:16px}
.page-tide .tide-project-collage{height:360px;gap:10px}
@media(max-width:760px){.page-tide .tide-story{grid-template-columns:1fr;gap:22px}.page-tide #story{padding-top:28px;padding-bottom:30px}.page-tide .tide-project-collage{height:320px}}
@media(max-width:420px){.page-tide .tide-project-collage{height:290px}}

/* Compact secondary services and a local-product-led retail page. */
.home-more-services{padding-top:8px;padding-bottom:38px}
.compact-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.compact-service-grid article{padding:22px 8px;text-align:center}
.compact-service-grid h3{font-size:20px;margin:0 0 12px}
.compact-service-grid p{font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 16px}
.compact-service-grid .text-link{font-size:15px}
.retail-local-intro{max-width:780px;margin:0 auto 36px;text-align:center}
.retail-local-intro h2{font-size:clamp(27px,3vw,36px)}
.retail-local-intro p{font-size:15.5px;line-height:1.7;color:var(--muted);margin:16px 0 24px}
.retail-printing-card{display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:28px;border:1px solid var(--line);border-radius:18px;padding:28px;max-width:900px;margin:auto;overflow:hidden}
.retail-printing-card h3{font-size:23px;margin:0 0 12px}
.retail-printing-card p{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 16px}
.retail-printing-card img{width:100%;height:180px;object-fit:cover;border-radius:12px}
@media(max-width:760px){.compact-service-grid{grid-template-columns:1fr;gap:0}.compact-service-grid article{padding:18px 0;text-align:left;border-bottom:1px solid var(--line)}.compact-service-grid article:last-child{border-bottom:0}.compact-service-grid h3{font-size:18px;margin-bottom:8px}.compact-service-grid p{margin-bottom:10px}.retail-printing-card{grid-template-columns:1fr;padding:22px;gap:18px}.retail-printing-card img{height:150px}.home-more-services{padding-bottom:24px}}

/* Homepage TIDE feature and restrained cover highlights. */
.home-tide-card-section{padding-top:8px;padding-bottom:18px}
.home-tide-card{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:36px;border:1px solid var(--line);background:#f2faf7;border-radius:20px;padding:28px 34px}
.home-tide-card h2{font-size:28px;margin:0 0 12px}
.home-tide-card p{font-size:15.5px;line-height:1.7;color:var(--muted);max-width:700px;margin:0 0 18px}
.home-tide-card>img{width:220px;max-width:100%;height:auto}
.compact-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.original-hero-shade,.legacy-cover-shade{background:rgba(0,0,0,.82)}
.cover-gradient-keyword,.original-hero-copy .hero-gradient{background:var(--gradient);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
@media(max-width:760px){.home-tide-card{grid-template-columns:minmax(0,1fr) 120px;padding:22px;gap:18px}.home-tide-card>img{width:120px}.home-tide-card h2{font-size:24px}.compact-service-grid{grid-template-columns:1fr;gap:0}.original-hero-shade,.legacy-cover-shade{background:rgba(0,0,0,.85)}}
@media(max-width:420px){.home-tide-card{grid-template-columns:1fr}.home-tide-card>img{grid-row:1;width:120px}.home-tide-card p{font-size:15px}}

/* Explicit contact action and the full TIDE cover name. */
#main-nav>a.nav-contact-link{background:var(--gradient);color:white;border-radius:12px;padding:12px 18px}
.page-tide .legacy-cover-copy h1{max-width:1000px;font-size:clamp(32px,4.3vw,54px);line-height:1.15}
.home-tide-card h2{font-size:clamp(24px,2.5vw,30px)}

.page-rentals .rental-plan-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
.page-rentals .rental-plan-form>.field:first-child{grid-column:1/-1}
.page-rentals .rental-licence-intro{border-top:1px solid var(--line);padding-top:20px;margin-top:8px}
.page-rentals .rental-licence-intro h3{font-size:20px;margin-bottom:8px}
.page-rentals .rental-licence-intro p{font-size:14px;line-height:1.6;margin:0;color:var(--muted)}
@media(max-width:600px){.page-rentals .rental-plan-form{grid-template-columns:1fr}}

.page-rentals [data-rental-location-detail][hidden]{display:none}

/* Terms page and booking acknowledgements. */
.terms-hero{padding:180px 0 36px;background:#f2faf7;border-bottom:1px solid var(--line)}
.terms-hero h1{font-size:clamp(30px,4vw,46px);margin-bottom:12px}.terms-hero p{margin:0;color:var(--muted)}
.terms-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:48px;align-items:start}
.terms-contents{position:sticky;top:145px;display:grid;gap:12px;padding:22px;border:1px solid var(--line);border-radius:16px}
.terms-contents h2{font-size:18px;margin:0 0 6px}.terms-contents a{font-size:13px;line-height:1.5;color:var(--deep-green)}
.terms-prose{max-width:850px;overflow-wrap:anywhere}.terms-prose h2{font-size:24px;line-height:1.35;margin:32px 0 18px;scroll-margin-top:150px}.terms-prose h3{font-size:19px;margin:24px 0 14px}
.terms-prose p,.terms-prose li{font-size:15px;line-height:1.75}.terms-prose strong{font-weight:600}.terms-prose hr{border:0;border-top:1px solid var(--line);margin:32px 0}.terms-prose a{color:var(--deep-green);text-decoration:underline}
.terms-acceptance{padding-top:16px;border-top:1px solid var(--line)}
.terms-acceptance label{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6;cursor:pointer}
.terms-acceptance input[type=checkbox]{width:20px;height:20px;min-height:20px;padding:0;flex:0 0 20px;margin:2px 0 0;accent-color:#0da67f}
.terms-acceptance a{color:var(--deep-green);text-decoration:underline}
@media(max-width:760px){.terms-hero{padding-top:150px}.terms-layout{grid-template-columns:1fr;gap:28px}.terms-contents{position:static}.terms-prose h2{font-size:22px}}
