/* Preview only: load after the existing navigation styles. */
@media (max-width: 1199px) {
  body.sd-site .sd-nav__list,
  body.sd-site .sd-nav__list > li {
    width: 100%;
    min-width: 0;
  }
  body.sd-site .sd-nav a {
    display: flex;
    width: 100%;
    min-height: 56px;
    box-sizing: border-box;
    touch-action: manipulation;
  }
}

/* Preview only. Load after production.css; keep the existing LINE logo. */
body.sd-site .sd-global-mobile-contact a.sd-global-mobile-contact__line[href*="lin.ee"],
body.sd-site .sd-global-mobile-contact a.sd-global-mobile-contact__line[href*="lin.ee"]:hover,
body.sd-site .sd-global-mobile-contact a.sd-global-mobile-contact__line[href*="lin.ee"]:active {
  background: #fff !important;
  color: #263735 !important;
  border: 1px solid #deded9 !important;
  outline: none;
  outline-offset: 0;
}
body.sd-site .sd-global-mobile-contact a.sd-global-mobile-contact__line[href*="lin.ee"]:focus-visible {
  outline: 2px solid #263735;
  outline-offset: -3px;
}

/* Readability candidate; loaded after current production styles. */
body.sd-site main :is(h1,h2,h3,h4,p,dd,dt,summary,figcaption,li),
body.sd-site main :is(h1,h2,h3,h4,p,dd,dt,summary,figcaption,li) :is(span,strong,small,em,a),
body.sd-site .sd-cta-band :is(h2,p) {
  word-break: keep-all !important;
  overflow-wrap: anywhere !important;
  line-break: strict;
}
body.sd-site main :is(h1,h2,h3,h4),
body.sd-site .sd-cta-band h2 { text-wrap: wrap; letter-spacing: .01em; }
body.sd-site main :is(p,dd,li,summary) { text-wrap: wrap; }
body.sd-site main :is(p,dd) { line-height: 1.85; }
body.sd-site .sdg-section > p,
body.sd-site .sdg-facts dd,
body.sd-site .sdg-steps p,
body.sd-site .sdf-question .sd-faq__answer p { max-inline-size: 42em; }
body.sd-site .sdg-steps > li { grid-template-columns: 2em minmax(0,1fr); column-gap: 1rem; }
body.sd-site .sdg-steps > li > div { min-width: 0; }
@media(max-width:767px) {
 body.sd-site .sdg-steps > li { column-gap: .65rem; grid-template-columns: 1.7em minmax(0,1fr); }
 body.sd-site main :is(h2,h3) { line-height: 1.55 !important; }
 body.sd-site .sd-cta-band h2 { font-size: clamp(22px,5.7vw,27px) !important; }
 body.sd-site .sdg-steps h3 { font-size: 18px !important; }
 body.sd-site .sdg-desktop-break { display:none; }
}
sd-word { white-space: nowrap; font: inherit; color: inherit; }
/* All existing access routes are visible on TOP, with a full-width text column. */
body.home.sd-site #home-access .sd-bh-access__layout { display:block; }
body.home.sd-site #home-access .sd-bh-access__copy { width:100%; max-width:none; min-width:0; }
body.home.sd-site .sd-home-station-routes { margin-top:32px; }
body.home.sd-site .sd-home-station-routes h3 { margin:0 0 18px; font-size:22px; }
body.home.sd-site .sd-home-station-routes ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 36px; list-style:none; padding:0; margin:0; }
body.home.sd-site .sd-home-station-routes li { border-top:1px solid #deded9; padding:20px 0; min-width:0; }
body.home.sd-site .sd-home-station-routes li strong { display:block; font-size:17px; line-height:1.6; color:#30463b; }
body.home.sd-site .sd-home-station-routes li p { font-size:15px; line-height:1.85; margin:10px 0 0; max-width:none; }
body.home.sd-site .sd-home-station-routes__note { font-size:13px; line-height:1.8; margin:16px 0; }
@media(max-width:767px){
 body.home.sd-site #home-access > .sd-container { width:calc(100% - 40px); margin-inline:auto; }
 body.home.sd-site .sd-home-station-routes ul { grid-template-columns:1fr; }
 body.home.sd-site .sd-home-station-routes li { padding-block:18px; }
}

/* Keep the service type legible beside the desktop wordmark. */
body.sd-site .sd-header .sd-wordmark__descriptor { font-size: 13px; font-weight: 600; letter-spacing: .02em; color: #3f3f3f; max-width: none; white-space: nowrap; }
