/* KuLepszemu Materiały 1.1.0 – scoped front-end styles */
.klm-material-page{
  --klm-primary:#168a38;--klm-primary-dark:#12672d;--klm-ink:#173428;--klm-muted:#5f6f68;
  --klm-soft:#f4f8f5;--klm-page-bg:#fff;--klm-hero-bg:#f3f8f4;--klm-max-width:1240px;--klm-radius:28px;
  margin:0!important;background:var(--klm-page-bg)!important;color:var(--klm-ink)!important;
  font-family:Inter,Aptos,"Segoe UI",Arial,sans-serif!important;line-height:1.6!important;font-size:16px!important;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility
}
.klm-material-page *{box-sizing:border-box}
.klm-material-page img{max-width:100%;height:auto}
.klm-material-page a{text-decoration:none}
.klm-material-page .klm-wrap{width:min(var(--klm-max-width),calc(100% - 48px));margin:0 auto}
.klm-material-page .klm-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--klm-primary);z-index:99999;transition:width .08s linear}
.klm-material-page.admin-bar .klm-progress{top:32px}
.klm-material-page .klm-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid #e7eee9}
.klm-material-page.admin-bar .klm-header{top:32px}
.klm-material-page .klm-header-row{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.klm-material-page .klm-brand{color:var(--klm-primary)!important;font-size:25px!important;font-weight:850!important;line-height:1!important;letter-spacing:-.03em!important}
.klm-material-page .klm-brand small{display:block;margin-top:6px;font-size:9px!important;line-height:1!important;letter-spacing:.19em;text-transform:uppercase;color:#718078!important;font-weight:700!important}
.klm-material-page .klm-header-actions{display:flex;align-items:center;gap:22px}
.klm-material-page .klm-header-link{font-size:14px!important;color:#53665c!important;font-weight:650!important}
.klm-material-page .klm-header-link.strong{color:var(--klm-primary-dark)!important;font-weight:800!important}
.klm-material-page .klm-main{display:block}
.klm-material-page .klm-hero{padding:42px 0 22px!important;background:#fff!important;margin:0!important}
.klm-material-page .klm-hero-panel{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:58px;align-items:center;background:var(--klm-hero-bg);border:1px solid color-mix(in srgb,var(--klm-primary) 12%,#dfe7e1);border-radius:calc(var(--klm-radius) + 8px);padding:58px 58px 52px;overflow:hidden;position:relative;box-shadow:0 20px 55px rgba(24,55,39,.06)}
.klm-material-page .klm-hero-panel:before{content:"";position:absolute;width:430px;height:430px;border-radius:50%;right:-220px;top:-240px;background:color-mix(in srgb,var(--klm-primary) 8%,transparent);pointer-events:none}
.klm-material-page .klm-hero-copy{position:relative;z-index:1;max-width:760px}
.klm-material-page .klm-eyebrow{display:inline-flex;align-items:center;min-height:28px;padding:5px 11px;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,var(--klm-primary) 20%,#e7ede9);color:var(--klm-primary-dark)!important;text-transform:uppercase;letter-spacing:.11em;font-size:11px!important;font-weight:850!important;margin-bottom:18px!important}
.klm-material-page .klm-hero h1{margin:0 0 22px!important;color:var(--klm-ink)!important;font-size:clamp(44px,4.8vw,68px)!important;line-height:1.02!important;letter-spacing:-.045em!important;font-weight:760!important;max-width:840px!important}
.klm-material-page .klm-hero-lead{font-size:19px!important;line-height:1.72!important;color:#4c5f55!important;max-width:760px!important;margin:0 0 28px!important}
.klm-material-page .klm-hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.klm-material-page .klm-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:48px;padding:13px 22px!important;border-radius:999px!important;background:var(--klm-primary)!important;color:#fff!important;font-size:14px!important;line-height:1!important;font-weight:800!important;border:1px solid var(--klm-primary)!important;box-shadow:0 8px 20px color-mix(in srgb,var(--klm-primary) 18%,transparent)!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.klm-material-page .klm-btn:hover{transform:translateY(-1px);background:var(--klm-primary-dark)!important;box-shadow:0 11px 26px color-mix(in srgb,var(--klm-primary) 24%,transparent)!important}
.klm-material-page .klm-micro{font-size:12px!important;line-height:1.55!important;color:#78867f!important;margin:15px 0 0!important;max-width:680px!important}
.klm-material-page .klm-hero-side{position:relative;z-index:1;min-width:0}
.klm-material-page .klm-hero-image{border-radius:calc(var(--klm-radius) + 2px);overflow:hidden;aspect-ratio:4/4.45;background:#e5eee7;box-shadow:0 18px 42px rgba(23,52,40,.12)}
.klm-material-page .klm-hero-image img{width:100%;height:100%!important;object-fit:cover;display:block}
.klm-material-page .klm-guide-card{background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.92);border-radius:var(--klm-radius);padding:30px;box-shadow:0 16px 42px rgba(23,52,40,.08);backdrop-filter:blur(8px)}
.klm-material-page .klm-guide-icon{width:74px;height:74px;border-radius:24px;background:color-mix(in srgb,var(--klm-primary) 11%,#fff);position:relative;margin-bottom:30px;overflow:hidden}
.klm-material-page .klm-guide-icon:before{content:"";position:absolute;left:17px;top:17px;width:40px;height:40px;border:2px solid color-mix(in srgb,var(--klm-primary) 66%,#fff);border-radius:50%}
.klm-material-page .klm-guide-icon:after{content:"";position:absolute;width:76px;height:24px;left:-2px;top:31px;background:#fff;transform:rotate(-16deg);opacity:.86}
.klm-material-page .klm-guide-label{text-transform:uppercase;letter-spacing:.1em;font-size:11px!important;font-weight:850!important;color:var(--klm-primary-dark)!important;margin:0 0 13px!important}
.klm-material-page .klm-guide-card ul{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:13px}
.klm-material-page .klm-guide-card li{font-size:15px!important;line-height:1.5!important;color:#46584e!important;padding-left:22px;position:relative}
.klm-material-page .klm-guide-card li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--klm-primary);position:absolute;left:0;top:.55em}
.klm-material-page .klm-guide-card b{color:var(--klm-ink)!important}
.klm-material-page .klm-anchor-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:18px 4px 0}
.klm-material-page .klm-anchor-nav a{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #e3ebe5;color:#586a61!important;font-size:12px!important;font-weight:700!important}
.klm-material-page .klm-content-section{padding:28px 0!important;margin:0!important;background:#fff!important}
.klm-material-page .klm-soft-section{background:linear-gradient(180deg,#fff,var(--klm-soft),#fff)!important;padding:46px 0!important}
.klm-material-page .klm-section-card{background:#fff;border:1px solid #e4ebe6;border-radius:var(--klm-radius);padding:44px 46px;box-shadow:0 8px 26px rgba(22,51,36,.035)}
.klm-material-page .klm-section-card.transparent{background:transparent;border:0;box-shadow:none;padding:0}
.klm-material-page .klm-section-head{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.7fr);gap:58px;align-items:end;margin-bottom:30px}
.klm-material-page .klm-section-head.first{align-items:start}
.klm-material-page .klm-kicker{text-transform:uppercase;letter-spacing:.11em;color:var(--klm-primary)!important;font-size:11px!important;line-height:1.2!important;font-weight:850!important;margin-bottom:10px!important}
.klm-material-page h2{margin:0!important;color:var(--klm-ink)!important;font-size:clamp(30px,3.1vw,45px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:720!important}
.klm-material-page .klm-heading-wide{max-width:1000px!important}
.klm-material-page .klm-section-intro,.klm-material-page .klm-body-lg{font-size:17px!important;line-height:1.7!important;color:#53655c!important;margin:0!important}
.klm-material-page .klm-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.klm-material-page .klm-check{display:flex;gap:14px;align-items:flex-start;background:#f9fbfa;border:1px solid #e5ece7;border-radius:18px;padding:17px 18px;min-height:74px}
.klm-material-page .klm-check-icon{width:24px;height:24px;min-width:24px;border-radius:50%;display:grid;place-items:center;background:#e8f4eb;color:var(--klm-primary-dark);font-size:12px;font-weight:900;margin-top:1px}
.klm-material-page .klm-check p{margin:0!important;color:#42534b!important;font-size:14px!important;line-height:1.55!important}
.klm-material-page .klm-explanation-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.58fr);gap:60px;align-items:center}
.klm-material-page .klm-explanation-main h2{margin-bottom:20px!important}
.klm-material-page .klm-note{background:color-mix(in srgb,var(--klm-primary) 6%,#fff);border:1px solid color-mix(in srgb,var(--klm-primary) 14%,#e5ece7);border-radius:22px;padding:24px}
.klm-material-page .klm-note span{display:inline-block;margin-bottom:9px;color:var(--klm-primary-dark)!important;font-size:11px!important;font-weight:850!important;text-transform:uppercase;letter-spacing:.1em}
.klm-material-page .klm-note p{margin:0!important;color:#4e6157!important;font-size:14px!important;line-height:1.65!important}
.klm-material-page .klm-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
.klm-material-page .klm-card{background:#fff;border:1px solid #e1e9e3;border-radius:22px;padding:24px;box-shadow:0 8px 22px rgba(22,51,36,.035)}
.klm-material-page .klm-card-top{display:flex;align-items:center;gap:10px;margin-bottom:28px}
.klm-material-page .klm-card-num{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#eaf5ed;color:var(--klm-primary-dark);font-size:13px;font-weight:900}
.klm-material-page .klm-card-line{height:1px;background:#e3eae5;flex:1}
.klm-material-page .klm-card h3{margin:0 0 10px!important;color:var(--klm-ink)!important;font-size:19px!important;line-height:1.25!important;font-weight:760!important}
.klm-material-page .klm-card p{margin:0!important;color:#5a6b62!important;font-size:14px!important;line-height:1.65!important}
.klm-material-page .klm-today{display:grid;grid-template-columns:62px 1fr;gap:24px;background:linear-gradient(135deg,#173428,#1f4834);border-radius:var(--klm-radius);padding:36px 38px;color:#fff;box-shadow:0 16px 35px rgba(23,52,40,.12)}
.klm-material-page .klm-today .klm-kicker{color:#a9d7b5!important}
.klm-material-page .klm-today h2{color:#fff!important;font-size:clamp(27px,2.7vw,38px)!important;margin-bottom:12px!important}
.klm-material-page .klm-today p{margin:0!important;color:#dce7e0!important;font-size:16px!important;line-height:1.7!important}
.klm-material-page .klm-today-icon{width:50px;height:50px;border:1px solid rgba(255,255,255,.22);border-radius:16px;display:grid;place-items:center;font-size:23px;color:#d8efe0}
.klm-material-page .klm-medical-note{display:grid;grid-template-columns:36px 1fr;gap:16px;margin-top:14px;padding:18px 20px;border:1px solid #eadfbf;background:#fffaf0;border-radius:18px;color:#665d47}
.klm-material-page .klm-medical-icon{width:30px;height:30px;border-radius:50%;background:#f5e9c5;display:grid;place-items:center;font-weight:900;color:#7c6a35}
.klm-material-page .klm-medical-note strong{display:block;margin-bottom:4px;color:#554b34!important}
.klm-material-page .klm-medical-note p{margin:0!important;font-size:13px!important;line-height:1.6!important}
.klm-material-page .klm-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.klm-material-page .klm-step{background:#fafcfb;border:1px solid #e5ece7;border-radius:20px;padding:22px}
.klm-material-page .klm-step i{font-style:normal;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--klm-ink);color:#fff;font-size:12px;font-weight:850;margin-bottom:22px}
.klm-material-page .klm-step h3{margin:0 0 8px!important;color:var(--klm-ink)!important;font-size:17px!important;line-height:1.32!important;font-weight:760!important}
.klm-material-page .klm-step p{margin:0!important;color:#5d6e65!important;font-size:13px!important;line-height:1.6!important}
.klm-material-page .klm-specialists{padding:54px 0!important;margin:0!important;background:linear-gradient(180deg,#fff,#f4f8f5,#fff)!important}
.klm-material-page .klm-specialists-panel{background:#fff;border:1px solid #e1e9e3;border-radius:calc(var(--klm-radius) + 4px);padding:44px;box-shadow:0 18px 48px rgba(23,52,40,.065)}
.klm-material-page .klm-specialists-head{display:flex;justify-content:space-between;gap:36px;align-items:flex-end;margin-bottom:28px}
.klm-material-page .klm-specialists-head>div{max-width:790px}
.klm-material-page .klm-specialists-head h2{margin-bottom:12px!important}
.klm-material-page .klm-specialists-head p{margin:0!important;color:#5b6d63!important;font-size:15px!important;line-height:1.65!important}
.klm-material-page .klm-text-link{white-space:nowrap;color:var(--klm-primary-dark)!important;font-size:13px!important;font-weight:800!important}
.klm-material-page .klm-specialist-grid{display:grid;gap:16px}
.klm-material-page .klm-specialist-grid.cols-1{grid-template-columns:minmax(0,680px)}
.klm-material-page .klm-specialist-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.klm-material-page .klm-spec-card{overflow:hidden;background:#fff;border:1px solid #e1e8e3;border-radius:22px;display:flex;flex-direction:column;min-width:0;box-shadow:0 8px 24px rgba(23,52,40,.04)}
.klm-material-page .klm-spec-photo-wrap{position:relative;aspect-ratio:1.32/1;background:#edf3ee;overflow:hidden}
.klm-material-page .klm-spec-photo{width:100%;height:100%!important;object-fit:cover;display:block;transition:transform .3s ease}
.klm-material-page .klm-spec-card:hover .klm-spec-photo{transform:scale(1.015)}
.klm-material-page .klm-available-pill{position:absolute;left:13px;top:13px;display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.94);color:var(--klm-primary-dark)!important;border:1px solid #dce9df;border-radius:999px;padding:7px 10px;font-size:11px!important;font-weight:850!important;box-shadow:0 4px 15px rgba(23,52,40,.08)}
.klm-material-page .klm-available-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--klm-primary)}
.klm-material-page .klm-spec-body{display:flex;flex-direction:column;gap:14px;flex:1;padding:22px}
.klm-material-page .klm-spec-name{font-size:21px!important;line-height:1.15!important;color:var(--klm-ink)!important;font-weight:800!important}
.klm-material-page .klm-spec-role{font-size:12px!important;color:#718077!important;margin-top:4px}
.klm-material-page .klm-spec-body blockquote{margin:0!important;padding:0 0 0 14px!important;border:0!important;border-left:2px solid #bcd9c4!important;background:transparent!important;color:#43564c!important;font-size:14px!important;line-height:1.6!important;font-style:normal!important}
.klm-material-page .klm-term-box{margin-top:auto;background:#f7faf8;border:1px solid #e3ebe5;border-radius:15px;padding:12px 13px}
.klm-material-page .klm-term-box small{display:block;color:#75827b!important;font-size:11px!important;margin-bottom:3px}
.klm-material-page .klm-term-box strong{color:var(--klm-ink)!important;font-size:14px!important;font-weight:800!important}
.klm-material-page .klm-spec-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.klm-material-page .klm-spec-actions a{min-height:42px;display:flex;align-items:center;justify-content:center;border-radius:999px;padding:10px 12px;font-size:12px!important;font-weight:800!important}
.klm-material-page .klm-spec-actions .profile{color:var(--klm-primary-dark)!important;border:1px solid #bed7c5;background:#fff}
.klm-material-page .klm-spec-actions .booking{color:#fff!important;border:1px solid var(--klm-primary);background:var(--klm-primary)}
.klm-material-page .klm-widgets{display:grid;gap:18px;margin-top:26px}
.klm-material-page .klm-widget-block{scroll-margin-top:110px;border:1px solid #dfe8e0;border-radius:22px;background:#f8fbf9;padding:22px}
.klm-material-page .klm-widget-block[hidden]{display:none!important}
.klm-material-page .klm-widget-block-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}
.klm-material-page .klm-widget-block-head h3{margin:0!important;color:var(--klm-ink)!important;font-size:24px!important;line-height:1.2!important}
.klm-material-page .klm-widget-close{border:0;background:transparent;color:#687970;cursor:pointer;font-weight:700;font-size:12px}
.klm-material-page .klm-widget-shell{background:#fff;border:1px solid #e1e9e3;border-radius:16px;padding:16px;overflow:hidden}
.klm-material-page .klm-no-specialists{display:grid;grid-template-columns:52px 1fr;gap:18px;align-items:start;background:#f8fbf9;border:1px solid #e0e9e2;border-radius:20px;padding:22px}
.klm-material-page .klm-no-specialists-icon{width:46px;height:46px;border-radius:15px;background:#e8f4eb;display:grid;place-items:center;color:var(--klm-primary-dark);font-weight:900}
.klm-material-page .klm-no-specialists strong{font-size:17px!important;color:var(--klm-ink)!important}
.klm-material-page .klm-no-specialists p{margin:5px 0 8px!important;color:#5d6d64!important;font-size:13px!important}
.klm-material-page .klm-no-specialists a{color:var(--klm-primary-dark)!important;font-weight:800!important;font-size:13px!important}
.klm-material-page .klm-bottom-cta{padding:12px 0 58px!important;background:#fff!important;margin:0!important}
.klm-material-page .klm-cta-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:center;background:linear-gradient(135deg,#eef7f0,#e5f3e9);border:1px solid #d0e4d5;border-radius:var(--klm-radius);padding:34px 38px}
.klm-material-page .klm-cta-panel h2{font-size:clamp(27px,2.6vw,38px)!important;margin-bottom:9px!important}
.klm-material-page .klm-cta-panel p{margin:0!important;color:#52655b!important;font-size:14px!important}
.klm-material-page .klm-footer{padding:32px 0 105px!important;background:#fff!important;border-top:1px solid #edf2ee;color:#6b7972!important;font-size:12px!important;margin:0!important}
.klm-material-page .klm-footer .klm-wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}
.klm-material-page .klm-footer p{margin:0!important;max-width:620px!important;text-align:right;color:#79867f!important;font-size:11px!important;line-height:1.55!important}
.klm-material-page .klm-sticky{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:2000;width:min(720px,calc(100% - 32px));display:flex;align-items:center;justify-content:space-between;gap:18px;background:rgba(255,255,255,.96);border:1px solid #dce7df;border-radius:18px;padding:10px 12px 10px 18px;box-shadow:0 18px 48px rgba(22,51,36,.15);backdrop-filter:blur(12px)}
.klm-material-page .klm-sticky span{font-size:13px!important;color:#4c5f55!important;font-weight:650!important}
.klm-material-page .klm-sticky .klm-btn{min-height:40px;padding:10px 16px!important;font-size:12px!important}

/* Lead widget */
.klm-widget{font-family:Inter,Aptos,"Segoe UI",Arial,sans-serif;background:#fff;border:1px solid #dfe9e1;border-radius:26px;padding:28px;box-shadow:0 10px 30px rgba(22,51,36,.05)}
.klm-widget *{box-sizing:border-box}
.klm-widget .klm-eyebrow{display:inline-flex;padding:5px 10px;border-radius:999px;background:#eaf5ed;color:#12672d;font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.klm-widget-head h3{margin:10px 0 8px;font-size:30px;line-height:1.12;letter-spacing:-.03em;color:#173428}
.klm-widget-head p{margin:0;color:#5b6d63;line-height:1.6}
.klm-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0 0}
.klm-topic{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;border:1px solid #d9e7dc;background:#fafcfb;border-radius:15px;padding:14px 16px;text-align:left;color:#294337;font:inherit;font-weight:750;cursor:pointer;transition:.16s ease}
.klm-topic i{font-style:normal;color:#799184}
.klm-topic:hover,.klm-topic.active{border-color:#91c89f;background:#edf7ef;color:#12672d}
.klm-lead-form{margin-top:18px;border-top:1px solid #edf2ee;padding-top:20px}
.klm-field>span{display:block;margin-bottom:7px;font-weight:750;color:#2f463a}
.klm-field input[type=email]{width:100%;min-height:48px;padding:12px 14px;border:1px solid #cbd9cf;border-radius:12px;font:inherit;background:#fff}
.klm-form-check{display:flex;align-items:flex-start;gap:10px;margin-top:13px;color:#52655b;font-size:13px;line-height:1.5}
.klm-form-check input{margin-top:3px}
.klm-form-check.optional{opacity:.88}
.klm-submit{margin-top:18px;border:0;background:#168a38;color:#fff;padding:13px 21px;border-radius:999px;font-weight:800;cursor:pointer;font-size:14px}
.klm-form-status{margin-top:12px;color:#43574c;font-size:13px}
.klm-hp{position:absolute!important;left:-99999px!important;opacity:0!important}

@media(max-width:1100px){
  .klm-material-page .klm-hero-panel{grid-template-columns:1fr .7fr;gap:34px;padding:46px 42px}
  .klm-material-page .klm-section-head,.klm-material-page .klm-explanation-card{gap:38px}
  .klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .klm-material-page .klm-wrap{width:min(var(--klm-max-width),calc(100% - 30px))}
  .klm-material-page .klm-header-actions .klm-header-link:first-child{display:none}
  .klm-material-page .klm-hero-panel{grid-template-columns:1fr;padding:40px 34px}
  .klm-material-page .klm-hero-side{max-width:520px}
  .klm-material-page .klm-section-head,.klm-material-page .klm-explanation-card{grid-template-columns:1fr;gap:20px}
  .klm-material-page .klm-cards,.klm-material-page .klm-timeline{grid-template-columns:1fr}
  .klm-material-page .klm-specialist-grid.cols-2,.klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:1fr}
  .klm-material-page .klm-specialists-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:782px){.klm-material-page.admin-bar .klm-header{top:46px}.klm-material-page.admin-bar .klm-progress{top:46px}}
@media(max-width:700px){
  .klm-material-page .klm-header-row{min-height:66px}.klm-material-page .klm-header-link{display:none!important}
  .klm-material-page .klm-hero{padding-top:18px!important}.klm-material-page .klm-hero-panel{padding:28px 22px;border-radius:24px;gap:26px}
  .klm-material-page .klm-hero h1{font-size:39px!important;line-height:1.04!important}.klm-material-page .klm-hero-lead{font-size:16px!important}
  .klm-material-page .klm-guide-card{padding:22px}.klm-material-page .klm-guide-icon{margin-bottom:20px}
  .klm-material-page .klm-anchor-nav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.klm-material-page .klm-anchor-nav a{white-space:nowrap}
  .klm-material-page .klm-section-card{padding:28px 22px}.klm-material-page .klm-checks{grid-template-columns:1fr}
  .klm-material-page .klm-today{grid-template-columns:1fr;padding:28px 24px}.klm-material-page .klm-today-icon{display:none}
  .klm-material-page .klm-specialists-panel{padding:28px 20px}.klm-material-page .klm-text-link{white-space:normal}
  .klm-material-page .klm-spec-actions{grid-template-columns:1fr}.klm-material-page .klm-cta-panel{grid-template-columns:1fr;padding:28px 24px}
  .klm-material-page .klm-footer .klm-wrap{flex-direction:column}.klm-material-page .klm-footer p{text-align:left!important}
  .klm-material-page .klm-sticky span{display:none}.klm-material-page .klm-sticky{justify-content:center;padding:9px;width:calc(100% - 22px)}.klm-material-page .klm-sticky .klm-btn{width:100%}
  .klm-topic-grid{grid-template-columns:1fr}
}

/* === 1.1.1 RESPONSIVE / DESKTOP HARDENING === */
.klm-material-page{
  width:100%!important;max-width:none!important;min-width:0!important;overflow-x:hidden!important;
}
.klm-material-page .klm-main,
.klm-material-page .klm-header,
.klm-material-page .klm-footer,
.klm-material-page section{width:100%!important;max-width:none!important;min-width:0!important}
.klm-material-page .klm-wrap{
  width:100%!important;
  max-width:var(--klm-max-width)!important;
  padding-left:clamp(18px,3.2vw,44px)!important;
  padding-right:clamp(18px,3.2vw,44px)!important;
  margin-left:auto!important;margin-right:auto!important;
}
.klm-material-page .klm-hero-panel{
  grid-template-columns:minmax(0,1.12fr) minmax(280px,.68fr);
  gap:clamp(30px,4vw,58px);
  padding:clamp(34px,4.2vw,58px)!important;
}
.klm-material-page .klm-hero h1{
  font-size:clamp(38px,3.7vw,60px)!important;
  max-width:820px!important;
}
.klm-material-page .klm-section-card{padding:clamp(28px,3.3vw,46px)!important}
.klm-material-page .klm-section-head{
  grid-template-columns:minmax(0,1fr) minmax(280px,.62fr);
  gap:clamp(24px,3.8vw,58px)
}
.klm-material-page h2{font-size:clamp(28px,2.65vw,42px)!important}
.klm-material-page .klm-specialist-grid{align-items:stretch}
.klm-material-page .klm-spec-card{min-width:0}
.klm-material-page .klm-spec-photo-wrap{min-width:0}
.klm-material-page .klm-spec-name{overflow-wrap:anywhere}
.klm-material-page .klm-widget-shell{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.klm-material-page .klm-widget-shell iframe{max-width:100%!important}
.klm-material-page .klm-anchor-nav{scrollbar-width:thin}

/* duże monitory: treść nie rozlewa się i zachowuje czytelną długość linii */
@media (min-width:1600px){
  .klm-material-page .klm-hero-copy{max-width:720px}
  .klm-material-page .klm-hero-lead{max-width:700px!important}
  .klm-material-page .klm-section-intro,.klm-material-page .klm-body-lg{max-width:760px}
}

/* typowy laptop 1280–1536 px */
@media (max-width:1366px){
  .klm-material-page .klm-wrap{--klm-local-gutter:28px;padding-left:var(--klm-local-gutter)!important;padding-right:var(--klm-local-gutter)!important}
  .klm-material-page .klm-hero{padding-top:30px!important}
  .klm-material-page .klm-hero-panel{grid-template-columns:minmax(0,1.08fr) minmax(260px,.62fr);padding:42px!important;gap:38px}
  .klm-material-page .klm-hero h1{font-size:clamp(38px,4vw,54px)!important}
  .klm-material-page .klm-hero-lead{font-size:17px!important;line-height:1.65!important}
  .klm-material-page .klm-section-card{padding:36px!important}
  .klm-material-page .klm-specialists-panel{padding:36px!important}
}

/* mały laptop / tablet poziomo */
@media (max-width:1080px){
  .klm-material-page .klm-hero-panel{grid-template-columns:minmax(0,1fr) minmax(250px,.52fr);gap:28px;padding:36px!important}
  .klm-material-page .klm-hero h1{font-size:clamp(36px,4.6vw,50px)!important}
  .klm-material-page .klm-section-head,.klm-material-page .klm-explanation-card{gap:28px}
  .klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* tablet pionowo / bardzo mały laptop */
@media (max-width:920px){
  .klm-material-page .klm-wrap{padding-left:22px!important;padding-right:22px!important}
  .klm-material-page .klm-header-row{min-height:68px}
  .klm-material-page .klm-hero-panel{grid-template-columns:1fr!important;padding:32px!important}
  .klm-material-page .klm-hero-side{max-width:none!important;width:100%}
  .klm-material-page .klm-hero-image{aspect-ratio:16/8.5}
  .klm-material-page .klm-guide-card{display:grid;grid-template-columns:64px 1fr;column-gap:20px;align-items:start}
  .klm-material-page .klm-guide-icon{grid-row:1 / span 2;margin:0;width:64px;height:64px;border-radius:20px}
  .klm-material-page .klm-guide-label{margin-bottom:8px!important}
  .klm-material-page .klm-section-head,.klm-material-page .klm-explanation-card{grid-template-columns:1fr!important;gap:18px!important}
  .klm-material-page .klm-cards,.klm-material-page .klm-timeline{grid-template-columns:1fr!important}
  .klm-material-page .klm-specialist-grid.cols-2,.klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:1fr!important}
  .klm-material-page .klm-specialists-head{align-items:flex-start!important;flex-direction:column!important}
}

@media (max-width:700px){
  .klm-material-page .klm-wrap{padding-left:16px!important;padding-right:16px!important}
  .klm-material-page .klm-header-row{min-height:62px}
  .klm-material-page .klm-brand{font-size:22px!important}
  .klm-material-page .klm-hero{padding:14px 0 10px!important}
  .klm-material-page .klm-hero-panel{padding:24px 20px!important;border-radius:22px!important;gap:22px!important}
  .klm-material-page .klm-hero h1{font-size:clamp(34px,10vw,43px)!important;line-height:1.04!important}
  .klm-material-page .klm-hero-lead{font-size:16px!important;line-height:1.62!important}
  .klm-material-page .klm-guide-card{grid-template-columns:1fr;padding:20px!important}
  .klm-material-page .klm-guide-icon{grid-row:auto;margin-bottom:4px}
  .klm-material-page .klm-anchor-nav{margin-left:-2px;margin-right:-2px;padding-top:12px}
  .klm-material-page .klm-content-section{padding:18px 0!important}
  .klm-material-page .klm-soft-section{padding:30px 0!important}
  .klm-material-page .klm-section-card{padding:24px 20px!important;border-radius:20px!important}
  .klm-material-page h2{font-size:clamp(28px,8vw,36px)!important}
  .klm-material-page .klm-section-intro,.klm-material-page .klm-body-lg{font-size:16px!important}
  .klm-material-page .klm-checks{grid-template-columns:1fr!important}
  .klm-material-page .klm-check{min-height:0}
  .klm-material-page .klm-specialists-panel{padding:24px 18px!important;border-radius:22px!important}
  .klm-material-page .klm-spec-actions{grid-template-columns:1fr!important}
  .klm-material-page .klm-widget-block{padding:17px!important;border-radius:18px!important}
  .klm-material-page .klm-widget-block-head{align-items:flex-start;flex-direction:column;gap:8px}
  .klm-material-page .klm-widget-shell{padding:10px!important}
  .klm-material-page .klm-cta-panel{grid-template-columns:1fr!important;padding:24px 20px!important;border-radius:20px!important}
  .klm-material-page .klm-footer .klm-wrap{flex-direction:column!important;gap:10px!important}
  .klm-material-page .klm-footer p{text-align:left!important}
  .klm-material-page .klm-sticky{width:calc(100% - 18px)!important;bottom:9px!important;padding:8px!important}
  .klm-material-page .klm-sticky span{display:none!important}
  .klm-material-page .klm-sticky .klm-btn{width:100%!important}
  .klm-topic-grid{grid-template-columns:1fr!important}
  .klm-widget{padding:22px 18px!important;border-radius:20px!important}
  .klm-widget-head h3{font-size:26px!important}
}

@media (max-width:420px){
  .klm-material-page .klm-wrap{padding-left:12px!important;padding-right:12px!important}
  .klm-material-page .klm-hero-panel{padding:21px 16px!important}
  .klm-material-page .klm-hero h1{font-size:34px!important}
  .klm-material-page .klm-btn{width:100%!important;text-align:center!important}
  .klm-material-page .klm-section-card{padding:21px 16px!important}
  .klm-material-page .klm-specialists-panel{padding:21px 14px!important}
  .klm-material-page .klm-spec-body{padding:18px!important}
  .klm-material-page .klm-today{padding:24px 18px!important}
}

/* === 1.1.2 ADAPTIVE LAYOUT HARDENING === */
.klm-material-page,
.klm-material-page .klm-main,
.klm-material-page .klm-wrap,
.klm-material-page .klm-hero-panel,
.klm-material-page .klm-section-card,
.klm-material-page .klm-specialists-panel,
.klm-material-page .klm-spec-card,
.klm-material-page .klm-widget-shell{min-width:0!important}
.klm-material-page .klm-wrap{max-width:min(var(--klm-max-width),100%)!important}
.klm-material-page .klm-hero-copy,
.klm-material-page .klm-section-head>*,
.klm-material-page .klm-explanation-card>*,
.klm-material-page .klm-specialists-head>*{min-width:0!important}
.klm-material-page .klm-hero h1,
.klm-material-page h2,
.klm-material-page h3,
.klm-material-page p,
.klm-material-page blockquote{overflow-wrap:break-word;word-break:normal}
.klm-material-page .klm-widget-shell,
.klm-material-page .klm-widget-shell>div,
.klm-material-page .klm-widget-shell iframe{width:100%!important;max-width:100%!important;min-width:0!important}
.klm-material-page .klm-widget-shell iframe{border:0!important;display:block!important}

@media (min-width: 1181px){
  .klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 1180px){
  .klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .klm-material-page .klm-hero-panel{grid-template-columns:minmax(0,1fr) minmax(260px,.56fr)!important}
}
@media (max-width: 980px){
  .klm-material-page .klm-hero-panel{grid-template-columns:1fr!important}
  .klm-material-page .klm-hero-side{width:100%!important;max-width:none!important}
  .klm-material-page .klm-specialist-grid.cols-2,
  .klm-material-page .klm-specialist-grid.cols-3{grid-template-columns:1fr!important}
}
@media (max-width: 600px){
  .klm-material-page .klm-wrap{padding-left:max(12px,env(safe-area-inset-left))!important;padding-right:max(12px,env(safe-area-inset-right))!important}
  .klm-material-page .klm-hero-panel{padding:22px 16px!important}
  .klm-material-page .klm-hero h1{font-size:clamp(32px,9.2vw,40px)!important}
  .klm-material-page .klm-section-card{padding:22px 16px!important}
  .klm-material-page .klm-specialists-panel{padding:22px 14px!important}
  .klm-material-page .klm-anchor-nav{margin-inline:-4px!important;padding-inline:4px!important}
  .klm-material-page .klm-sticky{bottom:max(8px,env(safe-area-inset-bottom))!important}
}
@media (max-width: 380px){
  .klm-material-page .klm-hero h1{font-size:31px!important}
  .klm-material-page h2{font-size:27px!important}
  .klm-material-page .klm-brand{font-size:20px!important}
}


/* === 1.1.3 INLINE AVAILABLE VISITS === */
.klm-spec-actions button.booking{appearance:none;border:0;font:inherit;cursor:pointer;width:100%}
.klm-visits-lists{margin-top:22px}
.klm-visits-panel{border:1px solid #dce9df;background:#fff;border-radius:22px;padding:24px;scroll-margin-top:90px}
.klm-visits-panel[hidden]{display:none!important}
.klm-visits-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}
.klm-visits-head h3{margin:5px 0 0;font-size:26px;color:var(--klm-ink)}
.klm-visits-close{border:0;background:transparent;color:var(--klm-muted);font:inherit;font-weight:700;cursor:pointer;padding:7px 4px}
.klm-visit-group+.klm-visit-group{margin-top:26px;padding-top:24px;border-top:1px solid #edf3ee}
.klm-visit-group>h4{font-size:20px;margin:0 0 14px;color:var(--klm-ink)}
.klm-visit-service{background:var(--klm-soft);border-radius:18px;padding:18px}
.klm-visit-service+.klm-visit-service{margin-top:14px}
.klm-visit-service-title{display:flex;flex-wrap:wrap;gap:6px 9px;align-items:baseline;margin-bottom:12px;color:var(--klm-ink)}
.klm-visit-service-title strong{font-size:17px}.klm-visit-service-title span{font-size:14px;color:var(--klm-muted)}
.klm-visit-rows{display:grid;gap:9px}
.klm-visit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1px solid #dfeae2;border-radius:14px;padding:12px 13px}
.klm-visit-time{display:flex;flex-direction:column;gap:4px;min-width:0}.klm-visit-time strong{font-size:15px;color:var(--klm-ink)}.klm-visit-time small{color:var(--klm-primary-dark);font-weight:700}
.klm-visit-actions{display:flex;gap:8px;align-items:center}
.klm-term-book,.klm-term-hold{border-radius:999px;padding:10px 15px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;white-space:nowrap}
.klm-term-book{background:var(--klm-primary);border:1px solid var(--klm-primary);color:#fff}.klm-term-book:hover{background:var(--klm-primary-dark)}
.klm-term-hold{background:#fff;border:1px solid var(--klm-primary);color:var(--klm-primary-dark)}.klm-term-hold:hover{background:#eef8f1}
.klm-term-book:disabled,.klm-term-hold:disabled{cursor:not-allowed;opacity:.58}.klm-term-hold.is-held{background:#e8f6ec;color:var(--klm-primary-dark);border-color:#b8ddc1;opacity:1}
.klm-visit-status{grid-column:1/-1;font-size:13px;line-height:1.4;color:var(--klm-primary-dark);padding-top:3px}.klm-visit-status[hidden]{display:none!important}
.klm-visit-row.is-unavailable{opacity:.6}.klm-visit-row.is-unavailable .klm-visit-status{color:#8a3d32}.klm-visit-row.is-held-by-me{border-color:#a9d6b4;background:#fbfffc}
@media(max-width:700px){.klm-visits-panel{padding:18px 14px;border-radius:18px}.klm-visits-head{flex-direction:column;gap:6px}.klm-visit-service{padding:13px 10px}.klm-visit-row{grid-template-columns:1fr;gap:10px;padding:13px}.klm-visit-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.klm-term-book,.klm-term-hold{width:100%;text-align:center}}
@media(max-width:390px){.klm-visit-actions{grid-template-columns:1fr}}

/* === 1.2.0 specialist photo fallback === */
.klm-material-page .klm-spec-photo-wrap{position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#edf6f0,#dcecdf)}
.klm-material-page .klm-spec-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:210px;font-size:54px;font-weight:800;letter-spacing:-.05em;color:var(--klm-primary-dark);background:linear-gradient(145deg,#eef7f1,#dbece0)}
