.qr{background:var(--c-beige);width:100%;max-width:1440px;color:var(--c-ink);font-family:var(--f-ui);margin-inline:auto}.qr__hero{background:var(--c-olive-ink);grid-template-columns:minmax(0,1fr) 520px;align-items:center;gap:80px;padding:80px 60px 88px;display:grid;position:relative;overflow:hidden}.qr__heroBg{z-index:0;object-fit:cover;object-position:center 42%;opacity:0;width:100%;height:100%;transition:opacity 1s ease-out;position:absolute;inset:0;transform:scale(1.04)}.qr__hero[data-playing] .qr__heroBg{opacity:.32;animation:22s ease-out forwards qrHeroDrift}@keyframes qrHeroDrift{0%{transform:scale(1.04)}to{transform:scale(1.16)}}.qr__hero[data-playing]:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#3a4030b8,#3a403080);position:absolute;inset:0}.qr__hero>:not(.qr__heroBg){z-index:1;position:relative}.qr__hero[data-playing] .qrPlayer{background:#474c3c;border-color:#626657}@media (prefers-reduced-motion:reduce){.qr__hero[data-playing] .qr__heroBg{transition:none;animation:none;transform:none}}.qr__heroText{flex-direction:column;gap:24px;display:flex}.qr__kicker{letter-spacing:2.64px;text-transform:uppercase;color:var(--c-caramel-ink);font-size:11px}.qr__kicker--onDark{color:var(--c-line-3)}.qr__h1{font-family:var(--f-display);color:var(--c-beige);text-wrap:pretty;margin:0;font-size:60px;font-weight:500;line-height:1.06}.qr__lead{color:#f2ece1d1;max-width:54ch;margin:0;font-size:19px;line-height:1.7}.qr__actions{flex-wrap:wrap;gap:14px;margin-top:6px;display:flex}.qr__btn{font-family:var(--f-ui);border-radius:var(--radius);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);justify-content:center;align-items:center;font-size:17px;font-weight:500;text-decoration:none;display:inline-flex}.qr__btn--wine{background:var(--c-wine);color:var(--c-on-olive);letter-spacing:.03em;padding:17px 32px}.qr__btn--wine:hover{background:var(--c-caramel-ink)}.qr__btn--ghost{color:var(--c-beige);border:1.5px solid #f2ece1b3;padding:15.5px 30px}.qr__btn--ghost:hover{background:var(--c-beige);color:var(--c-olive-ink)}.qr__btn--outline{border:1.5px solid var(--c-olive);color:var(--c-olive-ink);flex:none;padding:14.5px 26px;font-size:16px}.qr__btn--outline:hover{background:var(--c-olive);color:var(--c-on-olive)}.qr__btn--lg{padding:19px 40px;font-size:18px}.qrPlayer{border-radius:var(--radius);background:#f2ece112;border:1px solid #f2ece138;padding:36px}.qr__how{flex-direction:column;gap:44px;padding:96px 60px;scroll-margin-top:24px;display:flex}.qr__h2{font-family:var(--f-display);color:var(--c-olive);margin:0;font-size:42px;font-weight:400;line-height:1.12}.qr__h2--sm{font-size:38px;line-height:1.14}.qr__h2--final{max-width:44ch;font-size:44px;line-height:1.1}.qr__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:0;padding:0;list-style:none;display:grid}.qr__step{flex-direction:column;gap:14px;display:flex}.qr__stepNo{font-family:var(--f-display);letter-spacing:2.4px;color:var(--c-caramel);font-size:15px}.qr__stepRule{background:var(--c-caramel-mute);height:1px;display:block}.qr__stepTitle{font-family:var(--f-ui);color:var(--c-olive-ink);margin:0;font-size:22px;font-weight:600}.qr__stepText{color:var(--c-ink-2);margin:0;font-size:17px;line-height:1.7}.qr__figure{flex-direction:column;gap:12px;margin:0;display:flex}.qr__frame{background:var(--c-paper);border:1px solid var(--c-line);border-radius:var(--radius);padding:24px}.qr__shot{object-fit:cover;border-radius:2px;width:100%;height:420px;display:block}.qr__frame{--dvid-h:266px}.qr__frame>div{border-radius:2px;overflow:hidden}@media (max-width:1023.98px){.qr__frame{--dvid-h:520px}}.qr__heroMedia{flex-direction:column;gap:20px;display:flex}.qr__caption{color:var(--c-ink-3);font-size:12px;line-height:1.5}.qr__caption--onDark{color:var(--c-line-3)}.qr__together{background:var(--c-sand);flex-direction:column;gap:44px;padding:88px 60px;display:flex}.qr__togetherHead{flex-direction:column;gap:14px;max-width:70ch;display:flex}.qr__pair{grid-template-columns:minmax(0,1fr) 340px minmax(0,1fr) 340px;align-items:center;gap:36px;display:grid}.qr__pairText{flex-direction:column;gap:14px;display:flex}.qr__pairTitle{font-family:var(--f-ui);color:var(--c-olive-ink);margin:0;font-size:24px;font-weight:600}.qr__pairBody{color:var(--c-ink-2);margin:0;font-size:17px;line-height:1.7}.qr__appLink{color:var(--c-wine);border-bottom:1px solid #5b1f2d59;align-self:flex-start;font-size:16px;text-decoration:none}.qr__appLink:hover{border-bottom-color:var(--c-wine)}.qr__shotBox{flex-direction:column;justify-self:center;align-items:center;gap:12px;max-width:340px;margin:0;display:flex}.qr__shotBox .qr__caption{text-align:center}.qrPhone{background:var(--c-ink);border-radius:34px;width:320px;padding:10px}.qrPhone__screen{background:var(--c-beige);border-radius:26px;flex-direction:column;display:flex;overflow:hidden}.qrPhone__bar{background:var(--c-paper);align-items:center;gap:12px;padding:14px 18px;display:flex}.qrPhone__icon{fill:none;width:18px;height:18px;stroke:var(--c-olive-ink);stroke-width:1.6px;flex:none}.qrPhone__title{color:var(--c-olive-ink);font-size:16px;font-weight:600}.qrPhone__body{flex-direction:column;gap:14px;padding:18px;display:flex}.qrPhone__note{color:var(--c-ink-3);font-size:13px;line-height:1.6}.qrCard{background:var(--c-paper);border:1px solid var(--c-line);border-radius:var(--radius);flex-direction:column;gap:10px;padding:14px;display:flex}.qrCard__title{font-family:var(--f-display);color:var(--c-olive);font-size:19px}.qrCard__wave{background-image:repeating-linear-gradient(90deg, var(--c-caramel) 0 16px, transparent 16px 24px);height:3px;display:block}.qrCard__meta{color:var(--c-ink-2);font-size:14px}.qrCard__tag{border:1px solid var(--c-line-2);color:var(--c-ink-2);border-radius:100px;align-self:flex-start;padding:6px 12px;font-size:14px}.qrInvite__from{color:var(--c-olive-ink);font-size:16px;line-height:1.6}.qrInvite__story{font-family:var(--f-display);color:var(--c-olive);font-size:24px;line-height:1.15}.qrInvite__rule{background:var(--c-caramel);width:56px;height:1px;display:block}.qrInvite__rec{background:var(--c-paper);border:1px solid var(--c-line);border-radius:var(--radius);align-items:center;gap:12px;padding:14px;display:flex}.qrInvite__mic{background:var(--c-wine);border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.qrInvite__micIcon{fill:none;width:18px;height:18px;stroke:var(--c-on-olive);stroke-width:1.6px}.qrInvite__recText{flex-direction:column;gap:3px;display:flex}.qrInvite__recTitle{color:var(--c-olive-ink);font-size:16px;font-weight:600}.qrInvite__recNote{color:var(--c-ink-3);font-size:13px}.qrInvite__linkBox{flex-direction:column;gap:8px;display:flex}.qrInvite__label{color:var(--c-ink-2);font-size:13px}.qrInvite__link{background:var(--c-paper);border:1px solid var(--c-line-2);border-radius:var(--radius);color:var(--c-ink-2);overflow-wrap:anywhere;padding:12px 14px;font-size:14px}.qr__band{background:var(--c-paper);border:1px solid var(--c-line);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;display:flex}.qr__bandText{color:var(--c-ink);margin:0;font-size:18px;line-height:1.6}.qr__final{text-align:center;flex-direction:column;align-items:center;gap:26px;padding:96px 60px;display:flex}.qr__finalText{color:var(--c-ink-2);max-width:56ch;margin:0;font-size:18px;line-height:1.7}@media (max-width:1100px){.qr__hero{grid-template-columns:minmax(0,1fr);gap:40px;padding:56px 32px 64px}.qr__h1{font-size:44px}.qr__how,.qr__together,.qr__final{padding:64px 32px}.qr__steps{grid-template-columns:repeat(2,minmax(0,1fr))}.qr__pair{grid-template-columns:minmax(0,1fr) 340px}.qr__shot{height:320px}.qr__h2{font-size:34px}.qr__h2--sm{font-size:30px}.qr__h2--final{font-size:34px}}@media (max-width:700px){.qr__hero{padding:40px 16px 48px}.qr__how,.qr__together{gap:32px;padding:48px 16px}.qr__final{padding:48px 16px}.qr__h1{font-size:34px}.qr__lead{font-size:17px}.qr__steps,.qr__pair{grid-template-columns:minmax(0,1fr)}.qr__frame{padding:12px}.qr__shot{height:200px}.qr__h2{font-size:28px}.qr__h2--sm{font-size:26px}.qr__h2--final{font-size:28px}.qr__band{flex-direction:column;align-items:flex-start;padding:20px}.qr__bandText{font-size:17px}.qrPlayer{padding:24px 20px}.qr__actions{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.qr__btn{transition:none}}
