/* REV_14 — Lake Garda Weather and Lake Garda Ferries & Boats. Site tokens: --ink, --muted, --accent, --paper, --line. */
.r14{--wx-rain:#2f6f96;--wx-line:#18384a;--wx-area:rgba(24,56,74,.07);--ok:#3e6b46;--ok-bg:#eef5ef;--y:#8a6a00;--y-bg:#fff6d6;--o:#9a4a07;--o-bg:#fde9d8;--r:#9b2318;--r-bg:#fbe3e0}
.r14 h2{font:clamp(26px,2.6vw,34px)/1.22 Georgia,serif;font-weight:400;letter-spacing:-.01em;margin:0 0 14px}
.r14 h3{font:21px/1.3 Georgia,serif;font-weight:400;margin:0 0 10px}
.r14 h4{font:17px/1.3 Georgia,serif;font-weight:400;margin:0 0 6px}
.r14-hero{margin:0 0 28px;position:relative}
.r14-hero img{display:block;width:100%;height:clamp(220px,36vw,460px);object-fit:cover}
.r14-hero figcaption{font-size:13px;line-height:1.5;color:var(--muted);padding:6px 0 0}
.r14-lead{max-width:780px;font-size:18px;color:#2e495a;margin:0 0 24px}
.r14-eyebrow{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 6px;font-weight:600}
.r14-plan{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:34px 0 8px;padding:0;list-style:none}
.r14-plan a{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 16px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:16px}
.r14-plan a:hover{border-color:#83949b;background:#fbfaf7}
.r14-plan svg{flex:none;color:var(--accent)}
.r14-planh{font:20px/1.3 Georgia,serif;margin:42px 0 0}
.r14-noscript{padding:14px 16px;background:#fbf6ea;border-inline-start:3px solid #98701f}
.r14-sources{font-size:14px;line-height:1.6;color:var(--muted);border-top:1px solid var(--line);margin-top:28px;padding-top:14px}
.r14-sources a{color:var(--ink)}
.r14-legend{display:grid;gap:6px;margin:0;padding:0;list-style:none;font-size:15px;color:#2e495a}
.r14-legend li{display:flex;gap:10px;align-items:baseline}
.wx-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none;transform:translateY(1px);margin-inline-end:6px}
.wx-dot.model{background:#c8902b}.wx-dot.fc{background:#2f6f96}.wx-dot.al{background:#9b2318}.wx-dot.obs{background:#fff;border:1.5px solid #83949b}
/* ---- Weather ---- */
#ddc-weather{min-height:240px}
.wx-status{padding:24px 0;color:var(--muted)}
.wx-now{background:#fff;border:1px solid var(--line);padding:24px 26px 18px;margin:0 0 30px}
.wx-kicker{margin:0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:600}
.wx-now h2{margin:2px 0 10px}
.wx-now-main{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.wx-now-temp{font:clamp(56px,7vw,78px)/1 Georgia,serif;margin:0;letter-spacing:-.02em}
.wx-now-sym{margin:4px 0 0;font-size:18px}
.wx-now-feels{margin:0;color:var(--muted);font-size:15px}
.wx-stats{display:flex;flex-wrap:wrap;gap:8px 28px;margin:16px 0 8px}
.wx-stat dt{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.wx-stat dd{margin:0;font-size:17px}
.wx-wind{display:inline-flex;align-items:center;gap:6px}
.wx-arrow{color:var(--ink);flex:none}
.wx-muted{color:var(--muted)}
.wx-small,.wx-tiny{font-size:14px;line-height:1.6}
.wx-tiny{font-size:12.5px;margin:2px 0 0}
.wx-badge{display:inline-flex;align-items:center;margin:8px 0 0;font-size:13px;color:#5a6b74;padding:3px 10px;background:var(--paper);border:1px solid var(--line)}
.wx-stale{padding:12px 14px;background:#fbf6ea;border-inline-start:3px solid #98701f;margin:8px 0}
.wx-block{margin:-14px 0 26px}
.wx-sec{margin:0 0 34px}
.wx-chartwrap{margin:0;position:relative;overflow-x:auto;background:#fff;border:1px solid var(--line);padding:12px 10px 6px}
.wx-chart{display:block;width:100%;min-width:620px;height:auto;touch-action:pan-x}
.wx-chartwrap figcaption{font-size:13px;color:var(--muted);padding:4px 4px 2px}
.wx-grid line{stroke:#e3e6e2;stroke-width:1}
.wx-grid .wx-midnight{stroke:#c9cfcb;stroke-dasharray:3 4}
.wx-grid text,.wx-ylab{font-size:12px;fill:#5a6b74;font-family:system-ui,sans-serif}
.wx-grid .wx-daylab{font-weight:600;fill:#2e495a}
.wx-line{fill:none;stroke:var(--wx-line);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.wx-area{fill:var(--wx-area)}
.wx-bars rect{fill:var(--wx-rain)}
.wx-bars .wx-base{stroke:#c9cfcb}
.wx-cross{stroke:#83949b;stroke-width:1}
.wx-hdot{fill:var(--wx-line);stroke:#fff;stroke-width:2}
.wx-tip{position:absolute;top:10px;width:170px;padding:8px 10px;background:#fff;border:1px solid #c9cfcb;box-shadow:0 6px 18px rgba(24,56,74,.12);font-size:13px;line-height:1.5;pointer-events:none}
.wx-strip{display:flex;gap:2px;overflow-x:auto;list-style:none;margin:10px 0 0;padding:0 0 8px;scroll-snap-type:x proximity}
.wx-strip li{flex:0 0 72px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;background:#fff;border:1px solid var(--line);scroll-snap-align:start;font-size:14px}
.wx-strip .wx-h{font-size:12.5px;color:var(--muted);display:flex;flex-direction:column;align-items:center;line-height:1.3}
.wx-strip .wx-h b{color:var(--ink);font-weight:600}
.wx-strip .wx-t{font-size:17px}
.wx-strip .wx-p{font-size:12px;color:var(--muted)}
.wx-strip .wx-p.wet,.wx-dmeta .wet{color:var(--wx-rain);font-weight:600}
.wx-strip .wx-w{display:flex;align-items:center;gap:2px;font-size:12px;color:var(--muted)}
.wx-more summary{display:inline-flex;align-items:center;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:4px;font-size:15px}
.wx-table,.wx-alert-table{border-collapse:collapse;width:100%;font-size:14px;background:#fff}
.wx-table caption{text-align:start;font-size:13px;color:var(--muted);padding:4px 0}
.wx-table th,.wx-table td,.wx-alert-table th,.wx-alert-table td{text-align:start;padding:6px 8px;border-bottom:1px solid var(--line)}
.wx-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px;list-style:none;margin:0;padding:0}
.wx-day{background:#fff;border:1px solid var(--line);padding:14px 12px 12px;display:flex;flex-direction:column;align-items:center;text-align:center}
.wx-day p{margin:0}
.wx-dname{font-size:15px}.wx-dname span{color:var(--muted);font-size:13px}
.wx-dsym{font-size:13px;color:var(--muted);min-height:2.6em;line-height:1.3}
.wx-range{display:flex;align-items:center;gap:6px;width:100%;margin:6px 0 4px!important;font-size:16px}
.wx-min{color:var(--muted)}
.wx-max{font-weight:600}
.wx-bar{position:relative;flex:1;height:6px;background:#edf0ee;border-radius:3px}
.wx-bar i{position:absolute;top:0;bottom:0;border-radius:3px;background:linear-gradient(90deg,#6a93ab,#c8902b)}
.wx-dmeta{font-size:13px;line-height:1.5;color:#2e495a}
.wx-dsun{font-size:12.5px;color:var(--muted);margin-top:4px!important}
.wx-two{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:24px;align-items:start;margin-bottom:12px}
.wx-two>.wx-sec{margin:0}
.wx-card{background:#fff;border:1px solid var(--line);padding:18px 20px;margin:0 0 14px}
.wx-sun{margin-top:52px}
.wx-lv{display:inline-flex;align-items:center;gap:7px;font-size:14px;padding:2px 10px 2px 8px;border:1px solid transparent;white-space:nowrap}
.wx-lvdot{width:9px;height:9px;border-radius:50%;background:currentColor}
.wx-lv.none{color:var(--ok);background:var(--ok-bg);border-color:#cfe0d1}
.wx-lv.yellow{color:var(--y);background:var(--y-bg);border-color:#ecd98f}
.wx-lv.orange{color:var(--o);background:var(--o-bg);border-color:#efc3a0}
.wx-lv.red{color:var(--r);background:var(--r-bg);border-color:#eab3ac}
.wx-ma{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.wx-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin:12px 0 0;font-size:15px}
.wx-links a{min-height:32px;display:inline-flex;align-items:center}
.wx-foot{border-top:1px solid var(--line);padding-top:12px;margin-top:8px;color:var(--muted)}
.wx-foot p{margin:4px 0}
.wx-cam{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:0;background:#fff;border:1px solid var(--line);margin:26px 0 0;text-decoration:none;color:var(--ink)}
.wx-cam img{width:100%;height:100%;min-height:180px;object-fit:cover;display:block}
.wx-cam div{padding:20px 22px}
.wx-cam p{margin:4px 0}
.wx-cam .button{margin-top:10px}
/* ---- Ferries ---- */
#ddc-ferries{min-height:260px}
.fx-status{padding:24px 0;color:var(--muted)}
.fx-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:28px;align-items:start}
.fx-planner{background:#fff;border:1px solid var(--line);padding:22px 22px 10px}
.fx-form{display:flex;flex-wrap:wrap;gap:14px 20px;margin:0 0 16px}
.fx-field{display:flex;flex-direction:column;gap:4px;font-size:13px;letter-spacing:.04em;color:var(--muted)}
.fx-field input,.fx-field select{min-height:46px;min-width:220px;padding:8px 12px;border:1px solid #83949b;background:#fff;color:var(--ink);font-size:16px;letter-spacing:0}
.fx-banner{padding:12px 14px;margin:0 0 16px;border-inline-start:3px solid #83949b;background:var(--paper);font-size:15.5px}
.fx-banner.ok{border-color:#3e6b46;background:#eef5ef}
.fx-banner.winter{border-color:#2f6f96;background:#eaf2f7}
.fx-banner.warn{border-color:#98701f;background:#fbf6ea}
.fx-banner.muted{color:var(--muted)}
.fx-banner a{display:inline-block;margin-top:4px}
.fx-block{margin:0 0 22px}
.fx-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.fx-item{display:grid;grid-template-columns:auto auto auto 1fr;gap:4px 14px;align-items:start;padding:12px 14px;border:1px solid var(--line);background:#fcfcfa}
.fx-item.is-rapid{border-inline-start:3px solid #c8902b}
.fx-time{display:flex;flex-direction:column;min-width:58px}
.fx-time strong{font:22px/1.2 Georgia,serif;font-weight:400}
.fx-lab{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.fx-arrow{padding-top:18px;color:var(--muted)}
.fx-body p{margin:0}
.fx-to{font-size:17px;font-weight:600}
.fx-meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:13px;color:var(--muted);margin:2px 0!important}
.fx-via{font-size:13px;color:var(--muted)}
.fx-run{font-variant-numeric:tabular-nums}
.fx-badge{display:inline-block;padding:1px 8px;font-size:12px;border:1px solid #c9cfcb;background:var(--paper);margin-inline-start:6px;color:var(--ink)}
.fx-badge.rapid{border-color:#d9b46a;background:#fbf3e2;color:#6b4f12;margin:0}
.fx-check{display:inline-flex;align-items:center;min-height:36px;font-size:14px}
.fx-muted{color:var(--muted)}
.fx-small{font-size:13.5px;line-height:1.6;color:var(--muted)}
.fx-ferry{border-top:1px solid var(--line);padding-top:16px}
.fx-fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fx-ftimes{list-style:none;margin:0;padding:0;columns:2;column-gap:14px;font-size:15px}
.fx-ftimes li{padding:3px 0;break-inside:avoid}
.fx-side .fx-block{background:#fff;border:1px solid var(--line);padding:18px 18px 8px}
.fx-seasons{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fx-seasons li{padding:10px 12px;border:1px solid var(--line);background:#fcfcfa}
.fx-seasons li.is-current{border-color:#83949b;background:#f3f5f2}
.fx-seasons li.is-next{border-style:dashed;color:var(--muted)}
.fx-seasons p{margin:0}
.fx-sname{font-weight:600;display:flex;flex-wrap:wrap;align-items:center;gap:4px}
.fx-sdates{font-size:14px;color:var(--muted)}
.fx-slinks{font-size:13.5px}
.fx-slinks a{display:inline-block;margin:2px 0}
.fx-notices{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:8px;font-size:14.5px}
.fx-source{font-size:13.5px;color:var(--muted);margin:18px 0 0}
.r14-guide{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:8px 0 0}
.r14-guide article{background:#fff;border:1px solid var(--line);padding:18px 20px}
.r14-guide p,.r14-guide ul{margin:6px 0;font-size:15.5px}
.r14-guide ul{padding-inline-start:20px}
.r14-guide figure{margin:0 0 10px}
.r14-guide figure img{width:100%;height:180px;object-fit:cover;display:block}
.r14-guide figcaption{font-size:12.5px;color:var(--muted);padding-top:4px}
/* RTL */
[dir="rtl"] .wx-bar i{background:linear-gradient(270deg,#6a93ab,#c8902b)}
[dir="rtl"] .wx-chartwrap{direction:ltr}
[dir="rtl"] .wx-tip{direction:rtl}
/* Mobile */
@media (max-width:900px){.wx-two,.fx-layout{grid-template-columns:1fr}.wx-sun{margin-top:0}}
@media (max-width:640px){
  .wx-now{padding:18px 16px 14px}
  .wx-days{grid-template-columns:1fr 1fr}
  .wx-cam{grid-template-columns:1fr}
  .fx-planner{padding:16px 14px 6px}
  .fx-field,.fx-field input,.fx-field select{width:100%;min-width:0}
  .fx-form{flex-direction:column}
  .fx-item{grid-template-columns:auto auto auto;}
  .fx-item .fx-body{grid-column:1/-1}
  .fx-fgrid{grid-template-columns:1fr}
  .wx-alert-table th,.wx-alert-table td{padding:6px 4px}
  .wx-lv{white-space:normal}
}
/* ---- A4 print: Weekly Weather Forecast ---- */
.wx-print{max-width:190mm;margin:0 auto;padding:10mm 0}
.wx-print-head{display:flex;align-items:center;gap:14px;margin-bottom:8px}
.wx-print-head img{width:64px;height:64px}
.wx-print-head h1{font:30px/1.15 Georgia,serif;margin:0;color:#18384a}
.wx-print-head p{margin:2px 0 0;letter-spacing:.16em;text-transform:uppercase;font-size:12px;color:#405968}
.wx-print .r14-hero img{height:58mm}
.wx-print .wx-days{grid-template-columns:repeat(7,1fr);gap:6px}
.wx-print .wx-day{padding:10px 6px}
.wx-print .wx-dsym{min-height:3.4em}
.wx-print-tools{display:flex;gap:12px;margin:0 0 14px}
.wx-print .wx-issued{margin-top:10px}
@media print{
  @page{size:A4 portrait;margin:12mm}
  body{background:#fff}
  .site-header,.footer,.skip,.wx-print-tools,dialog{display:none!important}
  .wx-print{padding:0;max-width:none}
  .wx-day,.wx-card{break-inside:avoid}
  a{text-decoration:none}
}
main[data-page="/lake-garda-weather/weekly-forecast/"] .page-heading{display:none}
.wx-print .wx-sec h2{font-size:22px;margin:4px 0 8px}
.wx-print .wx-day{font-size:13px}
.wx-print .wx-dname{font-size:13px}
.wx-print .wx-dmeta{font-size:12px}
.wx-print .wx-range{font-size:14px;gap:3px}
.wx-print .wx-tiny{display:none}
.fx-alt{margin:8px 0 0;padding-top:8px;border-top:1px solid rgba(47,111,150,.25);font-size:15px}
