/* Happy Pups review carousel v1.2 | Shadow-inspired, editable, responsive */
.hp-reviews{--hp-navy:#103669;--hp-orange:#ff7906;--hp-sky:#dcedfa;max-width:850px!important;width:100%;margin:30px auto 40px!important;padding:10px 8px!important;color:var(--hp-navy);text-align:center;font-family:inherit;box-sizing:border-box}
.hp-reviews *{box-sizing:border-box}
.hp-reviews-heading h2{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:800;color:var(--hp-navy);margin:0 0 6px}
.hp-reviews-heading p{font-size:1rem;color:#436380;margin:0 0 17px}
.hp-reviews-stage{position:relative;width:100%;}
.hp-reviews-window{border-radius:24px;outline-offset:6px}
.hp-reviews [hidden]{display:none!important}
.hp-review-slide{margin:0;animation:hpReviewsFade .2s ease;}
.hp-review-scene{position:relative;padding:18px 16px 40px;background:linear-gradient(150deg,#ecf8ff 0%,#dbedfa 100%);border-radius:27px;isolation:isolate;overflow:hidden}
.hp-review-scene::before,.hp-review-scene::after{position:absolute;content:'🐾';font-size:48px;opacity:.14;color:#528fb9;filter:grayscale(1);pointer-events:none}
.hp-review-scene::before{top:1px;right:22px;transform:rotate(-12deg)}
.hp-review-scene::after{bottom:5px;left:10px;transform:rotate(15deg)}
.hp-review-card{position:relative;background:#fff;border-radius:32px;min-height:420px;box-shadow:0 12px 24px rgba(17,55,101,.2);text-align:left;isolation:isolate;}
.hp-review-navy-shape{position:absolute;left:0;top:0;width:44%;height:42%;background:#0a3268;clip-path:polygon(0 0,100% 0,58% 25%,0 100%);border-radius:32px 0 0 0;z-index:0}
.hp-review-sky-wave{position:absolute;bottom:0;left:0;width:58%;height:17%;background:#d6eafb;clip-path:polygon(0 62%,22% 12%,45% 0,75% 45%,100% 100%,0 100%);border-radius:0 0 0 32px;z-index:0}
.hp-review-orange-wave{position:absolute;bottom:0;right:0;width:45%;height:25%;background:#ff7906;clip-path:polygon(0 100%,22% 82%,48% 78%,70% 58%,100% 6%,100% 100%);border-radius:0 0 32px 0;z-index:0}
.hp-review-dog{position:absolute;z-index:2;left:-6px;bottom:-48px;width:43%;height:calc(100% + 98px);display:flex;align-items:flex-end;justify-content:center;pointer-events:none}
.hp-review-dog.is-cutout .hp-review-photo{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 6px 2px rgba(21,52,75,.12))}
.hp-review-dog.is-photo{left:18px;bottom:26px;width:36%;height:75%;border:7px solid #fff;border-radius:35% 45% 40% 30%;overflow:hidden;background:#d6eafb;box-shadow:0 8px 16px #193b6433}
.hp-review-dog.is-photo .hp-review-photo{width:100%;height:100%;object-fit:cover;object-position:center}
.hp-review-dog-shadow{bottom:-50px;left:-21px;width:44%;height:calc(100% + 88px)}
.hp-review-dog-prince{height:calc(100% + 45px);bottom:-35px;width:44%}
.hp-review-dog-peaches{height:calc(100% + 35px);bottom:-30px;width:43%}
.hp-review-dog-chico{height:calc(100% + 30px);bottom:-30px;width:45%}
.hp-review-dog-beedee{height:calc(100% + 65px);bottom:-45px;width:40%}
.hp-review-dog-boss{height:calc(100% + 30px);bottom:-30px;width:43%}
.hp-review-photo-fallback{font-size:6rem;line-height:1}
.hp-review-copy{position:relative;z-index:3;margin-left:42%;padding:22px 24px 34px 2px;min-height:420px;display:flex;flex-direction:column;align-items:flex-start}
.hp-review-label-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;flex-wrap:nowrap}
.hp-review-chip{background:var(--hp-orange);color:#fff;border-radius:100px;padding:7px 18px;font-weight:750;font-style:italic;font-size:clamp(.88rem,1.9vw,1.13rem);white-space:nowrap}
.hp-review-name{display:flex;align-items:center;gap:6px;font-family:'Caveat','Brush Script MT','Segoe Script','Snell Roundhand',cursive;font-size:clamp(1.6rem,3vw,2.65rem);line-height:1.1;font-weight:500;color:#061b45;white-space:nowrap;letter-spacing:-.03em}
.hp-review-name-paw{font-family:Arial,sans-serif;font-size:1.6rem;filter:sepia(1) saturate(8) hue-rotate(345deg);}
.hp-review-stars{font-size:clamp(1.45rem,2.6vw,1.95rem);line-height:1.05;letter-spacing:3px;color:var(--hp-orange);margin:12px 0 15px}
.hp-review-copy blockquote{margin:0 0 auto;padding:0;color:#0c1c48;border:0;background:transparent;quotes:'“' '”';font-size:clamp(.94rem,1.64vw,1.08rem);font-weight:500;line-height:1.38;font-style:normal}
.hp-review-copy blockquote::before{content:open-quote;font-size:2.8rem;line-height:0;vertical-align:-.26em;margin-right:6px;color:#87b7ce;font-weight:bold}
.hp-review-copy blockquote::after{content:close-quote;font-size:2.2rem;line-height:0;vertical-align:-.29em;margin-left:5px;color:#87b7ce;font-weight:bold}
.hp-review-author{margin:17px 0 20px;color:#14274e;font-size:clamp(.91rem,1.65vw,1.03rem);font-style:italic}
.hp-review-author>span:first-child{color:var(--hp-orange);font-size:1.3rem;font-weight:900;margin-right:10px}
.hp-review-owner{font-weight:400}
.hp-review-corner-paw{position:absolute;z-index:4;right:12px;bottom:9px;font-size:1.5rem;filter:grayscale(1) brightness(0) invert(1);pointer-events:none}
.hp-reviews-prev,.hp-reviews-next{position:absolute;z-index:10;top:48%;transform:translateY(-50%);height:44px;width:44px;min-width:44px;padding:0;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff!important;color:var(--hp-orange)!important;box-shadow:0 3px 12px #1d36553d;cursor:pointer;line-height:1;font-size:24px}
.hp-reviews-prev{left:-7px}.hp-reviews-next{right:-7px}
.hp-reviews-prev:hover,.hp-reviews-next:hover{background:#fff4e7!important}
.hp-reviews-prev:focus-visible,.hp-reviews-next:focus-visible,.hp-reviews-dots button:focus-visible{outline:3px solid var(--hp-navy);outline-offset:3px}
.hp-reviews-dots{display:flex;gap:10px;justify-content:center;align-items:center;margin-top:15px!important}
.hp-reviews-dots button{width:11px;height:11px;min-width:0;min-height:0;padding:0;border:0;border-radius:50%;background:#b7d6e9;cursor:pointer;box-shadow:none}
.hp-reviews-dots button.active{background:var(--hp-orange);transform:scale(1.18)}
@keyframes hpReviewsFade{from{opacity:.6}to{opacity:1}}
@media(max-width:760px){
 .hp-reviews{max-width:100%!important;padding:8px 4px!important;margin:20px auto 28px!important}
 .hp-review-scene{padding:13px 12px 30px}
 .hp-review-card{min-height:0;border-radius:24px;padding-top:245px;overflow:hidden}
 .hp-review-navy-shape{width:100%;height:165px;clip-path:polygon(0 0,100% 0,70% 66%,0 100%);border-radius:24px 0 0 0}
 .hp-review-dog{left:0!important;top:-10px;bottom:auto!important;width:100%!important;height:260px!important;align-items:flex-end;justify-content:center}
 .hp-review-dog.is-cutout .hp-review-photo{object-fit:contain;object-position:center bottom;max-width:92%;height:100%}
 .hp-review-dog.is-photo{left:20%!important;top:12px;bottom:auto;width:60%!important;height:205px!important;border-radius:24px;}
 .hp-review-copy{min-height:0;margin-left:0;padding:6px 19px 38px;align-items:center;text-align:center}
 .hp-review-chip{padding:6px 14px}
 .hp-review-name{font-size:2rem}
 .hp-review-stars{margin:11px 0 18px;font-size:1.55rem}
 .hp-review-copy blockquote{text-align:left;font-size:.99rem;line-height:1.45;width:100%}
 .hp-review-author{width:100%;text-align:center;margin:18px 0 8px}
 .hp-review-orange-wave{height:65px;width:59%}
 .hp-reviews-prev,.hp-reviews-next{width:36px;height:36px;min-width:36px;font-size:20px;top:34%}
 .hp-reviews-prev{left:-2px}.hp-reviews-next{right:-2px}
}
@media(max-width:430px){
 .hp-review-card{padding-top:215px}
 .hp-review-dog{height:235px!important}
 .hp-review-dog.is-photo{height:185px!important}
 .hp-review-chip{font-size:.86rem}
 .hp-review-name{font-size:1.75rem}
 .hp-review-name-paw{font-size:1.15rem}
 .hp-review-copy{padding:6px 13px 35px}
 .hp-review-copy blockquote{font-size:.94rem}
}
@media(prefers-reduced-motion:reduce){.hp-review-slide{animation:none}}

/* v1.4: pixel-perfect approved original cards. These are full artworks, not cut-out masks. */
.hp-review-approved{position:relative;width:100%;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;background:#e0f1ff;border-radius:24px;overflow:hidden}
.hp-review-approved-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;border:0;box-shadow:none}
.hp-review-mobile-transcript{display:none}
.hp-reviews .hp-reviews-prev,.hp-reviews .hp-reviews-next{top:50%!important}
.hp-reviews .hp-reviews-prev{left:-12px!important}
.hp-reviews .hp-reviews-next{right:-12px!important}
@media(max-width:760px){
 .hp-review-approved{border-radius:17px}
 .hp-reviews .hp-reviews-prev,.hp-reviews .hp-reviews-next{top:50%!important;width:36px;height:36px;min-width:36px}
 .hp-reviews .hp-reviews-prev{left:-8px!important}
 .hp-reviews .hp-reviews-next{right:-8px!important}
 .hp-review-mobile-transcript{display:block;margin:10px 2px 0;text-align:left;color:#14375f}
 .hp-review-mobile-transcript details{border:1px solid #d5e9f5;border-radius:12px;background:#fff;padding:9px 12px;font-size:14px}
 .hp-review-mobile-transcript summary{color:#0a3268;font-weight:700;cursor:pointer}
 .hp-review-mobile-transcript blockquote{margin:10px 0 6px;padding:0;border:0;font-size:14px;line-height:1.5;color:#14274e}
 .hp-review-mobile-transcript p{margin:6px 0 2px;font-size:13px;font-style:italic}
}
