.acg{--gap:clamp(12px,1.6vw,24px);--pad:clamp(16px,4vw,56px);background:var(--g-bg);color:var(--g-ink);overflow:hidden}
.acg *{box-sizing:border-box}
.acg-wrap{max-width:1440px;margin:0 auto;padding:0 var(--pad)}
.acg a{color:inherit;text-decoration:none}
.acg .acl-img{display:block;width:100%;height:100%;object-fit:cover}
.acg-frame{position:relative;display:block;width:100%;aspect-ratio:4/5;overflow:hidden;background:var(--g-soft)}
.acg-frame--tall{aspect-ratio:4/5}
.acg-frame .acl-img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.acg a:hover .acg-frame>.acl-img:first-child{transform:scale(1.025)}
.acg-rev{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.acg-rev.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.acg-rev{opacity:1;transform:none;transition:none}.acg-frame .acl-img{transition:none}}
.acg .acl-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--g-mute);font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-align:center;padding:16px}
.acg .acl-ph__play{display:none}
.acg .acl-ph__s{text-transform:none;letter-spacing:0;font-size:12px}

.acg-eyebrow{margin:0 0 18px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--g-mute)}
.acg-title{margin:0;font-weight:400;font-size:clamp(40px,8.4vw,128px);line-height:.95;letter-spacing:-.035em;max-width:11ch}
.acg-lede{margin:28px 0 0;max-width:34ch;font-size:clamp(15px,1.25vw,18px);line-height:1.55;color:var(--g-mute)}
.acg-intro{padding:clamp(56px,11vw,160px) 0 clamp(48px,8vw,120px)}
.acg-intro__foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px 32px;margin-top:36px}
.acg-code{margin:0;display:inline-flex;align-items:center;gap:10px;font-size:13px;color:var(--g-mute)}
.acg-code strong{font-weight:500;color:var(--g-ink);background:var(--g-accent);padding:7px 12px;letter-spacing:.12em;font-size:12px}
.acg-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:3px}
.acg-intro--media{padding-top:0}
.acg-intro__media{position:relative;width:100%;aspect-ratio:16/9;max-height:92vh;overflow:hidden;background:var(--g-soft);margin-bottom:clamp(40px,6vw,88px)}
.acg-intro__media .acl-img{position:absolute;inset:0;object-position:50% var(--cy)}
@media (max-width:749px){.acg-intro__media{aspect-ratio:4/5}}

.acg-ch{padding:clamp(28px,5vw,72px) 0}
.acg-ch__grid{display:grid;grid-template-columns:7fr 5fr;gap:var(--gap) clamp(20px,4vw,72px);align-items:start}
.acg-ch--flip .acg-ch__grid{grid-template-columns:5fr 7fr}
.acg-ch--flip .acg-ch__a{order:2}
.acg-ch__side{display:flex;flex-direction:column;gap:clamp(24px,3vw,44px);padding-top:clamp(0px,14vw,200px)}
.acg-ch__b{width:78%}
.acg-ch--flip .acg-ch__b{margin-left:auto}
.acg-ch__cap{max-width:30ch}
.acg-ch--flip .acg-ch__cap{margin-left:auto}
.acg-num{display:block;font-size:11px;letter-spacing:.22em;color:var(--g-mute);margin-bottom:14px}
.acg-ch__title{margin:0;font-weight:400;font-size:clamp(26px,3vw,44px);line-height:1.02;letter-spacing:-.02em}
.acg-ch__line{margin:14px 0 0;font-size:15px;line-height:1.55;color:var(--g-mute)}
.acg-ch__meta{display:flex;gap:16px;margin:16px 0 22px;font-size:13px;color:var(--g-mute)}
.acg-ch__meta span+span:before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:currentColor;vertical-align:middle;margin-right:16px}
@media (max-width:749px){
.acg-ch__grid,.acg-ch--flip .acg-ch__grid{grid-template-columns:1fr}
.acg-ch--flip .acg-ch__a{order:0}
.acg-ch__a{margin:0 calc(var(--pad) * -1)}
.acg-ch__side{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}
.acg-ch__b,.acg-ch--flip .acg-ch__b{width:100%;margin:0}
.acg-ch--flip .acg-ch__side .acg-ch__b{order:2}
.acg-ch--flip .acg-ch__cap{margin-left:0}
.acg-ch__line{font-size:14px}
.acg-ch__meta{flex-direction:column;gap:2px;margin:10px 0 14px}
.acg-ch__meta span+span:before{display:none}
}

.acg-note{margin:clamp(40px,7vw,110px) auto;text-align:center;max-width:980px}
.acg-note p{margin:0;font-size:clamp(24px,3.4vw,46px);line-height:1.2;letter-spacing:-.02em}
.acg-note cite{display:block;margin-top:20px;font-style:normal;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--g-mute)}

.acg-shop{padding:clamp(48px,7vw,110px) 0 clamp(64px,9vw,140px);border-top:1px solid rgba(14,15,17,.08);margin-top:clamp(24px,4vw,56px)}
.acg-shop__head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:clamp(22px,3vw,40px)}
.acg-h2{margin:0;font-weight:400;font-size:clamp(26px,3vw,44px);letter-spacing:-.02em}
.acg-shop__row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.acg-card{display:block}
.acg-card__alt{position:absolute;inset:0;opacity:0;transition:opacity .5s ease}
@media (hover:hover){.acg-card:hover .acg-card__alt{opacity:1}}
.acg-card__t{display:block;margin-top:14px;font-size:14px}
.acg-card__m{display:block;margin-top:4px;font-size:13px;color:var(--g-mute)}
.acg-card.is-out{opacity:.5}
@media (max-width:989px){.acg-shop__row{grid-template-columns:repeat(2,1fr);row-gap:28px}}

.acg-ch__meta span,.acg-card__m{text-transform:capitalize}
