/* =====================================================================
   Remivia 2026 — bổ sung cho WordPress / WooCommerce
   (design.css là bản gốc của thiết kế, file này chỉ thêm & vá)
   ===================================================================== */

.skip-link{position:absolute;left:-9999px;top:0;z-index:999;background:var(--navy);color:var(--cream);padding:10px 16px;}
.skip-link:focus{left:16px;top:16px;}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
button{font-family:inherit;}
main{position:relative;z-index:2;}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);}

/* Thanh quản trị WordPress */
body.admin-bar header.nav{top:32px;}
@media (max-width:782px){ body.admin-bar header.nav{top:46px;} }

/* ============ HEADER ============ */
.nav-tools{display:flex;align-items:center;gap:18px;}
.logo{position:relative;}
.logo .logo-light{position:absolute;inset:0;opacity:0;transition:opacity .3s ease;}
.lang-switch a{padding:4px 6px;color:var(--ink-soft);border-bottom:1px solid transparent;transition:all .2s;}
.lang-switch a.active{color:var(--navy);border-bottom-color:var(--gold);}
.lang-switch a:hover{color:var(--navy);}
.nav-cart{position:relative;display:inline-flex;align-items:center;color:var(--navy);padding:4px;}
.rmv-cart-count{position:absolute;top:-6px;right:-8px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--gold);color:#fff;font-family:var(--mono);font-size:10px;line-height:17px;text-align:center;}
header.nav{z-index:100;}

/* Header trong suốt trên ảnh hero (trang chủ) — chữ sáng để đọc được trên nền tối */
header.nav.over-hero:not(.scrolled) .logo .logo-light{opacity:1;}
header.nav.over-hero:not(.scrolled) .logo .logo-dark{opacity:0;}
header.nav.over-hero:not(.scrolled) .lang-switch a,
header.nav.over-hero:not(.scrolled) .lang-switch .divider,
header.nav.over-hero:not(.scrolled) .nav-cart{color:rgba(251,246,234,.85);}
header.nav.over-hero:not(.scrolled) .lang-switch a.active{color:var(--cream);}
header.nav.over-hero:not(.scrolled) .nav-cta{color:var(--cream);border-color:rgba(251,246,234,.6);}
header.nav.over-hero:not(.scrolled) .nav-burger:not(.open) span{background:var(--cream);}
@media (min-width:981px){
  header.nav.over-hero:not(.scrolled) nav.links > a,
  header.nav.over-hero:not(.scrolled) nav.links .dropdown > a{color:rgba(251,246,234,.85);}
  header.nav.over-hero:not(.scrolled) nav.links > a:hover,
  header.nav.over-hero:not(.scrolled) nav.links .dropdown > a:hover{color:var(--cream);}
}
.dropdown:focus-within .dropdown-menu{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0);}

@media (max-width:980px){
  /* backdrop-filter khiến menu fixed bị "kẹt" trong header — tắt trên mobile */
  header.nav.scrolled, header.nav.solid{backdrop-filter:none;background:rgba(245,239,226,.98);}
  nav.links{z-index:55;overflow-y:auto;}
  nav.links a{color:var(--ink);}
  .nav-tools{gap:14px;}
  body.nav-open{overflow:hidden;}
}
@media (max-width:560px){
  .lang-switch{font-size:10px;}
  .nav-inner{gap:12px;}
}

/* ============ CHUNG ============ */
.btn-sm{padding:11px 18px;font-size:11px;}
.btn-gold{background:var(--gold-light);border-color:var(--gold-light);color:var(--navy);}
.btn-gold:hover{background:transparent;color:var(--gold-light);}
.btn.is-disabled,.order-btn.is-disabled{opacity:.5;cursor:not-allowed;}
.is-loading{opacity:.6;pointer-events:none;}
.rmv-cite{display:block;margin-top:10px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);}
.page-extra{margin-top:60px;}

/* ============ CHƯƠNG ============ */
.size-pill{font-family:var(--sans);color:var(--ink);line-height:1.4;}
.size-pill:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through;}
.chapter-price{font-family:var(--serif);font-size:20px;color:var(--navy);}
.chapter.is-dark .chapter-num-dot{background:var(--navy-deep);color:var(--gold-light);border-color:var(--gold-light);}
.chapter-body p.story + p.story{margin-top:12px;}
.memory-empty{margin:14px 0;font-size:13.5px;color:var(--ink-soft);}
.memory-pending{margin:14px 0;font-size:13px;color:var(--accent);font-family:var(--mono);letter-spacing:.02em;}
.rmv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0;}
.memory-input{position:relative;}
.memory-input button{color:var(--ink);}
.order-btn{display:inline-flex;align-items:center;}
.chapter-toc{top:62px;}
body.admin-bar .chapter-toc{top:94px;}
@media (max-width:880px){
  .chapter-toc{position:static;padding:20px 0;}
  .chapter-toc-inner{gap:12px 18px;font-size:11px;}
  .size-row .order-btn{margin-left:0;}
}

