/* DELUXE — limestone ivory, warm stone, brand navy and antique brass.
   Load after styles.css. Original website snapshot: Theme/Original.
   Website UI only; invoice application and printed vouchers retain their artwork. */
:root {
  color-scheme: light;
  --error-text: #922f24;
  --bg-navy: #eae6dc;
  --bg-navy-deep: #d6cfc0;
  --bg-navy-alt: #dfd9cc;
  --surface-1: #f3f0e7;
  --surface-2: #faf8f2;
  --line: rgba(119, 88, 45, .25);
  --text-light: #30312d;
  --text-muted: #68675e;
  --accent-gold: #756344;
  --accent-gold-bright: #68481f;
  --accent-gold-fresh: #705025;
  --accent-gold-dark: #62421d;
  --accent-orange: #944c32;
  --accent-orange-bright: #89452e;
  --accent-orange-dark: #773923;
  --soft-sage: #698579;
  --input-ph: #776c5b;
  --shadow-soft: 0 20px 50px rgba(75, 53, 25, .12);
  --shadow-card: 0 8px 24px rgba(75, 53, 25, .075);
  --glow-gold: 0 10px 30px rgba(119, 88, 45, .16);
  --radius-lg: 20px;
  --radius-md: 12px;
}

body { isolation: isolate; background: var(--bg-navy); }
body::before {
  background:
    linear-gradient(rgba(245,237,223,.3), rgba(245,237,223,.3)),
    url('indochine.svg') center / 100% 100% no-repeat,
    url('mountains-clouds-ai.webp') center / cover no-repeat;
}
body::after { content: none; }
.sky-stars, .sparkle, .doodle, .hero-blob, .rotating-badge { display: none; }

