/* WIMS Website Build 0015 — Complete Monkey Mascot Family Integration
   Eight approved mascot characters integrated across the responsive site. */
:root{
  --amb15-rose:#e73f7d;
  --amb15-gold:#ffbe2e;
  --amb15-teal:#1aa9b8;
  --amb15-blue:#2f8bd1;
  --amb15-purple:#8a65cf;
  --amb15-green:#68b94f;
  --amb15-ink:#163f70;
  --amb15-card-shadow:0 18px 38px rgba(18,63,115,.13);
}
body.build-0015{--mascot-radius:28px}
body.build-0015 .amb14-brand .brand-mark img{border-radius:50%;filter:drop-shadow(0 7px 10px rgba(18,63,115,.16))}
body.build-0015 .amb14-heart-art{max-width:360px}
body.build-0015 .amb15-rainbow-hero img{aspect-ratio:1/1;object-fit:contain}
body.build-0015 .amb14-polaroid img{object-fit:contain;background:linear-gradient(180deg,#fff,#f9fdff)}
body.build-0015 .amb14-program-card img{width:100%;height:155px;object-fit:contain;object-position:center}
body.build-0015 .amb15-review-mascot{object-fit:contain;filter:drop-shadow(0 12px 18px rgba(18,63,115,.12))}

/* Complete mascot family */
.amb15-mascot-family{position:relative;overflow:hidden;padding:clamp(4rem,6vw,6.6rem) 0;background:radial-gradient(circle at 6% 15%,rgba(231,63,125,.13),transparent 22rem),radial-gradient(circle at 92% 80%,rgba(26,169,184,.14),transparent 25rem),linear-gradient(135deg,#fff9e9,#fff 46%,#eefaff)}
.amb15-mascot-family::before,.amb15-mascot-family::after{content:"";position:absolute;pointer-events:none;border-radius:50%;opacity:.7}
.amb15-mascot-family::before{left:-70px;top:50px;width:190px;height:190px;background:radial-gradient(circle,#ffd154 0 9%,transparent 10%),radial-gradient(circle at 68% 28%,#ff7ba9 0 8%,transparent 9%),radial-gradient(circle at 43% 70%,#64c9d2 0 7%,transparent 8%)}
.amb15-mascot-family::after{right:-80px;bottom:40px;width:230px;height:230px;background:radial-gradient(circle,#7bc76b 0 9%,transparent 10%),radial-gradient(circle at 30% 32%,#ffc238 0 7%,transparent 8%),radial-gradient(circle at 60% 70%,#8a65cf 0 8%,transparent 9%)}
.amb15-family-heading{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:2.5rem;align-items:end;margin-bottom:2.2rem}
.amb15-family-heading h2{max-width:880px;margin:.2rem 0 0;color:var(--amb15-ink);font-size:clamp(2.2rem,3.2vw,3.55rem);line-height:1.02;letter-spacing:-.045em}
.amb15-family-heading>p{max-width:520px;margin:0;color:#526d84;font-size:1.02rem}
.amb15-eyebrow{margin:0;color:var(--amb15-rose);font-family:ui-sans-serif,system-ui,sans-serif!important;font-size:.74rem;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.amb15-mascot-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.amb15-mascot-card{position:relative;isolation:isolate;overflow:hidden;min-height:292px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:1rem 1rem 1.05rem;border:1px solid rgba(18,63,115,.1);border-radius:var(--mascot-radius);background:#fff;box-shadow:var(--amb15-card-shadow);transition:transform .22s ease,box-shadow .22s ease}
.amb15-mascot-card::before{content:"";position:absolute;z-index:-1;inset:0 0 36%;background:linear-gradient(180deg,var(--amb15-card-tint,#fff4f8),#fff);border-radius:inherit}
.amb15-mascot-card::after{content:"★";position:absolute;right:17px;top:14px;color:var(--amb15-accent,#e73f7d);font-size:1.2rem;opacity:.82}
.amb15-mascot-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(18,63,115,.18)}
.amb15-mascot-card img{display:block;width:min(100%,235px);height:205px;object-fit:contain;filter:drop-shadow(0 10px 10px rgba(18,63,115,.1))}
.amb15-mascot-card>div{width:100%;padding:.75rem .7rem .15rem;border-top:1px dashed rgba(18,63,115,.15);text-align:center}
.amb15-mascot-card h3{margin:0;color:var(--amb15-ink);font-size:1.05rem;line-height:1.18}
.amb15-mascot-card p{margin:.25rem 0 0;color:#5d7488;font-size:.79rem;font-weight:750}
.amb15-rose{--amb15-card-tint:#fff0f6;--amb15-accent:#e73f7d}.amb15-gold{--amb15-card-tint:#fff8dc;--amb15-accent:#eaa414}.amb15-teal{--amb15-card-tint:#e8fbfd;--amb15-accent:#1aa9b8}.amb15-blue{--amb15-card-tint:#edf6ff;--amb15-accent:#2f8bd1}.amb15-purple{--amb15-card-tint:#f5efff;--amb15-accent:#8a65cf}.amb15-sun{--amb15-card-tint:#fff7d8;--amb15-accent:#ffae18}.amb15-green{--amb15-card-tint:#eefbe9;--amb15-accent:#68b94f}.amb15-lavender{--amb15-card-tint:#f2efff;--amb15-accent:#7566cf}

/* Owner feature receives the principal Heart Hug mascot. */
.amb15-owner-art{position:relative;isolation:isolate}
.amb15-owner-art>img:first-child{position:relative;z-index:1}
.amb15-owner-art .amb15-owner-friend{position:absolute;z-index:2;right:-2%;bottom:1%;width:29%;max-width:155px;height:auto;object-fit:contain;filter:drop-shadow(0 12px 16px rgba(18,63,115,.18));transform:rotate(4deg)}

/* Interior page mascot spotlights */
body.build-0015 .amb15-page-hero{padding:clamp(3rem,5vw,5.3rem) 0;overflow:hidden}
.amb15-page-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(350px,.88fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.amb15-page-hero-copy{max-width:780px}
.amb15-page-hero-copy h1{max-width:760px}
.amb15-page-mascots{position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:340px;padding:1rem}
.amb15-page-mascot{position:relative;width:min(56%,310px);margin:0;padding:.7rem .7rem .75rem;border:5px solid #fff;border-radius:34px;background:rgba(255,255,255,.92);box-shadow:0 20px 42px rgba(18,63,115,.16);text-align:center;transform:rotate(-4deg)}
.amb15-page-mascot:nth-child(2){margin-left:-2.2rem;transform:translateY(25px) rotate(5deg)}
.amb15-page-mascot img{display:block;width:100%;height:285px;object-fit:contain}
.amb15-page-mascot figcaption{display:inline-block;margin-top:-.1rem;padding:.35rem .72rem;border-radius:999px;color:#fff;background:var(--amb15-rose);font-family:ui-sans-serif,system-ui,sans-serif;font-size:.75rem;font-weight:900}
.amb15-page-mascot:nth-child(2) figcaption{background:var(--amb15-teal)}
.amb15-single-mascot .amb15-page-mascot{width:min(70%,360px);transform:rotate(2deg)}
.amb15-infant-theme .amb15-page-mascots::before,.amb15-preschool-theme .amb15-page-mascots::before,.amb15-about-theme .amb15-page-mascots::before,.amb15-contact-theme .amb15-page-mascots::before,.amb15-privacy-theme .amb15-page-mascots::before,.amb15-404-theme .amb15-page-mascots::before{content:"";position:absolute;inset:6% 2% 3%;border-radius:48% 52% 43% 57%/55% 45% 55% 45%;background:rgba(255,255,255,.4);border:3px dashed rgba(18,63,115,.12)}
.amb15-infant-theme .amb15-page-mascots::after{content:"☁  ★  ☾";position:absolute;right:5%;top:4%;color:#8a65cf;font-size:1.7rem;letter-spacing:.45rem}
.amb15-preschool-theme .amb15-page-mascots::after{content:"A  B  C";position:absolute;right:2%;top:4%;color:#e73f7d;font-size:1.25rem;font-weight:950;letter-spacing:.45rem}
.amb15-about-theme .amb15-page-mascots::after{content:"♥  ☀";position:absolute;right:5%;top:5%;color:#e73f7d;font-size:1.6rem;letter-spacing:.5rem}
.amb15-contact-theme .amb15-page-mascots::after{content:"I CAN HELP!";position:absolute;right:1%;top:3%;padding:.4rem .65rem;border-radius:12px;color:#fff;background:#68b94f;font-size:.72rem;font-weight:950;transform:rotate(5deg)}
.amb15-privacy-theme .amb15-page-mascots::after{content:"PRIVACY FIRST";position:absolute;right:4%;top:6%;padding:.38rem .6rem;border-radius:999px;color:#fff;background:#1aa9b8;font-size:.68rem;font-weight:950;letter-spacing:.08em}

/* Reviews and trust card */
body.build-0015 .amb15-review-trust-card img{width:180px;height:180px;object-fit:contain;margin:-1rem auto -.35rem;filter:drop-shadow(0 12px 16px rgba(18,63,115,.14))}
body.build-0015 .amb15-review-trust-card{overflow:hidden;background:linear-gradient(160deg,#fff,#fff7d9 52%,#ecfbff)}

/* Keep mascot imagery crisp and friendly without adding layout shift. */
body.build-0015 img[src*="/assets/images/mascots/"]{color:transparent}

@media(max-width:1180px){
  .amb15-mascot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .amb15-mascot-card{min-height:280px}
  .amb15-page-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.82fr)}
  .amb15-page-mascot img{height:245px}
}
@media(max-width:850px){
  .amb15-family-heading{grid-template-columns:1fr;gap:.8rem}
  .amb15-family-heading>p{max-width:760px}
  .amb15-page-hero-grid{grid-template-columns:1fr;text-align:center}
  .amb15-page-hero-copy{margin-inline:auto}
  .amb15-page-hero-copy .button{margin-inline:auto}
  .amb15-page-mascots{max-width:680px;width:100%;margin:0 auto;min-height:300px}
  .amb15-page-mascot{width:min(52%,300px)}
  .amb15-owner-art .amb15-owner-friend{right:1%;width:27%}
}
@media(max-width:600px){
  .amb15-mascot-family{padding:3.7rem 0}
  .amb15-mascot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
  .amb15-mascot-card{min-height:220px;padding:.65rem;border-radius:22px}
  .amb15-mascot-card img{height:145px;width:100%}
  .amb15-mascot-card>div{padding:.55rem .25rem .1rem}
  .amb15-mascot-card h3{font-size:.84rem}
  .amb15-mascot-card p{font-size:.68rem}
  .amb15-mascot-card::after{right:10px;top:8px;font-size:.9rem}
  .amb15-page-mascots{min-height:235px;padding:.25rem}
  .amb15-page-mascot{width:54%;padding:.35rem;border-width:3px;border-radius:23px}
  .amb15-page-mascot:nth-child(2){margin-left:-1.4rem;transform:translateY(16px) rotate(4deg)}
  .amb15-page-mascot img{height:190px}
  .amb15-page-mascot figcaption{font-size:.61rem;padding:.27rem .45rem}
  .amb15-single-mascot .amb15-page-mascot{width:70%}
  .amb15-owner-art .amb15-owner-friend{right:0;bottom:1%;width:25%}
  body.build-0015 .amb15-review-trust-card img{width:150px;height:150px}
}
@media(max-width:390px){
  .amb15-mascot-grid{gap:.5rem}
  .amb15-mascot-card{min-height:205px}
  .amb15-mascot-card img{height:132px}
  .amb15-page-mascot img{height:165px}
}
@media(prefers-reduced-motion:reduce){.amb15-mascot-card{transition:none}.amb15-mascot-card:hover{transform:none}}