/* ============ TÌM KÝ ỨC ============ */
.finder-group-label{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-light);margin-top:30px;}
.finder-opt{color:var(--cream);text-align:left;font-family:var(--sans);line-height:1.45;}

/* ============ TRẢI NGHIỆM ============ */
.ritual-text h4 a{border-bottom:1px solid var(--gold);}
.ritual-text h4 a:hover{color:var(--accent);}
.steps-3{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:40px;}
.steps-3 .step-label{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.08em;}
.steps-3 h3{font-family:var(--serif);font-size:21px;font-weight:500;margin-top:10px;}
.steps-3 p{font-size:14px;color:var(--ink-soft);margin-top:8px;}
@media (max-width:880px){.steps-3{grid-template-columns:1fr;}}
.store-rich p{margin:0 0 14px;font-size:14.5px;line-height:1.6;}
.store-rich strong,.store-rich b{font-family:var(--serif);font-weight:500;font-size:17px;display:inline-block;margin-bottom:2px;}

/* ============ CÂU CHUYỆN ============ */
.story-text p{margin-top:16px;color:var(--ink-soft);font-size:15.5px;}
.safety-text p{margin:0 0 12px;color:rgba(251,246,234,.75);}
.safety-text a{color:var(--gold-light);}
.cert-img{margin-top:24px;max-width:220px;border-radius:8px;background:#fff;padding:8px;}

/* ============ LIÊN HỆ (Contact Form 7) ============ */
.contact-info a:hover{color:var(--accent);}
.contact-form .wpcf7 p{margin:0;}
.contact-form .wpcf7 label{display:block;}
.contact-form .wpcf7-form-control-wrap{display:block;}
.contact-form input[type=submit], .contact-form .wpcf7-submit{
  width:auto;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  background:var(--ink);color:var(--paper);padding:14px 26px;border-radius:999px;border:none;cursor:pointer;margin-top:6px;
}
.contact-form .wpcf7-submit:hover{background:var(--gold);}
.contact-form .wpcf7-not-valid-tip{font-size:12px;margin:-12px 0 12px;}
.contact-form .wpcf7-response-output{margin:16px 0 0!important;border-radius:8px;font-size:13.5px;}
.contact-form .wpcf7-spinner{vertical-align:middle;}
.contact-map{margin-top:60px;border-radius:14px;overflow:hidden;border:1px solid var(--line);}
.contact-map iframe{display:block;width:100%!important;height:420px;border:0;}

/* ============ TIN TỨC ============ */
.article-title{font-family:var(--serif);font-size:clamp(34px,5vw,52px);font-weight:500;line-height:1.15;letter-spacing:-.01em;}
.article-hero{margin:50px auto 0;max-width:1180px;padding:0 32px;}
.article-hero img{width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:14px;height:auto;}
.article-hero figcaption{text-align:center;font-family:var(--mono);font-size:11px;color:var(--ink-soft);margin-top:14px;letter-spacing:.04em;}
.article-body img{height:auto;border-radius:8px;}
.article-body ul,.article-body ol{color:var(--ink-soft);padding-left:22px;}
.article-body a{color:var(--navy);border-bottom:1px solid var(--gold);}
.article-body table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15px;}
.article-body td,.article-body th{border:1px solid var(--line);padding:10px 12px;}
a.article-tag:hover{border-color:var(--gold);color:var(--ink);}
.rmv-pagination{margin-top:60px;display:flex;justify-content:center;}
.rmv-pagination ul{list-style:none;display:flex;gap:8px;padding:0;margin:0;flex-wrap:wrap;}
.rmv-pagination a,.rmv-pagination span{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:999px;font-family:var(--mono);font-size:12px;padding:0 12px;}
.rmv-pagination .current{background:var(--navy);color:var(--cream);border-color:var(--navy);}
.rmv-pagination a:hover{border-color:var(--gold);}
@media (max-width:880px){.article-hero{padding:0 16px;}}

