/* Content pages (services, fleet, transfers, events, guide). Scoped to .lx-page so old pages are untouched.
   Palette and font follow style-new.css: gold #dab663, brown #704214, ink #1D1B1B, Poppins. */
.lx-page{
  --gold:#dab663; --gold-2:#c9a24c; --gold-soft:#faf5e8; --brown:#704214;
  --ink:#1D1B1B; --muted:#5b5752; --line:#e8e3d8; --panel:#f9f9f9; --white:#fff;
  --radius:14px; --radius-sm:10px; --shadow:0 14px 34px -24px rgba(29,27,27,.35);
  --h1:clamp(1.9rem,1.3rem + 2vw,2.9rem); --h2:clamp(1.4rem,1.1rem + 1vw,1.9rem); --h3:1.15rem;
  --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px;
  color:var(--ink); font-family:'Poppins',sans-serif;
}
.lx-page h1,.lx-page h2,.lx-page h3{font-family:'Poppins',sans-serif;color:var(--ink);text-transform:none;letter-spacing:-.01em}
.lx-page h2{font-size:var(--h2);line-height:1.2;font-weight:600;margin:0 0 var(--s4);text-wrap:balance}
.lx-page h3{font-size:var(--h3);line-height:1.3;font-weight:600;margin:0 0 var(--s2)}
.lx-page p,.lx-page li{font-size:1rem;line-height:1.7;color:var(--muted)}
.lx-page p{margin:0 0 var(--s4)}
.lx-page a{color:var(--brown);text-decoration:underline;text-decoration-color:rgba(112,66,20,.35);text-underline-offset:3px}
.lx-page a:hover{text-decoration-color:var(--brown)}
.lx-page strong{color:var(--ink);font-weight:600}

