:root {
  --ink: #17334a;
  --muted: #527083;
  --blue: #237fa3;
  --blue-deep: #145b79;
  --navy: #103d59;
  --sun: #ffe477;
  --green: #189b6f;
  --pale: #e9f4f8;
  --glass: rgba(248,252,255,.78);
  --glass-bright: rgba(255,255,255,.91);
  --line: rgba(255,255,255,.8);
  --shadow: 0 16px 42px rgba(17,63,90,.13);
  --round: 23px;
  --max: 1170px;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; scroll-padding-top: 115px; }
body {
  margin: 0;
  color: var(--ink);
  font: 16px/1.58 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background: #e6f4f8;
  min-width: 310px;
}
body::before {
  position: fixed;
  inset: 0;
  z-index: -1;
  content: "";
  background:
    radial-gradient(ellipse at 6% 0%,rgba(79,172,203,.3),transparent 47%),
    radial-gradient(ellipse at 92% 50%,rgba(49,158,126,.2),transparent 40%),
    linear-gradient(145deg,rgba(231,246,250,.87),rgba(223,242,248,.91)),
    url('/assets/glebokie-wide.jpg') center/cover no-repeat;
  background-attachment: fixed;
}
a { color: var(--blue-deep); }
img { max-width: 100%; }
.wrap { width: min(var(--max), calc(100% - 34px)); margin: auto; }
.glass {
  background: var(--glass);
  border: 1px solid var(--line);
  border-radius: var(--round);
  box-shadow: var(--shadow);
  backdrop-filter: blur(11px);
  -webkit-backdrop-filter: blur(11px);
}
.topline {
  background: linear-gradient(90deg,#113d57,#0f6280);
  color: white;
  font-size: .84rem;
}
.topline-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 39px;
}
.topline a { color: white; text-decoration: none; font-weight: 700; }
.topline a { color: var(--sun); text-decoration: underline; text-underline-offset: 3px; }
.languages { display: flex; flex-wrap: wrap; gap: 3px; }
.languages a {
  border-radius: 6px;
  padding: 2px 7px;
  color: #e2f5fa;
  font-weight: 750;
}
.languages a.active { background: rgba(255,255,255,.2); color: #fff; }
.site-navigation { position: sticky; top: 0; z-index: 30; padding: 9px 0; }
.menu {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 14px;
  background: rgba(253,255,255,.93);
  border-radius: 17px;
  border: 1px solid #fff;
  box-shadow: 0 8px 24px rgba(26,81,108,.13);
  backdrop-filter: blur(14px);
}
.menu-brand { display: flex; align-items: center; gap: 9px; min-width: 192px; text-decoration: none; }
.menu-brand img { width: 49px; height: 49px; object-fit: contain; border-radius: 50%; }
.menu-brand span { font-weight: 900; font-size: .78rem; line-height: 1.2; letter-spacing: .015em; }
.menu-brand small { display: block; color: var(--blue); font-size: .72rem; }
.menu-list { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 2px; }
.menu-list a,.menu-dropdown summary {
  display: inline-flex; align-items: center; min-height: 38px;
  padding: 7px 10px; color: var(--ink); text-decoration: none;
  border-radius: 9px; font-size: .78rem; font-weight: 850; cursor: pointer;
}
.menu-list a:hover,.menu-dropdown summary:hover,.menu-list .active { background: #dff2f7; color: var(--blue-deep); }
.menu-dropdown { position: relative; }
.menu-dropdown summary { list-style: none; }
.menu-dropdown summary::-webkit-details-marker { display: none; }
.menu-dropdown summary::after { content: "⌄"; margin-left: 5px; font-size: 1rem; }
.menu-dropdown[open] .submenu {
  position: absolute; top: 40px; right: 0; z-index: 40;
  min-width: 225px; padding: 8px; display: grid;
  background: #f8fdff; border: 1px solid #c4e7f2; border-radius: 12px;
  box-shadow: var(--shadow);
}
.submenu a { width: 100%; white-space: nowrap; }
.menu-toggle { display: none; border: 0; background: var(--blue); color: white; border-radius: 10px; padding: 8px 13px; font-weight: 850; cursor: pointer; }
.hero { padding: 24px 0 17px; }
.hero-content { display: grid; grid-template-columns: 125px minmax(0,1fr) 240px; align-items: center; gap: 22px; padding: 27px 31px; }
.hero-logo { width: 125px; height: 125px; object-fit: contain; filter: drop-shadow(0 7px 13px rgba(22,70,90,.16)); }
.eyebrow { text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; color: var(--blue); font-weight: 900; margin: 0 0 9px; }
h1,h2,h3 { line-height: 1.18; }
h1 { font-size: clamp(2rem,4.1vw,3.55rem); letter-spacing: -.045em; margin: 0 0 14px; }
.lead { font-size: clamp(1rem,1.65vw,1.13rem); color: var(--muted); margin: 0; }
.hero-heritage {display:flex;flex-direction:column;justify-content:center;align-self:stretch;gap:10px;background:linear-gradient(145deg,#0e4d70,#147995);border:1px solid rgba(255,255,255,.25);border-radius:17px;color:#fff;padding:20px 19px;}
.hero-heritage-label {font-size:.73rem;line-height:1.45;letter-spacing:.09em;text-transform:uppercase;font-weight:950;color:#ffe077;}
.hero-heritage strong {font-size:clamp(1.03rem,1.55vw,1.32rem);line-height:1.35;}
.hero-heritage small {color:#dbf2fa;font-size:.77rem;line-height:1.5;}
.hero-season-row {grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:23px;padding:21px 23px;border:1px solid #cce4ea;border-radius:16px;background:linear-gradient(110deg,#e4f4f9,#fff7de);}
.hero-season-date {min-width:0;}
.hero-season-kicker {display:block;font-weight:900;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;color:#216b89;margin-bottom:4px;}
.hero-season-date > strong {display:block;font-size:clamp(1.24rem,2.35vw,1.75rem);color:#133f59;line-height:1.2;}
.hero-season-date .countdown-label-lead {margin:8px 0 7px;color:#466778;line-height:1.5;font-size:.9rem;}
.hero-season-date a {color:#0d6988;font-weight:850;font-size:.86rem;text-underline-offset:3px;}
.hero-counter {justify-self:end;min-width:0;}
.season-countdown-title {display:block;text-align:center;color:#194d68;font-weight:900;font-size:.82rem;}
.hero-counter .countdown {margin-top:9px;justify-content:center;}
.hero-counter .count-item {min-width:76px;padding:10px 12px;border:1px solid #dcebef;box-shadow:0 3px 10px rgba(23,68,95,.05);}
.wide-banner { display: block; border-radius: 19px; overflow: hidden; box-shadow: var(--shadow); margin-top: 15px; }
.wide-banner img { display: block; width: 100%; height: auto; }
.actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 0; }
.btn { display: inline-flex; gap: 8px; justify-content: center; align-items: center; padding: 12px 18px; background: var(--blue); color: white; text-decoration: none; font-weight: 850; font-size: .89rem; border-radius: 11px; box-shadow: 0 7px 15px rgba(22,95,124,.16); border: 0; cursor: pointer; }
.btn:hover { background: var(--blue-deep); color: white; }
.btn.green { background: var(--green); }
.btn.green:hover { background: #087d56; }
.btn.secondary { color: var(--blue-deep); background: #fff; border: 1px solid #bcdfe8; }
.btn.secondary:hover { background: #e6f5fa; }
.section { margin: 21px 0; padding: 29px clamp(17px,3.4vw,36px); }
.section-heading { margin-bottom: 20px; }
.section-heading h2,.inner-title { font-size: clamp(1.55rem,3vw,2.35rem); letter-spacing: -.025em; margin: 0 0 8px; }
.section-heading p { margin: 0; color: var(--muted); max-width: 780px; }
.feature-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; }
.feature { border-radius: 16px; background: rgba(255,255,255,.7); border: 1px solid #d6edf3; padding: 19px; }
.feature-icon { display: block; font-size: 1.7rem; margin-bottom: 9px; }
.feature h3 { margin: 0 0 7px; font-size: .99rem; }
.feature p { margin: 0; font-size: .87rem; color: var(--muted); }
.section-split { display: grid; grid-template-columns: 1.12fr .88fr; gap: 22px; }
.highlight-box { padding: 20px; border-radius: 17px; background: #e8f7f6; border: 1px solid #cce9e2; }
.highlight-box h3 { margin-top: 0; }
.highlight-box ul { margin: 0; padding-left: 20px; }
.notice { border-left: 5px solid #e5a13f; background: #fff8e7; padding: 15px 19px; border-radius: 9px; margin: 16px 0; font-size: .94rem; }
.countdown { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.count-item { min-width: 84px; background: white; text-align: center; padding: 12px; border-radius: 11px; }
.count-item strong { display: block; font-size: 1.75rem; line-height: 1.1; font-variant-numeric: tabular-nums; color: var(--blue-deep); }
.count-item span { display: block; font-size: .74rem; color: var(--muted); }
.sup-showcase {display:grid;grid-template-columns:155px minmax(0,1fr);gap:22px;align-items:center;margin:16px 0 24px;padding:clamp(18px,3vw,26px);background:linear-gradient(110deg,#115573,#177b99);border:1px solid rgba(255,255,255,.25);border-radius:18px;color:#fff;box-shadow:0 13px 25px rgba(8,76,112,.12);}
.sup-showcase-stat {display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:140px;border-radius:15px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.23);text-align:center;}
.sup-showcase-stat strong {font-size:clamp(3rem,5vw,4.1rem);line-height:1;color:#ffe079;letter-spacing:-.06em;}
.sup-showcase-stat span {margin-top:7px;font-size:.84rem;line-height:1.4;font-weight:850;color:#e8f8ff;}
.sup-showcase-copy {min-width:0;}
.sup-showcase-copy .sup-showcase-kicker {color:#ffe079;font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;font-weight:900;margin:0 0 6px;}
.sup-showcase-copy h3 {color:#fff;font-size:clamp(1.25rem,2vw,1.65rem);margin:0 0 8px;}
.sup-showcase-copy p:not(.sup-showcase-kicker) {color:#e5f4fa;font-size:.91rem;line-height:1.55;margin:0 0 13px;}
.sup-showcase-tags {display:flex;flex-wrap:wrap;gap:7px;}
.sup-showcase-tags span {display:inline-flex;align-items:center;padding:5px 10px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);border-radius:20px;color:#fff;font-weight:750;font-size:.75rem;}
.category-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 7px 0 18px; }
.category-tabs button { padding: 9px 17px; border-radius: 30px; border: 1px solid #b8dfe9; background: white; color: var(--blue-deep); font: inherit; font-weight: 800; cursor: pointer; }
.category-tabs button.selected { color: #fff; background: var(--blue-deep); }
.equipment-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.equipment-card { min-width: 0; display: block; text-align: left; width: 100%; padding: 0; background: white; border: 1px solid #d5ebf2; border-radius: 16px; overflow: hidden; cursor: pointer; color: var(--ink); box-shadow: 0 8px 22px rgba(28,86,112,.08); transition: transform .15s, box-shadow .15s; }
.equipment-card:hover { transform: translateY(-3px); box-shadow: 0 15px 30px rgba(28,86,112,.16); }
.equipment-card img { display: block; width: 100%; aspect-ratio: 1/1; object-fit: cover; }
.equipment-caption { display: block; padding: 12px 13px 14px; }
.equipment-caption small { display: block; color: var(--blue); font-size: .71rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 900; }
.equipment-caption strong { display: block; font-size: .92rem; margin-top: 4px; line-height: 1.35; }
.price-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 15px; overflow: hidden; font-variant-numeric: tabular-nums; }
.price-table th { text-align: left; color: #fff; background: #145c78; }
.price-table th,.price-table td { padding: 13px 15px; border-bottom: 1px solid #dfecf1; }
.price-table tbody tr:nth-child(even) { background: #f1f9fb; }
.price-table td:not(:first-child),.price-table th:not(:first-child) { text-align: center; white-space: nowrap; }
.price-table td:first-child { font-weight: 750; }
.price-wrap { overflow-x: auto; border-radius: 15px; max-width: 960px; margin: 0 auto; }
.price-poster { width: min(100%,1000px); margin: 0 auto; padding: clamp(16px,3vw,30px); border-radius: 20px; background: #fff; border: 2px solid #163c63; box-shadow: 0 18px 34px rgba(13,53,81,.11); }
.price-poster-header { display: flex; align-items: center; justify-content: center; gap: 24px; text-align: center; padding: 7px 0 22px; }
.price-poster-header img { width: 95px; flex: 0 0 95px; border-radius: 50%; }
.price-poster-title .kicker { display:block; color: #0f7090; font-size: .78rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.price-poster-title h2 { font-size: clamp(1.45rem,3.1vw,2.35rem); margin: 5px 0; color: #0c3554; }
.price-poster-title p { margin: 0; color: #42647b; font-weight: 750; }
.price-poster .price-table { border: 1px solid #d9e8ee; }
.price-poster .price-table th { background: #103d64; }
.price-poster-alert { margin: 19px auto 10px; max-width: 960px; padding: 15px 19px; background: #a92127; color: white; border-radius: 12px; text-align: center; }
.price-poster-alert strong { display:block; text-transform: uppercase; letter-spacing: .07em; }
.price-poster-alert p { margin: 2px 0 0; font-weight: 800; }
.price-poster .included { margin: 14px 0 0; text-align: center; font-size: .87rem; font-weight: 850; color:#1c5a76; }
.weather-layout { display: block; width: 100%; min-width: 0; }
.weather-box { background: #104e6a; color: white; border-radius: 17px; padding: 19px; min-width: 0; width: 100%; overflow: hidden; }
.weather-box h3 { margin: 0 0 5px; font-size: 1.1rem; color: var(--sun); }
.weather-current { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; align-items: center; margin: 12px 0; }
.weather-temp { font-size: 2.3rem; font-weight: 900; color: var(--sun); }
.weather-summary { color: #d6f2f9; font-size: .85rem; }
.hourly { display: flex; max-width: 100%; min-width: 0; gap: 8px; overflow-x: auto; padding: 7px 2px 12px; scrollbar-color: #92bbcc transparent; overscroll-behavior-inline: contain; }
.hour { flex: 0 0 78px; text-align: center; background: rgba(255,255,255,.1); border-radius: 12px; padding: 10px 5px; font-size: .76rem; }
.hour .wx { display: block; font-size: 1.55rem; margin: 5px 0; }
.hour strong { color: var(--sun); }
.day-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
.day { border-radius: 10px; padding: 9px; background: rgba(255,255,255,.1); font-size: .76rem; }
.day strong { display: block; color: var(--sun); }
.weather-radar-section {margin-top:20px;padding:clamp(17px,3vw,27px);border-radius:17px;background:#f6fbfd;border:1px solid #cee6ee;min-width:0;}
.weather-radar-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:19px;}
.weather-radar-heading h3 {font-size:clamp(1.2rem,2.2vw,1.65rem);margin:3px 0 7px;color:var(--navy);}
.weather-radar-heading p {margin:0;color:var(--muted);font-size:.91rem;max-width:700px;}
.weather-radar-kicker {color:#17799a;text-transform:uppercase;letter-spacing:.1em;font-size:.73rem;font-weight:900;}
.weather-radar-section h4 {margin:0 0 12px;color:var(--navy);font-size:1rem;}
.rain-hours {display:flex;gap:8px;max-width:100%;overflow-x:auto;padding:5px 2px 14px;scrollbar-color:#9dc7d5 transparent;}
.rain-hour {flex:0 0 82px;padding:12px 8px;background:white;border:1px solid #d7e9f0;border-radius:12px;text-align:center;font-size:.76rem;}
.rain-hour strong {display:block;color:#173f5d;font-size:.88rem;}
.rain-hour .rain-track {display:flex;align-items:flex-end;justify-content:center;height:52px;margin:9px auto;width:35px;background:#eaf3f7;border-radius:6px;overflow:hidden;}
.rain-hour .rain-fill {width:100%;height:var(--rain-prob,0%);background:linear-gradient(0deg,#176caa,#51b7cd);border-radius:5px 5px 0 0;}
.rain-hour .rain-value {display:block;color:#1a668e;font-weight:900;}
.rain-hour small {display:block;color:#527083;}
.weather-radar-info {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:12px;border-top:1px solid #dcecf1;color:#537387;font-size:.78rem;}
.radar-direct {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-top:17px;padding:19px;border:1px solid #cbe3eb;border-radius:14px;background:linear-gradient(110deg,#dfeff6,#f4fbfe);}
.radar-direct > div {flex:1 1 300px;min-width:0;}
.radar-direct strong {display:block;color:#163f5b;font-size:1.05rem;margin:3px 0 5px;}
.radar-direct p {margin:0;color:#526d7d;line-height:1.5;font-size:.87rem;}
.radar-direct .btn {flex:0 1 auto;}
.imgw-alert {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:clamp(16px,3vw,25px);margin:0 0 22px;background:linear-gradient(115deg,#fff0b6,#fff9e5);border:2px solid #d99a18;border-left:7px solid #c46a07;border-radius:15px;color:#4c350b;box-shadow:0 7px 17px rgba(116,76,8,.07);}
.imgw-alert-copy {display:flex;flex:1 1 430px;align-items:flex-start;gap:14px;min-width:0;}
.imgw-alert-icon {flex:none;font-size:2.15rem;line-height:1.2;}
.imgw-alert h3 {color:#573503;font-size:clamp(1.08rem,2vw,1.32rem);margin:0 0 5px;}
.imgw-alert-status {color:#67430b;font-weight:850;margin:0 0 8px;}
.imgw-alert small {display:block;color:#6b511d;line-height:1.5;max-width:750px;}
.imgw-alert-actions {display:flex;flex-direction:column;gap:9px;align-items:center;flex:0 1 230px;text-align:center;}
.imgw-alert-button {background:#9d3418!important;color:#fff!important;border-color:#9d3418!important;white-space:normal;text-align:center;}
.imgw-alert-more {color:#63430e;font-size:.85rem;font-weight:850;text-underline-offset:3px;}
.weather-sources {scroll-margin-top:110px;}
.weather-provider-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;}
.weather-provider {display:flex;flex-direction:column;min-width:0;min-height:230px;padding:21px;border:1px solid #d0e5ed;border-radius:16px;background:#f5fbfd;color:#143f5b;text-decoration:none;box-shadow:0 7px 18px rgba(10,60,85,.06);transition:transform .15s,box-shadow .15s;}
.weather-provider:hover {transform:translateY(-3px);box-shadow:0 12px 26px rgba(10,60,85,.12);}
.weather-provider.is-featured {grid-column:span 2;background:linear-gradient(120deg,#114f70,#137f97);border-color:#14708d;color:#fff;}
.weather-provider.is-warning {background:#fff5dc;border-color:#e3b34b;}
.weather-provider-icon {font-size:1.9rem;line-height:1.25;margin-bottom:12px;}
.weather-provider-kind {color:#24718d;font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;}
.weather-provider.is-featured .weather-provider-kind {color:#ffe077;}
.weather-provider.is-warning .weather-provider-kind {color:#93620a;}
.weather-provider h3 {font-size:clamp(1.2rem,1.7vw,1.52rem);margin:7px 0 8px;color:inherit;}
.weather-provider p {font-size:.89rem;line-height:1.5;margin:0 0 18px;color:#4a687a;}
.weather-provider.is-featured p {color:#e2f1f8;}
.weather-provider-link {display:block;margin-top:auto;font-size:.89rem;font-weight:900;color:#0e6486;text-decoration:underline;text-underline-offset:4px;}
.weather-provider.is-featured .weather-provider-link {color:#ffe077;}
.weather-provider.is-warning .weather-provider-link {color:#935d09;}
.mini-note { font-size: .83rem; color: var(--muted); margin: 12px 0 0; }
.faq-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.faq-grid details { background: #fff; border: 1px solid #d4ebf1; border-radius: 12px; padding: 14px 17px; }
.faq-grid summary { cursor: pointer; font-weight: 850; }
.faq-grid p { font-size: .89rem; color: var(--muted); margin-bottom: 0; }
.contact-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 17px; }
.contact-map { border-radius: 14px; overflow: hidden; min-height: 320px; background: #d3e8ec; }
.contact-map iframe { width: 100%; height: 100%; min-height: 320px; border: 0; }
.partner-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.partner-card { position: relative; display: block; overflow: hidden; border-radius: 13px; border: 1px solid #c9e5ef; background: #fff; }
.partner-card img { display: block; width: 100%; aspect-ratio: 2.55/1; object-fit: cover; transition: transform .2s; }
.partner-card:hover img { transform: scale(1.025); }
.partner-card span { display: block; padding: 8px 12px; font-weight: 800; font-size: .83rem; }
.social-strip { display: flex; gap: 17px; justify-content: space-between; align-items: center; background: linear-gradient(120deg,#e4f5fc,#e9faf2); border-radius: 16px; padding: 22px; margin: 19px 0; }
.social-strip h3 { margin: 0 0 5px; }
.social-strip p { margin: 0; color: var(--muted); }
.wide-partner { margin-top: 16px; }
.wide-partner img { width: 100%; height: auto; display: block; border-radius: 15px; }
.inner-intro { position: relative; isolation: isolate; overflow: hidden; padding: clamp(22px,4vw,40px); margin: 26px 0 21px; border-radius: 21px; border: 1px solid rgba(255,255,255,.5); background: linear-gradient(110deg,#0d3955,#176f8e); color: white; box-shadow: var(--shadow); }
.inner-intro::after { content: ''; pointer-events:none; position:absolute; z-index:-1; width:360px; height:360px; border-radius:50%; right:-130px; top:-240px; background:rgba(255,228,119,.14); }
.breadcrumb { font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 850; color: var(--sun); margin: 0 0 12px; }
.breadcrumb a { color: var(--sun); text-underline-offset: 3px; }
.inner-intro h1 { font-size: clamp(1.8rem,3.8vw,3rem); color:white; margin-bottom: 0; }
.inner-intro .lead { margin-top: 10px; color:#e6f4f9; }
.legacy-content { padding: 30px clamp(17px,3.7vw,44px); background:rgba(255,255,255,.93); overflow-wrap: anywhere; font-size:1rem; line-height:1.72; }
.legacy-content h1,.legacy-content h2,.legacy-content h3,.legacy-content h4 { color:var(--blue-deep); line-height:1.3; margin:28px 0 13px; overflow-wrap:normal; }
.legacy-content h1 {font-size:clamp(1.55rem,2.9vw,2.15rem);}
.legacy-content h2 {font-size:clamp(1.35rem,2.5vw,1.8rem);}
.legacy-content h3 {font-size:clamp(1.18rem,2vw,1.45rem);}
.legacy-content h4 {font-size:1.08rem;}
.legacy-content h5,.legacy-content h6 {color:#48697d;line-height:1.4;}
.legacy-content p { margin: 16px 0; }
.legacy-content :is(ul,ol) {padding-left:clamp(22px,4vw,38px);margin:17px 0 24px;}
.legacy-content li {margin:0 0 10px;padding-left:4px;}
.legacy-content hr {border:0;border-top:2px solid #d8e9f0;margin:32px auto;}
.legacy-content img { display:block; width:auto; height:auto; max-width:100%; border-radius:10px; margin:12px auto 21px; object-fit:contain; }
.legacy-content :is(p,h1,h2,h3):has(img) { display:flow-root; }
.legacy-content :is(p,h1,h2,h3):has(img) > a:has(img) {display:block; width:fit-content; max-width:100%; margin:0 auto 15px;}
.legacy-content :is(p,h1,h2,h3):has(img) > span {display:block; margin-top:16px;}
.legacy-content :is(h1,h2,h3):has(img) {font-size:1.05rem;text-align:center;}
.legacy-content .alignleft,.legacy-content .alignright,.legacy-content .aligncenter {float:none!important;display:block;margin:12px auto 21px!important;}
.legacy-content [style*="#ffff00"],.legacy-content [style*="#FFFF00"] {color:#114c70!important;background:#e5f2f8;border-radius:4px;padding:1px 4px;}
.legacy-content [style*="#ff0000"] {color:#b12639!important;}
.legacy-content a {text-decoration-thickness:1px;text-underline-offset:3px;}
.legacy-content a:hover {color:#087b8e;}
.price-page {margin-top:22px;}
.price-page .price-poster {margin-bottom:28px;}
.price-page > h2:first-of-type {text-align:center;}
.price-page .price-poster + h2 {margin-top:32px;}
.price-page .legacy-promo-note {border-radius:12px;background:#ecf5f9;border:1px solid #d1e7f0;padding:14px 17px;color:#315c73;font-size:.91rem;}
.legacy-content iframe { width: 100%; max-width: 100%; min-height: 330px; border: 0; border-radius: 12px; }
.legacy-content table { width: 100%; border-collapse: collapse; }
.legacy-content td,.legacy-content th { border: 1px solid #d9e9ee; padding: 8px; }
.legacy-content a { overflow-wrap: anywhere; }
.legacy-content .wp-block-image { max-width: 100%; }
.page-footer { padding: 28px 0 36px; margin-top: 25px; background: linear-gradient(125deg,#0c354e,#145877); color: #fff; border-top: 1px solid rgba(255,255,255,.3); }
.footer-main { display: flex; flex-wrap: wrap; gap: 18px; justify-content: space-between; align-items: center; }
.footer-brand { display: flex; align-items: center; gap: 12px; font-weight: 850; }
.footer-brand img { height: 58px; }
.footer-brand small { color: #dcf2f8; }
.footer-links { display: flex; flex-wrap: wrap; gap: 12px; font-size: .86rem; }
.footer-links a { color: var(--sun); font-weight: 800; text-underline-offset: 4px; }
.footer-note { margin-top: 18px; color: #d5edf5; font-size: .76rem; }
.social-tab { position: fixed; left: 0; top: 35%; z-index: 40; padding: 13px 10px; background: #126082; border: 0; color: var(--sun); border-radius: 0 11px 11px 0; font-weight: 900; writing-mode: vertical-rl; cursor: pointer; box-shadow: var(--shadow); }
.social-panel { display: none; position: fixed; top: 30%; left: 0; z-index: 41; width: min(340px,90vw); padding: 19px; border-radius: 0 18px 18px 0; box-shadow: var(--shadow); background: white; }
.social-panel.open { display: block; }
.social-panel h3 { margin: 0 0 10px; }
.social-panel a { display: block; padding: 11px; margin-top: 8px; background: #e9f5f9; border-radius: 10px; font-weight: 800; text-decoration: none; }
.social-panel .close-social { float: right; border: 0; background: transparent; font-size: 1.3rem; cursor: pointer; }
.page-jump { position: fixed; bottom: 20px; right: 20px; z-index: 31; display: grid; gap: 6px; }
.page-jump button { width: 38px; height: 38px; border: 0; border-radius: 10px; color: var(--sun); background: #175f80; font-size: 1.3rem; cursor: pointer; box-shadow: var(--shadow); }
a:focus-visible,button:focus-visible,summary:focus-visible { outline: 3px solid #d88e12; outline-offset: 3px; }
.lightbox { border: 0; padding: 0; max-width: min(94vw,1160px); background: #061a27; color: white; border-radius: 14px; overflow: hidden; }
.lightbox::backdrop { background: rgba(4,22,34,.88); }
.lightbox figure { margin: 0; }
.lightbox img { display: block; width: auto; max-width: 94vw; max-height: 84vh; object-fit: contain; }
.lightbox figcaption { padding: 10px 17px; font-weight: 850; }
.lightbox .close-lightbox { position: absolute; top: 8px; right: 8px; z-index: 2; border: 0; border-radius: 50%; width: 36px; height: 36px; font-size: 1.3rem; cursor: pointer; }
@media(max-width:1030px) {
  .hero-content { grid-template-columns: 100px minmax(0,1fr); }
  .hero-logo { width: 100px; height: 100px; }
  .hero-heritage { grid-column: 1/-1; }
  .feature-grid,.equipment-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .menu-toggle { display: block; }
  .menu-list { display: none; position: absolute; left: 17px; right: 17px; top: 69px; padding: 12px; background: #fafdff; border: 1px solid #d5eaf0; border-radius: 14px; flex-direction: column; align-items: stretch; box-shadow: var(--shadow); }
  .menu-list.open { display: flex; }
  .menu-list a,.menu-dropdown summary { width: 100%; font-size: .88rem; }
  .menu-dropdown[open] .submenu { position: static; width: 100%; box-shadow: none; }
}
@media(max-width:760px) {
  .wrap { width: min(var(--max),calc(100% - 22px)); }
  .hero-content { display: block; padding: 22px 18px; text-align: center; }
  .hero-logo { width: 88px; height: 88px; margin-bottom: 12px; }
  .hero-heritage {margin-top:19px;text-align:left;}
  .hero-season-row {display:grid;grid-template-columns:1fr;gap:17px;margin-top:19px;padding:18px;text-align:left;}
  .hero-counter {justify-self:start;}
  .season-countdown-title {text-align:left;}
  .hero-counter .countdown {justify-content:flex-start;}
  .sup-showcase {grid-template-columns:1fr;gap:17px;}
  .sup-showcase-stat {min-height:0;flex-direction:row;gap:13px;padding:12px 15px;justify-content:flex-start;}
  .sup-showcase-stat strong {font-size:2.9rem;}
  .sup-showcase-stat span {text-align:left;margin:0;}
  .actions { justify-content: center; }
  .feature-grid,.equipment-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .section-split,.contact-layout { grid-template-columns: 1fr; }
  .faq-grid { grid-template-columns: 1fr; }
  .section { padding: 21px 16px; }
  .weather-provider-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .imgw-alert-actions {flex:1 1 100%;flex-direction:row;justify-content:space-between;flex-wrap:wrap;}
  .social-strip { align-items: stretch; flex-direction: column; }
  .partner-grid { grid-template-columns: 1fr; }
  .price-poster-header {flex-direction:column;gap:10px;}
  .price-poster-header img {width:80px;flex-basis:auto;}
}
@media(max-width:460px) {
  .menu-brand { min-width: 0; }
  .menu-brand span { font-size: .7rem; }
  .menu-brand img { width: 41px; height: 41px; }
  .feature-grid { grid-template-columns: 1fr 1fr; }
  .feature { padding: 12px; }
  .equipment-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
  .equipment-caption { padding: 9px; }
  .equipment-caption strong { font-size: .8rem; }
  .topline-inner { justify-content: center; }
  .price-table th,.price-table td { padding: 11px 9px; font-size: .8rem; }
  .day-grid { grid-template-columns: repeat(2,1fr); }
  .weather-provider-grid {grid-template-columns:1fr;}
  .weather-provider.is-featured {grid-column:auto;}
  .social-tab { font-size: .65rem; padding: 9px 6px; }
}

/* Aktualizacja jesienna 2026: spójne panele */
.language-links{width:min(1170px,calc(100% - 34px));margin:12px auto;display:flex;flex-wrap:wrap;gap:9px;align-items:center;color:#145b79;font-weight:750}.language-links a{background:#f3f9ff;border:1px solid #cce4ed;border-radius:40px;padding:8px 12px;text-decoration:none}.language-links a[aria-current]{background:#145b79;color:white}
.ina-layout{display:grid;grid-template-columns:minmax(145px,240px) 1fr;gap:26px;align-items:center}.ina-layout>img{width:100%;max-height:250px;object-fit:contain}.ina-countdown{padding:12px 16px;border-radius:12px;background:#def1f7;color:#124c67;font-weight:750;margin:16px 0}.map-carousel{display:grid;grid-auto-columns:minmax(210px,1fr);grid-auto-flow:column;overflow-x:auto;gap:16px;scroll-snap-type:x mandatory;padding:4px 2px 15px}.map-carousel a{display:flex;flex-direction:column;min-width:210px;overflow:hidden;border:1px solid #cbdfe8;border-radius:16px;background:white;text-decoration:none;scroll-snap-align:start}.map-carousel img{width:100%;height:160px;object-fit:cover}.map-carousel strong,.map-carousel span{padding:7px 13px}.map-carousel span{font-size:.87rem}.center-cta{text-align:center;margin-top:25px}.lifejacket{display:flex;align-items:center;justify-content:space-between;gap:20px}.lifejacket-mark{font-size:clamp(1.3rem,4vw,3.2rem);font-weight:950;color:#111;white-space:nowrap}.lifejacket-mark span{color:#ec501d}.lake-pano{width:100%;max-height:420px;object-fit:cover;border-radius:18px;margin:8px 0 18px}.two-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.info-tile{background:#fff;border:1px solid #d1e5ed;border-radius:16px;padding:20px}.trail-map iframe{width:100%;height:510px;border:0;border-radius:15px}.source-note{font-size:.82rem;color:#526d7e}.map-carousel a:hover{box-shadow:0 8px 20px #174a6229}
@media(max-width:720px){.ina-layout,.two-info{grid-template-columns:1fr}.ina-layout>img{max-height:180px}.lifejacket{flex-direction:column;align-items:flex-start}.trail-map iframe{height:380px}.map-carousel{grid-auto-columns:80%}}

.lifejacket-logo{width:min(480px,100%);max-height:130px;object-fit:contain;border-radius:12px}

/* Przystań Wodna Głębokie: październik 2026, odświeżenie marki i nawigacji */
.topline-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;min-height:43px}
.topline-offer{display:inline-block;padding:2px 9px;border-radius:7px;white-space:nowrap;color:#ffe477!important;font-weight:900;text-decoration:none!important}
.topline-contact{text-align:right;white-space:nowrap}.topline-contact a{font-weight:800}
.site-navigation{position:sticky;top:0;z-index:30}
.language-switcher{position:static!important;top:auto!important;z-index:auto;margin:10px auto 0;clear:both}
.language-switcher-inner{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;padding:9px 14px;background:rgba(249,254,255,.85);border:1px solid rgba(255,255,255,.85);border-radius:14px;box-shadow:0 4px 16px rgba(22,74,101,.07)}
.language-switcher a{display:inline-block;padding:7px 11px;border-radius:25px;background:#f1f9fe;color:#145b79;text-decoration:none;border:1px solid #cde3ef;white-space:nowrap;font-size:.83rem;font-weight:800}
.language-switcher a:hover{background:#d5edf7}.language-switcher a[aria-current]{background:#145b79;color:#fff}
.language-heading{font-size:.81rem;color:#325c72;font-weight:800;margin-right:6px}
.event-countdown{background:linear-gradient(115deg,#e3f3fa,#f0fafb);border-radius:15px;padding:17px 20px;border:1px solid #c6e4ee;margin-top:17px}
.event-countdown-heading{margin:0 0 13px;font-weight:900;color:#145b79}
.event-countdown .countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:560px;gap:11px}
.event-countdown .count-item{min-width:0;box-shadow:0 4px 13px rgba(24,80,110,.05);border:1px solid #d9ecf4;padding:12px 8px}
.event-countdown .count-item strong{font-size:clamp(1.2rem,2.5vw,2rem)}
.event-countdown .count-item span{font-size:.75rem}
.footer-brand span{font-weight:900;letter-spacing:.015em}
.footer-note{max-width:1100px;margin:15px 0 0;color:#e4eff5!important;font-size:.82rem;line-height:1.5}
@media(max-width:920px){.topline-inner{grid-template-columns:1fr 1fr}.topline-offer{text-align:right}.topline-contact{grid-column:1/-1;text-align:center}.topline-address{font-size:.79rem}}
@media(max-width:640px){.topline-inner{display:flex;justify-content:center;gap:6px 18px;padding:6px 0}.topline-address{display:none}.topline-offer{font-size:.73rem}.topline-contact{white-space:normal;text-align:center;font-size:.76rem}.language-switcher-inner{gap:5px;align-items:center;justify-content:center}.language-heading{display:none}.language-switcher a{font-size:.75rem;padding:6px 8px}.event-countdown{padding:12px}.event-countdown .countdown{gap:6px}.event-countdown .count-item{padding:10px 3px}.event-countdown .count-item span{font-size:.67rem}}


/* Projekt Wyprawy z Wikingiem + prawdziwa karuzela polecanych map (wersja 6) */
.partner-wyprawy { display:block; overflow:hidden; background:white; border:1px solid #c5e1e9; border-radius:17px; text-decoration:none; margin:0 0 18px; box-shadow:0 8px 19px rgba(17,74,108,.08); }
.partner-wyprawy>img {display:block;width:100%;height:auto;aspect-ratio:1920/310;object-fit:cover}
.partner-wyprawy-caption{display:block;font-weight:900;color:#175a79;font-size:.95rem;padding:12px 17px;background:#fff}
.partner-wyprawy:hover .partner-wyprawy-caption{color:#097956;text-decoration:underline}
.map-product-widget {position:relative;min-width:0}
.map-controls{display:flex;justify-content:flex-end;gap:9px;margin:-66px 0 20px;position:relative;z-index:1;pointer-events:none}
.map-arrow {pointer-events:auto;display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:50%;font-weight:850;font-size:1.6rem;background:#187ca4;color:#fff;box-shadow:0 7px 17px #1761802b;cursor:pointer;transition:background .15s,transform .15s}
.map-arrow:hover{background:#105c7b;transform:translateY(-1px)}
.map-arrow:disabled{opacity:.32;cursor:default;transform:none}
.map-product-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#50a8ca #e0eff4;padding:5px 2px 18px}
.map-product-card {min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #cfe7f0;border-radius:17px;scroll-snap-align:start;box-shadow:0 8px 17px #155c7d0d}
.map-product-cover{height:250px;padding:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,#fff,#f5fafb);border-bottom:3px solid #63b7d0}
.map-product-cover img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .17s}
.map-product-cover:hover img{transform:scale(1.03)}
.map-product-body{display:flex;flex-direction:column;flex:1;padding:15px 17px 18px;gap:8px}
.map-product-category{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#347d97;font-weight:900}
.map-product-body h3{font-size:.92rem;line-height:1.4;margin:0;color:#124b67;min-height:78px}
.map-product-price{font-size:1.17rem;margin-top:auto;color:#153950}
.map-product-link{display:inline-flex;align-self:flex-start;text-decoration:none;font-size:.86rem;color:#fff!important;background:#167e69;padding:9px 13px;border-radius:10px;font-weight:850;margin-top:6px}
.map-product-link:hover{background:#0d5f51}
.map-price-note{text-align:center;color:#526f81;font-size:.78rem;margin:12px auto 0}
#mapy-kajakowe .center-cta{margin-top:18px}
@media(max-width:940px){.map-product-carousel{grid-auto-columns:calc((100% - 18px)/2)}.map-controls{margin:0 0 13px}}
@media(max-width:590px){.map-product-carousel{grid-auto-columns:minmax(220px,85%);gap:12px}.map-product-cover{height:215px}.map-arrow{width:42px;height:42px}.partner-wyprawy-caption{font-size:.82rem}.map-product-body h3{min-height:0}}


/* Wersja 7: Bosman Robert jako osobna grafika nad karuzelą map */
.bosman-robert-banner{margin:0 0 18px;border-radius:18px;overflow:hidden;border:1px solid #c7dde7;box-shadow:0 12px 24px rgba(18,65,95,.10);background:#fff;}
.bosman-robert-banner img{display:block;width:100%;height:auto;}
@media(max-width:640px){.bosman-robert-banner{margin-bottom:14px;border-radius:14px}}


/* Wersja 9: Bosman Robert tylko jako portret obok karuzeli map */
.map-product-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start}
.bosman-robert-side{background:#fff;border:1px solid #cfe7f0;border-radius:18px;overflow:hidden;box-shadow:0 10px 20px rgba(17,74,108,.10)}
.bosman-robert-side img{display:block;width:100%;height:auto;background:#fff}
.bosman-robert-copy{padding:14px 16px 18px}
.bosman-robert-copy h3{margin:4px 0 8px;font-size:1.05rem;color:#123f57}
.bosman-robert-copy p:last-child{margin:0;color:#486f81;font-size:.95rem;line-height:1.55}
.map-product-widget{min-width:0;width:100%}
@media(max-width:980px){.map-product-layout{grid-template-columns:1fr}.bosman-robert-side{max-width:420px}}