/* ============ SẢN PHẨM ============ */
.product-section{padding:130px 0 80px;}
.product-image-main{display:flex;align-items:center;justify-content:center;}
.product-image-main img{height:100%;}
.product-thumbs button{aspect-ratio:1;border-radius:6px;overflow:hidden;cursor:pointer;border:1.5px solid transparent;opacity:.7;transition:all .2s;padding:0;background:var(--paper-deep);}
.product-thumbs button.active{border-color:var(--gold);opacity:1;}
.product-thumbs button:hover{opacity:1;}
.product-thumbs img{width:100%;height:100%;object-fit:cover;}
.product-info .desc + .desc{margin-top:12px;}
.product-price .old[hidden]{display:none;}
.ship-note{margin-top:30px;padding:18px 20px;background:var(--paper-deep);border-radius:10px;font-size:13.5px;color:var(--ink-soft);display:flex;gap:14px;align-items:flex-start;}
.ship-note > span{font-size:20px;color:var(--accent);line-height:1.2;}
.ship-note p{margin:0 0 4px;}
.ship-note strong{color:var(--ink);}
.rmv-tabs{margin-top:18px;}
.rmv-tab-list{display:flex;gap:6px 22px;flex-wrap:wrap;border-bottom:1px solid var(--line);}
.rmv-tab-list button{background:none;border:none;cursor:pointer;padding:10px 0;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);border-bottom:2px solid transparent;margin-bottom:-1px;}
.rmv-tab-list button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);}
.rmv-tab-panel.article-body{max-width:none;margin:22px 0 0;font-size:15.5px;}
.rmv-tab-panel.article-body p:first-child{font-family:var(--sans);font-size:15.5px;font-style:normal;color:var(--ink-soft);line-height:1.75;}
.rmv-tab-panel h4{font-family:var(--serif);font-weight:500;font-size:19px;margin:22px 0 8px;color:var(--ink);}
.rmv-tab-panel li{margin:8px 0;}
.product-card .photo{background:#fff;}
@media (max-width:880px){.product-gallery{position:static;}.product-section{padding-top:110px;}}

/* ============ TRANG THƯỜNG / WOOCOMMERCE ============ */
.page-head{padding:150px 0 40px;background:var(--paper-deep);border-bottom:1px solid var(--line);}
.page-head h1{font-size:clamp(32px,4.5vw,50px);margin-top:16px;}
.page-head.is-shop{padding-bottom:30px;}
.shop-page .woocommerce{font-size:15px;}
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce button.button.alt, .woocommerce a.button.alt,
.wc-block-components-button:not(.is-link){
  font-family:var(--mono)!important;font-size:12px!important;letter-spacing:.08em;text-transform:uppercase;
  background:var(--navy)!important;color:var(--cream)!important;border-radius:999px!important;padding:14px 24px!important;border:none!important;
}
.woocommerce .button:hover, .woocommerce button.button.alt:hover, .wc-block-components-button:not(.is-link):hover{background:var(--gold)!important;}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.woocommerce-page .select2-container .select2-selection{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.6);padding:10px 12px;font-family:var(--sans);}
.woocommerce-message, .woocommerce-info, .woocommerce-error{border-top-color:var(--gold)!important;background:var(--paper-deep)!important;color:var(--ink)!important;}
.woocommerce-message::before, .woocommerce-info::before{color:var(--gold)!important;}
.woocommerce table.shop_table{border-color:var(--line);border-radius:10px;}
.woocommerce .woocommerce-checkout h3, .woocommerce-cart h2{font-family:var(--serif);font-weight:500;}

/* ============ FOOTER ============ */
.site-footer{position:relative;z-index:2;}
.foot-grid{grid-template-columns:1.3fr 1fr 1.1fr 1.25fr 1.25fr;gap:40px;}
.foot-social{display:flex;gap:10px 16px;flex-wrap:wrap;margin-top:22px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;}
.foot-social a{color:var(--gold-light);}
.foot-social a:hover{color:var(--cream);}
.foot-rich p{margin:0 0 12px;font-size:14px;line-height:1.65;}
.foot-rich a:hover{color:var(--gold-light);}
footer ul.menu{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;font-size:14px;}
@media (max-width:1080px){.foot-grid{grid-template-columns:1fr 1fr 1fr;}}
@media (max-width:640px){.foot-grid{grid-template-columns:1fr;gap:34px;}}

/* ============ THÔNG BÁO NHỎ ============ */
.rmv-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);z-index:300;background:var(--navy-deep);color:var(--cream);padding:14px 20px;border-radius:14px;width:max-content;font-size:14px;box-shadow:0 14px 36px -12px rgba(0,0,0,.4);opacity:0;pointer-events:none;transition:all .3s ease;display:flex;gap:16px;align-items:center;max-width:calc(100% - 32px);}
.rmv-toast.show{opacity:1;transform:translate(-50%,0);pointer-events:auto;}
.rmv-toast a{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-light);border-bottom:1px solid var(--gold-light);white-space:nowrap;}

/* ============ MOBILE ============ */
@media (max-width:560px){
  .wrap,.wrap-narrow{padding:0 16px;}
  .hero-content{padding:0 16px 80px;}
  .scroll-cue{display:none;}
  .pad{padding:80px 0;}
  .pad-sm{padding:60px 0;}
  .subhero{padding:130px 0 60px;min-height:380px;}
  .chapter{padding:70px 0;}
  .chapter-grid{margin-top:50px;}
  .finder-card{padding:26px 20px;}
  .contact-form{padding:24px;}
  .contact-form .row-2{grid-template-columns:1fr;}
  .collection-card{padding:26px;min-height:360px;}
  .news-featured-body{padding:24px;}
  .safety-card{padding:26px;}
  .product-hero{gap:30px;}
  .page-head{padding:120px 0 30px;}
}
.quote .quote-cite{display:block;margin-top:8px;font-family:var(--mono);font-style:normal;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);}

