:root{
  --navy:#071a59;
  --blue:#1457ff;
  --red:#f20d18;
  --ink:#0c1e58;
  --muted:#66708e;
  --line:#e8edf6;
  --card:#ffffff;
  --soft:#f8fbff;
  --shadow:0 16px 40px rgba(13,35,91,.08);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.45}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
.shell{width:min(100%,1040px);margin:0 auto;padding:0 20px}
.site-header{display:flex;align-items:center;justify-content:space-between;padding:26px 0 16px}
.fc-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.fc-header-stay{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 17px;border:1px solid #d9e4f5;border-radius:999px;background:#fff;color:var(--navy);font-size:.88rem;font-weight:850;box-shadow:0 7px 20px rgba(7,26,89,.06);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.site-header>.fc-header-stay{margin-left:auto}.site-header>.fc-header-stay+.menu-btn{margin-left:4px}
.fc-header-stay:hover{transform:translateY(-1px);border-color:#9db9ea;box-shadow:0 10px 24px rgba(7,26,89,.1)}
.fc-header-stay:focus-visible{outline:3px solid rgba(20,87,255,.25);outline-offset:2px}
.brand{display:flex;align-items:center;gap:12px;font-weight:850;letter-spacing:.01em;font-size:1.08rem}
.brand-mark{width:42px;height:42px;display:block}
.menu-btn{border:0;background:transparent;width:46px;height:46px;display:grid;place-items:center;border-radius:12px}
.menu-btn span,.menu-btn:before,.menu-btn:after{content:"";display:block;width:28px;height:2px;background:var(--navy);border-radius:2px}
.menu-btn span{margin:6px 0}
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);gap:12px;align-items:center;padding:34px 0 22px}
.hero h1{font-size:clamp(3.5rem,8vw,6.4rem);line-height:.89;letter-spacing:-.065em;margin:0;color:var(--navy);font-weight:900}
.hero h1 .accent{color:var(--blue)}
.hero h1 .dot{color:var(--red)}
.hero p{font-size:clamp(1.08rem,2vw,1.4rem);color:var(--muted);margin:20px 0 0}
.hero-art{min-height:250px;display:grid;place-items:center}
.hero-art svg{width:min(100%,330px);height:auto}
.booking-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin:6px 0 34px}
.route-search-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px}.route-search-intro span{color:var(--blue);font-size:.77rem;letter-spacing:.1em;font-weight:900}.route-search-intro strong{color:var(--muted);font-size:.85rem;font-weight:650;text-align:right}.route-search-note{margin:12px 0 0;color:var(--muted);font-size:.8rem}
.trip-tabs{display:flex;gap:12px;margin-bottom:18px}
.trip-tab{border:0;background:#fff;color:var(--navy);padding:12px 20px;border-radius:999px;font-weight:750}
.trip-tab.active{background:var(--blue);color:#fff}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:flex;flex-direction:column;gap:7px}
.field.full{grid-column:1/-1}
.field label{font-weight:800;font-size:.9rem;color:var(--navy)}
.control{height:64px;border:1px solid #dfe6f2;border-radius:14px;background:#fff;padding:0 16px;color:var(--ink);width:100%;outline:none}
.control:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,87,255,.10)}
.cta{height:64px;border:0;border-radius:14px;background:var(--red);color:#fff;font-weight:850;font-size:1.05rem;display:flex;align-items:center;justify-content:center;gap:16px;width:100%;margin-top:4px}
.cta:hover{filter:brightness(.98)}
.wave-rule{height:17px;margin:0 0 22px;background-repeat:no-repeat;background-position:center;background-size:100% 17px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='17' viewBox='0 0 1000 17' preserveAspectRatio='none'%3E%3Cpath d='M0 9 C60 1 110 17 170 9 S280 1 340 9 S450 17 510 9 S620 1 680 9 S790 17 850 9 S940 1 1000 9' fill='none' stroke='%231457ff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E")}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:24px 0 14px}
.eyebrow{font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);font-weight:900;margin:0 0 6px}
.section-head h2{font-size:clamp(1.9rem,4.5vw,3rem);line-height:1;margin:0;letter-spacing:-.04em}
.section-link{color:var(--blue);font-weight:800;white-space:nowrap}
.routes-scroll,.local-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(165px,1fr);gap:12px;overflow-x:auto;padding:2px 2px 12px;scroll-snap-type:x proximity;scrollbar-width:none}
.routes-scroll::-webkit-scrollbar,.local-scroll::-webkit-scrollbar{display:none}
.route-card,.local-card{scroll-snap-align:start;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(13,35,91,.055);padding:18px}
.route-card strong{display:block;font-size:1.05rem;line-height:1.2}
.route-card .arrow,.local-card .arrow{color:var(--red);font-weight:900}
.route-card small{display:block;color:var(--muted);margin-top:10px}
.popular-panel{margin:0 -8px;padding:22px 20px 20px;border-radius:26px;background:linear-gradient(145deg,#edf4ff,#f8fbff);border:1px solid #dfe9fb}.popular-panel .section-head{margin:0 0 16px}.popular-panel .eyebrow{font-size:.82rem}.popular-panel .routes-scroll{padding:2px 2px 8px}.featured-route{position:relative;min-height:178px;padding:21px 18px;overflow:hidden;border:0;background:linear-gradient(150deg,#071a59 0%,#103caa 100%);color:#fff;display:flex;flex-direction:column;box-shadow:0 14px 28px rgba(7,26,89,.18);transition:transform .2s ease,box-shadow .2s ease}.featured-route:before{content:"";position:absolute;left:18px;right:18px;top:67px;height:9px;background:radial-gradient(circle at left center,var(--red) 0 4px,transparent 4.5px),radial-gradient(circle at right center,#fff 0 4px,transparent 4.5px)}.featured-route:after{content:"";position:absolute;left:25px;right:25px;top:70px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='16' viewBox='0 0 240 16' preserveAspectRatio='none'%3E%3Cpath d='M2 8c26-7 42 6 68 0s42 6 69 0 42 6 99 0' fill='none' stroke='%237ea7ff' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 16px no-repeat;opacity:1}.featured-route:hover{transform:translateY(-4px);box-shadow:0 20px 34px rgba(7,26,89,.25)}.route-badge{color:#a9c1ff;font-size:.67rem;letter-spacing:.11em;font-weight:900}.featured-route strong{position:relative;z-index:1;margin-top:62px;color:#fff;font-size:1.34rem;line-height:1.12;letter-spacing:-.025em}.featured-route .arrow{color:#ff4a53}
.local-card{min-height:184px;display:flex;flex-direction:column}
.local-card .local-title{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:1.1rem;font-weight:900;color:var(--blue)}
.local-card p{margin:12px 0 0;font-size:.94rem;color:var(--ink)}
.local-card .arrow{margin-top:auto;padding-top:14px;align-self:flex-end}
.footer{padding:34px 0 46px;color:var(--muted);font-size:.88rem}
.footer-inner{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* route page */
.breadcrumbs{font-size:.9rem;color:var(--muted);padding-top:12px}
.route-hero{display:grid;grid-template-columns:1fr .9fr;gap:28px;align-items:center;padding:28px 0 16px}
.route-hero h1{font-size:clamp(3rem,7vw,5.8rem);line-height:.95;letter-spacing:-.06em;margin:0;color:var(--navy)}
.route-hero h1 .route-accent{color:var(--blue)}
.route-hero h1:after{content:"";display:block;width:min(88%,430px);height:24px;margin-top:20px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='440' height='24' viewBox='0 0 440 24' preserveAspectRatio='none'%3E%3Cpath d='M4 14c63-12 99 7 162-1s102 6 167-1 76-2 103 0' fill='none' stroke='%231457ff' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M6 17c49-8 75 1 126-1' fill='none' stroke='%23f20d18' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 24px no-repeat;transform:rotate(-1deg)}
.route-hero .lede{font-size:1.15rem;color:var(--muted);max-width:34rem;margin:18px 0 0}
.route-map{min-height:330px;display:grid;place-items:center}
.route-map svg{width:min(100%,430px);height:auto}
.route-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--line);margin:16px 0 18px}
.fact{background:#fff;padding:18px}
.fact span{display:block;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.fact strong{display:block;margin-top:5px;font-size:1.02rem}
.route-actions{display:flex;gap:12px;align-items:center;margin-bottom:24px}
.secondary{height:58px;border-radius:14px;border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:800;padding:0 20px}
.info-list{border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:18px 0 30px}
.info-row{display:grid;grid-template-columns:1fr auto;gap:20px;padding:18px;border-bottom:1px solid var(--line)}
.info-row:last-child{border-bottom:0}.info-row strong{font-size:.96rem}.info-row span{color:var(--muted);text-align:right}
.inline-booking{display:none;background:var(--soft);border:1px solid #e4ecfb;border-radius:18px;padding:18px;margin:0 0 30px}
.inline-booking.open{display:block}
.inline-booking .form-grid{grid-template-columns:1fr 1fr}
.local-feature{border:1px solid var(--line);border-radius:20px;padding:22px;margin:22px 0 34px}
.local-feature h3{font-size:1.8rem;line-height:1.05;margin:4px 0 10px;letter-spacing:-.03em}
.faq{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line);padding:16px 0}
summary{font-weight:800;cursor:pointer}
details p{color:var(--muted);margin:10px 0 0}

.drawer{position:fixed;inset:0 0 0 auto;width:min(88vw,370px);background:#fff;box-shadow:-20px 0 50px rgba(13,35,91,.16);padding:24px;transform:translateX(105%);transition:.25s;z-index:30;overflow-y:auto}
.drawer.open{transform:none}
.drawer nav{display:grid;gap:4px;margin-top:42px;padding-bottom:28px}.drawer a{padding:11px 14px;border-bottom:1px solid var(--line);font-weight:800}.drawer .drawer-cta{margin:4px 0 12px;border:0;border-radius:13px;background:var(--red);color:#fff;text-align:center;padding:14px}.drawer-label{padding:17px 14px 5px;color:var(--blue);font-size:.74rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.drawer a[href^="mailto:"]{color:var(--blue)}
.drawer-close{position:absolute;right:18px;top:18px;border:0;background:transparent;font-size:1.5rem}
.backdrop{position:fixed;inset:0;background:rgba(5,15,45,.25);opacity:0;pointer-events:none;transition:.25s;z-index:20}.backdrop.open{opacity:1;pointer-events:auto}

.site-notes{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin:54px 0 10px;padding-top:30px;border-top:1px solid var(--line)}.site-notes>div{border:1px solid var(--line);border-radius:20px;padding:24px;background:var(--soft)}.site-notes h2{margin:0;color:var(--navy);font-size:clamp(2rem,4vw,3.2rem);line-height:.98;letter-spacing:-.045em}.site-notes h3{margin:0;color:var(--navy);font-size:1.35rem}.site-notes p:last-child{margin:14px 0 0;color:var(--muted)}.footer a{color:var(--blue);font-weight:750}

/* v21: Local Way feature and editorial About */
.local-way-panel{position:relative;margin:56px 0 0;padding:34px 28px 28px;border-radius:30px;background:linear-gradient(145deg,#071a59 0%,#0b2c7c 64%,#1457ff 145%);overflow:hidden;box-shadow:0 24px 54px rgba(7,26,89,.18)}.local-way-panel:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-110px;top:-145px;background:rgba(255,255,255,.06)}.local-way-wave{height:21px;margin:-8px 0 22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='21' viewBox='0 0 900 21' preserveAspectRatio='none'%3E%3Cpath d='M2 12c72-12 116 9 190 0s119 9 194 0 119 8 195 0 119 8 317 0' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round' opacity='.82'/%3E%3Cpath d='M2 16c72-10 116 7 190 0' fill='none' stroke='%23f20d18' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 21px no-repeat}.local-way-panel .section-head{position:relative;z-index:1;margin:0 0 24px;align-items:end}.local-way-panel .eyebrow{color:#7ea7ff}.local-way-panel .section-head h2{color:#fff;font-size:clamp(2.8rem,5.8vw,4.65rem);line-height:.92}.local-way-panel .section-link{color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:11px 15px}.local-way-lede{color:#d3def7;margin:16px 0 0;max-width:680px;font-size:1rem;line-height:1.55}.local-way-panel .local-scroll{position:relative;z-index:1;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-flow:row;overflow:visible}.local-way-panel .local-card{min-height:265px;border:0;border-radius:21px;padding:19px;background:rgba(255,255,255,.97);box-shadow:0 14px 32px rgba(0,0,0,.14);transition:transform .2s,box-shadow .2s}.local-way-panel .local-card:hover{transform:translateY(-5px);box-shadow:0 20px 38px rgba(0,0,0,.2)}.local-icon{position:relative;width:60px;height:60px;border-radius:18px;background:linear-gradient(145deg,var(--navy),#1457ff);display:grid;place-items:center;margin-bottom:24px;box-shadow:0 10px 20px rgba(7,26,89,.22)}.local-icon:after{content:"";position:absolute;left:11px;right:11px;bottom:-5px;height:4px;border-radius:50%;background:var(--red);transform:rotate(-4deg)}.local-icon svg{width:38px;height:38px;fill:none;stroke:#fff;stroke-width:3.15;stroke-linecap:round;stroke-linejoin:round}.local-way-panel .local-title{font-size:1.02rem;color:var(--navy);overflow-wrap:anywhere}.local-way-panel .local-card p{color:#425071;line-height:1.5}.local-way-panel .montenegro-card{position:relative;background:linear-gradient(155deg,#fff 44%,#e4edff);border:2px solid rgba(20,87,255,.17);padding:17px}.local-way-panel .montenegro-card .local-icon{background:linear-gradient(145deg,#061649,#1249cf);box-shadow:0 10px 22px rgba(7,26,89,.25)}.montenegro-places{display:block;margin:5px 0 0;color:var(--blue);font-size:.62rem;letter-spacing:.1em;font-weight:900}
.about-panel{display:grid;grid-template-columns:.95fr 1.05fr;gap:58px;align-items:start;margin:72px 0 12px;padding:48px 0 38px;border-top:3px solid var(--navy);border-bottom:1px solid var(--line)}.about-panel h2{margin:0;color:var(--navy);font-size:clamp(3rem,6vw,5.2rem);line-height:.9;letter-spacing:-.06em}.about-accent{color:var(--blue)}.about-dot{color:var(--red)}.about-brush{width:min(74%,350px);height:27px;margin:22px 0 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='350' height='27' viewBox='0 0 350 27' preserveAspectRatio='none'%3E%3Cpath d='M7 13c42-8 81 8 126-1s88 7 130-1 61-2 81 1' fill='none' stroke='%231457ff' stroke-width='5.5' stroke-linecap='round'/%3E%3Cpath d='M10 18c51-8 90 5 149-1' fill='none' stroke='%23f20d18' stroke-width='3.8' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 27px no-repeat;transform:rotate(-1deg)}.about-copy{padding-top:22px}.about-copy h3{margin:0;color:var(--blue);font-size:clamp(1.45rem,2.35vw,1.82rem);line-height:1.08;letter-spacing:-.035em}.about-support{max-width:500px;margin:16px 0 34px;color:var(--muted);font-size:1.05rem;line-height:1.62}.about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.about-points span{border-top:2px solid var(--blue);padding-top:12px;color:var(--muted);font-size:.8rem}.about-points strong{display:block;margin-bottom:4px;color:var(--navy);font-size:.72rem;letter-spacing:.08em}
.faq-page .activities-hero{max-width:780px}.faq-page .faq{margin:12px 0 60px}.faq-page details{padding:20px 0}.faq-page summary{font-size:1.08rem}.faq-page details p{max-width:760px;line-height:1.65}
.country-chapter{scroll-margin-top:18px;margin:42px 0 12px;padding:38px;border-radius:28px;background:linear-gradient(145deg,#071a59,#1249cf);color:#fff;position:relative;overflow:hidden}.country-chapter:after{content:"";position:absolute;right:-60px;bottom:-90px;width:260px;height:260px;border:2px solid rgba(255,255,255,.12);border-radius:50%}.country-chapter .eyebrow{color:#9db9ff}.country-chapter h2{margin:0;font-size:clamp(3rem,6vw,5rem);line-height:.9;letter-spacing:-.055em}.country-chapter>p:last-child{margin:18px 0 0;color:#c8d6f6;font-size:1.08rem}

@media (max-width:760px){
  .shell{padding:0 16px}.site-header{padding-top:18px}.brand{font-size:1rem}.brand-mark{width:36px;height:36px}
  .hero{grid-template-columns:1.15fr .85fr;padding-top:22px}.hero h1{font-size:clamp(3.6rem,14vw,5.3rem)}.hero-art{min-height:190px}.hero-art svg{width:100%}
  .booking-card{padding:16px;border-radius:20px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.control{height:58px}.cta{height:60px}
  .section-head{align-items:center}.section-head h2{font-size:2rem}.section-link{font-size:.9rem}
  .routes-scroll{grid-auto-columns:145px}.local-scroll{grid-auto-columns:78%}.local-card{min-height:170px}
  .route-hero{grid-template-columns:1fr;padding-top:20px}.route-hero h1{font-size:3.45rem}.route-hero h1:after{width:82%;height:20px;margin-top:14px;background-size:100% 20px}.route-map{min-height:250px;order:2}.route-facts{grid-template-columns:1fr 1fr}.fact{padding:14px}.route-actions{display:block}.route-actions .cta{margin-bottom:10px}
  .inline-booking .form-grid{grid-template-columns:1fr}.info-row{grid-template-columns:1fr}.info-row span{text-align:left}.local-feature h3{font-size:1.5rem}
  .site-notes{grid-template-columns:1fr;margin-top:38px}.site-notes>div{padding:20px}
  .route-search-intro{display:block}.route-search-intro strong{display:block;text-align:left;margin-top:6px}.featured-route{min-height:218px}.routes-scroll{grid-auto-columns:72%}
  .local-way-panel{margin:40px -4px 0;padding:27px 18px 22px;border-radius:25px}.local-way-panel .section-head{display:block}.local-way-panel .section-head h2{font-size:3.25rem}.local-way-panel .section-link{display:inline-block;margin-top:20px}.local-way-panel .local-scroll{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:82%;gap:12px;overflow-x:auto}.local-way-panel .local-card{min-height:290px}.about-panel{grid-template-columns:1fr;gap:22px;margin-top:52px;padding:38px 0 30px}.about-panel h2{font-size:3.6rem}.about-copy{padding-top:0}.about-copy h3{font-size:1.55rem}.about-support{margin:12px 0 26px;font-size:1rem}.about-points{grid-template-columns:1fr}.about-points span{padding:10px 0}.country-chapter{margin-top:30px;padding:28px 22px;border-radius:24px}.country-chapter h2{font-size:3.35rem}
}

/* v58: truthful route hierarchy and distinct Local Way symbols */
.featured-route:before,.featured-route:after{display:none}
.featured-route{min-height:198px;align-items:center;text-align:center}
.featured-route .route-badge{align-self:center;text-align:center}
.featured-route .route-pair{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;gap:2px;margin:auto 0 4px;text-align:center;line-height:.94}
.route-origin,.route-destination{display:block;max-width:100%;overflow-wrap:anywhere;font-size:1.42rem;font-weight:900;letter-spacing:-.035em}
.route-origin{color:#b9ccff}
.route-destination{color:#fff}
.route-direction{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;color:var(--red);font-size:1.15rem;line-height:1}
.route-direction:before,.route-direction:after{content:"";width:25px;height:2px;border-radius:999px;background:#759cff;opacity:.85}
.local-way-panel .local-card{min-height:235px;padding:22px 18px}
.local-way-panel .local-card p{align-self:stretch;margin-top:13px;text-align:left;line-height:1.48}
.local-icon{width:64px;height:64px;margin-bottom:20px;border-radius:18px;box-shadow:0 5px 0 rgba(7,26,89,.1),0 11px 20px rgba(103,0,8,.15)}
.local-icon:before{inset:5px;border-radius:14px}
.local-icon svg{width:43px;height:43px;stroke-width:2.55}
.local-way-panel .montenegro-card .local-icon{box-shadow:0 5px 0 rgba(7,26,89,.1),0 11px 20px rgba(103,0,8,.15)}

@media (max-width:760px){
  .popular-panel .routes-scroll{grid-auto-columns:69%}
  .featured-route{min-height:190px;padding:17px}
  .featured-route .route-pair{margin:auto 0 2px}
  .route-origin,.route-destination{font-size:1.42rem}
  .route-direction{font-size:1.08rem}
  .local-way-panel .local-card{min-height:225px;padding:20px 18px}
  .local-way-panel .local-card p{margin-top:12px}
}

/* Mobile polish v2: preserve paper-boat proportions and tighten the first screen */
@media (max-width:760px){
  .site-header{padding:16px 0 8px}
  .hero{position:relative;display:block;padding:14px 0 14px;min-height:286px}
  .hero>div:first-child{position:relative;z-index:2}
  .hero h1{width:72%;font-size:clamp(3.25rem,14.8vw,4.55rem);line-height:.89}
  .hero p{font-size:1.04rem;margin:14px 0 0;white-space:nowrap;letter-spacing:-.015em}
  .hero-art{position:absolute;right:0;top:105px;width:142px;min-height:0;display:block;z-index:1}
  .hero-art svg{display:block;width:142px;height:auto;max-width:none;aspect-ratio:320/220}
  .booking-card{padding:14px;margin:0 0 24px;border-radius:20px}
  .trip-tabs{gap:8px;margin-bottom:12px}
  .trip-tab{padding:10px 18px}
  .form-grid{gap:9px}
  .field{gap:4px}
  .field label{font-size:.86rem}
  .control{height:52px;border-radius:13px;padding:0 14px}
  .cta{height:54px;border-radius:13px;margin-top:1px}
  .wave-rule{margin-bottom:14px}
}

@media (max-width:390px){
  .hero{min-height:274px}
  .hero h1{font-size:3.3rem;width:74%}
  .hero-art{width:132px;top:108px}
  .hero-art svg{width:132px}
  .hero p{font-size:.98rem}
}

/* Mobile refinement v3: same design, tighter first screen */
@media (max-width:760px){
  .hero{min-height:264px;padding:10px 0 10px}
  .hero h1{width:74%;font-size:clamp(3.15rem,14vw,4.35rem)}
  .hero p{margin-top:10px;font-size:1rem}
  .hero-art{right:-2px;top:92px;width:150px}
  .hero-art svg{width:150px;height:auto;aspect-ratio:auto}
  .booking-card{padding:12px;margin-bottom:20px}
  .trip-tabs{margin-bottom:9px}
  .trip-tab{padding:9px 17px}
  .form-grid{gap:6px}
  .field{gap:3px}
  .field label{font-size:.82rem}
  .control{height:48px;border-radius:12px;padding:0 13px}
  .cta{height:50px;border-radius:12px;font-size:1rem}
  .wave-rule{margin-bottom:10px}
}
@media (max-width:390px){
  .hero{min-height:254px}
  .hero h1{font-size:3.18rem;width:75%}
  .hero-art{top:96px;width:140px}
  .hero-art svg{width:140px}
  .hero p{font-size:.94rem}
}

/* Mobile refinement v4: visibly smaller menu + cleaner hero composition */
@media (max-width:760px){
  .menu-btn{width:36px;height:36px;padding:0}
  .menu-btn span,.menu-btn:before,.menu-btn:after{width:22px;height:1.6px}
  .menu-btn span{margin:4px 0}

  .site-header{padding:14px 0 6px}
  .brand{gap:9px;font-size:.96rem}
  .brand-mark{width:34px;height:34px}

  .hero{min-height:250px;padding:8px 0 8px}
  .hero h1{width:73%;font-size:clamp(3.05rem,13.6vw,4.15rem);line-height:.88}
  .hero p{margin-top:10px;font-size:.94rem;white-space:normal;max-width:78%;line-height:1.25}
  .hero-art{right:4px;top:122px;width:122px}
  .hero-art svg{width:122px;height:auto;max-width:122px;aspect-ratio:auto}

  .booking-card{padding:11px 12px 12px;margin-bottom:18px}
  .trip-tabs{margin-bottom:8px}
  .trip-tab{padding:8px 15px;font-size:.92rem}
  .form-grid{gap:5px}
  .field{gap:2px}
  .field label{font-size:.79rem}
  .control{height:44px;border-radius:11px;padding:0 12px;font-size:.96rem}
  .cta{height:46px;border-radius:11px;font-size:.98rem}
}

@media (max-width:390px){
  .hero{min-height:242px}
  .hero h1{font-size:3.02rem;width:74%}
  .hero-art{top:120px;right:2px;width:116px}
  .hero-art svg{width:116px;max-width:116px}
  .hero p{font-size:.91rem;max-width:80%}
}

/* v5: cleaner Local Way cards — whole card is clickable; only section CTA keeps an arrow */
.local-card .local-title{justify-content:flex-start}
.local-card p{margin-bottom:0}
.local-card>.arrow{display:none}


/* v6: local way cards are no longer clickable, much smaller hamburger, larger/higher boat */
.local-card{cursor:default}

@media (max-width:760px){
  .menu-btn{width:28px;height:28px;border-radius:8px;padding:0}
  .menu-btn span,.menu-btn:before,.menu-btn:after{width:18px;height:1.5px}
  .menu-btn span{margin:3px 0}

  .site-header{padding:14px 0 4px}

  .hero{min-height:276px;padding:4px 0 10px}
  .hero h1{width:62%;font-size:clamp(3.05rem,13.8vw,4.2rem)}
  .hero p{margin-top:8px;max-width:60%;font-size:.92rem;line-height:1.22}
  .hero-art{right:-2px;top:82px;width:176px}
  .hero-art svg{width:176px;max-width:176px;height:auto}
}

@media (max-width:390px){
  .hero{min-height:268px}
  .hero h1{width:64%;font-size:3.02rem}
  .hero p{max-width:62%;font-size:.9rem}
  .hero-art{right:-2px;top:86px;width:166px}
  .hero-art svg{width:166px;max-width:166px}
}


/* v7: explicit SVG hamburger + stronger hero-art placement */
.menu-btn span,.menu-btn:before,.menu-btn:after{display:none!important}
.menu-btn svg{display:block;width:22px;height:15px;color:var(--navy)}

@media (max-width:760px){
  .menu-btn{width:30px;height:30px;display:grid;place-items:center;padding:0}
  .menu-btn svg{width:20px;height:14px}

  .hero{min-height:288px}
  .hero h1{width:60%}
  .hero p{max-width:57%;white-space:normal}
  .hero-art{right:-6px;top:58px;width:205px}
  .hero-art svg{width:205px;max-width:205px;height:auto}
}

@media (max-width:390px){
  .hero{min-height:280px}
  .hero h1{width:61%}
  .hero p{max-width:58%}
  .hero-art{right:-7px;top:64px;width:194px}
  .hero-art svg{width:194px;max-width:194px}
}


/* v8: remove decorative hero boat; tighter, cleaner hero */
.hero{grid-template-columns:1fr;max-width:760px}
.hero-art{display:none!important}

@media (max-width:760px){
  .hero{display:block;min-height:0;padding:8px 0 18px}
  .hero h1{width:100%;font-size:clamp(3.35rem,14.5vw,4.45rem);line-height:.88}
  .hero p{max-width:100%;margin-top:12px;font-size:.95rem;white-space:nowrap}
  .booking-card{margin-top:0}
}

@media (max-width:390px){
  .hero{min-height:0;padding-bottom:16px}
  .hero h1{width:100%;font-size:3.12rem}
  .hero p{max-width:100%;font-size:.88rem;white-space:nowrap}
}

/* v10: mobile header pulled into hero; desktop unchanged */
@media (max-width:760px){
  .site-header{padding:10px 0 0}
  .brand{gap:8px;font-size:.91rem}
  .brand-mark{width:32px;height:32px}
  .hero{padding-top:0}
  .hero h1{margin-top:-2px}
}
@media (max-width:390px){
  .site-header{padding-top:9px}
  .brand{font-size:.89rem}
  .brand-mark{width:31px;height:31px}
}

/* v12: final mobile header refinement — smaller brand/menu, tighter connection to hero */
@media (max-width:760px){
  .site-header{padding:7px 0 0}
  .brand{gap:6px;font-size:.76rem;letter-spacing:0}
  .brand-mark{width:27px;height:27px}
  .menu-btn{width:25px;height:25px}
  .menu-btn svg{width:17px;height:12px}
  .hero{padding-top:0}
  .hero h1{margin-top:-6px}
}
@media (max-width:390px){
  .site-header{padding-top:6px}
  .brand{font-size:.74rem}
  .brand-mark{width:26px;height:26px}
  .menu-btn{width:24px;height:24px}
  .menu-btn svg{width:16px;height:11px}
  .hero h1{margin-top:-7px}
}


/* v13: useful secondary data on Popular Routes */
.route-card .route-price{display:block;margin-top:8px;color:var(--muted);font-size:.78rem;font-weight:700;line-height:1.15}
@media (max-width:760px){
  .route-card{padding:16px}
  .route-card .route-price{margin-top:7px;font-size:.74rem}
}


/* v14: lower the mobile hero title so it breathes more */
@media (max-width:760px){
  .site-header{padding:8px 0 0}
  .hero{padding-top:10px}
  .hero h1{margin-top:6px}
  .hero p{margin-top:14px}
}
@media (max-width:390px){
  .site-header{padding-top:8px}
  .hero{padding-top:8px}
  .hero h1{margin-top:5px}
  .hero p{margin-top:12px}
}


/* v15: subtle mobile paper-boat silhouettes in the empty hero space */
.hero-silhouette{display:none}

@media (max-width:760px){
  .hero{position:relative}
  .hero-silhouette{display:block;position:absolute;right:0;top:78px;width:128px;height:110px;color:var(--navy);opacity:.9;pointer-events:none}
  .hero-silhouette svg{display:block;width:100%;height:auto;overflow:visible}
}
@media (max-width:390px){
  .hero-silhouette{right:0;top:82px;width:118px}
}


/* v16: final homepage hero — keep header logo, remove decorative island/boat motif */
.hero-silhouette{display:none!important}

/* v29: indexable route-guide copy */
.route-copy{max-width:820px;margin:34px 0;padding:30px;border:1px solid var(--line);border-radius:22px;background:#fff}.route-copy h2{margin:8px 0 16px;color:var(--navy);font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.045em}.route-copy p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:1.04rem;line-height:1.65}.route-copy p:last-child{margin-bottom:0}
@media (max-width:760px){.route-copy{margin:26px 0;padding:22px}.route-copy p:not(.eyebrow){font-size:.98rem}}

/* v17: Local Way chapters, brush separators and activity icons */
.activities-page{max-width:1040px}.activities-hero{padding:42px 0 28px;max-width:860px}.activities-hero h1{margin:0;color:var(--navy);font-size:clamp(3.6rem,8vw,6.2rem);line-height:.88;letter-spacing:-.065em;font-weight:900}.activities-hero>p:last-child{max-width:700px;margin:26px 0 0;color:var(--muted);font-size:1.25rem;line-height:1.55}
.brush-wave{height:28px;margin:4px 0 26px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='28' viewBox='0 0 1000 28' preserveAspectRatio='none'%3E%3Cpath d='M4 17C108 1 175 27 286 14S474 3 565 17s163 8 231-2 129-9 200 0' fill='none' stroke='%231457ff' stroke-width='3.2' stroke-linecap='round' opacity='.95'/%3E%3Cpath d='M6 20C110 5 178 28 286 17S475 6 566 20s162 6 230-1 129-7 198-1' fill='none' stroke='%231457ff' stroke-width='1.2' stroke-linecap='round' opacity='.5'/%3E%3C/svg%3E") center/100% 28px no-repeat}
.city-experiences{scroll-margin-top:18px;padding:18px 0 30px}.city-heading{max-width:760px;margin-bottom:24px}.city-heading h2{margin:0;color:var(--navy);font-size:clamp(2.7rem,6vw,4.6rem);line-height:.94;letter-spacing:-.055em}.city-heading>p:last-child{margin:18px 0 0;color:var(--muted);font-size:1.12rem}.city-kicker{position:relative;display:inline-block;margin:0 0 14px;padding:5px 12px 5px 7px;color:var(--navy);font-weight:900;letter-spacing:.08em;isolation:isolate}.city-kicker:before{content:"";position:absolute;inset:4px -8px 2px -10px;background:#dcecff;transform:rotate(-2deg);clip-path:polygon(0 22%,100% 4%,95% 77%,5% 100%);z-index:-1}.city-kicker:after{content:"";position:absolute;left:18%;right:6%;bottom:-2px;height:4px;background:var(--red);transform:rotate(-3deg);clip-path:polygon(0 35%,100% 0,94% 100%,4% 72%);z-index:-1}
.experience-scroll{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.experience-card{min-height:330px;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 32px rgba(13,35,91,.055);display:flex;flex-direction:column;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.experience-card:hover{transform:translateY(-3px);border-color:#cddcff;box-shadow:0 18px 38px rgba(13,35,91,.09)}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;color:var(--blue);font-size:.78rem;font-weight:900;letter-spacing:.08em}.card-top svg{width:43px;height:43px;color:var(--navy);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.experience-card h3{margin:24px 0 0;color:var(--navy);font-size:1.65rem;line-height:1.08;letter-spacing:-.035em}.experience-card p{margin:16px 0 20px;color:var(--muted);font-size:1rem;line-height:1.48}.experience-card strong{margin-top:auto;color:var(--blue);font-size:.95rem}
.brush-separator{height:24px;margin:26px 0 10px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='24' viewBox='0 0 1000 24' preserveAspectRatio='none'%3E%3Cpath d='M16 13C190 9 276 16 438 12s323-1 546 2' fill='none' stroke='%231457ff' stroke-width='2.3' stroke-linecap='round'/%3E%3Cpath d='M18 15c98-4 170 2 264-2' fill='none' stroke='%23f20d18' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 24px no-repeat}.activities-page .footer{margin-top:28px}.local-card[href]{cursor:pointer}
@media (max-width:760px){.activities-hero{padding:40px 0 22px}.activities-hero h1{font-size:clamp(3.25rem,14vw,4.55rem)}.activities-hero>p:last-child{margin-top:22px;font-size:1.02rem;line-height:1.55}.brush-wave{height:22px;margin:4px 0 18px;background-size:100% 22px}.city-experiences{padding:12px 0 22px}.city-heading{margin-bottom:20px}.city-heading h2{font-size:clamp(2.7rem,11vw,3.65rem)}.city-heading>p:last-child{font-size:1rem;line-height:1.5}.experience-scroll{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:82%;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:2px 2px 14px;scrollbar-width:none}.experience-scroll::-webkit-scrollbar{display:none}.experience-card{scroll-snap-align:start;min-height:350px;padding:22px}.experience-card h3{font-size:1.55rem}.card-top svg{width:39px;height:39px}.brush-separator{margin:20px 0 7px}}
/* v32: original route decision guide */
.route-guide-page{max-width:1120px}.route-story-hero{padding:54px 0 24px;max-width:970px}.route-story-hero h1{margin:0;color:var(--navy);font-size:clamp(3.6rem,7.8vw,6.5rem);line-height:.9;letter-spacing:-.067em}.route-story-hero h1 span{color:var(--blue)}.route-story-hero>p:last-child{max-width:720px;margin:26px 0 0;color:var(--muted);font-size:1.25rem;line-height:1.55}.route-story-brush{margin:4px 0 54px}.route-section-intro{max-width:760px;margin-bottom:24px}.route-section-intro.compact{max-width:880px}.route-section-intro h2{margin:0;color:var(--navy);font-size:clamp(2.5rem,5.2vw,4.5rem);line-height:.95;letter-spacing:-.055em}.route-section-intro>p:last-child{max-width:650px;margin:18px 0 0;color:var(--muted);font-size:1.08rem;line-height:1.6}.route-decision,.route-advice,.arrival-plan,.route-activities{margin:0 0 76px}.arrival-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.arrival-choice{position:relative;overflow:hidden;min-height:520px;padding:30px;border:1px solid #dce6f7;border-radius:28px;background:#f8fbff}.arrival-choice-primary{background:linear-gradient(150deg,#071a59,#1249cf);color:#fff;border-color:transparent;box-shadow:0 24px 54px rgba(7,26,89,.18)}.choice-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.choice-number{font-weight:900;color:var(--blue);font-size:1.8rem}.arrival-choice-primary .choice-number{color:#8db0ff}.choice-tag{border:1px solid #cfdcf2;border-radius:999px;padding:7px 11px;color:var(--blue);font-size:.7rem;font-weight:900;letter-spacing:.09em}.arrival-choice-primary .choice-tag{border-color:rgba(255,255,255,.28);color:#fff}.arrival-choice h3{margin:52px 0 12px;font-size:clamp(2.5rem,4.8vw,4rem);line-height:.94;letter-spacing:-.055em;color:var(--navy)}.arrival-choice-primary h3{color:#fff}.choice-lead{font-size:1.12rem;line-height:1.45;color:var(--muted)}.arrival-choice-primary .choice-lead{color:#cbd9fa}.arrival-choice ul{margin:28px 0;padding:0;list-style:none}.arrival-choice li{position:relative;margin:13px 0;padding-left:25px;font-weight:750}.arrival-choice li:before{content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:50%;background:var(--red)}.choice-note{margin:30px 0 0;padding-top:20px;border-top:1px solid #d8e3f4;color:var(--muted);line-height:1.6}.arrival-choice-primary .choice-note{border-color:rgba(255,255,255,.2);color:#d9e3fb}.route-advice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.advice-card{min-height:270px;padding:25px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 32px rgba(13,35,91,.055)}.advice-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:var(--navy);color:#fff;font-size:1.7rem;box-shadow:5px 5px 0 var(--blue)}.advice-card h3{margin:42px 0 10px;color:var(--navy);font-size:1.55rem;letter-spacing:-.035em}.advice-card p{margin:0;color:var(--muted);line-height:1.6}.arrival-timeline{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:26px;overflow:hidden}.arrival-timeline article{padding:32px}.arrival-timeline article+article{border-left:1px solid var(--line)}.arrival-timeline span{color:var(--blue);font-size:.76rem;font-weight:900;letter-spacing:.1em}.arrival-timeline h3{margin:28px 0 10px;color:var(--navy);font-size:1.85rem;line-height:1.05;letter-spacing:-.04em}.arrival-timeline p{margin:0;color:var(--muted);line-height:1.65}.practical-band{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:0 0 76px;border-radius:28px;overflow:hidden;background:#214185}.practical-band article{padding:28px;background:var(--navy);color:#fff}.practical-band .eyebrow{color:#89adff}.practical-band h3{margin:24px 0 10px;font-size:1.55rem;line-height:1.05}.practical-band p:last-child{margin:0;color:#c7d5f5;line-height:1.6}.route-activities{padding:38px 30px 30px;border-radius:30px;background:linear-gradient(145deg,#edf4ff,#f8fbff);border:1px solid #dfe9fb}.route-final-cta{margin:0 0 28px;padding:52px 44px;border-radius:30px;background:linear-gradient(145deg,#071a59,#103caa);color:#fff;text-align:center}.route-final-cta .eyebrow{color:#96b5ff}.route-final-cta h2{max-width:760px;margin:0 auto 30px;font-size:clamp(2.5rem,5.4vw,4.5rem);line-height:.94;letter-spacing:-.055em}.final-ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:820px;margin:0 auto}.ticket-choice{display:flex;flex-direction:column;gap:5px;padding:20px;border-radius:17px;background:var(--red);color:#fff;text-align:left;transition:transform .18s ease}.ticket-choice:hover{transform:translateY(-3px)}.ticket-choice span{font-size:.73rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.82}.ticket-choice strong{font-size:1.08rem}.ticket-choice.secondary-ticket{background:#fff;color:var(--navy)}.booking-disclosure{margin:18px 0 0;color:#c7d5f5;font-size:.82rem}
@media (max-width:760px){.route-guide-page{padding:0 16px}.route-story-hero{padding:34px 0 18px}.route-story-hero h1{font-size:clamp(3.35rem,14.3vw,4.65rem)}.route-story-hero>p:last-child{margin-top:22px;font-size:1.05rem}.route-story-brush{margin:2px 0 38px}.route-decision,.route-advice,.arrival-plan,.route-activities{margin-bottom:52px}.route-section-intro h2{font-size:clamp(2.65rem,11vw,3.6rem)}.arrival-choice-grid,.route-advice-grid,.arrival-timeline,.practical-band,.final-ticket-grid{grid-template-columns:1fr}.arrival-choice{min-height:0;padding:24px}.arrival-choice h3{margin-top:38px;font-size:2.85rem}.arrival-choice li{font-size:.95rem}.arrival-timeline article+article{border-left:0;border-top:1px solid var(--line)}.practical-band{gap:1px}.practical-band article{padding:25px}.route-activities{margin-left:-4px;margin-right:-4px;padding:27px 18px 20px;border-radius:25px}.route-final-cta{padding:38px 20px;border-radius:25px}.route-final-cta h2{font-size:2.8rem}.ticket-choice{text-align:center}.route-guide-page .footer-inner{gap:14px}}
.route-handoff-page .handoff-more{margin:0 0 64px}.route-handoff-page .route-activities[hidden]{display:none}.route-handoff-page .route-final-cta{margin-bottom:64px}
.route-handoff-page .handoff-cta{padding:34px}.route-handoff-page .handoff-cta .ticket-choice{align-items:center;text-align:center;padding:23px}.route-handoff-page .handoff-cta .ticket-choice strong{font-size:1.2rem}
.route-final-cta.compact-ticket-cta{padding:34px}.route-final-cta.compact-ticket-cta .single-ticket .ticket-choice{align-items:center;text-align:center;padding:23px}.route-final-cta.compact-ticket-cta .single-ticket .ticket-choice strong{font-size:1.2rem}
.card-top svg{width:30px;height:30px;padding:8px;border-radius:11px;background:var(--navy);color:#fff;stroke-width:2.2;box-shadow:4px 4px 0 var(--red)}
@media (max-width:760px){.card-top svg{width:27px;height:27px;padding:8px}}
.route-handoff-page .handoff-band{grid-template-columns:repeat(4,minmax(0,1fr))}.route-handoff-page .handoff-band article{min-width:0}.route-handoff-page .handoff-band h3{overflow-wrap:anywhere}
.destination-note{margin:0 0 36px;padding:34px 38px;border:1px solid var(--line);border-radius:26px;background:#fff}.destination-note h2{margin:0;color:var(--navy);font-size:clamp(2.35rem,4.7vw,4rem);line-height:.96;letter-spacing:-.05em}.destination-note>p:last-child{max-width:820px;margin:18px 0 0;color:var(--muted);font-size:1.12rem;line-height:1.65}
.destination-brush{position:relative;width:min(230px,60%);height:12px;margin:16px 0 4px;background:none;transform:rotate(-1deg)}.destination-brush:before,.destination-brush:after{content:"";position:absolute;left:0;border-radius:999px}.destination-brush:before{top:2px;width:100%;height:5px;background:var(--blue);clip-path:polygon(0 28%,91% 0,100% 54%,88% 78%,8% 100%)}.destination-brush:after{top:7px;width:42%;height:4px;background:var(--red);clip-path:polygon(0 20%,100% 0,91% 100%,7% 74%)}
@media (max-width:760px){.route-handoff-page .handoff-more{margin-bottom:48px}.route-handoff-page .route-final-cta{margin-bottom:52px}}
@media (max-width:760px){.route-handoff-page .handoff-band{grid-template-columns:1fr 1fr}.route-handoff-page .handoff-band article{padding:22px}.route-handoff-page .handoff-band h3{font-size:1.25rem}.destination-note{padding:27px 23px;border-radius:23px}.destination-note h2{font-size:2.65rem}.destination-note>p:last-child{font-size:1rem}}

/* All routes directory */
.routes-page{max-width:1120px}.routes-directory-hero{padding:54px 0 32px;max-width:900px}.routes-directory-hero h1{margin:0;color:var(--navy);font-size:clamp(3.8rem,8vw,6.6rem);line-height:.88;letter-spacing:-.067em}.routes-directory-hero h1 span{color:var(--blue)}.routes-directory-hero>p:last-child{max-width:720px;margin:24px 0 0;color:var(--muted);font-size:1.16rem;line-height:1.6}.routes-directory-hero .brush-wave{width:min(520px,78%);margin:10px 0 24px}.routes-filter-wrap{position:sticky;top:10px;z-index:4;margin:10px 0 42px;padding:16px;border:1px solid #dbe6f7;border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 14px 34px rgba(7,26,89,.1);backdrop-filter:blur(10px)}.routes-filter-wrap label{display:block;margin:0 0 8px;color:var(--navy);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.routes-filter-wrap input{width:100%;height:54px;padding:0 17px;border:1px solid #cbd9ef;border-radius:13px;background:#fff;color:var(--navy);font:inherit;font-weight:750;outline:none}.routes-filter-wrap input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,87,255,.12)}.routes-directory{display:grid;gap:42px}.routes-group h2{margin:0 0 14px;color:var(--navy);font-size:clamp(1.75rem,3vw,2.5rem);letter-spacing:-.04em}.all-routes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.all-route-link{min-height:82px;padding:17px 18px;border:1px solid #dce6f7;border-radius:16px;background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:850;line-height:1.25;box-shadow:0 8px 22px rgba(13,35,91,.045);transition:transform .18s,border-color .18s,box-shadow .18s}.all-route-link:hover{transform:translateY(-2px);border-color:#b9cdf4;box-shadow:0 13px 28px rgba(13,35,91,.09)}.all-route-link b{color:var(--red)}.all-route-link small{flex:0 0 auto;color:var(--blue);font-size:.58rem;letter-spacing:.08em}.routes-note{margin:52px 0 10px;padding:25px;border-radius:20px;background:var(--navy);color:#fff}.routes-note strong{font-size:1.2rem}.routes-note p{max-width:700px;margin:9px 0 0;color:#c9d6f5;line-height:1.55}.all-routes-link{display:inline-flex;margin:17px 2px 0;color:var(--blue);font-weight:900}
.all-route-link[hidden],.routes-group[hidden]{display:none!important}
@media (max-width:760px){.routes-page{padding:0 16px}.routes-directory-hero{padding:35px 0 20px}.routes-directory-hero h1{font-size:clamp(3.55rem,15vw,4.7rem)}.routes-directory-hero>p:last-child{font-size:1.02rem}.routes-filter-wrap{top:6px;margin-bottom:34px;padding:12px}.routes-filter-wrap input{height:50px}.routes-directory{gap:34px}.all-routes-grid{grid-template-columns:1fr}.all-route-link{min-height:70px}.routes-group h2{font-size:2rem}}

/* v37: tighter Popular Routes cards on mobile */
@media (max-width:760px){
  .popular-panel .eyebrow{font-size:.95rem}
  .popular-panel .section-head{margin-bottom:13px}
  .featured-route{min-height:184px;padding:18px}
  .featured-route:before{top:58px}
  .featured-route:after{top:61px}
  .featured-route strong{margin-top:48px}
}

/* v38: Dubrovnik SEO route series */
.final-ticket-grid.single-ticket{grid-template-columns:minmax(0,520px);justify-content:center}
.related-seo-routes{margin:0 0 58px}
.related-seo-routes .route-card{min-height:94px;display:flex;align-items:center}
.seo-route-faq{margin:0 0 32px}
@media (max-width:760px){
  .final-ticket-grid.single-ticket{grid-template-columns:1fr}
  .route-guide-page .route-story-hero h1{overflow-wrap:anywhere}
  .related-seo-routes{margin-bottom:44px}
  .related-seo-routes .routes-scroll{grid-auto-columns:78%}
}

/* v54: one route hierarchy, tighter mobile cards and a quieter ending */
.route-story-hero:not(.handoff-hero) .eyebrow{display:none}
.route-story-hero{padding-top:42px}
.route-story-hero h1{font-size:clamp(4rem,8.2vw,6.9rem)}
.route-decision.route-summary-only{margin-bottom:54px}
.route-handoff-page .port-pair-band{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:36px}
.route-handoff-page .port-pair-band article{padding:26px 30px}
.route-handoff-page .port-pair-band h3{margin-top:18px;overflow-wrap:anywhere}
.port-map-link{display:inline-flex;align-items:flex-start;gap:8px;color:#fff;text-decoration:none}
.port-map-link:hover,.port-map-link:focus-visible{color:#fff;text-decoration:underline;text-decoration-color:#8db0ff;text-underline-offset:5px}
.map-arrow{flex:0 0 auto;color:#8db0ff;font-size:.72em;line-height:1.1}
.multi-port-links{display:flex;flex-wrap:wrap;gap:7px 14px}
.multi-port-links .port-map-link{font-size:.92em}

/* v57: centred destination cards and a unified Local Way icon system */
.featured-route strong{align-self:stretch;margin-top:auto;margin-bottom:10px;text-align:center}
.local-way-panel .local-card{align-items:center;text-align:center}
.local-way-panel .local-title{width:100%;justify-content:center;text-align:center}
.local-way-panel .local-card p{text-align:center}
.local-icon{isolation:isolate;width:68px;height:68px;margin:0 auto 24px;border-radius:20px;background:linear-gradient(145deg,#ff303a 0%,#f20d18 55%,#c9000a 100%);box-shadow:0 9px 0 rgba(7,26,89,.13),0 17px 28px rgba(103,0,8,.22)}
.local-icon:before{content:"";position:absolute;inset:6px;border:1px solid rgba(255,255,255,.34);border-radius:15px;z-index:-1}
.local-icon:after{display:none}
.local-icon svg{width:45px;height:45px;stroke-width:2.6}
.local-way-panel .montenegro-card .local-icon{background:linear-gradient(145deg,#ff303a 0%,#f20d18 55%,#c9000a 100%);box-shadow:0 9px 0 rgba(7,26,89,.13),0 17px 28px rgba(103,0,8,.22)}
.montenegro-places{text-align:center}

@media (max-width:760px){
  .popular-panel{padding:18px 16px 16px}
  .popular-panel .routes-scroll{grid-auto-columns:68%;padding-bottom:4px}
  .featured-route{min-height:148px;padding:16px}
  .featured-route:before{left:16px;right:16px;top:51px}
  .featured-route:after{left:23px;right:23px;top:54px}
  .featured-route strong{margin-top:39px;font-size:1.22rem}
  .route-badge{font-size:.62rem}
  .featured-route strong{margin-bottom:6px}

  .local-way-panel .local-card{min-height:245px}
  .experience-card{min-height:292px;padding:19px}
  .experience-card h3{margin-top:18px}
  .experience-card p{margin:12px 0 16px}

  .route-story-hero{padding:27px 0 14px}
  .route-story-hero h1{font-size:clamp(3.65rem,15vw,4.85rem)}
  .route-story-hero>p:last-child{margin-top:17px}
  .route-story-brush{margin-bottom:28px}
  .route-decision,.route-advice,.arrival-plan,.route-activities{margin-bottom:42px}
  .arrival-timeline article,.practical-band article{padding:21px}
  .arrival-timeline h3,.practical-band h3{margin-top:17px}
  .route-handoff-page .port-pair-band{grid-template-columns:1fr;margin-bottom:28px}
  .route-handoff-page .port-pair-band article{padding:18px}
  .route-handoff-page .port-pair-band article+article{border-left:0;border-top:1px solid #214185}
  .route-handoff-page .port-pair-band h3{font-size:1.18rem;margin-top:13px}

  .about-panel{position:relative;border-top:0;border-bottom:0;margin-top:42px;padding-top:28px}
  .about-panel:before{content:"";display:block;width:82px;height:4px;margin-bottom:26px;border-radius:999px;background:linear-gradient(90deg,var(--navy) 0 68%,var(--red) 68%)}
  .about-panel h2{font-size:3.45rem}
  .about-points{gap:8px}
  .about-points span{border-top:0;border-radius:13px;background:#f5f8fd;padding:12px 14px}
  .footer{padding:18px 0 26px}
  .footer-inner{padding-top:14px;gap:9px 14px;font-size:.8rem}
}

/* v58 final cascade: route names use one hierarchy; Local Way stays compact */
.featured-route:before,.featured-route:after{display:none!important}
.featured-route{min-height:198px;align-items:center;text-align:center}
.featured-route .route-badge{align-self:center;text-align:center}
.featured-route .route-pair{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;gap:2px;margin:auto 0 4px!important;text-align:center;line-height:.94}
.route-origin,.route-destination{display:block;max-width:100%;overflow-wrap:anywhere;font-size:1.42rem;font-weight:900;letter-spacing:-.035em}
.route-origin{color:#b9ccff}
.route-destination{color:#fff}
.route-direction{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;color:var(--red);font-size:1.15rem;line-height:1}
.route-direction:before,.route-direction:after{content:"";width:25px;height:2px;border-radius:999px;background:#759cff;opacity:.85}
.local-way-panel .local-card{min-height:235px;padding:22px 18px}
.local-way-panel .local-card p{align-self:stretch;margin-top:13px;text-align:left;line-height:1.48}
.local-icon{width:64px;height:64px;margin-bottom:20px;border-radius:18px;box-shadow:0 5px 0 rgba(7,26,89,.1),0 11px 20px rgba(103,0,8,.15)}
.local-icon:before{inset:5px;border-radius:14px}
.local-icon svg{width:43px;height:43px;stroke-width:2.55}
.local-way-panel .montenegro-card .local-icon{box-shadow:0 5px 0 rgba(7,26,89,.1),0 11px 20px rgba(103,0,8,.15)}

@media (max-width:760px){
  .popular-panel .routes-scroll{grid-auto-columns:69%}
  .featured-route{min-height:190px;padding:17px}
  .featured-route .route-pair{margin:auto 0 2px!important;font-size:inherit}
  .route-origin,.route-destination{font-size:1.42rem}
  .route-direction{font-size:1.08rem}
  .local-way-panel .local-card{min-height:225px;padding:20px 18px}
  .local-way-panel .local-card p{margin-top:12px;text-align:left}
}

/* v59: final Local Way heading balance */
.local-way-panel .section-head{display:block;margin-bottom:18px}
.local-way-panel .section-head h2{font-size:clamp(2.7rem,5.2vw,4.25rem)}
.local-way-dot{color:var(--red)}
.local-way-panel .local-way-cta{display:inline-flex;margin-top:14px;padding:9px 14px}

@media (max-width:760px){
  .local-way-panel .section-head{margin-bottom:18px}
  .local-way-panel .section-head h2{font-size:3.05rem}
  .local-way-panel .local-way-cta{margin-top:13px}
}

/* v60: route-level Local Way punctuation */
.route-local-way-dot{color:var(--red)}

/* v62: lift the route pair to the optical centre on mobile */
@media (max-width:760px){
  .featured-route .route-pair{transform:translateY(-32px)}
}

/* v65: destination-led SEO guides and honest activity handoff */
.destination-guide-page{max-width:1120px}
.destination-seo-hero{max-width:970px;padding:54px 0 22px}
.destination-seo-hero h1{max-width:920px;margin:12px 0 22px;color:var(--navy);font-size:clamp(4rem,8vw,6.8rem);line-height:.9;letter-spacing:-.067em}
.destination-seo-hero h1 span:first-child{color:var(--blue)}
.destination-dot{color:var(--red)}
.destination-seo-hero .destination-strap{max-width:760px;margin:0 0 17px;color:var(--navy);font-size:1.42rem;font-weight:850;line-height:1.35}
.destination-seo-hero>p:last-child{max-width:760px;margin:0;color:var(--muted);font-size:1.08rem;line-height:1.65}
.destination-brush{margin:4px 0 48px}
.destination-decisions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:68px}
.destination-decisions article{min-height:260px;padding:30px;border:1px solid var(--line);border-radius:25px;background:#fff;box-shadow:0 14px 38px rgba(13,35,91,.055)}
.destination-decisions h2{margin:34px 0 12px;color:var(--navy);font-size:2rem;line-height:1;letter-spacing:-.04em}
.destination-decisions article>p:not(.eyebrow){margin:0;color:var(--muted);font-size:1.02rem;line-height:1.65}
.destination-stay-link{display:inline-flex;margin-top:20px;color:var(--blue);font-weight:900}
.destination-activities{margin-bottom:68px}
.activity-disclosure{margin:18px 2px 0;color:var(--muted);font-size:.78rem;line-height:1.5}
.route-destination-guide{display:inline-flex;margin:22px 2px 0;color:var(--blue);font-weight:900}
.destination-routes{margin:0 0 66px}
.destination-route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dubrovnik-next{margin:0 0 66px;padding:42px;border:1px solid #d9dfeb;border-radius:24px;background:#f7f9fd}.dubrovnik-next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dubrovnik-next-grid a{display:flex;min-height:180px;flex-direction:column;padding:22px;border:1px solid #cdd5e4;border-radius:18px;background:#fff;text-decoration:none;box-shadow:0 7px 18px rgba(7,26,89,.06);transition:transform .2s ease,border-color .2s ease}.dubrovnik-next-grid span{color:#64708a;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.dubrovnik-next-grid strong{margin:18px 0 12px;color:#071a59;font-size:24px;line-height:1.05}.dubrovnik-next-grid b{margin-top:auto;color:#ef6b32;font-size:12px;letter-spacing:.04em}.dubrovnik-next-grid a:hover{border-color:#ef6b32;transform:translateY(-2px)}
.destination-route-link{display:flex;align-items:center;justify-content:space-between;min-height:92px;padding:22px;border:1px solid var(--line);border-radius:19px;background:#fff;color:var(--navy);font-weight:900;box-shadow:0 10px 28px rgba(13,35,91,.045)}
.destination-route-link span{color:var(--red)}
.destination-guide-index{margin:12px 0 76px;padding:38px 30px 30px;border:1px solid #dfe9fb;border-radius:30px;background:linear-gradient(145deg,#edf4ff,#f8fbff)}
.destination-guide-scroll{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.destination-guide-scroll a{display:flex;flex-direction:column;min-height:188px;padding:22px;border-radius:21px;background:linear-gradient(150deg,#071a59,#1249cf);color:#fff;box-shadow:0 16px 36px rgba(7,26,89,.13)}
.destination-guide-scroll span{color:#a8c0ff;font-size:.74rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.destination-guide-scroll strong{margin:27px 0 18px;font-size:1.16rem;line-height:1.25}
.destination-guide-scroll em{margin-top:auto;color:#fff;font-size:.84rem;font-style:normal;font-weight:850}

@media (max-width:760px){
  .destination-guide-page{padding:0 16px}
  .destination-seo-hero{padding:34px 0 18px}
  .destination-seo-hero h1{font-size:clamp(3.45rem,14.4vw,4.7rem)}
  .destination-seo-hero .destination-strap{font-size:1.2rem}
  .destination-brush{margin-bottom:35px}
  .destination-decisions{grid-template-columns:1fr;margin-bottom:48px}
  .destination-decisions article{min-height:0;padding:23px}
  .destination-decisions h2{margin-top:25px;font-size:1.7rem}
  .destination-activities{margin-bottom:48px}
  .destination-route-grid,.dubrovnik-next-grid{grid-template-columns:1fr}
  .dubrovnik-next{padding:26px 18px}
  .destination-route-link{min-height:76px}
  .destination-guide-index{margin:8px -4px 52px;padding:27px 18px 22px;border-radius:25px}
  .destination-guide-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:78%;grid-template-columns:none;gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;padding-bottom:8px}
  .destination-guide-scroll a{min-height:172px;scroll-snap-align:start}
}

/* v70: visible route-status layer for truthful, source-backed route pages */
.route-truth{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:24px;margin:0 0 32px;padding:22px 24px;border:1px solid #dbe6f8;border-radius:22px;background:linear-gradient(135deg,#eef5ff,#fff);box-shadow:0 12px 34px rgba(7,26,89,.05)}
.route-truth>.eyebrow{margin:0}
.route-truth strong{display:block;color:var(--navy);font-size:1.18rem;line-height:1.2}
.route-truth div p{max-width:720px;margin:7px 0 0;color:var(--muted);font-size:.95rem;line-height:1.55}
.route-truth>a{display:inline-flex;white-space:nowrap;color:var(--blue);font-size:.86rem;font-weight:900}
.route-truth>a span{margin-left:5px;color:var(--red)}
.route-status-note{display:inline-flex;white-space:nowrap;border:1px solid #d7e3f6;border-radius:999px;padding:8px 11px;color:#5e7195;background:rgba(255,255,255,.7);font-size:.72rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.car-ferry-note{max-width:820px;margin:14px auto 0;padding:18px 20px;border:1px solid rgba(255,255,255,.2);border-radius:17px;background:rgba(255,255,255,.08);text-align:left}.car-ferry-note span{display:block;color:#9dbaff;font-size:.7rem;font-weight:900;letter-spacing:.1em}.car-ferry-note strong{display:block;margin-top:5px;color:#fff;font-size:1rem}.car-ferry-note p{margin:6px 0 0;color:#cbd8f5;font-size:.86rem;line-height:1.5}
.editorial-card{cursor:default}.editorial-card>strong{color:#6d7fa1;letter-spacing:.09em;font-size:.72rem}.editorial-card:hover{transform:none}
.route-alternative-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:12px}
.route-secondary-action{display:inline-flex;align-items:center;justify-content:center;padding:18px 24px;border:1px solid rgba(255,255,255,.35);border-radius:18px;color:#fff;font-weight:900}

@media (max-width:760px){
  .route-truth{grid-template-columns:1fr;gap:12px;margin-bottom:26px;padding:20px}
  .route-truth>a{white-space:normal}
  .route-status-note{justify-self:start;white-space:normal}
  .car-ferry-note{text-align:left}
  .route-alternative-actions{grid-template-columns:1fr}
}

/* v71: quieter Local Way — editorial rather than promotional */
.local-way-panel{
  padding:32px 30px 30px;
  border:1px solid #dce7f8;
  background:linear-gradient(145deg,#f5f9ff 0%,#eaf2ff 100%);
  box-shadow:0 18px 46px rgba(7,26,89,.08);
}
.local-way-panel:before{
  width:210px;
  height:210px;
  right:-90px;
  top:-115px;
  background:rgba(20,87,255,.055);
}
.local-way-wave{
  margin:-7px 0 23px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='21' viewBox='0 0 900 21' preserveAspectRatio='none'%3E%3Cpath d='M2 12c72-12 116 9 190 0s119 9 194 0 119 8 195 0 119 8 317 0' fill='none' stroke='%231457ff' stroke-width='2.35' stroke-linecap='round' opacity='.58'/%3E%3Cpath d='M2 16c72-10 116 7 190 0' fill='none' stroke='%23f20d18' stroke-width='2.1' stroke-linecap='round'/%3E%3C/svg%3E");
}
.local-way-panel .eyebrow{color:var(--blue)}
.local-way-panel .section-head h2{color:var(--navy)}
.local-way-lede{color:#53617e}
.local-way-panel .section-link{
  color:var(--navy);
  border-color:#b9cbea;
  background:rgba(255,255,255,.58);
}
.local-way-panel .section-link:hover{
  color:var(--blue);
  border-color:var(--blue);
  background:#fff;
}
.local-way-panel .local-card,
.local-way-panel .montenegro-card{
  min-height:238px;
  border:1px solid rgba(7,26,89,.075);
  background:rgba(255,255,255,.88);
  box-shadow:0 10px 26px rgba(7,26,89,.075);
}
.local-way-panel .local-card:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 31px rgba(7,26,89,.11);
}
.local-icon,
.local-way-panel .montenegro-card .local-icon{
  width:54px;
  height:54px;
  margin-bottom:18px;
  border-radius:16px;
  background:linear-gradient(145deg,#ff3540,#e70b16);
  box-shadow:0 7px 17px rgba(168,5,16,.18);
}
.local-icon:before{inset:4px;border-radius:12px}
.local-icon:after{display:none}
.local-icon svg{width:35px;height:35px;stroke-width:2.45}

/* v75: neutral timetable notes and non-commercial Local Way cards */
.route-schedule-note{margin:0 0 52px;padding:30px 32px;border:1px solid #dbe6f8;border-radius:24px;background:linear-gradient(135deg,#f3f7ff,#fff)}
.route-schedule-note .eyebrow{margin:0 0 12px}
.route-schedule-note h2{margin:0;color:var(--navy);font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.045em}
.route-schedule-note>p:last-child{max-width:760px;margin:16px 0 0;color:var(--muted);line-height:1.65}
.experience-card-editorial{cursor:default}
.experience-card-editorial:hover{transform:none;border-color:var(--line);box-shadow:0 12px 32px rgba(13,35,91,.055)}
.experience-card-editorial>strong{color:var(--muted)}

@media (max-width:760px){
  .route-schedule-note{margin-bottom:40px;padding:24px 20px;border-radius:20px}
  .local-way-panel{margin-top:42px;padding:25px 18px 21px}
  .local-way-panel .section-head h2{font-size:2.85rem}
  .local-way-panel .local-scroll{grid-auto-columns:79%}
  .local-way-panel .local-card,
  .local-way-panel .montenegro-card{min-height:215px;padding:19px 18px}
  .local-icon,
  .local-way-panel .montenegro-card .local-icon{width:52px;height:52px;margin-bottom:16px}
}

/* v86: compact route directory + cleaner mobile transition into About */
.routes-directory-hero{padding:42px 0 20px;max-width:820px}
.routes-directory-hero h1{font-size:clamp(3.35rem,7vw,5.7rem)}
.routes-directory-hero>p:last-child{max-width:650px;margin-top:18px;font-size:1.05rem}
.routes-directory-hero .brush-wave{width:min(430px,70%);margin:8px 0 18px}
.routes-filter-wrap{margin:6px 0 30px;padding:13px;border-radius:17px;box-shadow:0 10px 26px rgba(7,26,89,.08)}
.routes-filter-wrap input{height:48px}
.routes-directory{gap:30px}
.routes-group h2{margin-bottom:9px;font-size:clamp(1.55rem,2.6vw,2.15rem)}
.all-routes-grid{gap:7px}
.all-route-link{min-height:58px;padding:12px 15px;border-radius:13px;box-shadow:none}
.routes-note{margin-top:38px}

@media (max-width:760px){
  .routes-directory-hero{padding:25px 0 13px}
  .routes-directory-hero h1{font-size:clamp(2.85rem,12.7vw,3.85rem);line-height:.9}
  .routes-directory-hero .brush-wave{height:18px;width:76%;margin:7px 0 13px;background-size:100% 18px}
  .routes-directory-hero>p:last-child{margin-top:13px;font-size:.95rem;line-height:1.48}
  .routes-filter-wrap{position:relative;top:auto;margin:5px 0 24px;padding:10px;border-radius:15px}
  .routes-filter-wrap label{margin-bottom:6px;font-size:.69rem}
  .routes-filter-wrap input{height:45px;padding:0 13px;font-size:.93rem}
  .routes-directory{gap:25px}
  .routes-group h2{margin-bottom:8px;font-size:1.65rem}
  .all-routes-grid{gap:6px}
  .all-route-link{min-height:52px;padding:10px 13px;border-radius:12px;font-size:.94rem}
  .all-route-link small{font-size:.52rem}
  .routes-note{margin-top:30px;padding:20px}

  /* Keep the horizontal Local Way rail visually contained before About. */
  .local-way-panel{margin-bottom:0}
  .local-way-panel .local-scroll{padding-bottom:4px}
  .about-panel{margin-top:28px!important;padding-top:24px!important}
}

/* v87: remove the stray mobile divider above the About headline */
@media (max-width:760px){
  .about-panel:before{display:none!important;content:none!important}
  .about-panel{margin-top:28px!important;padding-top:24px!important}
}


/* v88: branded All Routes hero + stronger Dubrovnik route priority */
.routes-title-dot{font-style:normal;color:var(--red)}
.routes-directory-hero .routes-dual-wave{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='34' viewBox='0 0 1000 34' preserveAspectRatio='none'%3E%3Cpath d='M5 13C120 -2 190 26 305 12S500 2 590 15s165 7 235-3 115-8 170 0' fill='none' stroke='%231457ff' stroke-width='4.5' stroke-linecap='round'/%3E%3Cpath d='M10 24C120 8 185 30 295 20S445 11 520 20' fill='none' stroke='%23f52236' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") left center/100% 100% no-repeat}
@media (max-width:760px){
  .all-route-link{min-height:46px;padding:8px 12px}
}

/* v89: Worth the Detour — Dubrovnik pilot */
.detour-entry{margin:0 0 68px;padding:32px;border:1px solid #dfe9fb;border-radius:28px;background:linear-gradient(145deg,#071a59,#0d3eb3);color:#fff;box-shadow:0 18px 44px rgba(7,26,89,.13)}
.detour-entry .eyebrow{color:#9db8ff}.detour-entry-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}.detour-entry h2{max-width:650px;margin:28px 0 13px;font-size:clamp(2.2rem,5vw,4rem);line-height:.95;letter-spacing:-.055em}.detour-entry h2 span{color:var(--red)}.detour-entry p:last-child{max-width:620px;margin:0;color:#dce6ff;line-height:1.6}.detour-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;min-width:190px;padding:18px 20px;border-radius:15px;background:#fff;color:var(--navy);font-weight:900}.detour-cta b{color:var(--red)}
.find-page{max-width:900px}.find-close{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;color:var(--navy);font-size:2rem;font-weight:400}.find-hero{padding:54px 0 18px}.find-count{margin:42px 0 10px;color:var(--red);font-size:.78rem;font-weight:950;letter-spacing:.15em}.find-hero h1{margin:0;color:var(--navy);font-size:clamp(4rem,9vw,7rem);line-height:.84;letter-spacing:-.07em}.find-hero h1 span{color:var(--blue)}.find-hero h1 i{color:var(--red);font-style:normal}.find-lede{margin:25px 0 0;color:var(--navy);font-size:1.35rem;font-weight:850}.find-card,.find-upload,.find-reveal{margin:0 0 24px;padding:30px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 14px 38px rgba(13,35,91,.055)}.find-card h2,.find-upload h2,.find-reveal h2{margin:28px 0 14px;color:var(--navy);font-size:clamp(2rem,5vw,3.25rem);line-height:.98;letter-spacing:-.05em}.find-card>p:not(.eyebrow),.find-upload>p:not(.eyebrow),.find-reveal>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:1.04rem;line-height:1.65}.find-rule{padding-top:14px;border-top:1px solid var(--line);color:var(--navy)!important;font-weight:900}.find-upload input{position:absolute;opacity:0;pointer-events:none}.find-upload-button,#find-check{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:24px;padding:18px;border:0;border-radius:15px;background:var(--red);color:#fff;font:inherit;font-weight:950;cursor:pointer}.find-upload-button span{font-size:1.4rem}.find-preview{margin-top:18px}.find-preview img{display:block;width:100%;max-height:480px;object-fit:cover;border-radius:18px}.find-preview #find-check{background:var(--navy)}.find-pending{margin-top:18px;padding:18px;border-radius:16px;background:#edf4ff;color:var(--navy)}.find-pending p{margin:6px 0 0;color:var(--muted);line-height:1.5}.find-reveal h2 span{color:var(--red)}.find-reveal a{display:flex;justify-content:space-between;margin-top:24px;padding:18px 20px;border-radius:15px;background:var(--navy);color:#fff;font-weight:950;opacity:.45}.find-reveal small{display:block;margin-top:10px;color:var(--muted)}
@media(max-width:760px){.detour-entry{margin-bottom:48px;padding:24px;border-radius:24px}.detour-entry-grid{grid-template-columns:1fr}.detour-entry h2{margin-top:24px;font-size:2.65rem}.detour-cta{width:100%}.find-page{padding:0 16px}.find-hero{padding:34px 0 12px}.find-count{margin-top:32px}.find-hero h1{font-size:clamp(3.6rem,16vw,5.1rem)}.find-card,.find-upload,.find-reveal{padding:23px;border-radius:22px}}

/* v92 social unlock */
.find-share{margin:28px 0 22px;padding:22px;border:1px solid rgba(7,26,89,.12);border-radius:22px;background:#fff}.find-share h3{font-size:clamp(24px,4vw,34px);margin:4px 0 10px;color:#071a59}.find-share p{line-height:1.55}.find-caption{margin:16px 0 12px;padding:16px;border-radius:14px;background:#f4f7fb;line-height:1.5}.find-share button{width:100%;border:0;border-radius:14px;background:#071a59;color:#fff;font:inherit;font-weight:800;padding:15px 18px;cursor:pointer}.find-card .detour-cta{display:inline-flex;margin-top:16px}


/* v95 — route → destination handoff */
.route-arrival-next{position:relative;overflow:hidden;margin:0 0 70px;padding:42px 44px 40px;border:1px solid #dce7fb;border-radius:30px;background:linear-gradient(145deg,#f2f7ff,#fff);box-shadow:0 16px 42px rgba(13,35,91,.06)}
.route-arrival-next:after{content:"";position:absolute;right:-56px;top:-72px;width:190px;height:190px;border-radius:50%;background:rgba(20,87,255,.055)}
.route-arrival-next .eyebrow{position:relative;z-index:1;margin-bottom:16px;color:var(--blue)}
.route-arrival-next h2{position:relative;z-index:1;max-width:760px;margin:0;color:var(--navy);font-size:clamp(2.6rem,5.4vw,4.6rem);line-height:.94;letter-spacing:-.055em}
.route-arrival-next h2 span{color:var(--red)}
.route-arrival-next>p:not(.eyebrow){position:relative;z-index:1;max-width:650px;margin:20px 0 26px;color:var(--muted);font-size:1.08rem;line-height:1.6}
.route-arrival-next>a{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border-radius:999px;background:var(--navy);color:#fff;font-weight:900}
@media (max-width:760px){.route-arrival-next{margin-bottom:52px;padding:32px 24px 30px;border-radius:25px}.route-arrival-next h2{font-size:2.75rem}.route-arrival-next>p:not(.eyebrow){font-size:1rem}.route-arrival-next>a{width:100%;justify-content:center}}

/* v101: Things to Do hub CTA sits below destination cards */
.local-way-cta-row{display:flex;justify-content:flex-start;margin-top:22px;padding:0 2px}
.local-way-panel .local-way-cta-row .local-way-cta{margin-top:0}
@media(max-width:700px){.local-way-cta-row{margin-top:18px;padding-left:0}}

.things-hub-grid .destination-route-link{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:150px}
.things-hub-grid .destination-route-link strong{font-size:1.12rem;color:#071a59}
.things-hub-grid .destination-route-link span{font-weight:400;line-height:1.45;color:#5f6b82}
.things-hub-grid .destination-route-link b{margin-top:auto;color:#1457ff}

/* v102 · Things to Do editorial lead */
.things-editorial-hero .destination-strap{max-width:760px}.things-editorial-hero>p:last-child{max-width:780px}

.find-next-choice{margin-top:28px;padding-top:24px;border-top:1px solid #dfe9fb}.find-next-choice h3{font-size:1.6rem;margin:8px 0 18px}.find-next-choice>a{display:flex;justify-content:space-between;gap:18px;padding:16px 0;font-weight:900;color:var(--navy);border-top:1px solid #e7edf8}.find-next-choice>a.find-do-next{color:#1457ff}.find-next-choice small{display:block;margin:-8px 0 14px;color:#667085;line-height:1.45}


/* v115 find-flow cleanup */
.find-next .btn,
.find-confirm .btn {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin-top: 14px;
  text-align: left;
}
.find-next .microcopy {
  margin: 7px 2px 18px;
  opacity: .72;
}

/* v117 photo -> story flow */
.find-preview .btn {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin-top: 12px;
}
.find-preview img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 14px;
}


/* v118 — Choose what's next: force readable action labels */
.find-next-action,
.find-next-action:link,
.find-next-action:visited {
  display: flex !important;
  align-items: center !important;
  min-height: 56px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 15px 18px !important;
  border-radius: 14px !important;
  text-decoration: none !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  opacity: 1 !important;
}

.find-next-action--primary,
.find-next-action--primary:link,
.find-next-action--primary:visited {
  background: #102a56 !important;
  color: #ffffff !important;
}

.find-next-action--secondary,
.find-next-action--secondary:link,
.find-next-action--secondary:visited {
  background: #102a56 !important;
  color: #ffffff !important;
}

.find-next-action:hover,
.find-next-action:focus,
.find-next-action:active {
  color: #ffffff !important;
  opacity: 1 !important;
  filter: none !important;
}

@media (max-width: 700px) {
  .find-next-action {
    font-size: 16px !important;
  }
}


/* v123: featured crossing + route quick answer */
.crossing-now{padding:18px 18px 2px}
.crossing-now-card{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:24px 26px;border:1px solid rgba(7,26,89,.14);border-radius:20px;background:#fff;text-decoration:none;color:var(--navy);box-shadow:0 8px 24px rgba(7,26,89,.05)}
.crossing-now-card:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(7,26,89,.08)}
.crossing-now-copy .eyebrow{margin:0 0 8px;color:#f20d18}
.crossing-now-copy h2{margin:0;font-size:clamp(28px,4vw,44px);line-height:1;letter-spacing:-.035em}
.crossing-now-copy h2 span{color:#1457ff}
.crossing-now-copy>p:last-child{margin:10px 0 0;color:rgba(7,26,89,.72);font-size:15px;line-height:1.45}
.crossing-now-link{flex:0 0 auto;font-weight:800;color:#1457ff;white-space:nowrap}
.route-quick-answer{margin:28px 0 18px;padding:28px;border-radius:22px;background:#f4f7ff;border:1px solid rgba(20,87,255,.14)}
.route-quick-answer-head .eyebrow{margin:0 0 8px;color:#f20d18}
.route-quick-answer-head h2{margin:0 0 20px;color:#071a59;font-size:clamp(26px,4vw,38px);letter-spacing:-.03em}
.route-quick-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:rgba(7,26,89,.10);border:1px solid rgba(7,26,89,.10);border-radius:14px;overflow:hidden}
.route-quick-facts>div{background:#fff;padding:16px}
.route-quick-facts span{display:block;margin-bottom:6px;color:rgba(7,26,89,.62);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.route-quick-facts strong{display:block;color:#071a59;font-size:15px;line-height:1.3}
.route-quick-cta{display:inline-flex;margin-top:18px;padding:13px 18px;border-radius:999px;background:#f20d18;color:#fff;text-decoration:none;font-weight:800}
@media(max-width:760px){.crossing-now{padding:14px 14px 0}.crossing-now-card{align-items:flex-start;flex-direction:column;padding:20px;gap:14px}.crossing-now-copy h2{font-size:30px}.crossing-now-copy>p:last-child{font-size:14px}.route-quick-answer{margin:22px 14px 16px;padding:20px}.route-quick-facts{grid-template-columns:1fr 1fr}.route-quick-facts>div:last-child{grid-column:1/-1}.route-quick-cta{width:100%;justify-content:center}}


/* vNext unified Detour + homepage destination cards */
.local-way-panel .local-card.local-card-blue{background:linear-gradient(150deg,#0a2b79,#071a59);border-color:#173f96;color:#fff;box-shadow:0 15px 34px rgba(7,26,89,.14)}
.local-way-panel .local-card.local-card-blue .local-title{color:#fff}
.local-way-panel .local-card.local-card-blue p{color:#d6e1fb}
.local-way-panel .local-card.local-card-blue .local-icon{background:#fff1f2;border-color:rgba(255,255,255,.18)}
.local-way-panel .local-card.local-card-blue .local-icon svg{stroke:var(--red)}
.route-detour-entry{margin:0 0 34px;background:linear-gradient(145deg,#071a59,#0d3eb3);border-color:#173e9d;box-shadow:0 18px 44px rgba(7,26,89,.18)}
.route-detour-entry .eyebrow{color:#9db8ff}
.route-detour-entry h2{color:#fff}
.route-detour-entry .detour-entry-grid p{color:#dce6ff}
.route-detour-entry .detour-cta{background:#fff;color:var(--navy)}
.find-confirm{margin:0 0 24px;padding:30px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 14px 38px rgba(13,35,91,.055)}
.find-confirm h2{margin:28px 0 14px;color:var(--navy);font-size:clamp(2rem,5vw,3.25rem);line-height:.98;letter-spacing:-.05em}
.find-confirm>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:1.04rem;line-height:1.65}
.find-found-button{width:auto;min-width:280px;max-width:100%;margin-top:20px;border:0;border-radius:15px;background:var(--red);color:#fff;font:inherit;font-weight:950;padding:18px;cursor:pointer}
.find-share-gate{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.find-share-trigger{width:100%;border:0;border-radius:15px;background:var(--blue);color:#fff;font:inherit;font-weight:950;padding:17px 18px;cursor:pointer}
.find-share[hidden]{display:none!important}
.find-share input[type=file]{position:absolute;opacity:0;pointer-events:none}
.share-photo-button{display:flex;align-items:center;justify-content:center;width:100%;margin:18px 0 12px;padding:15px 18px;border:1px dashed #a8bce5;border-radius:14px;color:var(--navy);font-weight:900;cursor:pointer;background:#f7faff}
.share-photo-preview{display:block;width:100%;max-height:420px;object-fit:cover;border-radius:16px;margin:12px 0}
.find-share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.find-share-actions button{width:100%;border:0;border-radius:14px;background:var(--navy);color:#fff;font:inherit;font-weight:850;padding:15px 16px;cursor:pointer}
.find-share-actions button:first-child{background:var(--red)}
.find-reveal>a{opacity:1}
@media(max-width:760px){.find-confirm{padding:23px;border-radius:22px}.find-share-actions{grid-template-columns:1fr}.route-detour-entry{margin-bottom:28px}}

/* v4 Detour reveal: visual confirmation after Found It + clean optional selfie share */
.find-reveal-visual{margin:18px 0 24px;border-radius:20px;overflow:hidden;background:#edf4ff;box-shadow:0 10px 28px rgba(13,35,91,.08)}
.find-reveal-visual img{display:block;width:100%;height:auto;aspect-ratio:60/38;object-fit:cover}
.share-photo-preview[hidden]{display:none!important}
.find-reveal small{margin-top:18px}
@media(max-width:760px){.find-reveal-visual{margin:14px 0 20px;border-radius:17px}}

/* v6 Find-page overflow guards */
.find-page h1,.find-page h2,.find-page h3,.find-caption,.find-caption span{overflow-wrap:anywhere;word-break:normal;max-width:100%;}
.find-reveal-visual img{max-width:100%;}
@media(max-width:760px){.find-reveal h2{font-size:clamp(1.9rem,9vw,2.7rem);line-height:1.02;}}

.find-next-copy{max-width:620px;margin:-6px 0 14px;color:var(--muted);line-height:1.6}
@media(max-width:760px){.find-found-button{width:auto;min-width:220px;max-width:100%}}

/* v14 editorial polish: Detour signature + flexible activity headlines */
.detour-title-dot{color:var(--red);display:inline;margin-left:.04em}
.experience-card h3{font-size:clamp(1.45rem,2.35vw,2rem);line-height:1.02;letter-spacing:-.035em;overflow-wrap:anywhere}
.experience-card p{line-height:1.55}
@media(max-width:760px){.experience-card h3{font-size:clamp(1.45rem,7vw,1.95rem)}}

/* v15 · compact Find unlock CTA everywhere */
.find-confirm .find-found-button{
  display:inline-flex;
  width:auto;
  min-width:0;
  max-width:100%;
  align-items:center;
  justify-content:center;
  margin-top:14px;
  padding:14px 22px;
  text-align:center;
  border-radius:14px;
}
@media(max-width:760px){
  .find-confirm .find-found-button{
    width:auto;
    min-width:0;
    max-width:100%;
    padding:14px 20px;
  }
}

/* SEO v16: reverse-route internal link */
.reverse-route-strip{margin:20px 0 10px}.reverse-route-link{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border:1px solid rgba(7,26,89,.14);border-radius:999px;background:#fff;color:#1457ff;font-weight:800;text-decoration:none}.reverse-route-link:hover{text-decoration:underline}@media(max-width:700px){.reverse-route-link{font-size:.95rem;max-width:100%;white-space:normal}}

/* v49 — Hvar + Dubrovnik text-only experience selector */

.experience-picker{display:grid;gap:10px;margin-top:24px;max-width:860px}
.experience-option{margin:0;border:1px solid rgba(7,26,89,.16);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(7,26,89,.045);overflow:hidden}
.experience-option summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;min-height:78px;-webkit-tap-highlight-color:transparent}
.experience-option summary::-webkit-details-marker{display:none}
.experience-option-head{display:grid;gap:5px;min-width:0}
.experience-option-kicker{font-size:11px;font-weight:850;letter-spacing:.12em;color:#1457ff}
.experience-option-title{font-size:clamp(18px,2.2vw,23px);line-height:1.08;color:#071a59}
.experience-option-arrow{flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(7,26,89,.15);border-radius:50%;display:grid;place-items:center;font-size:24px;line-height:1;color:#071a59;transition:transform .18s ease,background .18s ease,color .18s ease}
.experience-option[open]{border-color:rgba(20,87,255,.35);box-shadow:0 12px 30px rgba(20,87,255,.08)}
.experience-option[open] .experience-option-arrow{transform:rotate(45deg);background:#071a59;color:#fff;border-color:#071a59}
.experience-option-body{padding:0 22px 22px;border-top:1px solid rgba(7,26,89,.08)}
.experience-option-body p{margin:18px 0 17px;max-width:640px;color:#39415d;line-height:1.58}
.experience-option-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:12px;background:#071a59;color:#fff!important;text-decoration:none;font-weight:800}
.experience-option-cta:hover{background:#1457ff}
@media(max-width:640px){.experience-picker{gap:8px;margin-top:18px}.experience-option{border-radius:15px}.experience-option summary{padding:17px 16px;min-height:72px}.experience-option-body{padding:0 16px 17px}.experience-option-title{font-size:19px}.experience-option-arrow{width:32px;height:32px;flex-basis:32px}.experience-option-cta{width:100%}}

/* v50: Split → Hvar SEO benchmark */
.seo-benchmark-page .route-story-hero>p:last-child{max-width:790px}
.seo-jump-links{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 62px}
.seo-jump-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1px solid #d9e4f6;border-radius:999px;background:#fff;color:var(--navy);font-size:.82rem;font-weight:900}
.seo-jump-links a:hover{border-color:#9ab8f2;color:var(--blue)}
.seo-inline-link{display:inline-flex;margin-top:18px;color:var(--blue);font-weight:900;line-height:1.4}
.seo-inline-link.strong{margin-top:24px;font-size:1.02rem}
.seo-guide-section{margin:0 0 76px}
.seo-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 20px}
.seo-stat-grid article{padding:25px;border:1px solid #dce6f7;border-radius:22px;background:#fff;box-shadow:0 12px 32px rgba(13,35,91,.05)}
.seo-stat-grid span{display:block;margin-bottom:18px;color:var(--blue);font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.seo-stat-grid strong{display:block;color:var(--navy);font-size:2rem;line-height:1;letter-spacing:-.04em}
.seo-stat-grid p{margin:13px 0 0;color:var(--muted);line-height:1.55}
.seo-operator-table-wrap{overflow-x:auto;margin:18px 0;border:1px solid #dce6f7;border-radius:22px;background:#fff}
.seo-operator-table{width:100%;min-width:760px;border-collapse:collapse;color:var(--navy)}
.seo-operator-table th,.seo-operator-table td{padding:17px 18px;border-bottom:1px solid #e6edf8;text-align:left;vertical-align:top}
.seo-operator-table th{background:#f3f7ff;color:#56709f;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.seo-operator-table td{font-size:.94rem;line-height:1.45}
.seo-operator-table tbody tr:last-child td{border-bottom:0}
.seo-operator-table td:first-child{font-weight:900}
.seo-freshness-note{max-width:820px;margin:15px 0 0;color:var(--muted);font-size:.9rem;line-height:1.6}
.seo-daytrip{padding:38px 0 0}
.seo-answer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.seo-answer-grid article{padding:25px;border:1px solid #dce6f7;border-radius:22px;background:linear-gradient(145deg,#f7faff,#fff)}
.seo-answer-grid article>strong{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;font-size:1rem}
.seo-answer-grid h3{margin:28px 0 9px;color:var(--navy);font-size:1.45rem;letter-spacing:-.035em}
.seo-answer-grid p{margin:0;color:var(--muted);line-height:1.6}
@media(max-width:760px){
  .seo-jump-links{margin:0 0 46px;gap:7px}
  .seo-jump-links a{min-height:39px;padding:0 13px;font-size:.76rem}
  .seo-guide-section{margin-bottom:54px}
  .seo-stat-grid,.seo-answer-grid{grid-template-columns:1fr}
  .seo-stat-grid article,.seo-answer-grid article{padding:22px}
  .seo-operator-table th,.seo-operator-table td{padding:14px}
  .seo-daytrip{padding-top:20px}
}

/* Split → Brač SEO decision benchmark */
.brac-decision-shell{padding:28px;border:1px solid #dbe6f7;border-radius:28px;background:linear-gradient(145deg,#f8fbff,#eef4ff);box-shadow:0 18px 48px rgba(13,35,91,.07)}
.brac-decision-question{display:flex;align-items:flex-start;gap:14px}.brac-decision-question.compact-question{align-items:center}.brac-step{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;font-weight:900}.brac-question-label{margin:1px 0 4px;color:var(--navy);font-size:1.05rem;font-weight:900}.brac-question-help{margin:0;color:var(--muted);font-size:.9rem}.brac-place-options{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:20px 0 26px}.brac-place-options button{min-height:86px;padding:14px 12px;border:1px solid #d5e1f4;border-radius:17px;background:#fff;color:var(--navy);text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.brac-place-options button:hover{transform:translateY(-2px);border-color:#94b3ee}.brac-place-options button.is-active{border-color:var(--blue);box-shadow:0 0 0 2px rgba(20,87,255,.12);background:#f5f8ff}.brac-place-options strong{display:block;font-size:1rem}.brac-place-options span{display:block;margin-top:5px;color:var(--muted);font-size:.77rem;line-height:1.25}.brac-vehicle-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0;border-top:1px solid #d9e4f5}.brac-vehicle-toggle{display:flex;gap:6px;padding:4px;border-radius:14px;background:#dfe8f7}.brac-vehicle-toggle button{min-width:68px;height:40px;border:0;border-radius:11px;background:transparent;color:var(--navy);font-weight:900;cursor:pointer}.brac-vehicle-toggle button.is-active{background:#fff;box-shadow:0 4px 12px rgba(13,35,91,.1);color:var(--blue)}.brac-decision-result{margin-top:6px;padding:25px;border-radius:22px;background:var(--navy);color:#fff}.brac-decision-result .eyebrow{color:#91b2ff}.brac-decision-result h3{margin:8px 0 10px;color:#fff;font-size:clamp(1.8rem,3.8vw,2.8rem);line-height:1;letter-spacing:-.045em}.brac-decision-result>p:not(.eyebrow){max-width:760px;margin:8px 0;color:#d2def8;line-height:1.55}.brac-result-note{padding-top:14px;border-top:1px solid rgba(255,255,255,.17)}.brac-result-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.brac-result-actions a{display:inline-flex;align-items:center;min-height:44px;padding:0 15px;border-radius:12px;background:#fff;color:var(--navy);font-weight:900}.brac-result-actions .brac-result-book{background:var(--red);color:#fff}.brac-port-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.brac-port-card{padding:27px;border:1px solid #dce6f7;border-radius:25px;background:#f8fbff}.brac-port-primary{background:linear-gradient(150deg,#071a59,#1249cf);color:#fff;border-color:transparent;box-shadow:0 20px 48px rgba(7,26,89,.16)}.brac-port-card h3{margin:36px 0 11px;color:var(--navy);font-size:2.7rem;line-height:.95;letter-spacing:-.05em}.brac-port-primary h3{color:#fff}.brac-port-card .choice-lead{min-height:70px}.brac-port-primary .choice-lead{color:#ccd9f7}.brac-port-card ul{margin:23px 0;padding:0;list-style:none}.brac-port-card li{position:relative;margin:11px 0;padding-left:23px;color:var(--navy);font-weight:760;line-height:1.35}.brac-port-card li:before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%;background:var(--red)}.brac-port-primary li{color:#fff}.brac-port-primary .choice-number{color:#8db0ff}.brac-port-primary .choice-tag{border-color:rgba(255,255,255,.3);color:#fff}.brac-card-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid #d7e3f4}.brac-port-primary .brac-card-links{border-color:rgba(255,255,255,.2)}.brac-card-links a{font-weight:900;color:var(--blue)}.brac-port-primary .brac-card-links a{color:#fff}.brac-card-links a+a{color:var(--red)}.brac-port-primary .brac-card-links a+a{color:#ff8a8f}
@media (max-width:900px){.brac-place-options{grid-template-columns:repeat(2,1fr)}.brac-place-options button:last-child{grid-column:1/-1}.brac-port-grid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.brac-decision-shell{padding:20px 16px;border-radius:23px}.brac-place-options{grid-template-columns:1fr 1fr}.brac-place-options button{min-height:80px}.brac-vehicle-row{align-items:flex-start;flex-direction:column}.brac-port-grid{grid-template-columns:1fr}.brac-port-card{padding:23px}.brac-port-card h3{font-size:2.55rem}.brac-port-card .choice-lead{min-height:0}.brac-result-actions{display:grid}.brac-result-actions a{justify-content:center;text-align:center}}

/* FerryCroatia decision-block layout fix v59 */
.route-truth.route-decision{display:block;align-items:initial;gap:0;padding:26px 28px}
.route-truth.route-decision>.eyebrow{margin:0 0 8px}
.route-truth.route-decision>h2{max-width:820px;margin:0;color:var(--navy);font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.08;letter-spacing:-.035em}
.route-truth.route-decision>p:not(.eyebrow){max-width:840px;margin:10px 0 0;color:var(--muted);font-size:.98rem;line-height:1.6}
.route-truth.route-decision>.route-fact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.route-truth.route-decision>.route-fact-cards article{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:20px;border:1px solid #dbe6f8;border-radius:18px;background:#fff}
.route-truth.route-decision>.route-fact-cards h3{margin:0;color:var(--navy);font-size:1.05rem;line-height:1.3}
.route-truth.route-decision>.route-fact-cards p{margin:8px 0 0;max-width:none;color:var(--muted);font-size:.92rem;line-height:1.55}
.route-truth.route-decision>.route-fact-cards .primary-route-cta{display:inline-flex;margin-top:16px;color:var(--blue);font-size:.88rem;font-weight:900;line-height:1.3}
.route-truth.route-decision>.route-truth-actions{margin-top:18px}
.route-truth.route-decision>.route-truth-actions a{display:inline-flex;color:var(--blue);font-size:.9rem;font-weight:900}
@media (max-width:760px){
  .route-truth.route-decision{padding:20px}
  .route-truth.route-decision>.route-fact-cards{grid-template-columns:1fr}
}

/* v60 complete Decision SEO layer */
.route-truth.route-decision>.route-fact-cards.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.route-truth.route-decision .decision-note{display:inline-flex;margin-top:14px;padding:7px 10px;border-radius:999px;background:#edf4ff;color:var(--blue);font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.route-truth.route-decision .primary-route-cta.internal{color:var(--navy)}
@media(max-width:760px){.route-truth.route-decision>.route-fact-cards.three-up{grid-template-columns:1fr}}

/* v61: decision-content polish — user-facing language, typography and CTA consistency */
.route-truth.route-decision,.route-truth.route-decision *{font-family:inherit}
.route-truth.route-decision>.route-fact-cards .primary-route-cta{font-family:inherit;font-size:.92rem;font-weight:800;letter-spacing:0;white-space:normal}
.route-truth.route-decision>.route-fact-cards h3{font-weight:800}
.route-truth.route-decision>.route-fact-cards p{font-weight:400}

/* Luka homepage v12 · lighthouse identity + old-way fallback card */
.home-luka{margin:4px 0 30px;padding:23px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,#fff 0%,#fbfdff 68%,#f4f8ff 100%);box-shadow:var(--shadow)}
.home-luka-top{display:grid;grid-template-columns:auto minmax(220px,1fr);gap:24px;align-items:end;margin-bottom:18px}
.luka-identity{display:flex;align-items:center;gap:13px;min-width:max-content}
.luka-house{width:54px;height:54px;display:grid;place-items:center;flex:0 0 54px}
.luka-house svg{width:54px;height:54px;display:block;filter:drop-shadow(0 5px 10px rgba(7,26,89,.10))}
.luka-kicker{font-size:.68rem;letter-spacing:.12em;font-weight:900;color:var(--blue)}
.luka-identity h2{margin:2px 0 0;color:var(--navy);font-size:2rem;line-height:.95;letter-spacing:-.045em}
.luka-identity h2 span{color:var(--blue)}
.home-luka-lede{margin:0;color:var(--muted);font-size:.94rem;line-height:1.5;max-width:500px;justify-self:end}
.home-luka-card{background:#fff;border:1px solid #dfe6f2;border-radius:19px;padding:14px}
.home-luka-label{display:block;margin:0 2px 9px;color:var(--blue);font-size:.74rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.home-luka-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch}
.home-luka-input{min-height:70px;width:100%;resize:none;border:1px solid #dfe6f2;border-radius:14px;background:#fff;color:var(--ink);padding:14px 15px;font:inherit;font-size:1rem;line-height:1.4;outline:none}
.home-luka-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,87,255,.09)}
.home-luka-button{min-width:132px;border:0;border-radius:14px;background:var(--red);color:#fff;font-size:.98rem;font-weight:900;padding:0 18px}
.home-luka-button[disabled]{opacity:.58;cursor:wait}
.home-luka-hint{margin:9px 2px 0;color:var(--muted);font-size:.76rem}
.luka-thinking{display:none;align-items:center;gap:12px;margin:15px 2px 0;color:var(--navy);font-size:.86rem;font-weight:800;min-height:46px}
.luka-thinking.on{display:flex}
.luka-thinking-house{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;animation:lukaHouseBreathe 2.2s ease-in-out infinite}
.luka-thinking-house svg{width:44px;height:44px;display:block}
.luka-thinking-house .luka-window{animation:lukaWindowGlow 1.8s ease-in-out infinite}
.luka-thinking-house .luka-lamp{animation:lukaLampGlow 1.2s ease-in-out infinite}
.luka-thinking-house .luka-beam{transform-origin:32px 23.5px;animation:lukaBeamSweep 2.1s ease-in-out infinite}
.luka-thinking-house .luka-house-wave{stroke-dasharray:9 5;animation:lukaWaveMove 1.8s linear infinite}
@keyframes lukaHouseBreathe{0%,100%{transform:translateY(1px)}50%{transform:translateY(-2px)}}
@keyframes lukaWindowGlow{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes lukaLampGlow{0%,100%{opacity:.7}50%{opacity:1;filter:drop-shadow(0 0 3px rgba(242,13,24,.5))}}
@keyframes lukaBeamSweep{0%,100%{transform:rotate(-15deg);opacity:.10}50%{transform:rotate(13deg);opacity:.28}}
@keyframes lukaWaveMove{to{stroke-dashoffset:-28}}
@keyframes lukaReveal{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.home-luka-followup{display:none;margin-top:15px;border:1px solid #dce7ff;border-radius:18px;background:#f7faff;padding:15px 16px}
.home-luka-followup.show{display:block}
.home-luka-followup-kicker{color:var(--blue);font-size:.68rem;letter-spacing:.1em;font-weight:900}
.home-luka-followup-question{margin:5px 0 12px;color:var(--navy);font-size:1.02rem;font-weight:850}
.home-luka-followup-controls{display:flex;gap:9px;align-items:stretch;flex-wrap:wrap}
.home-luka-followup-input{min-height:50px;min-width:220px;flex:1;border:1px solid #cddaf3;border-radius:13px;background:#fff;color:var(--ink);padding:0 13px;outline:none}
.home-luka-followup-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,87,255,.09)}
.home-luka-followup-button,.home-luka-choice{min-height:50px;border:0;border-radius:13px;background:var(--blue);color:#fff;font-weight:850;padding:0 16px}
.home-luka-choice.secondary-choice{background:#fff;color:var(--navy);border:1px solid #cddaf3}
.home-luka-result{display:none;margin-top:16px}
.home-luka-result.show{display:block;animation:lukaReveal .55s cubic-bezier(.2,.8,.2,1) both}
.home-luka-result-head{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:9px}
.home-luka-result-head h3{margin:0;color:var(--navy);font-size:1.55rem;letter-spacing:-.035em}
.home-luka-start-over{border:0;background:transparent;color:var(--blue);font-weight:850;padding:3px 0}
.home-luka-reply{margin:0 0 12px;color:var(--muted);font-size:.94rem}
.home-luka-trip-list{display:grid;gap:9px}
.home-luka-leg{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;border:1px solid var(--line);border-radius:15px;background:#fff;padding:12px 13px}
.home-luka-leg-num{width:38px;height:38px;border-radius:12px;background:#edf3ff;color:var(--blue);display:grid;place-items:center;font-weight:900}
.home-luka-leg-main strong{display:block;color:var(--navy);font-size:.94rem}.home-luka-leg-main small{display:block;margin-top:3px;color:var(--muted);font-size:.76rem}
.home-luka-leg-cta{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:11px;background:var(--navy);color:#fff;padding:0 12px;font-size:.77rem;font-weight:850;text-align:center;max-width:200px}
.home-luka-leg-note{color:var(--muted);font-size:.74rem;font-weight:750;text-align:right;max-width:145px}
.home-luka-error{border:1px solid #ffd8db;background:#fff8f8;border-radius:15px;padding:14px;color:#7b1620}
.home-luka-error strong{display:block;color:var(--red);margin-bottom:3px}
.home-luka-error button{margin-top:10px;border:0;background:var(--navy);color:#fff;border-radius:10px;padding:9px 12px;font-weight:850}
.classic-search-link{display:flex;justify-content:center;margin:16px 0 -2px}
.classic-search-link button{min-width:220px;border:1px solid #dfe6f2;background:#fff;border-radius:15px;color:var(--navy);padding:11px 16px;text-align:left;box-shadow:0 6px 18px rgba(7,26,89,.05);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.classic-search-link button:hover{transform:translateY(-1px);border-color:#c9d7f2;box-shadow:0 9px 22px rgba(7,26,89,.08)}
.classic-search-link .classic-search-kicker{display:block;color:var(--blue);font-size:.61rem;letter-spacing:.12em;font-weight:900;margin-bottom:3px}
.classic-search-link button strong{display:block;color:var(--navy);font-size:.84rem;font-weight:900}
.classic-search-wrap{margin-top:-4px}.classic-search-wrap[hidden]{display:none!important}
.classic-search-wrap .booking-card{margin-top:0}
@media(max-width:760px){
  .home-luka{padding:15px;margin-top:0;border-radius:21px}
  .home-luka-top{display:block;margin-bottom:13px}.luka-identity{min-width:0}.luka-house{width:46px;height:46px;flex-basis:46px}.luka-house svg{width:46px;height:46px}.luka-identity h2{font-size:1.7rem}.home-luka-lede{margin-top:10px;font-size:.86rem}
  .home-luka-card{padding:11px}.home-luka-row{grid-template-columns:1fr}.home-luka-input{min-height:82px}.home-luka-button{height:54px;width:100%}
  .luka-thinking{gap:10px}.luka-thinking-house{width:42px;height:42px;flex-basis:42px}.luka-thinking-house svg{width:40px;height:40px}
  .home-luka-followup-controls{display:grid;grid-template-columns:1fr}.home-luka-followup-input{min-width:0;width:100%}.home-luka-followup-button,.home-luka-choice{width:100%}
  .home-luka-leg{grid-template-columns:34px 1fr}.home-luka-leg-num{width:34px;height:34px}.home-luka-leg-cta,.home-luka-leg-note{grid-column:2;width:100%;max-width:none;justify-self:stretch;text-align:center}
}


/* FerryCroatia v15 — Luka product polish */
.home-luka{position:relative;overflow:hidden;margin:8px 0 34px;padding:26px 27px 24px;border-color:#dce5f3;background:linear-gradient(150deg,#fff 0%,#fff 60%,#f4f8ff 100%);box-shadow:0 22px 60px rgba(7,26,89,.08)}
.home-luka:after{content:"";position:absolute;right:-90px;bottom:-130px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(20,87,255,.08),rgba(20,87,255,0) 70%);pointer-events:none}
.home-luka-top,.home-luka-card,.home-luka-followup,.home-luka-result,.classic-search-link{position:relative;z-index:1}
.home-luka-top{align-items:center;margin-bottom:20px}.luka-identity{align-items:center}.luka-house{width:54px;height:54px;flex-basis:54px}.luka-house svg{width:54px;height:54px}.luka-identity h2{font-size:2rem}.home-luka-lede{font-size:.96rem;max-width:470px}
.home-luka-card{padding:15px 16px 16px;border-radius:21px;box-shadow:0 10px 30px rgba(7,26,89,.035)}
.home-luka-label{margin-bottom:10px}.home-luka-input-wrap{position:relative;min-width:0}.home-luka-input{padding-right:48px;border-radius:15px;font-size:1.03rem}.home-luka-clear{display:none;position:absolute;right:10px;top:10px;width:34px;height:34px;border:1px solid #dbe4f2;border-radius:50%;background:#fff;color:#65728e;font-size:1.4rem;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(7,26,89,.06)}.home-luka-clear.show{display:grid;place-items:center}.home-luka-clear:hover{color:var(--navy);border-color:#bccbea}
.home-luka-button{min-width:138px;box-shadow:0 10px 22px rgba(242,13,24,.13);cursor:pointer}.home-luka-button:hover{transform:translateY(-1px)}
.home-luka-hint{margin-top:10px}.home-luka-prompts{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.luka-prompt{border:1px solid #dbe5f5;border-radius:999px;background:#f8fbff;color:var(--navy);padding:8px 11px;font-size:.74rem;font-weight:800;cursor:pointer;transition:.16s ease}.luka-prompt:hover{border-color:#a9c0ee;background:#fff;color:var(--blue);transform:translateY(-1px)}
.home-luka-followup{box-shadow:0 12px 28px rgba(7,26,89,.04)}.home-luka-result{padding-top:2px}.home-luka-leg{padding:14px 15px;box-shadow:0 7px 22px rgba(7,26,89,.035)}.home-luka-leg-cta{background:#092569}.home-luka-start-over{cursor:pointer}
.classic-search-link{margin:17px 0 0}.classic-search-link button{min-width:0;padding:9px 13px;border-radius:12px;box-shadow:none;text-align:center}.classic-search-link .classic-search-kicker{display:none}.classic-search-link button strong{font-size:.78rem;color:#64718c}.classic-search-link button:hover strong{color:var(--blue)}.classic-search-anchor{scroll-margin-top:18px}
/* Fix vehicle-route practical bands that use .practical-item divs instead of article elements. */
.practical-band>.practical-item{padding:28px;background:var(--navy);color:#fff}.practical-band>.practical-item .eyebrow{color:#89adff}.practical-band>.practical-item h3{margin:24px 0 10px;color:#fff;font-size:1.55rem;line-height:1.05}.practical-band>.practical-item h3 a{color:#fff}.practical-band>.practical-item p:last-child{margin:0;color:#c7d5f5;line-height:1.6}
@media(max-width:760px){.home-luka{padding:16px 14px 17px;margin-top:0}.home-luka-top{margin-bottom:14px}.luka-house{width:48px;height:48px;flex-basis:48px}.luka-house svg{width:48px;height:48px}.home-luka-card{padding:12px}.home-luka-input{min-height:88px}.home-luka-prompts{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.home-luka-prompts::-webkit-scrollbar{display:none}.luka-prompt{flex:0 0 auto}.classic-search-link{margin-top:14px}.practical-band>.practical-item{padding:25px}.practical-band>.practical-item h3{margin-top:17px}}


/* v20 — compact route signal + vehicle quick-answer mobile repair */
.route-signal{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;margin:-28px 0 24px;padding:9px 13px;border:1px solid #dbe6f8;border-radius:999px;background:#fff;color:#5f6b82;box-shadow:0 8px 22px rgba(7,26,89,.045);font-size:.78rem;line-height:1.3}
.route-signal-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 4px rgba(242,13,24,.08)}
.route-signal strong{color:var(--navy);font-size:.76rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.route-signal span:last-child{color:#65728e}
/* Old vehicle-route markup used .route-facts-grid; keep a safe fallback if cached HTML is served. */
.route-facts-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:rgba(7,26,89,.10);border:1px solid rgba(7,26,89,.10);border-radius:14px;overflow:hidden}
.route-facts-grid>div{min-width:0;background:#fff;padding:16px}
.route-facts-grid span{display:block;margin-bottom:6px;color:rgba(7,26,89,.62);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.route-facts-grid strong{display:block;color:#071a59;font-size:15px;line-height:1.3}
.route-quick-answer>.eyebrow{margin:0 0 8px;color:#f20d18}
.route-quick-answer>h2{margin:0 0 20px;color:#071a59;font-size:clamp(26px,4vw,38px);letter-spacing:-.03em}
.route-quick-answer>.primary-route-cta{display:inline-flex;margin-top:18px;padding:13px 18px;border-radius:999px;background:#f20d18;color:#fff;text-decoration:none;font-weight:800}
@media(max-width:760px){
  .route-signal{width:100%;margin:-24px 0 18px;padding:10px 12px;border-radius:16px;align-items:flex-start;flex-wrap:wrap;gap:6px 8px}
  .route-signal strong{white-space:normal}
  .route-signal span:last-child{flex-basis:100%;padding-left:16px;font-size:.75rem}
  .route-facts-grid{grid-template-columns:1fr 1fr}
  .route-facts-grid>div:last-child{grid-column:1/-1}
  .route-quick-answer>.primary-route-cta{width:100%;justify-content:center}
}


/* v21 — clearer route handoff, calmer CTAs, stronger Ask Luka product block */
.route-final-cta .official-booking-cta{
  display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  width:min(100%,430px);min-height:76px;margin:0 auto;padding:16px 24px;border-radius:17px;
  background:var(--red);color:#fff;text-decoration:none;box-shadow:0 14px 30px rgba(242,13,24,.20);
  transition:transform .18s ease,box-shadow .18s ease;
}
.route-final-cta .official-booking-cta:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(242,13,24,.26)}
.route-final-cta .official-booking-cta .official-route{font-size:.72rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;opacity:.82}
.route-final-cta .official-booking-cta .official-action{font-size:1.05rem;font-weight:900;letter-spacing:-.01em}

.reverse-route-strip{
  display:flex;align-items:center;gap:14px;margin:18px 0 28px;padding:13px 16px;
  border:1px solid #dbe5f5;border-radius:16px;background:#f8fbff;
}
.reverse-route-kicker{flex:0 0 auto;color:#6c7891;font-size:.65rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.reverse-route-link{display:inline-flex!important;align-items:center!important;gap:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--navy)!important;font-weight:900!important;text-decoration:none!important}
.reverse-route-link:hover{color:var(--blue)!important;text-decoration:none!important}
@media(max-width:700px){.reverse-route-strip{align-items:flex-start;flex-direction:column;gap:5px;padding:13px 15px}.reverse-route-link{font-size:.96rem!important}}

.home-luka{
  padding:0!important;border:1px solid #cfdbef!important;border-radius:28px!important;
  background:#f5f8ff!important;box-shadow:0 24px 64px rgba(7,26,89,.11)!important;
}
.home-luka:after{display:none!important}
.home-luka-top{
  position:relative!important;z-index:1!important;display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr)!important;
  gap:28px!important;align-items:center!important;margin:0!important;padding:27px 30px 25px!important;
  background:linear-gradient(135deg,#071a59 0%,#0c2f8f 56%,#1457ff 130%)!important;
}
.luka-identity{gap:15px!important}.luka-house{
  width:62px!important;height:62px!important;flex-basis:62px!important;padding:6px;border-radius:18px;
  background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.16)
}
.luka-house svg{width:50px!important;height:50px!important}
.luka-kicker{color:#9bb9ff!important;font-size:.67rem!important;letter-spacing:.12em!important}
.luka-identity h2{margin-top:5px!important;color:#fff!important;font-size:2.35rem!important;letter-spacing:-.055em!important}
.luka-identity h2 span{color:#8fb4ff!important}
.home-luka-lede{justify-self:end!important;max-width:430px!important;color:#dbe5ff!important;font-size:.96rem!important;line-height:1.55!important}
.home-luka-card{
  position:relative!important;z-index:2!important;margin:18px 18px 0!important;padding:18px!important;border:1px solid #dbe5f5!important;
  border-radius:20px!important;background:#fff!important;box-shadow:0 11px 30px rgba(7,26,89,.055)!important
}
.home-luka-label{font-size:.7rem!important;letter-spacing:.12em!important}
.home-luka-input{min-height:76px!important;border-color:#cedaf0!important;background:#fbfdff!important;font-size:1.04rem!important}
.home-luka-button{min-width:145px!important;border-radius:15px!important;box-shadow:0 12px 26px rgba(242,13,24,.18)!important}
.home-luka-button:hover{box-shadow:0 16px 30px rgba(242,13,24,.24)!important}
.home-luka-hint{color:#707c95!important}.luka-prompt{background:#f5f8ff!important;border-color:#d8e3f5!important}
.luka-thinking{
  position:relative;z-index:2;margin:13px 18px 0!important;padding:10px 13px;border:1px solid #d8e5fa;border-radius:15px;
  background:#edf4ff;color:var(--navy)!important
}
.home-luka-followup,.home-luka-result{margin-left:18px!important;margin-right:18px!important}
.classic-search-link{position:relative!important;z-index:2!important;margin:14px 18px 18px!important;justify-content:flex-end!important}
.classic-search-link button{background:transparent!important;border-color:#d5e0f2!important}
@media(max-width:760px){
  .home-luka{border-radius:23px!important}
  .home-luka-top{display:block!important;padding:22px 18px 20px!important}
  .home-luka-lede{margin-top:14px!important;max-width:none!important}
  .luka-house{width:56px!important;height:56px!important;flex-basis:56px!important}.luka-house svg{width:44px!important;height:44px!important}
  .luka-identity h2{font-size:2rem!important}
  .home-luka-card{margin:12px 12px 0!important;padding:13px!important}
  .home-luka-button{height:54px!important}
  .luka-thinking{margin:10px 12px 0!important}.home-luka-followup,.home-luka-result{margin-left:12px!important;margin-right:12px!important}
  .classic-search-link{margin:12px 12px 14px!important;justify-content:center!important}
}
\n\n/* v22 — Luka: tighter product card, editorial prompt, no clipped mobile examples */\n.home-luka{\n  border-radius:24px!important;\n  box-shadow:0 18px 48px rgba(7,26,89,.09)!important;\n}\n.home-luka-top{\n  display:flex!important;grid-template-columns:none!important;align-items:center!important;\n  gap:0!important;padding:22px 26px 20px!important;\n}\n.luka-identity{gap:13px!important}\n.luka-house{\n  width:54px!important;height:54px!important;flex-basis:54px!important;padding:5px!important;border-radius:16px!important;\n}\n.luka-house svg{width:44px!important;height:44px!important}\n.luka-kicker{font-size:.64rem!important;letter-spacing:.14em!important}\n.luka-identity h2{margin-top:3px!important;font-size:2.05rem!important;line-height:1!important}\n.home-luka-lede{display:none!important}\n.home-luka-card{\n  margin:12px 14px 0!important;padding:15px 15px 14px!important;border-radius:18px!important;\n  box-shadow:0 8px 24px rgba(7,26,89,.045)!important;\n}\n.home-luka-label{margin-bottom:8px!important;font-size:.69rem!important;letter-spacing:.13em!important}\n.home-luka-input{min-height:68px!important;padding-top:15px!important;padding-bottom:15px!important;font-size:1rem!important}\n.home-luka-button{height:50px!important;min-width:136px!important;border-radius:14px!important;box-shadow:0 9px 22px rgba(242,13,24,.15)!important}\n.home-luka-hint{display:none!important}\n.home-luka-prompts{\n  display:flex!important;flex-wrap:wrap!important;overflow:visible!important;gap:8px!important;margin-top:11px!important;padding:0!important;\n}\n.luka-prompt{\n  flex:0 1 auto!important;max-width:100%!important;padding:8px 11px!important;font-size:.73rem!important;white-space:normal!important;line-height:1.2!important;text-align:center!important;\n}\n.classic-search-link{margin-top:10px!important}\n@media(max-width:760px){\n  .home-luka{border-radius:21px!important}\n  .home-luka-top{padding:17px 16px 16px!important}\n  .luka-identity{gap:11px!important}\n  .luka-house{width:48px!important;height:48px!important;flex-basis:48px!important;border-radius:14px!important}\n  .luka-house svg{width:38px!important;height:38px!important}\n  .luka-kicker{font-size:.61rem!important}\n  .luka-identity h2{font-size:1.72rem!important;letter-spacing:-.045em!important}\n  .home-luka-card{margin:10px 10px 0!important;padding:12px!important;border-radius:16px!important}\n  .home-luka-label{margin-bottom:7px!important}\n  .home-luka-row{gap:9px!important}\n  .home-luka-input{min-height:74px!important;font-size:.98rem!important;border-radius:14px!important}\n  .home-luka-button{height:48px!important;border-radius:13px!important}\n  .home-luka-prompts{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:10px!important}\n  .luka-prompt{width:100%!important;min-width:0!important;padding:8px 9px!important}\n  .luka-prompt:last-child{grid-column:1/-1!important}\n  .classic-search-link{margin:10px 10px 12px!important}\n}\n@media(max-width:390px){\n  .luka-identity h2{font-size:1.62rem!important}\n  .home-luka-prompts{grid-template-columns:1fr!important}\n  .luka-prompt:last-child{grid-column:auto!important}\n}\n
/* Stari Grad vehicle-ferry layout lock: four practical facts must stay balanced. */
.practical-band.practical-band-four{grid-template-columns:repeat(2,minmax(0,1fr))}
.practical-band.practical-band-four>.practical-item{min-height:190px}
@media(max-width:760px){
  .practical-band.practical-band-four{grid-template-columns:1fr}
  .practical-band.practical-band-four>.practical-item{min-height:0}
}

/* v25 — Ask Luka result is one connected journey, not an admin list */
.home-luka-result{padding-top:7px!important}
.home-luka-result-head{display:block!important;margin:0 0 16px!important}
.home-luka-route-kicker{display:block;color:var(--blue);font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:5px}
.home-luka-result-head h3{margin:0!important;color:var(--navy)!important;font-size:clamp(1.45rem,3vw,2rem)!important;line-height:1.08!important;letter-spacing:-.045em!important}
.home-luka-reply{display:none!important}
.home-luka-trip-list{display:grid!important;gap:0!important}
.home-luka-leg{position:relative!important;grid-template-columns:42px minmax(0,1fr) auto!important;gap:13px!important;align-items:center!important;margin:0 0 14px!important;padding:14px 15px!important;border:1px solid #dfe7f3!important;border-radius:17px!important;background:#fff!important;box-shadow:0 7px 22px rgba(7,26,89,.035)!important}
.home-luka-leg:last-child{margin-bottom:0!important}
.home-luka-leg:not(:last-child)::after{content:"";position:absolute;left:35px;top:calc(100% + 1px);width:2px;height:13px;border-radius:4px;background:linear-gradient(180deg,#1457ff 0%,#9bb8f4 100%)}
.home-luka-leg-num{width:38px!important;height:38px!important;border-radius:50%!important;background:#edf3ff!important;color:var(--blue)!important;border:1px solid #d8e5ff!important;font-weight:900!important}
.home-luka-leg-main strong{font-size:.98rem!important;line-height:1.25!important}
.home-luka-leg-main small{margin-top:4px!important;color:#7a859d!important;font-size:.75rem!important;font-weight:700!important}
.home-luka-leg-cta{min-height:42px!important;border-radius:12px!important;background:var(--navy)!important;padding:0 14px!important;font-size:.78rem!important;font-weight:850!important;white-space:nowrap!important;box-shadow:none!important}
.home-luka-leg-cta:hover{background:#0b2d8f!important}
.home-luka-result-foot{display:flex;justify-content:center;padding:14px 0 2px}
.home-luka-start-over{border:1px solid #dbe4f2!important;border-radius:999px!important;background:#fff!important;color:#67738c!important;font-size:.78rem!important;font-weight:850!important;padding:9px 13px!important;cursor:pointer!important}
.home-luka-start-over:hover{color:var(--blue)!important;border-color:#b8c9eb!important}
@media(max-width:760px){
  .home-luka-result-head{margin-bottom:13px!important}
  .home-luka-result-head h3{font-size:1.48rem!important}
  .home-luka-leg{grid-template-columns:36px minmax(0,1fr)!important;gap:11px!important;padding:13px!important;margin-bottom:13px!important}
  .home-luka-leg-num{width:34px!important;height:34px!important}
  .home-luka-leg:not(:last-child)::after{left:29px;height:12px!important}
  .home-luka-leg-cta{grid-column:2!important;width:auto!important;max-width:max-content!important;justify-self:start!important;min-height:39px!important;margin-top:2px!important;padding:0 12px!important}
  .home-luka-result-foot{justify-content:flex-start;padding-left:47px!important}
}


/* v26 — Explore decision engine */
.explore-clock{margin:0 0 64px}
.explore-clock-grid,.explore-time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.explore-clock-card,.explore-time-card{position:relative;min-height:220px;padding:27px;border:1px solid #dbe5f6;border-radius:24px;background:linear-gradient(155deg,#fff,#f6f9ff);box-shadow:0 14px 36px rgba(7,26,89,.055)}
.explore-clock-card:before,.explore-time-card:before{content:"";position:absolute;left:27px;top:0;width:46px;height:4px;border-radius:0 0 4px 4px;background:#1457ff}
.explore-clock-card:nth-child(3):before,.explore-time-card:nth-child(3):before{background:#ef2b2d}
.explore-clock-card h3,.explore-time-card h3{margin:33px 0 12px;color:#071a59;font-size:1.75rem;line-height:1.03;letter-spacing:-.04em}
.explore-clock-card>p:last-child,.explore-time-card>p:last-child{margin:0;color:#5f6b82;line-height:1.58}
.explore-time-decisions{margin:0 0 44px}
.explore-time-intro{max-width:780px}
.editorial-pick{margin:0 0 64px;padding:34px 36px;border:1px solid #dce6f7;border-radius:28px;background:#fff;box-shadow:0 18px 46px rgba(7,26,89,.06)}
.editorial-pick h2{max-width:760px;margin:25px 0 13px;color:#071a59;font-size:clamp(2.4rem,5vw,4.2rem);line-height:.96;letter-spacing:-.055em}
.editorial-pick>p:not(.eyebrow){max-width:710px;margin:0;color:#5f6b82;font-size:1.07rem;line-height:1.65}
.editorial-pick-link{display:inline-flex;margin-top:24px;padding:13px 17px;border-radius:999px;background:#eef4ff;color:#0d3eb3;font-weight:900}
.editorial-pick-time{display:inline-flex;margin:17px 0 0;padding:7px 10px;border-radius:999px;background:#eef4ff;color:#1457ff;font-size:.68rem;font-weight:900;letter-spacing:.09em}
.editorial-pick-time + h2{margin-top:16px}

.destination-stay-block{margin:0 0 64px;padding:30px 32px;border:1px solid #dce6f7;border-radius:26px;background:linear-gradient(145deg,#f7faff,#fff)}
.destination-stay-block h2{margin:26px 0 12px;color:#071a59;font-size:2.3rem;line-height:1;letter-spacing:-.045em}
.destination-stay-block>p:not(.eyebrow){max-width:720px;margin:0;color:#5f6b82;line-height:1.65}
.destination-stay-block .destination-stay-link{margin-top:21px}
.booking-stay-pilot{position:relative;overflow:hidden;background:linear-gradient(135deg,#071a59 0%,#0a2f7d 62%,#0d68ba 100%);border:0;color:#fff}
.booking-stay-pilot:after{content:"";position:absolute;right:-95px;top:-120px;width:330px;height:330px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 46px rgba(255,255,255,.035),0 0 0 92px rgba(255,255,255,.025);pointer-events:none}
.booking-stay-copy,.booking-stay-form,.booking-stay-disclosure,.booking-stay-return{position:relative;z-index:1}
.booking-stay-return{margin:18px 0 0;padding:18px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px)}
.booking-stay-return[hidden]{display:none}
.booking-stay-return-eyebrow{display:block;margin-bottom:6px;color:#79c6ff;font-size:.72rem;font-weight:900;letter-spacing:.12em}
.booking-stay-return strong{display:block;color:#fff;font-size:1.15rem}
.booking-stay-return p{margin:6px 0 0!important;color:#dce9ff!important;line-height:1.5}
.booking-stay-return-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.booking-stay-return-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 15px;border-radius:999px;font-weight:850;text-decoration:none}
.booking-stay-open-again{background:#fff;color:#071a59}
.booking-stay-continue{border:1px solid rgba(255,255,255,.36);color:#fff}
.booking-stay-pilot .eyebrow{color:#79c6ff}
.booking-stay-pilot h2{color:#fff;max-width:620px;margin-top:12px}
.booking-stay-pilot>div>p:not(.eyebrow){color:#dce9ff;max-width:720px}
.booking-stay-pilot .booking-stay-note{margin-top:12px;color:#afc7ec;font-size:.94rem}
.booking-stay-form{display:grid;grid-template-columns:1.35fr 1fr 1fr .75fr;gap:10px;align-items:end;margin-top:25px}
.booking-stay-form label{display:grid;gap:7px;color:#c6d8f5;font-size:.82rem;font-weight:800}
.booking-stay-form label span{text-transform:uppercase;letter-spacing:.075em}
.booking-stay-destination strong,.booking-stay-form input,.booking-stay-form select{min-height:52px;box-sizing:border-box;border:1px solid rgba(255,255,255,.24);border-radius:13px;background:#fff;color:#071a59;padding:0 14px;font:inherit;font-size:1rem;font-weight:750}
.booking-stay-destination strong{display:flex;align-items:center}
.booking-stay-form button{grid-column:1/-1;min-height:54px;margin-top:4px;border:0;border-radius:13px;background:#ef4e53;color:#fff;font:inherit;font-weight:900;font-size:1rem;cursor:pointer;box-shadow:0 10px 26px rgba(0,0,0,.16)}
.booking-stay-form button:hover{background:#ff5b60}
.booking-stay-form button:focus-visible,.booking-stay-form input:focus-visible,.booking-stay-form select:focus-visible{outline:3px solid #79c6ff;outline-offset:2px}
.booking-stay-disclosure{margin:15px 0 0!important;color:#afc7ec!important;font-size:.78rem;line-height:1.45!important}
.booking-stay-pixel{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.detour-entry .detour-cta{justify-content:center;min-width:150px}
.things-hub-grid .destination-route-link b{margin-top:auto;color:#1457ff}
@media(max-width:760px){
  .explore-clock{margin-bottom:46px}
  .explore-clock-grid,.explore-time-grid{grid-template-columns:1fr;gap:11px}
  .explore-clock-card,.explore-time-card{min-height:0;padding:23px}
  .explore-clock-card:before,.explore-time-card:before{left:23px}
  .explore-clock-card h3,.explore-time-card h3{margin-top:27px;font-size:1.55rem}
  .explore-time-decisions{margin-bottom:34px}
  .editorial-pick{margin-bottom:46px;padding:25px 23px;border-radius:23px}
  .editorial-pick h2{margin-top:21px;font-size:2.5rem}
  .destination-stay-block{margin-bottom:46px;padding:24px 23px;border-radius:23px}
  .destination-stay-block h2{font-size:1.9rem}
  .booking-stay-form{grid-template-columns:1fr 1fr}
  .booking-stay-destination{grid-column:1/-1}
  .booking-stay-form label:last-of-type{grid-column:1/-1}
}
@media(max-width:560px){.booking-stay-form{grid-template-columns:1fr}.booking-stay-destination,.booking-stay-form label:last-of-type,.booking-stay-form button{grid-column:auto}.booking-stay-pilot:after{right:-190px}.booking-stay-form input,.booking-stay-form select,.booking-stay-destination strong{width:100%}}

/* v184 · Stay is a first-class planning route */
.stay-page{padding-bottom:64px}.stay-page .site-header{margin-bottom:18px}.stay-hero{max-width:790px;padding:42px 0 32px}.stay-hero h1{margin:12px 0 18px;color:var(--navy);font-size:clamp(3.4rem,8vw,6.7rem);line-height:.88;letter-spacing:-.065em}.stay-hero h1 span{color:#1683ed}.stay-hero>p:last-child{max-width:650px;color:#5d6981;font-size:1.12rem}.stay-search-card{margin-bottom:54px}.stay-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0 64px}.stay-city-grid a{padding:18px;border:1px solid #dfe7f3;border-radius:16px;background:#fff;color:var(--navy);font-weight:800}.stay-city-grid a span{display:block;margin-top:4px;color:#72809b;font-size:.82rem;font-weight:650}.stay-page-intro h2{margin:0;font-size:clamp(2rem,5vw,3.7rem);line-height:.98;letter-spacing:-.045em}
@media(max-width:720px){.fc-header-stay{min-height:38px;padding:0 14px}.fc-header-actions{gap:3px}.stay-city-grid{grid-template-columns:1fr}.stay-hero{padding-top:26px}.stay-hero h1{font-size:clamp(3rem,16vw,5.2rem)}}

/* Luka v27 · connecting-route options */
.home-luka-result-head p{margin:8px 0 0;color:#6f7a91;font-size:.88rem;line-height:1.5;max-width:680px}
.home-luka-route-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.home-luka-route-option{border:1px solid #dce5f3;border-radius:19px;background:#fff;padding:15px;box-shadow:0 9px 26px rgba(7,26,89,.045)}
.home-luka-option-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #edf1f7}
.home-luka-option-head span{display:block;color:var(--blue);font-size:.64rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;margin-bottom:4px}
.home-luka-option-head h4{margin:0;color:var(--navy);font-size:1.12rem;line-height:1.15;letter-spacing:-.03em}
.home-luka-option-head b{flex:0 0 auto;border-radius:999px;background:#fff3f1;color:#b52b23;padding:7px 9px;font-size:.66rem;line-height:1;font-weight:900;white-space:nowrap}
.home-luka-option-legs{display:grid;gap:0;padding-top:12px}
.home-luka-option-leg{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;padding:7px 0 12px}
.home-luka-option-leg:not(:last-child)::after{content:"";position:absolute;left:16px;top:39px;width:2px;height:calc(100% - 25px);background:linear-gradient(180deg,#1457ff,#a9bdf0);border-radius:3px}
.home-luka-option-leg-num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#edf3ff;border:1px solid #d8e5ff;color:var(--blue);font-size:.75rem;font-weight:900}
.home-luka-option-leg-main strong{display:block;color:var(--navy);font-size:.9rem;line-height:1.25}.home-luka-option-leg-main small{display:block;color:#7a859d;font-size:.71rem;font-weight:700;margin-top:3px}
.home-luka-option-leg .home-luka-leg-cta{grid-column:2;justify-self:start;margin-top:1px;min-height:36px!important;padding:0 11px!important;font-size:.72rem!important}
.home-luka-connection-note{margin-top:13px;border-left:3px solid var(--blue);background:#f5f8ff;border-radius:0 12px 12px 0;padding:11px 13px;color:#68748c;font-size:.78rem;line-height:1.45}.home-luka-connection-note strong{color:var(--navy)}
.home-luka-route-option-featured{border-color:#b9ccff;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);box-shadow:0 14px 32px rgba(20,87,255,.09)}
.home-luka-option-via{display:block;margin-top:5px!important;color:#6f7f9d!important;font-size:.66rem!important;letter-spacing:.04em!important;text-transform:none!important;font-weight:800!important}
.home-luka-connection-wait{margin:2px 0 7px 44px;border-left:2px solid #bad0ff;padding:7px 10px;background:#f4f8ff;border-radius:0 10px 10px 0}
.home-luka-connection-wait strong{display:block;color:var(--navy);font-size:.78rem}.home-luka-connection-wait span{display:block;color:#6f7f9d;font-size:.7rem;margin-top:2px}
@media(max-width:760px){.home-luka-route-options{grid-template-columns:1fr}.home-luka-option-head{display:block}.home-luka-option-head b{display:inline-block;margin-top:9px}.home-luka-result-head p{font-size:.82rem}}


/* v29 · Split → Hvar vehicle decision */
.route-vehicle-decision{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:22px;align-items:stretch;margin:18px 0 40px;padding:0;border:1px solid #dbe6f8;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 14px 38px rgba(7,26,89,.06)}
.route-vehicle-copy{padding:28px 30px}
.route-vehicle-copy>.eyebrow{margin:0 0 8px;color:var(--blue)}
.route-vehicle-copy h2{margin:0;color:var(--navy);font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.05;letter-spacing:-.035em}
.route-vehicle-copy p:not(.eyebrow){max-width:690px;margin:12px 0 0;color:var(--muted);font-size:.98rem;line-height:1.6}
.route-vehicle-choice{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:28px 30px;background:linear-gradient(135deg,#071a59 0%,#123f9f 100%);text-decoration:none}
.route-vehicle-choice span{color:#9fc1ff;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.route-vehicle-choice strong{display:block;margin-top:7px;color:#fff;font-size:1.25rem;line-height:1.2}
.route-vehicle-choice small{display:block;margin-top:8px;color:#d5e3ff;font-size:.84rem;font-weight:650;line-height:1.4}
.route-vehicle-choice:hover strong{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){
  .route-vehicle-decision{grid-template-columns:1fr;margin:14px 0 30px;border-radius:20px}
  .route-vehicle-copy{padding:22px 20px 20px}
  .route-vehicle-choice{padding:22px 20px}
  .route-vehicle-copy h2{font-size:1.7rem}
}


/* v35 — Ask Luka flagship treatment: confident, editorial, product-first */
.home-luka{
  overflow:hidden!important;
  padding:0!important;
  border:1px solid #d7dfec!important;
  border-radius:29px!important;
  background:#fff!important;
  box-shadow:0 24px 58px rgba(7,26,89,.105)!important;
}
.home-luka-top{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:0!important;
  align-items:stretch!important;
  margin:0!important;
  padding:0!important;
  background:#f1eee7!important;
  border-bottom:1px solid #dce3ef!important;
}
.luka-command{
  position:relative;
  min-width:0;
  padding:35px 38px 34px;
  background:linear-gradient(130deg,#071a59 0%,#0b369a 58%,#1670de 118%);
  overflow:hidden;
}
.luka-command:before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,#ef2b2d 0 17%,#2a8cff 17% 100%);
}
.luka-command:after{
  content:"";position:absolute;width:260px;height:260px;right:-110px;bottom:-180px;border-radius:50%;
  border:1px solid rgba(255,255,255,.10);box-shadow:0 0 0 28px rgba(255,255,255,.035),0 0 0 58px rgba(255,255,255,.02);
  pointer-events:none;
}
.luka-command .luka-kicker{
  position:relative;z-index:1;color:#a9c4ff!important;font-size:.7rem!important;letter-spacing:.15em!important;font-weight:900!important;
}
.luka-command h2{
  position:relative;z-index:1;margin:17px 0 0!important;color:#fff!important;
  font-size:clamp(3.25rem,6vw,5.55rem)!important;line-height:.88!important;letter-spacing:-.07em!important;font-weight:920!important;
}
.luka-command h2 span{color:#9fc0ff!important}
.luka-command-copy{
  position:relative;z-index:1;max-width:620px;margin:21px 0 0;color:#eef4ff;font-size:1.08rem;line-height:1.5;font-weight:680;
}
.luka-command-tags{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.luka-command-tags span{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#dce8ff;background:rgba(255,255,255,.055);font-size:.64rem;font-weight:900;letter-spacing:.105em}
.luka-signal{
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:25px 22px 28px;background:linear-gradient(155deg,#f4f1eb,#ede9e1);color:var(--navy);
}
.luka-signal-kicker{align-self:flex-start;padding:7px 10px;border-radius:999px;background:#10265f;color:#fff;font-size:.61rem;font-weight:900;letter-spacing:.11em}
.luka-signal-icon{width:116px;height:116px;margin:24px auto 18px;border:1px solid #d4cec2;border-radius:23px;background:#e7e0d4;display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.luka-signal-icon svg{width:72px;height:72px;filter:drop-shadow(0 5px 7px rgba(7,26,89,.10))}
.luka-signal strong{font-size:.88rem;line-height:1.35;letter-spacing:-.01em}
.home-luka-card{
  margin:0!important;padding:22px 25px 19px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;
}
.home-luka-label{margin-bottom:9px!important;color:var(--blue)!important;font-size:.72rem!important;letter-spacing:.145em!important}
.home-luka-row{gap:12px!important}
.home-luka-input{min-height:78px!important;border:1px solid #cfd9ea!important;border-radius:16px!important;background:#fbfcff!important;font-size:1.08rem!important;padding:16px 50px 16px 17px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important}
.home-luka-input:focus{background:#fff!important;border-color:#2d6cff!important;box-shadow:0 0 0 4px rgba(20,87,255,.08)!important}
.home-luka-button{min-width:162px!important;border-radius:16px!important;background:#f20d18!important;font-size:1rem!important;font-weight:900!important;box-shadow:0 14px 28px rgba(242,13,24,.19)!important;transition:transform .16s ease,box-shadow .16s ease!important}
.home-luka-button:hover{transform:translateY(-2px)!important;box-shadow:0 18px 32px rgba(242,13,24,.24)!important}
.home-luka-prompts{margin-top:13px!important;gap:8px!important}
.luka-prompt{background:#f7f9fd!important;border-color:#dce4f1!important;color:#172a5c!important;font-weight:850!important}
.classic-search-link{margin:8px 20px 17px!important}
.home-luka-followup,.home-luka-result{margin-left:25px!important;margin-right:25px!important}
.luka-thinking{margin-left:25px!important;margin-right:25px!important}
@media(max-width:820px){
  .home-luka-top{grid-template-columns:minmax(0,1fr) 240px!important}
  .luka-command{padding:30px 30px 29px}
  .luka-command h2{font-size:clamp(3rem,8vw,4.5rem)!important}
  .luka-signal-icon{width:98px;height:98px}.luka-signal-icon svg{width:62px;height:62px}
}
@media(max-width:760px){
  .home-luka{border-radius:24px!important}
  .home-luka-top{grid-template-columns:1fr!important}
  .luka-command{padding:26px 22px 25px}
  .luka-command h2{margin-top:14px!important;font-size:clamp(3.15rem,15vw,4.25rem)!important;line-height:.89!important}
  .luka-command-copy{margin-top:17px;font-size:.98rem}
  .luka-command-tags{margin-top:18px}
  .luka-signal{display:grid;grid-template-columns:auto 68px minmax(0,1fr);gap:14px;align-items:center;text-align:left;padding:16px 18px}
  .luka-signal-kicker{align-self:center;justify-self:start;font-size:.57rem;padding:6px 8px}
  .luka-signal-icon{width:62px;height:62px;margin:0;border-radius:16px}.luka-signal-icon svg{width:43px;height:43px}
  .luka-signal strong{font-size:.76rem;line-height:1.32}
  .home-luka-card{padding:17px 16px 15px!important}
  .home-luka-row{grid-template-columns:1fr!important;gap:10px!important}
  .home-luka-input{min-height:78px!important;font-size:1rem!important}
  .home-luka-button{width:100%!important;height:52px!important;min-width:0!important}
  .home-luka-prompts{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  .luka-prompt:last-child{grid-column:1/-1!important}
  .home-luka-followup,.home-luka-result,.luka-thinking{margin-left:16px!important;margin-right:16px!important}
  .classic-search-link{margin:8px 16px 15px!important}
}
@media(max-width:430px){
  .luka-signal{grid-template-columns:1fr 58px;gap:10px 12px}.luka-signal-kicker{grid-column:1/-1}.luka-signal strong{font-size:.75rem}.luka-signal-icon{width:56px;height:56px}
  .home-luka-prompts{grid-template-columns:1fr!important}.luka-prompt:last-child{grid-column:auto!important}
}

/* v37: Croatia Ferry Map linkable reference */
.ferry-map-page{max-width:1120px}.map-page-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:end;padding:52px 0 30px}.map-page-hero h1{margin:0;color:var(--navy);font-size:clamp(4rem,8vw,7rem);line-height:.85;letter-spacing:-.065em}.map-page-hero h1 span{color:var(--blue)}.map-page-hero-copy{padding-bottom:12px}.map-page-hero-copy strong{display:block;color:var(--navy);font-size:1.45rem;line-height:1.15;letter-spacing:-.025em}.map-page-hero-copy p{max-width:520px;color:var(--muted);font-size:1.05rem;line-height:1.62}.map-inline-link{display:inline-block;color:var(--blue);font-weight:900;border-bottom:2px solid #c9d7ff;padding-bottom:3px}.map-visual-card{border:1px solid #dfe8f7;border-radius:30px;background:linear-gradient(150deg,#edf4ff 0%,#fff 38%);padding:28px;box-shadow:0 18px 45px rgba(7,26,89,.08)}.map-card-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.map-card-head h2{margin:0;color:var(--navy);font-size:clamp(2.3rem,5vw,4.2rem);line-height:.94;letter-spacing:-.055em}.map-card-actions{display:flex;gap:9px}.map-card-actions a{padding:10px 14px;border:1px solid #d7e0ef;border-radius:999px;background:#fff;color:var(--navy);font-size:.82rem;font-weight:850}.map-visual-card>img{display:block;width:100%;height:auto;border-radius:22px;border:1px solid #e3eaf5;background:#fff}.map-note{margin:18px 4px 2px;color:var(--muted);font-size:.91rem}.map-note strong{color:var(--navy)}.map-choice-section{padding:70px 0 26px}.map-choice-section>h2,.map-hubs-section h2,.map-embed-card h2,.map-faq>h2{margin:0;color:var(--navy);font-size:clamp(2.5rem,5vw,4.35rem);line-height:.94;letter-spacing:-.055em}.map-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.map-choice-grid article{border:1px solid var(--line);border-radius:22px;padding:22px;background:#fff;box-shadow:0 12px 28px rgba(7,26,89,.05)}.map-choice-grid article>span{color:var(--blue);font-size:.71rem;letter-spacing:.1em;font-weight:900}.map-choice-grid h3{margin:10px 0 8px;color:var(--navy);font-size:1.65rem;line-height:1.02;letter-spacing:-.035em}.map-choice-grid p{color:var(--muted);font-size:.92rem;line-height:1.5}.map-route-links{display:grid;gap:7px;margin-top:18px}.map-route-links a{padding:9px 11px;border-radius:11px;background:#f5f8ff;color:var(--navy);font-weight:820;font-size:.86rem}.map-route-links a:hover{background:#eaf1ff;color:var(--blue)}.map-hubs-section{padding:54px 0 26px}.map-hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.map-hub-grid a{min-height:180px;border-radius:22px;padding:22px;background:linear-gradient(145deg,#071a59,#1249cf);color:#fff;box-shadow:0 14px 32px rgba(7,26,89,.13)}.map-hub-grid small{display:block;color:#9db9ff;font-weight:900;letter-spacing:.1em}.map-hub-grid strong{display:block;margin:30px 0 8px;font-size:1.25rem;line-height:1.15}.map-hub-grid span{color:#cdd8f6;font-size:.9rem}.map-embed-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;margin:62px 0 46px;padding:30px;border-radius:28px;background:linear-gradient(145deg,#071a59,#0f43bb);color:#fff}.map-embed-card .eyebrow{color:#9db9ff}.map-embed-card h2{color:#fff}.map-embed-card p{color:#ced9f7;line-height:1.6}.embed-box{align-self:center;background:#fff;border-radius:20px;padding:18px;color:var(--navy)}.embed-box label{display:block;margin-bottom:8px;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.embed-box textarea{display:block;width:100%;height:108px;resize:none;border:1px solid #dfe6f2;border-radius:12px;padding:12px;color:#405075;background:#f8fbff;font:500 .76rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.embed-box button{margin-top:10px;border:0;border-radius:11px;background:var(--red);color:#fff;font-weight:900;padding:11px 15px}.copy-status{margin-left:10px;color:var(--blue);font-size:.85rem;font-weight:800}.map-faq{margin:58px 0 20px}.map-faq details a{color:var(--blue);font-weight:800}.routes-map-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:4px 0 22px;padding:17px 20px;border:1px solid #dfe8f7;border-radius:18px;background:linear-gradient(135deg,#edf4ff,#fff)}.routes-map-callout div{display:flex;align-items:center;gap:12px}.routes-map-callout b{color:var(--navy);font-size:.96rem}.routes-map-callout span{color:var(--muted);font-size:.87rem}.routes-map-callout a{white-space:nowrap;padding:10px 14px;border-radius:999px;background:var(--navy);color:#fff;font-size:.82rem;font-weight:900}
@media(max-width:760px){.map-page-hero{grid-template-columns:1fr;gap:22px;padding:30px 0 22px}.map-page-hero h1{font-size:4.15rem}.map-page-hero-copy{padding:0}.map-page-hero-copy strong{font-size:1.23rem}.map-visual-card{padding:15px;border-radius:24px}.map-card-head{display:block}.map-card-actions{margin-top:14px}.map-card-head h2{font-size:2.65rem}.map-choice-section{padding-top:48px}.map-choice-section>h2,.map-hubs-section h2,.map-embed-card h2,.map-faq>h2{font-size:2.75rem}.map-choice-grid{grid-template-columns:1fr}.map-hub-grid{grid-template-columns:1fr}.map-hub-grid a{min-height:160px}.map-embed-card{grid-template-columns:1fr;margin:48px 0 38px;padding:22px;border-radius:24px}.routes-map-callout{display:block;padding:16px}.routes-map-callout div{display:block}.routes-map-callout span{display:block;margin-top:3px}.routes-map-callout a{display:inline-block;margin-top:12px}}


/* v49: Worth the Detour found state */

.find-found-state{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 16px}
.find-found-badge,.find-story-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:.68rem;font-weight:950;letter-spacing:.105em}
.find-found-badge{background:#e9fbf2;color:#11633d;border:1px solid #bdebd2}
.find-story-badge{background:#edf4ff;color:#1457ff;border:1px solid #cfe0ff}
.find-share-trigger{margin-top:24px}
@media(max-width:700px){.find-found-state{gap:7px}.find-found-badge,.find-story-badge{font-size:.63rem}}

/* v183: long-form FerryCroatia Finds */
.find-article{margin:0 0 24px;padding:clamp(24px,4vw,38px);border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:0 14px 38px rgba(13,35,91,.055)}
.find-article header{max-width:760px}.find-article h2{margin:22px 0 14px;color:var(--navy);font-size:clamp(2.4rem,5vw,4rem);line-height:.95;letter-spacing:-.055em}.find-article-deck{color:#31486b;font-size:1.18rem;line-height:1.6;font-weight:700}.find-article-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:44px;margin-top:34px}.find-article-body h3{margin:34px 0 10px;color:var(--navy);font-size:1.55rem;line-height:1.15}.find-article-body h3:first-child{margin-top:0}.find-article-body p,.find-article-body li{color:#4d607d;font-size:1.03rem;line-height:1.78}.find-article-body ol{padding-left:22px}.find-article-body li+li{margin-top:8px}.find-facts{align-self:start;position:sticky;top:18px;padding:20px;border-radius:20px;background:#071a59;color:#fff}.find-facts .eyebrow{color:#8fc4ff}.find-facts dl{margin:15px 0 20px}.find-facts dl div{padding:12px 0;border-top:1px solid rgba(255,255,255,.16)}.find-facts dt{color:#9eb7df;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.find-facts dd{margin:5px 0 0;font-size:.9rem;line-height:1.45;font-weight:750}.find-facts a{display:flex;justify-content:space-between;padding:13px 14px;border-radius:12px;background:#fff;color:#071a59;font-weight:900}.find-continue{margin:46px 0 70px}.find-continue h2{max-width:720px;margin:18px 0 22px;color:var(--navy);font-size:clamp(2.2rem,5vw,3.8rem);line-height:.96;letter-spacing:-.055em}.find-continue>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.find-continue a{display:grid;gap:8px;min-height:150px;padding:22px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(13,35,91,.045)}.find-continue a span{color:#e34b56;font-size:.68rem;font-weight:950;letter-spacing:.11em}.find-continue a strong{color:var(--navy);font-size:1.2rem}.find-continue a b{align-self:end;color:var(--blue);font-size:.82rem}
.finds-hub{max-width:1080px}.finds-hub-hero{padding:70px 0 44px}.finds-hub-hero h1{max-width:920px;margin:16px 0;color:var(--navy);font-size:clamp(4rem,9vw,7.6rem);line-height:.84;letter-spacing:-.075em}.finds-hub-hero h1 span{color:var(--blue)}.finds-hub-hero h1 i{color:var(--red);font-style:normal}.finds-hub-hero>p:last-child{max-width:700px;color:#405574;font-size:1.2rem;line-height:1.6;font-weight:700}.finds-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:80px}.finds-hub-grid a{display:flex;flex-direction:column;min-height:290px;padding:24px;border:1px solid var(--line);border-radius:23px;background:#fff;box-shadow:0 12px 28px rgba(13,35,91,.05);transition:transform .18s ease,border-color .18s ease}.finds-hub-grid a:first-child{grid-column:span 2;background:linear-gradient(145deg,#071a59,#0d3eb3);color:#fff}.finds-hub-grid a:hover{transform:translateY(-3px);border-color:#9dbced}.finds-hub-grid span{color:#e34b56;font-size:.68rem;font-weight:950;letter-spacing:.11em}.finds-hub-grid h2{margin:18px 0 12px;color:var(--navy);font-size:1.65rem;line-height:1.05;letter-spacing:-.035em}.finds-hub-grid a:first-child h2{color:#fff;font-size:clamp(2rem,4vw,3.4rem)}.finds-hub-grid p{margin:0;color:#5c6d85;line-height:1.55}.finds-hub-grid a:first-child p{color:#dce8ff}.finds-hub-grid b{margin-top:auto;padding-top:22px;color:var(--blue);font-size:.82rem}.finds-hub-grid a:first-child b{color:#fff}
@media(max-width:760px){.find-article-grid{grid-template-columns:1fr;gap:26px}.find-facts{position:static}.find-article-body p,.find-article-body li{font-size:1rem;line-height:1.7}.find-continue>div{grid-template-columns:1fr}.find-continue a{min-height:126px}.finds-hub{padding:0 16px}.finds-hub-hero{padding:42px 0 28px}.finds-hub-hero h1{font-size:clamp(3.5rem,16vw,5.2rem)}.finds-hub-grid{grid-template-columns:1fr}.finds-hub-grid a:first-child{grid-column:auto}.finds-hub-grid a{min-height:220px}}


/* v50 — Luka live lighthouse: loader moves into Route Intelligence */
.luka-signal{position:relative!important;transition:background .28s ease,box-shadow .28s ease!important}
.luka-signal-icon{width:132px!important;height:132px!important;margin:20px auto 17px!important;overflow:hidden!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important}
.luka-signal-icon svg{width:88px!important;height:88px!important;overflow:visible!important}
.luka-signal strong{max-width:220px;min-height:2.7em;transition:color .2s ease,opacity .2s ease!important}
.luka-signal-beam{transform-origin:32px 23.5px;transform:rotate(-14deg);opacity:.06;fill:#ffd86a;filter:drop-shadow(0 0 2px rgba(255,216,106,.25))}
.luka-signal-sea{transform-origin:32px 59px;animation:lukaSignalSeaDrift 5.8s ease-in-out infinite}
.luka-signal-lamp{transform-origin:32px 23.5px}
.luka-signal-window{opacity:.9}
.luka-signal.is-thinking{background:linear-gradient(155deg,#f1eee6,#dde6f6)!important;box-shadow:inset 0 0 0 1px rgba(20,87,255,.045)}
.luka-signal.is-thinking .luka-signal-icon{background:linear-gradient(160deg,#d8dfec 0%,#bfccdf 52%,#9db3d9 100%)!important;border-color:#aebedf!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28),0 12px 28px rgba(7,26,89,.10)!important;animation:lukaSignalIconBreathe 1.8s ease-in-out infinite}
.luka-signal.is-thinking .luka-signal-beam{fill:#fff2a8;filter:drop-shadow(0 0 2px rgba(255,170,0,.65)) drop-shadow(0 0 10px rgba(255,214,102,.82)) drop-shadow(0 0 22px rgba(255,235,170,.48));animation:lukaSignalBeamSweep 1.2s ease-in-out infinite}
.luka-signal.is-thinking .luka-signal-sea{animation:lukaSignalSeaSearch 1.15s ease-in-out infinite}
.luka-signal.is-thinking .luka-signal-lamp{animation:lukaSignalLamp 1s ease-in-out infinite}
.luka-signal.is-thinking .luka-signal-window{animation:lukaSignalWindow 1.45s ease-in-out infinite}
.luka-signal.is-thinking strong{color:#1457ff!important}
.luka-signal.is-found .luka-signal-icon{transform:translateY(-1px);border-color:#c8d4e9!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 9px 22px rgba(7,26,89,.07)!important}
.luka-signal.is-found .luka-signal-beam{opacity:.28;transform:rotate(5deg);fill:#ffe082;filter:drop-shadow(0 0 6px rgba(255,216,106,.34))}
.luka-signal.is-found strong{color:#0b369a!important}
.luka-signal.is-detail strong{color:#5b6881!important}
/* Keep the aria-live status available to assistive tech without opening a second loader below the form. */
.luka-thinking,.luka-thinking.on{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;display:block!important;min-height:0!important}
@keyframes lukaSignalBeamSweep{
  0%,100%{transform:rotate(-18deg);opacity:.36}
  45%{transform:rotate(8deg);opacity:.98}
  65%{transform:rotate(17deg);opacity:.72}
}
@keyframes lukaSignalSeaDrift{
  0%,100%{transform:translate(-1.5px,0)}
  50%{transform:translate(1.8px,-.65px)}
}
@keyframes lukaSignalSeaSearch{
  0%,100%{transform:translate(-2.4px,.3px)}
  50%{transform:translate(2.4px,-1px)}
}
@keyframes lukaSignalIconBreathe{0%,100%{transform:translateY(1px)}50%{transform:translateY(-2px)}}
@keyframes lukaSignalLamp{0%,100%{opacity:.72;filter:none}50%{opacity:1;filter:drop-shadow(0 0 4px rgba(242,13,24,.65))}}
@keyframes lukaSignalWindow{0%,100%{opacity:.65}50%{opacity:1}}
@media(max-width:820px) and (min-width:761px){
  .luka-signal-icon{width:112px!important;height:112px!important}
  .luka-signal-icon svg{width:76px!important;height:76px!important}
}
@media(max-width:760px){
  .luka-signal{grid-template-columns:82px minmax(0,1fr)!important;gap:11px 16px!important;padding:16px 18px 18px!important}
  .luka-signal-kicker{grid-column:1/-1!important;align-self:center!important;justify-self:start!important}
  .luka-signal-icon{width:78px!important;height:78px!important;margin:0!important;border-radius:18px!important}
  .luka-signal-icon svg{width:57px!important;height:57px!important}
  .luka-signal strong{max-width:none!important;min-width:0!important;font-size:.84rem!important;line-height:1.34!important}
}
@media(max-width:430px){
  .luka-signal{grid-template-columns:76px minmax(0,1fr)!important;gap:10px 14px!important;padding:16px 18px 18px!important}
  .luka-signal-kicker{grid-column:1/-1!important}
  .luka-signal-icon{width:72px!important;height:72px!important}
  .luka-signal-icon svg{width:53px!important;height:53px!important}
  .luka-signal strong{font-size:.83rem!important;line-height:1.34!important}
}
@media(prefers-reduced-motion:reduce){
  .luka-signal-sea,.luka-signal.is-thinking .luka-signal-icon,.luka-signal.is-thinking .luka-signal-beam,.luka-signal.is-thinking .luka-signal-sea,.luka-signal.is-thinking .luka-signal-lamp,.luka-signal.is-thinking .luka-signal-window{animation:none!important}
}


/* v53: desktop-only stronger lighthouse contrast */
@media(min-width:761px){
  .luka-signal.is-thinking{background:linear-gradient(155deg,#ebe6da,#cfdbf1)!important;box-shadow:inset 0 0 0 1px rgba(20,87,255,.06)}
  .luka-signal.is-thinking .luka-signal-icon{background:linear-gradient(160deg,#cbd4e3 0%,#9eb0ca 52%,#7f97bd 100%)!important;border-color:#96a9c8!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 14px 34px rgba(7,26,89,.14)!important}
  .luka-signal.is-thinking .luka-signal-beam{fill:#fff7bd!important;opacity:.55!important;filter:drop-shadow(0 0 4px rgba(255,179,0,.82)) drop-shadow(0 0 14px rgba(255,214,102,.95)) drop-shadow(0 0 34px rgba(255,244,180,.58))!important;animation:lukaSignalBeamSweepDesktop 1.2s ease-in-out infinite!important}
  .luka-signal.is-found .luka-signal-beam{opacity:.38!important;filter:drop-shadow(0 0 6px rgba(255,200,90,.48)) drop-shadow(0 0 18px rgba(255,235,160,.24))!important}
}
@keyframes lukaSignalBeamSweepDesktop{
  0%,100%{transform:rotate(-18deg) scaleX(1.15) scaleY(1.03);opacity:.34}
  45%{transform:rotate(8deg) scaleX(1.3) scaleY(1.08);opacity:1}
  65%{transform:rotate(17deg) scaleX(1.24) scaleY(1.05);opacity:.8}
}


/* v54 — official Jadrolinija gaps + Elafiti Local Way */
.route-operator-note{display:flex;flex-wrap:wrap;gap:5px 8px;align-items:center;margin:14px 0 0;padding:13px 15px;border:1px solid #dbe5f5;border-radius:13px;background:#f8fbff;color:#53617a;font-size:.86rem;line-height:1.45}
.route-operator-note strong{color:#071a59}.route-operator-note a{color:#1457ff;font-weight:850;text-decoration:none}.route-operator-note a:hover{text-decoration:underline}
.official-timetable-link{display:inline-flex;margin-top:13px;color:#fff;font-size:.8rem;font-weight:850;text-decoration:underline;text-underline-offset:3px;opacity:.88}
.local-walk-card{margin-top:18px;padding:25px;border:1px solid #dce6f7;border-radius:22px;background:linear-gradient(145deg,#f7faff,#eef4ff)}
.local-walk-card h2{margin:7px 0 10px;color:#071a59;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1;letter-spacing:-.04em}.local-walk-card>p:last-of-type{max-width:720px;margin:0;color:#5b6881;line-height:1.6}
.local-walk-link{display:inline-flex;margin-top:17px;padding:12px 16px;border-radius:999px;background:#071a59;color:#fff;font-weight:850;text-decoration:none}.local-walk-link:hover{transform:translateY(-1px)}
@media(max-width:760px){.route-operator-note{font-size:.8rem}.local-walk-card{padding:20px}}

/* v55 — domestic flight SEO cluster */
.flight-seo-page,.flight-hub-page{padding-bottom:0}
.flight-seo-hero,.flight-hub-hero{margin:20px 0 28px;padding:48px;border-radius:30px;background:linear-gradient(145deg,#071a59 0%,#0c3690 58%,#1457ff 100%);color:#fff;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);gap:32px;align-items:center;overflow:hidden}
.flight-seo-hero .eyebrow,.flight-hub-hero .eyebrow{color:#b9d0ff}.flight-seo-hero h1,.flight-hub-hero h1{font-size:clamp(3rem,7vw,6.6rem);line-height:.88;letter-spacing:-.065em;margin:.15em 0 .24em}.flight-seo-hero h1 span,.flight-hub-hero h1 span{color:#8fb5ff}.flight-seo-hero p,.flight-hub-hero p{max-width:690px;color:#e7eeff;font-size:1.05rem;line-height:1.55}
.flight-airport-board{justify-self:end;width:min(100%,330px);min-height:210px;border-radius:26px;background:#f3efe6;color:#071a59;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center;padding:28px;box-shadow:0 18px 45px rgba(0,0,0,.16)}
.flight-airport-board span{font-size:2.45rem;font-weight:950;letter-spacing:-.04em}.flight-airport-board b{font-size:1.6rem;color:#f20d18}.flight-airport-board small{grid-column:1/-1;margin-top:4px;font-size:.66rem;font-weight:900;letter-spacing:.13em;color:#5f6f95}
.flight-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;padding:34px 0;border-bottom:1px solid #dfe5ef}.flight-action h2,.flight-why h2,.flight-related h2,.flight-hub-intro h2,.flight-hub-explain h2{font-size:clamp(2rem,4vw,3.6rem);line-height:.98;letter-spacing:-.045em;margin:.15em 0}.flight-action p,.flight-why p,.flight-hub-intro p,.flight-hub-explain p{max-width:760px;color:#56627b;line-height:1.65}
.flight-primary-cta{white-space:nowrap}
.flight-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:28px 0}.flight-choice{border:1px solid #dce3ee;border-radius:24px;padding:26px;background:#fff;min-height:225px}.flight-choice>span{font-size:.63rem;font-weight:950;letter-spacing:.13em;color:#1457ff}.flight-choice h3{font-size:1.45rem;line-height:1.08;margin:12px 0}.flight-choice p{color:#606b80;line-height:1.55}.flight-choice a,.flight-why a{display:inline-block;margin-top:13px;font-weight:900;color:#1457ff;text-decoration:none}.flight-choice-sea{background:#eef4ff}.flight-choice-local{background:#f4f0e7}
.flight-why{margin:18px 0 40px;padding:34px;border-radius:26px;background:#f4f0e7}.flight-related{padding:8px 0 40px}.flight-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.flight-related-grid a{display:flex;justify-content:space-between;gap:12px;padding:17px 18px;border:1px solid #dde4ee;border-radius:16px;text-decoration:none;color:#071a59;font-weight:850;background:#fff}.flight-related-grid a span{color:#1457ff}
.flight-faq{padding:10px 0 52px}.flight-faq details{border-top:1px solid #dfe5ef;padding:18px 0}.flight-faq summary{font-weight:900;cursor:pointer}.flight-faq p{color:#606b80;line-height:1.55;max-width:780px}
.flight-hub-hero{grid-template-columns:1fr}.flight-hub-hero .cta{justify-self:start;margin-top:8px}.flight-hub-intro{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:end;padding:20px 0 28px}.flight-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-bottom:42px}.flight-hub-card{display:flex;flex-direction:column;min-height:215px;padding:24px;border:1px solid #dfe5ef;border-radius:22px;text-decoration:none;color:#071a59;background:#fff;transition:transform .2s ease,box-shadow .2s ease}.flight-hub-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(7,26,89,.08)}.flight-hub-card>span{font-size:.68rem;font-weight:950;letter-spacing:.12em;color:#1457ff}.flight-hub-card strong{font-size:1.55rem;line-height:1.05;margin:16px 0 8px}.flight-hub-card small{font-size:.62rem;font-weight:900;letter-spacing:.11em;color:#7b879f}.flight-hub-card b{margin-top:auto;color:#1457ff}.flight-hub-explain{padding:36px;border-radius:26px;background:#eef4ff;margin-bottom:48px}
@media(max-width:860px){.flight-seo-hero{grid-template-columns:1fr;padding:34px}.flight-airport-board{justify-self:start}.flight-choice-grid,.flight-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.flight-action,.flight-hub-intro{grid-template-columns:1fr}.flight-action{align-items:start}}
@media(max-width:600px){.flight-seo-hero,.flight-hub-hero{padding:26px 22px;border-radius:24px}.flight-seo-hero h1,.flight-hub-hero h1{font-size:clamp(2.7rem,15vw,4.3rem)}.flight-airport-board{width:100%;min-height:150px;padding:20px}.flight-airport-board span{font-size:2rem}.flight-choice-grid,.flight-hub-grid,.flight-related-grid{grid-template-columns:1fr}.flight-action{padding-top:22px}.flight-primary-cta{white-space:normal}.flight-why,.flight-hub-explain{padding:26px 22px}}



/* v200: compact site-wide brand outside the homepage */
.shell>.site-header .fc-wordmark{gap:6px!important;font-size:clamp(.96rem,1vw,1.08rem)!important;letter-spacing:-.05em!important}
.shell>.site-header .fc-wave-mark{width:27px!important;min-width:27px!important}
@media(max-width:720px){.shell>.site-header .fc-wordmark{gap:5px!important;font-size:.94rem!important}.shell>.site-header .fc-wave-mark{width:24px!important;min-width:24px!important}}


/* FerryCroatia unified header wordmark — matches homepage */
.fc-wordmark{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:-.055em;font-size:clamp(1.25rem,2vw,1.85rem);line-height:1;white-space:nowrap;color:#071a59;text-decoration:none}
.fc-wordmark .fc-wordmark-text>span{color:#1267f6}
.fc-wave-mark{width:44px;height:auto;color:#1267f6;flex:0 0 auto;display:block;overflow:visible}
.fc-wave-mark path{transform-box:fill-box;transform-origin:center;will-change:transform}
.fc-wave-mark path:first-child{animation:fc-wave-drift-top 2.25s ease-in-out infinite}
.fc-wave-mark path:nth-child(2){animation:fc-wave-drift-middle 2.25s ease-in-out -.38s infinite}
.fc-wave-mark path:nth-child(3){animation:fc-wave-drift-bottom 2.25s ease-in-out -.76s infinite}
@keyframes fc-wave-drift-top{0%,100%{transform:translate3d(-3.2px,0,0)}50%{transform:translate3d(3.2px,-.7px,0)}}
@keyframes fc-wave-drift-middle{0%,100%{transform:translate3d(2px,0,0)}50%{transform:translate3d(-2px,.35px,0)}}
@keyframes fc-wave-drift-bottom{0%,100%{transform:translate3d(3.2px,0,0)}50%{transform:translate3d(-3.2px,.7px,0)}}
@media(prefers-reduced-motion:reduce){.fc-wave-mark path{animation:none!important}}
@media(max-width:720px){.fc-wordmark{font-size:1.22rem;gap:7px;letter-spacing:-.05em}.fc-wave-mark{width:31px}}

/* v118: search-intent travel guides */
.search-guide-page{max-width:1120px}.search-guide-hero{max-width:980px;padding:52px 0 30px}.search-guide-hero h1{max-width:960px;margin:11px 0 22px;color:var(--navy);font-size:clamp(3.8rem,7.7vw,6.7rem);line-height:.89;letter-spacing:-.067em}.search-guide-hero h1 span{color:var(--blue)}.search-guide-hero h1 b{color:var(--red)}.search-guide-strap{max-width:790px;margin:0 0 16px;color:var(--navy);font-size:1.4rem;font-weight:850;line-height:1.35}.search-guide-hero>p:last-child{max-width:800px;margin:0;color:var(--muted);font-size:1.08rem;line-height:1.67}.search-guide-answer{margin:12px 0 24px;padding:27px 30px;border-radius:22px;background:linear-gradient(135deg,#071a59,#1249cf);color:#fff}.search-guide-answer .eyebrow{color:#a8c4ff}.search-guide-answer>p:last-child{max-width:900px;margin:10px 0 0;font-size:1.16rem;font-weight:680;line-height:1.55}.search-guide-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:0 0 62px}.search-guide-cards article{min-height:235px;padding:25px;border:1px solid #dce6f4;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(7,26,89,.05)}.search-guide-cards h2{margin:30px 0 10px;color:var(--navy);font-size:1.7rem;line-height:1}.search-guide-cards article>p:last-child{margin:0;color:var(--muted);line-height:1.58}.search-guide-body{max-width:850px;margin:0 auto 62px}.search-guide-body section{padding:28px 0;border-top:1px solid var(--line)}.search-guide-body h2{margin:0 0 12px;color:var(--navy);font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.06;letter-spacing:-.04em}.search-guide-body p{margin:0;color:var(--muted);font-size:1.04rem;line-height:1.7}.search-guide-next{margin:0 0 28px;padding:32px;border-radius:27px;background:#eff5ff}.search-guide-next h2,.search-guide-book h2,.search-guide-faq>h2,.guide-index-group h2{margin:9px 0 0;color:var(--navy);font-size:clamp(2rem,4vw,3.2rem);line-height:.98;letter-spacing:-.05em}.search-guide-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:25px}.search-guide-links a{display:flex;justify-content:space-between;align-items:center;min-height:68px;padding:16px 18px;border:1px solid #d7e3f4;border-radius:15px;background:#fff;color:var(--navy);font-weight:850}.search-guide-links span{color:var(--blue)}.search-guide-book{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:62px;padding:32px;border-radius:25px;background:#071a59;color:#fff}.search-guide-book .eyebrow{color:#a8c4ff}.search-guide-book h2{color:#fff}.search-guide-book>a{flex:0 0 auto;padding:15px 19px;border-radius:999px;background:var(--red);color:#fff;font-weight:900}.search-guide-faq{max-width:850px;margin:0 auto 68px}.search-guide-faq details{border-top:1px solid var(--line);padding:19px 0}.search-guide-faq summary{color:var(--navy);font-weight:900;cursor:pointer}.search-guide-faq details p{max-width:760px;margin:11px 0 0;color:var(--muted);line-height:1.6}.guide-index-hero{padding-bottom:55px}.guide-index-group{margin:0 0 62px}.guide-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.guide-index-grid a{display:flex;flex-direction:column;min-height:150px;padding:23px;border:1px solid #dce6f4;border-radius:20px;background:#fff;box-shadow:0 12px 28px rgba(7,26,89,.045)}.guide-index-grid strong{color:var(--navy);font-size:1.22rem;line-height:1.18}.guide-index-grid span{margin-top:auto;color:var(--blue);font-weight:800;line-height:1.35}
@media(max-width:760px){.search-guide-page{padding:0 16px}.search-guide-hero{padding:34px 0 24px}.search-guide-hero h1{font-size:clamp(3.25rem,14vw,4.55rem)}.search-guide-strap{font-size:1.17rem}.search-guide-hero>p:last-child{font-size:1rem}.search-guide-answer{padding:23px 21px}.search-guide-answer>p:last-child{font-size:1.04rem}.search-guide-cards{grid-template-columns:1fr;margin-bottom:44px}.search-guide-cards article{min-height:0;padding:22px}.search-guide-cards h2{margin-top:22px}.search-guide-body{margin-bottom:45px}.search-guide-body section{padding:23px 1px}.search-guide-next{padding:24px 19px}.search-guide-links{grid-template-columns:1fr}.search-guide-book{align-items:flex-start;flex-direction:column;padding:25px 21px;margin-bottom:48px}.guide-index-grid{grid-template-columns:1fr}.guide-index-grid a{min-height:130px}.guide-index-group{margin-bottom:48px}}


/* v248 — route SEO layout repair: six-fact grids, text badges and related links */
.route-quick-facts.six-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.seo-route-boost .seo-answer-grid article>strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  height:auto;
  min-height:40px;
  max-width:100%;
  padding:9px 13px;
  border-radius:999px;
  background:var(--navy);
  color:#fff;
  font-size:.82rem;
  line-height:1.15;
  letter-spacing:0;
  text-align:center;
  white-space:normal;
}
.seo-route-boost .seo-answer-grid h3{margin:18px 0 9px}
.seo-route-boost .seo-inline-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 18px;
  margin-top:20px;
}
.seo-route-boost .seo-inline-link,
.seo-route-boost .seo-inline-link.strong{
  margin-top:0;
  font-size:.96rem;
}
@media(max-width:760px){
  .route-quick-facts.six-up{grid-template-columns:1fr 1fr}
  .route-quick-facts.six-up>div:last-child{grid-column:auto}
  .seo-route-boost .seo-inline-links{gap:10px 14px}
  .seo-route-boost .seo-inline-link,
  .seo-route-boost .seo-inline-link.strong{font-size:.9rem}
}
@media(max-width:430px){
  .seo-route-boost .seo-answer-grid article>strong{min-height:36px;padding:8px 11px;font-size:.78rem}
}
