.g-main{padding:28px 0 60px}.g-top{display:flex;gap:18px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-bottom:16px}.g-top h1{font:600 clamp(30px,4.4vw,46px)/1.1 var(--font-display);margin:0 0 8px}.g-req{white-space:normal;text-align:center}
.g-pf{max-width:900px;margin:0 0 18px}.g-tool{display:flex;gap:12px 16px;flex-wrap:wrap;align-items:center;margin-bottom:8px}.g-sr{flex:0 1 300px;min-height:48px;padding:0 14px;font:inherit;font-size:16px;border:1px solid var(--line-2);border-radius:12px;background:var(--surface);color:var(--text);box-sizing:border-box;width:100%;max-width:340px}
.g-fl{display:flex;gap:8px;overflow-x:auto;padding:4px 0;flex:1 1 400px;min-width:0;scrollbar-width:thin}.g-fl button{flex:none;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);color:var(--text);font:500 16px var(--font);cursor:pointer}.g-fl button.on{background:var(--text);color:var(--bg);border-color:var(--text)}
.g-cnt{margin:6px 0 14px;font-size:15px;color:var(--text-2)}
.g-gr{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px 12px}
.g-c{display:flex;flex-direction:column;gap:6px;content-visibility:auto;contain-intrinsic-size:auto 300px}.g-c[hidden]{display:none}
.g-ph{position:relative;display:block;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:#e9dfd3;border:3px solid #2a1c17;box-shadow:0 6px 18px rgba(80,30,20,.16);transition:transform .2s,box-shadow .2s}
.g-st{position:absolute;top:0;left:0;display:block;max-width:none;width:100%;height:auto;transform:translate(0,0);transition:transform .5s ease-out;will-change:transform}
@media(hover:hover){.g-c:hover .g-ph{transform:translateY(-2px);box-shadow:0 12px 26px rgba(80,30,20,.26)}.g-c:hover .g-st{transform:translate(var(--sx,0),var(--sh,0));transition:transform var(--d,4s) linear}}
.g-c.pv .g-st{transform:translate(var(--sx,0),var(--sh,0));transition:transform var(--d,4s) linear}.g-c.pv .g-ph{outline:3px solid var(--accent)}
@media(prefers-reduced-motion:reduce){.g-st{transition:none!important}}
.g-b{display:flex;flex-direction:column;gap:1px}.g-b h2{font:600 16px/1.25 var(--font);margin:0}.g-tg{font-size:16px;color:var(--gold)}
.g-bt{display:flex;gap:6px;flex-wrap:wrap}.g-v,.g-u{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 10px;border-radius:9px;font:600 16px var(--font);text-decoration:none;cursor:pointer;box-sizing:border-box;white-space:nowrap}.g-v{flex:0 0 auto;border:1.5px solid var(--accent);color:var(--accent-2);background:transparent}.g-u{flex:1 1 auto;border:1.5px solid var(--accent);background:var(--accent);color:#fff}.g-u:hover{background:var(--accent-2)}
.g-end{margin-top:40px;text-align:center;padding:30px;border-radius:20px;background:var(--blush)}.g-end p{margin:0 0 12px;font:600 22px var(--font-display)}
@media(max-width:560px){.g-gr{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}.g-req{width:100%}.g-bt{flex-direction:column;flex-wrap:nowrap;gap:6px}.g-v,.g-u{width:100%;min-height:44px;padding:0 8px;font:600 14.5px var(--font);border-radius:10px}.g-u{order:1}.g-v{order:2;border-color:var(--line-2);color:var(--text-2)}}
/* Y1 24/10: chữ ≥16px */
.g-tg,.g-cnt{font-size:16px}
.g-c,.g-b{min-width:0}.g-tg{white-space:normal;overflow-wrap:anywhere;line-height:1.35}
.g-cn{display:grid;gap:6px;margin:0 0 16px;padding:14px 16px;border-radius:16px;background:var(--blush);border:1px solid var(--line-2)}.g-cn b{font:600 17px var(--font-display);color:var(--text)}.g-cn span{font-size:15px;line-height:1.5;color:var(--text-2)}.g-cn a{justify-self:start;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;background:var(--accent);color:#fff;font:600 14.5px var(--font);text-decoration:none}

.g-faq{max-width:760px;margin:44px auto 8px}.g-faq h2{font-size:22px;margin:0 0 12px}.g-faq details{border-top:1px solid #e3d6c8;padding:12px 0}.g-faq summary{cursor:pointer;font-weight:600;padding:10px 0;min-height:44px}.g-faq p{margin:8px 0 0;line-height:1.65}
.g-pf{min-height:280px}@media(min-width:760px){.g-pf{min-height:129px}}