/* Ảnh sản phẩm thật của Remivia là ảnh vuông có chữ — giữ nguyên khung vuông để không bị cắt chữ */
.polaroid img{aspect-ratio:1/1;}
.product-image-main{aspect-ratio:1/1;}
.story-block .photo.scene img{aspect-ratio:auto;}
.foot-rich{font-size:14px;line-height:1.65;}
.foot-rich div{margin-bottom:10px;}
.breadcrumb{flex-wrap:wrap;row-gap:4px;}
.ritual-text h4{margin:0;}
.ritual-text p{margin:6px 0 0;}
.store-card h4{margin:0;}

/* Logo mới (1.0.3): logo có dòng chữ phụ nên cần cao hơn */
header.nav{padding:14px 0;}
header.nav.scrolled, header.nav.solid{padding:8px 0;}
header.nav .logo img{height:72px;}
header.nav.scrolled .logo img, header.nav.solid .logo img{height:60px;}
footer .logo img{height:104px;}
@media (max-width:900px){ header.nav .logo img, header.nav.scrolled .logo img, header.nav.solid .logo img{height:56px;} }
@media (max-width:560px){ header.nav .logo img, header.nav.scrolled .logo img, header.nav.solid .logo img{height:50px;} footer .logo img{height:88px;} }

/* ============ BANNER SLIDE TRANG CHỦ (1.2.0) — ảnh tràn ngang, giữ tỉ lệ gốc như web cũ ============ */
.banner-slider{position:relative;margin-top:76px;background:var(--navy);overflow:hidden;}
.bs-viewport{overflow:hidden;touch-action:pan-y;}
.bs-track{display:flex;transition:transform .7s cubic-bezier(.22,.61,.36,1);will-change:transform;}
.bs-slide{flex:0 0 100%;min-width:100%;}
.bs-slide a,.bs-slide picture{display:block;}
.bs-slide img{display:block;width:100%;height:auto;user-select:none;-webkit-user-drag:none;}
.bs-dots{position:absolute;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:10px;z-index:3;}
.bs-dots button{width:10px;height:10px;padding:0;border-radius:50%;border:1px solid rgba(251,246,234,.9);background:rgba(14,43,71,.25);cursor:pointer;transition:background .3s,transform .3s;}
.bs-dots button.is-active{background:var(--cream);transform:scale(1.15);}
.bs-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid rgba(251,246,234,.7);background:rgba(14,43,71,.28);color:var(--cream);font-size:28px;line-height:1;cursor:pointer;opacity:0;transition:opacity .3s,background .3s;}
.bs-prev{left:28px;} .bs-next{right:28px;}
.banner-slider:hover .bs-arrow{opacity:1;}
.bs-arrow:hover{background:rgba(14,43,71,.55);}
@media (max-width:991px){ .bs-arrow{display:none;} }
@media (max-width:900px){ .banner-slider{margin-top:72px;} }
@media (max-width:560px){ .banner-slider{margin-top:66px;} .bs-dots{bottom:10px;gap:8px;} .bs-dots button{width:8px;height:8px;} }

/* ============ KHOẢNG CÁCH GIỮA CÁC PHẦN: GIẢM 50% (1.2.1) — áp dụng mọi trang ============ */
.pad{padding:59px 0;}
.pad-sm{padding:40px 0;}
.chapter{padding:50px 0;}
.chapter-grid{margin-top:35px;}
.section-head{margin-bottom:30px;}
.steps{margin-top:25px;}
.steps-3{margin-top:20px;}
.values{margin-top:29px;}
.collections-grid{margin-top:27px;}
.peek-grid{margin-top:25px;}
.finder-card{margin-top:27px;}
.exp-grid{margin-top:28px;}
.contact-grid{margin-top:25px;}
.story-block{margin-top:40px;}
.safety-card{margin-top:40px;}
.news-grid{margin-top:25px;}
.news-featured{margin-top:25px;}
.related-grid{margin-top:20px;}
.page-extra{margin-top:30px;}
.contact-map{margin-top:30px;}
.rmv-pagination{margin-top:30px;}
.article-tags{margin-top:25px;padding-top:15px;}
.article-hero{margin-top:25px;}
.subhero{padding:125px 0 45px;min-height:340px;}
.subhero.dark{min-height:320px;}
.page-head{padding:115px 0 20px;}
.product-section{padding:110px 0 40px;}
footer{padding-top:40px;}
.foot-bottom{margin-top:35px;}
@media (max-width:560px){
  .pad{padding:40px 0;}
  .pad-sm{padding:30px 0;}
  .chapter{padding:35px 0;}
  .chapter-grid{margin-top:25px;}
  .subhero{padding:95px 0 30px;min-height:280px;}
  .page-head{padding:90px 0 15px;}
  .product-section{padding:90px 0 30px;}
}

