body.p3 .mh{position:relative;min-height:min(92vh,800px);display:flex;align-items:center;padding:120px 0 70px;overflow:clip}
.mh-bg{position:absolute;inset:0}.mh-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 50%;animation:mz 2.6s var(--ease) both}
@keyframes mz{from{transform:scale(1.14);opacity:.4}to{transform:scale(1);opacity:1}}
.mh-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,250,247,.55),rgba(251,250,247,0) 55%)}
.mh-in{position:relative;width:100%;display:flex;justify-content:space-between;align-items:flex-end;gap:30px}
.mh-panel{max-width:580px;padding:clamp(24px,3.2vw,42px);background:rgba(255,255,255,.8);animation:up 1s .3s var(--ease) both}
.mh-panel .kick{display:block;margin-bottom:12px}
.mh-panel h1{font-size:clamp(1.9rem,3.5vw,3.1rem);line-height:1.04;letter-spacing:-.045em;margin:0 0 14px;max-width:none;text-align:left}
.mh-panel .lede{font-size:1.02rem;margin:0 0 20px;text-align:left}.mh-panel .ctas{justify-content:flex-start;margin:0}.mh-panel .note{margin:14px 0 0;text-align:left;font-size:.83rem;color:var(--sub)}
.mh-chips{display:grid;gap:10px;padding:20px;min-width:230px;background:rgba(255,255,255,.78);animation:up 1s .7s var(--ease) both}
.mh-chips small{font:700 .7rem var(--f-b);letter-spacing:.12em;text-transform:uppercase;color:var(--sub)}
.mh-chips span{display:flex;align-items:center;gap:10px;font:600 .94rem var(--f-h);color:var(--ink);opacity:.45;animation:lit 6s calc(var(--i)*1.5s) infinite}
.mh-chips span i{width:10px;height:10px;border-radius:50%;background:var(--c)}
@keyframes lit{0%,22%{opacity:1;transform:translateX(6px)}28%,100%{opacity:.45;transform:none}}
/* bento */
.mbento{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;margin-top:44px}
.mt{display:flex;flex-direction:column;overflow:hidden;text-decoration:none;text-align:left;transition:transform .5s var(--ease),box-shadow .5s}
.mt:hover{transform:translateY(-6px)}
.t1{grid-column:span 5}.t2{grid-column:span 7}.t3{grid-column:span 7}.t4{grid-column:span 5}
.mtt{padding:clamp(22px,2.6vw,34px) clamp(22px,2.6vw,34px) 8px}
.mtt .num{font:700 .74rem var(--f-m);letter-spacing:.14em;color:var(--c);display:block;margin-bottom:10px}
.mtt h3{font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.05;letter-spacing:-.035em;margin-bottom:10px}
.mtt p{color:var(--sub);font-size:.98rem;margin:0 0 12px}
.mtt p a{color:inherit;text-decoration:none}
.mtt em{font:600 .92rem var(--f-b);font-style:normal;color:var(--ink);background:linear-gradient(transparent 58%,var(--hl) 58%)}
.vis{position:relative;margin-top:auto;height:250px;overflow:hidden;background:linear-gradient(150deg,rgba(255,225,77,.2),rgba(255,91,31,.06) 55%,rgba(15,157,138,.1))}
.vis img{display:block;height:auto;transition:transform 1.4s var(--ease)}
.v1{display:flex;justify-content:center;align-items:flex-start;padding-top:22px}.v1>img{width:200px;border-radius:26px 26px 0 0;box-shadow:0 20px 40px rgba(17,19,24,.25);transform:rotate(-3deg)}
.mt:hover .v1>img{transform:rotate(0) translateY(-8px)}
.v1 .ov{position:absolute;left:6%;right:6%;bottom:16px;filter:drop-shadow(0 12px 20px rgba(17,19,24,.25));animation:bobm 6s ease-in-out infinite}
.v2>img{width:92%;margin:26px 0 0 6%;border-radius:12px 0 0 0;box-shadow:var(--edge),0 20px 40px rgba(70,45,30,.2)}
.v3>img{width:96%;margin:26px 0 0 4%;border-radius:12px 0 0 0;box-shadow:var(--edge),0 20px 40px rgba(70,45,30,.2)}
.v4>img{width:150%;max-width:none;margin:26px 0 0 8%;border-radius:12px;box-shadow:var(--edge),0 20px 40px rgba(70,45,30,.2)}
.vis .ov{position:absolute;right:5%;bottom:-6%;width:34%;filter:drop-shadow(0 18px 28px rgba(17,19,24,.3));animation:bobm 7s ease-in-out infinite}
.v1 .ov{width:auto}
.vis .ov img{width:100%;border-radius:14px}
.v3 .ov{width:38%}
@keyframes bobm{50%{transform:translateY(-9px)}}
.mt:hover .v2>img,.mt:hover .v3>img,.mt:hover .v4>img{transform:translate(-10px,-8px) scale(1.03)}
body.p3 .mpro{padding-top:0}
.mpro-g{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px)}
.pr h2{font-size:clamp(1.6rem,2.8vw,2.3rem);margin-bottom:14px}.pr p{font-size:1.04rem}.pr p+p{margin-top:14px}
@media (max-width:900px){
 body.p3 .mh{min-height:0;padding-top:104px}.mh-in{flex-direction:column;align-items:stretch}.mh-chips{display:none}
 .mh-shade{background:linear-gradient(0deg,rgba(251,250,247,.4),transparent)}
 .mbento{grid-template-columns:1fr}.t1,.t2,.t3,.t4{grid-column:auto}.mpro-g{grid-template-columns:1fr}
 .vis{height:220px}
}
@media (prefers-reduced-motion:reduce){.mh-bg img,.mh-panel,.mh-chips,.vis .ov,.mh-chips span{animation:none!important}.mh-chips span{opacity:1}.vis img,.mt{transition:none!important}}
