/* V8 — closer photography, compact clay cards, and sub-second box motion. */
.hero-photo{border-radius:34px;box-shadow:8px 10px 0 #e5dcfa}
.hero-photo img,.media-card img,.skill-image>img,.registration-art-photo img{width:100%;height:auto;object-fit:contain;transform:none!important}
.hero-layout{min-height:620px;padding-top:40px;padding-bottom:44px}
.hero-art{padding-top:20px;padding-bottom:8px}
.hero-play{width:56px;height:49px;top:27px;left:-14px;animation:none;box-shadow:inset 3px 3px #fff2e5,inset -4px -5px #e3bca1,4px 6px #cfa78e,6px 9px 12px #70504e18}
.hero-play i{border-left-width:17px;border-top-width:10px;border-bottom-width:10px}
.hero-spark{font-size:48px;right:-9px;top:-9px;bottom:auto;animation:none}
.media-card img{border-radius:23px}
.skill-image{aspect-ratio:auto;background:#f9f3e9}
.skill-body{min-height:153px;padding:21px 22px 24px}
.skill-body>span{margin-bottom:10px}
.skill-body p{margin-top:8px}
/* Place icons inside the benefit cards so no empty overflow space is reserved. */
.benefits{padding-top:68px;padding-bottom:64px}
.benefits .section-heading{margin-bottom:28px;max-width:740px}
.benefit-grid{gap:19px;row-gap:19px;padding:0 1px 13px;align-items:stretch}
.benefit-card,.benefit-card:nth-child(2),.benefit-card:nth-child(4){transform:none;min-height:0;padding:19px 22px 23px;display:flex;flex-direction:column;align-items:flex-start;border-radius:24px}
.benefit-card .clay-icon,.benefit-card:hover .clay-icon{position:relative;top:auto;left:auto;transform:none;width:104px;height:104px;margin:0 0 10px;filter:drop-shadow(2px 5px 3px #5a416512)}
.benefit-card .clay-icon img{width:100%;height:100%;object-fit:contain}
.benefit-card h3{font-size:18px;line-height:1.4}
.benefit-card p{margin-top:10px;font-size:14px;line-height:1.55}
/* Small testimonial cards: portrait, name, short quote and one illustration label. */
.testimonials{padding-top:64px;padding-bottom:64px}
.testimonials .section-heading{margin-bottom:16px}
.testimonial-notice{font-size:11px;line-height:1.6;margin-bottom:21px;max-width:780px}
.testimonial-track{width:100%;max-width:1040px;margin-inline:auto;gap:22px;padding:5px 2px 14px;perspective:1100px;align-items:stretch}
.testimonial-card{position:relative;flex:0 0 calc((100% - 44px)/3);min-height:204px;padding:19px 20px 14px;overflow:visible;border:1px solid #d6c4e5;border-radius:20px;background:#fffdf7;box-shadow:3px 5px 0 #cfbee1,0 9px 16px #49305f0b;display:flex;flex-direction:column;transform-style:preserve-3d}
.testimonial-profile{display:flex;align-items:center;gap:12px;min-height:52px;padding:0;background:transparent}
.testimonial-photo{width:52px;height:52px;flex:0 0 52px;overflow:hidden;border-radius:50%;border:3px solid #fff9eb;box-shadow:2px 3px 0 #c9b5dc;background:var(--card-tint)}
.testimonial-photo img{width:100%;height:100%;object-fit:cover;object-position:center;mix-blend-mode:normal;border-radius:50%}
.testimonial-identity{padding:0;min-width:0}
.testimonial-identity h3{font:600 13px/1.4 Poppins,sans-serif;letter-spacing:-.02em;color:#302653}
.testimonial-identity>p{font-size:10px;margin-top:4px;color:#7a648b;line-height:1.4}
.testimonial-card blockquote{margin:13px 0 11px;padding:0;flex:1}
.testimonial-card blockquote p{font-size:14px;line-height:1.65;color:#55446e}
.quote-disclosure{display:inline-block;align-self:flex-end;margin:0;padding:2px 8px;border:1px solid #e0d2eb;border-radius:99px;background:#f5eff9;color:#80678f;font-size:9px;line-height:1.4}
/* JavaScript controls programmatic slides with an exact 400 ms duration. */
.skills-grid,.benefit-grid,.testimonial-track{scroll-behavior:auto!important}
.is-sliding{scroll-snap-type:none!important}
/* Content remains visible without JavaScript. Each observed box reveals once. */
.motion-ready{opacity:0;translate:0 14px}
.motion-ready.motion-in{animation:box-reveal .56s cubic-bezier(.2,.7,.25,1) var(--box-delay,0ms) both}
@keyframes box-reveal{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
.button{transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.button:active{transition-duration:.1s;transform:translateY(2px)}
.skill-card,.benefit-card,.testimonial-card{transition:transform .2s ease,box-shadow .2s ease}
.skill-card:hover .skill-image>img{transform:none!important}
@media(hover:hover) and (pointer:fine){
 .skill-card:hover,.benefit-card:hover,.testimonial-card:hover{transform:translateY(-4px) rotateX(1deg) rotateY(-1deg)}
 .testimonial-card:hover{box-shadow:4px 7px 0 #c6b0db,0 13px 19px #49305f12}
 .benefit-card:hover .clay-icon{transform:none}
}
@media(min-width:1500px){.hero-layout{min-height:655px}}
@media(max-width:1100px){.benefit-card{padding-inline:18px}.benefit-card h3{font-size:16px}.testimonial-card{padding:18px 17px 14px}.testimonial-profile{gap:10px}.testimonial-identity h3{font-size:12px}.testimonial-photo{width:48px;height:48px;flex-basis:48px}}
@media(max-width:900px){.hero-layout{min-height:0}.hero-play{width:49px;height:43px;left:-8px;top:26px}.hero-spark{font-size:40px;right:-7px;top:-5px}.hero-photo{border-radius:28px}.benefits{padding-top:60px;padding-bottom:56px}.benefit-grid{row-gap:20px}.benefit-card,.benefit-card:nth-child(2),.benefit-card:nth-child(4){transform:none;padding:20px 24px 24px}.benefit-card h3{font-size:20px}.testimonial-track{max-width:700px}.testimonial-card{flex-basis:calc((100% - 22px)/2);padding:20px;min-height:205px}.testimonial-identity h3{font-size:14px}.testimonial-photo{width:52px;height:52px;flex-basis:52px}.testimonials{padding-top:56px;padding-bottom:56px}}
@media(max-width:600px){.hero-layout{padding-top:30px;padding-bottom:32px;gap:20px}.hero-art{padding-top:17px;padding-bottom:5px}.hero-photo{border-radius:26px}.hero-photo img{height:auto;aspect-ratio:auto;object-fit:contain;transform:none}.hero-play{width:44px;height:40px;left:0;top:30px;border-radius:15px}.hero-play i{border-left-width:14px;border-top-width:8px;border-bottom-width:8px}.hero-spark{font-size:38px;right:2px;top:-3px}.hero-art .tag-bottom{margin-top:14px}.media-card img{height:auto;aspect-ratio:auto}.skill-body{min-height:147px}.benefits{padding-top:52px;padding-bottom:48px}.benefits .section-heading{margin-bottom:25px}.benefit-grid{padding-top:0;padding-bottom:13px;gap:15px}.benefit-card{min-height:0;flex-basis:86%;padding:18px 24px 24px;transform:none!important;border-radius:22px}.benefit-card .clay-icon{width:98px;height:98px;margin-bottom:9px}.benefit-card h3{font-size:20px}.benefit-card p{font-size:15px}.testimonials{padding-top:50px;padding-bottom:50px}.testimonial-notice{font-size:10px;margin-bottom:18px}.testimonial-track{width:calc(100% + 20px);max-width:none;margin-left:0;gap:16px;padding:5px 21px 15px 2px;scroll-padding-left:2px}.testimonial-card{flex-basis:88%;padding:18px 20px 14px;min-height:202px;transform:none!important}.testimonial-profile{padding:0;gap:12px;background:transparent}.testimonial-photo{width:50px;height:50px;flex-basis:50px}.testimonial-identity h3{font-size:13px}.testimonial-identity>p{font-size:10px}.testimonial-card blockquote{padding:0;margin:13px 0 10px}.testimonial-card blockquote p{font-size:14px;line-height:1.65}.quote-disclosure{margin:0;padding:2px 8px;font-size:9px}.registration-art-photo img{height:auto;max-height:none;object-fit:contain}}
@media(prefers-reduced-motion:reduce){.motion-ready{opacity:1;translate:none;animation:none!important}.skill-card,.benefit-card,.testimonial-card{transition:none;transform:none!important}}