/* ============ 1.2.2: ảnh bìa trang con rõ hơn (lớp phủ 20%), menu nền 90% ============ */
.subhero-bg,.subhero.dark .subhero-bg{opacity:1;filter:none;}
.subhero::after{background:rgba(245,239,226,.2);}
.subhero.dark::after{background:rgba(19,59,96,.2);}
.subhero h1,.subhero p.lede,.subhero .breadcrumb{text-shadow:0 1px 16px rgba(251,246,234,.85);}
.subhero.dark h1,.subhero.dark p.lede,.subhero.dark .breadcrumb{text-shadow:0 2px 18px rgba(8,26,44,.6);}
.subhero.dark p.lede{color:rgba(251,246,234,.92);}
.subhero.dark .breadcrumb,.subhero.dark .breadcrumb a{color:rgba(251,246,234,.85);}
header.nav.scrolled,header.nav.solid{background:rgba(245,239,226,.9);backdrop-filter:none;-webkit-backdrop-filter:none;}
/* Mọi trang con dùng lớp phủ xanh 20% + chữ sáng (ảnh bìa thường tối) */
.subhero{background:var(--navy);}
.subhero::after{background:rgba(19,59,96,.2);}
.subhero h1,.subhero p.lede,.subhero .breadcrumb,.subhero .rmv-cite{text-shadow:0 2px 18px rgba(8,26,44,.6);}
.subhero h1{color:var(--cream);}
.subhero h1 em{color:var(--gold-light);}
.subhero p.lede{color:rgba(251,246,234,.92);}
.subhero .breadcrumb,.subhero .breadcrumb a{color:rgba(251,246,234,.85);}
.subhero .breadcrumb a:hover{color:var(--cream);}
.subhero .rmv-cite{color:var(--gold-light);}

/* ============ TRANG THANH TOÁN (1.3.3) — đồng bộ thiết kế Remivia ============ */
.express-one-page-checkout-main{gap:56px;align-items:flex-start;font-family:var(--sans);color:var(--ink);}
.express-one-page-checkout-main .layout-1-left{flex:1 1 58%;padding:0!important;min-width:0;}
.express-one-page-checkout-main .layout-1-right{flex:0 0 38%;padding:0!important;position:sticky;top:110px;}
.express-one-page-checkout-main h3.border_html{font-family:var(--serif)!important;font-weight:500!important;font-size:24px!important;color:var(--ink)!important;margin:0 0 18px!important;padding:0!important;border:0!important;}
.express-one-page-checkout-main h3.border_html::before,.express-one-page-checkout-main h3.border_html::after{display:none!important;}
.express-one-page-checkout-main #onepagecheckout-additional_fields,.express-one-page-checkout-main .confirm-pay-title{margin-top:40px!important;}
/* Ẩn tiêu đề "Vận chuyển" khi không có lựa chọn vận chuyển */
.express-one-page-checkout-main .shipping-method-title:has(+ .confirm-pay-title){display:none!important;}

