/* Slzi portal – verejny prehled, vzhled bez zmen dat. */
body.portal-public{background:linear-gradient(145deg,#fff7fb,#f7f7fb 70%);color:#342532}
body.portal-public>header{padding:22px max(18px,calc((100% - 1180px)/2));gap:22px;background:linear-gradient(115deg,#f00070,#d0005f);border-bottom:1px solid #ffffff38;box-shadow:0 6px 26px #8a00381a}
body.portal-public>header .brand-logo{width:220px;max-height:112px;object-fit:contain;background:transparent;padding:0;border-radius:0}
body.portal-public>header .slzi-main-nav{gap:10px;align-items:center}
body.portal-public>header .slzi-main-nav>a{border:1px solid #ffffff55!important;background:#ffffff12!important;border-radius:11px!important;padding:10px 15px!important;line-height:1.4;font-size:13px}
body.portal-public>main{max-width:1230px;margin:auto;padding:34px 24px 55px;min-width:0}
body.portal-public .portal-top-row{margin-bottom:26px;gap:18px}
body.portal-public .portal-page-heading{min-width:0}
body.portal-public .portal-page-heading>.eyebrow{font-size:11px;letter-spacing:2px;line-height:1.6;margin:0 0 10px}
body.portal-public .portal-page-heading h1{font-size:clamp(28px,3.3vw,43px);line-height:1.15;letter-spacing:-1px;margin:0 0 14px}
body.portal-public .portal-page-heading .intro{font-size:15px;line-height:1.8;max-width:760px;margin:0;color:#756573}
body.portal-public .card{border:1px solid #f0dce7;border-radius:20px;box-shadow:0 7px 24px #52122d05;padding:26px;margin-bottom:24px}
body.portal-public .milestone{border-top:3px solid #ed006c;padding:26px}
body.portal-public .partner-logos{gap:22px;margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid #f5e7ee}
body.portal-public .partner-logos img{height:120px;max-width:46%;object-fit:contain}
body.portal-public .milestone .eyebrow{font-size:11px;letter-spacing:2px}
body.portal-public .milestone h2{font-size:clamp(24px,2.5vw,33px);line-height:1.25;margin:10px 0 18px;letter-spacing:-.6px}
body.portal-public .milestone p{font-size:15px;line-height:1.8;margin:12px 0}
body.portal-public .help-stats{gap:12px;margin:24px 0}
body.portal-public .help-stats section{border:1px solid #f0dce7;border-radius:17px;padding:20px;background:#fff;box-shadow:0 6px 20px #52122d04}
body.portal-public .help-stats section:last-child{background:linear-gradient(115deg,#ed006c,#cc005c);color:#fff;border-color:transparent}
body.portal-public .help-stats span{font-size:12px;line-height:1.45}
body.portal-public .help-stats strong{font-size:clamp(22px,2.4vw,31px);font-weight:800;line-height:1.25;letter-spacing:-.6px;font-variant-numeric:tabular-nums}
body.portal-public .section-head{gap:16px;margin-bottom:18px}
body.portal-public .section-head h2{margin:0;font-size:25px;line-height:1.25}
body.portal-public .search{gap:8px;min-width:0}
body.portal-public .search input{border:1px solid #edb6ce;background:#fff9fc;box-shadow:inset 0 1px 3px #66002b04;border-radius:12px;padding:12px 14px;font-size:14px;min-height:45px}
body.portal-public .search button{border-radius:12px;padding:12px 19px;min-height:45px;font-size:14px}
body.portal-public .delivery{margin:18px 0;padding:22px;border:1px solid #f0dce7;border-left:4px solid #ed006c;border-radius:17px;background:linear-gradient(120deg,#fff9fc,#fff 55%);box-shadow:0 5px 16px #66002b03}
body.portal-public .delivery>.section-head{align-items:center;margin-bottom:16px}
body.portal-public .recipient-heading{gap:13px;min-width:0}
body.portal-public .recipient-heading h3{font-size:20px;line-height:1.35;letter-spacing:-.3px;margin:0}
body.portal-public .recipient-logo{width:70px;height:62px;flex:0 0 70px;padding:7px;background:#ffe7f2;border:1px solid #f6bfd7;border-radius:13px;object-fit:contain}
body.portal-public .badge{background:#ffeaf3;color:#ab004b;border:1px solid #f7d2e2;padding:6px 10px;font-size:11px;white-space:nowrap}
body.portal-public .donation-table{border:1px solid #efdae4;border-radius:12px;background:#fff;overflow:auto}
body.portal-public .donation-table th{background:#fff0f7;color:#8e3a60;font-size:11px;padding:11px 12px}
body.portal-public .donation-table td{padding:13px 12px;border-bottom-color:#f6e9ef;font-size:13px}
body.portal-public .delivery-bottom{margin-top:14px;gap:10px;align-items:center}
body.portal-public .delivery-bottom span{font-size:12px;color:#887081;line-height:1.5}
body.portal-public .delivery-bottom strong{display:block;background:#ffe6f1;border:1px solid #f8c9dd;color:#b00050;border-radius:10px;padding:10px 13px;font-size:14px;line-height:1.6}
body.portal-public .valuation-note{font-size:12px;line-height:1.7;color:#8b7a86;margin:12px 0 14px}
@media(max-width:760px){
body.portal-public>header{display:flex;flex-direction:column;align-items:center;padding:18px 15px 20px;gap:15px}
body.portal-public>header .brand-logo{width:210px;max-height:100px}
body.portal-public>header .slzi-main-nav{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:450px;gap:7px!important;align-items:stretch}
body.portal-public>header .slzi-main-nav>a{display:flex!important;align-items:center;justify-content:center;text-align:center;font-size:11px!important;padding:10px 6px!important;min-height:40px;line-height:1.4!important}
body.portal-public>main{padding:23px 14px 34px}
body.portal-public .portal-page-heading h1{font-size:29px;line-height:1.2;letter-spacing:-.8px}
body.portal-public .portal-page-heading>.eyebrow{font-size:10px;letter-spacing:1.5px}
body.portal-public .portal-page-heading .intro{font-size:14px;line-height:1.75}
body.portal-public .portal-top-row{margin-bottom:21px}
body.portal-public .card{padding:18px 14px;border-radius:17px;margin-bottom:20px}
body.portal-public .milestone{padding:19px 16px}
body.portal-public .partner-logos{gap:14px;margin-bottom:17px;padding-bottom:16px}
body.portal-public .partner-logos img{height:80px;width:calc(50% - 7px);max-width:calc(50% - 7px)}
body.portal-public .milestone h2{font-size:25px}
body.portal-public .milestone p{font-size:14px;line-height:1.75}
body.portal-public .help-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
body.portal-public .help-stats section{padding:16px 11px;min-width:0}
body.portal-public .help-stats section:first-child{grid-column:1/-1;padding:12px;display:flex;align-items:center;justify-content:center;gap:14px}
body.portal-public .help-stats section:last-child{grid-column:1/-1}
body.portal-public .help-stats span{font-size:11px;min-height:30px;line-height:1.4}
body.portal-public .help-stats section:first-child span{min-height:0}
body.portal-public .help-stats strong,body.portal-public .help-stats strong.stat-money,body.portal-public .help-stats section:first-child strong{font-size:clamp(20px,5.5vw,27px)!important;line-height:1.3;letter-spacing:-.4px;margin-top:7px;overflow-wrap:anywhere}
body.portal-public .help-stats section:first-child strong{margin:0}
body.portal-public .help-stats section:last-child{text-align:center}
body.portal-public .help-stats section:last-child span{min-height:0}
body.portal-public .section-head{gap:13px;margin-bottom:15px}
body.portal-public .section-head h2{font-size:23px}
body.portal-public .search{width:100%;display:flex;gap:7px}
body.portal-public .search input{flex:1;min-width:0;width:0;font-size:14px;padding:11px 12px}
body.portal-public .search button{flex:0 0 auto;padding:11px 15px;font-size:13px}
body.portal-public .delivery{padding:16px 12px;margin:16px 0;border-radius:14px;border-left-width:3px}
body.portal-public .delivery>.section-head{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}
body.portal-public .recipient-heading{gap:10px}
body.portal-public .recipient-heading h3{font-size:18px;line-height:1.4;overflow-wrap:anywhere}
body.portal-public .recipient-logo{width:54px;height:54px;flex-basis:54px;padding:5px;border-radius:11px}
body.portal-public .delivery>.section-head>.badge{justify-self:start;font-size:10px;padding:4px 9px}
body.portal-public .donation-table{overflow:visible;padding:0;border-radius:11px}
body.portal-public .donation-table table,body.portal-public .donation-table tbody{display:block;width:100%;min-width:0}
body.portal-public .donation-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
body.portal-public .donation-table tr{display:block;margin:0;padding:4px 10px 8px;border:0;border-bottom:1px solid #ecd3df}
body.portal-public .donation-table tr:last-child{border-bottom:0}
body.portal-public .donation-table td,body.portal-public .donation-table td:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0;max-width:100%;padding:8px 0;border:0;border-bottom:1px solid #f8eef3;text-align:right;white-space:normal;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
body.portal-public .donation-table td:before{content:attr(data-label);flex:0 0 43%;text-align:left;color:#8c7483;font-size:11px;font-weight:500;line-height:1.5}
body.portal-public .donation-table td:last-child{border-bottom:0;color:#b00050;font-weight:750}
body.portal-public .delivery-bottom{display:flex;flex-direction:column;align-items:stretch;margin-top:12px;gap:9px}
body.portal-public .delivery-bottom strong{font-size:12px;line-height:1.7;padding:10px;border-radius:9px}
body.portal-public .valuation-note{font-size:11px;line-height:1.7;margin:11px 0 0}
}
@media(prefers-reduced-motion:reduce){body.portal-public *{scroll-behavior:auto!important}}

/* Jemny fuchsiovy podklad pod logy; samotna loga zustavaji na bilem. */
body.portal-public .milestone.card{background:linear-gradient(130deg,#ffdaea,#f8bfd8)!important;overflow:hidden}
body.portal-public .milestone .partner-logos{background:#ffeaf4;margin:-26px -26px 24px;padding:26px 26px 22px;border-bottom:1px solid #f3cddd;border-radius:17px 17px 0 0}
body.portal-public .partner-logos img[src*="purina-logo"],body.portal-public .partner-logos img[alt="Purina"]{border:0!important;outline:0!important;box-shadow:none!important}
body.portal-public .milestone-numbers>div{background:#ffffffb8;border:1px solid #f7c8dc}
@media(max-width:760px){body.portal-public .milestone .partner-logos{margin:-19px -16px 20px;padding:20px 16px 17px;border-radius:14px 14px 0 0}}

/* Shodne rozmery bileho a cerneho podkladu obou log. */
body.portal-public .partner-logos img{display:block;width:225px!important;height:120px!important;max-width:calc(50% - 11px)!important;flex:0 1 225px!important;aspect-ratio:15/8!important;object-fit:contain!important;padding:10px!important;box-sizing:border-box!important;border:0!important;border-radius:0!important}
body.portal-public .partner-logos img[src*="purina-logo"],body.portal-public .partner-logos img[alt="Purina"]{background:#fff!important}
body.portal-public .partner-logos img[src*="proplan-logo"],body.portal-public .partner-logos img[alt="Purina Pro Plan"]{background:#000!important}
@media(max-width:760px){body.portal-public .partner-logos img{width:calc(50% - 7px)!important;max-width:calc(50% - 7px)!important;flex:1 1 0!important;height:auto!important;aspect-ratio:15/8!important;padding:7px!important}}

/* Kompaktni uvod a nenapadne jazyky. */
body.portal-public .portal-page-heading{width:100%;position:relative;padding:28px 30px;background:linear-gradient(115deg,#fff,#fff0f7);border:1px solid #f4d8e5;border-radius:20px;box-sizing:border-box}
body.portal-public .portal-page-heading>nav.language-picker[data-language-picker]{margin:0 0 17px auto!important;max-width:272px!important;gap:6px!important}
body.portal-public nav.language-picker[data-language-picker] button{padding:5px 3px!important;border-color:transparent!important;background:transparent!important;box-shadow:none!important;border-radius:7px!important}
body.portal-public nav.language-picker[data-language-picker] img{max-width:26px!important}
body.portal-public nav.language-picker[data-language-picker] button[aria-pressed="true"]{border-color:#ed006c!important;background:#fff!important;box-shadow:0 0 0 1px #ed006c18!important}
body.portal-public .portal-page-heading h1{font-size:clamp(28px,3.3vw,40px);margin-bottom:10px}
body.portal-public .portal-page-heading .intro{max-width:900px;line-height:1.65;font-size:14px}
body.portal-public .portal-top-row{margin-bottom:20px}
/* Stejne kreslene obrysy jako na certifikatu, pouze na pocitaci. */
body.portal-public .milestone .partner-logos{position:relative;isolation:isolate;min-height:190px;display:flex;align-items:center;justify-content:center;gap:22px;padding-left:24%;padding-right:24%}
body.portal-public .milestone .partner-logos::before,
body.portal-public .milestone .partner-logos::after{content:"";position:absolute;top:0;bottom:0;width:23%;background-image:url("portal-animals.png");background-repeat:no-repeat;background-size:320% auto;pointer-events:none;z-index:-1}
body.portal-public .milestone .partner-logos::before{left:0;background-position:left center}
body.portal-public .milestone .partner-logos::after{right:0;background-position:right center}
body.portal-public .milestone .partner-logos img{max-width:calc(50% - 11px)!important;animation:slzaLogoFromLeft 1.3s cubic-bezier(.2,.7,.2,1) both}
body.portal-public .milestone .partner-logos img:nth-child(2){animation-name:slzaLogoFromRight;animation-delay:.3s}
@keyframes slzaLogoFromLeft{from{opacity:0;transform:translateX(-32px) scale(.96)}to{opacity:1;transform:translateX(0) scale(1)}}
@keyframes slzaLogoFromRight{from{opacity:0;transform:translateX(32px) scale(.96)}to{opacity:1;transform:translateX(0) scale(1)}}
@media(max-width:760px){
body.portal-public .portal-page-heading{padding:18px 16px;border-radius:16px}
body.portal-public .portal-page-heading>nav.language-picker[data-language-picker]{margin:0 auto 17px!important;max-width:272px!important}
body.portal-public .portal-page-heading h1{font-size:27px;line-height:1.2}
body.portal-public .portal-page-heading>.eyebrow{font-size:9px;letter-spacing:1px}
body.portal-public .portal-page-heading .intro{font-size:13px;line-height:1.65}
body.portal-public .milestone .partner-logos{min-height:0;padding:20px 16px 17px;gap:14px}
body.portal-public .milestone .partner-logos::before,body.portal-public .milestone .partner-logos::after{display:none}
body.portal-public .milestone .partner-logos img{max-width:calc(50% - 7px)!important}
}
@media(prefers-reduced-motion:reduce){body.portal-public .milestone .partner-logos img{animation:none!important;transform:none!important;opacity:1!important}}

/* Oprava orezanych kreseb a zbytecne vysokeho uvodu. */
body.portal-public .portal-page-heading>nav.language-picker[data-language-picker]{position:absolute;top:22px;right:28px;margin:0!important}
body.portal-public .portal-page-heading>.eyebrow{padding-right:300px;margin-bottom:13px}
body.portal-public .portal-page-heading{padding-top:28px;padding-bottom:25px}
body.portal-public .portal-page-heading .intro{font-size:15px;max-width:850px}
body.portal-public .milestone .partner-logos{min-height:180px;padding-top:25px;padding-bottom:25px}
body.portal-public .milestone .partner-logos::before,body.portal-public .milestone .partner-logos::after{width:25%;background-size:auto 190px}
@media(max-width:1000px) and (min-width:761px){body.portal-public .milestone .partner-logos::before,body.portal-public .milestone .partner-logos::after{background-size:auto 145px}}
@media(max-width:760px){
body.portal-public .portal-page-heading>nav.language-picker[data-language-picker]{position:static;margin:0 auto 15px!important}
body.portal-public .portal-page-heading>.eyebrow{padding-right:0}
body.portal-public .portal-page-heading{padding:18px 16px}
body.portal-public .portal-page-heading .intro{font-size:13px}
body.portal-public .milestone .partner-logos{min-height:0;padding:20px 16px 17px}
}

/* Jemne prisunuti zvirat k logum a jednoredkovy mobilni nadpis. */
@media(min-width:761px){
body.portal-public .milestone .partner-logos::before{background-position:20px calc(50% + 8px)}
body.portal-public .milestone .partner-logos::after{background-position:calc(100% - 20px) calc(50% + 8px)}
}
@media(max-width:760px){
body.portal-public .portal-page-heading h1{font-size:clamp(11px,4.25vw,25px)!important;white-space:nowrap;letter-spacing:-.5px;line-height:1.3;margin-bottom:12px}
}

/* Jednotny sponzorsky pruh: kresby navazuji na okraj, loga maji prioritu. */
body.portal-public .milestone .partner-logos{background:linear-gradient(100deg,#ffe4f0,#fff4f9 38%,#fff4f9 62%,#ffe4f0);min-height:180px}
body.portal-public .milestone .partner-logos img{border-radius:10px!important;box-shadow:0 5px 15px #6510320c!important}
@media(min-width:761px){
body.portal-public .milestone .partner-logos::before,
body.portal-public .milestone .partner-logos::after{opacity:.68;mix-blend-mode:multiply;width:25%;background-size:auto 190px}
body.portal-public .milestone .partner-logos::before{left:0;background-position:left calc(50% + 18px)}
body.portal-public .milestone .partner-logos::after{right:0;background-position:right calc(50% + 18px)}
}
@media(max-width:1000px) and (min-width:761px){body.portal-public .milestone .partner-logos::before,body.portal-public .milestone .partner-logos::after{background-size:auto 145px}}
@media(max-width:760px){body.portal-public .milestone .partner-logos{min-height:0;background:#ffeaf4}}

/* Decentni podpis nad hlavnim nadpisem. */
body.portal-public .portal-page-heading>.eyebrow{display:flex;align-items:center;flex-wrap:wrap;column-gap:8px;row-gap:3px;color:#ba0055;font-family:Arial,Helvetica,sans-serif;line-height:1.5;letter-spacing:1.2px;font-size:10px;font-weight:600}
body.portal-public .portal-page-heading>.eyebrow strong{font-size:12px;font-weight:800;letter-spacing:1.6px;color:#d00060}
body.portal-public .portal-page-heading>.eyebrow span{font-size:10px;font-weight:600}
@media(max-width:760px){body.portal-public .portal-page-heading>.eyebrow{column-gap:6px;letter-spacing:.7px;margin-bottom:12px}body.portal-public .portal-page-heading>.eyebrow strong{font-size:11px;letter-spacing:1px}body.portal-public .portal-page-heading>.eyebrow span{font-size:9px}}

/* Vyrazna identita Slzich oci a stejna fuchsiova jako v hlavicce. */
body.portal-public .milestone .partner-logos{background:linear-gradient(115deg,#f00070,#d0005f)!important;border-bottom:1px solid #ffffff30}
body.portal-public .milestone .partner-logos::before,
body.portal-public .milestone .partner-logos::after{mix-blend-mode:normal;opacity:1}
body.portal-public .milestone .partner-logos img{box-shadow:0 8px 22px #65002b30!important}
body.portal-public .portal-page-heading{background:radial-gradient(ellipse at 100% 100%,#ffd8e9,transparent 65%),linear-gradient(110deg,#fff,#fff3f9);border-color:#f4bcd4;box-shadow:0 10px 30px #9c004308;padding:30px 32px 28px;overflow:hidden}
body.portal-public .portal-page-heading::after{content:"";position:absolute;left:32px;bottom:0;width:100px;height:4px;background:linear-gradient(90deg,#ed006c,#ff9bc6);border-radius:4px 4px 0 0}
body.portal-public .portal-page-heading>.eyebrow{gap:9px 12px;letter-spacing:.3px;margin-bottom:20px;padding-right:300px;min-height:36px;line-height:1.4}
body.portal-public .portal-page-heading>.eyebrow strong{display:inline-block;font-size:20px;line-height:1.3;letter-spacing:1px;font-weight:800;color:#fff;background:linear-gradient(115deg,#f00070,#d0005f);padding:7px 14px;border-radius:10px;box-shadow:0 4px 12px #d0005f20}
body.portal-public .portal-page-heading>.eyebrow span{font-size:15px;letter-spacing:.3px;font-weight:700;color:#6e294b}
body.portal-public .portal-page-heading>nav.language-picker[data-language-picker]{top:32px;right:30px}
body.portal-public .portal-page-heading h1{margin-bottom:12px}
@media(max-width:1000px) and (min-width:761px){body.portal-public .portal-page-heading>.eyebrow span{font-size:13px}}
@media(max-width:760px){
body.portal-public .portal-page-heading{padding:18px 16px 21px}
body.portal-public .portal-page-heading::after{left:16px;width:75px}
body.portal-public .portal-page-heading>.eyebrow{padding-right:0;gap:8px;margin-bottom:16px;min-height:0}
body.portal-public .portal-page-heading>.eyebrow strong{font-size:17px;padding:6px 10px;border-radius:8px}
body.portal-public .portal-page-heading>.eyebrow span{font-size:12px;letter-spacing:.2px;flex:1 1 150px}
}

/* Bez ozdobne carky; mobilni nadpisy na jednom radku. */
body.portal-public .portal-page-heading::after{content:none!important;display:none!important}
@media(max-width:760px){
body.portal-public .milestone h2{font-size:clamp(11px,4vw,26px)!important;white-space:nowrap!important;letter-spacing:-.45px;line-height:1.4;margin:10px 0 18px}
body.portal-public #help-map-title{font-size:clamp(12px,4.5vw,28px)!important;white-space:nowrap!important;letter-spacing:-.45px;line-height:1.35}
body.portal-public #help-map-title span{display:inline!important;white-space:inherit!important;font-size:inherit!important}
}
