/* Tiệm Nhà Ốc — website V2 / typography and sections */
:root{--v2-brown:#59381d;--v2-gold:#b58233;--v2-soft:#fbf5e9}
html{scroll-behavior:smooth}
body,body button,body input,body select,body textarea{font-family:"Segoe UI",Tahoma,Arial,sans-serif}
body :is(h1,h2,h3,h4),.lux-brand,.v1-brand-name b,.v1-footer-logo strong{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;font-kerning:normal;font-feature-settings:normal;letter-spacing:0!important;word-break:normal;overflow-wrap:normal;text-wrap:pretty}
.v2-brand-wordmark b{font-weight:750!important;white-space:nowrap;letter-spacing:0!important;font-size:clamp(17px,1.5vw,25px)!important;line-height:1.15!important}
.v2-brand-wordmark small{font-size:10px;letter-spacing:.6px!important;max-width:260px}
.v2-round-brand{width:70px;height:70px;overflow:hidden;border-radius:50%;flex-shrink:0;background:#fff8ea;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(83,56,20,.1)}
.v2-round-brand img{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%;clip-path:circle(49% at 50% 50%)}
.v1-footer-logo .v2-round-brand{width:58px;height:58px}
.v2-intro-section{padding:70px 0 48px;background:linear-gradient(135deg,#fffaf2,#f9efdd);border-bottom:1px solid #e8d6bb}
.v2-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,80px);align-items:center}
.v2-intro-image{border-radius:22px;overflow:hidden;position:relative;box-shadow:0 25px 44px rgba(75,47,19,.12);min-height:380px;background:#eadac2}
.v2-intro-image img{width:100%;height:100%;min-height:380px;max-height:520px;object-fit:cover;object-position:center 46%;display:block}
.v2-intro-image span{position:absolute;left:20px;bottom:20px;background:rgba(255,250,243,.91);border-radius:999px;padding:9px 15px;font-weight:750;font-size:11px;letter-spacing:.6px}
.v2-kicker{display:block;color:#a37533;font-size:12px;letter-spacing:1.2px;font-weight:750;line-height:1.5}
.v2-intro-content h2,.v2-reviews-header h2,.v2-map-copy h2,.v2-catalog-header h1{font-size:clamp(29px,3.1vw,44px);line-height:1.22;margin:12px 0 18px;color:#5b391c;max-width:640px}
.v2-intro-content p{font-size:16px;line-height:1.85;color:#74634f;margin:0 0 12px}
.v2-intro-content blockquote{margin:18px 0 16px;padding:13px 19px;border-left:4px solid #bf934c;background:rgba(255,255,255,.7);font-weight:650;color:#896026;font-size:19px;line-height:1.5}
.v2-intro-features{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 24px}.v2-intro-features span{border:1px solid #ead8b7;border-radius:999px;background:#fffcf5;padding:8px 13px;font-size:12px;font-weight:650}
.v2-see-all{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:9px 15px;border:1px solid #d5ba8b;color:#835d28;font-weight:750;text-decoration:none;font-size:13px}
.v2-catalog-page{padding-bottom:56px}.v2-catalog-header{padding:52px 0 26px}.v2-catalog-header h1{margin-bottom:6px}.v2-catalog-header p{color:#86735b;line-height:1.65;max-width:760px}
.v2-category-grid{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.v2-category-chip{background:#fffdf8;border:1px solid #e9d6b8;color:#7f5f32;padding:10px 17px;font-weight:700;border-radius:999px;text-decoration:none;transition:background .2s}
.v2-category-chip.active,.v2-category-chip:hover{background:#9e6c29;color:white;border-color:#9e6c29}
.v2-catalog-results{padding-bottom:54px}.v2-catalog-results .lux-products-panel{width:100%}.v2-catalog-results .lux-product-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr))}
.v2-reviews-section{padding:68px 0;background:#fffaf1;border-top:1px solid #ecdac1;border-bottom:1px solid #ecdac1}.v2-reviews-header{text-align:center;max-width:800px;margin:0 auto 28px}.v2-reviews-header h2{margin:9px auto 10px}.v2-reviews-header p{color:#806f5c;line-height:1.7}
.v2-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 30px}.v2-review-card{border:1px solid #ebd9bf;background:white;border-radius:22px;padding:24px;box-shadow:0 12px 28px rgba(76,53,24,.05)}.v2-stars{color:#b57f2b;font-size:18px}.v2-review-card p{font-size:17px;line-height:1.6;white-space:pre-line;color:#634c32}.v2-review-card strong{font-size:13px;color:#88602f}
.v2-reviews-empty{display:flex;align-items:center;gap:22px;border:1px solid #ecd9b9;border-radius:24px;padding:25px 30px;background:white;max-width:800px;margin:0 auto 22px}.v2-reviews-empty>span{display:grid;place-items:center;flex-shrink:0;width:60px;height:60px;border-radius:50%;background:#fff4e0;color:#a87c3c;font-size:36px}.v2-reviews-empty strong{display:block;font-size:19px;color:#62411e}.v2-reviews-empty p{line-height:1.7;margin:6px 0 0;color:#776650}
.v2-review-form-wrap{max-width:860px;margin:auto;border:1px solid #e8d5b6;border-radius:19px;padding:16px 22px;background:#fffefa}.v2-review-form-wrap summary{font-weight:750;display:flex;justify-content:space-between;cursor:pointer;color:#754b22}.v2-review-form-wrap summary::marker{color:#b58a44}.v2-review-form{padding-top:20px;display:grid;gap:13px}.v2-review-fields{display:grid;grid-template-columns:1fr 1fr .6fr;gap:13px}.v2-review-form label{font-size:13px;font-weight:650;display:grid;gap:7px}.v2-review-form :is(input,textarea,select){display:block;width:100%;border:1px solid #e8d8bf;border-radius:13px;padding:11px 13px;background:white;min-width:0}.v2-review-form .v2-check{display:flex;align-items:center;gap:9px;line-height:1.6}.v2-review-form .v2-check input{width:18px;height:18px}.v2-review-form .lux-btn{justify-self:start}.v2-review-form small{font-size:12px;color:#766550}
.v2-map-section{padding:64px 0 72px;background:#f5ecd9}.v2-map-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;align-items:center}.v2-map-copy h2{margin-bottom:12px}.v2-map-copy>p{line-height:1.75;color:#73624a}.v2-map-copy small{display:block;margin-top:15px;color:#8d7a64;line-height:1.6}.v2-map-contact{display:grid;gap:7px;margin:18px 0 24px;font-size:15px;color:#715b40}.v2-map-contact strong{font-size:18px}.v2-map-contact a{text-decoration:none;color:#87612c;font-weight:700}.v2-map-frame{height:380px;background:#fff;border:7px solid #fff;border-radius:24px;overflow:hidden;box-shadow:0 22px 40px rgba(69,46,21,.11)}.v2-map-frame iframe{height:100%;width:100%;border:0}
.v2-admin-reviews{display:grid;gap:14px}.v2-admin-review{border:1px solid #ecd9bc;background:#fffaf2;border-radius:16px;padding:16px 20px}.v2-admin-review>div{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.v2-admin-review span{color:#9b6c2b}.v2-admin-review small{color:#806e5a}.v2-admin-review p{margin:8px 0;line-height:1.6;white-space:pre-line}.v2-admin-review form{display:flex;gap:8px}
@media(max-width:1050px){.v2-intro-grid,.v2-map-grid{grid-template-columns:1fr 1fr}.v2-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.v2-brand-wordmark b{font-size:17px!important}.v2-round-brand{width:50px;height:50px}.v2-intro-section{padding:40px 0}.v2-intro-grid,.v2-map-grid{grid-template-columns:1fr;gap:23px}.v2-intro-image,.v2-intro-image img{min-height:290px;max-height:420px}.v2-catalog-header{padding:35px 0 20px}.v2-review-fields{grid-template-columns:1fr}.v2-reviews-grid{grid-template-columns:1fr}.v2-reviews-section{padding:48px 0}.v2-map-section{padding:38px 0}.v2-map-frame{height:340px}.v2-reviews-empty{padding:20px;align-items:flex-start}.v2-intro-content h2,.v2-reviews-header h2{font-size:30px}}
/* The VietQR is cropped without changing the encoded squares so it remains legible at footer size. */
.v1-footer-bank{grid-template-columns:155px minmax(0,1fr);align-items:center;gap:14px}
.v1-footer-bank img{width:155px;height:155px;object-fit:contain;border:8px solid #fff;border-radius:12px;background:white;max-width:100%;image-rendering:auto}
@media(max-width:760px){.v1-footer-bank{grid-template-columns:145px minmax(0,1fr)}.v1-footer-bank img{width:145px;height:145px}}
