/* LTV Journeys — white + blue. Layout: white header, photo hero, route strip, two-column journey body with sticky price/enquiry card. */
:root{
  --lj-bg:#ffffff; --lj-tint:#f1f7fd; --lj-card:#ffffff; --lj-ink:#0b2340; --lj-muted:#5a6b7e; --lj-rule:#d9e6f2;
  --lj-blue:#0c589d; --lj-navy:#043a6b; --lj-soft:#e0f0ff; --lj-gold:#ffd770; --lj-foot:#051e34;
  --lj-ok:#1f6b3a; --lj-ok-soft:#e3f3e8; --lj-err:#9a3d12; --lj-err-soft:#fdeee4;
  --lj-display:"Martel", Georgia, "Times New Roman", serif;
  --lj-sans:"Martel Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
  --lj-shadow:0 1px 2px rgba(4,58,107,.06), 0 8px 24px rgba(4,58,107,.08);
}
body.lj{background:var(--lj-bg);color:var(--lj-ink);font-family:var(--lj-sans);font-size:16px;line-height:1.65;margin:0}
.lj *,.lj *::before,.lj *::after{box-sizing:border-box}
.lj h1,.lj h2,.lj h3{font-family:var(--lj-display);line-height:1.2;text-wrap:balance;margin:0;color:inherit}
.lj p{margin:0}
.lj a{color:var(--lj-navy)}
.lj img{max-width:100%;height:auto}
.lj button{font:inherit;cursor:pointer}
.lj :focus-visible{outline:2px solid var(--lj-blue);outline-offset:2px}
.lj-wrap{max-width:1180px;margin:0 auto;padding-inline:20px}
.lj-eyebrow{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--lj-muted)}
.lj-gold{color:var(--lj-gold)}
.lj-skip{position:absolute;left:-999px;top:0;background:var(--lj-navy);color:#fff;padding:8px 12px;z-index:100}
.lj-skip:focus{left:8px}

/* header: navy (same as footer) with the gold logo; mega menus for destinations and trains */
.lj-site{background:var(--lj-foot);color:#fff;position:relative;z-index:50;border-bottom:1px solid rgba(255,215,112,.18)}
.lj-util{background:#03172a;font-size:.8rem;color:#9fb4c9}
.lj-util .lj-wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:6px}
.lj-util-links{display:flex;gap:22px;flex-wrap:wrap}
.lj-util a{color:#dbe8f5!important;text-decoration:none}
.lj-util a:hover{color:#fff!important;text-decoration:underline}
.lj-util b{color:var(--lj-gold);font-weight:600}
.lj-bar{display:flex;align-items:center;gap:20px;padding-block:6px;position:relative}
.lj-logo img{display:block;height:66px;width:auto}
.lj-nav{flex:1;display:flex;justify-content:center;min-width:0}
.lj-menu{list-style:none;display:flex;align-items:center;gap:2px;margin:0;padding:0}
.lj-menu>li{margin:0;display:flex}
.lj-top{background:none;border:0;color:#fff!important;font:600 .97rem/1.2 var(--lj-sans);padding:12px 14px;text-decoration:none;display:flex;align-items:center;gap:8px;border-radius:6px;cursor:pointer}
button.lj-top{font-weight:600!important;font-family:var(--lj-sans)!important;letter-spacing:normal;text-transform:none}
button.lj-top::after{content:"";width:6px;height:6px;border-right:2px solid var(--lj-gold);border-bottom:2px solid var(--lj-gold);transform:translateY(-2px) rotate(45deg);transition:transform .15s}
button.lj-top[aria-expanded="true"]::after{transform:translateY(1px) rotate(225deg)}
.lj-top:hover,.lj-top[aria-expanded="true"]{background:rgba(255,255,255,.08);color:var(--lj-gold)!important}
.lj-has-panel{position:static}
.lj-panel-drop{display:none;position:absolute;left:20px;right:20px;top:100%;background:#fff;color:var(--lj-ink);border-radius:0 0 12px 12px;box-shadow:0 18px 40px rgba(3,23,42,.28);z-index:60}
button.lj-top[aria-expanded="true"]+.lj-panel-drop{display:block}
.lj-drop-in{padding:26px 30px 18px}
.lj-dest-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:36px}
.lj-dest-cont+.lj-dest-cont{margin-top:18px}
.lj-dest-col:first-child .lj-dest-cont{columns:2;column-gap:28px}
.lj-dest-col:first-child .lj-drop-eyebrow{column-span:all}
.lj-dest-region{break-inside:avoid}
.lj-drop-eyebrow{display:block;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--lj-blue);font-weight:700;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--lj-rule)}
.lj-dest-region{margin-bottom:16px}
.lj-dest-country{font-family:var(--lj-display);font-weight:700;color:var(--lj-navy)!important;text-decoration:none;font-size:1.04rem}
.lj-dest-country:hover{color:var(--lj-blue)!important}
.lj-dest-region ul{list-style:none;margin:4px 0 0;padding:0 0 0 12px;border-left:2px solid var(--lj-soft)}
.lj-dest-region li a{display:block;padding:3px 0;color:var(--lj-ink)!important;text-decoration:none;font-size:.9rem}
.lj-dest-region li a:hover{color:var(--lj-blue)!important}
.lj-train-list{list-style:none;padding:0;margin:0;columns:3;column-gap:20px}
.lj-train-list li{break-inside:avoid}
.lj-train-list a{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:8px 10px;border-radius:6px;text-decoration:none;color:var(--lj-ink)!important;font-size:.93rem}
.lj-train-list a:hover{background:var(--lj-tint);color:var(--lj-blue)!important}
.lj-train-list small{color:var(--lj-muted);font-size:.75rem;white-space:nowrap}
.lj-drop-foot{display:flex;gap:26px;border-top:1px solid var(--lj-rule);margin-top:10px;padding-top:12px;font-weight:600;font-size:.9rem}
.lj-drop-foot a{color:var(--lj-blue)!important;text-decoration:none}
.lj-cta{background:var(--lj-gold);color:#051e34!important;font-weight:700;font-size:.92rem;padding:11px 18px;border-radius:6px;text-decoration:none;white-space:nowrap}
.lj-cta:hover{background:#ffe39b}
.lj-call-icon,.lj-menu-btn,.lj-nav-mobile-foot{display:none}
@media (min-width:1021px) and (hover:hover){.lj-has-panel:hover>.lj-panel-drop{display:block}}
@media (max-width:1020px){
  .lj-site{position:sticky;top:env(safe-area-inset-top,0px)}
  .lj-util,.lj-cta{display:none}
  .lj-bar{gap:10px;padding-block:6px}
  .lj-logo img{height:52px}
  .lj-call-icon{display:grid;place-items:center;margin-left:auto;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,215,112,.45);color:var(--lj-gold)!important}
  .lj-menu-btn{display:flex;align-items:center;gap:9px;background:none;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:6px;padding:9px 12px;font-weight:600;font-size:.92rem}
  .lj-burger{position:relative;width:18px;height:2px;background:#fff;box-shadow:0 -6px #fff,0 6px #fff}
  .lj-site.open .lj-burger{background:transparent;box-shadow:none}
  .lj-site.open .lj-burger::before,.lj-site.open .lj-burger::after{content:"";position:absolute;left:0;top:0;width:18px;height:2px;background:#fff;transform:rotate(45deg)}
  .lj-site.open .lj-burger::after{transform:rotate(-45deg)}
  .lj-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--lj-foot);max-height:calc(100dvh - 64px);overflow-y:auto;padding:4px 20px 28px;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 20px 30px rgba(3,23,42,.35)}
  .lj-site.open .lj-nav{display:block}
  .lj-menu{flex-direction:column;align-items:stretch;gap:0}
  body.lj-nav-open .pt-wa-float,body.lj-nav-open .lj-mbar{display:none!important}
  .lj-menu>li{border-bottom:1px solid rgba(255,255,255,.1)}
  .lj-top{width:100%;justify-content:space-between;padding:15px 2px;font-size:1.06rem;border-radius:0}
  .lj-top:hover,.lj-top[aria-expanded="true"]{background:none}
  .lj-has-panel{position:relative}
  .lj-panel-drop{position:static;background:transparent;box-shadow:none;color:#fff;border-radius:0}
  .lj-drop-in{padding:0 2px 16px}
  .lj-dest-grid{grid-template-columns:minmax(0,1fr);gap:4px}
  .lj-dest-col:first-child .lj-dest-cont{columns:1}
  .lj-menu>li{display:block}
  .lj-drop-eyebrow{color:var(--lj-gold);border-color:rgba(255,255,255,.12);margin:8px 0 10px}
  .lj-dest-country{color:#fff!important}
  .lj-dest-region ul{border-color:rgba(255,215,112,.35)}
  .lj-dest-region li a,.lj-train-list a{color:#dbe8f5!important}
  .lj-train-list{columns:1}
  .lj-train-list a{padding:9px 4px}
  .lj-train-list a:hover{background:rgba(255,255,255,.06)}
  .lj-train-list small{color:#9fb4c9}
  .lj-drop-foot{flex-direction:column;gap:10px;border-color:rgba(255,255,255,.12)}
  .lj-drop-foot a{color:var(--lj-gold)!important}
  .lj-nav-mobile-foot{display:grid;gap:14px;padding-top:20px;font-size:.92rem}
  .lj-nav-mobile-foot a{color:#dbe8f5!important;text-decoration:none}
  .lj-nav-mobile-foot .lj-btn{background:var(--lj-gold);color:#051e34!important}
  body.lj-nav-open{overflow:hidden}
}
@media (max-width:1180px) and (min-width:1021px){.lj-cta{display:none}}

/* hero */
.lj-hero{position:relative;background:var(--lj-navy);color:#fff}
.lj-hero-img{display:block;width:100%;height:clamp(280px,40vw,460px)!important;object-fit:cover}
.lj-hero-cap{position:absolute;inset:auto 0 0 0;background:linear-gradient(transparent,rgba(4,30,60,.86));padding-block:90px 28px}
.lj-crumbs{font-size:.82rem;margin-bottom:8px;opacity:.95}
.lj-crumbs a{color:#fff!important;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45)}
.lj-hero h1{font-size:clamp(2rem,4.6vw,3.3rem);font-weight:800;color:#fff}
.lj-sub{font-size:1.05rem;max-width:64ch;margin-top:6px!important;opacity:.96}
@media (max-width:640px){.lj-hero-cap{position:static;background:var(--lj-navy);padding-block:20px 24px}}

/* route strip */
.lj-line{background:var(--lj-tint);border-bottom:1px solid var(--lj-rule)}
.lj-line .lj-wrap{padding-block:22px 16px}
.lj-stations{list-style:none;margin:0;padding:0 0 6px;display:flex;overflow-x:auto;scrollbar-width:thin}
.lj-stations li{position:relative;flex:1 0 92px;text-align:center;font-size:.8rem;padding-top:24px;line-height:1.3}
.lj-stations li::before{content:"";position:absolute;top:8px;left:0;right:0;height:3px;background:var(--lj-blue)}
.lj-stations li:first-child::before{left:50%}
.lj-stations li:last-child::before{right:50%}
.lj-stations li i{position:absolute;top:2px;left:50%;width:15px;height:15px;margin-left:-7.5px;border-radius:50%;background:#fff;border:3px solid var(--lj-blue)}
.lj-stations li.end i{background:var(--lj-blue);width:17px;height:17px;margin-left:-8.5px;top:1px}
.lj-stations li.exc{color:var(--lj-muted)}
.lj-stations li.exc i{border-style:dotted;border-color:var(--lj-muted)}
.lj-stations li.gap i{display:none}
.lj-stations li small{display:block;color:var(--lj-muted);font-size:.7rem}
.lj-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:.75rem;color:var(--lj-muted);margin-top:6px}
.lj-legend span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;border:2px solid var(--lj-blue);margin-right:6px;vertical-align:-1px}
.lj-legend .x::before{border-style:dotted;border-color:var(--lj-muted)}

/* facts */
.lj-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--lj-rule);border:1px solid var(--lj-rule);border-radius:10px;overflow:hidden;margin-block:24px}
.lj-facts>div{background:#fff;padding:14px 18px}
.lj-facts b{display:block;font-family:var(--lj-display);font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums}
.lj-facts b.lj-sm{font-size:1.02rem;line-height:1.4;padding-top:4px}
.lj-facts .lj-price b{color:var(--lj-blue)}

/* body grid */
.lj-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start;padding-bottom:56px}
@media (max-width:980px){.lj-grid{grid-template-columns:minmax(0,1fr)}}
.lj-block{padding-block:6px 28px;border-bottom:1px solid var(--lj-rule);margin-bottom:28px}
.lj-block:last-child{border-bottom:0}
.lj-block h2,.lj-hubsec h2,.lj-more h2{font-size:1.6rem;margin-bottom:14px}
.lj-block-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.lj-lede{font-size:1.08rem;max-width:70ch}
.lj-hl{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 28px;list-style:none;padding:0;margin:16px 0 0}
.lj-hl li{padding-left:22px;position:relative}
.lj-hl li::before{content:"";position:absolute;left:2px;top:.62em;width:9px;height:9px;transform:rotate(45deg);background:var(--lj-blue)}
.lj-linkbtn{background:none;border:0;color:var(--lj-navy);font-weight:600;font-size:.86rem;padding:4px 0;text-decoration:underline;text-underline-offset:3px}

/* days */
.lj-days{border-top:1px solid var(--lj-rule)}
.lj-day{border-bottom:1px solid var(--lj-rule)}
.lj-day summary{list-style:none;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 4px;cursor:pointer}
.lj-day summary::-webkit-details-marker{display:none}
.lj-day summary:hover .lj-dt{color:var(--lj-blue)}
.lj-dn{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--lj-blue)}
.lj-dt{font-family:var(--lj-display);font-weight:700;font-size:1.05rem;line-height:1.3}
.lj-night{font-size:.78rem;color:var(--lj-muted);text-align:right}
.lj-night:not(:empty)::before{content:"☾ ";color:var(--lj-blue)}
.lj-day-body{padding:0 4px 18px 80px;max-width:78ch}
.lj-meals{margin-top:10px!important;font-size:.82rem;color:var(--lj-muted)}
@media (max-width:560px){.lj-day summary{grid-template-columns:52px minmax(0,1fr)}.lj-night{grid-column:2;text-align:left}.lj-day-body{padding-left:4px}}

/* tabs */
.lj-tabs{display:flex;gap:4px;border-bottom:1px solid var(--lj-rule);overflow-x:auto;margin-bottom:20px}
.lj-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:10px 14px;font-weight:600;color:var(--lj-muted);white-space:nowrap}
.lj-tabs button[aria-selected="true"]{color:var(--lj-ink);border-bottom-color:var(--lj-blue)}
.lj-mapwrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:720px){.lj-mapwrap{grid-template-columns:minmax(0,1fr)}}
.lj-map{width:100%;height:auto;background:var(--lj-tint);border:1px solid var(--lj-rule);border-radius:10px}
.lj-map-sea{fill:#e6f1fb}
.lj-map-land{fill:#fff;stroke:#c3d6ea;stroke-width:.8;stroke-linejoin:round}
.lj-map-country{font:600 8.5px var(--lj-sans);letter-spacing:.22em;fill:#a9bccf}
.lj-map-line{fill:none;stroke:var(--lj-blue);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.lj-map-spur{stroke:var(--lj-muted);stroke-width:1.5;stroke-dasharray:3 3}
.lj-map-stop{fill:#fff;stroke:var(--lj-blue);stroke-width:2}
.lj-map-end{fill:var(--lj-blue);stroke:var(--lj-blue);stroke-width:2}
.lj-map-exc{fill:#fff;stroke:var(--lj-muted);stroke-width:1.5}
.lj-map-lbl{font:600 11px var(--lj-sans);fill:var(--lj-ink);paint-order:stroke;stroke:#fff;stroke-width:3px}
.lj-map-lbl-exc{fill:var(--lj-muted);font-weight:400}
.lj-nights{list-style:none;padding:0;margin:6px 0 0;font-size:.92rem}
.lj-nights li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px dashed var(--lj-rule)}
.lj-nights li span:first-child{color:var(--lj-muted)}
.lj-note{font-size:.82rem;color:var(--lj-muted);margin-top:10px!important}
.lj-note-top{margin:0 0 14px!important;font-size:.9rem}
.lj-cabins{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.lj-cabin{background:#fff;border:1px solid var(--lj-rule);border-radius:10px;padding:18px}
.lj-cabin h3{font-size:1.12rem}
.lj-spec{font-size:.85rem;color:var(--lj-muted);margin:4px 0 10px}
.lj-cabin ul{margin:0;padding-left:18px;font-size:.92rem}
.lj-inc{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px 28px;list-style:none;padding:0;margin:0}
.lj-inc li{padding-left:26px;position:relative}
.lj-inc li::before{content:"✓";position:absolute;left:0;color:var(--lj-ok);font-weight:700}
.lj-terms{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 20px;margin:0;font-size:.94rem}
.lj-terms dt{font-weight:700}
.lj-terms dd{margin:0}
@media (max-width:520px){.lj-terms{grid-template-columns:minmax(0,1fr)}.lj-terms dd{margin-bottom:8px}}

/* dates (booking plugin output restyled) */
.lj-tdd .tdd-booking-header{display:none!important}
.lj-tdd .tdd-container{margin:0 0 26px!important;max-width:none!important;padding:0!important}
.lj-tdd .tdd-class-card{border:1px solid var(--lj-rule)!important;border-top:3px solid var(--lj-blue)!important;border-radius:10px!important;box-shadow:none!important;background:#fff!important}
.lj-tdd .tdd-class-card-premium{border-top-color:var(--lj-navy)!important}
.lj-tdd .tdd-class-title{font-family:var(--lj-display)!important;color:var(--lj-ink)!important}
.lj-tdd .tdd-class-header{background:var(--lj-tint)!important}
.lj-tdd .tdd-date-price{color:var(--lj-blue)!important}
.lj-tdd .tdd-card-rate-strike{color:var(--lj-muted)!important;font-weight:400!important}
.lj-tdd .tdd-date-row{background:#f7fafd!important}
.lj-tdd .tdd-rate-tab-active{background:var(--lj-blue)!important;color:#fff!important;border-color:var(--lj-blue)!important}
.lj-tdd .tdd-book-btn,.lj-tdd .tdd-book-btn-premium{background:var(--lj-blue)!important;color:#fff!important;border:0!important;border-radius:6px!important}
.lj-tdd .tdd-book-btn:hover{background:var(--lj-navy)!important}
.lj-tdd .tdd-waitlist-btn{color:var(--lj-navy)!important;border-color:var(--lj-blue)!important;background:#fff!important}
.lj-ondemand{background:var(--lj-tint);border:1px solid var(--lj-rule);border-radius:10px;padding:20px 22px;display:grid;gap:10px;justify-items:start}

/* faq */
.lj-faq details{border-bottom:1px solid var(--lj-rule);padding:12px 0}
.lj-faq summary{font-weight:700;cursor:pointer}
.lj-faq details p{margin-top:8px!important;max-width:74ch}

/* booking card */
.lj-book{position:sticky;top:16px;background:#fff;border:1px solid var(--lj-rule);border-radius:12px;box-shadow:var(--lj-shadow);overflow:hidden}
@media (max-width:980px){.lj-book{position:static}}
.lj-book-top{padding:20px 22px;border-bottom:1px solid var(--lj-rule);display:grid;gap:4px}
.lj-from{font-size:.8rem;color:var(--lj-muted)}
.lj-big{font-family:var(--lj-display);font-size:2rem;font-weight:800;color:var(--lj-blue);line-height:1.1;margin-bottom:10px;font-variant-numeric:tabular-nums}
.lj-next{padding:14px 22px;border-bottom:1px solid var(--lj-rule);font-size:.88rem}
.lj-next ul{list-style:none;padding:0;margin:6px 0 4px}
.lj-next li{display:flex;justify-content:space-between;gap:10px;padding:3px 0;font-variant-numeric:tabular-nums}
.lj-form{padding:18px 22px;display:grid;gap:10px}
.lj-form label{font-size:.78rem;font-weight:700;color:var(--lj-muted);display:grid;gap:4px}
.lj-form input,.lj-form select,.lj-form textarea{font:inherit;font-size:.95rem;padding:9px 10px;border:1px solid var(--lj-rule);border-radius:6px;background:var(--lj-tint);color:var(--lj-ink);width:100%}
.lj-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lj-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lj-msg{border-radius:6px;padding:10px 12px;font-size:.88rem}
.lj-msg.ok{background:var(--lj-ok-soft);color:var(--lj-ok)}
.lj-msg.err{background:var(--lj-err-soft);color:var(--lj-err)}
.lj-call{padding:0 22px 20px;font-size:.86rem;color:var(--lj-muted)}
.lj-btn{display:inline-block;border:0;border-radius:6px;background:var(--lj-blue);color:#fff!important;font-weight:700;padding:10px 18px;font-size:.9rem;text-decoration:none;text-align:center}
.lj-btn:hover{background:var(--lj-navy)}
.lj-btn.ghost{background:#fff;color:var(--lj-navy)!important;border:1px solid var(--lj-blue)}
.lj-btn.ghost:hover{background:var(--lj-soft)}
.lj-btn.full{display:block;width:100%;padding:13px;font-size:1rem}
.lj-btn-wa{background:#1fae54;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.lj-btn-wa.full{display:flex;margin-top:8px}
.lj-btn-wa:hover{background:#178a42}
.lj-bro{display:block;margin-top:10px;font-size:.86rem;text-align:center}
.lj-mbar-wa{display:none}

/* mobile bar */
.lj-mbar{display:none}
@media (max-width:980px){
  .lj-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:#fff;border-top:1px solid var(--lj-rule);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -6px 20px rgba(4,58,107,.1)}
  .lj-mbar small{display:block;color:var(--lj-muted);font-size:.74rem}
  .lj-mbar b{font-family:var(--lj-display);color:var(--lj-blue);font-size:1.15rem}
  body.lj-has-mbar{padding-bottom:74px}
  .lj-mbar-wa{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#1fae54;color:#fff;margin-left:auto}
  .lj-mbar-wa svg{width:24px;height:24px}
  body.lj-has-mbar .pt-wa-float{display:none!important}   /* the bar carries its own WhatsApp button */
}

/* cards */
.lj-more{padding-block:48px;background:var(--lj-tint);border-top:1px solid var(--lj-rule)}
.lj-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px}
.lj-card,.lj-jcard{background:#fff;border:1px solid var(--lj-rule);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.lj-jcard{box-shadow:var(--lj-shadow)}
.lj-card-img img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;height:auto}
.lj-jcard .lj-card-img img{aspect-ratio:2/1}
.lj-card-in{padding:16px 18px 18px;display:flex;flex-direction:column;gap:9px;flex:1}
.lj-jcard .lj-card-in{padding:20px 22px 22px;gap:12px}
.lj-card h3{font-size:1.15rem}
.lj-jcard h3{font-size:1.4rem}
.lj-card h3 a,.lj-jcard h3 a{text-decoration:none;color:var(--lj-ink)}
.lj-card h3 a:hover,.lj-jcard h3 a:hover{color:var(--lj-blue)}
.lj-rt,.lj-mini{font-size:.84rem;color:var(--lj-muted)}
.lj-mini b{color:var(--lj-ink);font-weight:600}
.lj-card-meta{display:flex;justify-content:space-between;align-items:end;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:12px;border-top:1px solid var(--lj-rule)}
.lj-card-meta b{display:block;font-family:var(--lj-display);color:var(--lj-blue);font-size:1.2rem;font-variant-numeric:tabular-nums}
.lj-jcard .lj-stations{overflow:visible}
.lj-jcard .lj-stations li{flex:1 1 0;min-width:0;font-size:.72rem;padding-inline:2px;overflow-wrap:anywhere;hyphens:auto}
.lj-wide-img{display:block;width:100%;aspect-ratio:21/8;object-fit:cover;border-radius:10px;margin:6px 0 18px;height:auto}
.lj-cabins-hub{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
@media (prefers-reduced-motion:no-preference){.lj-card,.lj-jcard{transition:transform .2s}.lj-card:hover,.lj-jcard:hover{transform:translateY(-2px)}}

/* hub */
.lj-hubfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;padding-block:28px;border-bottom:1px solid var(--lj-rule)}
.lj-hubfacts b{display:block;font-family:var(--lj-display);font-size:1.5rem;color:var(--lj-navy)}
.lj-hubfacts span{font-size:.86rem;color:var(--lj-muted)}
.lj-hubsec{padding-block:44px;border-bottom:1px solid var(--lj-rule)}
.lj-hubsec:last-child{border-bottom:0}
.lj-jcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:22px;margin-top:6px}
.lj-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
.lj-split p+p{margin-top:12px!important}
.lj-split-img{width:100%;border-radius:10px;display:block;aspect-ratio:4/3;object-fit:cover;height:auto}
.lj-hubsec .lj-split{align-items:start}
@media (max-width:780px){.lj-split{grid-template-columns:minmax(0,1fr)}.lj-split-rev>div{order:2}}
.lj-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.lj-gallery img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:8px;display:block;height:auto}

/* homepage / region / all trains */
.lj-hero-home .lj-hero-img{height:clamp(380px,52vw,620px)!important}
.lj-hero-home h1{font-size:clamp(2.3rem,5.4vw,4rem)}
.lj-hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.lj-btn-gold{background:var(--lj-gold);color:#051e34!important}
.lj-btn-gold:hover{background:#ffe39b}
.lj-btn-line{background:transparent;border:1px solid rgba(255,255,255,.7)}
.lj-btn-line:hover{background:rgba(255,255,255,.12)}
.lj-chips{background:var(--lj-tint);border-bottom:1px solid var(--lj-rule)}
.lj-chips .lj-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding-block:16px}
.lj-chips .lj-eyebrow{margin-right:6px}
.lj-chips a{background:#fff;border:1px solid var(--lj-rule);border-radius:999px;padding:6px 14px;font-size:.88rem;font-weight:600;text-decoration:none;color:var(--lj-navy)}
.lj-chips a:hover{border-color:var(--lj-blue);color:var(--lj-blue)}
.lj-cont,.lj-region-h{font-size:1.25rem;margin:30px 0 14px!important;padding-bottom:8px;border-bottom:1px solid var(--lj-rule)}
.lj-region-h a{text-decoration:none;color:var(--lj-ink)}
.lj-region-h a:hover{color:var(--lj-blue)}
.lj-tcard .lj-rt{font-size:.9rem}
.lj-deps{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,520px),1fr));gap:10px}
.lj-dep{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 16px;border:1px solid var(--lj-rule);border-radius:10px;text-decoration:none;color:var(--lj-ink);background:#fff}
.lj-dep:hover{border-color:var(--lj-blue);box-shadow:var(--lj-shadow)}
.lj-dep-date{font-family:var(--lj-display);font-weight:700;font-size:1.15rem;color:var(--lj-navy);line-height:1.1}
.lj-dep small{display:block;font-family:var(--lj-sans);font-weight:400;font-size:.76rem;color:var(--lj-muted)}
.lj-dep-what b{display:block;font-weight:600}
.lj-dep-price{text-align:right;font-family:var(--lj-display);font-weight:700;color:var(--lj-blue);white-space:nowrap}
.lj-why{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px}
.lj-why b{display:block;font-family:var(--lj-display);font-size:1.15rem;color:var(--lj-navy);margin-bottom:6px}
.lj-why p{color:var(--lj-muted)}

/* footer */
.lj-foot{background:var(--lj-foot);color:#dbe8f5;font-size:.88rem;padding-block:36px 18px}
.lj-foot .lj-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}
.lj-foot h2{font-family:var(--lj-sans);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lj-gold);margin-bottom:8px}
.lj-foot a{color:#fff}
.lj-foot img{height:56px;width:auto;margin-bottom:8px}
.lj-foot .lj-foot-legal{display:block;border-top:1px solid rgba(255,255,255,.12);margin-top:24px;padding-top:14px;font-size:.78rem;color:#9fb4c9}
