/* Public feline dossiers and fundraising cards. Black, blush pink, lighter borders. */
html body #main-content #cat-full [hidden],html body #main-content .campaign-card [hidden]{display:none!important}
html body .cat-dossier-page{max-width:1120px!important;margin:24px auto 48px!important}
html body #main-content #cat-full{margin-top:18px}
html body #main-content #cat-full .cat-full-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:0;margin:0 0 24px;border:1px solid #b56f8e;border-radius:18px;overflow:hidden;background:linear-gradient(125deg,#fff0f6,#f5c9db 60%,#eab1ca);box-shadow:0 12px 35px #b25c7c14;align-items:stretch}
html body #main-content #cat-full .cat-profile-media{padding:18px;background:#0d0a0c;min-width:0;display:flex;flex-direction:column;justify-content:flex-start}
html body #main-content #cat-full .cat-photo-stage{position:relative;min-width:0}
html body #main-content #cat-full .cat-full-photo{display:block;width:100%;height:410px;max-height:410px;object-fit:contain;background:#0d0a0c;border-radius:12px}
html body #main-content #cat-full .cat-photo-badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;flex-wrap:wrap}
html body #main-content #cat-full .cat-photo-label{padding:5px 10px;border:1px solid #e7b1ca;background:linear-gradient(130deg,#ffeef5,#eba8c4);border-radius:20px;font-size:11px;font-weight:700;color:#1e1219!important;-webkit-text-fill-color:#1e1219!important}
html body #main-content #cat-full .cat-full-gallery{display:flex;justify-content:center;gap:8px;margin:12px 0 0;flex-wrap:wrap}
html body #main-content #cat-full .cat-photo-choice{width:58px;height:58px;padding:3px;border:1px solid #6e4559;border-radius:9px;background:#130e11;cursor:pointer;overflow:hidden}
html body #main-content #cat-full .cat-photo-choice img{display:block;width:100%;height:100%;object-fit:cover;border-radius:6px}
html body #main-content #cat-full .cat-photo-choice[aria-pressed=true]{border:2px solid #fac4dd}
html body #main-content #cat-full .cat-profile-copy{padding:30px 30px 18px;min-width:0}
html body #main-content #cat-full .cat-profile-copy :is(h1,p,span,a,button){color:#21131b!important;-webkit-text-fill-color:#21131b!important}
html body #main-content #cat-full .cat-profile-kicker{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
html body #main-content #cat-full .cat-profile-kicker .tag{padding:5px 10px;border:1px solid #bf84a0!important;background:#fff3f8!important;font-size:10px;letter-spacing:.04em;line-height:1.5}
html body #main-content #cat-full .cat-age{font-size:12px}
html body #main-content #cat-full .cat-profile-copy h1{font-family:Georgia,serif;font-size:clamp(35px,4vw,48px)!important;font-weight:400;line-height:1.1;margin:18px 0 15px!important;letter-spacing:-.025em}
html body #main-content #cat-full .cat-profile-rule{display:block;width:42px;height:2px;background:#a45b7a;margin-bottom:22px}
html body #main-content #cat-full .cat-story-label{font-size:10px!important;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin:0 0 9px!important;line-height:1.6}
html body #main-content #cat-full .adoption-text{font-size:14px!important;line-height:1.8!important;margin:0 0 8px!important;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
html body #main-content #cat-full .adoption-text.cat-description-expanded{display:block;overflow:visible}
html body #main-content #cat-full .cat-story-toggle{border:0;border-bottom:1px solid #aa6582;background:transparent;padding:4px 0;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;line-height:1.8}
html body #main-content #cat-full .cat-participation{border-top:1px solid #c28aa4;padding-top:16px;margin:20px 0 12px;font-size:13px!important;font-weight:600}
html body #main-content #cat-full .cat-profile-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
html body #main-content #cat-full .cat-profile-actions .btn{padding:10px 15px!important;min-height:42px;margin:0!important;font-size:12px;border-radius:24px;line-height:1.5;text-align:center;box-shadow:none}
html body #main-content #cat-full .cat-availability:empty{display:none}
html body #main-content #cat-full .cat-availability{font-size:12px;line-height:1.6;margin:12px 0}
html body #main-content #cat-full #cat-full-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:start;margin:0 0 24px}
html body #main-content #cat-full .cat-fact-group{background:linear-gradient(125deg,#fff0f6,#f4c6d9 70%,#ebb0ca);border:1px solid #b87995;border-radius:14px;padding:20px 22px;min-width:0}
html body #main-content #cat-full .cat-fact-group h2{font:400 22px/1.3 Georgia,serif!important;color:#21131b!important;-webkit-text-fill-color:#21131b!important;margin:0 0 14px!important}
html body #main-content #cat-full .cat-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:0}
html body #main-content #cat-full #cat-full-fields .cat-fact{border:0!important;border-top:1px solid #d49bb6!important;border-radius:0!important;background:transparent!important;background-image:none!important;padding:10px 0!important;min-width:0}
html body #main-content #cat-full .cat-fact-wide{grid-column:1/-1}
html body #main-content #cat-full #cat-full-fields .cat-fact dt{padding:0;margin:0 0 4px;border:0;font-size:10px!important;letter-spacing:.04em;line-height:1.5!important;font-weight:600;color:#563746!important;-webkit-text-fill-color:#563746!important}
html body #main-content #cat-full #cat-full-fields .cat-fact dd{padding:0;margin:0;border:0;font-size:14px!important;line-height:1.6!important;font-weight:500;color:#21131b!important;-webkit-text-fill-color:#21131b!important;white-space:pre-line;overflow-wrap:anywhere}
html body #main-content #cat-full .adoption-next{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:22px;border:1px solid #b87995;border-radius:14px;background:linear-gradient(125deg,#fff0f6,#f0bfd4)}
html body #main-content #cat-full .adoption-next :is(h2,p,span){color:#21131b!important;-webkit-text-fill-color:#21131b!important}
html body #main-content #cat-full .adoption-next h2{font:400 22px/1.4 Georgia,serif!important;margin:7px 0 9px!important}
html body #main-content #cat-full .adoption-next p{font-size:13px;line-height:1.7;margin:0;max-width:650px}
html body #main-content #cat-full .cat-next-links{display:grid;gap:7px}
html body #main-content #cat-full .cat-next-links .btn{font-size:11px;padding:9px 13px!important;margin:0;min-height:38px;border-radius:24px;box-shadow:none}
html body #main-content #cat-full .cat-photo-empty{height:320px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#f1bad0}
html body #main-content #cat-full .cat-photo-empty span{font:70px Georgia,serif;color:#edb5cc}
html body #main-content #cat-full .cat-photo-empty p{color:#edb5cc;font-size:12px}
/* Smaller catalogue cards without hiding any record. */
html body #main-content :is(#cats,#priority,#sosCats){grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}
html body #main-content :is(#cats,#priority,#sosCats) .card{border:1px solid #b87592!important;border-radius:15px!important;box-shadow:0 7px 20px #ad5a7b14!important}
html body #main-content :is(#cats,#priority,#sosCats) .card img{height:245px!important;object-fit:cover;object-position:center 40%}
html body #main-content :is(#cats,#priority,#sosCats) .card-body{padding:19px!important}
html body #main-content :is(#cats,#priority,#sosCats) .card-body h3{font:400 26px/1.2 Georgia,serif!important;margin:10px 0!important}
html body #main-content :is(#cats,#priority,#sosCats) .card .tag{padding:4px 9px;font-size:10px;letter-spacing:.03em}
html body #main-content :is(#cats,#priority,#sosCats) .card .mini{font-size:11px;line-height:1.7}
html body #main-content :is(#cats,#priority,#sosCats) .card p{font-size:12px;line-height:1.75;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:10px 0 16px}
html body #main-content :is(#cats,#priority,#sosCats) .cat-card-actions{margin-top:15px;gap:8px}
html body #main-content :is(#cats,#priority,#sosCats) .cat-card-actions .btn{min-height:40px;padding:10px!important;font-size:11px;line-height:1.5;border-radius:24px;box-shadow:none}
html body #main-content :is(#cats,#priority,#sosCats) .card>.actions{padding:0 18px 16px;gap:6px}
html body #main-content :is(#cats,#priority,#sosCats) .card>.actions .btn{padding:5px 9px!important;font-size:10px;min-height:32px;border-radius:20px}
/* Fundraisers: concise cards; a single dossier keeps the whole story. */
html body #main-content :is(#campaign-public-list,#sponsorship-list,.campaign-catalogue){grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;margin-top:20px;margin-bottom:40px}
html body #main-content :is(#campaign-public-list,#sponsorship-list,.campaign-catalogue) .campaign-card{display:flex;flex-direction:column;padding:0!important;border:1px solid #b87592!important;border-radius:16px;background:linear-gradient(125deg,#fff0f6,#f3c5d9 65%,#e9acc6)!important;box-shadow:0 8px 26px #a9547414;min-width:0;overflow:hidden;align-self:start}
html body #main-content .campaign-media{position:relative;min-width:0;background:#120d10}
html body #main-content .campaign-media .campaign-photo-link{display:block;text-decoration:none}
html body #main-content .campaign-media .campaign-photo-link img{display:block;width:100%;height:225px;max-height:none;object-fit:contain;margin:0;border-radius:0;background:#120d10}
html body #main-content .campaign-media .campaign-state{position:absolute;left:12px;top:12px;padding:5px 10px;font-size:10px;letter-spacing:.035em;border:1px solid #c184a0!important;border-radius:20px;box-shadow:none;background:#ffeff6!important;color:#21131b!important;-webkit-text-fill-color:#21131b!important}
html body #main-content .campaign-card-body{padding:20px;min-width:0;display:flex;flex-direction:column;flex:1}
html body #main-content .campaign-card .campaign-card-title{font:400 21px/1.4 Georgia,serif!important;margin:0 0 12px!important;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
html body #main-content .campaign-card .campaign-excerpt{font-size:13px!important;line-height:1.75!important;margin:0 0 18px;white-space:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
html body #main-content .campaign-progress{margin-top:auto}
html body #main-content .campaign-card .campaign-total{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;margin:0 0 10px!important;line-height:1.5!important}
html body #main-content .campaign-total strong{font:400 25px/1.1 Georgia,serif!important}
html body #main-content .campaign-total span{font-size:10px!important;font-weight:500}
html body #main-content .campaign-card progress{display:block;width:100%;height:6px!important;border:0;border-radius:20px;overflow:hidden;appearance:none;accent-color:#873e60;background:#ffeaf3}
html body #main-content .campaign-card progress::-webkit-progress-bar{background:#fff0f7;border-radius:20px}
html body #main-content .campaign-card progress::-webkit-progress-value{background:linear-gradient(90deg,#bc7398,#77364f);border-radius:20px}
html body #main-content .campaign-card progress::-moz-progress-bar{background:linear-gradient(90deg,#bc7398,#77364f);border-radius:20px}
html body #main-content .campaign-card .campaign-percent{font-size:10px;line-height:1.6;margin:7px 0 12px}
html body #main-content .campaign-open{font-size:11px;font-weight:600;text-decoration:none;padding-bottom:4px;align-self:start;border-bottom:1px solid #bc7b98;margin:2px 0 5px}
html body #main-content .campaign-card .payment-options{margin:14px 0 0!important}
html body #main-content .campaign-card .payment-options-links{gap:8px;max-width:none}
html body #main-content .campaign-card .payment-options-links .btn{min-height:42px;padding:9px 8px!important;font-size:11px!important;border-radius:24px;margin:0!important;box-shadow:none}
html body #main-content .campaign-card .payment-options-note{font-size:10px!important;line-height:1.6!important;margin-top:9px!important}
html body #main-content .campaign-photo-empty{height:225px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffeef5,#f2bfd5)}
html body #main-content .campaign-photo-empty>span{font:60px/1.2 Georgia,serif}
html body #main-content .campaign-photo-empty small{font-size:11px}
html body.campaign-single #main-content>.section{display:none}
html body.campaign-single #main-content>.pagehead{padding-top:26px;padding-bottom:6px;text-align:left;max-width:1060px}
html body.campaign-single #main-content>.pagehead h1{font:400 clamp(25px,3.5vw,35px)/1.3 Georgia,serif!important;max-width:900px;margin:12px 0 16px!important;color:#f7c3d9!important;-webkit-text-fill-color:#f7c3d9!important}
html body.campaign-single #main-content .campaign-back{font-size:11px;padding:8px 13px;min-height:36px;margin:0 0 8px!important;border-radius:24px;box-shadow:none}
html body.campaign-single #main-content #campaign-public-list{display:block!important;max-width:1060px;margin:12px auto 40px}
html body.campaign-single #main-content #campaign-public-list .campaign-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:0;border:0!important;border-radius:0;overflow:visible;background:transparent!important;box-shadow:none}
html body.campaign-single #main-content .campaign-media{padding:15px;border:1px solid #b87592;border-right:0;border-radius:16px 0 0 16px;display:flex;align-items:center;justify-content:center}
html body.campaign-single #main-content .campaign-media .campaign-photo-link{width:100%}
html body.campaign-single #main-content .campaign-media .campaign-photo-link img{height:390px;max-height:390px;object-fit:contain;border-radius:10px}
html body.campaign-single #main-content .campaign-card-body{padding:30px;border:1px solid #b87592;border-left:0;border-radius:0 16px 16px 0;background:linear-gradient(125deg,#fff0f6,#f3c5d9 70%,#e9acc6);justify-content:center}
html body.campaign-single #main-content .campaign-card .campaign-eyebrow{font-size:10px!important;letter-spacing:.12em;text-transform:uppercase;line-height:1.7!important;margin:0 0 10px;font-weight:600}
html body.campaign-single #main-content .campaign-card .campaign-donate-title{font:400 29px/1.35 Georgia,serif!important;margin:0 0 24px!important}
html body.campaign-single #main-content .campaign-total strong{font-size:36px!important}
html body.campaign-single #main-content .campaign-total span{font-size:12px!important}
html body.campaign-single #main-content .campaign-card .campaign-percent{font-size:12px;margin:9px 0 16px}
html body.campaign-single #main-content .campaign-card .payment-options-links .btn{min-height:46px;font-size:13px!important;padding:11px!important}
html body.campaign-single #main-content .campaign-card .payment-options-note{font-size:11px!important}
html body.campaign-single #main-content .campaign-story{grid-column:1/-1;margin-top:22px;padding:26px 32px;border:1px solid #b87592;border-radius:15px;background:linear-gradient(125deg,#fff0f6,#f4c8dc 70%,#eeb8d0)}
html body.campaign-single #main-content .campaign-story h2{font:400 26px/1.4 Georgia,serif!important;max-width:760px;margin:8px auto 23px!important}
html body.campaign-single #main-content .campaign-story :is(p,h2){max-width:760px;margin-left:auto;margin-right:auto;color:#21131b!important;-webkit-text-fill-color:#21131b!important}
html body.campaign-single #main-content .campaign-card .campaign-story p{font-size:14px!important;line-height:1.9!important;margin-top:0;margin-bottom:18px;white-space:pre-line}
/* Share controls remain visible, with lighter secondary links. */
html body #main-content :is(#cat-full-share,.campaign-card-body) .rr-share{gap:8px;align-items:center;padding:14px 0 0;margin:16px 0 0;border-top:1px solid #c28aa4;justify-content:flex-start;max-width:none}
html body #main-content :is(#cat-full-share,.campaign-card-body) .rr-share :is(button,a){font-size:11px!important;min-height:32px;line-height:1.5;padding:5px 3px!important;background:transparent!important;background-image:none!important;border:0!important;border-radius:0;box-shadow:none;color:#21131b!important;-webkit-text-fill-color:#21131b!important;text-decoration:none}
html body #main-content :is(#cat-full-share,.campaign-card-body) .rr-share button:first-child{padding:6px 10px!important;border:1px solid #ab6b88!important;border-radius:22px;background:#fff1f7!important;font-weight:600}
html body #main-content :is(#cat-full-share,.campaign-card-body) .rr-share .rr-share-status{font-size:10px!important;color:#563746!important;-webkit-text-fill-color:#563746!important}
@media(min-width:1001px){html body #main-content #priority{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:860px;margin-left:auto;margin-right:auto}}
@media(max-width:1000px){html body #main-content :is(#cats,#priority,#sosCats,#campaign-public-list,#sponsorship-list,.campaign-catalogue){grid-template-columns:repeat(2,minmax(0,1fr))!important}html body #main-content #cat-full .cat-profile-copy{padding:25px}html body #main-content #cat-full .cat-full-photo{height:360px;max-height:360px}html body.campaign-single #main-content .campaign-card-body{padding:24px}}
@media(max-width:720px){html body #main-content #cat-full .cat-full-grid{grid-template-columns:1fr}html body #main-content #cat-full .cat-profile-media{padding:14px}html body #main-content #cat-full .cat-full-photo{height:340px;max-height:340px}html body #main-content #cat-full .cat-profile-copy{padding:24px}html body #main-content #cat-full #cat-full-fields{grid-template-columns:1fr!important;gap:13px!important}html body #main-content #cat-full .adoption-next{grid-template-columns:1fr;gap:16px}html body #main-content #cat-full .cat-next-links{display:flex;flex-wrap:wrap}html body.campaign-single #main-content #campaign-public-list .campaign-card{grid-template-columns:1fr}html body.campaign-single #main-content .campaign-media{border-right:1px solid #b87592;border-bottom:0;border-radius:16px 16px 0 0}html body.campaign-single #main-content .campaign-card-body{border-left:1px solid #b87592;border-top:0;border-radius:0 0 16px 16px}html body.campaign-single #main-content .campaign-media .campaign-photo-link img{height:300px;max-height:300px}html body.campaign-single #main-content .campaign-story{padding:24px 20px}html body #main-content :is(#cat-full-share,.campaign-card-body) .rr-share :is(button,a){min-height:44px}html body #main-content :is(#cat-full-share,.campaign-card-body) .rr-share button:first-child{flex-basis:auto}}
@media(max-width:570px){html body #main-content :is(#cats,#priority,#sosCats,#campaign-public-list,#sponsorship-list,.campaign-catalogue){grid-template-columns:1fr!important;gap:18px!important}html body #main-content :is(#cats,#priority,#sosCats) .card img{height:270px!important}html body #main-content .campaign-media .campaign-photo-link img{height:250px}html body #main-content #cat-full .cat-fact-group{padding:19px}html body #main-content #cat-full .cat-facts{gap:0 14px}}
@media(prefers-reduced-motion:no-preference){html body #main-content :is(#cats,#priority,#sosCats) .card,html body #main-content .campaign-card{transition:box-shadow .2s,border-color .2s}html body #main-content :is(#cats,#priority,#sosCats) .card:hover{box-shadow:0 10px 28px #b2648530!important;border-color:#e3abc5!important}}

html body #main-content #cat-full .cat-fact-text{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
html body #main-content #cat-full .cat-fact-text.cat-fact-expanded{display:block;overflow:visible}
html body #main-content #cat-full .cat-fact-more{border:0;border-bottom:1px solid #ad718e;border-radius:0;background:transparent;color:#422433;-webkit-text-fill-color:#422433;font-family:inherit;font-size:11px;font-weight:600;line-height:1.7;padding:4px 0;margin-top:7px;min-height:30px;cursor:pointer}
/* Personal thanks belong to the individual fundraiser, with first names only. */
html body.campaign-single #main-content .campaign-thanks{grid-column:1/-1;margin-top:22px;padding:26px 32px;border:1px solid #b87592;border-radius:15px;background:linear-gradient(125deg,#fff0f6,#f4c8dc 70%,#eeb8d0);text-align:center}
html body.campaign-single #main-content .campaign-thanks :is(h2,p,li){color:#21131b!important;-webkit-text-fill-color:#21131b!important}
html body.campaign-single #main-content .campaign-thanks h2{font:400 26px/1.4 Georgia,serif!important;margin:8px 0 14px!important}
html body.campaign-single #main-content .campaign-thanks-message{max-width:670px;font-size:14px!important;line-height:1.85!important;margin:0 auto 16px!important}
html body.campaign-single #main-content .campaign-supporters-label{font-size:11px!important;font-weight:600;letter-spacing:.05em;margin:18px 0 12px!important}
html body.campaign-single #main-content .campaign-supporters-names{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;list-style:none;margin:0!important;padding:0!important}
html body.campaign-single #main-content .campaign-supporters-names li{border:1px solid #c58aa6;border-radius:22px;background:#fff0f7;padding:6px 14px!important;font-size:13px;line-height:1.6;font-weight:500;overflow-wrap:anywhere;max-width:100%}
html body.campaign-single #main-content :is(.campaign-supporters-anonymous,.campaign-supporters-empty){font-size:12px!important;line-height:1.8!important;margin:15px 0 0!important}
@media(max-width:720px){html body.campaign-single #main-content .campaign-thanks{padding:24px 20px}}