.product-card, .trust-card, .review-card, .article-card,
.newsletter-inner, .giftset-inner, .meaning-card, .cert-card,
.process-step, .faq-item, .contact-item, .contact-form,
.pd-relcard, .pos-cart-card, .feat-btn, .home-article-btn,
.about-info-card, .dosage-card, .price-policy-card, .compare-card, .eastern-note {
  --text-light: #30312d;
  --text-muted: #68675e;
  --accent-gold: #756344;
  --accent-gold-bright: #68481f;
  --accent-gold-fresh: #705025;
  --accent-orange-bright: #89452e;
  --line: rgba(119, 88, 45, .25);
  background: linear-gradient(135deg, #faf8f1, #eee9de);
  box-shadow: var(--shadow-card);
}

/* Solid dark lettering replaces luminous gold, including clipped gradient titles. */
.section-title, .section-title.light, .newsletter-inner .section-title.light,
.page-hero h1, .hero-title, .art-title, .voucher-admin-page .auth-title {
  color: #272e33;
  background: none;
  -webkit-text-fill-color: currentColor;
  filter: none;
  text-shadow: none;
}
.page-hero h1 { animation: none; }
.accent-text { color: #756344; text-shadow: none; }
.section-head.center .section-title::after, .page-hero h1::after { box-shadow: none; height: 1px; background: #a9854c; }
.page-hero { background: rgba(255, 252, 243, .50); overflow: hidden; }
.page-hero .container { position: relative; }
.hero::before, .hero::after, .page-hero::before, .page-hero::after {
  content: ""; position: absolute; width: 240px; aspect-ratio: 16 / 9;
  background: url('bird-right.webp') center / contain no-repeat;
  pointer-events: none; z-index: 1;
}
.hero::before { left: 40%; top: 16px; }
.hero::after { right: 0; bottom: 48px; width: 210px; background-image: url('bird-left.webp'); }
.page-hero::before { left: max(12px, calc((100% - 1200px) / 2)); top: 16px; width: 200px; }
.page-hero::after { right: max(12px, calc((100% - 1200px) / 2)); top: 24px; width: 180px; background-image: url('bird-left.webp'); }
.page-hero .container { z-index: 2; }
.page-section.alt, .faq { background: rgba(215, 209, 195, .52); }
.products { background: linear-gradient(180deg, transparent, rgba(215, 209, 195, .48)); }

/* Ivory navigation, surfaces and overlays. */
.site-header { background: rgba(240, 236, 225, .78); border-bottom-color: #d3bea080; backdrop-filter: blur(16px) saturate(115%); -webkit-backdrop-filter: blur(16px) saturate(115%); }
.site-header.scrolled { box-shadow: 0 4px 18px rgba(75,53,25,.09); }
.logo-img { filter: brightness(.68) saturate(1.1); }
.main-nav .nav-sub, .search-modal, .cart-drawer { background: #f5f2e9; box-shadow: var(--shadow-soft); }
.cart-overlay, .search-overlay { background: rgba(44, 34, 21, .48); }
.cart-row, .footer-bottom, .set-preset-row { border-color: var(--line); }
.auth-card, .member-card, .checkout-summary, .nutrition-panel,
.set-preset-list, .set-break, .pd-highlight, .article-preview,
.pay-option, .vat-toggle { background: rgba(255, 252, 245, .94); box-shadow: var(--shadow-card); }
.placeholder { background: #dfd9cc; color: #68675e; }
.story-img, .giftset-image, .hero-product { background: #e5d7bf; }
.arch-blob { background: #ddd1b8; opacity: .55; width: 100%; left: 0; }

/* Hero: an architectural arch frames the existing product photography. */
.hero { background: transparent; padding: 38px 0 74px; min-height: 650px; }
.hero-visual { display: block; min-height: 0; align-self: center; }
.hero-slides {
  position: relative; inset: auto; width: 100%; aspect-ratio: 4 / 4.5;
  border-radius: 240px 240px 8px 8px;
  overflow: hidden;
  border: 8px solid #f8f0e2;
  outline: 1px solid #b69a6d;
  box-shadow: 0 18px 45px rgba(77, 55, 25, .13);
}

.hero-inner { gap: 55px; }
.hero-title { font-size: clamp(2.8rem, 5vw, 4.5rem); line-height: 1.12; }
.hero-sub { color: #5d615e; }
.hero-text { background: radial-gradient(ellipse, rgba(245,237,223,.97) 40%, rgba(245,237,223,0) 74%); }
.eyebrow { background: rgba(255, 252, 243, .85); border-radius: 4px; color: #756344; font-size: 1rem; }
.ribbon-wrap { bottom: 0; filter: none; opacity: .85; }
.ribbon { height: 62px; }
.ribbon-text { fill: #fff9ec; }
.trust-bar { padding-top: 24px; }
.trust-card { border-radius: 5px; border-top: 2px solid #b39463; }
.trust-card::after, .trust-icon::before, .trust-icon::after { display: none; }
.trust-icon { background: #eee3cd; color: #72572e; box-shadow: none; border: 1px solid #d7c29c; }
.trust-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-soft); }
.trust-card:hover .trust-icon { box-shadow: none; }

/* Brass controls, cream text; every state retains readable contrast. */
.btn-gold, .giftset-text .btn-gold, .newsletter-form .btn-gold,
.contact-form .btn-gold, .pos-cart-card .btn-gold {
  background: #14233c; color: #fffaf0; border: 1px solid #14233c;
  box-shadow: 0 5px 14px rgba(94,65,26,.13);
}
.btn-gold:hover, .giftset-text .btn-gold:hover, .newsletter-form .btn-gold:hover,
.contact-form .btn-gold:hover, .pos-cart-card .btn-gold:hover { background: #223b5a; color: #fffaf0; border-color: #223b5a; }
.btn-outline, .product-card .btn-outline { color: #14233c; border-color: #9d8057; background: transparent; }
.btn-outline:hover, .product-card .btn-outline:hover, .price-policy-card .btn-outline:hover { background: #14233c; color: #fffaf0; border-color: #14233c; box-shadow: var(--shadow-card); }
.size-opt, .pd-sizes .size-opt { background: #fffaf0; color: #55422c; border-color: #ccb792; box-shadow: none; }
.size-opt:hover, .pd-sizes .size-opt:hover { background: #ecdfc9; color: #272e33; border-color: #927343; box-shadow: none; }
.size-opt.is-active, .pd-sizes .size-opt.is-active { background: #14233c; color: #fffaf0; border-color: #14233c; box-shadow: none; text-shadow: none; }
.product-info { background: transparent; }
.product-tag { background: #866349; color: #fffaf0; border-color: #866349; box-shadow: none; }
.product-tag.cold { background: #526e65; color: #fffdf5; border-color: #526e65; box-shadow: none; }
.product-tag.gold { background: #ebd9b4; color: #5a3d19; border-color: #c6a974; box-shadow: none; text-shadow: none; }
.about-info-badge, .dosage-card span, .compare-label { background: #14233c; color: #fffaf0; }
.compare-label.warn { background: #7a3826; }
.home-article-btn { background: #f8eedb; color: #5b4222; border-color: #b3996b; box-shadow: var(--shadow-card); }
.home-article-btn:hover, .home-article-btn:active { background: #ead7b6; color: #49341b; border-color: #967347; }
.back-to-top, .support-fab, .contact-fab-toggle { background: #14233c; color: #fffaf0; }
.site-footer { background: linear-gradient(180deg, #ded7c9, #d2c9b9); border-top: 1px solid #cbb38d; }
.footer-col h4, .footer-company strong { color: #5e4222; }
.social-btn:hover { color: #fffaf0; }
.newsletter-inner { border-top: 2px solid #ad8c54; }
.newsletter-inner::before { display: none; }

/* Supporting pages and status text on the lighter surfaces. */
.voucher-lookup, .voucher-result, .voucher-admin-actions, .voucher-create-card,
.voucher-created-actions, .voucher-generated-section, .voucher-list-section { background: #fbf5e8; color: #30312d; }
.voucher-admin-page .auth-sub { color: #68675e; }
.btn-mini-delete, .btn-mini-delete:hover, .btn-mini-danger:hover,
.danger-summary, .danger-title, .form-msg.error { color: #922f24; }
.pos-cat.active, .pi-badge { color: #fffaf0; }
.pos-item-combo .pi-name { color: #272e33; }
.phs-pts { color: #36633e; }
.cd-body { background: var(--bg-navy); color: var(--text-light); }
.cd-idle p, .cd-points-row, .cd-done-sub { color: var(--text-muted); }
.cd-done .cd-check { color: #36633e; }
.tier-name { filter: none; text-shadow: none; }
.tier-vang { background-image: linear-gradient(100deg, #775321, #a87c34, #775321); }
.tier-bachkim { background-image: linear-gradient(100deg, #46515a, #717d87, #46515a); }
.tier-kimcuong { background-image: linear-gradient(100deg, #326568, #77507b, #326568); }
:focus-visible { outline: 2px solid #775321; outline-offset: 4px; }

@media (max-width: 1100px) {
  .main-nav { background: #f5f2e9; }
  .main-nav .nav-sub { background: transparent; box-shadow: none; }
}
@media (max-width: 992px) {
  .hero { padding-top: 48px; min-height: 600px; }
  .hero-inner { grid-template-columns: 1fr 1fr; gap: 30px; }
  .hero-slides { inset: auto; }
}
@media (max-width: 768px) {
  body::before { background-size: auto, 100% 100%, auto 100%; }
  .hero::before { width: 150px; top: 4px; left: auto; right: -18px; }
  .hero::after { width: 170px; bottom: 72px; right: -18px; }
  .page-hero::before { width: 94px; left: -15px; top: 2px; }
  .page-hero::after { width: 90px; right: -10px; top: auto; bottom: -2px; }
  .hero { padding: 42px 0 70px; min-height: auto; }
  .hero-inner { grid-template-columns: 1fr; gap: 0; }
  .hero-text { max-width: 540px; margin: auto; }
  .hero-title { font-size: clamp(2.65rem, 10vw, 3.9rem); }
  .hero-visual { display: block; min-height: 0; margin-top: 32px; }
  .hero-slides { position: relative; inset: auto; height: auto; aspect-ratio: 1 / 1; border-radius: 170px 170px 5px 5px; }

  .hero-sub { font-size: 1rem; }
  .ribbon { height: 46px; }
  .page-hero { padding: 38px 0 32px; }
  .page-hero h1 { font-size: clamp(2rem, 8vw, 3rem); }
  .account-menu { background: #eee9df; }
}
@media print {
  body::before, body::after { display: none; }
}

/* A quieter reading surface; landscape artwork now marks chapters. */
body::before { background: url('indochine.svg') center / 100% 100% no-repeat; opacity: .32; }
.page-hero { background: linear-gradient(90deg, #eae6dcb8, #fffaf0ed, #eae6dcb8), url('mountains-clouds-ai.webp') center 62% / cover; }
.promotion-notice { background: #f3efe3; }
body[data-page="home"] main > section { position: relative; }
body[data-page="home"] .hero { padding: 60px 0 62px; min-height: 0; background: linear-gradient(90deg,#eae6dc 35%,#eae6dc44), url('mountains-clouds-ai.webp') center / cover; }
body[data-page="home"] .hero::after { display: none; }
body[data-page="home"] .hero::before { top: 4px; left: 41%; width: 205px; }
body[data-page="home"] .hero-inner { grid-template-columns: 1fr 1fr; gap: 64px; }
body[data-page="home"] .hero-text { background: none; }
body[data-page="home"] .hero-title { font-family: var(--font-serif); font-weight: 400; font-size: clamp(2.8rem,4.7vw,4.35rem); line-height: 1.18; }
body[data-page="home"] .hero-title .accent-text { display: block; font-family: var(--font-script); font-size: 1.15em; font-weight: 400; margin-top: 10px; font-style: normal; line-height: 1.3; }
body[data-page="home"] .hero-sub { max-width: 440px; margin: 26px 0; }
body[data-page="home"] .hero-slides { aspect-ratio: 1.1 / 1; border-radius: 260px 260px 8px 8px; }
body[data-page="home"] .hero-cta-row { gap: 12px; flex-wrap: wrap; }
body[data-page="home"] .hero-cta-row .btn { width: auto; padding: 14px 22px; font-size: .9rem; }
body[data-page="home"] .trust-bar { padding: 22px 0; border-block: 1px solid var(--line); background: #e0dbcf; }
body[data-page="home"] .trust-grid { gap: 0; }
body[data-page="home"] .trust-card { padding: 12px 22px; border: 0; border-right: 1px solid var(--line); border-radius: 0; background: none; box-shadow: none; transform: none; }
body[data-page="home"] .trust-card:last-child { border: 0; }
body[data-page="home"] .trust-icon { display: none; }
body[data-page="home"] .trust-card h3 { font-size: .8rem; margin: 0 0 7px; }
body[data-page="home"] .trust-card p { font-size: .78rem; line-height: 1.55; }
body[data-page="home"] .section-title { font-size: clamp(1.9rem,3.1vw,2.75rem); line-height: 1.24; }
body[data-page="home"] .section-head { margin-bottom: 34px; }
body[data-page="home"] .section-head.center .section-title::after { display: none; }
.section-eyebrow, .chapter-label { font-size: .72rem; letter-spacing: .15em; text-transform: uppercase; color: #756344; }
.chapter-label { display: block; margin-bottom: 10px; }
.home-needs { padding: 76px 0 30px; }
.need-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; }
.need-card { min-width: 0; color: var(--text-light); display: block; }
.need-image { overflow: hidden; border-radius: 180px 180px 5px 5px; aspect-ratio: 1.3; background: #e8dcc6; border: 1px solid var(--line); }
.need-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.need-card:hover .need-image img { transform: scale(1.035); }
.need-copy { padding: 24px 6px 12px; }
.need-copy h3 { font: 500 1.65rem/1.25 var(--font-serif); margin-bottom: 12px; color: #272e33; }
.need-copy p { color: var(--text-muted); font-size: .94rem; margin-bottom: 18px; }
.text-link { color: #223b5a; font-size: .9rem; font-weight: 600; text-underline-offset: 5px; }
a.text-link:hover, a:hover .text-link { text-decoration: underline; }
.landscape-divider { height: 170px; position: relative; background: linear-gradient(#eae6dc,transparent 35%,transparent 70%,#f6f3eb), url('mountains-clouds-ai.webp') center 74% / cover; }
body[data-page="home"] .products { background: #f6f3eb; padding: 50px 0 76px; }
.row-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
body[data-page="home"] .feat-track > .product-card { flex-basis: calc((100% - 40px) / 3); }
body[data-page="home"] .product-card { background: #fffdfa; border-color: #e5d8c3; box-shadow: none; }
body[data-page="home"] .product-card:hover { box-shadow: 0 12px 25px #5d402314; }
body[data-page="home"] .product-img { aspect-ratio: 1.3; }
body[data-page="home"] .feat-row-title { font-family: var(--font-serif); font-size: clamp(1.75rem,2.6vw,2.2rem); line-height: 1.35; letter-spacing: 0; color: #14233c; }
.architecture-divider { height: clamp(100px,13vw,160px); background: url('indochine-lattice-ai.webp') center / min(100%,1200px) auto no-repeat; opacity: .65; }
.home-craft { padding: 64px 0 84px; }
.craft-layout { display: grid; grid-template-columns: .8fr 1.6fr; gap: 58px; align-items: center; }
.craft-intro p { margin: 22px 0; color: var(--text-muted); line-height: 1.8; }
.craft-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.craft-steps figure { margin: 0; min-width: 0; }
.craft-steps img { width: 100%; aspect-ratio: .8; object-fit: cover; border-radius: 100px 100px 4px 4px; }
.craft-steps figure:nth-child(2) { margin-top: 36px; }
.craft-steps figcaption { display: flex; gap: 10px; padding-top: 20px; }
.craft-steps figcaption > span { color: #a38556; font: italic 1.25rem var(--font-serif); }
.craft-steps h3 { font: 600 1rem/1.4 var(--font-serif); margin-bottom: 8px; }
.craft-steps p { font-size: .8rem; line-height: 1.6; color: var(--text-muted); }
.home-gifts { background: #d9d3c5; padding-bottom: 72px; scroll-margin-top: 90px; }
.gift-scene { position: relative; background: #111a2a; }
.gift-scene > img { width: 100%; height: clamp(240px,32vw,460px); object-fit: cover; object-position: center; }
.gift-scene-note { position: absolute; inset: auto 0 0; padding: 24px; background: linear-gradient(transparent,#141a27c9); color: #fff1d4; text-align: center; font: italic 1.2rem var(--font-serif); }
.gift-selection { padding-top: 58px; }
.gift-picks { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; max-width: 900px; margin-inline: auto; }
.gift-pick { background: #f7f4ec; border: 1px solid #ddccb0; border-radius: 20px; overflow: hidden; display: flex; flex-direction: column; }
.gift-pick > img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; background: #e9e3d7; }
.gift-pick-copy { padding: 24px; flex: 1; display: flex; flex-direction: column; align-items: flex-start; }
.gift-pick h3 { font: 500 1.45rem/1.3 var(--font-serif); margin-bottom: 10px; }
.gift-pick p { color: var(--text-muted); font-size: .88rem; margin-bottom: 12px; }
.gift-pick .gift-price { font-size: 1.15rem; color: #14233c; font-weight: 600; }
.gift-pick .text-link { margin-top: auto; }
.gift-price-note { text-align: center; color: #68675e; font-size: .8rem; margin: 22px 0; }
.section-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; align-items: center; }
.home-gifts .gift-picks + .section-actions { margin-top: clamp(28px,3vw,40px); }
body[data-page="home"] .reviews { padding: 76px 0 40px; background: #f6f3eb; }
body[data-page="home"] .review-card { background: #faf8f1; border-radius: 6px; box-shadow: none; }
.home-confidence { padding: 30px 0 76px; background: #f6f3eb; }
.confidence-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.confidence-grid > a { display: block; padding: 26px; border-block: 1px solid var(--line); }
.confidence-grid h3 { font: 500 1.35rem/1.4 var(--font-serif); color: #272e33; }
.confidence-grid p { margin: 12px 0 18px; color: var(--text-muted); font-size: .9rem; }
body[data-page="home"] .home-articles { padding: 68px 0; }
.home-journal-grid .article-thumb { aspect-ratio: 4 / 5; }
.home-journal-grid .article-excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.home-journal-grid .article-title { font-size: 1.2rem; }
.home-consult { padding: 80px 0; text-align: center; background: linear-gradient(#eae6dc 0%,#eae6dccf 20%,#eae6dcb3),url('mountains-clouds-ai.webp') center 70% / cover; }
.consult-inner { max-width: 820px; }
.consult-inner > p { margin: 22px 0 28px; color: #5d615e; line-height: 1.8; }
.showroom-link { display: inline-block; margin-top: 24px; color: #223b5a; font-size: .82rem; text-decoration: underline; text-underline-offset: 4px; }
body[data-page="home"] .newsletter { padding: 30px 0; background: #d6cfc1; }
body[data-page="home"] .newsletter-inner { padding: 12px 0; border: 0; background: none; box-shadow: none; gap: 32px; }
body[data-page="home"] .newsletter .section-title { font-size: 1.4rem; }
body[data-page="home"] .newsletter-text p { font-size: .85rem; max-width: 450px; }
#quy-trinh, #chung-nhan { scroll-margin-top: 100px; }
@media (max-width: 992px) {
  .craft-layout { grid-template-columns: 1fr; gap: 30px; }
  .craft-intro { max-width: 640px; }
  body[data-page="home"] .hero-inner { gap: 30px; }
  body[data-page="home"] .feat-track > .product-card { flex-basis: calc((100% - 20px) / 2); }
  .gift-picks { gap: 16px; }
}
@media (max-width: 768px) {
  body[data-page="home"] .hero { padding: 42px 0 32px; }
  body[data-page="home"] .hero-inner { grid-template-columns: 1fr; gap: 0; }
  body[data-page="home"] .hero::before { left: auto; right: -12px; width: 130px; top: 0; }
  body[data-page="home"] .hero-text { margin: 0; }
  body[data-page="home"] .hero-title { font-size: clamp(2.5rem,8.8vw,3.6rem); }
  body[data-page="home"] .hero-slides { aspect-ratio: 1.35; }
  body[data-page="home"] .hero-sub { font-size: .95rem; margin: 20px 0; }
  body[data-page="home"] .hero-cta-row .btn { padding: 12px 16px; font-size: .82rem; }
  body[data-page="home"] .trust-grid { grid-template-columns: 1fr 1fr; }
  body[data-page="home"] .trust-card { padding: 12px; }
  body[data-page="home"] .trust-card:nth-child(even) { border-right: 0; }
  .home-needs { padding: 46px 0 12px; }
  .need-grid { grid-template-columns: 1fr; gap: 20px; }
  .need-card { display: grid; grid-template-columns: .8fr 1.2fr; gap: 20px; align-items: center; }
  .need-image { aspect-ratio: .86; border-radius: 90px 90px 4px 4px; }
  .need-copy { padding: 8px 0; }
  .need-copy h3 { font-size: 1.32rem; margin-bottom: 8px; }
  .need-copy p { font-size: .82rem; margin-bottom: 10px; }
  .need-copy .chapter-label { font-size: .6rem; letter-spacing: .08em; }
  .need-copy .text-link { font-size: .78rem; }
  .landscape-divider { height: 100px; }
  .architecture-divider { height: 100px; background-size: 680px auto; }
  body[data-page="home"] .products { padding: 34px 0 48px; }
  .home-craft { padding: 42px 0 48px; }
  .craft-steps { gap: 12px; }
  .craft-steps figcaption { flex-direction: column; gap: 6px; padding-top: 12px; }
  .craft-steps h3 { font-size: .9rem; }
  .craft-steps p { font-size: .75rem; }
  .gift-selection { padding-top: 38px; }
  .gift-picks { grid-template-columns: 1fr; }
  .gift-pick-copy { padding: 22px; }
  .gift-pick h3 { font-size: 1.18rem; }
  .home-gifts { padding-bottom: 44px; }
  .confidence-grid { grid-template-columns: 1fr; gap: 18px; }
  .confidence-grid > a { padding: 22px 4px; }
  body[data-page="home"] .reviews { padding: 48px 0 20px; }
  .home-confidence { padding-bottom: 42px; }
  body[data-page="home"] .home-articles { padding: 44px 0; }
  .home-consult { padding: 50px 0; }
  .section-actions { gap: 14px; }
}
@media (max-width: 600px) {
  body[data-page="home"] .feat-track > .product-card { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .need-image img { transition: none; }
}

/* One support entry on larger screens as well as mobile. */
.hero-real-photo > img { width: 100%; height: 100%; object-fit: cover; object-position: center 62%; }
body[data-page="home"] .hero-real-photo { aspect-ratio: 1 / 1.05; }
.need-card:nth-child(1) .need-image img { object-position: center 66%; }
.need-card:nth-child(2) .need-image img { object-position: center 46%; }
.need-card:nth-child(3) .need-image img { object-position: center 66%; }
.gift-scene { display: grid; grid-template-columns: 1.25fr 1fr; gap: 4px; }
.gift-scene > img { height: clamp(260px,34vw,460px); object-position: center 62%; }
.gift-scene > img:nth-child(2) { object-position: center 54%; }
.home-moments { padding: 72px 0 30px; background: #f6f3eb; }
.moments-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-bottom: 26px; }
.moments-grid figure { margin: 0; }
.moments-grid img { width: 100%; aspect-ratio: .9; object-fit: cover; object-position: center 35%; border-radius: 160px 160px 5px 5px; }
.moments-grid figcaption { padding-top: 16px; font: italic 1.1rem var(--font-serif); text-align: center; color: #725739; }
.about-real-story { margin: 0; }
.about-real-story img { width: 100%; height: auto; border-radius: 140px 140px 8px 8px; }
.about-real-story figcaption { margin-top: 12px; color: var(--text-muted); text-align: center; font-size: .85rem; }
@media (max-width: 768px) {
  body[data-page="home"] .hero-real-photo { aspect-ratio: 1.2; }
  .home-moments { padding: 42px 0 24px; }
  .moments-grid { grid-template-columns: 1fr; gap: 26px; }
  .moments-grid img { aspect-ratio: 1.1; border-radius: 100px 100px 4px 4px; }
  .gift-scene { grid-template-columns: 1fr 1fr; }
  .gift-scene > img { height: 250px; }
  .gift-scene-note { padding: 18px; font-size: .95rem; }
}
@media (min-width: 641px) {
  .contact-fab-toggle { display: grid; place-items: center; position: fixed; right: 22px; bottom: 22px; z-index: 91; width: 48px; height: 48px; border-radius: 50%; border: 1px solid #c6af88; background: #14233c; color: #fffaf0; cursor: pointer; box-shadow: 0 6px 20px #272e3326; }
  .contact-fab-toggle .contact-toggle-close { display: none; }
  body.contact-fabs-open .contact-fab-toggle .contact-toggle-open { display: none; }
  body.contact-fabs-open .contact-fab-toggle .contact-toggle-close { display: block; }
  .zalo-fab, .phone-fab, .support-fab { right: 24px; width: 44px; height: 44px; animation: none; opacity: 0; visibility: hidden; pointer-events: none; transform: none; }
  .support-fab { bottom: 82px; }
  .phone-fab { bottom: 136px; }
  .zalo-fab { bottom: 190px; }
  body.contact-fabs-open .zalo-fab, body.contact-fabs-open .phone-fab, body.contact-fabs-open .support-fab { opacity: 1; visibility: visible; pointer-events: auto; }
  .back-to-top { right: 82px; bottom: 24px; width: 44px; height: 44px; }
}
/* Editorial typography and a real invitation to the showroom. */
.section-title, .page-hero h1 { font-family: var(--font-serif); font-weight: 400; }
.calligraphy-accent { display: inline-block; font-family: var(--font-script); font-weight: 400; font-size: 1.22em; line-height: 1.35; color: #756344; }
.showroom-welcome { padding: 55px 0 70px; }
.showroom-layout { display: grid; grid-template-columns: 1.05fr 1fr; gap: 70px; align-items: center; }
.showroom-main-photo { margin: 0; }
.showroom-main-photo img { width: 100%; height: auto; aspect-ratio: 1.08; object-fit: cover; border-radius: 180px 180px 6px 6px; }
.showroom-main-photo figcaption { padding-top: 16px; font: italic 1rem/1.6 var(--font-serif); text-align: center; color: #7a644b; }
.showroom-welcome-copy .section-title { font-size: clamp(2.1rem,3.1vw,3rem); line-height: 1.3; margin: 15px 0 24px; }
.showroom-welcome-copy > p { color: #5d615e; line-height: 1.85; }
.showroom-address { border-top: 1px solid var(--line); padding-top: 24px; margin: 24px 0; font-size: .92rem; }
.showroom-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.showroom-actions .btn { font-size: .85rem; padding: 14px 24px; }
.showroom-hours { font-size: .8rem; margin-top: 18px; }
.showroom-gallery { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; margin-top: 60px; }
.showroom-gallery figure { margin: 0; }
.showroom-gallery img { width: 100%; height: auto; aspect-ratio: 1.2; object-fit: cover; border-radius: 5px; }
.showroom-gallery figcaption { padding-top: 14px; text-align: center; font: 400 1.18rem/1.45 'Lora',Georgia,serif; color: #665039; }
.contact-details { background: #f6f3eb; }
.contact-form h2 { font: 400 1.8rem/1.3 'Lora',Georgia,serif; color: #272e33; }
.contact-form-intro { color: #5d615e; font-size: .88rem; margin: 14px 0 24px; }
#ban-do-showroom { scroll-margin-top: 100px; }
@media (max-width: 768px) {
  .showroom-welcome { padding: 32px 0 42px; }
  .showroom-layout { grid-template-columns: 1fr; gap: 30px; }
  .showroom-main-photo img { aspect-ratio: 1.15; border-radius: 130px 130px 5px 5px; }
  .showroom-welcome-copy .section-title { font-size: clamp(2rem,7vw,2.7rem); }
  .showroom-gallery { grid-template-columns: 1fr; margin-top: 36px; gap: 26px; }
  .showroom-gallery img { aspect-ratio: 1.25; }
  .showroom-main-photo figcaption { font-size: .85rem; }
}

/* Reference palette: ivory stone dominates; navy marks interactions, jade is a minor accent. */
:root { --brand-navy: #14233c; --brand-navy-hover: #223b5a; --stone-ivory: #eae6dc; --antique-brass: #756344; --jade-accent: #526e65; }
.main-nav a:hover, .main-nav a.active { color: var(--brand-navy); }
.main-nav a::after { background: var(--brand-navy); }
.shop-nav-link.active { color: var(--brand-navy); border-color: var(--brand-navy); background: #14233c0a; }
.product-price, .pd-price { color: var(--brand-navy); }
.btn-outline, .product-card .btn-outline { border-color: #7e8995; }
.product-tag.cold { background: var(--jade-accent); border-color: var(--jade-accent); }
:focus-visible { outline-color: var(--brand-navy); }
.site-footer { --text-light: #f1eee5; --text-muted: #c6c9cc; --accent-gold: #d0bb8e; --line: #c9b88e33; background: #14233c; color: var(--text-light); border-top-color: #98825d; }
.site-footer .footer-col h4, .site-footer .footer-company strong { color: #d0bb8e; }
.site-footer .logo-img { filter: brightness(.92) saturate(.8); }
.site-footer .social-btn { color: #e3d4b2; border-color: #b8a78566; }
.site-footer .social-btn:hover { color: #14233c; background: #d0bb8e; }
body[data-page="home"] .hero { background: linear-gradient(90deg,#eae6dc 35%,#eae6dc9c),url('mountains-clouds-ai.webp') center / cover; }
/* Fine AI fretwork details sit outside the photograph; no solid gate or pillars. */
.indochine-gate { display: block; position: relative; isolation: isolate; background: transparent; border: 0; outline: 0; border-radius: 0; box-shadow: none; overflow: visible; }
.indochine-gate::after { content: ""; position: absolute; inset: 0; z-index: 1; background: url('indochine-arch-detail-ai.webp') center / 100% 100% no-repeat; pointer-events: none; }
.indochine-gate > img { position: absolute; left: 10%; top: 7%; width: 80%; height: 90%; object-fit: cover; border-radius: 50% 50% 0 0 / 35% 35% 0 0; }
.need-image.indochine-gate { aspect-ratio: 1.15; }
.need-card:hover .indochine-gate > img { transform: none; }
.craft-steps .indochine-gate { aspect-ratio: .8; }
.moments-grid .indochine-gate { aspect-ratio: .88; }
body[data-page="home"] .hero-real-photo.indochine-gate { aspect-ratio: 1 / 1.05; border: 0; border-radius: 0; }
.about-real-story .indochine-gate, .showroom-main-photo .indochine-gate { aspect-ratio: .95; }
.about-real-story .indochine-gate > img, .showroom-main-photo .indochine-gate > img { height: 90%; border-radius: 50% 50% 0 0 / 35% 35% 0 0; }
@media (max-width: 768px) {
  .need-image.indochine-gate { aspect-ratio: .8; }
  body[data-page="home"] .hero-real-photo.indochine-gate { aspect-ratio: 1; }
  .moments-grid .indochine-gate { aspect-ratio: 1; }
  .craft-steps .indochine-gate { aspect-ratio: .8; }
}

/* Six smaller swallows in two decorative groups; keep copy and photographs clear. */
body[data-page="home"] .hero::before, body[data-page="home"] .hero::after { display: none; }
.bird-flock { position: absolute; width: 300px; height: 90px; pointer-events: none; user-select: none; }
.hero-flock { left: 34%; top: 0; z-index: 1; }
.decorative-bird { position: absolute; display: block; width: 118px; aspect-ratio: 16 / 9; background: url('bird-right.webp') center / contain no-repeat; }
.decorative-bird:nth-child(1) { left: 0; top: 23px; transform: rotate(-8deg); }
.decorative-bird:nth-child(2) { left: 103px; top: 0; width: 96px; transform: rotate(7deg); }
.decorative-bird:nth-child(3) { left: 191px; top: 27px; width: 82px; transform: rotate(-4deg); }
.landscape-flock { right: 13%; top: 4px; }
.landscape-flock .decorative-bird { background-image: url('bird-left.webp'); }
@media (max-width: 768px) {
  body[data-page="home"] .hero { padding-top: 92px; }
  .bird-flock { width: 230px; height: 76px; }
  .hero-flock { left: auto; right: 12px; top: 3px; }
  .decorative-bird:nth-child(1) { width: 94px; top: 23px; }
  .decorative-bird:nth-child(2) { width: 78px; left: 81px; top: 2px; }
  .decorative-bird:nth-child(3) { width: 68px; left: 154px; top: 24px; }
  .landscape-flock { right: 8%; top: 4px; }
}

/* Public Google Maps feedback supplied by the owner, with source screenshots. */
.google-feedback { margin-top: 54px; padding-top: 38px; border-top: 1px solid var(--line); }
.google-feedback-title { font: 400 clamp(1.7rem,2.8vw,2.4rem)/1.3 var(--font-serif); color: #272e33; margin-top: 12px; }
.google-review-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.google-review-card { display: flex; flex-direction: column; min-width: 0; padding: 28px; background: #faf8f1; border: 1px solid var(--line); border-radius: 16px; }
.google-review-person { display: flex; gap: 14px; align-items: center; margin-bottom: 14px; }
.review-initials { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; border-radius: 50%; background: #14233c; color: #f7f4ec; font-size: .8rem; letter-spacing: .05em; }
.google-review-person h4 { font: 600 .96rem/1.4 var(--font-sans); color: #14233c; margin: 0 0 3px; }
.google-review-source { font-size: .76rem; color: #68675e; }
.google-review-card .stars { color: #8b6c32; letter-spacing: 2px; font-size: 1.05rem; margin-bottom: 16px; }
.google-review-card blockquote { margin: 0; padding: 0; border: 0; font-size: .93rem; line-height: 1.85; color: #30312d; }
.google-review-card blockquote p { margin: 0 0 14px; }
.google-review-proof { margin-top: auto; padding-top: 12px; font-size: .8rem; }
@media (max-width: 768px) {
  .google-feedback { margin-top: 36px; padding-top: 30px; }
  .google-review-grid { grid-template-columns: 1fr; gap: 18px; }
  .google-review-card { padding: 22px; }
}

/* Signature yogurt feature: actual product photographs and a quiet editorial layout. */
.home-yogurt { padding: 72px 0 64px; background: #f6f3eb; border-block: 1px solid #75634422; }
.yogurt-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: clamp(40px,6vw,84px); }
.yogurt-photos { position: relative; padding: 0 66px 60px 0; }
.yogurt-main-photo { display: block; width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; border-radius: 160px 160px 12px 12px; }
.yogurt-batch-photo { position: absolute; right: 0; bottom: 0; width: 43%; margin: 0; padding: 8px; background: #f6f3eb; border: 1px solid #b5a384; border-radius: 90px 90px 8px 8px; }
.yogurt-batch-photo img { display: block; width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; border-radius: 80px 80px 3px 3px; }
.yogurt-batch-photo figcaption { padding: 10px 2px 4px; text-align: center; font-size: .7rem; color: #756344; }
.yogurt-copy .section-title { margin: 16px 0 8px; color: #14233c; }
.yogurt-copy .section-title::after { display: none; }
.yogurt-invitation { font: 400 clamp(1.65rem,2.6vw,2.2rem)/1.3 'UVN Kieu',var(--font-serif); color: #756344; margin: 0 0 22px; }
.yogurt-copy > p:not(.yogurt-invitation) { font-size: .92rem; line-height: 1.85; }
.yogurt-details { display: grid; gap: 16px; margin: 24px 0; padding-left: 20px; border-left: 1px solid #b5a384; }
.yogurt-details p { margin: 0; font-size: .82rem; line-height: 1.8; color: #68675e; }
.yogurt-details strong { display: block; font-weight: 600; color: #30312d; margin-bottom: 4px; }
.yogurt-serving { color: #14233c; margin-bottom: 16px; }
.yogurt-copy .btn { width: auto; max-width: 100%; }
.yogurt-copy > .yogurt-care { font-size: .76rem !important; color: #68675e; margin-top: 16px; max-width: 410px; }
@media (max-width: 768px) {
  .home-yogurt { padding: 42px 0; }
  .yogurt-layout { grid-template-columns: 1fr; gap: 30px; }
  .yogurt-photos { padding: 0 50px 38px 0; max-width: 440px; width: 100%; margin: 0 auto; }
  .yogurt-batch-photo { width: 42%; padding: 6px; }
  .yogurt-batch-photo figcaption { font-size: .6rem; padding-top: 8px; }
  .yogurt-copy .section-title { margin-top: 12px; }
}

/* Brand narrative, grounded in the owner's three introduction scripts. */
.home-brand-story { padding: 56px 0 72px; }
.brand-story-layout { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: clamp(36px,6vw,80px); }
.brand-story-photo { margin: 0; }
.brand-story-photo img { display: block; width: 100%; height: auto; border-radius: 140px 140px 8px 8px; }
.brand-story-photo figcaption { margin-top: 14px; font-size: .78rem; text-align: center; color: #756344; }
.brand-story-copy .section-title { margin: 16px 0 24px; }
.brand-story-copy .section-title::after { display: none; }
.brand-story-copy > p { font-size: .92rem; line-height: 1.85; margin-bottom: 16px; color: #68675e; }
.brand-story-copy blockquote { margin: 24px 0; padding: 0 0 0 20px; border-left: 1px solid #a48b61; font: 400 1.35rem/1.5 var(--font-serif); color: #14233c; }
.brand-origin .section-title, .brand-journey .section-title { margin: 16px 0 24px; }
.brand-origin .story-grid p, .brand-journey .story-grid p { line-height: 1.85; }
.story-grid .brand-origin-signature { font: 400 1.35rem/1.5 var(--font-serif); color: #756344; margin-top: 24px; }
.brand-meaning .meaning-card { box-shadow: none; }
.brand-meaning .meaning-card p { line-height: 1.85; }
.brand-motto { text-align: center; margin: 32px 0 0; font: 400 2rem/1.5 'UVN Kieu',var(--font-serif); color: #756344; }
.brand-return-quote { max-width: 850px; margin: 64px auto 0; padding: 32px 24px 0; border: 0; border-top: 1px solid #75634444; text-align: center; font: 400 1.6rem/1.55 var(--font-serif); color: #14233c; }
.brand-return-quote cite { display: block; margin-top: 16px; font: normal .75rem/1.5 var(--font-sans); letter-spacing: .12em; text-transform: uppercase; color: #756344; }
@media (max-width: 768px) {
  .home-brand-story { padding: 34px 0 46px; }
  .brand-story-layout { grid-template-columns: 1fr; gap: 30px; }
  .brand-story-photo { max-width: 420px; margin: 0 auto; }
  .brand-story-copy .section-title { margin-top: 12px; }
  .brand-return-quote { margin-top: 40px; padding-inline: 0; font-size: 1.35rem; }
}

/* Keep the category link and description separate when the heading wraps. */
body[data-page="home"] .row-heading { row-gap: 12px; margin-bottom: 14px; }
body[data-page="home"] .row-heading .feat-row-title { margin-bottom: 0; }
body[data-page="home"] .feat-row-sub { margin-top: 0; }

/* A warmer showroom backdrop and navy inset for the Google Maps guest notes. */
.home-moments {
  position: relative; isolation: isolate; padding-bottom: 108px;
  background: linear-gradient(180deg,#e1d8c7e8 0%,#e5ddcede 52%,#d8ccb6b3 100%),url('mountains-clouds-ai.webp') center bottom / cover no-repeat;
  border-top: 1px solid #b5a38466;
}
.home-moments::after {
  content: ""; position: absolute; inset: auto 0 0; height: 64px; pointer-events: none;
  background: url('indochine-lattice-ai.webp') center / auto 100% repeat-x; opacity: .4;
}
.home-moments .section-title { color: #14233c; }
.home-moments .moments-grid figcaption { color: #6b5030; }
body[data-page="home"] .reviews {
  background: linear-gradient(180deg,#ddd2bf,#e9e2d4 48%,#e0d6c5); padding-bottom: 64px;
}
.google-feedback {
  position: relative; isolation: isolate; overflow: hidden; margin-top: 56px;
  padding: 44px 32px 32px; border: 1px solid #a990615e; border-radius: 24px;
  background: #14233c; box-shadow: 0 18px 44px #14233c18;
}
.google-feedback::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: url('mountains-clouds-ai.webp') center / cover no-repeat; opacity: .09; mix-blend-mode: luminosity;
}
.google-feedback .section-eyebrow { color: #d2bc91; }
.google-feedback-title { color: #f4ecde; }
.google-review-grid { gap: 20px; }
.google-review-card { background: #f5f0e5; border-color: #c9b88e; box-shadow: 0 5px 16px #00000012; }
.google-review-person .review-initials { background: #e5d9c2; color: #14233c; border: 1px solid #b09a71; }
@media (max-width: 768px) {
  .home-moments { padding-bottom: 78px; background-size: auto,auto 100%; }
  .home-moments::after { height: 48px; }
  body[data-page="home"] .reviews { padding-bottom: 40px; }
  .google-feedback { margin-top: 38px; padding: 30px 14px 16px; border-radius: 18px; }
  .google-feedback-title { font-size: 1.75rem; line-height: 1.35; }
  .google-review-card { padding: 20px; }
  .google-review-grid { gap: 16px; }
}

/* Real hero photographs crossfade inside the existing fine arch. */
.hero-real-photo .hero-photo-slide { opacity: 0; transition: opacity 900ms ease; object-position: center 64%; }
.hero-real-photo .hero-photo-slide.is-active { opacity: 1; }
.hero-real-photo .hero-photo-slide:first-child { object-position: center 78%; }
@media (prefers-reduced-motion: reduce) { .hero-real-photo .hero-photo-slide { transition: none; } }

/* Match the large yogurt photo to the established fine Indochine arches. */
.yogurt-main-frame { aspect-ratio: 4 / 5; }
.yogurt-main-frame.indochine-gate > .yogurt-main-photo { height: 90%; border-radius: 50% 50% 0 0 / 35% 35% 0 0; }
.yogurt-batch-photo { z-index: 2; }

/* Preserve the comparison labels and both nests in the original portrait. */
.arch-image.nest-comparison { aspect-ratio: 1708 / 2560; }
.arch-image.nest-comparison img { width: 100%; height: 100%; object-fit: contain; }

/* Give the home introduction a fuller, more readable composition. */
body[data-page="home"] .hero { padding: 48px 0 50px; }
body[data-page="home"] .hero-inner { max-width: 1320px; grid-template-columns: 1.05fr 1fr; gap: 32px; }
body[data-page="home"] .hero-text { max-width: none; min-width: 0; }
body[data-page="home"] .hero-text .eyebrow { font-size: 1.125rem; padding: 9px 24px; margin-bottom: 24px; }
body[data-page="home"] .hero-title { font-size: clamp(3.2rem,5.2vw,4.9rem); line-height: 1.2; }
body[data-page="home"] .hero-title .accent-text { font-size: 1.08em; }
body[data-page="home"] .hero-sub { max-width: 540px; font-size: clamp(1.1rem,1.5vw,1.25rem); line-height: 1.75; margin: 28px 0 32px; }
body[data-page="home"] .hero-cta-row { gap: 16px; }
body[data-page="home"] .hero-cta-row .btn { min-height: 60px; padding: 17px 30px; font-size: 1.05rem; }
/* Lora keeps Vietnamese diacritics consistent in the featured-products title. */
body[data-page="home"] #san-pham-tieu-bieu > .container > .section-head .section-title { font-family: var(--font-serif); line-height: 1.4; letter-spacing: 0; }
@media (max-width: 1024px) and (min-width: 769px) {
  body[data-page="home"] .hero-inner { gap: 20px; }
  body[data-page="home"] .hero-title { font-size: clamp(2.8rem,5.1vw,3.5rem); }
  body[data-page="home"] .hero-cta-row .btn { padding: 15px 22px; font-size: 1rem; }
}
@media (max-width: 768px) {
  body[data-page="home"] .hero { padding: 40px 0 30px; }
  body[data-page="home"] .hero-inner { grid-template-columns: 1fr; gap: 0; }
  body[data-page="home"] .hero-text .eyebrow { font-size: 1rem; margin-bottom: 20px; }
  body[data-page="home"] .hero-title { font-size: clamp(2.5rem,10vw,3.6rem); }
  body[data-page="home"] .hero-sub { font-size: 1.0625rem; margin: 22px 0 26px; }
  body[data-page="home"] .hero-cta-row { gap: 12px; }
  body[data-page="home"] .hero-cta-row .btn { flex: 1 1 150px; min-height: 56px; padding: 14px 10px; font-size: 1rem; white-space: nowrap; }
  body[data-page="home"] .hero-visual { width: 100%; max-width: 540px; margin-inline: auto; }
}

/* Compact editorial serif headline with a restrained calligraphic second line. */
body[data-page="home"] .hero-title { display: flex; flex-direction: column; gap: 6px; font-family: var(--font-serif); font-weight: 400; font-size: clamp(3rem,4.7vw,4.3rem); line-height: 1.16; letter-spacing: -.035em; word-spacing: -.07em; }
body[data-page="home"] .hero-title-main { display: block; }
body[data-page="home"] .hero-title .accent-text { margin-top: 0; font-size: 1.14em; line-height: 1.18; letter-spacing: -.01em; word-spacing: 0; }
@media (max-width: 1024px) and (min-width: 769px) {
  body[data-page="home"] .hero-title { font-size: clamp(2.55rem,4.5vw,3rem); }
}
@media (max-width: 768px) {
  body[data-page="home"] .hero-title { gap: 4px; font-size: clamp(2.2rem,9.2vw,3.4rem); }
}

/* A compact opening-day memory on the About page, preserving the full group. */
.opening-memory { max-width: 720px; margin: 36px auto 0; }
.opening-memory > img { display: block; width: 100%; height: auto; border-radius: 18px; border: 1px solid #a48b6140; }
.opening-memory figcaption { padding: 20px 12px 0; text-align: center; }
.opening-memory figcaption p { margin-top: 8px; color: #68675e; font: italic 1.05rem/1.65 var(--font-serif); }
.showroom-gallery .showroom-guest-yogurt img { object-position: center 66%; }
@media (max-width: 768px) {
  .opening-memory { margin-top: 30px; }
  .opening-memory > img { border-radius: 10px; }
  .opening-memory figcaption { padding: 16px 0 0; }
  .opening-memory figcaption p { font-size: .95rem; }
}