/* Ô nhập: nhãn luôn hiện phía trên, ô cao đều */
.express-one-page-checkout-main .woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:16px 16px;}
.express-one-page-checkout-main .form-row{position:relative;width:auto!important;float:none!important;margin:0!important;padding:0!important;grid-column:1 / -1;}
.express-one-page-checkout-main .form-row-first,.express-one-page-checkout-main .form-row-last{grid-column:auto;}
.express-one-page-checkout-main .form-row > label{position:static!important;opacity:1!important;display:block!important;transform:none!important;padding:0!important;margin:0 0 6px!important;font-family:var(--mono)!important;font-size:11px!important;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)!important;height:auto!important;line-height:1.4!important;}
.express-one-page-checkout-main .form-row > label.screen-reader-text{position:absolute!important;opacity:0!important;}
.express-one-page-checkout-main .form-row label .required,.express-one-page-checkout-main .form-row label abbr{color:var(--gold)!important;text-decoration:none;border:0;}
.express-one-page-checkout-main .form-row input.input-text,.express-one-page-checkout-main .form-row textarea,.express-one-page-checkout-main .form-row select,.express-one-page-checkout-main .select2-container .select2-selection--single{width:100%!important;height:50px!important;padding:12px 16px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--cream)!important;font:400 15px/1.4 var(--sans)!important;color:var(--ink)!important;box-shadow:none!important;transition:border-color .2s, box-shadow .2s;}
.express-one-page-checkout-main .form-row textarea{height:110px!important;resize:vertical;}
.express-one-page-checkout-main .select2-container .select2-selection--single .select2-selection__rendered{line-height:24px!important;padding:0!important;color:var(--ink)!important;}
.express-one-page-checkout-main .select2-container .select2-selection--single .select2-selection__arrow{height:48px!important;right:10px!important;}
.express-one-page-checkout-main .form-row input.input-text:focus,.express-one-page-checkout-main .form-row textarea:focus,.express-one-page-checkout-main .select2-container--focus .select2-selection{border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(185,134,59,.15)!important;outline:0;}
.express-one-page-checkout-main .form-row input::placeholder,.express-one-page-checkout-main .form-row textarea::placeholder{color:rgba(14,43,71,.38);}
.express-one-page-checkout-main .form-row.woocommerce-invalid input.input-text{border-color:#B5524A!important;}

/* Phương thức thanh toán dạng thẻ */
.express-one-page-checkout-main #payment{background:transparent!important;border-radius:0!important;}
.express-one-page-checkout-main #payment ul.payment_methods{padding:0!important;border:0!important;margin:0 0 20px!important;display:grid;gap:12px;}
.express-one-page-checkout-main #payment ul.payment_methods li{list-style:none;margin:0!important;padding:16px 18px!important;border:1px solid var(--line);border-radius:12px;background:var(--cream);transition:border-color .2s, background .2s;}
.express-one-page-checkout-main #payment ul.payment_methods li:has(input:checked){border-color:var(--gold);background:#fff;box-shadow:0 6px 20px rgba(14,43,71,.06);}
.express-one-page-checkout-main #payment ul.payment_methods li > input{margin:0 10px 0 0!important;accent-color:var(--navy);vertical-align:middle;}
.express-one-page-checkout-main #payment ul.payment_methods li > label{display:inline!important;font:500 15px/1.4 var(--sans)!important;color:var(--ink)!important;cursor:pointer;}
.express-one-page-checkout-main #payment div.payment_box{background:transparent!important;color:var(--ink-soft)!important;font-size:14px!important;padding:8px 0 0 26px!important;margin:0!important;}
.express-one-page-checkout-main #payment div.payment_box::before{display:none!important;}
.express-one-page-checkout-main #payment div.payment_box p{margin:0;}
.express-one-page-checkout-main #payment .place-order{padding:0!important;margin:0!important;background:transparent!important;}
.express-one-page-checkout-main .woocommerce-privacy-policy-text{font-size:13px;color:var(--ink-soft);margin:0 0 20px;line-height:1.6;}
.express-one-page-checkout-main .woocommerce-privacy-policy-text a{color:var(--navy);text-decoration:underline;text-underline-offset:3px;}
.express-one-page-checkout-main .place-order-action{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.express-one-page-checkout-main .return-prev-tab{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)!important;text-decoration:none;}
.express-one-page-checkout-main .return-prev-tab:hover{color:var(--gold)!important;}
body .express-one-page-checkout-main #place_order,body .woocommerce .express-one-page-checkout-main #place_order{flex:1 1 260px;max-width:340px;height:54px!important;background:var(--navy)!important;color:var(--cream)!important;border:0!important;border-radius:999px!important;font:500 13px/1 var(--mono)!important;letter-spacing:.18em!important;text-transform:uppercase!important;transition:background .25s, transform .25s;}
body .express-one-page-checkout-main #place_order:hover{background:var(--gold)!important;transform:translateY(-1px);}

/* Tóm tắt đơn hàng: thẻ bên phải */
.express-one-page-checkout-main .layout-1-right{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 28px 24px!important;box-shadow:0 18px 40px rgba(14,43,71,.06);}
.express-one-page-checkout-main .layout-1-right::before,.express-one-page-checkout-main .layout-1-right::after{display:none!important;}
.express-one-page-checkout-main .review-order-title{font-size:22px!important;}
.express-one-page-checkout-main table.onestepcheckout-summary{width:100%;border:0!important;margin:0!important;border-collapse:collapse;}
.express-one-page-checkout-main table.onestepcheckout-summary td{border:0!important;border-bottom:1px solid var(--line)!important;padding:16px 0!important;vertical-align:middle;background:transparent!important;}
.express-one-page-checkout-main table.onestepcheckout-summary td.thumb{width:84px;position:relative;}
.express-one-page-checkout-main table.onestepcheckout-summary td.thumb img{width:68px!important;height:68px!important;object-fit:cover;border-radius:10px;border:1px solid var(--line);background:var(--paper);}
.express-one-page-checkout-main .product-thumb-quantity{position:absolute;top:8px;left:54px;min-width:22px;height:22px;line-height:22px;border-radius:11px;background:var(--navy)!important;color:var(--cream)!important;font:600 11px/22px var(--sans)!important;text-align:center;padding:0 6px;}
.express-one-page-checkout-main .more_details_title{font:500 15px/1.4 var(--serif);color:var(--ink);margin-bottom:8px;}
.express-one-page-checkout-main .onepagecheckout-qty{display:inline-flex;vertical-align:middle;}
.express-one-page-checkout-main .wrapper_qty{display:inline-flex!important;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;height:32px;background:var(--cream);}
.express-one-page-checkout-main .wrapper_qty button{width:30px;height:30px;border:0!important;background:transparent!important;color:var(--ink)!important;padding:0!important;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.express-one-page-checkout-main .wrapper_qty button svg{width:10px;height:10px;}
.express-one-page-checkout-main .wrapper_qty input.qty{width:34px!important;height:30px!important;border:0!important;background:transparent!important;text-align:center;font:500 14px var(--sans)!important;color:var(--ink)!important;padding:0!important;}
.express-one-page-checkout-main .removepro{display:inline-block;margin-left:14px;vertical-align:middle;}
.express-one-page-checkout-main .onepagecheckout-remove{font-family:var(--mono);font-size:11px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)!important;text-decoration:underline;text-underline-offset:3px;}
.express-one-page-checkout-main .onepagecheckout-remove:hover{color:#B5524A!important;}
.express-one-page-checkout-main table.onestepcheckout-summary td.total{text-align:right;white-space:nowrap;font:500 15px var(--sans);color:var(--ink)!important;}
.express-one-page-checkout-main table.onestepcheckout-summary td.total *{color:var(--ink)!important;}
.express-one-page-checkout-main .cart_totals{border:0!important;margin-top:8px;padding:0!important;}
.express-one-page-checkout-main .cart_totals .order-total{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0 0!important;border:0!important;margin:0!important;}
.express-one-page-checkout-main .cart_totals .order-total .left-corner{margin:0;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);}
.express-one-page-checkout-main .cart_totals .order-total .right-corner,.express-one-page-checkout-main .cart_totals .order-total .right-corner *{font:500 26px/1 var(--serif)!important;color:var(--navy)!important;text-decoration:none!important;}

/* Thông báo lỗi / mã giảm giá */
.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error,.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-error{border-radius:12px;}

/* Màn hình nhỏ */
@media (max-width:991px){
  .express-one-page-checkout-main{flex-direction:column-reverse;gap:32px;}
  .express-one-page-checkout-main .layout-1-left,.express-one-page-checkout-main .layout-1-right{flex:1 1 auto;width:100%!important;position:static;}
}
@media (max-width:560px){
  .express-one-page-checkout-main .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr;}
  .express-one-page-checkout-main .layout-1-right{padding:20px 18px!important;border-radius:14px;}
  .express-one-page-checkout-main .place-order-action{flex-direction:column-reverse;align-items:stretch;}
  body .express-one-page-checkout-main #place_order{max-width:none;width:100%;}
}

