/* PetsCare /clinics/ merged offer + plan details (expandable). */
.offer{scroll-margin-top:0}
.pc-anchor{display:block;height:0;overflow:hidden}
.offer__toggle{display:none}
.js .offer__more-link{display:none}
.js .offer__toggle{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border:1px solid #e1d2ec;border-radius:12px;background:#fff;color:var(--purple);font:inherit;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 1px 2px rgba(39,11,62,.04);transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.js .offer__toggle:hover{background:#faf5fd;border-color:#c9a9e0;box-shadow:0 8px 22px rgba(39,11,62,.08);transform:translateY(-1px)}
.js .offer__toggle:focus-visible{outline:3px solid #b56de1;outline-offset:3px}
.offer__toggle-arrow{display:inline-block;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.offer__toggle[aria-expanded="true"] .offer__toggle-arrow{transform:rotate(180deg)}
/* Collapsible blocks: grid-rows trick gives a smooth height transition without measuring. */
.offer__extra{display:grid;grid-template-rows:1fr}
.js .offer__extra{grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.2,.7,.2,1),margin .55s cubic-bezier(.2,.7,.2,1);margin-top:-14px}
.js .offer.is-open .offer__extra{grid-template-rows:1fr;margin-top:0}
.offer__extra-inner{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:12px}
.offer__list--extra{margin-bottom:0;padding-top:2px}
.offer__fine{font-size:13px;line-height:1.55;color:var(--body);padding:10px 12px;border-radius:12px;background:rgba(99,17,139,.05)}
.offer__card--featured .offer__fine{background:rgba(255,255,255,.6)}
.offer__plus{font-size:14px;font-weight:700;color:var(--purple)}
/* Staggered reveal of the extra items. */
.js .offer__extra-inner>*,.js .offer__list--extra li{opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.7,.2,1)}
.js .offer__extra-inner>.offer__list--extra{opacity:1;transform:none}
.js .offer.is-open .offer__extra-inner>*,.js .offer.is-open .offer__list--extra li{opacity:1;transform:none;transition-delay:calc(.12s + var(--i,0) * .07s)}
.offer__list--extra li::before{transition:transform .4s cubic-bezier(.3,1.6,.5,1)}
.js .offer__list--extra li::before{transform:scale(.3)}
.js .offer.is-open .offer__list--extra li::before{transform:scale(1);transition-delay:calc(.2s + var(--i,0) * .07s)}
.js .offer.is-open .offer__card--featured{box-shadow:0 22px 50px rgba(99,17,139,.16)}
@media (max-width:760px){.js .offer__toggle{width:100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){
  .js .offer__extra,.js .offer__extra-inner>*,.js .offer__list--extra li,.offer__list--extra li::before,.offer__toggle-arrow,.js .offer__toggle{transition:none!important}
}
