.locations-page { background:var(--cream); }
.locations-hero { background:linear-gradient(120deg,#082f4b,#164a66); color:#fff; padding:68px 0 62px; }
.locations-hero .section-shell { max-width:1160px; }
.locations-hero h1 { font-family:'Manrope',sans-serif; font-size:clamp(38px,5.5vw,64px); letter-spacing:-.06em; line-height:1.02; margin:0 0 18px; max-width:850px; }
.locations-hero p:not(.locations-eyebrow) { color:rgba(255,255,255,.88); line-height:1.65; margin:0 0 24px; max-width:760px; }
.locations-eyebrow { color:var(--orange); font-size:12px; font-weight:700; letter-spacing:.12em; margin:0 0 10px; text-transform:uppercase; }
.locations-hero .locations-eyebrow { color:#ff956e; }
.locations-hero .primary-button { align-items:center; display:inline-flex; gap:10px; }
.locations-content { padding-bottom:40px; padding-top:56px; }
.locations-section-heading { align-items:center; display:flex; gap:24px; justify-content:space-between; margin-bottom:22px; }
.locations-section-heading h2,.driving-areas h2 { color:var(--ink); font-family:'Manrope',sans-serif; font-size:clamp(25px,3vw,34px); letter-spacing:-.045em; line-height:1.15; margin:0 0 8px; }
.locations-section-heading p:not(.locations-eyebrow) { color:var(--muted); margin:0; }
.location-fee-pill { background:#fff1eb; border:1px solid #ffd5c7; border-radius:100px; color:#b94b2e; flex-shrink:0; font-size:13px; font-weight:700; padding:9px 14px; }
.location-fee-pill.is-free { background:#edf7f1; border-color:#cce8d7; color:#26754a; }
.location-grid { display:grid; gap:10px 16px; grid-template-columns:repeat(2,minmax(0,1fr)); list-style:none; margin:0; padding:0; }
.location-grid li { align-items:center; background:#fff; border:1px solid rgba(16,43,66,.07); border-radius:5px; box-shadow:0 5px 16px rgba(16,43,66,.035); display:flex; gap:12px; justify-content:space-between; min-height:58px; padding:12px 16px; }
.location-grid li span { color:var(--ink); font-size:15px; font-weight:600; }
.location-grid li strong { color:#26754a; flex-shrink:0; font-size:13px; }
.locations-europe .location-grid li strong { color:#b94b2e; }
.driving-areas { padding-bottom:76px; padding-top:22px; }
.driving-areas-panel { background:#fff; border:1px solid rgba(16,43,66,.07); border-left:4px solid var(--orange); border-radius:5px; box-shadow:0 10px 30px rgba(16,43,66,.06); margin:0 auto; max-width:920px; padding:30px 34px; }
.driving-areas-panel p { color:var(--muted); line-height:1.7; margin:0 0 14px; }
.driving-areas-panel p:last-child { margin-bottom:0; }
.driving-areas-panel a { color:#d95732; font-weight:700; text-decoration:underline; text-underline-offset:2px; }
.driving-areas-panel strong { color:var(--ink); }
.driving-country-list { color:var(--ink) !important; }
.driving-areas-panel .driving-warning { background:#fff4ef; border-radius:4px; color:#a84125; font-weight:700; margin:18px 0 14px; padding:12px 14px; }
.driving-areas-panel .driving-conditions { border-top:1px solid var(--line); font-size:13px; margin-top:20px; padding-top:16px; }
@media (max-width:650px) {
  .locations-hero { padding:48px 0 44px; }
  .locations-content { padding-top:40px; }
  .locations-section-heading { align-items:flex-start; flex-direction:column; gap:14px; }
  .location-grid { grid-template-columns:1fr; }
  .driving-areas { padding-bottom:48px; }
  .driving-areas-panel { padding:23px 20px; }
}