/* Thanh toán — vá độ ưu tiên so với CSS của plugin */
body.woocommerce-checkout .express-one-page-checkout-main{flex-wrap:nowrap;}
body.woocommerce-checkout .express-one-page-checkout-main .layout-1-left{flex:1 1 0!important;max-width:none!important;width:auto!important;}
body.woocommerce-checkout .express-one-page-checkout-main .layout-1-right{flex:0 0 400px!important;max-width:400px!important;width:400px!important;}
body.woocommerce-checkout .express-one-page-checkout-main .form-row:not(.notes) label:not(.woocommerce-form__label):not(.screen-reader-text){position:static!important;opacity:1!important;display:block!important;transform:none!important;top:auto!important;left:auto!important;padding:0!important;margin:0 0 6px!important;font-family:var(--mono)!important;font-size:11px!important;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)!important;line-height:1.4!important;background:none!important;pointer-events:auto;}
body.woocommerce-checkout .express-one-page-checkout-main .form-row input.input-text,
body.woocommerce-checkout .express-one-page-checkout-main .form-row select{padding:12px 16px!important;}
@media (max-width:991px){
  body.woocommerce-checkout .express-one-page-checkout-main{flex-direction:column-reverse;}
  body.woocommerce-checkout .express-one-page-checkout-main .layout-1-left,
  body.woocommerce-checkout .express-one-page-checkout-main .layout-1-right{flex:1 1 auto!important;width:100%!important;max-width:none!important;}
}
body.woocommerce-checkout .express-one-page-checkout-main .layout-1-right{position:sticky!important;top:110px;}
body.woocommerce-checkout .express-one-page-checkout-main .form-row label.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;}
@media (max-width:991px){body.woocommerce-checkout .express-one-page-checkout-main .layout-1-right{position:static!important;}}
/* Thanh toán — nút Đặt hàng, ô phương thức thanh toán, nhãn ghi chú (vượt CSS plugin) */
body.woocommerce-checkout .woocommerce #payment #place_order,
body.woocommerce-checkout .onepagecheckout-wrapper .onepagecheckout-button{flex:1 1 260px;max-width:340px;min-width:0;height:54px!important;padding:0 28px!important;background:var(--navy)!important;color:var(--cream)!important;border:0!important;border-radius:999px!important;font:500 13px/1 var(--mono)!important;letter-spacing:.18em!important;text-transform:uppercase!important;}
body.woocommerce-checkout .woocommerce #payment #place_order:hover,
body.woocommerce-checkout .onepagecheckout-wrapper .onepagecheckout-button:hover{background:var(--gold)!important;}
body.woocommerce-checkout .express-one-page-checkout-main #payment ul.wc_payment_methods li{padding:16px 18px!important;border:1px solid var(--line)!important;border-radius:12px!important;margin:0!important;}
body.woocommerce-checkout .express-one-page-checkout-main #payment ul.wc_payment_methods li:has(input:checked){border-color:var(--gold)!important;background:#fff!important;}
body.woocommerce-checkout .express-one-page-checkout-main #payment ul.wc_payment_methods .payment_box{background:transparent!important;border:0!important;margin:6px 0 0!important;padding:0 0 0 26px!important;font-size:14px!important;color:var(--ink-soft)!important;}
body.woocommerce-checkout #onepagecheckout-additional_fields p#order_comments_field label{font-family:var(--mono)!important;font-size:11px!important;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)!important;margin:0 0 6px!important;}
body.woocommerce-checkout #onepagecheckout-additional_fields p#order_comments_field label .optional{font-size:inherit;}
@media (max-width:560px){body.woocommerce-checkout .woocommerce #payment #place_order{max-width:none;width:100%;}}
@media (max-width:560px){body.woocommerce-checkout .woocommerce #payment #place_order,body .express-one-page-checkout-main #place_order{flex:0 0 auto!important;height:54px!important;}}

/* ============ ẢNH MINH HOẠ CẠNH KHỐI CHỮ (1.3.8) ============ */
.block-img{margin:0;overflow:hidden;border-radius:18px;position:relative;}
.block-img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s ease;}
.block-img:hover img{transform:scale(1.03);}
.phil-top.has-img{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:64px;align-items:center;}
.phil-top.has-img .section-head{margin-bottom:0;}
.phil-img{aspect-ratio:4/5;max-height:440px;justify-self:end;width:100%;box-shadow:0 24px 50px rgba(14,43,71,.12);}
.phil-img::after{content:"";position:absolute;inset:12px;border:1px solid rgba(251,246,234,.55);border-radius:12px;pointer-events:none;}
.philosophy .steps{margin-top:50px;}
.step{padding-right:40px;}
.step:not(:last-child)::after{right:14px;}
.finder-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center;}
.finder-img{aspect-ratio:5/4;max-height:380px;width:100%;border:1px solid rgba(244,236,221,.18);box-shadow:0 30px 60px rgba(0,0,0,.25);}
.finder-img img{object-position:center 70%;}
.finder-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(19,59,96,0) 55%,rgba(19,59,96,.35));pointer-events:none;}
@media (max-width:880px){
  .phil-top.has-img,.finder-grid{grid-template-columns:1fr;gap:32px;}
  .phil-img{aspect-ratio:4/3;max-height:none;justify-self:stretch;}
  .finder-img{aspect-ratio:16/10;max-height:none;}
  .step{padding-right:0;}
  .step::after{display:none;}
}
.finder-img{aspect-ratio:3/2;}
.finder-img img{object-position:center 100%;}

