/* Stage1d, confirmed fixes after1c.2. */
.home-partners a { min-height:112px; padding:8px 20px; }
.home-partners .partner-logo { object-fit:contain; width:auto; max-width:100%; }
.home-partners .partner-logo--ptzs { height:96px; }
.home-partners .partner-logo--siec-badawcza-w-psychoterapii { height:84px; }
.home-partners .partner-logo--akademia-humanitas-ciemne { height:44px; }
.part-1c2-profile .profile-hero .profile-free-link { display:block; }
.part-1c2-profile .profile-free-link .arrow { display:inline-block; vertical-align:middle; margin-left:10px; }
.part-1c2-profile .profile-qualifications summary h2 { color:#1c2c44; }
.booking-calendar { width:100%; max-width:1040px; }
.booking-calendar .calendesk-embed { max-width:none; width:100%; }
.booking-calendar__title { margin-bottom:24px; }
@media(min-width:1024px) { .home-partners a { min-height:128px; } }

/* Exact scoped source: docs/propozycje/strona-glowna-poprawki.html. */
.p1e{
  --krem:#fbf8f4;--piasek:#f2ece3;--granat:#1c2c44;--noc:#0e1726;--t2:#526074;--koral:#ff6b61;--rdza:#a83c34;--linia:#ded6cb;
  --lawenda:#eee8ed;--brzoskwinia:#f5ded7;--zolty:#f7e8c7;--morela:#f8e6d2;--mieta:#dff0ea;
  --shadow:0 18px 40px rgba(28,44,68,.08);--shadow-h:0 26px 54px rgba(28,44,68,.14);
}
.p1e, .p1e *{box-sizing:border-box}
.p1e{margin:0}
.p1e{font-family:"Hanken Grotesk",system-ui,sans-serif;font-size:17px;line-height:1.6;color:var(--granat);background:var(--krem);-webkit-font-smoothing:antialiased}
.p1e a{color:inherit}
.p1e img{display:block;max-width:100%}
.p1e .c{max-width:1160px;margin:0 auto;padding:0 24px}
.p1e .it{font-family:"Brygada 1918",Georgia,serif;font-style:italic;font-weight:500;color:var(--rdza)}
.p1e .serif{font-family:"Brygada 1918",Georgia,serif;font-variant-numeric:lining-nums}
.p1e .ey{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--rdza);font-weight:600;display:flex;align-items:center;gap:8px;margin:0 0 12px}
.p1e .ey::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--koral)}
.p1e h2{font-size:clamp(30px,2.9vw,42px);line-height:1.12;font-weight:500;letter-spacing:-.01em;margin:0}
.p1e h3{font-size:20px;line-height:1.25;font-weight:600;margin:0}
.p1e p{margin:0}
.p1e .muted{color:var(--t2)}
.p1e.sec{padding:88px 0}
.p1e .head{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:end;margin-bottom:40px}
.p1e .head .side{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.p1e .head .side p{color:var(--granat);max-width:440px}
.p1e .btn{display:inline-flex;align-items:center;gap:12px;border-radius:999px;padding:13px 22px;font-weight:500;font-size:16px;text-decoration:none;border:1px solid var(--granat);background:transparent;white-space:nowrap;transition:transform .2s,background .2s}
.p1e .btn.p{background:var(--koral);border-color:var(--koral)}
.p1e .btn .ar{transition:transform .2s}
.p1e .btn:hover .ar{transform:translateX(4px)}
.p1e .tl{display:inline-flex;align-items:center;gap:10px;font-weight:500;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.p1e .tl .ar{transition:transform .2s;text-decoration:none}
.p1e .tl:hover .ar{transform:translateX(4px)}
.p1e .ic{display:inline-block;width:22px;height:22px;background:currentColor;-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat;flex:none}
.p1e.band-lav{background:var(--lawenda)}
.p1e .tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.p1e .tile{background:#fff;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease}
.p1e .tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-h)}
.p1e .tile .top{position:relative;height:128px;padding:26px 28px;display:flex;align-items:flex-end;overflow:hidden}
.p1e .tile .top img{position:absolute;right:-10px;top:-18px;width:190px;height:190px;object-fit:contain;opacity:.55;transition:transform .5s ease}
.p1e .tile:hover .top img{transform:scale(1.06) rotate(-3deg)}
.p1e .tile .top h3{position:relative;font-size:24px;font-weight:600}
.p1e .tile .bd{padding:24px 28px 26px;display:flex;flex-direction:column;gap:14px;flex:1}
.p1e .tile .lead{font-weight:600}
.p1e .tile .desc{color:var(--granat);font-size:16px}
.p1e .links{list-style:none;margin:6px 0 0;padding:0;border-top:1px solid #eee7dc}
.p1e .links a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid #eee7dc;text-decoration:none;font-weight:500;font-size:16px;transition:background .2s,padding .2s}
.p1e .links a .ar{color:var(--rdza);transition:transform .2s}
.p1e .links a:hover{background:#faf6f1;padding-left:10px}
.p1e .links a:hover .ar{transform:translateX(4px)}
.p1e .facts{display:flex;flex-direction:column;gap:8px;background:var(--mieta);border-radius:14px;padding:12px 14px;font-size:15px}
.p1e .facts div{display:flex;gap:10px;align-items:center}
.p1e .facts .ic{color:#2f6b5c;width:20px;height:20px}
.p1e .tile .foot{margin-top:auto;padding-top:6px;display:flex;flex-direction:column;gap:12px}
.p1e .note{font-size:14px;color:var(--t2)}
.p1e .invite{margin-top:44px;padding-top:40px;border-top:1px solid rgba(28,44,68,.14);display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
.p1e .invite .q{font-family:"Brygada 1918",Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(30px,3.2vw,44px);line-height:1.1;color:var(--granat);margin:0 0 14px}
.p1e .invite .q em{color:var(--rdza)}
.p1e .invite .r{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.p1e .faces{display:flex;align-items:center}
.p1e .faces img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:50% 22%;border:3px solid var(--lawenda);margin-left:-10px}
.p1e .faces img:first-child{margin-left:0}
.p1e .faces span{margin-left:12px;font-size:14px;color:var(--t2)}
.p1e.band-sand{background:var(--piasek)}
.p1e .nums{background:#fff;border-radius:28px;display:grid;grid-template-columns:repeat(4,1fr);padding:36px 12px;box-shadow:var(--shadow)}
.p1e .num{padding:4px 28px;border-left:1px solid #eee7dc}
.p1e .num:first-child{border-left:0}
.p1e .num small{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--rdza);font-weight:600;height:18px}
.p1e .num b{display:block;font-family:"Brygada 1918",serif;font-weight:500;font-size:clamp(44px,4.6vw,64px);line-height:1.05;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.01em;margin:6px 0 10px;white-space:nowrap}
.p1e .num span{font-size:15px;color:var(--t2);display:block;max-width:200px}
.p1e .src{font-size:13px;color:var(--t2);margin:14px 4px 0}
.p1e .partners{margin-top:56px}
.p1e .partners h3{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--t2);font-weight:600;margin:0 0 16px}
.p1e .pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.p1e .pcard{background:#fff;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.p1e .pcard:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.p1e .pcard .logo{height:150px;display:grid;place-items:center;padding:20px;border-bottom:1px solid #f1ebe2}
.p1e .pcard .logo img{max-height:var(--h);max-width:80%;width:auto;height:auto}
.p1e .pcard .tx{padding:18px 22px 22px;display:flex;flex-direction:column;gap:6px}
.p1e .pcard .tx b{font-size:16px}
.p1e .pcard .tx p{font-size:15px;color:var(--t2)}
.p1e .more{margin-top:24px}
.p1e.band-peach{background:var(--brzoskwinia)}
.p1e .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:s}
.p1e .step{background:#fff;border-radius:24px;padding:26px 26px 28px;display:flex;flex-direction:column;gap:12px;position:relative}
.p1e .step .row{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.p1e .step .n{font-family:"Brygada 1918",serif;font-size:46px;line-height:1;font-variant-numeric:lining-nums}
.p1e .step .n::after{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--koral);margin-left:6px;vertical-align:top;margin-top:8px}
.p1e .step .chip{width:48px;height:48px;border-radius:14px;background:var(--brzoskwinia);display:grid;place-items:center;color:var(--rdza)}
.p1e .step h3{font-size:20px}
.p1e .step p{font-size:16px;color:var(--granat)}
.p1e .step:not(:last-child)::before{content:"";position:absolute;right:-20px;top:50px;width:20px;border-top:1px dashed rgba(168,60,52,.45)}
.p1e .places{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.p1e .place{display:flex;justify-content:space-between;align-items:flex-end;padding:18px 0;border-bottom:1px solid var(--linia);text-decoration:none}
.p1e .place b{font-size:20px;font-weight:500;display:block}
.p1e .place small{color:var(--t2);font-size:14px}
.p1e .place .ar{transition:transform .2s}
.p1e .place:hover .ar{transform:translateX(4px)}
.p1e .online{margin-top:32px;background:var(--piasek);border-radius:28px;display:grid;grid-template-columns:420px 1fr;overflow:hidden;align-items:stretch}
.p1e .online .art{position:relative;background:#ebe3d6;min-height:300px}
.p1e .online .art svg{position:absolute;inset:0;width:100%;height:100%}
.p1e .online .tx{padding:40px 44px;display:flex;flex-direction:column;gap:16px;justify-content:center}
.p1e .online .tx .q{font-family:"Brygada 1918",serif;font-style:italic;font-size:clamp(28px,2.8vw,38px);line-height:1.12;font-weight:500}
.p1e .online .tx .q em{color:var(--rdza)}
.p1e .chips{display:flex;flex-wrap:wrap;gap:8px}
.p1e .chip2{display:inline-flex;align-items:center;gap:8px;background:#fff;border-radius:999px;padding:7px 14px 7px 10px;font-size:14.5px;font-weight:500}
.p1e .chip2 .ic{width:18px;height:18px;color:#3d5a7a}
.p1e .pulse{transform-origin:center;animation:home1e-pulse 2.6s ease-out infinite}
@keyframes home1e-pulse{0%{opacity:.7;transform:scale(.6)}100%{opacity:0;transform:scale(1.8)}}
.p1e.band-yel{background:var(--zolty)}
.p1e .kgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.p1e .kcard{position:relative;border-radius:24px;overflow:hidden;min-height:380px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.p1e .kcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-h)}
.p1e .kcard .bg{position:absolute;inset:0}
.p1e .kcard .bg img{position:absolute;right:-40px;top:-40px;width:300px;height:300px;object-fit:contain;opacity:.7;transition:transform .6s ease}
.p1e .kcard:hover .bg img{transform:scale(1.07) rotate(4deg)}
.p1e .kcard .body{position:relative;margin:0;padding:24px 26px 26px;background:linear-gradient(180deg,rgba(255,255,255,0) 0,rgba(255,255,255,.9) 40px,#fff 80px);display:flex;flex-direction:column;gap:8px}
.p1e .kcard .lab{position:absolute;top:22px;left:24px;background:rgba(255,255,255,.85);border-radius:999px;padding:4px 12px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--rdza);font-weight:600}
.p1e .kcard h3{font-family:"Brygada 1918",serif;font-weight:500;font-size:25px;line-height:1.2}
.p1e .kcard p{font-size:15.5px;color:var(--t2)}
.p1e .kcard .tl{margin-top:8px;font-size:15px}
.p1e .faqg{display:grid;grid-template-columns:1fr 1.5fr;gap:48px;align-items:start}
.p1e .bubbles{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}
.p1e .bubble{position:relative;border-radius:24px 24px 24px 6px;padding:26px 26px 24px;display:flex;flex-direction:column;gap:12px}
.p1e .bubble .qi{width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.7);display:grid;place-items:center;color:var(--rdza)}
.p1e .bubble .q{font-family:"Brygada 1918",serif;font-style:italic;font-size:24px;line-height:1.25;font-weight:500}
.p1e .bubble .a{display:flex;gap:10px;align-items:flex-start;font-size:15.5px;border-top:1px solid rgba(28,44,68,.12);padding-top:12px}
.p1e .bubble .a .ic{width:20px;height:20px;color:var(--rdza);margin-top:2px}
.p1e .b1{background:var(--lawenda)}
.p1e .b2{background:var(--brzoskwinia)}
.p1e .acc{border-top:1px solid var(--linia)}
.p1e .acc details{border-bottom:1px solid var(--linia);padding:18px 0}
.p1e .acc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;font-weight:500}
.p1e .acc summary::-webkit-details-marker{display:none}
.p1e .acc summary::after{content:"+";color:var(--rdza);font-size:22px;line-height:1}
.p1e .acc details[open] summary::after{content:"–"}
.p1e .acc details p{margin-top:10px;color:var(--granat);font-size:16px}
.p1e .bgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}
.p1e .bk{border-radius:28px;padding:32px;display:flex;flex-direction:column;gap:16px}
.p1e .bk.paid{background:#fff;box-shadow:var(--shadow)}
.p1e .bk.free{background:var(--granat);color:#fbf8f4}
.p1e .bk .eyb{font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;display:flex;gap:8px;align-items:center;color:var(--rdza)}
.p1e .bk .eyb::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--koral)}
.p1e .bk.free .eyb{color:#ffb7b1}
.p1e .bk h3{font-size:26px;font-weight:500}
.p1e .spec{border-radius:18px;overflow:hidden}
.p1e .bk.paid .spec{background:var(--piasek)}
.p1e .bk.free .spec{background:#fbf8f4;color:var(--granat)}
.p1e .spec div{padding:12px 18px;border-top:1px solid rgba(28,44,68,.1)}
.p1e .spec div:first-child{border-top:0}
.p1e .spec small{display:block;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--rdza);font-weight:600}
.p1e .spec b{font-family:"Brygada 1918",serif;font-weight:500;font-size:21px;font-variant-numeric:lining-nums}
.p1e .bk .faces img{border-color:#fff;width:40px;height:40px}
.p1e .bk .bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
@media (max-width:1000px){.p1e .head,.p1e .invite,.p1e .faqg{grid-template-columns:1fr}
.p1e .tiles,.p1e .kgrid,.p1e .pgrid,.p1e .steps,.p1e .places,.p1e .bgrid{grid-template-columns:1fr}
.p1e .nums{grid-template-columns:1fr 1fr;row-gap:28px}
.p1e .num:nth-child(3){border-left:0}
.p1e .online{grid-template-columns:1fr}
.p1e .online .art{min-height:220px}
.p1e .step:not(:last-child)::before{display:none}
.p1e .bubbles{grid-template-columns:1fr}}
@media (max-width:600px){.p1e.sec{padding:64px 0}
.p1e .online .tx,.p1e .bk{padding:26px 22px}
.p1e .num{padding:4px 16px}}
@media (prefers-reduced-motion:reduce){.p1e, .p1e *{transition:none!important;animation:none!important}}
/* Integrate the mock into the existing prototype without leaking styles to the shell. */
.p1e h2,.p1e h3{letter-spacing:normal;text-wrap:wrap}
.p1e h2{letter-spacing:-.01em}
.p1e p{text-wrap:wrap}
.p1e h2 br{display:initial}
.p1e .it,.p1e .q,.p1e .num b,.p1e .n,.p1e .spec b{font-variant-numeric:lining-nums}
.p1e .num b{font-variant-numeric:lining-nums tabular-nums}
.p1e .spec small{font-size:12px}
.p1e .btn.p{color:var(--granat)}
/* Reserve four equal tracks and a fixed number line. The source mock overflows at390px. */
.p1e .nums{grid-template-columns:repeat(4,minmax(0,1fr))}
.p1e .num{min-width:0;container-type:inline-size}
.p1e .num b{font-size:min(clamp(44px,4.6vw,64px),30.5cqw);min-height:clamp(46.2px,4.83vw,67.2px)}
.p1e .num:last-child b{font-size:min(clamp(44px,4.6vw,64px),21.8cqw)}
/* Enlarge text-link hit areas while retaining the mock's visible spacing. */
.p1e a.tl{--tap-pad:max(0px,calc((44px - 1.6em)/2));padding-block:var(--tap-pad);margin-top:calc(var(--link-top,0px) - var(--tap-pad));margin-bottom:calc(0px - var(--tap-pad));min-height:44px}
.p1e a.tl.more{--link-top:24px}
.p1e .acc summary{--tap-pad:max(0px,calc((44px - 1.6em)/2));padding-block:var(--tap-pad);margin-block:calc(0px - var(--tap-pad));min-height:44px;align-items:center}
.p1e .links a:focus-visible{background:#faf6f1}
.p1e .bk.free :focus-visible{outline-color:#ffb7b1}
.p1e .faces img{flex-shrink:0}
.p1e .faces span{min-width:0}
@media(max-width:1000px){.p1e .nums{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){
 .p1e .tile:hover,.p1e .tile:hover .top img,.p1e .pcard:hover,.p1e .kcard:hover,.p1e .kcard:hover .bg img,.p1e .btn:hover .ar,.p1e .tl:hover .ar,.p1e .links a:hover .ar,.p1e .place:hover .ar{transform:none}
 .p1e .links a:hover{padding-left:4px}
}

/* „Jak chcesz zacząć”: dwie karty (płatna wizyta, bezpłatna rozmowa), etap 1e partia 19 (Claude, 12.10.2026).
   Wspólne dla Umów wizytę i strony głównej. Wzór: docs/propozycje/umow-wizyte-v2.html i strona-glowna-v2.html (zaakceptowane). */

.s19-ic { display:inline-block; width:18px; height:18px; flex:none; background:currentColor; -webkit-mask:var(--m) center/contain no-repeat; mask:var(--m) center/contain no-repeat; }
.s19-start { display:grid; gap:20px; align-items:stretch; }
.s19-card { position:relative; overflow:hidden; display:flex; flex-direction:column; gap:14px; min-width:0; padding:26px; border-radius:30px; }
.s19-card > * { position:relative; margin:0; }
.s19-card__b { width:54px; height:54px; border-radius:18px; display:grid; place-items:center; }
.s19-card__b .s19-ic { width:26px; height:26px; }
.s19-card .eyebrow { margin:0; }
.s19-card :is(h2,h3) { margin:0; font-size:clamp(25px,2.4vw,30px); line-height:1.15; font-weight:500; max-width:none; }
.s19-card :is(h2,h3) em { font-family:var(--font-serif); font-style:italic; font-weight:500; color:var(--color-rust); }
.s19-pills { display:flex; flex-wrap:wrap; gap:8px; }
.s19-pills > span { display:inline-flex; align-items:center; gap:7px; padding:7px 13px; border-radius:999px; font-size:14.5px; font-weight:500; }
.s19-who { display:flex; align-items:center; gap:12px; font-size:14.5px; }
.s19-who > :last-child { min-width:0; }
.s19-faces { display:flex; flex:none; }
.s19-faces img { width:38px; height:38px; border-radius:50%; object-fit:cover; object-position:50% 20%; border:2px solid var(--color-white); margin-left:-10px; }
.s19-faces img:first-child { margin-left:0; }
.s19-row { margin-top:auto; padding-top:8px; display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; }
.s19-micro { font-size:13.5px; }
.s19-card--paid { background:var(--color-white); box-shadow:0 18px 40px rgba(28,44,68,.08); }
.s19-card--paid .s19-card__b { background:var(--color-lavender); color:#6e5a84; }
.s19-card--paid .s19-pills > span { background:var(--color-cream); }
.s19-card--paid .s19-pills .s19-ic { color:var(--color-rust); }
.s19-card--paid .s19-micro { color:var(--color-muted); }
.s19-card--free { background:var(--color-navy); color:var(--color-cream); }
.s19-card--free .s19-card__b { background:rgba(255,255,255,.1); color:var(--color-pale-coral); }
.s19-card--free .eyebrow { color:var(--color-pale-coral); }
.s19-card--free :is(h2,h3) { color:var(--color-cream); }
.s19-card--free :is(h2,h3) em { color:var(--color-pale-coral); }
.s19-card--free p { color:#d9dde5; }
.s19-card--free .s19-pills > span { background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); color:var(--color-cream); }
.s19-card--free .s19-pills .s19-ic { color:var(--color-pale-coral); }
.s19-card--free .s19-faces img { border-color:var(--color-navy); }
.s19-card--free .s19-micro { color:#b4bccb; }
.s19-card--free :focus-visible { outline-color:var(--color-pale-coral); }
.s19-badge { position:absolute !important; right:22px; top:22px; padding:5px 12px; border-radius:999px; background:var(--color-coral); color:var(--color-navy); font-size:13px; font-weight:700; }
.s19-rings { position:absolute !important; right:-80px; bottom:-80px; width:280px; height:280px; color:var(--color-cream); opacity:.12; pointer-events:none; }
@media (min-width:640px) { .s19-card { padding:30px; } }
@media (min-width:900px) { .s19-start { grid-template-columns:1fr 1fr; } }
@media (max-width:479px) { .s19-badge { position:static !important; align-self:flex-start; } }

/* Strona główna, etap 1e partia 21 (Claude, 12.10.2026). Wzór: docs/propozycje/strona-glowna-v2.html (zaakceptowany przez Pawła).
   Pierwszy ekran z kompozycją zdjęć, pasek faktów z ikonami, karta „41 specjalistów”, karty gabinetów, artykuły jak w Wiedzy.
   „Jak chcesz zacząć”: styles/start-1e19.css. */

.h21-ic { display:inline-block; width:18px; height:18px; flex:none; background:currentColor; -webkit-mask:var(--m) center/contain no-repeat; mask:var(--m) center/contain no-repeat; }

/* Pierwszy ekran: łuk z fotelem, okrągłe zdjęcie sofy, lawendowe koło z liniami */
.h21-col { position:relative; margin:0; height:clamp(360px, 92vw, 420px); }
.h21-col__bg { position:absolute; right:0; top:6px; width:78%; aspect-ratio:1; border-radius:50%; background:var(--color-lavender); }
.h21-col__bg svg { display:block; width:100%; height:100%; color:#6e5a84; opacity:.5; }
.h21-col__arch { position:absolute; right:8%; top:24px; width:60%; aspect-ratio:4/5; border-radius:999px 999px 30px 30px; overflow:hidden; box-shadow:0 18px 40px rgba(28,44,68,.1); background:var(--color-sand); }
.h21-col__round { position:absolute; left:2%; bottom:40px; width:40%; aspect-ratio:1; border-radius:50%; overflow:hidden; border:6px solid var(--color-cream); box-shadow:0 18px 40px rgba(28,44,68,.1); background:var(--color-sand); }
.h21-col img { display:block; width:100%; height:100%; object-fit:cover; }
.h21-col__dot { position:absolute; right:4%; bottom:96px; width:14px; height:14px; border-radius:50%; background:var(--color-coral); box-shadow:0 0 0 9px rgba(255,107,97,.15); }
.h21-col figcaption { position:absolute; left:0; right:0; bottom:0; text-align:center; font-size:14px; color:var(--color-muted); }
@media (min-width:768px) { .h21-col { height:520px; } .h21-col__arch { right:40px; top:40px; width:62%; } .h21-col__round { left:4%; bottom:46px; width:38%; border-width:7px; } .h21-col__dot { right:28px; bottom:120px; width:16px; height:16px; box-shadow:0 0 0 10px rgba(255,107,97,.15); } }
@media (min-width:1100px) { .h21-col { height:560px; } }

/* Pasek faktów pod pierwszym ekranem */
.trust-strip__items .h21-fact { display:inline-flex; align-items:center; gap:10px; color:var(--color-navy); }
.trust-strip__items .h21-fact::before { display:none !important; }
.trust-strip__items .h21-ic { color:var(--color-rust); }

/* Zespół: karta „41 specjalistów” (zachowuje klasę help-card, bo shared-1c2.js wstawia przed nią losowe profile) */
.h21-team-all { margin-top:16px; }
.help-card.h21-all { position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:flex-start; gap:0; padding:0; border-radius:var(--radius-card); background:var(--color-navy); color:var(--color-cream); box-shadow:0 18px 40px rgba(28,44,68,.08); }
.h21-all__wall { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; padding:14px 14px 0; }
.h21-all__wall img { width:100%; height:auto; aspect-ratio:1; border-radius:50%; object-fit:cover; object-position:50% 20%; }
.h21-all__wall span { aspect-ratio:1; border-radius:50%; display:grid; place-items:center; background:var(--color-coral); color:var(--color-navy); font-weight:700; font-size:15px; }
.h21-all__b { display:flex; flex-direction:column; gap:12px; flex:1; padding:18px; }
.help-card.h21-all .h21-all__n { display:flex; align-items:center; gap:12px; margin:0; font:500 18px/1.2 var(--font-sans); color:var(--color-cream); }
.h21-all__n b { font:500 48px/1 var(--font-serif); font-variant-numeric:lining-nums; color:var(--color-pale-coral); }
.h21-all__mid { display:grid; gap:12px; margin-block:auto; padding-block:8px; }
.help-card.h21-all .h21-all__mid > p { margin:0; font-size:14.5px; color:#d9dde5; }
.h21-all__free { position:relative; display:flex; flex-direction:column; gap:4px; padding:15px 54px 16px 16px; border-radius:18px; background:var(--color-coral); color:var(--color-navy); text-decoration:none; transition:background .2s, transform .2s; }
.h21-all__free:hover { background:var(--color-coral-hover); transform:translateY(-2px); }
.help-card.h21-all .h21-all__free:focus-visible { outline:3px solid var(--color-pale-coral); outline-offset:3px; }
.h21-all__q { font-size:13px; font-weight:600; }
.h21-all__t { font-size:17px; line-height:1.25; font-weight:700; }
.h21-all__m { font-size:13px; }
.h21-all__go { position:absolute; right:12px; top:50%; width:34px; height:34px; margin-top:-17px; display:grid; place-items:center; border-radius:50%; background:var(--color-navy); color:var(--color-cream); font-size:15px; }
.h21-all__all { align-self:center; display:inline-flex; align-items:center; gap:8px; min-height:44px; margin-top:-4px; font-size:14.5px; color:var(--color-cream); text-underline-offset:4px; text-decoration-thickness:1px; }
.h21-all__all .arrow { filter:none; }

/* Nasze miejsca */
.h21-places { display:grid; gap:16px; }
.h21-of { position:relative; display:flex; flex-direction:column; overflow:hidden; border-radius:22px; background:var(--color-white); color:var(--color-navy); text-decoration:none; box-shadow:0 18px 40px rgba(28,44,68,.08); transition:transform .25s, box-shadow .25s; }
.h21-of:hover { transform:translateY(-3px); box-shadow:0 26px 54px rgba(28,44,68,.14); }
.h21-of:focus-visible, .h21-onl:focus-visible, .h21-arts .w16-card:focus-visible { outline:3px solid var(--color-navy); outline-offset:3px; }
.h21-of__ph { display:block; aspect-ratio:4/3; overflow:hidden; background:var(--color-sand); }
.h21-of__ph img { display:block; width:100%; height:100%; object-fit:cover; }
.h21-of__b { display:flex; flex-direction:column; gap:4px; padding:16px 18px 58px; font-size:14.5px; color:var(--color-muted); }
.h21-of__b b { font:500 23px/1.15 var(--font-serif); color:var(--color-navy); }
.h21-of__hint { display:flex; align-items:center; gap:6px; margin-top:4px; }
.h21-of__hint .h21-ic { width:15px; height:15px; color:var(--color-rust); }
.h21-of__who { display:flex; align-items:center; gap:10px; margin-top:8px; font-size:13.5px; font-weight:600; color:var(--color-navy); }
.h21-faces { display:flex; }
.h21-faces img { width:28px; height:28px; margin-left:-8px; border:2px solid var(--color-white); border-radius:50%; object-fit:cover; object-position:50% 20%; }
.h21-faces img:first-child { margin-left:0; }
.h21-go { position:absolute; right:14px; bottom:14px; width:36px; height:36px; display:grid; place-items:center; border-radius:50%; background:var(--color-sand); font-size:15px; transition:transform .25s; }
.h21-of:hover .h21-go { transform:translateX(3px); }
.p1e .h21-onl { color:var(--color-cream); }
.p1e .h21-of { color:var(--color-navy); }
.h21-onl { position:relative; overflow:hidden; display:flex; flex-direction:column; gap:10px; padding:22px; border-radius:22px; background:var(--color-navy); color:var(--color-cream); text-decoration:none; }
.h21-onl svg { position:absolute; right:-40px; bottom:-40px; width:200px; height:200px; color:var(--color-cream); opacity:.14; pointer-events:none; }
.h21-onl b { position:relative; font:500 26px/1.1 var(--font-serif); }
.h21-onl b em { color:var(--color-pale-coral); }
.h21-onl p { position:relative; margin:0; font-size:14.5px; color:#d9dde5; }
.h21-onl ul { position:relative; display:grid; gap:6px; margin:6px 0 0; padding:0; list-style:none; font-size:14px; }
.h21-onl li { display:flex; align-items:center; gap:8px; }
.h21-onl li .h21-ic { width:16px; height:16px; color:var(--color-pale-coral); }
.h21-onl__more { position:relative; display:inline-flex; align-items:center; gap:8px; margin-top:6px; font-size:14.5px; font-weight:600; text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1px; }
.h21-onl__soon { position:relative; margin-top:auto; padding-top:12px; border-top:1px solid rgba(251,248,244,.16); font-size:13.5px; color:#d9dde5; }
.h21-onl:focus-visible { outline-color:var(--color-navy); }
@media (min-width:640px) { .h21-places { grid-template-columns:1fr 1fr; } }
@media (min-width:1100px) { .h21-places { grid-template-columns:repeat(3,1fr) 1.05fr; } }

/* Artykuły: te same karty co w Wiedzy (styles/wiedza-1e16.css) */
.h21-arts { display:grid; gap:20px; }
@media (min-width:900px) { .h21-arts { grid-template-columns:repeat(3,1fr); } }
.h21-arts .w16-chip { display:inline-flex; align-items:center; gap:8px; margin:0; padding:5px 12px; border-radius:999px; background:var(--color-white); color:var(--color-navy); font-size:13px; font-weight:600; line-height:1.2; }
.h21-arts .w16-chip::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--ink); }
.h21-arts .w16-tcover { position:relative; overflow:hidden; min-height:200px; margin:10px 10px 0; padding:16px 18px 18px; border-radius:18px; background:var(--bg); display:flex; flex-direction:column; justify-content:space-between; gap:18px; }
.h21-arts .w16-tcover--line { box-shadow:inset 0 0 0 1px var(--color-line); }
.h21-arts .w16-tcover > img { position:absolute; width:var(--w); height:auto; right:var(--x); top:var(--y); transform:rotate(var(--r)); opacity:.6; pointer-events:none; }
.h21-arts .w16-tcover .w16-chip { position:relative; align-self:flex-start; }
.h21-arts .w16-tcover h3 { position:relative; margin:0; max-width:82%; font:500 21px/1.16 var(--font-serif); color:var(--color-navy); text-wrap:pretty; }
.h21-arts .w16-tcover h3 em { color:var(--color-rust); }
@media (min-width:768px) { .h21-arts .w16-tcover h3 { font-size:23px; max-width:68%; } }
.h21-arts .w16-card { position:relative; display:flex; flex-direction:column; overflow:hidden; border-radius:26px; background:var(--color-white); color:var(--color-navy); text-decoration:none; box-shadow:0 18px 40px rgba(28,44,68,.08); transition:transform .25s, box-shadow .25s; }
.h21-arts .w16-card:hover { transform:translateY(-4px); box-shadow:0 26px 54px rgba(28,44,68,.14); }
.h21-arts .w16-card__b { display:flex; flex-direction:column; gap:8px; flex:1; padding:14px 60px 22px 20px; }
.h21-arts .w16-lead { font-size:15px; line-height:1.5; color:var(--color-muted); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.h21-arts .w16-meta { margin:auto 0 0; font-size:13px; color:var(--color-muted); }
.h21-arts .w16-go { position:absolute; right:18px; bottom:18px; width:36px; height:36px; border-radius:50%; display:grid; place-items:center; background:var(--color-sand); transition:transform .25s; }
.h21-arts .w16-card:hover .w16-go { transform:translateX(3px); }

/* Jak chcesz zacząć: odstęp pod nagłówkiem sekcji */
#mwd-booking .s19-start { margin-top:8px; }
#mwd-booking .button--navy { background:var(--color-navy); border-color:var(--color-navy); color:var(--color-cream); }
#mwd-booking .button--navy:hover { background:#2a3d5c; border-color:#2a3d5c; }

@media (prefers-reduced-motion:reduce) {
  .h21-all__free, .h21-of, .h21-go, .h21-arts .w16-card, .h21-arts .w16-go { transition:none; }
  .h21-all__free:hover, .h21-of:hover, .h21-arts .w16-card:hover { transform:none; }
}
/* Na telefonie profile są karuzelą: karta „41” ma własną wysokość, bez pustych odstępów. */
@media (max-width:767px) { .help-card.h21-all { align-self:flex-start; } .h21-all__mid { margin-block:0; } }

/* Partia 23: poprawki z kontroli Codex (12.10.2026) */
.p1e .s19-card .button--primary { color:var(--color-navy); } /* .p1e a{color:inherit} dawał kremowy tekst na koralu (2,63:1) */
/* Partia 23: karta „Nie ma tu Twojego pytania?” w sekcji Pytania */
.p1e .h23-ask { max-width:400px; margin-top:28px; padding:20px 22px 12px; border-radius:22px; background:var(--color-white); box-shadow:0 18px 40px rgba(28,44,68,.08); }
.p1e .h23-ask__t { margin:0 0 6px; font:500 21px/1.2 var(--font-sans); }
.p1e .h23-ask p:not(.h23-ask__t) { font-size:15px; line-height:1.55; color:var(--color-muted); }
.p1e .h23-ask p a { font-weight:600; color:var(--color-navy); }
.p1e .h23-ask .tl { min-height:44px; font-size:15px; }
/* Partia 23: opinie Google przy gabinetach i w pasku faktów */
.g-star { color:#e0a100; }
.h21-of__rating { display:flex; align-items:center; gap:6px; margin-top:6px; font-size:13.5px; font-weight:600; color:var(--color-navy); }
/* Partia 27 (Claude): nabory do grup w kafelku „Dla mnie”. */
.p1e .tile .h27-row { display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; }
.p1e .tile a.h27-open { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0 16px; border-radius:999px; background:#ffe3e0; color:var(--color-rust); font-size:15px; font-weight:600; text-decoration:none; }
.p1e .tile a.h27-open:hover { background:#ffd3ce; }
.p1e .tile a.h27-open:focus-visible { outline:3px solid var(--color-navy); outline-offset:2px; }
.h27-open__dot { width:8px; height:8px; border-radius:50%; background:var(--color-coral); flex:none; }
/* Partia 60: łuk ze zdjęciem mieści się w sekcji (Claude, 14.10.2026). */
.h21-col { width:100%; max-width:560px; margin-inline:auto; }
.h21-col__arch { width:min(60%, 316px); }
.h21-col__bg { width:min(78%, 400px); }
@media (min-width:768px) { .h21-col__arch { width:min(62%, 368px); } .h21-col__bg { width:78%; } }

/* Reserve space below the photo for its caption on narrow layouts. */
@media (max-width:767px) { .h21-col { height:clamp(360px, 92vw, 460px); } }