/* breadcrumbs */
.lx-crumbs ol{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:var(--s3) auto var(--s3);padding:0;font-size:.85rem}
.lx-crumbs li{font-size:.85rem;color:var(--muted)}
.lx-crumbs li+li::before{content:"/";margin-right:6px;color:#b5ada0}
.lx-crumbs a{color:var(--muted);text-decoration:none}
.lx-crumbs a:hover{color:var(--brown)}

/* hero */
.lx-hero__box{position:relative;border-radius:var(--radius);overflow:hidden;min-height:440px;display:flex;align-items:flex-end;
  background:#1D1B1B var(--hero) 50% var(--py,55%)/cover no-repeat}
.lx-hero__box::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,16,.88) 0%,rgba(20,18,16,.62) 45%,rgba(20,18,16,.12) 100%)}
.lx-hero__text{position:relative;max-width:640px;padding:var(--s7)}
.lx-page .lx-hero h1{color:#fff;font-size:var(--h1);line-height:1.1;font-weight:700;margin:0 0 var(--s4)}
.lx-page .lx-hero__sub{color:#ece6da;font-size:1.05rem;line-height:1.6;margin:0 0 var(--s5)}
.lx-hero__cta{display:flex;flex-wrap:wrap;gap:var(--s3)}
.lx-kicker{font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-2);margin:0 0 var(--s2)}
.lx-kicker--light{color:var(--gold)}

/* buttons */
.lx-page .lx-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:6px;
  background:var(--gold);color:#fff;font-weight:600;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;border:2px solid var(--gold);transition:background .2s,border-color .2s}
.lx-page .lx-btn:hover{background:var(--gold-2);border-color:var(--gold-2);color:#fff}
.lx-page .lx-btn--ghost{background:transparent;border-color:rgba(255,255,255,.6);color:#fff}
.lx-page .lx-btn--ghost:hover{background:rgba(255,255,255,.12);border-color:#fff}
.lx-page .lx-btn:focus-visible,.lx-page a:focus-visible,.lx-faq__item summary:focus-visible{outline:3px solid var(--brown);outline-offset:3px}

/* lead + stats */
.lx-lead{font-size:1.12rem;line-height:1.75;color:var(--ink);max-width:880px;margin:var(--s7) 0 var(--s5)}
.lx-page .lx-lead{color:var(--ink);font-size:1.12rem;margin:var(--s7) 0 var(--s5)}
.lx-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s3);margin:0 0 var(--s4)}
.lx-stats div{background:var(--gold-soft);border:1px solid #f0e4c4;border-radius:var(--radius-sm);padding:var(--s4) var(--s5);display:flex;flex-direction:column-reverse;gap:4px}
.lx-stats dt{font-size:.82rem;font-weight:500;color:var(--muted)}
.lx-stats dd{margin:0;font-size:1.45rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.2}
.lx-page .lx-meta{font-size:.85rem;color:var(--muted);margin:var(--s5) 0 0}

/* sections */
.lx-body{padding-bottom:var(--s8)}
.lx-section{margin-top:var(--s7);max-width:100%}
.lx-section > p,.lx-section > .lx-list{max-width:880px}
.lx-note{font-size:.88rem!important;color:var(--muted)}
.lx-list{padding-left:1.2em;margin:0 0 var(--s4)}
.lx-list li{margin-bottom:var(--s2)}
.lx-list--num{padding-left:1.4em}

/* tables */
.lx-table-wrap{overflow-x:auto;margin:0 0 var(--s4);border:1px solid var(--line);border-radius:var(--radius-sm);-webkit-overflow-scrolling:touch}
.lx-table{width:100%;border-collapse:collapse;font-size:.95rem}
.lx-table--wide{min-width:560px}
.lx-table caption{caption-side:bottom;padding:var(--s3) var(--s4);font-size:.82rem;color:var(--muted);text-align:left}
.lx-table th,.lx-table td{padding:13px var(--s4);border-bottom:1px solid var(--line);text-align:left;vertical-align:top;color:var(--ink);font-variant-numeric:tabular-nums}
.lx-table thead th{background:var(--panel);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.lx-table tbody th{font-weight:500}
.lx-table tbody tr:last-child th,.lx-table tbody tr:last-child td{border-bottom:0}
.lx-table td strong{color:var(--brown)}

/* checks, chips */
.lx-checks{list-style:none;padding:0;margin:0;display:grid;gap:var(--s3)}
.lx-checks--2{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3) var(--s6)}
.lx-checks li{position:relative;padding-left:32px;color:var(--ink)}
.lx-checks li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.lx-chips{display:flex;flex-wrap:wrap;gap:var(--s2);list-style:none;padding:0;margin:var(--s4) 0 0}
.lx-chips li{font-size:.85rem;padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink)}

/* steps */
.lx-steps{list-style:none;counter-reset:st;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4)}
.lx-steps li{counter-increment:st;background:var(--panel);border-radius:var(--radius-sm);padding:var(--s5)}
.lx-steps li::before{content:counter(st,decimal-leading-zero);display:block;font-weight:700;font-size:1.3rem;color:var(--gold-2);margin-bottom:var(--s2)}
.lx-steps p{font-size:.95rem;margin:0}

/* tiles */
.lx-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}
.lx-tile{border:1px solid var(--line);border-radius:var(--radius-sm);padding:var(--s5);background:#fff}
.lx-tile p{font-size:.95rem;margin:0}

/* cards */
.lx-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}
.lx-page a.lx-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;text-decoration:none;color:var(--ink);transition:box-shadow .2s,transform .2s}
.lx-page a.lx-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.lx-card img{width:100%;height:200px;object-fit:cover;display:block}
.lx-card__body{display:flex;flex-direction:column;gap:6px;padding:var(--s4) var(--s5) var(--s5);flex:1}
.lx-card__title{font-weight:600;font-size:1.02rem;color:var(--ink)}
.lx-card__text{font-size:.9rem;line-height:1.55;color:var(--muted)}
.lx-card__more{margin-top:auto;padding-top:var(--s2);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--brown)}
.lx-cards--text a.lx-card{background:var(--panel);border-color:transparent}

/* gallery */
.lx-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:180px;gap:var(--s3)}
.lx-gallery figure{margin:0;border-radius:var(--radius-sm);overflow:hidden;background:var(--panel)}
.lx-gallery figure:first-child{grid-row:span 2}
.lx-gallery img{width:100%;height:100%;object-fit:cover;display:block}

/* FAQ */
.lx-faq__item{border-bottom:1px solid var(--line);max-width:880px}
.lx-faq__item summary{cursor:pointer;list-style:none;padding:var(--s4) 40px var(--s4) 0;font-weight:600;color:var(--ink);position:relative;font-size:1.02rem}
.lx-faq__item summary::-webkit-details-marker{display:none}
.lx-faq__item summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:1.5rem;font-weight:400;color:var(--gold-2)}
.lx-faq__item[open] summary::after{content:"\2212"}
.lx-faq__a p{margin:0 0 var(--s4)}