/* Ảnh minh hoạ ở khối cuối trang Tìm ký ức (1.4.0) */
.split-img{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;align-items:center;}
.more-img{aspect-ratio:4/3;max-height:380px;width:100%;box-shadow:0 24px 50px rgba(14,43,71,.10);}
.more-img.is-bottles{aspect-ratio:auto;max-height:none;box-shadow:none;border-radius:0;overflow:visible;}
.mini-bottles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.mini-bottles span{display:block;aspect-ratio:1;border-radius:14px;overflow:hidden;background:#ececec;}
.mini-bottles img{width:100%;height:100%;object-fit:cover;transform:scale(1.25);transition:transform .6s ease;}
.mini-bottles span:hover img{transform:scale(1.35);}
.finder.pad-sm .finder-img{max-height:300px;}
@media (max-width:880px){.split-img{grid-template-columns:1fr;gap:32px;}}

/* ============ THÔNG TIN LIÊN HỆ CÓ ICON (1.4.1) ============ */
.ci-list{list-style:none;margin:0;padding:0;}
.ci-list .ci{display:flex;align-items:flex-start;gap:10px;line-height:1.55;margin:0 0 9px;}
.ci-list .ci-ico{flex:0 0 16px;width:16px;height:16px;margin-top:3px;opacity:.9;}
.ci-list .ci-noicon{display:block;}
.ci-list .ci-note{font-size:12px;letter-spacing:.04em;opacity:.65;margin-bottom:4px;}
.ci-list .ci-strong span,.ci-list .ci-store span{font-weight:600;}
.ci-list .ci-store:not(:first-child){margin-top:16px;}
.ci-list a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s,color .2s;}
.ci-list a:hover{border-bottom-color:currentColor;}
footer .ci-list .ci-ico{color:var(--gold-light);}
footer .ci-list{font-size:14px;}
footer .ci-list .ci-store span{color:var(--cream);}
.contact-info .ci-list .ci-ico{color:var(--accent);}
.contact-info .ci-list{font-size:15px;color:var(--ink-soft);}
.contact-info .ci-list .ci-store span{font-family:var(--serif);font-weight:500;font-size:17px;color:var(--ink);}
.contact-info h4{display:flex;align-items:center;gap:8px;}
.contact-info h4 .ci-ico{width:15px;height:15px;}
.store-card .ci-list{font-size:15px;color:var(--ink-soft);margin-bottom:6px;}
.store-card .ci-list .ci-ico{color:var(--accent);}
.store-card .ci-list .ci-store span{font-family:var(--serif);font-weight:500;font-size:17px;color:var(--ink);}
