/* Consistent typography and clean article rhythm. */
.shop-card{display:flex;flex-direction:column;background:#fafbf5;min-height:185px}
.shop-text{padding:26px 22px 24px;flex:1}
.shop-text small{display:block;font-size:11px;letter-spacing:.06em;color:var(--muted);margin-bottom:9px}
.shop-text strong{display:block;font:400 clamp(23px,2.3vw,31px)/1.15 var(--serif);color:var(--green);overflow-wrap:anywhere}
.shop-bottom{gap:12px;padding:15px 22px;border-top:1px solid var(--line)}
.shop-bottom .shop-action{font-size:12px;font-weight:600;color:var(--green)}
.shop-card.pending{background:#f0f2e8}
.shop-card.pending .shop-action{color:var(--muted)}
@media(max-width:760px){.shop-card{min-height:165px}.shop-text{padding:20px 16px}.shop-bottom{padding:13px 16px}.shop-bottom .shop-action{font-size:11px}.shop-text strong{font-size:25px}}
.brand img{width:220px;height:auto}
.foot-grid>div:first-child img{width:250px;height:auto}
@media(max-width:760px){.brand img{width:180px}.foot-grid>div:first-child img{width:180px}}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400}
h3{line-height:1.25}
footer h3{font-size:18px;letter-spacing:0}
.article{line-height:1.65}
.article p{margin:0 0 18px}
.article h2{font-size:clamp(28px,3vw,35px);margin:32px 0 16px;line-height:1.15;letter-spacing:-.025em}
.article h3{margin:26px 0 14px}
.article ul,.article ol{margin:0 0 22px;padding-left:24px}
.article li{margin-bottom:6px}
.article a.button{color:#fff}
.article a.button.light{color:var(--deep)}
.article-layout aside .button{display:flex;width:max-content}
.article-layout aside .text-link{display:flex;width:max-content}
.page-intro{padding-top:40px;padding-bottom:26px}
.page-intro h1{margin-bottom:12px;line-height:1.12}
.video-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:center;padding-bottom:35px}
.video-feature p{color:var(--muted)}
.video-frame{position:relative;aspect-ratio:16/9;background:var(--deep);border-radius:8px;overflow:hidden}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-card{margin-bottom:24px}
.video-card .text-link{margin-top:14px;color:var(--green)}
.video-shortcut{margin-top:22px}
.article:has(.video-card){max-width:none}
@media(max-width:760px){.video-feature{grid-template-columns:1fr;gap:20px;padding-top:35px;padding-bottom:15px}.page-intro h1{font-size:40px}.page-intro{padding-top:26px}.article-layout{padding-bottom:50px}.video-card .text-link{font-size:14px}.hero h1{font-size:clamp(43px,11vw,58px)}}
