@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700;800&display=swap');
:root{--navy:#071d49;--blue:#0759d6;--purple:#6b20b5;--pink:#ed1687;--orange:#ff941e;--green:#0aa85c;--gold:#ffbf32;--ink:#17233d;--muted:#65718a;--pale:#f4f7ff;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{text-decoration:none;color:inherit}.wrap{width:min(1240px,94%);margin:auto}.topline{background:#061943;color:white;font-size:13px;padding:8px 0}.topline .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.topline a{color:#fff}.head{background:#fff;box-shadow:0 5px 22px #071d4914;position:relative;z-index:5}.headrow{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:260px;max-width:100%;display:block}.quick{display:flex;align-items:center;gap:20px;font-size:14px;font-weight:700}.quick span{display:block;color:var(--muted);font-size:11px;font-weight:500}.quick a{white-space:nowrap}.pill{padding:12px 19px;border-radius:28px;background:linear-gradient(100deg,var(--pink),var(--orange));color:#fff!important;box-shadow:0 5px 14px #ed168733}.nav{background:linear-gradient(90deg,#083caa,#5116a8 58%,#ed1687)}.nav .wrap{display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap}.nav a{color:#fff;padding:14px 17px;font-size:14px;font-weight:700}.nav a:hover,.nav a.active{background:#ffb323;color:#101d3d}.hero{background:linear-gradient(100deg,#061a47ed 0%,#092b69d9 43%,#4d19a6a8 75%,#ed168755),url('https://images.unsplash.com/photo-1524492412937-b28074a5d7da?auto=format&fit=crop&w=1900&q=85') center/cover;min-height:590px;color:#fff;display:flex;align-items:center;padding:38px 0}.hero-grid{display:grid;grid-template-columns:370px 1fr;gap:42px;align-items:center}.booking{background:#fff;color:var(--ink);padding:22px;border-radius:20px;box-shadow:0 18px 50px #06194355}.tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#f0f2fa;padding:5px;border-radius:13px;margin-bottom:17px}.tab{border:0;border-radius:10px;padding:10px 4px;font-weight:800;font-size:12px;background:transparent;cursor:pointer;color:#28324d}.tab.active{background:linear-gradient(110deg,var(--orange),var(--pink));color:white}.booking h2{font:700 24px 'Playfair Display',serif;margin:4px 0}.booking p{font-size:13px;color:var(--muted);margin:0 0 12px}.formstack{display:grid;gap:10px}.field{width:100%;padding:12px 13px;border:1px solid #d9dfef;border-radius:10px;background:#f9fbff;font:500 14px 'DM Sans',sans-serif;color:#25314b;min-height:46px}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:9px}.submit{border:0;border-radius:10px;padding:14px;background:linear-gradient(100deg,var(--orange),var(--pink));color:white;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 7px 18px #ed168733}.mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mini-actions a{padding:11px 5px;text-align:center;border-radius:10px;color:white;font-weight:800;font-size:13px}.wa{background:var(--green)}.call{background:#111d43}.hero-copy .eyebrow{color:#ffca3d;font-size:14px;font-weight:800;letter-spacing:2px;text-transform:uppercase}.hero-copy h1{font:800 clamp(36px,4.5vw,60px)/1.12 'Playfair Display',serif;margin:12px 0 18px;max-width:760px}.hero-copy h1 .c1{color:#ffb12b}.hero-copy h1 .c2{color:#ff4b93}.hero-copy h1 .c3{color:#52df9c}.hero-copy p{font-size:18px;max-width:680px;color:#f2f5ff}.trust{display:flex;gap:20px;flex-wrap:wrap;margin-top:26px}.trust span{font-size:13px;font-weight:700}.trust b{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#ffffff25;color:#ffca3d;margin-right:7px}.routes{padding:28px 0 45px;background:#f6f8ff}.route-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.route-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 6px 20px #071d4912;border:1px solid #edf0f8}.route-card img{width:100%;height:105px;object-fit:cover;display:block}.route-card h3{font-size:13px;text-align:center;margin:9px 4px 2px}.route-card p{font-size:11px;text-align:center;color:var(--muted);margin:0 3px 7px}.route-card a{display:block;text-align:center;color:#fff;font-weight:800;font-size:12px;padding:8px;background:linear-gradient(90deg,var(--blue),var(--purple))}.route-card:nth-child(3n+2) a{background:linear-gradient(90deg,var(--orange),var(--pink))}.route-card:nth-child(3n) a{background:linear-gradient(90deg,var(--green),var(--blue))}.benefits{background:linear-gradient(90deg,#071d49,#092d76);color:white;padding:20px 0}.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.benefit{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:800}.benefit i{font-style:normal;color:#ffc12d;font-size:26px}.benefit small{display:block;color:#cbd7f5;font-size:11px;font-weight:500}.section{padding:68px 0}.section.soft{background:#f6f8ff}.section-title{text-align:center;margin:0 auto 34px;max-width:760px}.section-title small{color:#ef8b12;font-weight:900;letter-spacing:2px}.section-title h2{font:700 clamp(28px,3vw,40px)/1.2 'Playfair Display',serif;color:#091e4c;margin:8px 0}.section-title p{color:var(--muted);margin:0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{padding:25px;background:white;border:1px solid #edf0f8;border-radius:16px;box-shadow:0 8px 24px #071d490b}.info-card .ico{width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,#fff0d5,#ffe0f0);display:grid;place-items:center;font-size:25px;margin-bottom:12px}.info-card h3{margin:0 0 8px;color:#0b2864}.info-card p{margin:0;color:var(--muted);font-size:14px}.aboutgrid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.aboutpic{min-height:370px;border-radius:20px;background:url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1000&q=85') center/cover}.checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.checks span{font-weight:700;color:#18366e}.checks span:before{content:'✓';color:#08a45a;font-weight:900;margin-right:8px}.vehicles{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.vehicle{border:1px solid #e8edf8;border-radius:15px;padding:16px;text-align:center;background:#fff}.vehicle .car{font-size:42px}.vehicle h3{margin:4px 0;color:#0b2864}.vehicle p{font-size:12px;color:var(--muted);margin:0}.cta{background:linear-gradient(100deg,#08245a,#6b20b5 55%,#ed1687);padding:48px 0;color:#fff;text-align:center}.cta h2{font:700 34px 'Playfair Display',serif;margin:0 0 8px}.cta p{margin:0 0 18px}.cta a{display:inline-block;background:#ffad24;color:#10224b;padding:12px 22px;border-radius:25px;font-weight:900}.foot{background:#061638;color:#fff;padding:45px 0 18px}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:26px}.foot h3{margin:0 0 13px}.foot p,.foot li{color:#c5d2ed;font-size:13px}.foot ul{padding:0;list-style:none}.foot li{margin:7px 0}.foot a{color:#dce6ff}.copyright{border-top:1px solid #ffffff22;text-align:center;padding-top:15px;margin-top:25px;color:#b8c6e5;font-size:12px}.floaters{position:fixed;right:15px;bottom:16px;z-index:9;display:grid;gap:8px}.floaters a{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:white;font-size:22px;box-shadow:0 5px 18px #0003}.floaters .wa{background:#0aa85c}.floaters .call{background:#0759d6}.pagehero{background:linear-gradient(100deg,#061943e8,#5220a6b5),url('https://images.unsplash.com/photo-1524492412937-b28074a5d7da?auto=format&fit=crop&w=1800&q=85') center/cover;padding:62px 0;color:white}.pagehero h1{font:700 clamp(32px,4vw,48px) 'Playfair Display',serif;margin:0 0 8px}.crumb{font-size:13px;color:#dce5ff}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:30px}.article h2{font:700 27px 'Playfair Display',serif;color:#09255d;margin:28px 0 8px}.article h3{color:#153a7a;margin:20px 0 6px}.article p,.article li{color:#59657b}.sidebox{background:#f4f7ff;border:1px solid #e3e9f7;border-radius:16px;padding:20px;height:max-content;position:sticky;top:15px}.sidebox h3{margin:0 0 12px}.sidebox a.link{display:block;padding:9px 0;border-bottom:1px solid #dce4f5;color:#15469c;font-weight:700;font-size:14px}.form-note{font-size:12px;color:#66718a}.alert{padding:12px;border-radius:10px;margin-bottom:14px;background:#e7f8ef;color:#08713b}.alert.err{background:#fff0f0;color:#9c1c1c}.legal{max-width:900px}.legal h2{font:700 24px 'Playfair Display',serif;color:#09255d;margin-top:26px}@media(max-width:1000px){.hero-grid{grid-template-columns:330px 1fr;gap:25px}.route-grid{grid-template-columns:repeat(3,1fr)}.benefit-grid{grid-template-columns:repeat(3,1fr)}.vehicles{grid-template-columns:repeat(3,1fr)}.quick{display:none}.footgrid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.headrow{min-height:66px}.brand img{width:220px}.nav .wrap{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap}.nav a{padding:12px 13px;white-space:nowrap;font-size:12px}.hero{padding:22px 0;min-height:0}.hero-grid{grid-template-columns:1fr}.booking{order:2}.hero-copy{order:1}.hero-copy h1{font-size:37px}.hero-copy p{font-size:15px}.route-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr}.aboutgrid,.content-layout{grid-template-columns:1fr}.sidebox{position:static}.vehicles{grid-template-columns:1fr 1fr}.footgrid{grid-template-columns:1fr 1fr}.section{padding:48px 0}.topline .wrap{justify-content:center}.checks{grid-template-columns:1fr 1fr}}@media(max-width:390px){.formrow{grid-template-columns:1fr}.tabs{grid-template-columns:1fr}.route-grid{grid-template-columns:1fr 1fr}.vehicles{grid-template-columns:1fr 1fr}}

/* Updated page hierarchy, forms-first layout and destination directory */
.navdrop{position:relative}.navdrop>a{display:block}.dropdown{display:none;position:absolute;top:100%;left:0;min-width:260px;background:#fff;box-shadow:0 12px 30px #06194330;border-radius:0 0 12px 12px;padding:8px;z-index:30}.dropdown a{display:block!important;color:#17233d!important;padding:10px 12px!important;border-radius:7px}.dropdown a:hover{background:#fff0f6!important;color:#c41468!important}.navdrop:hover .dropdown,.navdrop:focus-within .dropdown{display:block}
.content-layout{display:grid;grid-template-columns:minmax(280px,370px) minmax(0,1fr);gap:30px;align-items:start}.content-layout>.sidebox{grid-column:1;grid-row:1;position:sticky;top:18px}.content-layout>.article{grid-column:2;grid-row:1;min-width:0}.sidebox .booking{border:1px solid #e7eaf5}.booking{border-top:5px solid var(--pink)}.booking h2{color:#10265b}.booking .form-note{font-size:11px;color:#6c7890}.field:focus{outline:2px solid #8a36c8;border-color:transparent}
.article h2,.legal h2{color:#7b168d;border-left:5px solid #ff9b1f;padding:7px 0 7px 13px;background:linear-gradient(90deg,#fff4f8,transparent);border-radius:0 8px 8px 0;margin-top:28px}.article h3{color:#0759d6}.pagehero{background:linear-gradient(110deg,#071d49,#5120a4 60%,#ed1687);color:#fff;padding:42px 0}.pagehero h1{font:800 clamp(30px,4vw,46px)/1.15 'Playfair Display',serif;color:#fff}.pagehero p{color:#fcecff}.crumb{color:#ffe0a2}
.info-enquiry{display:grid;grid-template-columns:minmax(200px,1fr) minmax(280px,420px);gap:24px;align-items:start;margin-bottom:28px;padding:22px;border-radius:18px;background:linear-gradient(120deg,#eef5ff,#fff0f7 55%,#fff8e7)}.info-enquiry>div:first-child h2{font:800 26px 'Playfair Display',serif;color:#63169c}.info-enquiry .booking{box-shadow:0 10px 30px #06194314}
.route-directory{background:linear-gradient(135deg,#f4f8ff,#fff5fa)}.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.directory-card{background:#fff;padding:22px;border-radius:16px;box-shadow:0 8px 28px #071d4910;border-top:5px solid #ed1687}.directory-card:nth-child(2){border-top-color:#0759d6}.directory-card h3{margin-top:0;color:#0b2357}.directory-card ul{columns:2;padding-left:20px}.directory-card li{margin:7px 0;break-inside:avoid}.directory-card a{color:#6b20b5;font-weight:700}.directory-card a:hover{color:#ed1687;text-decoration:underline}
.route-card h3{color:#10265b}.section-title h2{background:linear-gradient(90deg,#09265e,#7b1fa2,#ed1687);-webkit-background-clip:text;background-clip:text;color:transparent}.foot{background:#071d49}.foot h3{color:#ffbd37}.foot a:hover{color:#ffbd37}.cta{background:linear-gradient(100deg,#0759d6,#6b20b5,#ed1687)}
@media(max-width:850px){.content-layout{grid-template-columns:1fr}.content-layout>.sidebox,.content-layout>.article{grid-column:1;grid-row:auto}.content-layout>.sidebox{position:static;order:-1}.info-enquiry{grid-template-columns:1fr}.nav .wrap{justify-content:flex-start}.dropdown{position:static;box-shadow:none}.navdrop:hover .dropdown{display:block}}
@media(max-width:600px){.directory-grid{grid-template-columns:1fr}.directory-card ul{columns:1}.quick{gap:8px;flex-wrap:wrap}.headrow{padding:10px 0}.brand img{width:190px}.formrow{grid-template-columns:1fr}}

/* Premium About, Contact and Services page components */
.inner-hero{position:relative;isolation:isolate;overflow:hidden;min-height:330px;display:flex;align-items:center;color:#fff;padding:65px 0;background-size:cover;background-position:center}
.inner-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,#061943f2 0%,#092b69dc 48%,#7026b5a8 100%)}
.about-hero{background-image:url('https://images.unsplash.com/photo-1564507592333-c60657eea523?auto=format&fit=crop&w=1800&q=85')}
.contact-hero{background-image:url('https://images.unsplash.com/photo-1519501025264-65ba15a82390?auto=format&fit=crop&w=1800&q=85')}
.services-hero{background-image:url('https://images.unsplash.com/photo-1519608487953-e999c86e7455?auto=format&fit=crop&w=1800&q=85')}
.inner-hero h1{font:800 clamp(38px,5vw,58px)/1.12 'Playfair Display',serif;color:#fff;margin:10px 0}.inner-hero h1 span{color:#ffbd35}.inner-hero p{font-size:19px;max-width:650px;color:#f3f5ff}.eyebrow{display:inline-block;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:800;color:#ffb52d}.eyebrow.pink{color:#e91585}.hero-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hero-tags span{border:1px solid #ffffff65;background:#ffffff16;border-radius:30px;padding:8px 14px;font-size:13px;font-weight:700}
.about-intro{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.about-copy h2,.contact-form-layout h2,.map-copy h2{font:800 clamp(28px,3vw,39px)/1.2 'Playfair Display',serif;color:#10265b;margin:12px 0 18px}.about-copy p{color:#58647b;line-height:1.85}.gradient-btn,.light-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:12px;padding:13px 22px;border-radius:30px;color:#fff!important;font-weight:800;background:linear-gradient(100deg,#ed1687,#ff941e);box-shadow:0 8px 20px #ed168733}.about-photo{position:relative}.about-photo img{display:block;width:100%;height:390px;object-fit:cover;border-radius:24px;box-shadow:0 18px 45px #071d4925}.photo-note{position:absolute;left:-18px;bottom:22px;background:#fff;padding:16px 20px;border-radius:14px;box-shadow:0 10px 30px #071d4920;max-width:260px}.photo-note b,.photo-note span{display:block}.photo-note b{color:#741aa6}.photo-note span{font-size:12px;color:#65718a;margin-top:4px}
.soft-section{background:linear-gradient(135deg,#f4f7ff,#fff3f8 58%,#fff9ec)}.center-heading{text-align:center;max-width:760px;margin:0 auto 34px}.center-heading h2{font:800 clamp(28px,3vw,38px)/1.2 'Playfair Display',serif;color:#10265b;margin:8px 0}.center-heading p{color:#65718a;margin:0}.value-grid{display:grid;gap:18px}.value-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.value-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.value-card,.mini-card{background:#fff;border:1px solid #e9edf7;border-radius:18px;padding:24px;box-shadow:0 9px 28px #071d490c;transition:transform .2s,box-shadow .2s}.value-card:hover,.mini-card:hover,.service-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #071d4918}.value-card{border-top:5px solid #ed1687}.value-card.accent-orange{border-top-color:#ff941e}.value-card.accent-blue{border-top-color:#0759d6}.value-icon{width:48px;height:48px;border-radius:15px;background:#fff0f7;color:#ed1687;display:grid;place-items:center;font-size:25px}.value-card h3,.mini-card h3{color:#10265b;font:700 20px 'Playfair Display',serif;margin:14px 0 8px}.value-card p,.mini-card p{color:#65718a;font-size:14px;line-height:1.75;margin:0}.mini-card{text-align:center;padding:22px 16px}.mini-icon{width:54px;height:54px;border-radius:18px;margin:auto;display:grid;place-items:center;font-size:25px;font-weight:800}.pink-bg{background:#fff0f7;color:#ed1687}.orange-bg{background:#fff3e4;color:#ed8500}.blue-bg{background:#edf4ff;color:#0759d6}.green-bg{background:#e8fff2;color:#0a9b59}.mission-band{background:linear-gradient(105deg,#071d49,#183d80 60%,#6920a6);color:#fff}.mission-content{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}.mission-content h2{font:800 36px 'Playfair Display',serif;color:#fff;margin:8px 0}.mission-content p{color:#e3eaff;max-width:650px}.light-btn{background:linear-gradient(100deg,#ff941e,#ed1687)}.mission-points{display:grid;gap:12px}.mission-points span{padding:14px 18px;border:1px solid #ffffff38;border-radius:12px;background:#ffffff12;font-weight:700}.destination-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.destination-links a{padding:12px 17px;border-radius:30px;background:#fff;border:1px solid #e5e9f4;color:#54209c;font-weight:700;box-shadow:0 5px 18px #071d490c}.destination-links a:hover{background:linear-gradient(100deg,#0759d6,#ed1687);color:#fff}
.contact-section{padding-top:52px}.contact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.contact-card{background:#fff;border:1px solid #e8ebf4;border-radius:18px;padding:24px;box-shadow:0 10px 28px #071d4910;transition:transform .2s}.contact-card:hover{transform:translateY(-5px)}.contact-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;color:#fff;font-size:27px;margin-bottom:16px}.contact-pink .contact-icon{background:linear-gradient(135deg,#ed1687,#ff6b85)}.contact-green .contact-icon{background:linear-gradient(135deg,#08a85c,#54cf87)}.contact-purple .contact-icon{background:linear-gradient(135deg,#6420b1,#9a56e8)}.contact-card small,.detail-card small{font-size:11px;letter-spacing:1.2px;font-weight:800;color:#7a8498}.contact-card h3{font-size:19px;color:#10265b;margin:5px 0}.contact-card p{color:#65718a;font-size:14px;min-height:42px}.contact-card b{font-size:13px;color:#ed1687}.contact-green b{color:#0a9b59}.contact-purple b{color:#7026b5}.contact-details-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;margin-top:20px}.detail-card{display:flex;gap:16px;background:linear-gradient(120deg,#f4f7ff,#fff);border:1px solid #e8ebf4;border-radius:17px;padding:22px}.detail-symbol{flex:0 0 48px;width:48px;height:48px;border-radius:15px;display:grid;place-items:center;font-size:25px}.detail-card h3{margin:4px 0;color:#10265b}.detail-card p{color:#65718a;font-size:14px;margin:6px 0}.detail-card a{font-weight:800;color:#7026b5;font-size:13px}.map-panel{display:grid;grid-template-columns:.8fr 1.2fr;overflow:hidden;border-radius:20px;margin-top:22px;min-height:320px;background:#071d49}.map-copy{padding:34px;color:#fff;align-self:center}.map-copy h2{color:#fff}.map-copy p{color:#e1e9ff}.map-panel iframe{width:100%;height:320px;border:0}.contact-form-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:35px;align-items:center}.contact-form-layout>div:first-child p{color:#65718a;line-height:1.8}.check-list{padding-left:20px;color:#33415f;line-height:2}.check-list li::marker{color:#ed1687}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{overflow:hidden;background:#fff;border:1px solid #e8ebf4;border-radius:18px;box-shadow:0 9px 28px #071d490e;transition:transform .2s,box-shadow .2s}.service-card img{width:100%;height:190px;object-fit:cover;display:block}.service-body{padding:20px}.service-label{font-size:10px;letter-spacing:1.2px;font-weight:900}.pink-label{color:#ed1687}.purple-label{color:#7026b5}.orange-label{color:#e88300}.blue-label{color:#0759d6}.green-label{color:#0a9b59}.service-body h3{font:700 21px 'Playfair Display',serif;color:#10265b;margin:8px 0}.service-body p{color:#65718a;font-size:14px;line-height:1.75;min-height:96px}.service-body a{font-weight:800;color:#7026b5}.service-process{background:linear-gradient(120deg,#071d49,#153e85)}.service-process .center-heading h2{color:#fff}.service-process .center-heading p{color:#e1e9ff}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.process-grid article{background:#ffffff12;border:1px solid #ffffff38;border-radius:17px;padding:24px;color:#fff}.process-grid b{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#ff941e,#ed1687);font-size:14px}.process-grid h3{color:#fff;margin:14px 0 6px}.process-grid p{color:#e1e9ff;font-size:14px;margin:0}
.nav .wrap{flex-wrap:nowrap;justify-content:space-between;white-space:nowrap}.nav .wrap>a,.navdrop>a{padding:13px 12px;font-size:13px}.dropdown{display:none!important}.navdrop:hover .dropdown,.navdrop:focus-within .dropdown{display:block!important}.dropdown{min-width:275px;max-height:75vh;overflow:auto}.dropdown a{white-space:normal;font-size:13px!important}
@media(max-width:1000px){.nav .wrap{justify-content:flex-start;overflow-x:auto}.nav .wrap>a,.navdrop>a{padding:12px 10px}.value-grid.four{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.inner-hero{min-height:280px;padding:45px 0}.about-intro,.mission-content,.contact-details-grid,.map-panel,.contact-form-layout{grid-template-columns:1fr}.about-photo img{height:280px}.photo-note{left:10px}.value-grid.three,.contact-cards,.service-grid,.process-grid{grid-template-columns:1fr}.value-grid.four{grid-template-columns:repeat(2,1fr)}.map-panel iframe{height:260px}.contact-card p,.service-body p{min-height:0}.mission-content h2{font-size:29px}.hero-tags span{font-size:11px}.nav .wrap{overflow-x:auto}.nav .wrap>a,.navdrop>a{font-size:12px;padding:11px 9px}}

/* Header navigation correction: one-line desktop menu + accessible mobile menu */
.nav{position:relative;z-index:50}
.nav-wrap{display:block!important;width:min(1320px,96%)!important}
.nav-menu{display:flex;align-items:center;justify-content:space-between;gap:2px;flex-wrap:nowrap;white-space:nowrap;min-height:52px}
.nav-menu>.nav-link,.nav-parent>.nav-link{display:inline-flex;align-items:center;justify-content:center;padding:14px 11px;color:#fff;font-size:13px;font-weight:800;line-height:1.2}
.nav-menu>.nav-link:hover,.nav-parent>.nav-link:hover{background:#ffb323;color:#101d3d}
.navdrop{position:relative;flex:0 0 auto}
.nav-parent{display:flex;align-items:center}
.dropdown-toggle{display:none;border:0;background:transparent;color:#fff;font-size:18px;padding:9px;cursor:pointer}
.navdrop>.dropdown{display:none;position:absolute;top:100%;left:0;min-width:280px;max-height:70vh;overflow:auto;padding:8px;background:#fff;border-radius:0 0 13px 13px;box-shadow:0 14px 35px #06194335;z-index:100}
.navdrop:hover>.dropdown,.navdrop:focus-within>.dropdown,.navdrop.open>.dropdown{display:block}
.navdrop>.dropdown a{display:block!important;padding:10px 13px!important;color:#17233d!important;font-size:13px!important;font-weight:700;white-space:normal;border-radius:7px}
.navdrop>.dropdown a:hover{background:#fff0f7!important;color:#c41468!important}
.nav-toggle{display:none}
@media(max-width:1050px) and (min-width:761px){
 .nav-menu>.nav-link,.nav-parent>.nav-link{padding:13px 7px;font-size:11px}
 .quick{gap:12px}
 .quick>a{font-size:12px}
 .brand img{width:220px}
}
@media(max-width:760px){
 .nav-wrap{width:100%!important}
 .nav-toggle{display:flex;align-items:center;gap:8px;width:100%;border:0;background:transparent;color:#fff;padding:13px 5%;font:800 14px 'DM Sans',sans-serif;cursor:pointer}
 .nav-toggle span{display:block;width:18px;height:2px;background:#fff;border-radius:2px}
 .nav-toggle b{margin-left:5px}
 .nav-menu{display:none;align-items:stretch;flex-direction:column;gap:0;white-space:normal;background:linear-gradient(160deg,#083caa,#5116a8 60%,#ed1687);padding:5px 4% 14px}
 .nav-menu.is-open{display:flex}
 .nav-menu>.nav-link,.nav-parent>.nav-link{justify-content:flex-start;width:100%;padding:12px 10px;font-size:14px}
 .nav-parent{width:100%;justify-content:space-between}
 .dropdown-toggle{display:block;min-width:42px}
 .navdrop>.dropdown{display:none!important;position:static;min-width:0;max-height:none;box-shadow:none;border-radius:10px;margin:0 0 7px 10px;padding:5px;background:#fff}
 .navdrop.open>.dropdown{display:block!important}
 .navdrop>.dropdown a{padding:9px 12px!important;font-size:13px!important}
 .topline .wrap{font-size:10px;justify-content:center;text-align:center}
 .headrow{min-height:66px;gap:8px}
 .brand img{width:170px}
 .quick{gap:8px;font-size:11px}
 .quick>a:not(.pill){display:none}
 .quick .pill{padding:10px 13px;font-size:11px}
}

/* Complete page layout refinements */
.hp-field{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.journey-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#eef2fa;border-radius:11px;padding:5px}.journey-tab{border:0;border-radius:8px;background:transparent;color:#14254b;padding:11px 5px;font-weight:800;cursor:pointer}.journey-tab.active{color:#fff;background:linear-gradient(100deg,#ff941e,#ed1687)}.return-wrap{display:block}.return-wrap[hidden]{display:none}.route-hero{position:relative;isolation:isolate;background:#071d49;overflow:hidden}.route-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.36;z-index:-1}.route-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#061943f2,#092b69d9 55%,#7026b58c);z-index:-1}.route-hero-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,440px);gap:38px;align-items:center;padding-top:48px;padding-bottom:48px;min-height:440px}.route-hero-copy h1,.estimate-copy h1,.gallery-hero h1{font:800 clamp(36px,4.5vw,56px)/1.1 'Playfair Display',serif;color:#fff;margin:14px 0}.route-hero-copy p{font-size:18px;color:#eef3ff;max-width:650px;line-height:1.7}.route-hero-form{background:#fff;border-radius:20px;padding:20px;box-shadow:0 18px 50px #06194355}.route-hero-form .booking{border:0;box-shadow:none;padding:0}.route-summary{background:linear-gradient(120deg,#f3f7ff,#fff5fa)}.summary-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:center}.summary-grid h2,.gallery-group h2,.estimate-info h2{font:800 32px 'Playfair Display',serif;color:#10265b}.summary-grid p{color:#59677f;line-height:1.8}.summary-points{display:flex;flex-wrap:wrap;gap:10px}.summary-points span{background:#fff;border-radius:30px;padding:9px 13px;color:#4b258c;font-size:13px;font-weight:700}.summary-photo img{width:100%;height:260px;object-fit:cover;border-radius:20px;box-shadow:0 12px 32px #071d4920}.route-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:start}.route-long-content{min-width:0}.route-long-content h2{margin-top:34px}.route-side-card{position:sticky;top:20px;background:linear-gradient(150deg,#f0f5ff,#fff1f7);padding:22px;border-radius:18px;border-top:5px solid #ed1687}.route-side-card h2{color:#10265b}.route-side-card p{color:#64718a;line-height:1.7}.side-link{display:block;margin-top:14px;color:#7026b5;font-weight:800}.related-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.related-links a,.gallery-mini-links a{display:block;padding:12px 14px;background:#f4f6ff;border-radius:10px;color:#4e2498;font-weight:700}.related-links a:hover,.gallery-mini-links a:hover{background:#7026b5;color:#fff}.estimate-hero{background:linear-gradient(120deg,#071d49,#1b3f88 54%,#7026b5);padding:55px 0;color:#fff}.estimate-grid{display:grid;grid-template-columns:1fr minmax(340px,440px);gap:40px;align-items:center}.estimate-copy h1 span{color:#ffbd35}.estimate-copy>p{font-size:18px;line-height:1.8;color:#e9edff;max-width:650px}.estimate-benefits{display:grid;gap:14px;margin:28px 0}.estimate-benefits article{display:flex;align-items:center;gap:14px}.estimate-benefits b{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#ff941e,#ed1687)}.estimate-benefits strong,.estimate-benefits small{display:block}.estimate-benefits small{color:#d7e1ff;margin-top:3px}.estimate-contact{display:flex;gap:18px;flex-wrap:wrap}.estimate-contact a{color:#fff;font-weight:800}.estimate-form-card{background:#fff;padding:22px;border-radius:20px;box-shadow:0 18px 45px #0003}.estimate-form-card .booking{border:0;padding:0;box-shadow:none}.estimate-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.estimate-service-grid a{padding:25px;background:#fff;border:1px solid #e9edf7;border-radius:17px;box-shadow:0 8px 24px #071d4910}.estimate-service-grid span{font-size:32px}.estimate-service-grid h3{color:#10265b}.estimate-service-grid p{color:#66728a}.estimate-info{display:grid;grid-template-columns:1fr .8fr;gap:35px;align-items:start}.estimate-info p{line-height:1.8;color:#5f6c84}.estimate-checklist{background:#fff;border-radius:18px;padding:25px;box-shadow:0 10px 30px #071d4910}.estimate-checklist h3{color:#7026b5}.estimate-checklist li{padding:6px 0;color:#59677f}.estimate-checklist a{font-weight:800;color:#7026b5}.gallery-hero,.policy-hero{background:linear-gradient(110deg,#071d49,#3d2392 55%,#ed1687);padding:68px 0;color:#fff}.gallery-hero h1 span{color:#ffbd35}.gallery-hero p,.policy-hero p{max-width:720px;color:#edf1ff;font-size:18px;line-height:1.7}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallery-card{position:relative;min-height:330px;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px #071d4918;background:#071d49}.gallery-card img{width:100%;height:100%;min-height:330px;position:absolute;inset:0;object-fit:cover;transition:transform .35s}.gallery-card:hover img{transform:scale(1.05)}.gallery-card:after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(transparent,#061943eF)}.gallery-card>div{position:absolute;z-index:1;bottom:0;padding:22px;color:#fff}.gallery-card span{font-size:10px;letter-spacing:1.5px;font-weight:900;color:#ffbd35}.gallery-card h3{font:800 23px 'Playfair Display',serif;color:#fff;margin:8px 0}.gallery-card p{font-size:13px;color:#eef1ff}.gallery-card a{color:#fff;font-weight:800;text-decoration:underline}.gallery-large{grid-column:span 2}.gallery-group{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.gallery-group p{color:#64718a;line-height:1.8}.gallery-mini-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gallery-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px;border-radius:20px;background:linear-gradient(120deg,#eef4ff,#fff0f7)}.gallery-cta h2{font:800 30px 'Playfair Display',serif;color:#10265b}.gallery-cta p{color:#64718a}.policy-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:start}.policy-content{background:#fff;border:1px solid #e9edf7;border-radius:18px;padding:28px}.policy-block{padding:4px 0 18px;border-bottom:1px solid #edf0f6}.policy-block h2{color:#7026b5;border-left:4px solid #ff941e;padding-left:12px}.policy-block p{line-height:1.85;color:#59677f}.policy-contact{background:linear-gradient(145deg,#eef4ff,#fff0f7);padding:22px;border-radius:18px;position:sticky;top:20px}.policy-contact h2{color:#10265b}.policy-contact p{color:#64718a;line-height:1.7}.policy-side-link{display:block;margin-top:12px;color:#7026b5;font-weight:800}.policy-updated{margin-top:20px;color:#68748a}.thankyou-section{padding:65px 0;background:linear-gradient(120deg,#f1f6ff,#fff0f7)}.thankyou-card{max-width:700px;text-align:center;background:#fff;padding:40px;border-radius:22px;box-shadow:0 15px 45px #071d4918}.thankyou-icon{margin:auto;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#e6fff1;color:#099b58;font-size:40px}.thankyou-card h1{font:800 36px 'Playfair Display',serif;color:#10265b}.thankyou-card p{color:#64718a;line-height:1.8}.mail-status{padding:12px;border-radius:10px;background:#fff6e9;color:#8b5500;margin:18px 0}.mail-status.success{background:#e9fff2;color:#087b43}
@media(max-width:850px){.route-hero-inner,.estimate-grid{grid-template-columns:1fr}.route-hero-inner{padding-top:35px;padding-bottom:35px}.route-hero-form{max-width:560px}.route-content-layout,.policy-layout{grid-template-columns:1fr}.route-side-card,.policy-contact{position:static}.summary-grid,.estimate-info,.gallery-group{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-large{grid-column:span 2}}
@media(max-width:600px){.gallery-grid,.estimate-service-grid{grid-template-columns:1fr}.gallery-large{grid-column:span 1}.gallery-card{min-height:280px}.gallery-card img{min-height:280px}.gallery-mini-links{grid-template-columns:1fr}.gallery-cta{align-items:flex-start;flex-direction:column}.route-hero-inner{grid-template-columns:minmax(0,1fr)}.route-hero-form{padding:14px}.route-content-layout{gap:15px}.related-links{grid-template-columns:1fr}.estimate-grid{gap:25px}.estimate-hero{padding:38px 0}.policy-content{padding:18px}.thankyou-card{padding:25px 18px}}

/* Homepage hero: story on the left, enquiry card on the right */
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(340px,390px)!important;gap:42px}.hero-copy{grid-column:1;grid-row:1}.home-form{grid-column:2;grid-row:1}.home-form .booking{width:100%}.hero-copy h1{max-width:780px}.hero-copy p{max-width:700px}
@media(max-width:850px){.hero-grid{grid-template-columns:1fr!important}.hero-copy,.home-form{grid-column:1;grid-row:auto}.home-form{max-width:560px;width:100%;margin:auto}}


/* HOTFIX 2026-10-31: never expose the anti-spam honeypot on any page */
.booking input[name="website_url"],
.booking .hp-field,
.booking label:has(> input[name="website_url"]),
.booking div:has(> label > input[name="website_url"]) {
  display:none !important;
  visibility:hidden !important;
  position:absolute !important;
  width:0 !important;
  height:0 !important;
  overflow:hidden !important;
}
/* Consistent journey selector styling for both current and legacy form markup */
.booking .journey-tabs,
.booking .tabs {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:5px !important;
  padding:5px !important;
  margin:0 0 4px !important;
  border-radius:12px !important;
  background:#eef2fa !important;
  width:100% !important;
  box-sizing:border-box !important;
}
.booking .journey-tab,
.booking .tabs .tab {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:0 !important;
  min-height:42px !important;
  border:0 !important;
  border-radius:9px !important;
  padding:9px 6px !important;
  margin:0 !important;
  background:transparent !important;
  color:#14254b !important;
  font:800 13px/1.25 'DM Sans',sans-serif !important;
  cursor:pointer !important;
  white-space:normal !important;
  box-shadow:none !important;
}
.booking .journey-tab.active,
.booking .tabs .tab.active {
  background:linear-gradient(100deg,#ff941e,#ed1687) !important;
  color:#fff !important;
}
.booking .formstack {width:100%;min-width:0}
.booking .field {min-width:0;box-sizing:border-box}
.booking .formrow label {min-width:0}
@media(max-width:480px){
 .booking .journey-tab,.booking .tabs .tab{font-size:11px!important;padding:8px 3px!important}
}


/* Home four-option booking form */
.home-booking-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:5px;background:#eef2fa;border-radius:13px;margin:16px 0}
.home-booking-tab{border:0;border-radius:9px;padding:12px 6px;background:transparent;color:#15264b;font-weight:800;font-size:13px;cursor:pointer}
.home-booking-tab.active{background:linear-gradient(100deg,#ff941e,#ed1687);color:#fff;box-shadow:0 5px 14px #ed168733}
.home-booking-form [hidden]{display:none!important}
.home-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-date-grid label,.home-return-field{display:block;min-width:0}
.home-date-grid small,.home-return-field small{display:block;font-size:12px;font-weight:700;color:#6725a8;margin:0 0 5px}
.home-local-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-booking .field:invalid:not(:placeholder-shown){border-color:#dc426b}
@media(max-width:560px){.home-booking-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.home-booking-tab{font-size:12px}.home-date-grid,.home-local-fields{grid-template-columns:1fr}}


/* Final home booking form interaction and visual correction */
.home-booking{width:100%;max-width:100%;box-sizing:border-box}
.home-booking-tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;padding:6px!important;margin:16px 0 20px!important;background:linear-gradient(120deg,#edf4ff,#fff0f7)!important;border:1px solid #e4e8f5!important;border-radius:15px!important}
.home-booking-tab{display:flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:10px 6px!important;border:1px solid #dfe5f1!important;border-radius:10px!important;background:#fff!important;color:#15264b!important;font-size:13px!important;font-weight:800!important;cursor:pointer!important;pointer-events:auto!important;position:relative!important;z-index:2!important;transition:all .18s ease!important}
.home-booking-tab:hover{border-color:#ed1687!important;color:#a31b8e!important;transform:translateY(-1px)}
.home-booking-tab.active{background:linear-gradient(110deg,#ff941e 0%,#ed1687 55%,#7026b5 100%)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 6px 16px #a42a9c35!important}
.home-booking-form .field{width:100%;min-height:46px;margin:0 0 10px;box-sizing:border-box;border:1px solid #dce3f0;border-radius:10px;background:#fff;padding:11px 13px;color:#182849}
.home-booking-form .field:focus{outline:0;border-color:#8b35bd;box-shadow:0 0 0 3px #8b35bd20}
.home-booking-form [hidden]{display:none!important}
.home-booking-form .home-date-grid,.home-booking-form .home-local-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-booking-form .home-date-grid label,.home-booking-form .home-return-field{min-width:0;display:block;margin-bottom:10px}
.home-booking-form label small{display:block;color:#7622a4;font-weight:800;margin:0 0 5px}
.home-booking-form .submit{width:100%;border:0;border-radius:12px;background:linear-gradient(100deg,#ff941e,#ed1687,#7026b5);color:#fff;font-weight:900;letter-spacing:.5px;padding:15px;cursor:pointer;box-shadow:0 8px 20px #ed168733}
@media(max-width:520px){.home-booking-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}.home-booking-tab{font-size:12px!important}.home-booking-form .home-date-grid,.home-booking-form .home-local-fields{grid-template-columns:1fr}}

/* Premium booking experience shared by Home and every route page */
:root{--booking-shadow:0 22px 60px rgba(4,20,58,.22)}
.booking{border:1px solid rgba(255,255,255,.8);border-top:5px solid transparent;border-image:linear-gradient(90deg,#ff941e,#ed1687,#7026b5) 1;box-shadow:var(--booking-shadow);padding:24px;background:linear-gradient(160deg,#fff 0%,#fff 78%,#fff8fc 100%)}
.booking-heading .booking-kicker{display:inline-block;color:#ed1687;font-size:10px;font-weight:900;letter-spacing:1.7px;margin-bottom:3px}
.booking h2{color:#0a2457;font-size:25px;line-height:1.2;margin:2px 0 7px}
.booking p{line-height:1.55;margin-bottom:15px}
.premium-tabs,.home-booking-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;background:linear-gradient(110deg,#f1f5ff,#fff0f7);border:1px solid #e7eaf5;border-radius:15px;margin:4px 0 14px}
.home-booking-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
.journey-tab,.home-booking-tab{min-height:43px;padding:8px 5px;border:1px solid #e1e6f1;border-radius:11px;background:#fff;color:#172b55;font-size:12px;line-height:1.25;font-weight:850;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s}
.journey-tab:hover,.home-booking-tab:hover{transform:translateY(-1px);box-shadow:0 5px 14px #172b5518}
.journey-tab.active,.home-booking-tab.active{color:#fff;border-color:transparent;background:linear-gradient(110deg,#ff941e 0%,#ed1687 55%,#7026b5 100%);box-shadow:0 7px 16px #ed168744}
.field{background:#fff;border:1px solid #d8deed;border-radius:11px;min-height:48px;transition:border-color .18s,box-shadow .18s,background .18s}
.field:focus{outline:none;border-color:#ed1687;box-shadow:0 0 0 3px #ed16871c;background:#fff}
.formstack label small{display:block;color:#6c278f;font-size:11px;font-weight:850;margin:0 0 4px}
.formrow{align-items:end}
.local-fields,.home-local-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.submit{min-height:49px;letter-spacing:.3px;background:linear-gradient(100deg,#ff941e 0%,#ed1687 54%,#7026b5 100%);box-shadow:0 9px 20px #ed168733;transition:transform .18s,filter .18s}
.submit:hover{transform:translateY(-2px);filter:saturate(1.12)}
.form-note{line-height:1.5}
.route-hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#071d49,#342080 68%,#7a1c8b);padding:42px 0;color:#fff}
.route-hero-bg{position:absolute;inset:0;background-position:center;background-size:cover;opacity:.2}
.route-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#071d49f2 0%,#071d49cf 45%,#5a1b8a80 100%);pointer-events:none}
.route-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,430px);gap:42px;align-items:center}
.route-hero-copy h1{font:800 clamp(38px,4.4vw,58px)/1.12 'Playfair Display',Georgia,serif;color:#fff;margin:12px 0}
.route-hero-copy p{max-width:650px;color:#eef2ff;font-size:17px}
.route-hero-form .booking{max-width:100%;}
.route-summary,.route-content-layout,.info-enquiry{position:relative}
.route-summary{padding-top:55px}
.route-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px}
.route-long-content{background:#fff;border:1px solid #edf0f7;border-radius:18px;padding:30px;box-shadow:0 8px 28px #071d4909}
.route-side-card{background:linear-gradient(145deg,#071d49,#54209d 72%,#ed1687);color:#fff;padding:24px;border-radius:18px;align-self:start;position:sticky;top:18px;box-shadow:0 12px 28px #071d4926}
.route-side-card h2{color:#fff;margin-top:0}.route-side-card p{color:#e9eaff}.route-side-card a{display:block;margin-top:12px;font-weight:800}
.route-side-card .gradient-btn{background:linear-gradient(100deg,#ff941e,#ed1687);padding:12px 15px;text-align:center;border-radius:10px;color:#fff}
.related-links{display:flex;flex-wrap:wrap;gap:9px}.related-links a{padding:9px 13px;border-radius:24px;background:#f3f5ff;color:#51249c;font-weight:750;font-size:13px;border:1px solid #e7e9f4}
.topline{min-height:35px}.head{display:block!important;visibility:visible!important}.headrow{min-height:82px}.nav{position:relative;z-index:8}.nav .wrap{min-height:48px}
@media(max-width:900px){.route-hero-inner{grid-template-columns:1fr;gap:25px}.route-hero-form{max-width:560px;width:100%;margin:auto}.route-content-layout{grid-template-columns:1fr}.route-side-card{position:static}.home-booking-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.topline{padding:7px 0}.topline .wrap{gap:2px}.topline .wrap span{display:block;width:100%}.headrow{min-height:68px}.brand img{width:190px}.quick{display:none}.nav .wrap{justify-content:flex-start}.route-hero{padding:28px 0}.route-hero-inner{grid-template-columns:minmax(0,1fr)}.route-hero-copy h1{font-size:36px}.booking{padding:18px;border-radius:16px}.booking h2{font-size:22px}.premium-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.home-booking-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px}.journey-tab,.home-booking-tab{font-size:10px;padding:7px 3px;min-height:42px}.formrow,.local-fields,.home-local-fields{grid-template-columns:1fr}.route-long-content{padding:20px}.route-content-layout{gap:18px}}

/* Unified premium booking card: homepage uses the same visual system as route cab forms. */
.home-booking{border:1px solid rgba(255,255,255,.8);border-top:5px solid transparent;border-image:linear-gradient(90deg,#ff941e,#ed1687,#7026b5) 1;box-shadow:var(--booking-shadow);padding:24px;background:linear-gradient(160deg,#fff 0%,#fff 78%,#fff8fc 100%);border-radius:18px;box-sizing:border-box}
.home-booking h2{font:800 25px 'Playfair Display',Georgia,serif;color:#10265b;margin:0 0 5px}
.home-booking>p{color:#68748a;font-size:13px;line-height:1.55;margin:0 0 12px}
.home-booking-form .home-local-fields[hidden],.home-booking-form .home-return-field[hidden],.home-booking-form .home-tempo-fields[hidden],.home-booking-form .home-drop-field[hidden]{display:none!important}
.home-booking-form .home-local-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 10px}
.home-booking-form .home-local-fields .field{margin:0}
.home-booking-form .home-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.home-booking-form .home-tempo-fields{display:grid;gap:10px}
.home-booking-form .home-tempo-fields[hidden]{display:none!important}


/* Homepage contact actions: sit directly below the estimate button. */
.home-booking-form .home-booking-actions{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;
  width:100%;margin:2px 0 0!important;align-items:stretch;
}
.home-booking-form .home-booking-actions a{
  display:flex!important;align-items:center;justify-content:center;gap:8px;
  min-height:46px;padding:11px 10px!important;border-radius:11px!important;
  color:#fff!important;text-align:center;font-size:13px;font-weight:850;
  line-height:1.2;box-shadow:0 5px 14px rgba(7,29,73,.14);
  visibility:visible!important;opacity:1!important;
}
.home-booking-form .home-booking-actions .wa{background:#0aa85c!important}
.home-booking-form .home-booking-actions .call{background:#102b59!important}
.home-booking-form .home-booking-actions a:hover{transform:translateY(-1px);filter:brightness(1.06)}
.home-booking-tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;padding:5px!important;align-items:stretch;width:100%;}
.home-booking-tab{display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-width:0;width:100%;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none;min-height:54px!important;padding:6px 2px!important;font-size:10px!important;line-height:1.15!important;text-align:center;letter-spacing:-.15px;}
.home-booking-tab span{display:block;white-space:nowrap;max-width:100%;}
@media(max-width:560px){.home-booking-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important}.home-booking-tab{font-size:11px!important;min-height:46px!important;padding:7px 3px!important}}


/* Mobile responsive repair – isolated overrides; desktop layout is unchanged. */
*,*::before,*::after{box-sizing:border-box}
html{width:100%;max-width:100%;overflow-x:clip}
body{width:100%;max-width:100%;margin:0;overflow-x:clip}
img,svg,video,iframe{max-width:100%}
@media(max-width:700px){
  .wrap{width:min(100% - 32px,100%);max-width:100%;margin-inline:auto}
  .topline{width:100%;padding:8px 0}
  .topline .wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;white-space:normal;overflow:visible}
  .topline .wrap span{display:block;width:100%;max-width:100%;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
  .topline a{overflow-wrap:anywhere}
  .head,.headrow{width:100%;max-width:100%}
  .headrow{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:66px;padding:9px 0}
  .brand{display:block;min-width:0;max-width:calc(100% - 58px)}
  .brand img{display:block;width:clamp(150px,54vw,205px);max-width:100%;height:auto}
  .quick{display:none!important}
  .nav{width:100%;max-width:100%;overflow:visible}
  .nav .wrap{width:100%;min-height:50px;display:block;overflow:visible;white-space:normal}
  .nav-toggle{position:relative;display:flex!important;align-items:center;justify-content:flex-start;width:100%;min-height:50px;padding:12px 16px;margin:0;border:0;border-radius:0;background:linear-gradient(100deg,#2634bd,#6b20b5 55%,#ed1687);color:#fff;text-align:left}
  .nav-toggle b{display:block;margin:0;font-size:15px;line-height:1.2}
  .nav-toggle span{position:absolute;right:18px;width:23px;height:2.5px;margin:0;border-radius:3px;background:#fff;transition:transform .2s ease,top .2s ease,opacity .2s ease}
  .nav-toggle span:nth-child(1){top:16px}
  .nav-toggle span:nth-child(2){top:23px}
  .nav-toggle span:nth-child(3){top:30px}
  .nav-toggle[aria-expanded="true"] span:nth-child(1){top:23px;transform:rotate(45deg)}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .nav-toggle[aria-expanded="true"] span:nth-child(3){top:23px;transform:rotate(-45deg)}
  .nav-menu{width:100%;max-width:100%;min-width:0;display:none;flex-direction:column;align-items:stretch;gap:0;padding:7px 16px 14px;white-space:normal;overflow:visible}
  .nav-menu.is-open{display:flex}
  .nav-menu>.nav-link,.nav-parent>.nav-link{width:auto;min-width:0;justify-content:flex-start;padding:13px 8px;font-size:14px;white-space:normal;overflow-wrap:anywhere}
  .nav-parent{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0}
  .dropdown-toggle{flex:0 0 40px;min-width:40px;min-height:40px}
  .dropdown{position:static;width:100%;max-width:100%;box-shadow:none;border-radius:8px;margin:0;padding:4px 10px;background:rgba(5,20,57,.22)}
  .dropdown a{display:block;padding:10px 8px;white-space:normal;overflow-wrap:anywhere}
  .foot{width:100%;max-width:100%;overflow:hidden}
  .foot .wrap{width:calc(100% - 36px);max-width:100%;display:block}
  .footgrid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:25px!important;width:100%;min-width:0}
  .footgrid>div{width:100%;min-width:0;max-width:100%;overflow-wrap:anywhere}
  .footgrid img{display:block;width:min(245px,100%)!important;height:auto;max-width:100%;object-fit:contain}
  .footgrid p,.footgrid li,.footgrid a{max-width:100%;overflow-wrap:anywhere;word-break:normal}
  .footgrid ul{padding-left:18px;margin:10px 0 0}
  .footgrid h3{margin:0 0 10px}
  .copyright{width:100%;max-width:100%;margin-top:25px;padding:18px 0 22px;text-align:center;line-height:1.6;font-size:12px;overflow-wrap:anywhere}
  .cta{width:100%;max-width:100%;padding:34px 0}
  .cta h2{font-size:clamp(23px,6vw,30px);line-height:1.2}
  .cta p{font-size:14px;line-height:1.65;max-width:100%;overflow-wrap:anywhere}
  .cta a{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:48px;padding:13px 22px}
  .floaters{position:fixed;right:12px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:999;display:flex;flex-direction:column;gap:10px}
  .floaters a{width:54px;height:54px;min-width:54px;min-height:54px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:0;line-height:1;box-shadow:0 5px 18px rgba(0,0,0,.25);text-decoration:none}
  .floaters a svg{display:block;width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .floaters .wa{background:#08a957!important;color:#fff!important}
  .floaters .call{background:#102b59!important;color:#fff!important}
  .booking,.home-booking,.route-hero-form,.route-side-card,.form-card{width:100%;max-width:100%;min-width:0}
  .booking,.home-booking{padding:16px!important}
  .booking-tabs,.premium-tabs,.home-booking-tabs{width:100%;max-width:100%;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  input,select,textarea,button{max-width:100%;font-size:16px}
  .formrow,.local-fields,.home-local-fields,.home-date-grid{grid-template-columns:minmax(0,1fr)!important}
  .route-hero-inner,.route-content-layout{grid-template-columns:minmax(0,1fr)!important;min-width:0}
  .route-hero-copy,.route-long-content,.destination-grid,.destinations-grid{min-width:0;max-width:100%}
  table{display:block;max-width:100%;overflow-x:auto}
}
@media(max-width:380px){
  .wrap{width:calc(100% - 24px)}
  .brand img{width:150px}
  .foot .wrap{width:calc(100% - 28px)}
  .floaters{right:8px}
  .floaters a{width:49px;height:49px;min-width:49px;min-height:49px}
}

/* Form visibility fix: native hidden must win over component display:grid rules */
[hidden], .local-fields[hidden], .home-local-fields[hidden], .return-wrap[hidden], .home-return-field[hidden] { display:none !important; }

/* Drop Location autocomplete: applies only to input[name="drop_location"]. */
.destination-autocomplete{position:relative;min-width:0}
.destination-suggestions{position:absolute;z-index:1000;top:calc(100% + 5px);left:0;right:0;max-height:260px;overflow-y:auto;background:#fff;border:1px solid #d9dce5;border-radius:12px;box-shadow:0 12px 30px rgba(20,30,55,.18);padding:5px}
.destination-suggestions[hidden]{display:none!important}
.destination-option{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:0;border-radius:8px;background:#fff;color:#202638;text-align:left;cursor:pointer;font:inherit}
.destination-option:hover,.destination-option.is-active{background:#f2f3f8}
.destination-option-name{font-weight:700;font-size:14px}
.destination-option small{color:#687086;font-size:12px}
@media(max-width:600px){.destination-suggestions{max-height:220px}.destination-option{padding:11px 10px}}


/* Mobile-friendly Drop Location autocomplete: compact, aligned and limited results */
.destination-autocomplete{position:relative!important;display:block!important;width:100%;min-width:0!important}
.destination-autocomplete>.field{width:100%;box-sizing:border-box}
.destination-suggestions{
  position:absolute!important;display:block!important;z-index:99999!important;
  top:calc(100% + 6px)!important;left:0!important;right:0!important;width:100%!important;
  max-height:250px!important;overflow-y:auto!important;overscroll-behavior:contain;
  background:#fff!important;border:1px solid #d9dfeb!important;border-radius:12px!important;
  box-shadow:0 12px 28px rgba(7,25,65,.18)!important;padding:5px!important;margin:0!important;
  box-sizing:border-box!important
}
.destination-suggestions[hidden]{display:none!important}
.destination-suggestions>.destination-option{
  display:flex!important;position:relative!important;width:100%!important;min-width:0!important;
  box-sizing:border-box!important;flex-direction:column!important;align-items:flex-start!important;
  justify-content:center!important;gap:2px!important;padding:9px 11px!important;margin:0!important;
  border:0!important;border-bottom:1px solid #edf0f5!important;border-radius:7px!important;
  background:#fff!important;color:#17233d!important;text-align:left!important;
  white-space:normal!important;line-height:1.25!important;font-family:inherit!important;
  font-size:14px!important;font-weight:400!important;box-shadow:none!important
}
.destination-suggestions>.destination-option:last-child{border-bottom:0!important}
.destination-suggestions>.destination-option:hover,
.destination-suggestions>.destination-option.is-active{background:#f3f5fb!important}
.destination-option-name{display:block!important;color:#10265b!important;font-size:14px!important;font-weight:700!important;line-height:1.3!important}
.destination-option small{display:block!important;color:#69758a!important;font-size:11px!important;line-height:1.3!important}
@media(max-width:600px){
 .destination-suggestions{max-height:210px!important;padding:4px!important;border-radius:10px!important}
 .destination-suggestions>.destination-option{padding:8px 10px!important;font-size:13px!important}
 .destination-option-name{font-size:13px!important}
 .destination-option small{font-size:11px!important}
}


/* FINAL FIX: never show Local Sightseeing package/hour fields unless Local Sightseeing is selected. */
form.home-booking-form .home-local-fields[hidden],
form.route-booking-form .local-fields[hidden],
form.home-booking-form .home-return-field[hidden],
form.route-booking-form .return-wrap[hidden] {
  display: none !important;
  visibility: hidden !important;
}
form.home-booking-form .home-local-fields:not([hidden]),
form.route-booking-form .local-fields:not([hidden]) {
  display: grid;
}


/* Stable booking visibility + destination dropdown containment */
.home-local-fields[hidden], .local-fields[hidden],
.home-return-field[hidden], .return-wrap[hidden],
.home-cab-tempo-seat[hidden] { display:none !important; }
.home-local-fields:not([hidden]), .local-fields:not([hidden]) { display:grid !important; }
.destination-autocomplete { position:relative !important; width:100%; min-width:0; }
.destination-suggestions { position:absolute !important; left:0 !important; right:0 !important; top:calc(100% + 5px) !important; width:100% !important; z-index:10000 !important; max-height:210px !important; overflow-y:auto !important; background:#fff !important; border:1px solid #dce2ed !important; border-radius:11px !important; box-shadow:0 10px 26px rgba(12,28,60,.18) !important; padding:4px !important; }
.destination-suggestions[hidden] { display:none !important; }
.destination-option { display:flex !important; width:100% !important; padding:9px 11px !important; margin:0 !important; border:0 !important; border-bottom:1px solid #edf0f5 !important; border-radius:7px !important; background:#fff !important; color:#17233d !important; text-align:left !important; white-space:normal !important; }
.destination-option:last-child { border-bottom:0 !important; }
.destination-option-name { display:block !important; font-size:14px !important; line-height:1.3 !important; font-weight:700 !important; color:#10265b !important; }
.destination-option small { display:block !important; font-size:11px !important; color:#68758b !important; line-height:1.3 !important; }
.floaters { z-index:99999 !important; }
.floaters a { display:flex !important; align-items:center !important; justify-content:center !important; text-decoration:none !important; }
.floaters a svg { width:27px !important; height:27px !important; display:block !important; }
.floaters .wa { background:#08a957 !important; color:#fff !important; }
.floaters .call { background:#102b59 !important; color:#fff !important; }