/* booking band */
.lx-band{margin-top:var(--s8);background:var(--ink);border-radius:var(--radius);padding:var(--s7);text-align:left}
.lx-page .lx-band h2{color:#fff;margin-bottom:var(--s3)}
.lx-page .lx-band p{color:#d9d3c7;max-width:640px}

/* article */
.lx-article .lx-section > p,.lx-article .lx-section > .lx-list{max-width:780px}

@media (max-width:991px){
  .lx-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lx-cards,.lx-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .lx-hero .container{padding-left:0;padding-right:0}
  /* phone: the whole photo on top (no crop), then fades into the dark text block */
  .lx-hero__box{border-radius:0;min-height:0;align-items:stretch;background-size:100% auto;background-position:50% 0}
  .lx-hero__box::before{background:linear-gradient(180deg,rgba(20,18,16,0) 0,rgba(20,18,16,0) calc(67vw - 120px),rgba(20,18,16,.94) calc(67vw - 10px),#1D1B1B 67vw)}
  .lx-hero__text{padding:calc(67vw - 24px) 16px var(--s5);max-width:none;width:100%}
  .lx-hero__sub{font-size:.98rem}
  .lx-hero__cta{flex-direction:column}
  .lx-page .lx-btn{width:100%}
  .lx-lead,.lx-page .lx-lead{font-size:1.02rem;margin-top:var(--s5)}
  .lx-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2)}
  .lx-stats div{padding:var(--s3) var(--s4)}
  .lx-stats dd{font-size:1.15rem}
  .lx-section{margin-top:var(--s6)}
  .lx-steps,.lx-cards,.lx-tiles,.lx-checks--2{grid-template-columns:minmax(0,1fr)}
  .lx-card img{height:180px}
  .lx-gallery{display:flex;gap:var(--s2);overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:0 16px}
  .lx-gallery figure{flex:0 0 82%;height:230px;scroll-snap-align:start}
  .lx-band{padding:var(--s5) 16px;border-radius:var(--radius-sm)}
  .lx-table{font-size:.88rem}
}

/* language switch in header (global, not scoped to .lx-page) */
.header__social a.lx-lang{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:28px;padding:0 8px;border:1px solid #dab663;border-radius:4px;
  font:600 .78rem/1 'Poppins',sans-serif;letter-spacing:.06em;color:#704214!important;opacity:1!important;filter:none!important;text-decoration:none;margin-right:6px;background:#fff;max-width:none!important;font-size:.78rem}
.header__social a.lx-lang:hover{background:#dab663;color:#fff!important}
/* header must stay on one line in both languages (Dutch menu words are longer) */
.header__social{display:flex;align-items:center;flex-wrap:nowrap}
.header__link a{white-space:nowrap}
@media (min-width:1200px){
  html[lang="nl"] .header__site__menu ul li{margin-left:11px}
  html[lang="nl"] .header__site__menu ul li a{font-size:13px}
  html[lang="nl"] .header__link a{font-size:14px}
}

/* footer: long route names wrap instead of running into the next column */
.footer__menu ul{white-space:normal}
.footer__menu ul li a{line-height:1.45;display:inline-block}

/* card grids without orphans: text cards fill the row (8 -> 4+4, 4 -> 4, 3 -> 3), photo cards in 4 when there are 4 */
.lx-cards--text{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.lx-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.lx-cards--4 .lx-card img{height:170px}
@media (max-width:991px){.lx-cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.lx-cards--4,.lx-cards--text{grid-template-columns:minmax(0,1fr)}}

/* home fleet cards: titles link to the vehicle pages */
.bus__info h3 a{color:inherit;text-decoration:none}
.bus__info h3 a:hover{color:#704214;text-decoration:underline;text-underline-offset:3px}
.enjoy__content h3 a{color:inherit;text-decoration:none}
.enjoy__content h3 a:hover{color:#704214}
.contact__info .lx-quick a{display:block;margin:6px 0;color:#704214;text-decoration:underline;text-underline-offset:3px}

/* booking band: text left, action right on desktop */
@media (min-width:992px){
  .lx-band{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--s7);align-items:center}
  .lx-band > h2,.lx-band > p{grid-column:1}
  .lx-band > p{margin-bottom:0}
  .lx-band > .lx-btn{grid-column:2;grid-row:1 / span 2;min-height:56px;padding:0 34px}
}

/* phone: vehicle price table drops the "class" column so the price stays visible without scrolling */
@media (max-width:640px){
  .lx-table--hide2{min-width:0}
  .lx-table--hide2 th:nth-child(2),.lx-table--hide2 td:nth-child(2){display:none}
  .lx-table--hide2 th,.lx-table--hide2 td{padding:11px 12px}
}
