/** KHINTAWAN design system and coded homepage. */
:root {
    --kh-green-950:#183329;
    --kh-green-900:#1E3F31;
    --kh-green-700:#2F5D46;
    --kh-green-100:#EAF1EA;
    --kh-text:#4E5B54;
    --kh-cream:#F7F3EA;
    --kh-ivory:#FCFAF5;
    --kh-white:#FFFFFF;
    --kh-gold:#B99045;
    --kh-border:rgba(30,47,39,.14);
    --kh-shadow:0 20px 50px rgba(30,47,39,.08);
    --kh-container:1200px;
    --kh-radius-sm:4px;
    --kh-radius-md:18px;
    --kh-space-xs:8px;
    --kh-space-sm:16px;
    --kh-space-md:24px;
    --kh-space-lg:40px;
    --kh-space-xl:64px;
    --kh-space-2xl:88px;
}

body { color:var(--kh-text); background:var(--kh-ivory); }
.kh-container { width:min(calc(100% - 48px), var(--kh-container)); margin-inline:auto; }
.kh-section { padding-block:var(--kh-space-2xl); }
.kh-home h1,.kh-home h2,.kh-home h3 { color:var(--kh-green-950); }
.kh-home h1,.kh-home h2 { font-family:Georgia,"Times New Roman",serif; letter-spacing:-.025em; }
.kh-eyebrow { color:var(--kh-green-700); font-size:.78rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.kh-actions { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.kh-btn { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:12px 24px; border:1px solid transparent; border-radius:var(--kh-radius-sm); font-weight:600; text-decoration:none; transition:.2s ease; }
.kh-btn--primary { background:var(--kh-green-700); color:#fff; }
.kh-btn--primary:hover,.kh-btn--primary:focus-visible { background:var(--kh-green-900); color:#fff; }
.kh-btn--secondary { background:transparent; border-color:var(--kh-green-700); color:var(--kh-green-700); }
.kh-btn--secondary:hover,.kh-btn--secondary:focus-visible { background:var(--kh-green-700); color:#fff; }
.kh-btn--light { background:#fff; color:var(--kh-green-950); }
.kh-btn--light-outline { border-color:rgba(255,255,255,.7); color:#fff; }

/* Utility bar */
.kh-utility { background:var(--kh-green-950); color:#fff; font-size:.78rem; line-height:1; }
.kh-utility__inner { min-height:34px; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.kh-utility__benefits,.kh-utility__right,.kh-language { display:flex; align-items:center; gap:22px; }
.kh-utility__benefits span:not(:last-child)::after { content:"·"; margin-left:22px; opacity:.45; }
.kh-language { gap:8px; font-weight:600; }
.kh-language ul { display:flex; gap:8px; margin:0; padding:0; list-style:none; }
.kh-language li:not(:last-child)::after { content:"|"; margin-left:8px; opacity:.55; }
.kh-language a { color:#fff; text-transform:uppercase; text-decoration:none; }

/* Official client-supplied KHINTAWAN logo in the Kadence header. */
.site-branding img.custom-logo,
.kh-fallback-logo img {
    display:block;
    width:auto;
    max-width:118px;
    max-height:78px;
    object-fit:contain;
}
/* When the image logo is present, avoid repeating the site title beside it. */
.site-branding .site-title-wrap { display:none; }
@media (max-width:767px){
    .site-branding img.custom-logo,
    .kh-fallback-logo img { max-width:88px; max-height:62px; }
}

/* Hero */
.kh-hero { position:relative; overflow:hidden; background:linear-gradient(100deg,#FBF7EF 0%,#F8F1E4 53%,#F2E7D6 100%); }
.kh-hero::before { content:""; position:absolute; inset:auto auto -140px -120px; width:390px; height:390px; border-radius:50%; background:radial-gradient(circle,rgba(47,93,70,.09),transparent 68%); }
.kh-hero__grid { min-height:590px; display:grid; grid-template-columns:55% 45%; align-items:center; }
.kh-hero__copy { padding:72px 52px 72px 0; position:relative; z-index:2; }
.kh-hero h1 { max-width:760px; margin:.45rem 0 1rem; font-size:clamp(2.55rem,4.5vw,4.6rem); line-height:1.02; }
.kh-hero__lead { max-width:620px; margin:0 0 1.15rem; font-size:1.08rem; line-height:1.65; }
.kh-founder-credit { margin:0 0 1.6rem; color:var(--kh-green-700); font-weight:600; font-style:italic; }
.kh-hero__visual { height:100%; min-height:590px; position:relative; overflow:hidden; background:#F5EBDC; }
.kh-hero-scene { width:100%; height:100%; min-height:590px; display:block; object-fit:cover; object-position:center center; }

/* Trust */
.kh-trust { background:#fff; border-block:1px solid var(--kh-border); }
.kh-trust__grid { display:grid; grid-template-columns:repeat(4,1fr); }
.kh-trust__item { display:flex; gap:14px; align-items:center; padding:26px 24px; }
.kh-trust__item:not(:last-child){ border-right:1px solid var(--kh-border); }
.kh-trust__icon { color:var(--kh-green-700); font-size:2rem; width:42px; text-align:center; }
.kh-trust strong,.kh-trust small { display:block; }
.kh-trust strong { color:var(--kh-green-950); margin-bottom:3px; }
.kh-trust small { line-height:1.4; }

/* Founder */
.kh-founder { background:#FCF8F1; }
.kh-founder__grid { display:grid; grid-template-columns:40% 60%; align-items:stretch; min-height:470px; border-radius:var(--kh-radius-md); overflow:hidden; background:linear-gradient(90deg,#EDF1E8,#FCF7EF 48%,#F5E8D5); box-shadow:var(--kh-shadow); }
.kh-founder__portrait { margin:0; min-height:470px; overflow:hidden; background:#eee; }
.kh-founder__portrait img { width:100%; height:100%; min-height:470px; object-fit:cover; object-position:center 27%; display:block; }
.kh-founder__content { padding:58px 64px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.kh-founder h2 { margin:.5rem 0 1.2rem; font-size:clamp(2.25rem,3.8vw,3.6rem); line-height:1.05; }
.kh-founder blockquote { margin:0 0 1.5rem; padding-left:20px; border-left:2px solid var(--kh-green-700); font-family:Georgia,"Times New Roman",serif; font-size:1.22rem; line-height:1.55; color:#283d34; font-style:italic; }
.kh-founder__identity { margin-bottom:1.5rem; }
.kh-founder__identity strong,.kh-founder__identity span { display:block; }
.kh-founder__identity strong { color:var(--kh-green-950); font-size:1.08rem; }

.kh-signature { padding:24px 0 8px; text-align:center; background:var(--kh-ivory); }
.kh-signature p { margin:0; font-family:Georgia,"Times New Roman",serif; color:var(--kh-green-700); font-size:clamp(1.45rem,2.5vw,2.15rem); font-style:italic; }

/* Products */
.kh-products { background:var(--kh-ivory); }
.kh-section-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:28px; }
.kh-section-heading h2 { margin:.35rem 0 0; font-size:clamp(2rem,3vw,3rem); }
.kh-text-link { color:var(--kh-green-700); font-weight:600; text-decoration:none; }
.kh-product-carousel { position:relative; }
.kh-product-track { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(220px,1fr); grid-template-rows:1fr; gap:18px; overflow-x:auto; scrollbar-width:none; scroll-behavior:smooth; padding:4px 2px 10px; }
.kh-product-track::-webkit-scrollbar { display:none; }
.kh-product-card { min-width:220px; background:#fff; border:1px solid var(--kh-border); border-radius:12px; overflow:hidden; box-shadow:0 8px 22px rgba(30,47,39,.04); }
.kh-product-card__image { aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; background:linear-gradient(#FAF5ED,#F3E9DB); padding:18px; }
.kh-product-card__image img { max-width:100%; max-height:100%; object-fit:contain; mix-blend-mode:multiply; }
.kh-product-card__body { position:relative; padding:16px 54px 17px 16px; min-height:126px; }
.kh-product-card h3 { margin:0 0 8px; font-family:inherit; font-size:1rem; line-height:1.35; }
.kh-product-card h3 a { color:var(--kh-green-950); text-decoration:none; }
.kh-product-card__price { color:#172e25; font-weight:700; }
.kh-product-card__cart { position:absolute; right:14px; bottom:16px; display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--kh-green-700); border-radius:50%; color:var(--kh-green-700); text-decoration:none; font-size:1.3rem; }
.kh-carousel-btn { position:absolute; z-index:5; top:43%; width:38px; height:38px; border-radius:50%; border:1px solid var(--kh-border); background:#fff; color:var(--kh-green-950); font-size:1.5rem; line-height:1; box-shadow:0 5px 16px rgba(30,47,39,.1); cursor:pointer; }
.kh-carousel-btn--prev { left:-18px; }
.kh-carousel-btn--next { right:-18px; }

.kh-wisdom-band { padding:26px 0; background:linear-gradient(90deg,#E6EEDB,#F8F1E2 70%,#E5EECB); border-block:1px solid rgba(47,93,70,.13); }
.kh-wisdom-band__inner { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.kh-wisdom-band h2 { margin:.3rem 0 0; font-size:clamp(1.6rem,2.5vw,2.25rem); }

.kh-cta { background:linear-gradient(100deg,#173e2d,#245d43); color:#fff; padding:36px 0; }
.kh-cta__inner { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.kh-cta h2 { color:#fff; margin:0 0 5px; font-size:clamp(2rem,3vw,3rem); }
.kh-cta p { margin:0; color:rgba(255,255,255,.82); font-family:Georgia,"Times New Roman",serif; font-style:italic; font-size:1.1rem; }

@media (max-width:1024px){
    .kh-section{padding-block:var(--kh-space-xl)}
    .kh-utility__shipping{display:none}
    .kh-hero__grid{grid-template-columns:1fr 1fr;min-height:520px}
    .kh-hero__copy{padding:58px 34px 58px 0}
    .kh-hero__visual,.kh-hero-scene{min-height:520px}
    .kh-trust__grid{grid-template-columns:repeat(2,1fr)}
    .kh-trust__item:nth-child(2){border-right:0}
    .kh-trust__item:nth-child(-n+2){border-bottom:1px solid var(--kh-border)}
    .kh-founder__grid{grid-template-columns:44% 56%}
    .kh-founder__content{padding:44px}
}

@media (max-width:767px){
    .kh-container{width:min(calc(100% - 36px),var(--kh-container))}
    .kh-section{padding-block:48px}
    .kh-utility__inner{min-height:38px}
    .kh-utility__benefits span:nth-child(n+2){display:none}
    .kh-hero__grid{grid-template-columns:1fr;min-height:auto}
    .kh-hero__copy{padding:48px 0 28px}
    .kh-hero h1{font-size:clamp(2.35rem,12vw,3.35rem)}
    .kh-hero__visual,.kh-hero-scene{min-height:390px}
    .kh-hero-scene{object-position:center center}
    .kh-trust__grid{grid-template-columns:1fr}
    .kh-trust__item,.kh-trust__item:nth-child(2){border-right:0;border-bottom:1px solid var(--kh-border)}
    .kh-founder__grid{grid-template-columns:1fr}
    .kh-founder__portrait,.kh-founder__portrait img{min-height:380px}
    .kh-founder__content{padding:38px 28px}
    .kh-section-heading,.kh-wisdom-band__inner,.kh-cta__inner{align-items:flex-start;flex-direction:column}
    .kh-product-track{grid-auto-columns:82%}
    .kh-carousel-btn{display:none}
    .kh-actions{width:100%}
    .kh-actions .kh-btn{flex:1 1 100%}
}

/* Homepage footer */
.kh-home-footer {
    background:linear-gradient(115deg,#103527,#174b36 62%,#0f3729);
    color:rgba(255,255,255,.86);
    padding:54px 0 0;
}
.kh-home-footer__grid {
    display:grid;
    grid-template-columns:1.35fr .8fr .95fr .95fr 1.35fr;
    gap:42px;
    align-items:start;
}
.kh-home-footer h3 {
    margin:0 0 14px;
    color:#fff;
    font-family:inherit;
    font-size:.9rem;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.kh-home-footer a { color:rgba(255,255,255,.88); text-decoration:none; }
.kh-home-footer a:hover,.kh-home-footer a:focus-visible { color:#fff; text-decoration:underline; }
.kh-home-footer__brand p,.kh-home-footer__contact p { margin:14px 0 0; font-size:.9rem; line-height:1.55; }
.kh-home-footer__logo { display:inline-block; background:#fff; padding:8px 10px; border-radius:4px; }
.kh-home-footer__logo img { display:block; width:auto; height:92px; max-width:120px; object-fit:contain; }
.kh-home-footer__nav { display:flex; flex-direction:column; gap:9px; font-size:.9rem; }
.kh-home-footer__contact { font-size:.9rem; }
.kh-home-footer__contact a { display:inline-block; margin-top:10px; }
.kh-home-footer__bottom {
    min-height:62px;
    margin-top:42px;
    border-top:1px solid rgba(255,255,255,.16);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    font-size:.78rem;
}
.kh-home-footer__bottom div { display:flex; gap:18px; }
/* Hide Kadence's minimal footer only on the coded homepage; the custom footer above replaces it. */
body.home #colophon.site-footer { display:none; }

/* Make WooCommerce's temporary placeholder less visually dominant until real product photography is uploaded. */
.kh-product-card__image img.woocommerce-placeholder { opacity:.38; filter:grayscale(1); mix-blend-mode:multiply; }

@media (max-width:1024px){
    .kh-home-footer__grid{grid-template-columns:1.3fr repeat(2,1fr);gap:36px}
    .kh-home-footer__contact{grid-column:2 / 4}
}
@media (max-width:767px){
    .kh-home-footer{padding-top:42px}
    .kh-home-footer__grid{grid-template-columns:1fr 1fr;gap:32px 22px}
    .kh-home-footer__brand,.kh-home-footer__contact{grid-column:1 / -1}
    .kh-home-footer__bottom{align-items:flex-start;flex-direction:column;padding:20px 0;min-height:auto;margin-top:34px}
    .kh-home-footer__bottom div{flex-wrap:wrap}
}

/* v0.6 homepage polish */
.site-branding img.custom-logo,
.kh-fallback-logo img {
    width: 146px !important;
    max-width: 146px;
    max-height: 88px;
    height: auto !important;
}
.kh-founder.kh-section { padding-block: 68px 54px; }
.kh-products.kh-section { padding-block: 58px 72px; }
.kh-signature { padding:18px 0 4px; }
.kh-product-card h3 { min-height:2.7em; }
.kh-product-card__fallback {
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    text-align:center;
    color:var(--kh-green-700);
}
.kh-product-card__fallback img {
    width:82px;
    height:auto;
    max-height:72px;
    object-fit:contain;
    mix-blend-mode:normal;
    opacity:.82;
}
.kh-product-card__fallback small {
    max-width:145px;
    font-size:.72rem;
    line-height:1.35;
    letter-spacing:.02em;
}
.kh-home-footer__logo img { height:104px; max-width:136px; }
@media (max-width:767px){
    .site-branding img.custom-logo,
    .kh-fallback-logo img { width:104px !important; max-width:104px; max-height:72px; }
    .kh-founder.kh-section,.kh-products.kh-section{padding-block:48px}
}

/* v0.7 coded WooCommerce Shop */
.kh-shop-page { background:var(--kh-ivory); }
.kh-shop-page h1,.kh-shop-page h2,.kh-shop-page h3 { color:var(--kh-green-950); }
.kh-shop-page h1,.kh-shop-page h2 { font-family:Georgia,"Times New Roman",serif; letter-spacing:-.025em; }
.kh-shop-hero { background:linear-gradient(110deg,#F7F1E7 0%,#FCFAF5 62%,#EAF1E8 100%); border-bottom:1px solid var(--kh-border); }
.kh-shop-hero__inner { padding:72px 0 64px; text-align:center; }
.kh-shop-hero h1 { max-width:920px; margin:.45rem auto 1rem; font-size:clamp(2.75rem,4.6vw,4.65rem); line-height:1.03; }
.kh-shop-hero p { max-width:720px; margin:0 auto; font-size:1.06rem; line-height:1.7; }
.kh-shop-hero p p { margin:0; }
.kh-shop-categories { position:sticky; top:0; z-index:20; background:rgba(252,250,245,.96); backdrop-filter:blur(10px); border-bottom:1px solid var(--kh-border); }
.admin-bar .kh-shop-categories { top:32px; }
.kh-shop-categories__inner { display:flex; gap:10px; align-items:center; justify-content:center; overflow-x:auto; padding:16px 0; scrollbar-width:none; }
.kh-shop-categories__inner::-webkit-scrollbar { display:none; }
.kh-shop-chip { flex:0 0 auto; padding:9px 16px; border:1px solid var(--kh-border); border-radius:999px; background:#fff; color:var(--kh-green-950); text-decoration:none; font-weight:600; font-size:.9rem; }
.kh-shop-chip:hover,.kh-shop-chip:focus-visible,.kh-shop-chip.is-active { background:var(--kh-green-700); border-color:var(--kh-green-700); color:#fff; }
.kh-shop-catalog { padding-top:54px; }
.kh-shop-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:26px; padding-bottom:18px; border-bottom:1px solid var(--kh-border); }
.kh-shop-toolbar .woocommerce-result-count { margin:0; color:var(--kh-text); }
.kh-shop-toolbar .woocommerce-ordering { margin:0; }
.kh-shop-toolbar select { min-width:210px; height:44px; border:1px solid var(--kh-border); border-radius:6px; background:#fff; color:var(--kh-green-950); padding:0 38px 0 14px; }
.kh-shop-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.kh-shop-card { margin:0 !important; width:auto !important; float:none !important; background:#fff; border:1px solid var(--kh-border); border-radius:14px; overflow:hidden; box-shadow:0 10px 28px rgba(30,47,39,.05); display:flex; flex-direction:column; }
.kh-shop-card__image { min-height:280px; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; padding:24px; background:linear-gradient(180deg,#FBF7EF,#F2E8D9); overflow:hidden; }
.kh-shop-card__image img { width:100%; height:100%; object-fit:contain; display:block; mix-blend-mode:multiply; transition:transform .35s ease; }
.kh-shop-card:hover .kh-shop-card__image img { transform:scale(1.035); }
.kh-shop-card__fallback { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; text-align:center; color:var(--kh-green-700); }
.kh-shop-card__fallback img { width:96px; height:auto; max-height:86px; object-fit:contain; mix-blend-mode:normal; opacity:.82; }
.kh-shop-card__fallback small { max-width:150px; font-size:.74rem; line-height:1.35; }
.kh-shop-card__body { padding:20px; display:flex; flex-direction:column; flex:1; }
.kh-shop-card__category { min-height:1.3em; margin-bottom:8px; font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; color:var(--kh-green-700); font-weight:700; }
.kh-shop-card__category a { color:inherit; text-decoration:none; }
.kh-shop-card h2 { margin:0 0 10px; font-family:inherit; letter-spacing:0; font-size:1.08rem; line-height:1.35; min-height:2.7em; }
.kh-shop-card h2 a { color:var(--kh-green-950); text-decoration:none; }
.kh-shop-card__price { margin-bottom:18px; color:var(--kh-green-950); font-size:1.05rem; font-weight:700; }
.kh-shop-card__actions { margin-top:auto; display:flex; flex-direction:column; gap:11px; }
.kh-shop-card__actions .kh-btn { width:100%; min-height:42px; padding:9px 16px; }
.kh-shop-card__details { align-self:center; color:var(--kh-green-700); font-size:.87rem; font-weight:600; text-decoration:none; }
.kh-shop-pagination { margin-top:44px; }
.kh-shop-pagination .woocommerce-pagination ul.page-numbers { border:0; display:flex; justify-content:center; gap:8px; }
.kh-shop-pagination .woocommerce-pagination ul.page-numbers li { border:0; }
.kh-shop-pagination .page-numbers a,.kh-shop-pagination .page-numbers span { display:grid !important; place-items:center; min-width:40px; min-height:40px; border:1px solid var(--kh-border); border-radius:50%; background:#fff; color:var(--kh-green-950); }
.kh-shop-pagination .page-numbers .current { background:var(--kh-green-700); color:#fff; border-color:var(--kh-green-700); }
.kh-shop-empty { padding:56px; border:1px solid var(--kh-border); border-radius:var(--kh-radius-md); background:#fff; text-align:center; }
.kh-shop-empty h2 { margin-top:0; }
.kh-shop-guidance { padding:46px 0; background:linear-gradient(90deg,#E7EFDF,#F7F0E2); border-block:1px solid rgba(47,93,70,.13); }
.kh-shop-guidance__inner { display:flex; align-items:center; justify-content:space-between; gap:42px; }
.kh-shop-guidance h2 { margin:.35rem 0 .6rem; font-size:clamp(2rem,3vw,3rem); }
.kh-shop-guidance p { max-width:700px; margin:0; line-height:1.65; }
.kh-shop-trust { margin-top:0; }
body.woocommerce-shop #colophon.site-footer,
body.tax-product_cat #colophon.site-footer,
body.tax-product_tag #colophon.site-footer { display:none; }

@media (max-width:1024px){
    .kh-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .kh-shop-card__image{min-height:230px}
    .kh-shop-guidance__inner{align-items:flex-start;flex-direction:column}
}
@media (max-width:767px){
    .kh-shop-hero__inner{padding:50px 0 44px;text-align:left}
    .kh-shop-hero h1{font-size:clamp(2.45rem,11vw,3.4rem)}
    .kh-shop-hero p{margin-left:0}
    .admin-bar .kh-shop-categories{top:46px}
    .kh-shop-categories__inner{justify-content:flex-start}
    .kh-shop-toolbar{align-items:flex-start;flex-direction:column}
    .kh-shop-toolbar select{width:100%;min-width:0}
    .kh-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
    .kh-shop-card__image{min-height:170px;padding:16px}
    .kh-shop-card__body{padding:16px}
    .kh-shop-card h2{font-size:.98rem}
    .kh-shop-guidance{padding:38px 0}
}
@media (max-width:520px){
    .kh-shop-grid{grid-template-columns:1fr}
    .kh-shop-card__image{min-height:260px}
}

/* v0.8 Single Product + administrator draft-product preview */
.kh-single-product { background:var(--kh-ivory); }
.kh-single-product h1,.kh-single-product h2,.kh-single-product h3 { color:var(--kh-green-950); }
.kh-single-product h1,.kh-single-product h2 { font-family:Georgia,"Times New Roman",serif; letter-spacing:-.025em; }
.kh-single-breadcrumb { background:#fff; border-bottom:1px solid var(--kh-border); }
.kh-single-breadcrumb .kh-container { min-height:54px; display:flex; align-items:center; }
.kh-single-breadcrumb .woocommerce-breadcrumb { margin:0; color:#7a847f; font-size:.86rem; }
.kh-single-breadcrumb .woocommerce-breadcrumb a { color:var(--kh-green-700); text-decoration:none; }
.kh-single-main { background:linear-gradient(120deg,#FCFAF5,#F7F0E4); }
.kh-single-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:68px; align-items:start; }
.kh-single-gallery__main { min-height:560px; border:1px solid var(--kh-border); border-radius:18px; background:linear-gradient(180deg,#FBF7EF,#F2E8D9); display:flex; align-items:center; justify-content:center; padding:42px; overflow:hidden; }
.kh-single-main-image { width:100%; height:100%; max-height:500px; object-fit:contain; mix-blend-mode:multiply; }
.kh-single-gallery__fallback { width:100%; min-height:470px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; color:var(--kh-green-700); text-align:center; }
.kh-single-gallery__fallback img { width:150px; height:auto; max-height:130px; object-fit:contain; }
.kh-single-gallery__thumbs { margin-top:14px; display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.kh-single-thumb { border:1px solid var(--kh-border); border-radius:9px; background:#fff; padding:7px; cursor:pointer; aspect-ratio:1; overflow:hidden; }
.kh-single-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.kh-single-summary { padding-top:14px; }
.kh-single-category { margin-bottom:12px; }
.kh-single-category a { color:inherit; text-decoration:none; }
.kh-single-summary h1 { margin:0 0 16px; font-size:clamp(2.5rem,4.2vw,4.15rem); line-height:1.03; }
.kh-single-price { margin-bottom:22px; color:var(--kh-green-950); font-size:1.55rem; font-weight:700; }
.kh-single-short { margin-bottom:26px; font-size:1.05rem; line-height:1.72; }
.kh-single-short p:last-child { margin-bottom:0; }
.kh-single-meta-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:26px; }
.kh-single-meta-grid > div { padding:14px 16px; border:1px solid var(--kh-border); border-radius:9px; background:rgba(255,255,255,.68); }
.kh-single-meta-grid span,.kh-single-meta-grid strong { display:block; }
.kh-single-meta-grid span { margin-bottom:4px; font-size:.74rem; color:#75817b; text-transform:uppercase; letter-spacing:.1em; }
.kh-single-meta-grid strong { color:var(--kh-green-950); font-size:.92rem; }
.kh-single-meta-grid .stock { margin:0; color:var(--kh-green-700); }
.kh-single-buy { padding:22px; margin-bottom:24px; border:1px solid var(--kh-border); border-radius:12px; background:#fff; }
.kh-single-buy form.cart { margin:0 !important; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.kh-single-buy .quantity .qty { width:76px; min-height:48px; border:1px solid var(--kh-border); border-radius:5px; }
.kh-single-buy .single_add_to_cart_button { min-height:48px; border-radius:4px !important; background:var(--kh-green-700) !important; color:#fff !important; padding:12px 26px !important; font-weight:700 !important; }
.kh-single-buy .single_add_to_cart_button:hover { background:var(--kh-green-900) !important; }
.kh-single-assurance { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.kh-single-assurance > div { padding:15px; border-top:1px solid var(--kh-border); }
.kh-single-assurance strong,.kh-single-assurance span { display:block; }
.kh-single-assurance strong { color:var(--kh-green-950); margin-bottom:4px; }
.kh-single-assurance span { font-size:.88rem; line-height:1.5; }
.kh-single-details { background:#fff; }
.kh-single-details__grid { display:grid; grid-template-columns:1.2fr .8fr; gap:70px; align-items:start; }
.kh-single-details h2 { margin:.35rem 0 1rem; font-size:clamp(2rem,3vw,3rem); }
.kh-rich-text { line-height:1.75; }
.kh-rich-text > *:first-child { margin-top:0; }
.kh-single-details__attributes { padding:28px; border-radius:14px; background:var(--kh-cream); border:1px solid var(--kh-border); }
.kh-single-details__attributes .shop_attributes { margin:20px 0 0; border:0; }
.kh-single-details__attributes .shop_attributes th,.kh-single-details__attributes .shop_attributes td { padding:12px 10px; border-color:var(--kh-border); background:transparent !important; }
.kh-single-details__attributes .shop_attributes th { color:var(--kh-green-950); }
.kh-single-guidance { padding:48px 0; background:linear-gradient(90deg,#E7EFDF,#F7F0E2); border-block:1px solid rgba(47,93,70,.13); }
.kh-single-guidance__inner { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.kh-single-guidance h2 { margin:.35rem 0 .65rem; font-size:clamp(2rem,3vw,3rem); }
.kh-single-guidance p { margin:0; max-width:720px; line-height:1.65; }
.kh-single-related { background:var(--kh-ivory); }
.kh-single-related__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.kh-single-trust { margin-top:0; }
body.single-product #colophon.site-footer { display:none; }

@media (max-width:1024px){
    .kh-single-grid{grid-template-columns:1fr 1fr;gap:38px}
    .kh-single-gallery__main{min-height:440px;padding:28px}
    .kh-single-summary h1{font-size:clamp(2.35rem,4vw,3.4rem)}
    .kh-single-details__grid{gap:40px}
    .kh-single-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
    .kh-single-grid{grid-template-columns:1fr;gap:34px}
    .kh-single-gallery__main{min-height:360px;padding:22px}
    .kh-single-gallery__fallback{min-height:300px}
    .kh-single-summary{padding-top:0}
    .kh-single-meta-grid,.kh-single-assurance{grid-template-columns:1fr}
    .kh-single-buy form.cart{align-items:stretch;flex-direction:column}
    .kh-single-buy .quantity .qty,.kh-single-buy .single_add_to_cart_button{width:100%}
    .kh-single-details__grid{grid-template-columns:1fr;gap:34px}
    .kh-single-guidance__inner{align-items:flex-start;flex-direction:column}
}
@media (max-width:520px){
    .kh-single-related__grid{grid-template-columns:1fr}
}

/* v0.9 Shop by Need */
.kh-needs-page { background:var(--kh-ivory); }
.kh-needs-page h1,.kh-needs-page h2,.kh-needs-page h3 { color:var(--kh-green-950); }
.kh-needs-page h1,.kh-needs-page h2 { font-family:Georgia,"Times New Roman",serif; letter-spacing:-.025em; }
.kh-needs-hero { background:linear-gradient(115deg,#F7F0E3 0%,#FCFAF6 58%,#E8EFE4 100%); border-bottom:1px solid var(--kh-border); }
.kh-needs-hero__inner { max-width:920px; padding:82px 0 76px; text-align:center; }
.kh-needs-hero h1 { margin:.45rem auto 1rem; font-size:clamp(3rem,5.2vw,5.25rem); line-height:1.02; }
.kh-needs-hero p { max-width:760px; margin:0 auto; font-size:1.08rem; line-height:1.72; }
.kh-needs-hero__actions { justify-content:center; margin-top:28px; }
.kh-needs-heading { margin-bottom:30px; }
.kh-needs-heading p { max-width:760px; margin:.7rem 0 0; line-height:1.7; }
.kh-needs-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.kh-need-card { min-height:310px; padding:30px; border:1px solid var(--kh-border); border-radius:14px; background:#fff; display:flex; flex-direction:column; box-shadow:0 12px 32px rgba(30,47,39,.045); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.kh-need-card:hover { transform:translateY(-3px); border-color:rgba(47,93,70,.3); box-shadow:0 16px 38px rgba(30,47,39,.08); }
.kh-need-card__number { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(47,93,70,.25); border-radius:50%; color:var(--kh-green-700); font-weight:700; font-size:.78rem; letter-spacing:.08em; }
.kh-need-card h3 { margin:22px 0 10px; font-family:Georgia,"Times New Roman",serif; font-size:1.65rem; line-height:1.15; }
.kh-need-card p { margin:0 0 24px; color:var(--kh-text); line-height:1.65; }
.kh-need-card .kh-text-link { margin-top:auto; align-self:flex-start; }
.kh-needs-founder { background:#fff; }
.kh-needs-founder__grid { display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:64px; align-items:center; }
.kh-needs-founder__image { min-height:520px; border-radius:18px; overflow:hidden; background:var(--kh-cream); }
.kh-needs-founder__image img { width:100%; height:100%; min-height:520px; display:block; object-fit:cover; object-position:center center; }
.kh-needs-founder__content h2 { margin:.45rem 0 1rem; max-width:680px; font-size:clamp(2.4rem,4vw,4rem); line-height:1.05; }
.kh-needs-founder__content > p { max-width:720px; font-size:1.03rem; line-height:1.75; }
.kh-needs-founder__byline { margin:24px 0 26px; padding-left:18px; border-left:2px solid var(--kh-green-700); }
.kh-needs-founder__byline strong,.kh-needs-founder__byline span { display:block; }
.kh-needs-founder__byline strong { color:var(--kh-green-950); }
.kh-needs-founder__byline span { margin-top:3px; color:var(--kh-text); font-size:.9rem; }
.kh-needs-products { background:linear-gradient(180deg,#FCFAF6,#F7F1E7); }
.kh-needs-products__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.kh-needs-wisdom { padding:50px 0; background:linear-gradient(90deg,#E9F0E3,#F7F0E2); border-block:1px solid rgba(47,93,70,.14); }
.kh-needs-wisdom__inner { display:flex; align-items:center; justify-content:space-between; gap:42px; }
.kh-needs-wisdom h2 { margin:.35rem 0 .6rem; font-size:clamp(2rem,3.3vw,3.35rem); }
.kh-needs-wisdom p { max-width:700px; margin:0; line-height:1.65; }
.kh-needs-trust { margin-top:0; }
body.page-shop-by-need #colophon.site-footer { display:none; }

@media (max-width:1024px){
    .kh-needs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .kh-needs-founder__grid{gap:38px}
    .kh-needs-founder__image,.kh-needs-founder__image img{min-height:440px}
    .kh-needs-products__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
    .kh-needs-hero__inner{padding:56px 0 52px;text-align:left}
    .kh-needs-hero h1{margin-left:0;font-size:clamp(2.7rem,12vw,4rem)}
    .kh-needs-hero p{margin-left:0}
    .kh-needs-hero__actions{justify-content:flex-start}
    .kh-needs-grid{grid-template-columns:1fr}
    .kh-need-card{min-height:0;padding:24px}
    .kh-needs-founder__grid{grid-template-columns:1fr;gap:30px}
    .kh-needs-founder__image,.kh-needs-founder__image img{min-height:380px}
    .kh-needs-wisdom__inner{align-items:flex-start;flex-direction:column}
}
@media (max-width:520px){
    .kh-needs-products__grid{grid-template-columns:1fr}
}

/* v1.0 Thai Herbal Wisdom */
.kh-wisdom-page{background:var(--kh-ivory)}
.kh-wisdom-page h1,.kh-wisdom-page h2,.kh-wisdom-page h3{color:var(--kh-green-950)}
.kh-wisdom-page h1,.kh-wisdom-page h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.kh-wisdom-hero{background:linear-gradient(108deg,#F7F0E3 0%,#FCFAF6 50%,#E9EFE6 100%);overflow:hidden}
.kh-wisdom-hero__grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:stretch;min-height:560px}
.kh-wisdom-hero__copy{padding:82px 54px 76px 0;display:flex;flex-direction:column;justify-content:center}
.kh-wisdom-hero h1{margin:.5rem 0 .9rem;font-size:clamp(3.6rem,6vw,6.2rem);line-height:.96}
.kh-wisdom-hero__copy>p{max-width:640px;margin:0;font-size:1.12rem;line-height:1.72}
.kh-wisdom-hero__copy .kh-actions{margin-top:28px}
.kh-wisdom-hero__visual{margin:0;min-height:560px;overflow:hidden}
.kh-wisdom-hero__visual img{width:100%;height:100%;min-height:560px;display:block;object-fit:cover;object-position:center}
.kh-wisdom-centered-heading{max-width:820px;margin:0 auto 38px;text-align:center}
.kh-wisdom-centered-heading h2{margin:.45rem 0 .8rem;font-size:clamp(2.35rem,3.7vw,3.8rem);line-height:1.05}
.kh-wisdom-centered-heading p{margin:0 auto;max-width:740px;line-height:1.72}
.kh-wisdom-philosophy{background:#fff}
.kh-wisdom-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.kh-wisdom-principle{padding:34px 30px;border:1px solid var(--kh-border);border-radius:15px;background:linear-gradient(180deg,#FBF8F1,#F6EFE3);text-align:center}
.kh-wisdom-principle__icon{width:58px;height:58px;margin:0 auto 16px;border:1px solid rgba(47,93,70,.22);border-radius:50%;display:grid;place-items:center;color:var(--kh-green-700);font-size:1.7rem;background:#fff}
.kh-wisdom-principle h3{margin:0 0 9px;font-family:Georgia,"Times New Roman",serif;font-size:1.6rem}
.kh-wisdom-principle p{margin:0;line-height:1.66}
.kh-wisdom-botanicals{background:linear-gradient(180deg,#FCFAF6,#F7F1E7)}
.kh-wisdom-botanical-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.kh-wisdom-botanical{padding:24px 18px 26px;border:1px solid var(--kh-border);border-radius:13px;background:#fff;text-align:center;min-height:310px}
.kh-wisdom-botanical__mark{height:72px;margin-bottom:14px;border-radius:999px;background:linear-gradient(135deg,#E7EFE3,#F7EBD7);display:flex;align-items:center;justify-content:center;gap:7px;color:var(--kh-green-700)}
.kh-wisdom-botanical__mark span{font-size:.7rem;font-weight:700;letter-spacing:.08em}.kh-wisdom-botanical__mark b{font-size:1.35rem}
.kh-wisdom-botanical__thai{margin:0 0 2px;color:var(--kh-green-700);font-size:.8rem;font-weight:700}
.kh-wisdom-botanical h3{margin:0 0 9px;font-family:Georgia,"Times New Roman",serif;font-size:1.38rem}
.kh-wisdom-botanical>p:last-child{margin:0;color:var(--kh-text);font-size:.91rem;line-height:1.58}
.kh-wisdom-tradition{background:#fff}
.kh-wisdom-tradition__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:center}
.kh-wisdom-tradition__copy h2{margin:.45rem 0 1rem;font-size:clamp(2.45rem,4vw,4.2rem);line-height:1.04}
.kh-wisdom-tradition__copy p{max-width:670px;line-height:1.76}
.kh-wisdom-tradition__visual{margin:0;min-height:460px;border-radius:18px;overflow:hidden;background:var(--kh-cream)}
.kh-wisdom-tradition__visual img{width:100%;height:100%;min-height:460px;display:block;object-fit:cover;object-position:70% center}
.kh-wisdom-founder{background:linear-gradient(115deg,#F3EAD8,#FCFAF5)}
.kh-wisdom-founder__grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:58px;align-items:center}
.kh-wisdom-founder__portrait{margin:0;min-height:470px;border-radius:18px;overflow:hidden;background:#fff}
.kh-wisdom-founder__portrait img{width:100%;height:100%;min-height:470px;display:block;object-fit:cover;object-position:center center}
.kh-wisdom-founder__content h2{margin:.45rem 0 1rem;max-width:760px;font-size:clamp(2.45rem,4vw,4.15rem);line-height:1.04}
.kh-wisdom-founder__content blockquote{margin:0;max-width:790px;padding:0 0 0 22px;border-left:2px solid var(--kh-green-700);color:var(--kh-green-950);font-family:Georgia,"Times New Roman",serif;font-size:1.23rem;font-style:italic;line-height:1.65}
.kh-wisdom-founder__byline{margin:22px 0 26px}.kh-wisdom-founder__byline strong,.kh-wisdom-founder__byline span{display:block}.kh-wisdom-founder__byline strong{color:var(--kh-green-950)}.kh-wisdom-founder__byline span{margin-top:3px;color:var(--kh-text);font-size:.92rem}
.kh-wisdom-quote{padding:58px 20px;background:#fff;text-align:center}
.kh-wisdom-quote__mark{display:block;color:var(--kh-gold);font-family:Georgia,"Times New Roman",serif;font-size:4rem;line-height:.65}
.kh-wisdom-quote blockquote{margin:12px auto 8px;max-width:850px;color:var(--kh-green-950);font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.3vw,3.3rem);font-style:italic;line-height:1.15}
.kh-wisdom-quote p{margin:0;color:var(--kh-text)}
.kh-wisdom-cta{padding:52px 0;background:linear-gradient(90deg,#E7EFE0,#F7F0E2);border-block:1px solid rgba(47,93,70,.14)}
.kh-wisdom-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:42px}.kh-wisdom-cta h2{margin:.35rem 0 .5rem;font-size:clamp(2rem,3.2vw,3.25rem)}.kh-wisdom-cta p{margin:0;line-height:1.6}.kh-wisdom-cta .kh-actions{flex-shrink:0}
.kh-wisdom-trust{margin-top:0}
body.kh-coded-template #colophon.site-footer{display:none!important}

@media (max-width:1100px){
 .kh-wisdom-botanical-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .kh-wisdom-botanical{min-height:270px}
}
@media (max-width:1024px){
 .kh-wisdom-hero__grid{grid-template-columns:1fr 1fr;min-height:500px}.kh-wisdom-hero__copy{padding:62px 34px 58px 0}.kh-wisdom-hero__visual,.kh-wisdom-hero__visual img{min-height:500px}
 .kh-wisdom-tradition__grid{gap:38px}.kh-wisdom-founder__grid{gap:38px}
 .kh-wisdom-founder__portrait,.kh-wisdom-founder__portrait img{min-height:420px}
}
@media (max-width:767px){
 .kh-wisdom-hero__grid{grid-template-columns:1fr}.kh-wisdom-hero__copy{padding:54px 0 42px}.kh-wisdom-hero h1{font-size:clamp(3rem,14vw,4.6rem)}.kh-wisdom-hero__visual,.kh-wisdom-hero__visual img{min-height:360px}
 .kh-wisdom-principles{grid-template-columns:1fr}.kh-wisdom-botanical-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-wisdom-botanical{min-height:0}
 .kh-wisdom-tradition__grid,.kh-wisdom-founder__grid{grid-template-columns:1fr;gap:30px}.kh-wisdom-tradition__visual,.kh-wisdom-tradition__visual img{min-height:340px}.kh-wisdom-founder__portrait,.kh-wisdom-founder__portrait img{min-height:390px}
 .kh-wisdom-cta__inner{align-items:flex-start;flex-direction:column}.kh-wisdom-cta .kh-actions{width:100%}
}
@media (max-width:520px){.kh-wisdom-botanical-grid{grid-template-columns:1fr}}

/* v1.1 Our Story */
.kh-story-page{background:var(--kh-ivory)}
.kh-story-page h1,.kh-story-page h2,.kh-story-page h3{color:var(--kh-green-950)}
.kh-story-page h1,.kh-story-page h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.kh-story-hero{background:linear-gradient(110deg,#F8F0E3 0%,#FCFAF6 52%,#E9EFE6 100%);overflow:hidden}
.kh-story-hero__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:stretch;min-height:620px}
.kh-story-hero__copy{padding:82px 62px 76px 0;display:flex;flex-direction:column;justify-content:center}
.kh-story-hero h1{margin:.5rem 0 1rem;max-width:760px;font-size:clamp(3.25rem,5.7vw,5.8rem);line-height:.98}
.kh-story-hero__copy>p{max-width:680px;margin:0;font-size:1.12rem;line-height:1.74}
.kh-story-hero__copy .kh-actions{margin-top:30px}
.kh-story-hero__portrait{margin:0;min-height:620px;overflow:hidden;background:#ede6dc}
.kh-story-hero__portrait img{width:100%;height:100%;min-height:620px;display:block;object-fit:cover;object-position:center 30%}
.kh-story-intro{background:#fff}
.kh-story-intro__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:74px;align-items:start}
.kh-story-intro h2{margin:.45rem 0 0;font-size:clamp(2.55rem,4vw,4.2rem);line-height:1.05}
.kh-story-intro__copy p{margin:0 0 1.15rem;font-size:1.05rem;line-height:1.78}
.kh-story-founder{background:linear-gradient(115deg,#F3EAD8,#FCFAF5)}
.kh-story-founder__grid{display:grid;grid-template-columns:minmax(0,.74fr) minmax(0,1.26fr);gap:62px;align-items:center}
.kh-story-founder__image{margin:0;min-height:540px;border-radius:18px;overflow:hidden;background:#fff;box-shadow:var(--kh-shadow)}
.kh-story-founder__image img{width:100%;height:100%;min-height:540px;display:block;object-fit:cover;object-position:center 25%}
.kh-story-founder__content h2{margin:.45rem 0 .8rem;font-size:clamp(2.7rem,4.6vw,4.7rem);line-height:1}
.kh-story-founder__lead{max-width:760px;color:var(--kh-green-950);font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;line-height:1.55}
.kh-story-founder__content blockquote{margin:22px 0;padding:0 0 0 22px;border-left:2px solid var(--kh-green-700);max-width:780px;color:var(--kh-green-950);font-family:Georgia,"Times New Roman",serif;font-size:1.22rem;font-style:italic;line-height:1.66}
.kh-story-founder__content>p:not(.kh-story-founder__lead){max-width:780px;line-height:1.74}
.kh-story-founder__identity{margin-top:22px}.kh-story-founder__identity strong,.kh-story-founder__identity span{display:block}.kh-story-founder__identity strong{color:var(--kh-green-950);font-size:1.05rem}.kh-story-founder__identity span{margin-top:3px;color:var(--kh-text);font-size:.92rem}
.kh-story-values{background:#fff}
.kh-story-centered-heading{max-width:820px;margin:0 auto 38px;text-align:center}
.kh-story-centered-heading h2{margin:.45rem 0 .7rem;font-size:clamp(2.35rem,3.8vw,3.8rem);line-height:1.05}
.kh-story-values__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.kh-story-values__grid article{padding:34px 30px;border:1px solid var(--kh-border);border-radius:15px;background:linear-gradient(180deg,#FCFAF6,#F6EFE3)}
.kh-story-values__grid article>span{display:block;margin-bottom:28px;color:var(--kh-gold);font-size:.78rem;font-weight:700;letter-spacing:.14em}
.kh-story-values__grid h3{margin:0 0 10px;font-family:Georgia,"Times New Roman",serif;font-size:1.65rem;line-height:1.18}
.kh-story-values__grid p{margin:0;line-height:1.68}
.kh-story-bridge{background:linear-gradient(180deg,#FCFAF6,#F8F2E7)}
.kh-story-bridge__grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:64px;align-items:center}
.kh-story-bridge__copy h2{margin:.45rem 0 1rem;font-size:clamp(2.55rem,4vw,4.1rem);line-height:1.04}
.kh-story-bridge__copy p{max-width:680px;line-height:1.76}
.kh-story-bridge__visual{margin:0;min-height:470px;border-radius:18px;overflow:hidden;background:var(--kh-cream);box-shadow:var(--kh-shadow)}
.kh-story-bridge__visual img{width:100%;height:100%;min-height:470px;display:block;object-fit:cover;object-position:70% center}
.kh-story-memory{padding:70px 20px;background:var(--kh-green-950);color:#fff;text-align:center}
.kh-story-memory__inner{max-width:950px}
.kh-story-memory__mark{display:block;color:#E4C077;font-family:Georgia,"Times New Roman",serif;font-size:4.5rem;line-height:.6}
.kh-story-memory blockquote{margin:18px auto 16px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.6vw,3.5rem);font-style:italic;line-height:1.18}
.kh-story-memory p{margin:0;color:rgba(255,255,255,.78)}
.kh-story-memory strong{color:#fff}
.kh-story-cta{padding:52px 0;background:linear-gradient(90deg,#E7EFE0,#F7F0E2);border-block:1px solid rgba(47,93,70,.14)}
.kh-story-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:42px}
.kh-story-cta h2{margin:.35rem 0 .5rem;max-width:760px;font-size:clamp(2rem,3.2vw,3.25rem);line-height:1.08}
.kh-story-cta p{margin:0;line-height:1.6}
.kh-story-cta .kh-actions{flex-shrink:0}
.kh-story-trust{margin-top:0}

@media (max-width:1024px){
 .kh-story-hero__grid{grid-template-columns:1fr 1fr;min-height:540px}.kh-story-hero__copy{padding:64px 34px 60px 0}.kh-story-hero__portrait,.kh-story-hero__portrait img{min-height:540px}
 .kh-story-intro__grid{gap:40px}.kh-story-founder__grid{gap:40px}.kh-story-founder__image,.kh-story-founder__image img{min-height:470px}.kh-story-bridge__grid{gap:40px}
}
@media (max-width:767px){
 .kh-story-hero__grid{grid-template-columns:1fr}.kh-story-hero__copy{padding:54px 0 42px}.kh-story-hero h1{font-size:clamp(2.8rem,13vw,4.4rem)}.kh-story-hero__portrait,.kh-story-hero__portrait img{min-height:430px}
 .kh-story-intro__grid,.kh-story-founder__grid,.kh-story-bridge__grid{grid-template-columns:1fr;gap:30px}.kh-story-founder__image,.kh-story-founder__image img{min-height:420px}.kh-story-values__grid{grid-template-columns:1fr}.kh-story-bridge__visual,.kh-story-bridge__visual img{min-height:350px}
 .kh-story-memory{padding:56px 18px}.kh-story-cta__inner{align-items:flex-start;flex-direction:column}.kh-story-cta .kh-actions{width:100%}
}

/* v1.2 Our Story refinement: calmer hierarchy, one founder portrait, stronger editorial rhythm */
.kh-story-page--refined .kh-story-hero__grid{min-height:560px}
.kh-story-page--refined .kh-story-hero__copy{padding:68px 64px 64px 0}
.kh-story-page--refined .kh-story-hero h1{max-width:650px;font-size:clamp(2.85rem,4.6vw,4.75rem);line-height:1.01}
.kh-story-page--refined .kh-story-hero__copy>p{max-width:620px;font-size:1.06rem;line-height:1.7}
.kh-story-page--refined .kh-story-hero__portrait,
.kh-story-page--refined .kh-story-hero__portrait img{min-height:560px}
.kh-story-page--refined .kh-story-intro h2{max-width:600px;font-size:clamp(2.25rem,3.35vw,3.45rem);line-height:1.07}
.kh-story-page--refined .kh-story-intro__copy p{font-size:1rem;line-height:1.74}

.kh-story-founder-note{background:linear-gradient(110deg,#F1E7D4,#FCF8F1 58%,#EEF2E8)}
.kh-story-founder-note__grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:72px;align-items:center}
.kh-story-founder-note__identity{padding:18px 0}
.kh-story-founder-note__identity h2{margin:.45rem 0 .25rem;font-size:clamp(2.35rem,3.7vw,3.7rem);line-height:1.04}
.kh-story-founder-note__role{margin:0;color:var(--kh-green-700);font-weight:700}
.kh-story-founder-note__rule{width:74px;height:2px;margin:26px 0;background:var(--kh-gold)}
.kh-story-founder-note__identity>p:last-child{max-width:470px;margin:0;line-height:1.72}
.kh-story-founder-note__quote{position:relative;padding:48px 52px 46px;border:1px solid rgba(30,47,39,.12);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:0 18px 44px rgba(30,47,39,.06)}
.kh-story-founder-note__mark{position:absolute;top:18px;left:26px;color:rgba(185,144,69,.34);font-family:Georgia,"Times New Roman",serif;font-size:5.8rem;line-height:1}
.kh-story-founder-note__quote blockquote{position:relative;margin:0;color:var(--kh-green-950);font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.55rem,2.35vw,2.25rem);font-style:italic;line-height:1.42}
.kh-story-founder-note__quote p{margin:22px 0 0;padding-top:20px;border-top:1px solid var(--kh-border);line-height:1.7}

.kh-story-page--refined .kh-story-centered-heading{max-width:720px;margin-bottom:32px}
.kh-story-page--refined .kh-story-centered-heading h2{font-size:clamp(2.1rem,3.15vw,3.2rem)}
.kh-story-page--refined .kh-story-values__grid article{padding:30px 28px}
.kh-story-page--refined .kh-story-values__grid article>span{margin-bottom:22px}
.kh-story-page--refined .kh-story-values__grid h3{font-size:1.45rem}

.kh-story-page--refined .kh-story-bridge__grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:56px}
.kh-story-page--refined .kh-story-bridge__copy h2{max-width:540px;font-size:clamp(2.25rem,3.35vw,3.45rem);line-height:1.06}
.kh-story-page--refined .kh-story-bridge__visual,
.kh-story-page--refined .kh-story-bridge__visual img{min-height:430px}

.kh-story-page--refined .kh-story-memory{padding:58px 20px}
.kh-story-memory__eyebrow{display:block;margin-bottom:16px;color:#E4C077;font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.kh-story-page--refined .kh-story-memory blockquote{max-width:800px;margin:0 auto 16px;font-size:clamp(1.85rem,2.95vw,2.85rem);line-height:1.2}
.kh-story-page--refined .kh-story-cta h2{font-size:clamp(1.95rem,2.8vw,2.85rem)}

@media (max-width:1024px){
 .kh-story-page--refined .kh-story-hero__grid{min-height:500px}
 .kh-story-page--refined .kh-story-hero__copy{padding:56px 32px 54px 0}
 .kh-story-page--refined .kh-story-hero__portrait,.kh-story-page--refined .kh-story-hero__portrait img{min-height:500px}
 .kh-story-founder-note__grid{gap:42px}
 .kh-story-founder-note__quote{padding:42px 38px}
}
@media (max-width:767px){
 .kh-story-page--refined .kh-story-hero__grid{min-height:auto}
 .kh-story-page--refined .kh-story-hero__copy{padding:48px 0 38px}
 .kh-story-page--refined .kh-story-hero h1{font-size:clamp(2.55rem,11.5vw,3.75rem)}
 .kh-story-page--refined .kh-story-hero__portrait,.kh-story-page--refined .kh-story-hero__portrait img{min-height:410px}
 .kh-story-founder-note__grid{grid-template-columns:1fr;gap:28px}
 .kh-story-founder-note__quote{padding:38px 28px}
 .kh-story-founder-note__quote blockquote{font-size:1.55rem}
 .kh-story-page--refined .kh-story-bridge__visual,.kh-story-page--refined .kh-story-bridge__visual img{min-height:330px}
}

/* v1.4 — Footer heading contrast fix across all coded templates.
   Page-level H3 rules are intentionally broad; this final override ensures
   footer column labels remain legible on the dark-green footer. */
body.kh-coded-page .kh-home-footer h3,
.kh-home-footer .kh-home-footer__nav > h3,
.kh-home-footer .kh-home-footer__contact > h3 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff;
    opacity: 1 !important;
}

/* v1.5 Contact */
.kh-contact-page{background:var(--kh-ivory)}
.kh-contact-page h1,.kh-contact-page h2,.kh-contact-page h3{color:var(--kh-green-950)}
.kh-contact-page h1,.kh-contact-page h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.kh-contact-hero{padding:82px 0 78px;background:linear-gradient(110deg,#F8F0E3 0%,#FCFAF6 58%,#E9EFE6 100%);border-bottom:1px solid var(--kh-border)}
.kh-contact-hero__inner{max-width:850px;text-align:center}
.kh-contact-hero h1{margin:.5rem auto .9rem;font-size:clamp(2.8rem,5vw,5rem);line-height:1.02}
.kh-contact-hero p{max-width:720px;margin:0 auto;font-size:1.08rem;line-height:1.72}
.kh-contact-main{background:#fff}
.kh-contact-main__grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:76px;align-items:start}
.kh-contact-details h2,.kh-contact-form-wrap h2{margin:.45rem 0 .75rem;font-size:clamp(2.25rem,3.4vw,3.45rem);line-height:1.05}
.kh-contact-details__intro{max-width:540px;margin:0 0 30px;line-height:1.72}
.kh-contact-card{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:24px 0;border-top:1px solid var(--kh-border)}
.kh-contact-card:last-of-type{border-bottom:1px solid var(--kh-border)}
.kh-contact-card__number{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(47,93,70,.24);border-radius:50%;color:var(--kh-green-700);font-size:.72rem;font-weight:700}
.kh-contact-card h3{margin:0 0 6px;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem}
.kh-contact-card p{margin:0;line-height:1.62}.kh-contact-card a:not(.kh-text-link){color:var(--kh-green-950)}
.kh-contact-note{margin-top:34px;padding:26px 28px;border-radius:14px;background:linear-gradient(120deg,#EEF2E8,#F7EFE1);border:1px solid rgba(47,93,70,.1)}
.kh-contact-note p{margin:10px 0 14px;line-height:1.7}
.kh-contact-form-wrap{padding:42px 44px;border:1px solid var(--kh-border);border-radius:18px;background:linear-gradient(180deg,#FCFAF6,#F7F0E5);box-shadow:var(--kh-shadow)}
.kh-contact-form{margin-top:26px}.kh-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.kh-field{margin-bottom:18px}.kh-field label{display:block;margin-bottom:7px;color:var(--kh-green-950);font-weight:700}
.kh-field input,.kh-field select,.kh-field textarea{width:100%;border:1px solid rgba(30,47,39,.2);border-radius:6px;background:#fff;color:var(--kh-green-950);font:inherit;line-height:1.45;outline:none;transition:border-color .2s ease,box-shadow .2s ease}
.kh-field input,.kh-field select{min-height:48px;padding:10px 13px}.kh-field textarea{padding:13px;resize:vertical;min-height:160px}
.kh-field input:focus,.kh-field select:focus,.kh-field textarea:focus{border-color:var(--kh-green-700);box-shadow:0 0 0 3px rgba(47,93,70,.1)}
.kh-contact-consent{display:flex;align-items:flex-start;gap:10px;margin:2px 0 22px;font-size:.88rem;line-height:1.55}.kh-contact-consent input{margin-top:4px}
.kh-contact-form__honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.kh-form-status{margin:18px 0 22px;padding:14px 16px;border-radius:7px;line-height:1.55}.kh-form-status strong{display:block;margin-bottom:2px}.kh-form-status--success{background:#EAF3EA;border:1px solid rgba(47,93,70,.2);color:var(--kh-green-950)}.kh-form-status--error{background:#F8EDE8;border:1px solid rgba(139,72,50,.2);color:#713F2F}
.kh-contact-help{padding:62px 0;background:linear-gradient(90deg,#EDF1E7,#F8F1E5);border-block:1px solid var(--kh-border)}
.kh-contact-help__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.kh-contact-help article{padding:30px 28px;border:1px solid rgba(30,47,39,.12);border-radius:14px;background:rgba(255,255,255,.58)}
.kh-contact-help__icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:22px;border:1px solid rgba(47,93,70,.25);border-radius:50%;color:var(--kh-green-700);font-size:1.3rem}
.kh-contact-help h3{margin:0 0 8px;font-family:Georgia,"Times New Roman",serif;font-size:1.5rem}.kh-contact-help p{margin:0 0 14px;line-height:1.68}
.kh-contact-trust{margin-top:0}
@media (max-width:1024px){.kh-contact-main__grid{gap:42px}.kh-contact-form-wrap{padding:36px 32px}}
@media (max-width:767px){.kh-contact-hero{padding:58px 0 54px}.kh-contact-main__grid{grid-template-columns:1fr;gap:42px}.kh-contact-form-wrap{padding:30px 24px}.kh-form-row{grid-template-columns:1fr;gap:0}.kh-contact-help__grid{grid-template-columns:1fr}.kh-contact-help{padding:48px 0}}

/* Cart page — v1.6 */
.kh-cart-page{background:var(--kh-ivory)}
.kh-cart-page h1,.kh-cart-page h2,.kh-cart-page h3{color:var(--kh-green-950)}
.kh-cart-page h1,.kh-cart-page h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
.kh-cart-hero{padding:72px 0 68px;background:linear-gradient(112deg,#F8F0E3 0%,#FCFAF6 62%,#EAF0E7 100%);border-bottom:1px solid var(--kh-border)}
.kh-cart-hero__inner{max-width:820px;text-align:center}
.kh-cart-hero h1{margin:.45rem 0 .75rem;font-size:clamp(2.7rem,4.8vw,4.65rem);line-height:1.02}
.kh-cart-hero p{max-width:640px;margin:0 auto;font-size:1.05rem;line-height:1.7}
.kh-cart-main{background:#fff}
.kh-cart-shell{max-width:1120px;margin:0 auto}

/* WooCommerce Cart block */
.kh-cart-shell .wc-block-cart{margin:0!important;gap:34px}
.kh-cart-shell .wc-block-cart-items{border-collapse:separate!important;border-spacing:0 14px!important}
.kh-cart-shell .wc-block-cart-items thead{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--kh-green-700)}
.kh-cart-shell .wc-block-cart-items .wc-block-cart-items__row{background:#fff}
.kh-cart-shell .wc-block-cart-items .wc-block-cart-items__row td{padding-top:22px!important;padding-bottom:22px!important;border-top:1px solid var(--kh-border)!important;border-bottom:1px solid var(--kh-border)!important}
.kh-cart-shell .wc-block-cart-items .wc-block-cart-items__row td:first-child{padding-left:20px!important;border-left:1px solid var(--kh-border)!important;border-radius:14px 0 0 14px}
.kh-cart-shell .wc-block-cart-items .wc-block-cart-items__row td:last-child{padding-right:20px!important;border-right:1px solid var(--kh-border)!important;border-radius:0 14px 14px 0}
.kh-cart-shell .wc-block-cart-item__image img{border-radius:10px;background:var(--kh-cream)}
.kh-cart-shell .wc-block-components-product-name{font-family:Georgia,"Times New Roman",serif!important;font-size:1.16rem!important;font-weight:700!important;color:var(--kh-green-950)!important;text-decoration:none!important}
.kh-cart-shell .wc-block-components-product-price,.kh-cart-shell .wc-block-formatted-money-amount{color:var(--kh-green-950);font-weight:700}
.kh-cart-shell .wc-block-components-quantity-selector{border-color:rgba(47,93,70,.24)!important;border-radius:5px!important}
.kh-cart-shell .wc-block-cart-item__remove-link{color:var(--kh-text)!important;text-decoration:underline;text-underline-offset:3px}
.kh-cart-shell .wc-block-components-sidebar{padding:0!important}
.kh-cart-shell .wc-block-cart__sidebar{background:linear-gradient(180deg,#FCFAF6,#F6EFE3);border:1px solid var(--kh-border);border-radius:16px;padding:28px!important;align-self:start}
.kh-cart-shell .wc-block-cart__totals-title{font-family:Georgia,"Times New Roman",serif!important;font-size:1.65rem!important;font-weight:700!important;text-transform:none!important;letter-spacing:-.02em!important;color:var(--kh-green-950)!important}
.kh-cart-shell .wc-block-components-totals-wrapper{border-color:var(--kh-border)!important}
.kh-cart-shell .wc-block-components-totals-item__label{color:var(--kh-text)}
.kh-cart-shell .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.kh-cart-shell .wc-block-components-totals-footer-item .wc-block-formatted-money-amount{color:var(--kh-green-950)!important;font-weight:800!important}
.kh-cart-shell .wc-block-cart__submit-button{min-height:50px!important;border-radius:4px!important;background:var(--kh-green-700)!important;color:#fff!important;font-weight:700!important;text-decoration:none!important;box-shadow:none!important}
.kh-cart-shell .wc-block-cart__submit-button:hover{background:var(--kh-green-900)!important;color:#fff!important}
.kh-cart-shell .wc-block-components-totals-coupon__button{border-color:var(--kh-green-700)!important;color:var(--kh-green-700)!important;border-radius:4px!important}
.kh-cart-shell .wc-block-components-text-input input,
.kh-cart-shell .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input{border-color:rgba(47,93,70,.25)!important;border-radius:5px!important;background:#fff!important}
.kh-cart-shell .wc-block-cart__empty-cart__title{font-family:Georgia,"Times New Roman",serif!important;color:var(--kh-green-950);font-size:clamp(2rem,3vw,3rem)!important}

/* Classic WooCommerce cart fallback */
.kh-cart-shell .woocommerce-cart-form,.kh-cart-shell .cart_totals{color:var(--kh-text)}
.kh-cart-shell table.shop_table{border:1px solid var(--kh-border)!important;border-radius:14px!important;border-collapse:separate!important;overflow:hidden;background:#fff}
.kh-cart-shell table.shop_table th{color:var(--kh-green-950);font-weight:700;background:#F8F3E9}
.kh-cart-shell table.shop_table td,.kh-cart-shell table.shop_table th{padding:18px!important;border-color:var(--kh-border)!important}
.kh-cart-shell table.shop_table img{width:90px!important;border-radius:9px}
.kh-cart-shell .product-name a{color:var(--kh-green-950);font-weight:700;text-decoration:none}
.kh-cart-shell .quantity .qty{min-height:42px;border:1px solid rgba(47,93,70,.24);border-radius:4px}
.kh-cart-shell .actions .coupon{display:flex;gap:8px}
.kh-cart-shell .actions .coupon input{min-height:44px;border:1px solid rgba(47,93,70,.24);border-radius:4px;padding:8px 12px}
.kh-cart-shell button.button,.kh-cart-shell a.button{border-radius:4px!important}
.kh-cart-shell .cart_totals{padding:28px;border:1px solid var(--kh-border);border-radius:16px;background:linear-gradient(180deg,#FCFAF6,#F6EFE3)}
.kh-cart-shell .cart_totals h2{font-size:1.7rem;margin-top:0}
.kh-cart-shell .wc-proceed-to-checkout a.checkout-button{background:var(--kh-green-700)!important;color:#fff!important;font-size:1rem!important;font-weight:700!important;padding:15px 22px!important}
.kh-cart-shell .wc-proceed-to-checkout a.checkout-button:hover{background:var(--kh-green-900)!important}

.kh-cart-after{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:64px;padding:34px 38px;border:1px solid var(--kh-border);border-radius:16px;background:linear-gradient(100deg,#EEF2E8,#FAF3E8)}
.kh-cart-after h2{margin:.35rem 0 .55rem;font-size:clamp(1.75rem,2.7vw,2.65rem);line-height:1.08}
.kh-cart-after p{max-width:650px;margin:0;line-height:1.7}
.kh-cart-trust{margin-top:0}

@media (max-width:900px){
  .kh-cart-shell .wc-block-cart{display:block!important}
  .kh-cart-shell .wc-block-cart__sidebar{margin-top:30px}
  .kh-cart-after{align-items:flex-start;flex-direction:column}
}
@media (max-width:767px){
  .kh-cart-hero{padding:54px 0 50px}
  .kh-cart-main{padding-block:46px}
  .kh-cart-shell .wc-block-cart-items .wc-block-cart-items__row td:first-child{padding-left:10px!important}
  .kh-cart-shell .wc-block-cart-items .wc-block-cart-items__row td:last-child{padding-right:10px!important}
  .kh-cart-shell .wc-block-cart__sidebar{padding:22px!important}
  .kh-cart-after{margin-top:44px;padding:28px 24px}
  .kh-cart-after .kh-actions{width:100%}
  .kh-cart-after .kh-btn{width:100%}
}

/* Cart refinement — v1.7 */
.kh-cart-page--refined{background:#fff}
.kh-cart-heading{padding:42px 0 26px;background:linear-gradient(180deg,#FCFAF6,#fff)}
.kh-cart-heading__inner{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}
.kh-cart-heading h1{margin:0 0 8px;font-size:clamp(2.45rem,4vw,4rem);line-height:1;color:var(--kh-green-950);font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em}
.kh-cart-breadcrumb{display:flex;align-items:center;gap:10px;color:var(--kh-text);font-size:.92rem}
.kh-cart-breadcrumb a{color:var(--kh-text);text-decoration:none}.kh-cart-breadcrumb a:hover{color:var(--kh-green-700)}
.kh-cart-count{margin-left:7px;padding:4px 9px;border-radius:999px;background:#EEF2E8;color:var(--kh-green-700);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.kh-cart-continue{color:var(--kh-green-700);font-weight:700;text-decoration:none}.kh-cart-continue:hover{color:var(--kh-green-950)}
.kh-cart-main--refined{padding:24px 0 72px;background:#fff}
.kh-cart-shell--classic{max-width:none;margin:0}

/* Force the reliable classic WooCommerce cart into a premium 2-column layout. */
.kh-cart-shell--classic>.woocommerce{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(330px,.72fr);gap:34px;align-items:start}
.kh-cart-shell--classic>.woocommerce>.woocommerce-notices-wrapper,
.kh-cart-shell--classic>.woocommerce>.woocommerce-info,
.kh-cart-shell--classic>.woocommerce>.woocommerce-message,
.kh-cart-shell--classic>.woocommerce>.cart-empty,
.kh-cart-shell--classic>.woocommerce>.return-to-shop{grid-column:1/-1}
.kh-cart-shell--classic .woocommerce-cart-form{grid-column:1;grid-row:2;margin:0!important}
.kh-cart-shell--classic .cart-collaterals{grid-column:2;grid-row:2;width:auto!important;margin:0!important}
.kh-cart-shell--classic .cart-collaterals .cart_totals{float:none!important;width:100%!important;margin:0!important}

.kh-cart-shell--classic table.shop_table{width:100%;margin:0!important;border:1px solid var(--kh-border)!important;border-radius:14px!important;border-collapse:separate!important;border-spacing:0!important;overflow:hidden;background:#fff}
.kh-cart-shell--classic table.shop_table thead th{padding:15px 18px!important;background:linear-gradient(180deg,#FBF7EF,#F7F1E7)!important;color:var(--kh-green-700)!important;font-size:.74rem!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid var(--kh-border)!important}
.kh-cart-shell--classic table.shop_table tbody td{padding:20px 18px!important;vertical-align:middle!important;border-top:0!important;border-bottom:1px solid var(--kh-border)!important;background:#fff}
.kh-cart-shell--classic table.shop_table tbody tr:last-child td{border-bottom:0!important}
.kh-cart-shell--classic td.product-thumbnail{width:104px}.kh-cart-shell--classic td.product-thumbnail img{width:82px!important;height:82px!important;object-fit:cover;border-radius:10px;background:var(--kh-cream)}
.kh-cart-product-placeholder{display:grid;width:82px;height:82px;place-items:center;padding:8px;border-radius:10px;background:linear-gradient(145deg,#F7F0E4,#FBF9F4)}
.kh-cart-product-placeholder img{width:64px!important;height:64px!important;object-fit:contain!important;border-radius:0!important;background:transparent!important}
.kh-cart-shell--classic td.product-name{min-width:230px}.kh-cart-shell--classic td.product-name a{display:block;color:var(--kh-green-950)!important;font-family:Georgia,"Times New Roman",serif;font-size:1.12rem;font-weight:700;line-height:1.25;text-decoration:none}
.kh-cart-shell--classic td.product-name a:hover{color:var(--kh-green-700)!important}
.kh-cart-shell--classic td.product-price,.kh-cart-shell--classic td.product-subtotal{white-space:nowrap;color:var(--kh-green-950);font-weight:700}
.kh-cart-shell--classic td.product-remove{width:42px;text-align:center}.kh-cart-shell--classic td.product-remove a.remove{display:grid!important;width:30px!important;height:30px!important;place-items:center;margin:auto;color:var(--kh-text)!important;font-size:1.25rem!important;line-height:1!important;border:1px solid transparent;border-radius:50%}.kh-cart-shell--classic td.product-remove a.remove:hover{background:#F7EEE7!important;border-color:#E7D7CB;color:#7A4936!important}
.kh-cart-shell--classic .quantity{display:inline-flex!important;align-items:center}.kh-cart-shell--classic .quantity .qty{width:68px!important;min-height:42px;border:1px solid rgba(47,93,70,.22)!important;border-radius:5px!important;background:#fff;color:var(--kh-green-950);text-align:center}
.kh-cart-shell--classic .actions{padding:16px 18px!important;background:#FCFAF6!important}.kh-cart-shell--classic .actions .coupon{display:flex!important;align-items:center;gap:8px;float:left}.kh-cart-shell--classic .actions .coupon input{width:150px!important;min-height:42px!important;padding:8px 11px!important;border:1px solid rgba(47,93,70,.22)!important;border-radius:5px!important;background:#fff!important}.kh-cart-shell--classic .actions button.button{min-height:42px;padding:10px 16px!important;border:1px solid var(--kh-green-700)!important;border-radius:4px!important;background:#fff!important;color:var(--kh-green-700)!important;font-weight:700!important}.kh-cart-shell--classic .actions button.button:hover{background:#EEF2E8!important}

.kh-cart-shipping-progress{display:grid;grid-template-columns:minmax(220px,1.05fr) minmax(180px,1.1fr) auto;align-items:center;gap:18px;margin-top:14px;padding:15px 18px;border:1px solid rgba(47,93,70,.12);border-radius:10px;background:linear-gradient(90deg,#FAF4E9,#F4F2E8)}
.kh-cart-shipping-progress__copy{display:flex;align-items:center;gap:10px;color:var(--kh-green-950);font-size:.88rem}.kh-cart-shipping-progress__icon{font-size:1.3rem;color:var(--kh-green-700)}
.kh-cart-shipping-progress__meter{height:6px;overflow:hidden;border-radius:999px;background:#E5E2D7}.kh-cart-shipping-progress__meter span{display:block;height:100%;border-radius:inherit;background:var(--kh-green-700)}
.kh-cart-shipping-progress>strong{white-space:nowrap;color:var(--kh-green-950);font-size:.88rem}

.kh-cart-shell--classic .cart_totals{padding:26px 28px 22px!important;border:1px solid var(--kh-border)!important;border-radius:14px!important;background:linear-gradient(180deg,#FCFAF6,#F7F0E5)!important;box-shadow:0 14px 36px rgba(30,47,39,.05)}
.kh-cart-shell--classic .cart_totals h2{margin:0 0 14px!important;padding-bottom:14px;border-bottom:1px solid var(--kh-border);font-family:Georgia,"Times New Roman",serif;font-size:1.45rem!important;letter-spacing:-.02em;color:var(--kh-green-950)!important}
.kh-cart-shell--classic .cart_totals table.shop_table{border:0!important;border-radius:0!important;background:transparent!important}.kh-cart-shell--classic .cart_totals table.shop_table th,.kh-cart-shell--classic .cart_totals table.shop_table td{padding:13px 0!important;background:transparent!important;border:0!important;border-bottom:1px solid var(--kh-border)!important;font-size:.95rem;text-transform:none;letter-spacing:0}.kh-cart-shell--classic .cart_totals table.shop_table th{width:52%;color:var(--kh-text)!important}.kh-cart-shell--classic .cart_totals table.shop_table td{text-align:right;color:var(--kh-green-950);font-weight:700}
.kh-cart-shell--classic .cart_totals .order-total th,.kh-cart-shell--classic .cart_totals .order-total td{padding-top:18px!important;border-bottom:0!important;color:var(--kh-green-950)!important;font-size:1.07rem!important}.kh-cart-shell--classic .cart_totals .order-total strong{font-size:1.28rem!important}
.kh-cart-shell--classic .wc-proceed-to-checkout{padding:16px 0 0!important}.kh-cart-shell--classic .wc-proceed-to-checkout a.checkout-button{margin:0!important;padding:15px 20px!important;border-radius:4px!important;background:var(--kh-green-700)!important;color:#fff!important;font-size:1rem!important;font-weight:800!important;text-align:center;box-shadow:none!important}.kh-cart-shell--classic .wc-proceed-to-checkout a.checkout-button:hover{background:var(--kh-green-900)!important}
.kh-cart-summary-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px;padding-top:18px;border-top:1px solid var(--kh-border)}
.kh-cart-summary-trust>div{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--kh-green-950);text-align:left}.kh-cart-summary-trust span{font-size:1.1rem;color:var(--kh-green-700)}.kh-cart-summary-trust small{font-size:.68rem;line-height:1.2}

.kh-cart-after--refined{margin-top:54px;padding:28px 32px;border-radius:14px}.kh-cart-after--refined h2{font-size:clamp(1.7rem,2.35vw,2.3rem)}

@media (max-width:1000px){
 .kh-cart-shell--classic>.woocommerce{grid-template-columns:minmax(0,1fr) 320px;gap:24px}
 .kh-cart-shell--classic table.shop_table thead th{padding-inline:12px!important}.kh-cart-shell--classic table.shop_table tbody td{padding-inline:12px!important}
 .kh-cart-shipping-progress{grid-template-columns:1fr;gap:10px}.kh-cart-shipping-progress>strong{text-align:right}
}
@media (max-width:820px){
 .kh-cart-heading{padding:34px 0 22px}.kh-cart-heading__inner{align-items:flex-start;flex-direction:column;gap:14px}.kh-cart-continue{font-size:.92rem}
 .kh-cart-shell--classic>.woocommerce{display:block}.kh-cart-shell--classic .cart-collaterals{margin-top:28px!important}.kh-cart-shell--classic .cart_totals{max-width:none}
 .kh-cart-shell--classic table.shop_table_responsive tr{display:grid!important;grid-template-columns:72px 1fr auto!important;gap:4px 12px;padding:18px 14px;border-bottom:1px solid var(--kh-border)}
 .kh-cart-shell--classic table.shop_table_responsive tr td{display:block!important;padding:3px 0!important;border:0!important;text-align:left!important}.kh-cart-shell--classic table.shop_table_responsive tr td::before{display:none!important}
 .kh-cart-shell--classic table.shop_table_responsive tr td.product-remove{grid-column:3;grid-row:1}.kh-cart-shell--classic table.shop_table_responsive tr td.product-thumbnail{grid-column:1;grid-row:1/5;width:auto}.kh-cart-shell--classic table.shop_table_responsive tr td.product-thumbnail img,.kh-cart-product-placeholder{width:68px!important;height:68px!important}.kh-cart-product-placeholder img{width:54px!important;height:54px!important}.kh-cart-shell--classic table.shop_table_responsive tr td.product-name{grid-column:2;grid-row:1;min-width:0}.kh-cart-shell--classic table.shop_table_responsive tr td.product-price{grid-column:2;grid-row:2}.kh-cart-shell--classic table.shop_table_responsive tr td.product-quantity{grid-column:2;grid-row:3}.kh-cart-shell--classic table.shop_table_responsive tr td.product-subtotal{grid-column:3;grid-row:3;align-self:center;text-align:right!important}
 .kh-cart-shell--classic .actions{display:flex!important;flex-direction:column;gap:10px}.kh-cart-shell--classic .actions .coupon{float:none;width:100%}.kh-cart-shell--classic .actions .coupon input{flex:1;width:auto!important}
}
@media (max-width:520px){
 .kh-cart-main--refined{padding-bottom:52px}.kh-cart-heading h1{font-size:2.55rem}.kh-cart-breadcrumb{flex-wrap:wrap}.kh-cart-count{margin-left:0}
 .kh-cart-shell--classic .cart_totals{padding:22px 20px!important}.kh-cart-summary-trust{grid-template-columns:1fr}.kh-cart-summary-trust>div{justify-content:flex-start}
 .kh-cart-after--refined{margin-top:38px;padding:24px 20px}.kh-cart-after--refined .kh-actions{width:100%}.kh-cart-after--refined .kh-btn{width:100%}
}

/* Cart page — premium rebuild v1.8 */
.kh-cart-page--premium{background:#fff}
.kh-cart-page--premium .kh-cart-heading{padding:46px 0 30px;background:linear-gradient(180deg,#FBF8F1 0%,#fff 100%);border-bottom:1px solid rgba(30,47,39,.08)}
.kh-cart-page--premium .kh-cart-heading__inner{align-items:flex-end}
.kh-cart-page--premium .kh-cart-heading h1{margin:.28rem 0 9px;font-size:clamp(2.65rem,4.2vw,4.1rem)}
.kh-cart-page--premium .kh-cart-main--premium{padding:52px 0 72px;background:#fff}
.kh-cart-commerce{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.72fr);gap:38px;align-items:start}
.kh-cart-products{min-width:0}
.kh-cart-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.kh-cart-section-head h2{margin:.28rem 0 0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.65rem,2.2vw,2.15rem);line-height:1.08;color:var(--kh-green-950)}
.kh-cart-section-count{padding:6px 10px;border-radius:999px;background:#EEF2E8;color:var(--kh-green-700);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.kh-cart-form{margin:0!important;width:100%!important;float:none!important}
.kh-cart-items{display:grid;gap:14px}
.kh-cart-item{position:relative;display:grid;grid-template-columns:118px minmax(0,1fr) minmax(270px,.7fr);gap:22px;align-items:center;padding:20px 22px 20px 20px;border:1px solid rgba(30,47,39,.13);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(30,47,39,.035)}
.kh-cart-item__media{width:118px;height:118px;border-radius:10px;overflow:hidden;background:linear-gradient(145deg,#F8F2E8,#FBF9F4)}
.kh-cart-item__media>a{display:block;width:100%;height:100%}
.kh-cart-item__image,.kh-cart-item__media img{display:block;width:100%!important;height:100%!important;object-fit:cover!important}
.kh-cart-product-placeholder{display:grid!important;width:100%!important;height:100%!important;place-items:center;padding:13px;border-radius:10px;background:linear-gradient(145deg,#F8F2E8,#FBF9F4)}
.kh-cart-product-placeholder img{width:82px!important;height:82px!important;object-fit:contain!important;background:transparent!important}
.kh-cart-item__content{min-width:0;padding-right:4px}
.kh-cart-item__category{margin-bottom:5px;font-size:.7rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--kh-green-700)}
.kh-cart-item__category a{color:inherit;text-decoration:none}
.kh-cart-item h3{margin:0 0 7px;font-family:Georgia,"Times New Roman",serif;font-size:1.28rem;line-height:1.18;color:var(--kh-green-950)}
.kh-cart-item h3 a{color:inherit;text-decoration:none}
.kh-cart-item__desc{margin:0;max-width:510px;color:var(--kh-text);font-size:.86rem;line-height:1.55}
.kh-cart-item .variation{margin:7px 0 0;font-size:.78rem}
.kh-cart-item .variation dt,.kh-cart-item .variation dd{display:inline;margin:0 5px 0 0}
.kh-cart-item__purchase{display:grid;grid-template-columns:.75fr 1fr .85fr;gap:14px;align-items:end;padding-left:20px;border-left:1px solid rgba(30,47,39,.1)}
.kh-cart-item__purchase small{display:block;margin-bottom:7px;color:#6F7A73;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.kh-cart-item__price strong,.kh-cart-item__subtotal strong{color:var(--kh-green-950);font-size:.94rem;white-space:nowrap}
.kh-cart-item__mobile-price{display:none;color:var(--kh-green-950);font-weight:800}
.kh-qty-control{display:inline-flex;align-items:center;height:40px;border:1px solid rgba(47,93,70,.2);border-radius:6px;background:#fff;overflow:hidden}
.kh-qty-control .quantity{display:block!important;margin:0!important}
.kh-qty-control .qty{width:42px!important;height:38px!important;min-height:38px!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;color:var(--kh-green-950)!important;text-align:center!important;box-shadow:none!important;-moz-appearance:textfield}
.kh-qty-control .qty::-webkit-inner-spin-button,.kh-qty-control .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.kh-qty-btn{width:34px;height:38px;padding:0;border:0;background:#FAF8F3;color:var(--kh-green-700);font-size:1.15rem;line-height:1;cursor:pointer}
.kh-qty-btn:hover{background:#EEF2E8;color:var(--kh-green-950)}
.kh-cart-item__remove{position:absolute;right:12px;top:10px;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;color:#7B817D!important;text-decoration:none!important;font-size:1.25rem;line-height:1}
.kh-cart-item__remove:hover{background:#F7ECE6;color:#744936!important}
.kh-cart-form-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:18px;padding:18px 20px;border:1px solid rgba(30,47,39,.1);border-radius:12px;background:#FCFAF6}
.kh-cart-coupon label{display:block;margin-bottom:7px;color:var(--kh-green-950);font-size:.78rem;font-weight:800}
.kh-cart-coupon>div{display:flex;gap:8px}
.kh-cart-coupon input{width:170px;height:42px;padding:8px 11px;border:1px solid rgba(47,93,70,.2);border-radius:5px;background:#fff;font:inherit}
.kh-cart-action-btn,.kh-cart-update{height:42px;padding:0 16px;border:1px solid var(--kh-green-700);border-radius:4px;background:#fff;color:var(--kh-green-700);font-size:.86rem;font-weight:800;cursor:pointer}
.kh-cart-action-btn:hover,.kh-cart-update:hover{background:#EEF2E8}
.kh-cart-update:disabled{opacity:.45;cursor:not-allowed}

.kh-cart-summary-panel{position:sticky;top:118px;padding:25px 26px 24px;border:1px solid rgba(30,47,39,.14);border-radius:16px;background:linear-gradient(180deg,#FCFAF6,#F7F0E5);box-shadow:0 18px 44px rgba(30,47,39,.07)}
.kh-cart-summary-panel__head{padding-bottom:17px;border-bottom:1px solid var(--kh-border)}
.kh-cart-summary-panel__head h2{margin:.25rem 0 0;font-family:Georgia,"Times New Roman",serif;font-size:1.72rem;line-height:1.05;color:var(--kh-green-950)}
.kh-cart-progress{margin:18px 0 8px;padding:16px;border:1px solid rgba(47,93,70,.13);border-radius:10px;background:rgba(255,255,255,.62)}
.kh-cart-progress__top{display:flex;align-items:flex-start;gap:10px}.kh-cart-progress__icon{color:var(--kh-green-700);font-size:1.25rem;line-height:1.1}
.kh-cart-progress__top strong,.kh-cart-progress__top small{display:block}.kh-cart-progress__top strong{color:var(--kh-green-950);font-size:.84rem}.kh-cart-progress__top small{margin-top:2px;color:var(--kh-text);font-size:.7rem;line-height:1.45}
.kh-cart-progress__bar{height:6px;margin-top:13px;border-radius:999px;background:#E5E2D7;overflow:hidden}.kh-cart-progress__bar span{display:block;height:100%;border-radius:inherit;background:var(--kh-green-700)}
.kh-cart-progress__amounts{display:flex;justify-content:space-between;margin-top:5px;color:#718078;font-size:.66rem}
.kh-cart-native-totals .cart_totals{float:none!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.kh-cart-native-totals .cart_totals h2{display:none!important}
.kh-cart-native-totals .cart_totals table.shop_table{width:100%!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;border-collapse:collapse!important}
.kh-cart-native-totals .cart_totals table.shop_table th,.kh-cart-native-totals .cart_totals table.shop_table td{padding:12px 0!important;border:0!important;border-bottom:1px solid rgba(30,47,39,.11)!important;background:transparent!important;font-size:.88rem!important;line-height:1.45;text-transform:none!important;letter-spacing:0!important}
.kh-cart-native-totals .cart_totals table.shop_table th{width:42%;color:var(--kh-text)!important;font-weight:600!important;text-align:left!important}
.kh-cart-native-totals .cart_totals table.shop_table td{color:var(--kh-green-950)!important;font-weight:700!important;text-align:right!important}
.kh-cart-native-totals .woocommerce-shipping-totals td{text-align:left!important}
.kh-cart-native-totals .woocommerce-shipping-methods{margin:0!important;padding:0!important;list-style:none!important}
.kh-cart-native-totals .woocommerce-shipping-methods li{margin:0 0 7px!important;font-size:.79rem;line-height:1.4}
.kh-cart-native-totals .woocommerce-shipping-methods label{font-weight:700;color:var(--kh-green-950)}
.kh-cart-native-totals .woocommerce-shipping-destination,.kh-cart-native-totals .woocommerce-shipping-calculator{font-size:.76rem;line-height:1.5}
.kh-cart-native-totals .order-total th,.kh-cart-native-totals .order-total td{padding-top:18px!important;border-bottom:0!important;color:var(--kh-green-950)!important;font-size:1rem!important}
.kh-cart-native-totals .order-total strong{font-size:1.28rem!important}
.kh-cart-native-totals .includes_tax{display:block;margin-top:3px;color:#79857E;font-size:.68rem;font-weight:400}
.kh-cart-native-totals .wc-proceed-to-checkout{padding:18px 0 0!important;margin:0!important}
.kh-cart-native-totals .wc-proceed-to-checkout a.checkout-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:50px!important;margin:0!important;padding:13px 18px!important;border:0!important;border-radius:5px!important;background:var(--kh-green-700)!important;color:#fff!important;font-size:.94rem!important;font-weight:800!important;text-decoration:none!important;box-shadow:none!important}
.kh-cart-native-totals .wc-proceed-to-checkout a.checkout-button:hover{background:var(--kh-green-900)!important;color:#fff!important}
.kh-cart-summary-benefits{display:grid;gap:11px;margin-top:20px;padding-top:18px;border-top:1px solid var(--kh-border)}
.kh-cart-summary-benefits>div{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center;color:var(--kh-green-950)}
.kh-cart-summary-benefits>div>span{display:grid;width:28px;height:28px;place-items:center;border:1px solid rgba(47,93,70,.22);border-radius:50%;color:var(--kh-green-700)}
.kh-cart-summary-benefits strong,.kh-cart-summary-benefits small{display:block}.kh-cart-summary-benefits strong{font-size:.77rem}.kh-cart-summary-benefits small{margin-top:1px;color:var(--kh-text);font-size:.68rem;line-height:1.35}
.kh-cart-after--premium{margin-top:48px;padding:27px 30px;border-radius:14px}.kh-cart-after--premium h2{font-size:clamp(1.7rem,2.2vw,2.2rem)}
.kh-cart-empty{max-width:760px;margin:26px auto 40px;padding:54px 48px;border:1px solid var(--kh-border);border-radius:16px;background:linear-gradient(120deg,#FCFAF6,#F4F0E6);text-align:center}.kh-cart-empty h2{margin:.4rem 0 .7rem;font-family:Georgia,"Times New Roman",serif;font-size:2.15rem}.kh-cart-empty p{margin:0 auto 22px;max-width:540px}.kh-cart-empty .kh-actions{justify-content:center}

@media (max-width:1050px){
 .kh-cart-commerce{grid-template-columns:minmax(0,1fr) 330px;gap:24px}
 .kh-cart-item{grid-template-columns:100px minmax(0,1fr);gap:16px}
 .kh-cart-item__media{width:100px;height:100px}
 .kh-cart-item__purchase{grid-column:2;grid-template-columns:repeat(3,minmax(0,1fr));padding:13px 0 0;border-left:0;border-top:1px solid rgba(30,47,39,.1)}
 .kh-cart-item__desc{max-width:none}
}
@media (max-width:860px){
 .kh-cart-commerce{grid-template-columns:1fr;gap:28px}
 .kh-cart-summary-panel{position:static;top:auto}
 .kh-cart-summary-panel{max-width:none}
}
@media (max-width:620px){
 .kh-cart-page--premium .kh-cart-heading{padding:34px 0 24px}.kh-cart-page--premium .kh-cart-heading__inner{align-items:flex-start;flex-direction:column;gap:14px}.kh-cart-page--premium .kh-cart-heading h1{font-size:2.5rem}
 .kh-cart-page--premium .kh-cart-main--premium{padding:36px 0 52px}
 .kh-cart-section-head{align-items:flex-start}.kh-cart-section-head h2{font-size:1.65rem}
 .kh-cart-item{grid-template-columns:82px minmax(0,1fr);gap:14px;padding:16px}
 .kh-cart-item__media{width:82px;height:82px}.kh-cart-product-placeholder img{width:60px!important;height:60px!important}
 .kh-cart-item h3{font-size:1.08rem}.kh-cart-item__desc{display:none}.kh-cart-item__category{font-size:.62rem}.kh-cart-item__mobile-price{display:block;margin-top:8px}
 .kh-cart-item__purchase{grid-column:1/-1;grid-template-columns:1fr 1.25fr 1fr;gap:10px}.kh-cart-item__price{display:none}
 .kh-cart-item__remove{right:8px;top:7px}
 .kh-cart-form-actions{align-items:stretch;flex-direction:column}.kh-cart-coupon>div{width:100%}.kh-cart-coupon input{flex:1;width:auto}.kh-cart-update{width:100%}
 .kh-cart-summary-panel{padding:22px 20px}
 .kh-cart-after--premium{margin-top:36px;padding:23px 20px}.kh-cart-after--premium{align-items:flex-start;flex-direction:column}.kh-cart-after--premium .kh-actions,.kh-cart-after--premium .kh-btn{width:100%}
}


/* Cart polish v1.9 — professional hierarchy, notices and alignment */
.kh-cart-page--premium .woocommerce-notices-wrapper{margin:0 0 20px!important}
.kh-cart-page--premium .woocommerce-message,
.kh-cart-page--premium .woocommerce-info,
.kh-cart-page--premium .woocommerce-error{
  position:relative!important;
  margin:0 0 18px!important;
  padding:13px 16px 13px 46px!important;
  border:1px solid rgba(47,93,70,.18)!important;
  border-left:3px solid var(--kh-green-700)!important;
  border-radius:9px!important;
  background:#F5F7F1!important;
  color:var(--kh-green-950)!important;
  font-size:.84rem!important;
  line-height:1.45!important;
  box-shadow:none!important;
}
.kh-cart-page--premium .woocommerce-message::before,
.kh-cart-page--premium .woocommerce-info::before{
  content:"✓"!important;
  position:absolute!important;
  left:16px!important;
  top:50%!important;
  width:20px!important;
  height:20px!important;
  transform:translateY(-50%)!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(47,93,70,.28)!important;
  border-radius:50%!important;
  color:var(--kh-green-700)!important;
  font-size:.68rem!important;
  font-weight:800!important;
}
.kh-cart-page--premium .woocommerce-error{border-left-color:#9A5A49!important;background:#FBF3EF!important}
.kh-cart-page--premium .woocommerce-error::before{content:"!"!important;color:#9A5A49!important}
.kh-cart-form>h2,
.kh-cart-form>.cart-summary,
.kh-cart-form>.wc-block-cart__totals-title,
.kh-cart-items>h2{display:none!important}
.kh-cart-section-count{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:999px;background:#EEF2E8;color:var(--kh-green-700);font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.kh-cart-section-count small{font:inherit;opacity:.72;text-transform:none;letter-spacing:0}
.kh-cart-section-head{margin-bottom:14px}
.kh-cart-section-head h2{margin:.22rem 0 0!important;font-size:clamp(1.75rem,2.25vw,2.2rem)!important;line-height:1.05!important}
.kh-cart-item{padding:18px 20px!important;border-color:rgba(30,47,39,.12)!important;border-radius:13px!important;box-shadow:0 8px 24px rgba(30,47,39,.025)}
.kh-cart-item+.kh-cart-item{margin-top:12px}
.kh-cart-item__media{width:92px;height:92px}
.kh-cart-product-placeholder{width:92px;height:92px}
.kh-cart-product-placeholder img{width:72px!important;height:72px!important}
.kh-cart-item h3{font-size:1.18rem!important}
.kh-cart-item__desc{font-size:.82rem!important;line-height:1.48!important}
.kh-cart-item__purchase{min-width:255px}
.kh-cart-form-actions{margin-top:14px!important;padding:14px 16px!important;background:#FBFAF7!important}
.kh-cart-summary-panel{top:96px!important;padding:22px 22px 20px!important;border-radius:14px!important;box-shadow:0 16px 40px rgba(30,47,39,.06)!important}
.kh-cart-summary-panel__head{padding-bottom:14px!important}
.kh-cart-summary-panel__head h2{font-size:1.58rem!important}
.kh-cart-progress{margin:14px 0 5px!important;padding:13px!important}
.kh-cart-native-totals .cart_totals table.shop_table th,
.kh-cart-native-totals .cart_totals table.shop_table td{padding:10px 0!important;font-size:.82rem!important}
.kh-cart-native-totals .wc-proceed-to-checkout{padding-top:14px!important}
.kh-cart-summary-benefits{gap:8px;margin-top:14px;padding-top:14px}
.kh-cart-summary-benefits>div{grid-template-columns:24px 1fr;gap:8px}
.kh-cart-summary-benefits>div>span{width:24px;height:24px}
.kh-cart-after--premium{margin-top:40px!important;padding:24px 26px!important}
.kh-cart-after--premium h2{margin:.25rem 0 .35rem!important;font-size:clamp(1.55rem,2vw,1.95rem)!important}
.kh-cart-after--premium p{margin:0!important;font-size:.88rem!important}
@media (min-width:861px){
  .kh-cart-commerce{grid-template-columns:minmax(0,1fr) 350px!important;gap:30px!important}
}
@media (max-width:620px){
  .kh-cart-section-count{white-space:normal}
  .kh-cart-item{padding:15px!important}
  .kh-cart-item__media,.kh-cart-product-placeholder{width:76px;height:76px}
  .kh-cart-product-placeholder img{width:56px!important;height:56px!important}
}

/* =========================================================
   KHINTAWAN v2.0 — Premium WooCommerce Checkout
   ========================================================= */
.kh-checkout-page{background:#fff;color:var(--kh-text)}
.kh-checkout-heading{background:linear-gradient(100deg,#fbf7ef 0%,#f8f6ef 58%,#f0f5ee 100%);border-bottom:1px solid var(--kh-border)}
.kh-checkout-heading__inner{min-height:230px;display:flex;justify-content:space-between;gap:44px;align-items:center;padding-top:52px;padding-bottom:48px}
.kh-checkout-heading__copy h1{margin:6px 0 18px;color:var(--kh-green-950);font-family:var(--kh-heading);font-size:clamp(2.8rem,5vw,4.8rem);line-height:.96;letter-spacing:-.035em}
.kh-checkout-heading__aside{display:flex;flex-direction:column;align-items:flex-end;gap:12px;max-width:300px;text-align:right;color:var(--kh-text);font-size:.92rem}
.kh-checkout-heading__aside a{color:var(--kh-green-700);font-weight:750;text-decoration:none}
.kh-checkout-back{font-size:1rem}
.kh-checkout-steps{display:flex;align-items:center;gap:9px;color:#6d776f;font-size:.86rem}
.kh-checkout-steps a,.kh-checkout-steps strong,.kh-checkout-steps__last{display:flex;align-items:center;gap:7px;color:inherit;text-decoration:none;font-weight:650}
.kh-checkout-steps a:after,.kh-checkout-steps strong:after{content:'›';margin-left:4px;color:#a8aea8;font-weight:400}
.kh-checkout-steps strong{color:var(--kh-green-900)}
.kh-checkout-steps span>span,.kh-checkout-steps a>span,.kh-checkout-steps strong>span{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #cbd2cc;border-radius:50%;font-size:.7rem;line-height:1}
.kh-checkout-steps strong>span{background:var(--kh-green-700);border-color:var(--kh-green-700);color:#fff}
.kh-checkout-assurance{background:#fff;border-bottom:1px solid var(--kh-border)}
.kh-checkout-assurance__grid{display:grid;grid-template-columns:repeat(3,1fr)}
.kh-checkout-assurance__grid>div{display:flex;align-items:center;gap:12px;padding:18px 26px}
.kh-checkout-assurance__grid>div:not(:last-child){border-right:1px solid var(--kh-border)}
.kh-checkout-assurance__grid>div>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #b9c8bd;border-radius:50%;color:var(--kh-green-700);font-size:1.05rem;flex:0 0 auto}
.kh-checkout-assurance p{margin:0}.kh-checkout-assurance strong,.kh-checkout-assurance small{display:block}.kh-checkout-assurance strong{color:var(--kh-green-950);font-size:.9rem}.kh-checkout-assurance small{margin-top:2px;font-size:.72rem;line-height:1.35;color:#6d756f}
.kh-checkout-main{padding:60px 0 70px;background:#fff}
.kh-checkout-commerce{max-width:1180px}
.kh-checkout-commerce>.woocommerce{margin:0}

/* Notices and returning customer / coupon affordances */
.kh-checkout-commerce .woocommerce-notices-wrapper:empty{display:none}
.kh-checkout-commerce .woocommerce-error,.kh-checkout-commerce .woocommerce-info,.kh-checkout-commerce .woocommerce-message{margin:0 0 18px!important;padding:14px 18px 14px 48px!important;border:1px solid #cad8ce!important;border-top:1px solid #cad8ce!important;border-radius:6px!important;background:#f5f8f4!important;color:var(--kh-green-950)!important;font-size:.88rem!important;line-height:1.5!important;box-shadow:none!important}
.kh-checkout-commerce .woocommerce-error{border-color:#e2c7c0!important;background:#fff7f4!important;color:#6f352b!important}
.kh-checkout-commerce .woocommerce-form-login-toggle,.kh-checkout-commerce .woocommerce-form-coupon-toggle{margin-bottom:12px}
.kh-checkout-commerce .woocommerce-form-login-toggle .woocommerce-info,.kh-checkout-commerce .woocommerce-form-coupon-toggle .woocommerce-info{padding:13px 16px!important;background:#faf8f2!important;border-color:var(--kh-border)!important;color:var(--kh-text)!important}
.kh-checkout-commerce .woocommerce-form-login,.kh-checkout-commerce .checkout_coupon{margin:0 0 22px!important;padding:20px!important;border:1px solid var(--kh-border)!important;border-radius:8px!important;background:#fbfaf7!important}
.kh-checkout-commerce .checkout_coupon{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}
.kh-checkout-commerce .checkout_coupon p{margin:0!important}.kh-checkout-commerce .checkout_coupon .form-row-first,.kh-checkout-commerce .checkout_coupon .form-row-last{width:auto!important;float:none!important}
.kh-checkout-commerce .checkout_coupon button{min-height:46px;padding:10px 20px!important;border-radius:4px!important;background:transparent!important;border:1px solid var(--kh-green-700)!important;color:var(--kh-green-700)!important;font-weight:750!important}

/* Main classic checkout grid */
.kh-checkout-commerce form.checkout.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(350px,.72fr);grid-template-areas:"customer summary-title" "customer summary";gap:0 36px;align-items:start;margin-top:12px}
.kh-checkout-commerce #customer_details{grid-area:customer;display:block;width:auto;margin:0}
.kh-checkout-commerce #customer_details .col-1,.kh-checkout-commerce #customer_details .col-2{float:none!important;width:100%!important;margin:0!important}
.kh-checkout-commerce #order_review_heading{grid-area:summary-title;margin:0!important;padding:22px 24px 4px;border:1px solid #d8d8cf;border-bottom:0;border-radius:10px 10px 0 0;background:#faf6ed;color:var(--kh-green-950);font-family:var(--kh-heading);font-size:1.7rem;line-height:1.1}
.kh-checkout-commerce #order_review_heading:before{content:'REVIEW YOUR ORDER';display:block;margin-bottom:8px;color:var(--kh-green-700);font-family:var(--kh-body);font-size:.68rem;font-weight:800;letter-spacing:.16em}
.kh-checkout-commerce #order_review{grid-area:summary;position:sticky;top:22px;margin:0!important;padding:12px 24px 24px;border:1px solid #d8d8cf;border-top:0;border-radius:0 0 10px 10px;background:#faf6ed;box-shadow:0 14px 36px rgba(31,55,43,.06)}

/* Customer details cards */
.kh-checkout-commerce .woocommerce-billing-fields,.kh-checkout-commerce .woocommerce-shipping-fields,.kh-checkout-commerce .woocommerce-additional-fields{margin:0 0 20px;padding:28px 30px;border:1px solid #dde1dc;border-radius:10px;background:#fff;box-shadow:0 10px 30px rgba(31,55,43,.035)}
.kh-checkout-commerce .woocommerce-billing-fields>h3,.kh-checkout-commerce .woocommerce-shipping-fields>h3,.kh-checkout-commerce .woocommerce-additional-fields>h3{margin:0 0 22px;color:var(--kh-green-950);font-family:var(--kh-heading);font-size:1.7rem;line-height:1.15}
.kh-checkout-commerce .woocommerce-billing-fields>h3:before{content:'YOUR DETAILS';display:block;margin-bottom:7px;color:var(--kh-green-700);font-family:var(--kh-body);font-size:.65rem;font-weight:800;letter-spacing:.15em}
.kh-checkout-commerce .woocommerce-shipping-fields>h3{font-family:var(--kh-body);font-size:.96rem}
.kh-checkout-commerce .woocommerce-shipping-fields>h3 label{display:flex;align-items:center;gap:9px;margin:0}
.kh-checkout-commerce .woocommerce-additional-fields>h3:before{content:'OPTIONAL';display:block;margin-bottom:7px;color:var(--kh-green-700);font-family:var(--kh-body);font-size:.65rem;font-weight:800;letter-spacing:.15em}
.kh-checkout-commerce .woocommerce-billing-fields__field-wrapper,.kh-checkout-commerce .woocommerce-shipping-fields__field-wrapper{display:flex;flex-wrap:wrap;gap:0 14px}
.kh-checkout-commerce .form-row{margin:0 0 16px!important;padding:0!important;float:none!important;width:100%!important}
.kh-checkout-commerce .form-row-first,.kh-checkout-commerce .form-row-last{width:calc(50% - 7px)!important}
.kh-checkout-commerce .form-row label{margin:0 0 6px!important;color:#2f4438!important;font-size:.76rem!important;font-weight:800!important;line-height:1.3!important}
.kh-checkout-commerce .form-row label .required{color:#a7644d!important}
.kh-checkout-commerce .input-text,.kh-checkout-commerce input[type=text],.kh-checkout-commerce input[type=email],.kh-checkout-commerce input[type=tel],.kh-checkout-commerce textarea,.kh-checkout-commerce select,.kh-checkout-commerce .select2-selection{min-height:48px!important;width:100%!important;padding:10px 13px!important;border:1px solid #cdd5cf!important;border-radius:5px!important;background:#fff!important;color:#263a30!important;font-family:var(--kh-body)!important;font-size:.9rem!important;box-shadow:none!important;outline:none!important}
.kh-checkout-commerce textarea{min-height:110px!important;resize:vertical}
.kh-checkout-commerce .input-text:focus,.kh-checkout-commerce input:focus,.kh-checkout-commerce textarea:focus,.kh-checkout-commerce select:focus,.kh-checkout-commerce .select2-container--open .select2-selection{border-color:var(--kh-green-700)!important;box-shadow:0 0 0 2px rgba(47,93,70,.08)!important}
.kh-checkout-commerce .select2-container{width:100%!important}.kh-checkout-commerce .select2-selection{display:flex!important;align-items:center!important}.kh-checkout-commerce .select2-selection__rendered{padding-left:0!important;color:#263a30!important}.kh-checkout-commerce .select2-selection__arrow{height:46px!important}
.kh-checkout-commerce #ship-to-different-address-checkbox{width:17px;height:17px;accent-color:var(--kh-green-700)}

/* Review table */
.kh-checkout-commerce .woocommerce-checkout-review-order-table{margin:0!important;border:0!important;border-collapse:collapse!important;background:transparent!important}
.kh-checkout-commerce .woocommerce-checkout-review-order-table thead{display:none}
.kh-checkout-commerce .woocommerce-checkout-review-order-table tr{border-bottom:1px solid #deddd5}
.kh-checkout-commerce .woocommerce-checkout-review-order-table th,.kh-checkout-commerce .woocommerce-checkout-review-order-table td{padding:13px 0!important;border:0!important;background:transparent!important;color:#33483d!important;font-size:.82rem!important;vertical-align:middle!important}
.kh-checkout-commerce .woocommerce-checkout-review-order-table th{font-weight:750!important;text-align:left!important}
.kh-checkout-commerce .woocommerce-checkout-review-order-table td:last-child,.kh-checkout-commerce .woocommerce-checkout-review-order-table th:last-child{text-align:right!important}
.kh-checkout-commerce .woocommerce-checkout-review-order-table .cart_item .product-name{padding-right:14px!important}
.kh-checkout-commerce .woocommerce-checkout-review-order-table .product-total{font-weight:800!important;color:var(--kh-green-950)!important;white-space:nowrap}
.kh-checkout-product-line{display:flex;align-items:center;gap:10px}
.kh-checkout-product-thumb,.kh-checkout-product-placeholder{display:block;width:48px;height:48px;flex:0 0 48px;border-radius:6px;object-fit:cover;border:1px solid #e1e1d9;background:#fff}
.kh-checkout-product-placeholder{display:grid;place-items:center;padding:5px}.kh-checkout-product-placeholder img{width:100%;height:100%;object-fit:contain}
.kh-checkout-product-line__name{display:block;color:var(--kh-green-950);font-weight:750;line-height:1.3}
.kh-checkout-commerce .product-quantity{display:inline;color:#6c766f;font-weight:600}
.kh-checkout-commerce .cart-subtotal th,.kh-checkout-commerce .cart-subtotal td{padding-top:18px!important}
.kh-checkout-commerce .order-total th,.kh-checkout-commerce .order-total td{padding:18px 0!important;color:var(--kh-green-950)!important;font-size:1rem!important}
.kh-checkout-commerce .order-total .amount{font-size:1.45rem!important;font-weight:850!important}
.kh-checkout-commerce .woocommerce-shipping-methods{margin:0!important;padding:0!important;list-style:none!important}.kh-checkout-commerce .woocommerce-shipping-methods li{margin:0 0 7px!important}.kh-checkout-commerce .woocommerce-shipping-methods label{font-size:.78rem!important;font-weight:650!important}

/* Payment */
.kh-checkout-commerce #payment{margin:18px -8px -8px!important;padding:0 8px 8px!important;border-radius:8px!important;background:transparent!important}
.kh-checkout-commerce #payment ul.payment_methods{margin:0!important;padding:0!important;border:0!important;list-style:none!important}
.kh-checkout-commerce #payment ul.payment_methods>li{margin:0 0 9px!important;padding:13px!important;border:1px solid #d7ddd8!important;border-radius:6px!important;background:#fff!important}
.kh-checkout-commerce #payment ul.payment_methods>li>label{color:var(--kh-green-950)!important;font-size:.83rem!important;font-weight:800!important}
.kh-checkout-commerce #payment input[type=radio]{accent-color:var(--kh-green-700);margin-right:7px!important}
.kh-checkout-commerce #payment .payment_box{margin:10px -2px -2px!important;padding:11px 12px!important;background:#f4f6f2!important;color:#526158!important;font-size:.77rem!important;line-height:1.5!important}
.kh-checkout-commerce #payment .payment_box:before{border-bottom-color:#f4f6f2!important}
.kh-checkout-commerce #payment .place-order{margin:0!important;padding:15px 0 0!important}
.kh-checkout-commerce #payment .woocommerce-privacy-policy-text,.kh-checkout-commerce #payment .woocommerce-terms-and-conditions-wrapper{color:#657168!important;font-size:.73rem!important;line-height:1.5!important}
.kh-checkout-commerce #payment #place_order{float:none!important;width:100%!important;min-height:50px!important;margin:14px 0 0!important;padding:13px 18px!important;border:0!important;border-radius:5px!important;background:var(--kh-green-700)!important;color:#fff!important;font-size:.92rem!important;font-weight:850!important;line-height:1.2!important;text-align:center!important;box-shadow:none!important}
.kh-checkout-commerce #payment #place_order:hover{background:var(--kh-green-900)!important;color:#fff!important}
.kh-checkout-commerce #payment #place_order:after{content:'  →'}

.kh-checkout-bottom-note{padding:0 0 52px;background:#fff}.kh-checkout-bottom-note__inner{display:flex;align-items:flex-start;gap:14px;padding:20px 24px;border:1px solid #d9ded8;border-radius:8px;background:linear-gradient(100deg,#f4f7ef,#fbf6ec)}.kh-checkout-bottom-note__inner>span{color:var(--kh-green-700);font-size:1.35rem}.kh-checkout-bottom-note strong{display:block;color:var(--kh-green-950);font-family:var(--kh-heading);font-size:1.2rem}.kh-checkout-bottom-note p{margin:4px 0 0;color:#617068;font-size:.82rem}
.kh-checkout-trust{margin-top:0}

/* Thank-you / order-received endpoint: keep WooCommerce output clean until its dedicated page pass. */
.kh-checkout-page--received .kh-checkout-main{padding:70px 0}.kh-checkout-page--received .kh-checkout-commerce>.woocommerce{max-width:980px;margin:0 auto}.kh-checkout-page--received .woocommerce-order{padding:34px;border:1px solid var(--kh-border);border-radius:10px;background:#fff}

@media (max-width:1024px){
  .kh-checkout-heading__inner{min-height:200px;padding-top:42px;padding-bottom:40px}
  .kh-checkout-commerce form.checkout.woocommerce-checkout{grid-template-columns:minmax(0,1.25fr) minmax(310px,.8fr);gap:0 24px}
  .kh-checkout-commerce .woocommerce-billing-fields,.kh-checkout-commerce .woocommerce-shipping-fields,.kh-checkout-commerce .woocommerce-additional-fields{padding:24px}
  .kh-checkout-commerce #order_review_heading{padding-left:20px;padding-right:20px}.kh-checkout-commerce #order_review{padding-left:20px;padding-right:20px}
}
@media (max-width:820px){
  .kh-checkout-heading__inner{display:block;min-height:0;padding-top:38px;padding-bottom:36px}
  .kh-checkout-heading__aside{margin-top:22px;align-items:flex-start;text-align:left;max-width:none}
  .kh-checkout-assurance__grid{grid-template-columns:1fr}
  .kh-checkout-assurance__grid>div{padding:14px 20px}.kh-checkout-assurance__grid>div:not(:last-child){border-right:0;border-bottom:1px solid var(--kh-border)}
  .kh-checkout-main{padding:42px 0 52px}
  .kh-checkout-commerce form.checkout.woocommerce-checkout{display:block;margin-top:8px}
  .kh-checkout-commerce #order_review_heading{margin-top:24px!important;border-radius:10px 10px 0 0}
  .kh-checkout-commerce #order_review{position:static;border-radius:0 0 10px 10px}
}
@media (max-width:560px){
  .kh-checkout-heading__copy h1{font-size:2.7rem}
  .kh-checkout-steps{gap:5px;font-size:.72rem;flex-wrap:wrap}.kh-checkout-steps a:after,.kh-checkout-steps strong:after{margin-left:0}
  .kh-checkout-commerce .woocommerce-billing-fields,.kh-checkout-commerce .woocommerce-shipping-fields,.kh-checkout-commerce .woocommerce-additional-fields{padding:20px 17px;border-radius:7px}
  .kh-checkout-commerce .form-row-first,.kh-checkout-commerce .form-row-last{width:100%!important}
  .kh-checkout-commerce #order_review_heading{padding:20px 17px 4px;font-size:1.5rem}.kh-checkout-commerce #order_review{padding:10px 17px 20px}
  .kh-checkout-product-thumb,.kh-checkout-product-placeholder{width:42px;height:42px;flex-basis:42px}.kh-checkout-product-line{gap:8px}
  .kh-checkout-commerce .checkout_coupon{grid-template-columns:1fr}.kh-checkout-commerce .checkout_coupon button{width:100%}
  .kh-checkout-bottom-note{padding-bottom:38px}.kh-checkout-bottom-note__inner{padding:18px}
}

/* ========================================================================
   KHINTAWAN CHECKOUT v2.1 — professional conversion-focused refinement
   ======================================================================== */
@media (min-width: 821px){
  .kh-checkout-main{padding:48px 0 64px}
  .kh-checkout-commerce{max-width:1260px!important}
  .kh-checkout-commerce form.checkout.woocommerce-checkout{
    grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr)!important;
    gap:0 46px!important;
  }
  .kh-checkout-commerce #order_review{top:28px}
}

.kh-checkout-heading__inner{min-height:190px;padding-top:40px;padding-bottom:38px}
.kh-checkout-heading__copy h1{font-size:clamp(2.65rem,4.2vw,4.1rem);line-height:1;letter-spacing:-.03em;margin-bottom:15px}
.kh-checkout-heading__aside{max-width:330px}
.kh-checkout-assurance__grid>div{padding:15px 24px}

/* Left column: lighter, cleaner form cards */
.kh-checkout-commerce .woocommerce-billing-fields,
.kh-checkout-commerce .woocommerce-shipping-fields,
.kh-checkout-commerce .woocommerce-additional-fields{
  padding:30px 32px!important;
  border-color:#d9dfda!important;
  border-radius:12px!important;
  box-shadow:0 12px 34px rgba(31,55,43,.04)!important;
}
.kh-checkout-commerce .woocommerce-billing-fields>h3,
.kh-checkout-commerce .woocommerce-additional-fields>h3{font-size:1.8rem!important;margin-bottom:24px!important}
.kh-checkout-commerce .form-row{margin-bottom:18px!important}
.kh-checkout-commerce .form-row label{font-size:.79rem!important;letter-spacing:.005em}
.kh-checkout-commerce .input-text,
.kh-checkout-commerce input[type=text],
.kh-checkout-commerce input[type=email],
.kh-checkout-commerce input[type=tel],
.kh-checkout-commerce textarea,
.kh-checkout-commerce select,
.kh-checkout-commerce .select2-selection{
  min-height:50px!important;
  border-radius:7px!important;
  border-color:#cbd4cd!important;
  font-size:.92rem!important;
}

/* Right column: one strong, roomy checkout card */
.kh-checkout-commerce #order_review_heading{
  padding:24px 28px 7px!important;
  border-color:#d7dbd6!important;
  border-radius:12px 12px 0 0!important;
  background:#fbf8f1!important;
  font-size:0!important;
  line-height:1!important;
}
.kh-checkout-commerce #order_review_heading:before{
  content:'REVIEW YOUR ORDER'!important;
  display:block!important;
  margin-bottom:9px!important;
  color:var(--kh-green-700)!important;
  font-family:var(--kh-body)!important;
  font-size:.68rem!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
}
.kh-checkout-commerce #order_review_heading:after{
  content:'Order Summary';
  display:block;
  color:var(--kh-green-950);
  font-family:var(--kh-heading);
  font-size:1.82rem;
  font-weight:700;
  line-height:1.08;
  letter-spacing:-.015em;
}
.kh-checkout-commerce #order_review{
  padding:13px 28px 28px!important;
  border-color:#d7dbd6!important;
  border-radius:0 0 12px 12px!important;
  background:#fbf8f1!important;
  box-shadow:0 16px 44px rgba(31,55,43,.08)!important;
}

/* Order review rows */
.kh-checkout-commerce .woocommerce-checkout-review-order-table tr{border-bottom-color:#dedfd8!important}
.kh-checkout-commerce .woocommerce-checkout-review-order-table th,
.kh-checkout-commerce .woocommerce-checkout-review-order-table td{padding:15px 0!important;font-size:.84rem!important}
.kh-checkout-product-line{gap:12px}
.kh-checkout-product-thumb,.kh-checkout-product-placeholder{width:54px;height:54px;flex-basis:54px;border-radius:7px}
.kh-checkout-product-line__name{font-size:.86rem;line-height:1.28}
.kh-checkout-commerce .order-total th,.kh-checkout-commerce .order-total td{padding:20px 0!important}
.kh-checkout-commerce .order-total .amount{font-size:1.55rem!important}

/* Make payment feel like a dedicated final step, not a squeezed widget. */
.kh-checkout-commerce #payment{
  margin:22px 0 0!important;
  padding:22px 0 0!important;
  border-top:1px solid #d9ddd8!important;
  border-radius:0!important;
}
.kh-checkout-commerce #payment:before{
  content:'Payment';
  display:block;
  margin:0 0 14px;
  color:var(--kh-green-950);
  font-family:var(--kh-heading);
  font-size:1.35rem;
  font-weight:700;
  line-height:1.15;
}
.kh-checkout-commerce #payment ul.payment_methods>li{
  margin-bottom:11px!important;
  padding:16px!important;
  border-color:#d2d9d3!important;
  border-radius:8px!important;
  box-shadow:0 3px 10px rgba(31,55,43,.025)!important;
}
.kh-checkout-commerce #payment ul.payment_methods>li>label{font-size:.88rem!important}
.kh-checkout-commerce #payment .payment_box{
  width:100%!important;
  margin:12px 0 0!important;
  padding:15px!important;
  border-radius:7px!important;
  background:#f5f7f3!important;
  font-size:.8rem!important;
  overflow:visible!important;
}
.kh-checkout-commerce #payment .payment_box fieldset,
.kh-checkout-commerce #payment .payment_box .wc-payment-form,
.kh-checkout-commerce #payment .payment_box iframe,
.kh-checkout-commerce #payment .payment_box .form-row-wide,
.kh-checkout-commerce #payment .payment_box .form-row-first,
.kh-checkout-commerce #payment .payment_box .form-row-last{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  box-sizing:border-box!important;
}
.kh-checkout-commerce #payment .payment_box .form-row-first,
.kh-checkout-commerce #payment .payment_box .form-row-last{margin-left:0!important;margin-right:0!important}
.kh-checkout-commerce #payment .payment_box input,
.kh-checkout-commerce #payment .payment_box select{
  width:100%!important;
  max-width:100%!important;
  min-height:44px!important;
  box-sizing:border-box!important;
}
.kh-checkout-commerce #payment .payment_box .wc-stripe-elements-field,
.kh-checkout-commerce #payment .payment_box .stripe-card-group,
.kh-checkout-commerce #payment .payment_box .StripeElement{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.kh-checkout-commerce #payment .woocommerce-privacy-policy-text,
.kh-checkout-commerce #payment .woocommerce-terms-and-conditions-wrapper{font-size:.76rem!important;line-height:1.55!important}
.kh-checkout-commerce #payment #place_order{
  min-height:54px!important;
  margin-top:16px!important;
  border-radius:6px!important;
  font-size:.98rem!important;
  letter-spacing:.005em!important;
}

/* Coupon prompt should stay quiet at checkout. */
.kh-checkout-commerce .woocommerce-form-coupon-toggle .woocommerce-info{border-radius:7px!important;padding:13px 16px!important}

/* Keep supporting content concise so checkout remains the focus. */
.kh-checkout-bottom-note{padding-bottom:38px}
.kh-checkout-bottom-note__inner{padding:16px 20px}
.kh-checkout-bottom-note strong{font-size:1.08rem}
.kh-checkout-bottom-note p{font-size:.78rem}

@media (max-width:1100px) and (min-width:821px){
  .kh-checkout-commerce form.checkout.woocommerce-checkout{
    grid-template-columns:minmax(0,1fr) minmax(400px,.88fr)!important;
    gap:0 28px!important;
  }
  .kh-checkout-commerce .woocommerce-billing-fields,
  .kh-checkout-commerce .woocommerce-shipping-fields,
  .kh-checkout-commerce .woocommerce-additional-fields{padding:25px!important}
  .kh-checkout-commerce #order_review_heading{padding-left:22px!important;padding-right:22px!important}
  .kh-checkout-commerce #order_review{padding-left:22px!important;padding-right:22px!important}
}

@media (max-width:820px){
  .kh-checkout-heading__inner{padding-top:32px;padding-bottom:30px}
  .kh-checkout-heading__copy h1{font-size:2.65rem}
  .kh-checkout-commerce #order_review_heading{font-size:0!important;padding:22px 20px 6px!important}
  .kh-checkout-commerce #order_review_heading:after{font-size:1.65rem}
  .kh-checkout-commerce #order_review{padding:12px 20px 22px!important}
  .kh-checkout-commerce #payment{padding-top:18px!important}
}

/* ========================================================================
   KHINTAWAN CHECKOUT v2.2 — width / hierarchy correction
   Fixes WooCommerce's native 48% floats from squeezing the review/payment
   area inside the CSS grid. The checkout now uses the full content width.
   ======================================================================== */
.kh-checkout-commerce form.checkout.woocommerce-checkout{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
.kh-checkout-commerce #customer_details,
.kh-checkout-commerce #order_review_heading,
.kh-checkout-commerce #order_review{
  width:100%!important;
  max-width:none!important;
  float:none!important;
  clear:none!important;
  box-sizing:border-box!important;
}
.kh-checkout-commerce #order_review_heading,
.kh-checkout-commerce #order_review{justify-self:stretch!important;align-self:start!important}

@media (min-width: 981px){
  .kh-checkout-commerce{max-width:1240px!important}
  .kh-checkout-commerce form.checkout.woocommerce-checkout{
    grid-template-columns:minmax(0,1.16fr) minmax(430px,.84fr)!important;
    gap:0 42px!important;
  }
  .kh-checkout-commerce #order_review{position:static!important;top:auto!important}
}

/* A full-width, readable order table. */
.kh-checkout-commerce .woocommerce-checkout-review-order-table{
  width:100%!important;
  max-width:none!important;
  table-layout:auto!important;
}
.kh-checkout-commerce .woocommerce-checkout-review-order-table .product-name{
  width:68%!important;
  padding-right:18px!important;
}
.kh-checkout-commerce .woocommerce-checkout-review-order-table .product-total{
  width:32%!important;
  text-align:right!important;
  white-space:nowrap!important;
}
.kh-checkout-commerce .woocommerce-checkout-review-order-table tfoot th{
  width:42%!important;
}
.kh-checkout-commerce .woocommerce-checkout-review-order-table tfoot td{
  width:58%!important;
  text-align:right!important;
}
.kh-checkout-commerce .kh-checkout-product-line{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
}
.kh-checkout-commerce .kh-checkout-product-line__name{
  flex:1 1 auto!important;
  min-width:0!important;
}

/* Payment must inherit the full review-card width. */
.kh-checkout-commerce #payment,
.kh-checkout-commerce #payment ul.payment_methods,
.kh-checkout-commerce #payment ul.payment_methods>li,
.kh-checkout-commerce #payment .payment_box,
.kh-checkout-commerce #payment .payment_box>div,
.kh-checkout-commerce #payment .payment_box form,
.kh-checkout-commerce #payment .payment_box fieldset,
.kh-checkout-commerce #payment .wc-payment-form{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.kh-checkout-commerce #payment ul.payment_methods{
  margin:0!important;
  padding:0!important;
}
.kh-checkout-commerce #payment ul.payment_methods>li{
  display:block!important;
  padding:15px 16px!important;
}
.kh-checkout-commerce #payment .payment_box{
  padding:16px!important;
}
.kh-checkout-commerce #payment .payment_box .form-row,
.kh-checkout-commerce #payment .payment_box .form-row-first,
.kh-checkout-commerce #payment .payment_box .form-row-last,
.kh-checkout-commerce #payment .payment_box .form-row-wide{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 12px!important;
  float:none!important;
}
.kh-checkout-commerce #payment .payment_box input,
.kh-checkout-commerce #payment .payment_box select,
.kh-checkout-commerce #payment .payment_box iframe,
.kh-checkout-commerce #payment .payment_box .StripeElement,
.kh-checkout-commerce #payment .payment_box .wc-stripe-elements-field{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

/* Make the summary read as one premium card. */
.kh-checkout-commerce #order_review_heading{
  padding:25px 28px 10px!important;
  background:#fbf8f1!important;
}
.kh-checkout-commerce #order_review{
  padding:8px 28px 28px!important;
  background:#fbf8f1!important;
}
.kh-checkout-commerce #payment:before{margin-top:2px!important}
.kh-checkout-commerce #payment #place_order{
  width:100%!important;
  min-height:56px!important;
  font-size:1rem!important;
}

/* Reduce visual noise below the form and keep checkout conversion-focused. */
.kh-checkout-bottom-note{padding-top:6px!important;padding-bottom:34px!important}
.kh-checkout-bottom-note__inner{max-width:1240px;margin:0 auto}

@media (max-width: 980px){
  .kh-checkout-commerce form.checkout.woocommerce-checkout{display:block!important}
  .kh-checkout-commerce #order_review_heading{margin-top:26px!important}
  .kh-checkout-commerce #order_review{position:static!important}
}

@media (max-width: 560px){
  .kh-checkout-commerce #order_review_heading{padding:20px 17px 7px!important}
  .kh-checkout-commerce #order_review{padding:8px 17px 20px!important}
  .kh-checkout-commerce .woocommerce-checkout-review-order-table .product-name{width:65%!important;padding-right:10px!important}
  .kh-checkout-commerce .woocommerce-checkout-review-order-table .product-total{width:35%!important}
}


/* ========================================================================
   KHINTAWAN CHECKOUT v2.3 — unified professional summary card
   WooCommerce renders the review heading and review body as separate grid
   siblings. That made the heading occupy the first grid row while the tall
   customer form determined that row's height, creating the large blank gap
   visible in v2.2. The PHP hooks now wrap the review in one grid child.
   ======================================================================== */
.kh-checkout-commerce form.checkout.woocommerce-checkout{
  grid-template-areas:"customer summary"!important;
  grid-template-rows:auto!important;
  align-items:start!important;
}
.kh-checkout-commerce #customer_details{grid-area:customer!important;min-width:0!important}
.kh-checkout-commerce #order_review_heading{display:none!important}
.kh-checkout-commerce .kh-checkout-summary{
  grid-area:summary!important;
  width:100%!important;
  min-width:0!important;
  align-self:start!important;
  position:sticky!important;
  top:26px!important;
  overflow:hidden!important;
  border:1px solid #d7dbd6!important;
  border-radius:12px!important;
  background:#fbf8f1!important;
  box-shadow:0 16px 44px rgba(31,55,43,.08)!important;
  box-sizing:border-box!important;
}
.kh-checkout-commerce .kh-checkout-summary__header{
  padding:25px 28px 18px!important;
  border-bottom:1px solid #dedfd8!important;
  background:linear-gradient(180deg,#fbf8f1 0%,#faf6ed 100%)!important;
}
.kh-checkout-commerce .kh-checkout-summary__eyebrow{
  display:block!important;
  margin:0 0 7px!important;
  color:var(--kh-green-700)!important;
  font-family:var(--kh-body)!important;
  font-size:.68rem!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
.kh-checkout-commerce .kh-checkout-summary__header h2{
  margin:0!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-heading)!important;
  font-size:1.82rem!important;
  font-weight:700!important;
  line-height:1.08!important;
  letter-spacing:-.015em!important;
}
.kh-checkout-commerce .kh-checkout-summary #order_review{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:10px 28px 28px!important;
  position:static!important;
  top:auto!important;
  float:none!important;
  clear:none!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}

/* Keep the order rows compact and premium now that the summary has room. */
.kh-checkout-commerce .kh-checkout-summary .woocommerce-checkout-review-order-table th,
.kh-checkout-commerce .kh-checkout-summary .woocommerce-checkout-review-order-table td{
  padding-top:14px!important;
  padding-bottom:14px!important;
}
.kh-checkout-commerce .kh-checkout-summary .cart_item .product-name{padding-right:20px!important}
.kh-checkout-commerce .kh-checkout-summary .order-total th,
.kh-checkout-commerce .kh-checkout-summary .order-total td{padding-top:18px!important;padding-bottom:18px!important}
.kh-checkout-commerce .kh-checkout-summary #payment{margin-top:18px!important;padding-top:20px!important}
.kh-checkout-commerce .kh-checkout-summary #payment ul.payment_methods>li{padding:15px 16px!important}
.kh-checkout-commerce .kh-checkout-summary #payment #place_order{min-height:56px!important}

/* Validation should read as guidance, not as raw plugin output. */
.kh-checkout-commerce .woocommerce-invalid input.input-text,
.kh-checkout-commerce .woocommerce-invalid select,
.kh-checkout-commerce .woocommerce-invalid .select2-selection{
  border-color:#c98f7f!important;
  box-shadow:0 0 0 2px rgba(169,91,71,.06)!important;
}
.kh-checkout-commerce .woocommerce-error li,
.kh-checkout-commerce .woocommerce-error a{line-height:1.45!important}

@media (min-width:981px){
  .kh-checkout-commerce form.checkout.woocommerce-checkout{
    grid-template-columns:minmax(0,1.16fr) minmax(430px,.84fr)!important;
    gap:0 42px!important;
  }
}
@media (max-width:980px){
  .kh-checkout-commerce form.checkout.woocommerce-checkout{display:block!important}
  .kh-checkout-commerce .kh-checkout-summary{position:static!important;top:auto!important;margin-top:26px!important}
}
@media (max-width:560px){
  .kh-checkout-commerce .kh-checkout-summary__header{padding:20px 17px 15px!important}
  .kh-checkout-commerce .kh-checkout-summary__header h2{font-size:1.55rem!important}
  .kh-checkout-commerce .kh-checkout-summary #order_review{padding:8px 17px 20px!important}
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v2.4 — warm, premium confirmation experience
   WooCommerce keeps ownership of the order confirmation, order details and
   gateway-specific thank-you hooks. These rules only reshape presentation.
   ======================================================================== */
.kh-checkout-page--received{
  background:#fffdf9;
}
.kh-thankyou-hero{
  padding:64px 0 54px;
  border-bottom:1px solid #e1e3dc;
  background:
    radial-gradient(circle at 83% 18%,rgba(201,167,94,.13),transparent 28%),
    linear-gradient(105deg,#fbf6ec 0%,#f8f5ec 58%,#f2f6ef 100%);
  text-align:center;
}
.kh-thankyou-hero__inner{max-width:900px}
.kh-thankyou-mark{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  margin:0 auto 18px;
  border:1px solid rgba(47,93,70,.30);
  border-radius:50%;
  background:#fff;
  color:var(--kh-green-700);
  box-shadow:0 10px 30px rgba(31,55,43,.07);
  font-family:var(--kh-body);
  font-size:1.5rem;
  font-weight:700;
}
.kh-thankyou-hero h1{
  max-width:820px;
  margin:8px auto 12px;
  color:var(--kh-green-950);
  font-family:var(--kh-heading);
  font-size:clamp(2.55rem,5vw,4.35rem);
  font-weight:700;
  letter-spacing:-.035em;
  line-height:.98;
}
.kh-thankyou-hero>div>p{
  max-width:660px;
  margin:0 auto;
  color:#536058;
  font-size:1rem;
  line-height:1.7;
}
.kh-thankyou-hero>div>p strong{color:var(--kh-green-950)}
.kh-thankyou-hero__meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:760px;
  margin:30px auto 0;
  overflow:hidden;
  border:1px solid #d9ddd6;
  border-radius:10px;
  background:rgba(255,255,255,.78);
  box-shadow:0 12px 30px rgba(31,55,43,.05);
  text-align:left;
}
.kh-thankyou-hero__meta>div{padding:17px 20px}
.kh-thankyou-hero__meta>div+div{border-left:1px solid #e0e2dc}
.kh-thankyou-hero__meta span{
  display:block;
  margin-bottom:5px;
  color:#6b766f;
  font-family:var(--kh-body);
  font-size:.67rem;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1.2;
  text-transform:uppercase;
}
.kh-thankyou-hero__meta strong{
  display:block;
  color:var(--kh-green-950);
  font-size:.96rem;
  line-height:1.35;
}

.kh-thankyou-commerce-wrap{padding:54px 0 66px!important;background:#fff!important}
.kh-thankyou-commerce{max-width:1120px!important}
.kh-thankyou-commerce .woocommerce{width:100%!important}
.kh-checkout-page--received .woocommerce-order{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr);
  gap:28px 34px;
  align-items:start;
}
/* The custom hero replaces WooCommerce's generic success sentence. */
.kh-checkout-page--received .woocommerce-thankyou-order-received{display:none!important}

.kh-checkout-page--received .woocommerce-order-overview{
  grid-column:1/-1;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0!important;
  margin:0 0 8px!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid #d9ddd6;
  border-radius:11px;
  background:#fbf8f1;
  list-style:none!important;
  box-shadow:0 12px 32px rgba(31,55,43,.05);
}
.kh-checkout-page--received .woocommerce-order-overview li{
  min-width:0!important;
  margin:0!important;
  padding:18px 20px!important;
  border:0!important;
  color:#657068!important;
  font-size:.71rem!important;
  font-weight:700!important;
  letter-spacing:.05em!important;
  line-height:1.4!important;
  text-transform:uppercase!important;
}
.kh-checkout-page--received .woocommerce-order-overview li+li{border-left:1px solid #e0e2dc!important}
.kh-checkout-page--received .woocommerce-order-overview li strong{
  display:block!important;
  margin-top:6px!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-body)!important;
  font-size:.94rem!important;
  font-weight:750!important;
  letter-spacing:0!important;
  line-height:1.35!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
}

.kh-checkout-page--received .woocommerce-order-details{
  grid-column:1;
  margin:0!important;
  padding:30px!important;
  border:1px solid #d9ddd6;
  border-radius:12px;
  background:#fff;
  box-shadow:0 14px 40px rgba(31,55,43,.055);
}
.kh-checkout-page--received .woocommerce-order-details__title,
.kh-checkout-page--received .woocommerce-customer-details h2,
.kh-checkout-page--received .woocommerce-column__title{
  margin:0 0 20px!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-heading)!important;
  font-size:1.72rem!important;
  font-weight:700!important;
  line-height:1.1!important;
}
.kh-checkout-page--received .woocommerce-table--order-details{
  width:100%!important;
  margin:0!important;
  border-collapse:collapse!important;
  border:0!important;
  background:transparent!important;
}
.kh-checkout-page--received .woocommerce-table--order-details th,
.kh-checkout-page--received .woocommerce-table--order-details td{
  padding:15px 0!important;
  border:0!important;
  border-bottom:1px solid #e4e5e0!important;
  color:#47534c!important;
  font-size:.91rem!important;
  line-height:1.45!important;
  vertical-align:top!important;
}
.kh-checkout-page--received .woocommerce-table--order-details thead th{
  color:var(--kh-green-700)!important;
  font-size:.68rem!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.kh-checkout-page--received .woocommerce-table--order-details .product-name a{
  color:var(--kh-green-950)!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.kh-checkout-page--received .woocommerce-table--order-details .product-total,
.kh-checkout-page--received .woocommerce-table--order-details tfoot td{text-align:right!important}
.kh-checkout-page--received .woocommerce-table--order-details tfoot tr:last-child th,
.kh-checkout-page--received .woocommerce-table--order-details tfoot tr:last-child td{
  padding-top:20px!important;
  color:var(--kh-green-950)!important;
  font-size:1.04rem!important;
  font-weight:800!important;
}

.kh-checkout-page--received .woocommerce-customer-details{
  grid-column:2;
  margin:0!important;
  padding:28px!important;
  border:1px solid #d9ddd6;
  border-radius:12px;
  background:#fbf8f1;
  box-shadow:0 14px 40px rgba(31,55,43,.05);
}
.kh-checkout-page--received .woocommerce-customer-details .woocommerce-columns{
  display:block!important;
  margin:0!important;
}
.kh-checkout-page--received .woocommerce-customer-details .woocommerce-column{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.kh-checkout-page--received .woocommerce-customer-details .woocommerce-column+.woocommerce-column{
  margin-top:25px!important;
  padding-top:24px!important;
  border-top:1px solid #dedfd9!important;
}
.kh-checkout-page--received .woocommerce-customer-details address{
  padding:0!important;
  border:0!important;
  color:#4f5c54!important;
  font-size:.9rem!important;
  font-style:normal!important;
  line-height:1.72!important;
}
.kh-checkout-page--received .woocommerce-customer-details address p{margin:.55em 0 0!important}

.kh-checkout-page--received .woocommerce-order .woocommerce-notice--error,
.kh-checkout-page--received .woocommerce-thankyou-order-failed,
.kh-checkout-page--received .woocommerce-thankyou-order-failed-actions{
  grid-column:1/-1;
}
.kh-checkout-page--received .woocommerce-thankyou-order-failed{
  padding:18px 20px!important;
  border:1px solid #d9aaa0!important;
  border-radius:8px!important;
  background:#fff5f2!important;
  color:#7c3f34!important;
}

.kh-thankyou-next{padding:70px 0;background:#faf8f3}
.kh-thankyou-next__heading{max-width:700px;margin:0 auto 30px;text-align:center}
.kh-thankyou-next__heading h2{
  margin:8px 0 0;
  color:var(--kh-green-950);
  font-family:var(--kh-heading);
  font-size:clamp(2rem,3.5vw,3rem);
  line-height:1.05;
}
.kh-thankyou-next__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.kh-thankyou-next__grid article{
  min-height:188px;
  padding:26px;
  border:1px solid #d9ddd6;
  border-radius:10px;
  background:#fff;
}
.kh-thankyou-next__grid article>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:28px;
  margin-bottom:24px;
  border:1px solid #d7ddd6;
  border-radius:999px;
  color:var(--kh-green-700);
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.08em;
}
.kh-thankyou-next__grid h3{
  margin:0 0 9px!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-heading)!important;
  font-size:1.25rem!important;
  line-height:1.15!important;
}
.kh-thankyou-next__grid p{margin:0;color:#59655e;font-size:.88rem;line-height:1.65}

.kh-thankyou-note{padding:44px 0;background:#edf0e3;border-top:1px solid #d9ddd0;border-bottom:1px solid #d9ddd0}
.kh-thankyou-note__inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.kh-thankyou-note__inner>div:first-child{max-width:700px}
.kh-thankyou-note h2{
  margin:7px 0 8px;
  color:var(--kh-green-950);
  font-family:var(--kh-heading);
  font-size:clamp(1.9rem,3vw,2.6rem);
  line-height:1.07;
}
.kh-thankyou-note p{margin:0 0 8px;color:#566259;line-height:1.65}
.kh-thankyou-note small{color:var(--kh-green-700);font-weight:700}
.kh-thankyou-note__actions{display:flex;gap:11px;flex:0 0 auto}
.kh-thankyou-note__actions .kh-btn{white-space:nowrap}
.kh-thankyou-trust{border-top:0!important}

@media (max-width:900px){
  .kh-checkout-page--received .woocommerce-order{display:block}
  .kh-checkout-page--received .woocommerce-order-overview{grid-template-columns:repeat(2,1fr);margin-bottom:24px!important}
  .kh-checkout-page--received .woocommerce-order-overview li:nth-child(odd){border-left:0!important}
  .kh-checkout-page--received .woocommerce-order-overview li:nth-child(n+3){border-top:1px solid #e0e2dc!important}
  .kh-checkout-page--received .woocommerce-order-details{margin-bottom:22px!important}
  .kh-thankyou-next__grid{grid-template-columns:1fr}
  .kh-thankyou-next__grid article{min-height:0}
  .kh-thankyou-note__inner{display:block}
  .kh-thankyou-note__actions{margin-top:24px}
}
@media (max-width:620px){
  .kh-thankyou-hero{padding:46px 0 40px}
  .kh-thankyou-hero__meta{grid-template-columns:1fr;text-align:center}
  .kh-thankyou-hero__meta>div+div{border-left:0;border-top:1px solid #e0e2dc}
  .kh-thankyou-commerce-wrap{padding:36px 0 46px!important}
  .kh-checkout-page--received .woocommerce-order-overview{grid-template-columns:1fr}
  .kh-checkout-page--received .woocommerce-order-overview li+li{border-left:0!important;border-top:1px solid #e0e2dc!important}
  .kh-checkout-page--received .woocommerce-order-details,
  .kh-checkout-page--received .woocommerce-customer-details{padding:20px!important}
  .kh-thankyou-next{padding:50px 0}
  .kh-thankyou-note{padding:34px 0}
  .kh-thankyou-note__actions{display:grid;grid-template-columns:1fr}
  .kh-thankyou-note__actions .kh-btn{text-align:center}
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v2.5 — payment-aware confirmation refinement
   ======================================================================== */
.kh-checkout-page--received .kh-thankyou-commerce>.woocommerce{
  max-width:1040px!important;
}
.kh-checkout-page--received .woocommerce-order{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr)!important;
  gap:24px!important;
  align-items:start!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
/* The custom hero already presents the useful order summary; avoid repeating it. */
.kh-checkout-page--received .woocommerce-order-overview{
  display:none!important;
}
.kh-checkout-page--received .woocommerce-order-details{
  grid-column:1!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.kh-checkout-page--received .woocommerce-customer-details{
  grid-column:2!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.kh-payment-instructions{
  grid-column:1/-1!important;
  overflow:hidden;
  border:1px solid #d9ddd6;
  border-radius:12px;
  background:#fff;
  box-shadow:0 14px 38px rgba(31,55,43,.05);
}
.kh-payment-instructions__head{
  padding:20px 26px 18px;
  border-bottom:1px solid #e3e4df;
  background:#fbf8f1;
}
.kh-payment-instructions__head .kh-eyebrow{margin-bottom:5px}
.kh-payment-instructions__head h2{
  margin:0!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-heading)!important;
  font-size:1.62rem!important;
  line-height:1.08!important;
}
.kh-payment-instructions__body{
  max-width:660px;
  margin:0 auto;
  padding:28px 30px 30px;
  color:#4e5b54;
  text-align:center;
}
.kh-payment-instructions__body>div,
.kh-payment-instructions__body>section,
.kh-payment-instructions__body>form,
.kh-payment-instructions__body>p,
.kh-payment-instructions__body>ol,
.kh-payment-instructions__body>ul{
  max-width:580px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.kh-payment-instructions__body img{
  width:auto!important;
  max-width:min(260px,100%)!important;
  height:auto!important;
}
.kh-payment-instructions__body ol,
.kh-payment-instructions__body ul{
  text-align:left;
  line-height:1.65;
}
.kh-payment-instructions__body a.button,
.kh-payment-instructions__body .button,
.kh-payment-instructions__body button{
  border-radius:4px!important;
}
.kh-order-awaiting-payment .kh-thankyou-mark{
  border-color:rgba(185,144,69,.42);
  color:#9a722c;
  background:#fffaf0;
}
.kh-order-awaiting-payment .kh-thankyou-hero__meta strong:last-child{
  color:#8a6527;
}

@media (max-width:900px){
  .kh-checkout-page--received .woocommerce-order{display:block!important}
  .kh-payment-instructions,
  .kh-checkout-page--received .woocommerce-order-details,
  .kh-checkout-page--received .woocommerce-customer-details{margin-bottom:20px!important}
}
@media (max-width:600px){
  .kh-payment-instructions__head{padding:18px 20px 16px}
  .kh-payment-instructions__body{padding:22px 18px 24px}
  .kh-payment-instructions__body img{max-width:min(220px,100%)!important}
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v2.6 — visual QA / payment polish
   ======================================================================== */
/* Strong, single-line order meta values. */
.kh-checkout-page--received .kh-thankyou-hero__meta{
  max-width:820px;
  grid-template-columns:.9fr 1.05fr 1.2fr;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:88px;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card>strong{
  font-size:1.08rem;
  font-weight:800;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--total .kh-meta-total-value{
  display:block!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-body)!important;
  font-size:1.42rem!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:keep-all!important;
}
.kh-checkout-page--received .kh-meta-total-value bdi{
  display:inline-flex!important;
  flex-wrap:nowrap!important;
  align-items:baseline!important;
  gap:.16em!important;
  white-space:nowrap!important;
}
.kh-checkout-page--received .kh-meta-total-value .kh-meta-currency,
.kh-checkout-page--received .kh-meta-total-value .kh-meta-number{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
}
.kh-order-awaiting-payment .kh-meta-card--status>strong{
  color:#8a6527!important;
}

/* Payment instructions: visually integrate the gateway output with the brand. */
.kh-checkout-page--received .kh-payment-instructions{
  border-color:#d7ddd5!important;
  box-shadow:0 18px 48px rgba(31,55,43,.06)!important;
}
.kh-checkout-page--received .kh-payment-instructions__head{
  padding:22px 28px 19px;
}
.kh-checkout-page--received .kh-payment-instructions__body{
  max-width:920px;
  padding:32px;
}
.kh-payment-instructions__layout{
  display:grid;
  grid-template-columns:minmax(260px,.88fr) minmax(320px,1.12fr);
  gap:34px;
  align-items:center;
  max-width:850px;
  margin:0 auto;
}
.kh-payment-instructions__qr{
  min-width:0;
  padding:24px;
  border:1px solid #e1e4de;
  border-radius:10px;
  background:#fbfcf9;
  text-align:center;
}
.kh-payment-instructions__steps{
  min-width:0;
  padding:26px 28px;
  border:1px solid #e1e2dc!important;
  border-radius:10px!important;
  background:#fbf8f1!important;
  text-align:left!important;
  box-shadow:none!important;
}
.kh-payment-instructions__steps>*:first-child{margin-top:0!important}
.kh-payment-instructions__steps>*:last-child{margin-bottom:0!important}
.kh-payment-instructions__steps ol,
.kh-payment-instructions__steps ul{
  margin:12px 0 0 1.25em!important;
  padding:0!important;
  color:#4d5a52!important;
  line-height:1.7!important;
}
.kh-payment-instructions__body a.button,
.kh-payment-instructions__body .button,
.kh-payment-instructions__body button,
.kh-payment-instructions__body a[download]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  margin:12px auto 4px!important;
  padding:10px 18px!important;
  border:1px solid var(--kh-green-700)!important;
  border-radius:4px!important;
  background:var(--kh-green-700)!important;
  color:#fff!important;
  font-family:var(--kh-body)!important;
  font-size:.83rem!important;
  font-weight:750!important;
  line-height:1.1!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.kh-payment-instructions__body a.button:hover,
.kh-payment-instructions__body .button:hover,
.kh-payment-instructions__body button:hover,
.kh-payment-instructions__body a[download]:hover{
  background:var(--kh-green-950)!important;
  border-color:var(--kh-green-950)!important;
  color:#fff!important;
}
.kh-payment-promptpay .kh-payment-instructions__qr img{
  max-width:min(230px,100%)!important;
}

/* Order detail totals: clearer alignment and less dense shipping copy. */
.kh-checkout-page--received .woocommerce-table--order-details tfoot th{
  width:27%!important;
  padding-right:18px!important;
  color:#45534b!important;
  font-weight:750!important;
  text-align:left!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot td{
  width:73%!important;
  font-weight:650!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--shipping td{
  padding-left:22px!important;
  color:#4f5b54!important;
  font-size:.86rem!important;
  font-weight:600!important;
  line-height:1.55!important;
  text-align:left!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--total th,
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--total td{
  padding-top:19px!important;
  padding-bottom:19px!important;
  color:var(--kh-green-950)!important;
  font-size:1.08rem!important;
  font-weight:850!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--total .woocommerce-Price-amount,
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--total .woocommerce-Price-amount bdi{
  white-space:nowrap!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--payment td{
  color:var(--kh-green-950)!important;
  font-weight:750!important;
}

@media (max-width:900px){
  .kh-payment-instructions__layout{grid-template-columns:1fr;gap:18px}
  .kh-payment-instructions__qr,
  .kh-payment-instructions__steps{padding:22px}
}
@media (max-width:620px){
  .kh-checkout-page--received .kh-thankyou-hero__meta{grid-template-columns:1fr}
  .kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card{min-height:0}
  .kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--total .kh-meta-total-value{font-size:1.3rem!important}
  .kh-checkout-page--received .kh-payment-instructions__body{padding:20px 16px 22px}
  .kh-payment-instructions__qr,
  .kh-payment-instructions__steps{padding:18px}
  .kh-checkout-page--received .woocommerce-table--order-details tfoot th,
  .kh-checkout-page--received .woocommerce-table--order-details tfoot td{width:auto!important}
  .kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--shipping td{padding-left:10px!important}
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v2.7 — final professional hierarchy & spacing
   ======================================================================== */
/* The post-purchase page should feel calm and decisive, not oversized. */
.kh-checkout-page--received .kh-thankyou-hero{
  padding:50px 0 46px!important;
}
.kh-checkout-page--received .kh-thankyou-mark{
  width:52px;
  height:52px;
  margin-bottom:15px;
  font-size:1.35rem;
  box-shadow:0 8px 24px rgba(31,55,43,.055);
}
.kh-checkout-page--received .kh-thankyou-hero h1{
  max-width:760px;
  margin:7px auto 11px;
  font-size:clamp(2.55rem,4.4vw,3.75rem)!important;
  line-height:1!important;
}
.kh-checkout-page--received .kh-thankyou-hero>div>p{
  max-width:700px;
  font-size:.96rem;
  line-height:1.65;
}

/* Order / Total / Status: one equal visual hierarchy. */
.kh-checkout-page--received .kh-thankyou-hero__meta{
  max-width:860px!important;
  margin-top:25px!important;
  grid-template-columns:.9fr 1fr 1.2fr!important;
  border-radius:12px!important;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card{
  min-height:92px!important;
  padding:18px 24px!important;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card span{
  margin-bottom:7px!important;
  font-size:.65rem!important;
  letter-spacing:.14em!important;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card>strong,
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--total .kh-meta-total-value,
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--status>strong{
  display:block!important;
  margin:0!important;
  color:#8a6527!important;
  font-family:var(--kh-body)!important;
  font-size:1.38rem!important;
  font-weight:800!important;
  letter-spacing:-.015em!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--total .kh-meta-total-value{
  font-variant-numeric:tabular-nums;
}

/* Tighter central commerce area. */
.kh-checkout-page--received .kh-thankyou-commerce-wrap{
  padding:46px 0 58px!important;
}
.kh-checkout-page--received .kh-thankyou-commerce>.woocommerce{
  max-width:1040px!important;
}
.kh-checkout-page--received .woocommerce-order{
  gap:20px 22px!important;
  grid-template-columns:minmax(0,1.48fr) minmax(285px,.72fr)!important;
}

/* Payment should read as a deliberate task card, not a huge plugin canvas. */
.kh-checkout-page--received .kh-payment-instructions{
  width:min(100%,920px)!important;
  justify-self:center!important;
  border-radius:14px!important;
  box-shadow:0 14px 38px rgba(31,55,43,.055)!important;
}
.kh-checkout-page--received .kh-payment-instructions__head{
  padding:19px 24px 16px!important;
}
.kh-checkout-page--received .kh-payment-instructions__head h2{
  font-size:1.48rem!important;
}
.kh-checkout-page--received .kh-payment-instructions__body{
  max-width:none!important;
  padding:24px 26px 26px!important;
}
.kh-checkout-page--received .kh-payment-instructions__layout{
  grid-template-columns:minmax(250px,.92fr) minmax(300px,1.08fr)!important;
  gap:22px!important;
  max-width:760px!important;
  align-items:stretch!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr,
.kh-checkout-page--received .kh-payment-instructions__steps{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:330px;
  padding:22px!important;
  border-color:#dce2dc!important;
  border-radius:10px!important;
  background:#fcfcf9!important;
}
.kh-checkout-page--received .kh-payment-instructions__steps{
  background:#faf7ef!important;
}
/* PromptPay injects its own black bordered instruction box. Strip that inner
   decoration so the KHINTAWAN card owns the visual treatment. */
.kh-checkout-page--received .kh-payment-instructions__steps>div,
.kh-checkout-page--received .kh-payment-instructions__steps>section,
.kh-checkout-page--received .kh-payment-instructions__steps>article{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.kh-checkout-page--received .kh-payment-instructions__steps strong,
.kh-checkout-page--received .kh-payment-instructions__steps b{
  color:var(--kh-green-950)!important;
  font-size:.95rem!important;
}
.kh-checkout-page--received .kh-payment-instructions__steps ol,
.kh-checkout-page--received .kh-payment-instructions__steps ul{
  margin-top:10px!important;
  font-size:.88rem!important;
  line-height:1.62!important;
}
.kh-checkout-page--received .kh-payment-promptpay .kh-payment-instructions__qr img{
  max-width:min(205px,100%)!important;
}
.kh-checkout-page--received .kh-payment-instructions__body a.button,
.kh-checkout-page--received .kh-payment-instructions__body .button,
.kh-checkout-page--received .kh-payment-instructions__body button,
.kh-checkout-page--received .kh-payment-instructions__body a[download]{
  min-height:38px!important;
  margin-top:10px!important;
  padding:9px 16px!important;
}

/* Order details / address: editorial polish without competing with payment. */
.kh-checkout-page--received .woocommerce-order-details,
.kh-checkout-page--received .woocommerce-customer-details{
  padding:26px!important;
  border-radius:11px!important;
  box-shadow:0 10px 30px rgba(31,55,43,.04)!important;
}
.kh-checkout-page--received .woocommerce-order-details__title,
.kh-checkout-page--received .woocommerce-customer-details h2,
.kh-checkout-page--received .woocommerce-column__title{
  margin-bottom:17px!important;
  font-size:1.5rem!important;
}
.kh-checkout-page--received .woocommerce-table--order-details th,
.kh-checkout-page--received .woocommerce-table--order-details td{
  padding:13px 0!important;
  font-size:.87rem!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot th{
  width:31%!important;
  white-space:nowrap!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot td{
  width:69%!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--shipping td{
  padding:12px 14px!important;
  background:#faf8f2!important;
  border-radius:6px!important;
  font-size:.82rem!important;
  font-weight:600!important;
  line-height:1.5!important;
  text-align:left!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--total th,
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--total td{
  padding-top:17px!important;
  padding-bottom:17px!important;
  font-size:1rem!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--total td{
  font-size:1.12rem!important;
}
.kh-checkout-page--received .woocommerce-table--order-details tfoot .kh-order-row--payment th{
  white-space:nowrap!important;
}
.kh-checkout-page--received .woocommerce-customer-details address{
  font-size:.86rem!important;
  line-height:1.68!important;
}

/* Supporting sections stay warm but secondary to the payment task. */
.kh-checkout-page--received .kh-thankyou-next{
  padding:56px 0!important;
}
.kh-checkout-page--received .kh-thankyou-next__heading{
  margin-bottom:24px!important;
}
.kh-checkout-page--received .kh-thankyou-next__heading h2{
  font-size:clamp(1.9rem,3vw,2.55rem)!important;
}
.kh-checkout-page--received .kh-thankyou-next__grid article{
  min-height:160px!important;
  padding:22px!important;
}
.kh-checkout-page--received .kh-thankyou-next__grid article>span{
  margin-bottom:18px!important;
}
.kh-checkout-page--received .kh-thankyou-note{
  padding:38px 0!important;
}
.kh-checkout-page--received .kh-thankyou-note h2{
  font-size:clamp(1.8rem,2.7vw,2.35rem)!important;
}

@media (max-width:900px){
  .kh-checkout-page--received .kh-payment-instructions{width:100%!important}
  .kh-checkout-page--received .kh-payment-instructions__layout{grid-template-columns:1fr!important;max-width:600px!important}
  .kh-checkout-page--received .kh-payment-instructions__qr,
  .kh-checkout-page--received .kh-payment-instructions__steps{min-height:0!important}
}
@media (max-width:620px){
  .kh-checkout-page--received .kh-thankyou-hero{padding:40px 0 38px!important}
  .kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card>strong,
  .kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--total .kh-meta-total-value,
  .kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--status>strong{
    font-size:1.2rem!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__body{padding:18px 14px 20px!important}
  .kh-checkout-page--received .kh-payment-instructions__qr,
  .kh-checkout-page--received .kh-payment-instructions__steps{padding:18px!important}
  .kh-checkout-page--received .woocommerce-table--order-details tfoot th{white-space:normal!important}
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v2.8 — PromptPay payment panel refinement
   ======================================================================== */
/* The payment task should feel compact, trustworthy and easy to scan. */
.kh-checkout-page--received .kh-payment-instructions{
  width:min(100%,900px)!important;
  border:1px solid #d9ded7!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(31,55,43,.055)!important;
}
.kh-checkout-page--received .kh-payment-instructions__head{
  padding:18px 24px 16px!important;
  background:linear-gradient(90deg,#fbf8f0 0%,#f8f5ed 100%)!important;
}
.kh-checkout-page--received .kh-payment-instructions__head .kh-eyebrow{
  margin-bottom:4px!important;
  font-size:.64rem!important;
}
.kh-checkout-page--received .kh-payment-instructions__head h2{
  font-size:1.42rem!important;
  letter-spacing:-.02em!important;
}
.kh-checkout-page--received .kh-payment-instructions__body{
  max-width:none!important;
  padding:24px!important;
}
.kh-checkout-page--received .kh-payment-instructions__layout{
  display:grid!important;
  grid-template-columns:minmax(280px,.92fr) minmax(330px,1.08fr)!important;
  gap:18px!important;
  align-items:start!important;
  max-width:760px!important;
  margin:0 auto!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:0!important;
  padding:24px 22px 20px!important;
  border:1px solid #dde2dc!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(31,55,43,.025)!important;
  text-align:center!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr p{
  margin:7px 0!important;
  color:#59645e!important;
  font-size:.88rem!important;
  line-height:1.5!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr p:first-child,
.kh-checkout-page--received .kh-payment-instructions__qr strong:first-child{
  margin-top:0!important;
  margin-bottom:14px!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-body)!important;
  font-size:1rem!important;
  font-weight:750!important;
  letter-spacing:-.01em!important;
}
/* Images are classified in khintawan.js so gateway logos and the QR itself can
   have deliberate sizes instead of sharing one generic max-width. */
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-logo-wide{
  width:auto!important;
  max-width:205px!important;
  max-height:58px!important;
  margin:0 auto 12px!important;
  object-fit:contain!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-logo-small{
  width:auto!important;
  max-width:104px!important;
  max-height:44px!important;
  margin:0 auto 13px!important;
  object-fit:contain!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-qr-image{
  width:210px!important;
  max-width:100%!important;
  height:auto!important;
  margin:2px auto 13px!important;
  image-rendering:auto!important;
}
/* Fallback if the browser has not yet classified an image. */
.kh-checkout-page--received .kh-payment-instructions__qr img:not(.kh-payment-logo-wide):not(.kh-payment-logo-small):not(.kh-payment-qr-image){
  width:auto!important;
  max-width:210px!important;
  height:auto!important;
  margin:0 auto 12px!important;
}
.kh-checkout-page--received .kh-payment-download,
.kh-checkout-page--received .kh-payment-instructions__qr a[download],
.kh-checkout-page--received .kh-payment-instructions__qr a.button,
.kh-checkout-page--received .kh-payment-instructions__qr .button{
  min-height:36px!important;
  margin:4px auto 4px!important;
  padding:9px 15px!important;
  border-radius:5px!important;
  font-size:.8rem!important;
}
.kh-checkout-page--received .kh-payment-expiry{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  margin:7px auto 0!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:#f1f4ec!important;
  color:#536058!important;
  font-size:.76rem!important;
  font-weight:650!important;
  line-height:1.2!important;
}
.kh-checkout-page--received .kh-payment-expiry::before{
  content:'◷';
  color:var(--kh-green-700);
  font-size:.82rem;
}

/* Rebuilt instructions: no gateway black border, no vertical centering and no
   oversized empty panel. */
.kh-checkout-page--received .kh-payment-instructions__steps{
  min-height:0!important;
  padding:24px 25px!important;
  border:1px solid #e0e2dc!important;
  border-radius:12px!important;
  background:#faf7ef!important;
  box-shadow:none!important;
  text-align:left!important;
}
.kh-checkout-page--received .kh-payment-steps-head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
  padding-bottom:16px;
  border-bottom:1px solid #e1dfd6;
}
.kh-checkout-page--received .kh-payment-steps-head__icon{
  display:grid;
  place-items:center;
  flex:0 0 34px;
  width:34px;
  height:34px;
  border:1px solid rgba(47,93,70,.24);
  border-radius:50%;
  background:#fff;
  color:var(--kh-green-700);
  font-size:.86rem;
  font-weight:800;
}
.kh-checkout-page--received .kh-payment-steps-head small{
  display:block;
  margin-bottom:2px;
  color:var(--kh-green-700);
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.kh-checkout-page--received .kh-payment-steps-head h3{
  margin:0!important;
  color:var(--kh-green-950)!important;
  font-family:var(--kh-heading)!important;
  font-size:1.28rem!important;
  line-height:1.12!important;
}
.kh-checkout-page--received .kh-payment-steps-list{
  counter-reset:kh-pay-step;
  display:grid!important;
  gap:13px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.kh-checkout-page--received .kh-payment-steps-list li{
  counter-increment:kh-pay-step;
  position:relative;
  min-height:30px;
  margin:0!important;
  padding:3px 0 3px 42px!important;
  color:#4e5b54!important;
  font-size:.88rem!important;
  line-height:1.55!important;
}
.kh-checkout-page--received .kh-payment-steps-list li::before{
  content:counter(kh-pay-step);
  position:absolute;
  top:0;
  left:0;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid #d7ddd5;
  border-radius:50%;
  background:#fff;
  color:var(--kh-green-700);
  font-size:.72rem;
  font-weight:800;
}
.kh-checkout-page--received .kh-payment-steps-note{
  margin:18px 0 0!important;
  padding:13px 14px!important;
  border-left:3px solid var(--kh-green-700)!important;
  border-radius:0 6px 6px 0!important;
  background:rgba(255,255,255,.72)!important;
  color:#5a655e!important;
  font-size:.78rem!important;
  line-height:1.5!important;
}

/* Total in the hero must read with the same authority as Order and Status. */
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card--total .kh-meta-total-value{
  display:inline-flex!important;
  align-items:baseline!important;
  gap:.12em!important;
  color:#8a6527!important;
  font-family:var(--kh-body)!important;
  font-size:1.38rem!important;
  font-weight:800!important;
  line-height:1.15!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
}

@media (max-width:900px){
  .kh-checkout-page--received .kh-payment-instructions__layout{
    grid-template-columns:1fr!important;
    max-width:600px!important;
    gap:14px!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__qr,
  .kh-checkout-page--received .kh-payment-instructions__steps{padding:21px!important}
}
@media (max-width:620px){
  .kh-checkout-page--received .kh-payment-instructions__head{padding:17px 18px 15px!important}
  .kh-checkout-page--received .kh-payment-instructions__body{padding:14px!important}
  .kh-checkout-page--received .kh-payment-instructions__qr,
  .kh-checkout-page--received .kh-payment-instructions__steps{padding:18px!important}
  .kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-qr-image{width:190px!important}
  .kh-checkout-page--received .kh-payment-steps-head h3{font-size:1.16rem!important}
  .kh-checkout-page--received .kh-payment-steps-list li{padding-left:38px!important;font-size:.84rem!important}
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v2.9 — unified horizontal rhythm
   ======================================================================== */
/*
 * Every primary post-purchase section now uses one shared content shell.
 * Full-bleed section backgrounds remain full width, while the meaningful
 * content starts and ends on the same vertical guides throughout the page.
 */
.kh-checkout-page--received{
  --kh-received-shell:1040px;
  --kh-received-gutter:48px;
}

/* Shared left/right guides. */
.kh-checkout-page--received .kh-thankyou-hero__inner,
.kh-checkout-page--received .kh-thankyou-commerce,
.kh-checkout-page--received .kh-thankyou-next > .kh-container,
.kh-checkout-page--received .kh-thankyou-note__inner,
.kh-checkout-page--received .kh-thankyou-trust > .kh-container{
  width:min(calc(100% - var(--kh-received-gutter)),var(--kh-received-shell))!important;
  max-width:var(--kh-received-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* The hero summary is part of the same horizontal system, not a small island. */
.kh-checkout-page--received .kh-thankyou-hero__meta{
  width:100%!important;
  max-width:none!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  margin-top:26px!important;
}
.kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card{
  min-height:92px!important;
  padding:19px 26px!important;
}

/* WooCommerce's received-order output must consume the complete shared shell. */
.kh-checkout-page--received .kh-thankyou-commerce > .woocommerce,
.kh-checkout-page--received .woocommerce-order{
  width:100%!important;
  max-width:none!important;
}
.kh-checkout-page--received .woocommerce-order{
  grid-template-columns:minmax(0,1.58fr) minmax(285px,.82fr)!important;
  column-gap:24px!important;
  row-gap:22px!important;
}

/* Payment panel aligns exactly with the order-information row below. */
.kh-checkout-page--received .kh-payment-instructions{
  width:100%!important;
  max-width:none!important;
  justify-self:stretch!important;
  margin-left:0!important;
  margin-right:0!important;
}
.kh-checkout-page--received .kh-payment-instructions__head{
  padding:20px 28px 18px!important;
}
.kh-checkout-page--received .kh-payment-instructions__body{
  width:100%!important;
  max-width:none!important;
  padding:28px 30px 30px!important;
}
.kh-checkout-page--received .kh-payment-instructions__layout{
  width:100%!important;
  max-width:none!important;
  grid-template-columns:minmax(300px,.88fr) minmax(360px,1.12fr)!important;
  gap:24px!important;
  align-items:stretch!important;
  margin:0!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr,
.kh-checkout-page--received .kh-payment-instructions__steps{
  width:100%!important;
  min-height:0!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr{
  padding:24px!important;
}
.kh-checkout-page--received .kh-payment-instructions__steps{
  padding:24px 28px!important;
}

/* Keep the information cards below payment on the same outer guides. */
.kh-checkout-page--received .woocommerce-order-details,
.kh-checkout-page--received .woocommerce-customer-details{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}

/* Supporting sections inherit the same width but retain their own full-bleed backgrounds. */
.kh-checkout-page--received .kh-thankyou-next__grid{
  width:100%!important;
  gap:18px!important;
}
.kh-checkout-page--received .kh-thankyou-note__inner{
  box-sizing:border-box!important;
}
.kh-checkout-page--received .kh-thankyou-trust .kh-trust__grid{
  width:100%!important;
}

/* Slightly calmer vertical rhythm now that the horizontal guides are stronger. */
.kh-checkout-page--received .kh-thankyou-commerce-wrap{
  padding-top:48px!important;
  padding-bottom:56px!important;
}
.kh-checkout-page--received .kh-thankyou-next{
  padding-top:54px!important;
  padding-bottom:54px!important;
}
.kh-checkout-page--received .kh-thankyou-note{
  padding-top:38px!important;
  padding-bottom:38px!important;
}

@media (max-width:900px){
  .kh-checkout-page--received{
    --kh-received-gutter:36px;
  }
  .kh-checkout-page--received .woocommerce-order{
    display:block!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__layout{
    grid-template-columns:1fr!important;
    max-width:620px!important;
    margin:0 auto!important;
  }
  .kh-checkout-page--received .woocommerce-order-details,
  .kh-checkout-page--received .woocommerce-customer-details{
    margin-bottom:20px!important;
  }
}

@media (max-width:620px){
  .kh-checkout-page--received{
    --kh-received-gutter:28px;
  }
  .kh-checkout-page--received .kh-thankyou-hero__meta{
    grid-template-columns:1fr!important;
  }
  .kh-checkout-page--received .kh-thankyou-hero__meta .kh-meta-card{
    min-height:0!important;
    padding:16px 18px!important;
    text-align:center!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__head{
    padding:17px 18px 15px!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__body{
    padding:14px!important;
  }
  .kh-checkout-page--received .kh-thankyou-note__inner{
    width:min(calc(100% - var(--kh-received-gutter)),var(--kh-received-shell))!important;
  }
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v3.0 — premium PromptPay payment workspace
   ======================================================================== */
/*
 * The gateway section is the primary action on an unpaid order. Treat it as
 * one focused payment workspace rather than two equally-stretched boxes.
 */
.kh-checkout-page--received .kh-payment-instructions{
  border-color:#d6ddd6!important;
  border-radius:14px!important;
  box-shadow:0 18px 48px rgba(31,55,43,.055)!important;
}
.kh-checkout-page--received .kh-payment-instructions__head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:21px 30px 18px!important;
  border-bottom:1px solid #dde1da!important;
  background:#faf7ef!important;
}
.kh-checkout-page--received .kh-payment-instructions__head h2{
  margin:3px 0 0!important;
  font-size:1.48rem!important;
  line-height:1.08!important;
}
.kh-checkout-page--received .kh-payment-instructions__body{
  padding:28px 30px 30px!important;
  background:#fff!important;
}
.kh-checkout-page--received .kh-payment-instructions__layout{
  grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr)!important;
  gap:22px!important;
  align-items:start!important; /* do not stretch the instructions to QR height */
}

/* QR side: calm white card, slightly denser and more intentional. */
.kh-checkout-page--received .kh-payment-instructions__qr{
  padding:26px 24px 22px!important;
  border:1px solid #dce1db!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#fff 0%,#fcfdfb 100%)!important;
  box-shadow:0 10px 26px rgba(31,55,43,.035)!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr p:first-child,
.kh-checkout-page--received .kh-payment-instructions__qr strong:first-child{
  margin-bottom:15px!important;
  font-size:1.02rem!important;
  font-weight:800!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-logo-wide{
  max-width:190px!important;
  max-height:54px!important;
  margin-bottom:10px!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-logo-small{
  max-width:92px!important;
  max-height:40px!important;
  margin-bottom:12px!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-qr-image{
  width:204px!important;
  margin:2px auto 14px!important;
}
.kh-checkout-page--received .kh-payment-download,
.kh-checkout-page--received .kh-payment-instructions__qr a[download],
.kh-checkout-page--received .kh-payment-instructions__qr a.button,
.kh-checkout-page--received .kh-payment-instructions__qr .button{
  min-height:38px!important;
  padding:9px 16px!important;
  border-radius:6px!important;
  box-shadow:0 6px 14px rgba(47,93,70,.10)!important;
}
.kh-checkout-page--received .kh-payment-expiry{
  margin-top:9px!important;
  padding:7px 11px!important;
  background:#f1f4ec!important;
  font-size:.78rem!important;
}

/* Instruction side: compact action panel with an amount-due summary. */
.kh-checkout-page--received .kh-payment-instructions__steps{
  padding:26px 28px!important;
  border:1px solid #dce1d9!important;
  border-radius:12px!important;
  background:linear-gradient(145deg,#fbf7ed 0%,#f4f6ee 100%)!important;
  box-shadow:0 10px 26px rgba(31,55,43,.03)!important;
}
.kh-checkout-page--received .kh-payment-steps-head{
  margin-bottom:14px!important;
  padding-bottom:14px!important;
  border-bottom:1px solid #dcded6!important;
}
.kh-checkout-page--received .kh-payment-steps-head__icon{
  flex-basis:38px!important;
  width:38px!important;
  height:38px!important;
  border-color:rgba(47,93,70,.26)!important;
  background:#fff!important;
}
.kh-checkout-page--received .kh-payment-steps-head h3{
  font-size:1.34rem!important;
}
.kh-checkout-page--received .kh-payment-due{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin:0 0 18px!important;
  padding:13px 15px!important;
  border:1px solid rgba(47,93,70,.15)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.78)!important;
}
.kh-checkout-page--received .kh-payment-due__copy{
  min-width:0!important;
}
.kh-checkout-page--received .kh-payment-due__copy span{
  display:block!important;
  color:#6b766f!important;
  font-size:.62rem!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
.kh-checkout-page--received .kh-payment-due__copy small{
  display:block!important;
  margin-top:3px!important;
  color:#56625b!important;
  font-size:.76rem!important;
  line-height:1.35!important;
}
.kh-checkout-page--received .kh-payment-due strong{
  flex:0 0 auto!important;
  color:#8a6527!important;
  font-family:var(--kh-heading)!important;
  font-size:1.42rem!important;
  font-weight:750!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.kh-checkout-page--received .kh-payment-steps-list{
  gap:0!important;
  border-top:1px solid rgba(31,55,43,.07)!important;
}
.kh-checkout-page--received .kh-payment-steps-list li{
  min-height:48px!important;
  padding:12px 4px 12px 43px!important;
  border-bottom:1px solid rgba(31,55,43,.075)!important;
  font-size:.86rem!important;
  line-height:1.48!important;
}
.kh-checkout-page--received .kh-payment-steps-list li::before{
  top:10px!important;
  width:27px!important;
  height:27px!important;
  border-color:#d3dbd4!important;
}
.kh-checkout-page--received .kh-payment-after-note{
  display:flex!important;
  gap:10px!important;
  margin-top:16px!important;
  padding:12px 13px!important;
  border-radius:8px!important;
  background:#e9efe6!important;
  color:#48564e!important;
  font-size:.76rem!important;
  line-height:1.48!important;
}
.kh-checkout-page--received .kh-payment-after-note::before{
  content:'✓';
  display:grid;
  place-items:center;
  flex:0 0 22px;
  width:22px;
  height:22px;
  border-radius:50%;
  background:var(--kh-green-700);
  color:#fff;
  font-size:.68rem;
  font-weight:800;
}

@media (max-width:900px){
  .kh-checkout-page--received .kh-payment-instructions__layout{
    grid-template-columns:1fr!important;
    max-width:620px!important;
    margin:0 auto!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__steps{width:100%!important}
}
@media (max-width:620px){
  .kh-checkout-page--received .kh-payment-instructions__head{padding:17px 18px 15px!important}
  .kh-checkout-page--received .kh-payment-instructions__body{padding:15px!important}
  .kh-checkout-page--received .kh-payment-instructions__qr,
  .kh-checkout-page--received .kh-payment-instructions__steps{padding:18px!important}
  .kh-checkout-page--received .kh-payment-due{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
  .kh-checkout-page--received .kh-payment-due strong{font-size:1.3rem!important}
}


/* ========================================================================
   KHINTAWAN ORDER RECEIVED v3.1 — focused payment task, no dead space
   ======================================================================== */
/* One clear header: task on the left, amount due on the right. */
.kh-checkout-page--received .kh-payment-instructions__head{
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  padding:22px 30px!important;
}
.kh-checkout-page--received .kh-payment-instructions__head-copy{
  min-width:0;
}
.kh-checkout-page--received .kh-payment-instructions__head-copy .kh-eyebrow{
  display:block!important;
  margin:0 0 5px!important;
}
.kh-checkout-page--received .kh-payment-instructions__head-copy h2{
  margin:0!important;
  font-size:1.52rem!important;
  line-height:1.08!important;
}
.kh-checkout-page--received .kh-payment-instructions__head-total{
  display:flex;
  align-items:baseline;
  gap:12px;
  flex:0 0 auto;
  padding-left:24px;
  border-left:1px solid #d9ddd6;
  white-space:nowrap;
}
.kh-checkout-page--received .kh-payment-instructions__head-total span{
  color:#68746d;
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.kh-checkout-page--received .kh-payment-instructions__head-total strong{
  color:#8a6527!important;
  font-family:var(--kh-body)!important;
  font-size:1.48rem!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
  line-height:1!important;
}

/* The section is one card. Inner content should not look like two competing cards. */
.kh-checkout-page--received .kh-payment-instructions__body{
  padding:28px 30px 30px!important;
}
.kh-checkout-page--received .kh-payment-instructions__layout{
  grid-template-columns:minmax(280px,360px) minmax(0,1fr)!important;
  gap:38px!important;
  align-items:start!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr{
  align-self:start!important;
  min-height:0!important;
  padding:24px 24px 20px!important;
  border:1px solid #dce2dc!important;
  border-radius:12px!important;
  background:#fbfcf9!important;
  box-shadow:none!important;
}
.kh-checkout-page--received .kh-payment-scan-label{
  margin:0 0 14px!important;
  color:var(--kh-green-950)!important;
  font-size:1rem!important;
  font-weight:800!important;
  line-height:1.35!important;
  text-align:center!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-logo-wide{
  max-width:178px!important;
  max-height:50px!important;
  margin-bottom:9px!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-logo-small{
  max-width:86px!important;
  max-height:36px!important;
  margin-bottom:10px!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-qr-image{
  width:190px!important;
  margin:2px auto 12px!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr .kh-payment-download,
.kh-checkout-page--received .kh-payment-instructions__qr a[download],
.kh-checkout-page--received .kh-payment-instructions__qr a.button,
.kh-checkout-page--received .kh-payment-instructions__qr .button{
  min-height:38px!important;
  margin:4px auto 8px!important;
  padding:9px 16px!important;
}
.kh-checkout-page--received .kh-payment-expiry{
  margin:0 auto!important;
  padding:6px 10px!important;
  background:#eef3ea!important;
  font-size:.75rem!important;
}

/* Instructions become editorial guidance, not a second oversized card. */
.kh-checkout-page--received .kh-payment-instructions__steps{
  align-self:start!important;
  min-height:0!important;
  padding:8px 0 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.kh-checkout-page--received .kh-payment-steps-head{
  margin:0 0 18px!important;
  padding:0 0 17px!important;
  border-bottom:1px solid #dde2dc!important;
}
.kh-checkout-page--received .kh-payment-steps-head__icon{
  width:40px!important;
  height:40px!important;
  flex-basis:40px!important;
  background:#f6faf5!important;
}
.kh-checkout-page--received .kh-payment-steps-head h3{
  font-size:1.42rem!important;
}
.kh-checkout-page--received .kh-payment-steps-list{
  border-top:0!important;
}
.kh-checkout-page--received .kh-payment-steps-list li{
  min-height:54px!important;
  padding:14px 6px 14px 46px!important;
  border-bottom:1px solid #e5e8e2!important;
  color:#48564e!important;
  font-size:.91rem!important;
  line-height:1.5!important;
}
.kh-checkout-page--received .kh-payment-steps-list li::before{
  top:13px!important;
  width:28px!important;
  height:28px!important;
  background:#f8faf7!important;
}
.kh-checkout-page--received .kh-payment-after-note{
  margin-top:18px!important;
  padding:13px 15px!important;
  border:1px solid #dbe4d9!important;
  border-radius:8px!important;
  background:#eef4eb!important;
}
/* Amount now lives in the section header; do not repeat it in the instructions. */
.kh-checkout-page--received .kh-payment-due{display:none!important}

/* Gateway leftovers remain available to scripts but do not reserve layout space. */
.kh-checkout-page--received .kh-payment-runtime-node{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}

@media (max-width:900px){
  .kh-checkout-page--received .kh-payment-instructions__layout{
    grid-template-columns:1fr!important;
    gap:24px!important;
    max-width:620px!important;
    margin:0 auto!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__qr{max-width:390px!important;margin:0 auto!important}
  .kh-checkout-page--received .kh-payment-instructions__steps{width:100%!important}
}
@media (max-width:620px){
  .kh-checkout-page--received .kh-payment-instructions__head{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:13px!important;
    padding:18px!important;
  }
  .kh-checkout-page--received .kh-payment-instructions__head-total{
    width:100%;
    justify-content:space-between;
    padding:12px 0 0;
    border-top:1px solid #d9ddd6;
    border-left:0;
  }
  .kh-checkout-page--received .kh-payment-instructions__body{padding:16px!important}
  .kh-checkout-page--received .kh-payment-instructions__qr{padding:20px!important}
  .kh-checkout-page--received .kh-payment-instructions__steps{padding-top:2px!important}
  .kh-checkout-page--received .kh-payment-instructions__qr img.kh-payment-qr-image{width:180px!important}
}

/* ========================================================================
   KHINTAWAN ORDER RECEIVED v3.2 — preserve live PromptPay QR runtime
   ======================================================================== */
/* The QR gateway must keep its original live wrapper because some PromptPay
 * scripts inject/refresh the QR after page load. Flatten the wrapper visually
 * instead of extracting its children. */
.kh-checkout-page--received .kh-payment-instructions__qr .kh-payment-runtime-node{
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  clip:auto!important;
  clip-path:none!important;
  white-space:normal!important;
  border:0!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr > div,
.kh-checkout-page--received .kh-payment-instructions__qr > section,
.kh-checkout-page--received .kh-payment-instructions__qr > article{
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr div[style],
.kh-checkout-page--received .kh-payment-instructions__qr section[style]{
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr img{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr canvas,
.kh-checkout-page--received .kh-payment-instructions__qr svg{
  display:block!important;
  max-width:210px!important;
  height:auto!important;
  margin:4px auto 12px!important;
  opacity:1!important;
  visibility:visible!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr .kh-payment-logo-wide{
  width:auto!important;
  max-width:178px!important;
  height:auto!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr .kh-payment-logo-small{
  width:auto!important;
  max-width:88px!important;
  height:auto!important;
}
.kh-checkout-page--received .kh-payment-instructions__qr .kh-payment-qr-image{
  width:200px!important;
  max-width:200px!important;
  height:auto!important;
}
/* Avoid gateway text/layout wrappers imposing giant fixed heights. */
.kh-checkout-page--received .kh-payment-instructions__qr [style*="height"],
.kh-checkout-page--received .kh-payment-instructions__qr [style*="min-height"]{
  min-height:0!important;
}
/* Preserve iframe/canvas QR renderers if a gateway version uses them. */
.kh-checkout-page--received .kh-payment-instructions__qr iframe{
  display:block!important;
  width:100%!important;
  max-width:240px!important;
  min-height:240px!important;
  height:240px!important;
  margin:0 auto 12px!important;
  border:0!important;
}
@media (max-width:620px){
  .kh-checkout-page--received .kh-payment-instructions__qr .kh-payment-qr-image,
  .kh-checkout-page--received .kh-payment-instructions__qr canvas,
  .kh-checkout-page--received .kh-payment-instructions__qr svg{
    width:180px!important;
    max-width:180px!important;
  }
}


/* ==========================================================
   v3.3 — bilingual Thai / English language system
   ========================================================== */
.kh-language{
    display:flex;
    align-items:center;
    gap:8px;
    font-weight:700;
    white-space:nowrap;
}
.kh-language__divider{opacity:.48;}
.kh-language__link,
.kh-language__placeholder{
    position:relative;
    display:inline-flex;
    align-items:center;
    min-height:24px;
    color:rgba(255,255,255,.78);
    text-decoration:none;
    transition:color .18s ease,opacity .18s ease;
}
.kh-language__link:hover,
.kh-language__link:focus-visible{color:#fff;}
.kh-language__link.is-active,
.kh-language__placeholder.is-active{color:#fff;}
.kh-language__link.is-active::after,
.kh-language__placeholder.is-active::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-3px;
    height:1px;
    background:#E4C077;
}

/* Thai needs a different typographic rhythm than the English serif display face. */
html[lang^="th"] body,
body.kh-lang-th{
    font-family:"Noto Sans Thai",Tahoma,"Leelawadee UI",Arial,sans-serif;
    line-height:1.72;
}
html[lang^="th"] h1,
html[lang^="th"] h2,
html[lang^="th"] h3,
html[lang^="th"] h4,
html[lang^="th"] h5,
html[lang^="th"] h6,
body.kh-lang-th h1,
body.kh-lang-th h2,
body.kh-lang-th h3,
body.kh-lang-th h4,
body.kh-lang-th h5,
body.kh-lang-th h6,
body.kh-lang-th .kh-story-founder__lead,
body.kh-lang-th blockquote,
body.kh-lang-th .kh-signature p{
    font-family:"Noto Sans Thai",Tahoma,"Leelawadee UI",Arial,sans-serif!important;
    letter-spacing:0!important;
}
html[lang^="th"] h1,
body.kh-lang-th h1{line-height:1.18!important;}
html[lang^="th"] h2,
body.kh-lang-th h2{line-height:1.24!important;}
html[lang^="th"] h3,
body.kh-lang-th h3{line-height:1.34!important;}
body.kh-lang-th .kh-eyebrow{
    letter-spacing:.08em;
}
body.kh-lang-th .kh-btn{
    line-height:1.45;
}
body.kh-lang-th .kh-founder blockquote,
body.kh-lang-th .kh-wisdom-founder__content blockquote,
body.kh-lang-th .kh-story-founder__content blockquote,
body.kh-lang-th .kh-story-memory blockquote,
body.kh-lang-th .kh-story-founder-note__quote blockquote{
    font-style:normal;
}

@media (max-width:767px){
    .kh-language{gap:7px;}
    .kh-language__link,.kh-language__placeholder{min-height:26px;}
}

/* ==========================================================
   v3.4 — Thai homepage hero typography polish
   ========================================================== */
/* Thai display copy needs a smaller scale and more breathing room than the
   English serif headline. This keeps long Thai words from dominating the hero. */
html[lang^="th"] .kh-hero h1,
body.kh-lang-th .kh-hero h1{
    max-width:660px;
    margin:.5rem 0 1rem;
    font-size:clamp(2.65rem,3.55vw,3.8rem)!important;
    line-height:1.16!important;
    font-weight:700;
    letter-spacing:0!important;
    text-wrap:balance;
    word-break:normal;
    overflow-wrap:normal;
}
html[lang^="th"] .kh-hero__lead,
body.kh-lang-th .kh-hero__lead{
    max-width:610px;
    font-size:1.02rem;
    line-height:1.78;
}
html[lang^="th"] .kh-founder-credit,
body.kh-lang-th .kh-founder-credit{
    font-size:1rem;
    line-height:1.65;
    font-style:normal;
}
html[lang^="th"] .kh-hero .kh-eyebrow,
body.kh-lang-th .kh-hero .kh-eyebrow{
    font-size:.76rem;
    line-height:1.5;
    letter-spacing:.06em;
}
html[lang^="th"] .kh-hero .kh-btn,
body.kh-lang-th .kh-hero .kh-btn{
    font-size:.97rem;
    font-weight:600;
    line-height:1.45;
    padding-inline:22px;
}
/* Keep Thai navigation crisp without letting longer labels crowd the search/cart. */
html[lang^="th"] .primary-menu-container .menu > li > a,
body.kh-lang-th .primary-menu-container .menu > li > a{
    font-size:.96rem;
    letter-spacing:0;
}
html[lang^="th"] .kh-utility,
body.kh-lang-th .kh-utility{
    font-size:.76rem;
}

@media (max-width:1024px){
    html[lang^="th"] .kh-hero h1,
    body.kh-lang-th .kh-hero h1{
        font-size:clamp(2.35rem,4.3vw,3.15rem)!important;
        line-height:1.18!important;
    }
}
@media (max-width:767px){
    html[lang^="th"] .kh-hero h1,
    body.kh-lang-th .kh-hero h1{
        max-width:none;
        font-size:clamp(2.05rem,9.5vw,2.75rem)!important;
        line-height:1.2!important;
        text-wrap:pretty;
    }
    html[lang^="th"] .kh-hero__lead,
    body.kh-lang-th .kh-hero__lead{
        font-size:1rem;
        line-height:1.72;
    }
}


/* ==========================================================
   v3.7 — Thai single-product localization polish
   ========================================================== */
body.kh-lang-th.single-product .kh-single-summary h1{
    max-width:620px;
    font-size:clamp(2.35rem,3.45vw,3.55rem)!important;
    line-height:1.18!important;
    font-weight:700;
    text-wrap:balance;
}
body.kh-lang-th.single-product .kh-single-short{
    font-size:1rem;
    line-height:1.82;
}
body.kh-lang-th.single-product .kh-rich-text{
    font-size:1rem;
    line-height:1.88;
}
body.kh-lang-th.single-product .kh-single-details h2,
body.kh-lang-th.single-product .kh-single-guidance h2{
    line-height:1.24!important;
    text-wrap:balance;
}
body.kh-lang-th.single-product .kh-single-details__attributes .shop_attributes th{
    width:46%;
    font-family:"Noto Sans Thai",Tahoma,"Leelawadee UI",Arial,sans-serif;
}
body.kh-lang-th.single-product .kh-single-details__attributes .shop_attributes td{
    font-family:"Noto Sans Thai",Tahoma,"Leelawadee UI",Arial,sans-serif;
}
@media (max-width:767px){
    body.kh-lang-th.single-product .kh-single-summary h1{
        font-size:clamp(2.05rem,9vw,2.7rem)!important;
    }
}


/* ==========================================================
   v3.9 — Thai checkout localization / finishing pass
   ========================================================== */
html[lang^="th"] .kh-checkout-commerce .woocommerce-billing-fields>h3:before,
body.kh-lang-th .kh-checkout-commerce .woocommerce-billing-fields>h3:before{
    content:'ข้อมูลผู้ซื้อ';
    letter-spacing:.08em;
}
html[lang^="th"] .kh-checkout-commerce .woocommerce-additional-fields>h3:before,
body.kh-lang-th .kh-checkout-commerce .woocommerce-additional-fields>h3:before{
    content:'ไม่บังคับ';
    letter-spacing:.06em;
}
html[lang^="th"] .kh-checkout-commerce #payment,
html[lang^="th"] .kh-checkout-commerce #payment label,
html[lang^="th"] .kh-checkout-commerce #payment .payment_box,
body.kh-lang-th .kh-checkout-commerce #payment,
body.kh-lang-th .kh-checkout-commerce #payment label,
body.kh-lang-th .kh-checkout-commerce #payment .payment_box{
    font-family:"Noto Sans Thai",Tahoma,"Leelawadee UI",Arial,sans-serif!important;
}
html[lang^="th"] .kh-checkout-commerce #payment .woocommerce-privacy-policy-text,
body.kh-lang-th .kh-checkout-commerce #payment .woocommerce-privacy-policy-text{
    font-size:.78rem!important;
    line-height:1.65!important;
}
html[lang^="th"] .kh-checkout-commerce .woocommerce-checkout-review-order-table th,
html[lang^="th"] .kh-checkout-commerce .woocommerce-checkout-review-order-table td,
body.kh-lang-th .kh-checkout-commerce .woocommerce-checkout-review-order-table th,
body.kh-lang-th .kh-checkout-commerce .woocommerce-checkout-review-order-table td{
    line-height:1.55!important;
}

/* ========================================================================
   KHINTAWAN CHECKOUT v4.0 — final Thai label polish
   ======================================================================== */
html[lang^="th"] .kh-checkout-commerce #payment:before{
  content:'การชำระเงิน';
  font-family:"Noto Sans Thai",var(--kh-body),sans-serif;
  font-weight:800;
  letter-spacing:0;
}


/* v4.5 — Single product quantity stepper */
.kh-single-buy .quantity{
    display:inline-flex!important;
    align-items:center!important;
    height:48px;
    margin:0!important;
    overflow:hidden;
    border:1px solid rgba(47,93,70,.24);
    border-radius:6px;
    background:#fff;
}
.kh-single-buy .quantity .qty{
    width:54px!important;
    min-width:54px!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0 6px!important;
    border:0!important;
    border-radius:0!important;
    background:#fff!important;
    color:var(--kh-green-950)!important;
    text-align:center!important;
    font-weight:700!important;
    box-shadow:none!important;
    -moz-appearance:textfield;
}
.kh-single-buy .quantity .qty::-webkit-inner-spin-button,
.kh-single-buy .quantity .qty::-webkit-outer-spin-button{
    margin:0;
    -webkit-appearance:none;
}
.kh-single-qty-btn{
    display:grid;
    width:42px;
    min-width:42px;
    height:46px;
    padding:0!important;
    place-items:center;
    border:0!important;
    border-radius:0!important;
    background:#F8F5EE!important;
    color:var(--kh-green-700)!important;
    font:700 1.25rem/1 Arial,sans-serif!important;
    cursor:pointer;
    transition:background .18s ease,color .18s ease;
}
.kh-single-qty-btn:hover,
.kh-single-qty-btn:focus-visible{
    background:#EAF0E8!important;
    color:var(--kh-green-950)!important;
    outline:none;
}
.kh-single-qty-btn--minus{border-right:1px solid rgba(47,93,70,.12)!important}
.kh-single-qty-btn--plus{border-left:1px solid rgba(47,93,70,.12)!important}
.kh-single-buy form.cart .single_add_to_cart_button{
    flex:1 1 190px;
}
@media (max-width:640px){
    .kh-single-buy form.cart{display:grid!important;grid-template-columns:1fr;gap:12px!important}
    .kh-single-buy .quantity{width:100%!important;justify-content:space-between}
    .kh-single-buy .quantity .qty{width:calc(100% - 84px)!important;max-width:none!important}
    .kh-single-buy .single_add_to_cart_button{width:100%!important;min-height:50px}
}


/* v4.5 — Shop-card quick quantity selector */
.kh-shop-card__buy-row{display:grid;grid-template-columns:108px minmax(0,1fr);gap:8px;align-items:stretch;width:100%}
.kh-shop-card__buy-row .kh-btn{min-width:0!important;width:100%!important;padding-left:10px!important;padding-right:10px!important}
.kh-shop-card__qty{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;min-height:42px;overflow:hidden;border:1px solid rgba(47,93,70,.22);border-radius:5px;background:#fff}
.kh-shop-card__qty button{height:40px;padding:0;border:0;background:#F8F5EE;color:var(--kh-green-700);font-weight:800;font-size:1.05rem;cursor:pointer}
.kh-shop-card__qty button:hover{background:#EAF0E8;color:var(--kh-green-950)}
.kh-shop-card__qty-input{width:100%!important;min-width:0!important;height:40px!important;padding:0 3px!important;border:0!important;background:#fff!important;color:var(--kh-green-950)!important;text-align:center!important;font-weight:700!important;box-shadow:none!important;-moz-appearance:textfield}
.kh-shop-card__qty-input::-webkit-inner-spin-button,.kh-shop-card__qty-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
@media (max-width:520px){.kh-shop-card__buy-row{grid-template-columns:104px minmax(0,1fr)}}

/* ========================================================================
   v5.0 — Launch candidate: photo-ready catalogue, responsive QA,
   accessibility focus states and motion preferences.
   ======================================================================== */

/* Accessible, consistent focus treatment across custom KHINTAWAN controls. */
.kh-coded-template a:focus-visible,
.kh-coded-template button:focus-visible,
.kh-coded-template input:focus-visible,
.kh-coded-template select:focus-visible,
.kh-coded-template textarea:focus-visible,
.kh-language__link:focus-visible,
.kh-utility a:focus-visible{
    outline:3px solid rgba(185,144,69,.72)!important;
    outline-offset:3px!important;
    box-shadow:none!important;
}
.kh-btn,
.kh-shop-chip,
.kh-shop-card__details,
.kh-text-link{
    -webkit-tap-highlight-color:transparent;
}

/* Product photography containers are intentionally neutral. Final 1600×1600
   packshots can be uploaded later without changing any page template. */
.kh-shop-card__image,
.kh-product-card__image,
.kh-single-gallery__main{
    background:#F8F4EC;
}
.kh-shop-card__image img:not(.woocommerce-placeholder),
.kh-product-card__image img:not(.woocommerce-placeholder),
.kh-single-main-image{
    mix-blend-mode:normal!important;
    object-fit:contain!important;
}
.kh-shop-card__image img,
.kh-product-card__image img{
    max-width:100%;
    max-height:100%;
}
.kh-single-main-image{
    width:100%;
    height:100%;
}
.kh-cart-item__image,
.kh-cart-shell--classic td.product-thumbnail img,
.kh-checkout-product-thumb{
    object-fit:contain!important;
    background:#F8F4EC!important;
    padding:3px;
}

/* Equalize catalogue rhythm independently of the photography itself. */
@media (min-width:521px){
    .kh-shop-card h2{min-height:4.05em;}
    .kh-product-card h3{min-height:4.05em;}
}
.kh-shop-card__price,
.kh-product-card__price{
    font-variant-numeric:tabular-nums;
}
.kh-product-track{
    scroll-snap-type:x proximity;
    overscroll-behavior-inline:contain;
}
.kh-product-card{
    scroll-snap-align:start;
}

/* WC quantity controls meet a comfortable touch target. */
.kh-single-qty-btn,
.kh-shop-card__qty button{
    min-width:44px;
    min-height:44px;
}
.kh-shop-card__qty{
    grid-template-columns:36px minmax(32px,1fr) 36px;
    min-height:44px;
}
.kh-shop-card__qty button{height:44px;}
.kh-shop-card__qty-input{height:44px!important;}

/* Prevent long translated/legal strings from forcing horizontal overflow. */
.kh-coded-template p,
.kh-coded-template li,
.kh-coded-template td,
.kh-coded-template th,
.kh-home-footer a,
.kh-home-footer p,
.kh-contact-details,
.kh-checkout-commerce{
    overflow-wrap:anywhere;
}

/* Tablet QA: preserve breathing room while avoiding over-wide gutters. */
@media (max-width:1024px){
    .kh-container{width:min(calc(100% - 40px),var(--kh-container));}
    .kh-shop-card__buy-row{grid-template-columns:104px minmax(0,1fr);}
    .kh-home-footer__grid{gap:34px 28px;}
}

/* Mobile QA across the coded commerce/editorial templates. */
@media (max-width:767px){
    .kh-container{width:min(calc(100% - 32px),var(--kh-container));}
    .kh-btn{min-height:48px;padding:12px 18px;}
    .kh-shop-card h2,.kh-product-card h3{min-height:0;}
    .kh-shop-card__buy-row{grid-template-columns:112px minmax(0,1fr);gap:10px;}
    .kh-shop-card__qty{grid-template-columns:36px minmax(32px,1fr) 36px;}
    .kh-single-gallery__thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
    .kh-home-footer__contact p{max-width:34rem;}
    .kh-home-footer__bottom{width:min(calc(100% - 32px),var(--kh-container));}
}

@media (max-width:520px){
    .kh-container{width:min(calc(100% - 28px),var(--kh-container));}
    .kh-utility__benefits{display:none;}
    .kh-utility__inner{justify-content:flex-end;}
    .kh-utility__right{width:100%;justify-content:flex-end;}
    .kh-home-footer__grid{grid-template-columns:1fr;gap:28px;}
    .kh-home-footer__brand,.kh-home-footer__contact{grid-column:auto;}
    .kh-home-footer__nav{padding-top:2px;}
    .kh-home-footer__bottom{width:min(calc(100% - 28px),var(--kh-container));}
    .kh-shop-card__buy-row{grid-template-columns:116px minmax(0,1fr);}
    .kh-shop-card__image{min-height:0;aspect-ratio:1/1;}
    .kh-product-track{grid-auto-columns:88%;}
}

/* Respect user motion preferences and avoid animated zoom/scroll effects. */
@media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto!important;}
    *,*::before,*::after{
        scroll-behavior:auto!important;
        transition-duration:.01ms!important;
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
    }
    .kh-shop-card:hover .kh-shop-card__image img,
    .kh-need-card:hover{transform:none!important;}
}

/* ========================================================================
   v5.1 — Refined homepage product-carousel navigation
   Compact circular controls with crisp SVG chevrons. Explicitly reset theme
   button padding/min-width so Kadence/global button styles cannot turn them
   into oversized pills.
   ======================================================================== */
.kh-product-carousel .kh-carousel-btn{
    -webkit-appearance:none!important;
    appearance:none!important;
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    position:absolute!important;
    z-index:8!important;
    top:50%!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(47,93,70,.30)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.96)!important;
    color:var(--kh-green-950)!important;
    line-height:1!important;
    font-size:0!important;
    box-shadow:0 8px 24px rgba(25,55,42,.12)!important;
    transform:translateY(-50%)!important;
    cursor:pointer!important;
    transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.kh-product-carousel .kh-carousel-btn--prev{left:-22px!important;}
.kh-product-carousel .kh-carousel-btn--next{right:-22px!important;}
.kh-product-carousel .kh-carousel-btn__icon{
    display:block;
    width:19px;
    height:19px;
    overflow:visible;
    pointer-events:none;
}
.kh-product-carousel .kh-carousel-btn__icon path{
    fill:none;
    stroke:currentColor;
    stroke-width:2.25;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.kh-product-carousel .kh-carousel-btn:hover{
    background:var(--kh-green-700)!important;
    color:#fff!important;
    border-color:var(--kh-green-700)!important;
    box-shadow:0 10px 26px rgba(25,55,42,.18)!important;
}
.kh-product-carousel .kh-carousel-btn:active{
    transform:translateY(-50%) scale(.94)!important;
}
.kh-product-carousel .kh-carousel-btn:focus-visible{
    outline:3px solid rgba(185,144,69,.72)!important;
    outline-offset:3px!important;
}
@media (max-width:1180px) and (min-width:768px){
    .kh-product-carousel .kh-carousel-btn--prev{left:8px!important;}
    .kh-product-carousel .kh-carousel-btn--next{right:8px!important;}
}
@media (max-width:767px){
    .kh-product-carousel .kh-carousel-btn{display:none!important;}
}


/* ==========================================================
   v5.2 — Homepage hero editorial refinement
   ========================================================== */
/* The original split hero felt too rigid at wide desktop sizes. This treatment
   keeps the same approved copy/image while creating a calmer, premium editorial
   composition with a contained visual, stronger spacing rhythm, and cleaner
   founder attribution. */
.kh-home .kh-hero{
    padding-block:clamp(34px,4vw,58px);
    background:
        radial-gradient(circle at 12% 16%, rgba(185,144,69,.075), transparent 27%),
        linear-gradient(112deg,#FCF8F0 0%,#F8F2E7 62%,#F2E8D9 100%);
}
.kh-home .kh-hero::before{
    width:420px;
    height:420px;
    left:-170px;
    bottom:-230px;
    background:radial-gradient(circle,rgba(47,93,70,.07),transparent 69%);
}
.kh-home .kh-hero__grid{
    min-height:540px;
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    gap:clamp(42px,5vw,76px);
    align-items:center;
}
.kh-home .kh-hero__copy{
    max-width:650px;
    padding:38px 0;
}
.kh-home .kh-hero .kh-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:9px;
}
.kh-home .kh-hero .kh-eyebrow::before{
    content:"";
    width:28px;
    height:1px;
    background:var(--kh-gold);
    opacity:.9;
}
.kh-home .kh-hero h1{
    max-width:640px;
    margin:.25rem 0 1.15rem;
    font-size:clamp(2.75rem,4.15vw,4.25rem);
    line-height:1.035;
    letter-spacing:-.035em;
    text-wrap:balance;
}
.kh-home .kh-hero__lead{
    max-width:570px;
    margin:0 0 1.2rem;
    font-size:1.05rem;
    line-height:1.72;
    color:#56615b;
}
.kh-home .kh-founder-credit{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 0 1.65rem;
    color:var(--kh-green-700);
    font-size:.98rem;
    font-weight:650;
    font-style:italic;
}
.kh-home .kh-founder-credit::before{
    content:"";
    flex:0 0 34px;
    height:1px;
    background:var(--kh-gold);
}
.kh-home .kh-hero .kh-actions{
    gap:12px;
}
.kh-home .kh-hero .kh-btn{
    min-height:48px;
    padding:12px 23px;
    border-radius:7px;
    box-shadow:none;
}
.kh-home .kh-hero .kh-btn--primary{
    box-shadow:0 8px 20px rgba(30,63,49,.11);
}
.kh-home .kh-hero__visual{
    height:auto;
    min-height:0;
    aspect-ratio:1.12 / 1;
    border-radius:26px;
    overflow:hidden;
    background:#EFE4D4;
    border:1px solid rgba(30,47,39,.10);
    box-shadow:0 24px 55px rgba(30,47,39,.11);
    isolation:isolate;
}
.kh-home .kh-hero__visual::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    border-radius:inherit;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);
}
.kh-home .kh-hero-scene{
    width:100%;
    height:100%;
    min-height:0;
    object-fit:cover;
    object-position:50% 50%;
    transition:transform .45s ease;
}
@media (hover:hover){
    .kh-home .kh-hero__visual:hover .kh-hero-scene{ transform:scale(1.012); }
}

/* Thai hero: maintain the approved wording, but give it a slightly more
   restrained display scale so the copy and product image share attention. */
html[lang^="th"] .kh-home .kh-hero__copy,
body.kh-lang-th .kh-home .kh-hero__copy{
    max-width:680px;
}
html[lang^="th"] .kh-home .kh-hero h1,
body.kh-lang-th .kh-home .kh-hero h1{
    max-width:670px;
    font-size:clamp(2.7rem,3.3vw,3.55rem)!important;
    line-height:1.16!important;
    letter-spacing:0!important;
    text-wrap:balance;
}
html[lang^="th"] .kh-home .kh-hero__lead,
body.kh-lang-th .kh-home .kh-hero__lead{
    max-width:610px;
    font-size:1.02rem;
    line-height:1.82;
}
html[lang^="th"] .kh-home .kh-founder-credit,
body.kh-lang-th .kh-home .kh-founder-credit{
    font-style:normal;
}

@media (max-width:1100px){
    .kh-home .kh-hero{
        padding-block:34px 42px;
    }
    .kh-home .kh-hero__grid{
        min-height:500px;
        grid-template-columns:minmax(0,1fr) minmax(0,.96fr);
        gap:34px;
    }
    .kh-home .kh-hero__copy{
        padding:26px 0;
    }
    .kh-home .kh-hero h1{
        font-size:clamp(2.55rem,4.6vw,3.5rem);
    }
    .kh-home .kh-hero__visual{
        aspect-ratio:1 / 1;
        border-radius:22px;
    }
}

@media (max-width:767px){
    .kh-home .kh-hero{
        padding-block:20px 28px;
    }
    .kh-home .kh-hero__grid{
        grid-template-columns:1fr;
        gap:24px;
    }
    .kh-home .kh-hero__copy{
        max-width:none;
        padding:24px 0 0;
    }
    .kh-home .kh-hero h1{
        max-width:none;
        margin-bottom:1rem;
        font-size:clamp(2.3rem,11vw,3.15rem);
        line-height:1.07;
    }
    .kh-home .kh-hero__lead{
        max-width:none;
        font-size:1rem;
        line-height:1.68;
    }
    .kh-home .kh-founder-credit{
        align-items:flex-start;
        margin-bottom:1.35rem;
    }
    .kh-home .kh-founder-credit::before{
        margin-top:.7em;
        flex-basis:24px;
    }
    .kh-home .kh-hero .kh-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
        width:100%;
    }
    .kh-home .kh-hero .kh-btn{
        width:100%;
        padding-inline:14px;
    }
    .kh-home .kh-hero__visual{
        width:100%;
        aspect-ratio:1.18 / 1;
        border-radius:18px;
    }
    html[lang^="th"] .kh-home .kh-hero h1,
    body.kh-lang-th .kh-home .kh-hero h1{
        max-width:none;
        font-size:clamp(2.15rem,9.2vw,2.75rem)!important;
        line-height:1.2!important;
    }
}

@media (max-width:430px){
    .kh-home .kh-hero .kh-actions{
        grid-template-columns:1fr;
    }
}

/* ==========================================================
   v5.3 — KHINTAWAN blended / faded editorial hero
   ========================================================== */
.kh-home .kh-hero {
    position: relative;
    overflow: hidden;
    padding: 38px 0 50px;
    background:
        radial-gradient(circle at 12% 16%, rgba(185, 144, 69, 0.07), transparent 30%),
        linear-gradient(110deg, #fbf7ef 0%, #f9f3e9 55%, #f3e8d8 100%);
}
.kh-home .kh-hero::before { display: none; }

.kh-home .kh-hero__grid {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
    gap: 0;
    align-items: stretch;
    min-height: 610px;
    overflow: hidden;
    border-radius: 28px;
    border: 1px solid rgba(30, 63, 49, 0.10);
    background:
        radial-gradient(circle at 17% 18%, rgba(196, 154, 82, 0.07), transparent 32%),
        linear-gradient(100deg, #fcf9f3 0%, #fbf6ee 47%, #f4eadc 100%);
    box-shadow: 0 24px 65px rgba(30, 47, 39, 0.10);
}
.kh-home .kh-hero__grid::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 10;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.28);
}

.kh-home .kh-hero__copy {
    position: relative;
    z-index: 5;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 720px;
    padding: 68px 30px 68px clamp(42px, 4.2vw, 72px);
}
.kh-home .kh-hero .kh-eyebrow {
    position: relative;
    display: inline-block;
    width: fit-content;
    margin: 0 0 24px;
    padding-bottom: 15px;
    color: #2f5d46;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}
.kh-home .kh-hero .kh-eyebrow::before { display: none; }
.kh-home .kh-hero .kh-eyebrow::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 190px;
    height: 1px;
    background: linear-gradient(90deg, #c89c52 0%, #dcb66e 75%, transparent 100%);
}

.kh-home .kh-hero h1 {
    position: relative;
    max-width: 650px;
    margin: 0 0 24px;
    font-size: clamp(3rem, 3.95vw, 4.25rem);
    line-height: 1.035;
    letter-spacing: -0.035em;
    text-wrap: balance;
}
.kh-home .kh-hero__lead {
    max-width: 590px;
    margin: 0 0 22px;
    font-size: 1.06rem;
    line-height: 1.72;
    color: #58635e;
}
.kh-home .kh-founder-credit {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 27px;
    color: #2f694d;
    font-size: 1rem;
    font-weight: 650;
    font-style: italic;
}
.kh-home .kh-founder-credit::before {
    content: "";
    width: 35px;
    height: 1px;
    flex: 0 0 35px;
    background: #c69a50;
}
.kh-home .kh-hero .kh-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 2px;
}
.kh-home .kh-hero .kh-btn {
    min-height: 49px;
    padding: 13px 25px;
    border-radius: 6px;
    font-weight: 600;
}
.kh-home .kh-hero .kh-btn--primary {
    box-shadow: 0 9px 22px rgba(30, 63, 49, 0.13);
}

.kh-home .kh-hero__visual {
    position: relative;
    z-index: 1;
    height: 100%;
    min-height: 610px;
    margin-left: -95px;
    width: calc(100% + 95px);
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: #efe6d7;
    box-shadow: none;
    aspect-ratio: auto;
}
.kh-home .kh-hero__visual::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    background: linear-gradient(
        90deg,
        #fbf6ee 0%,
        rgba(251, 246, 238, 0.98) 7%,
        rgba(251, 246, 238, 0.88) 15%,
        rgba(251, 246, 238, 0.67) 24%,
        rgba(251, 246, 238, 0.34) 32%,
        rgba(251, 246, 238, 0.08) 40%,
        rgba(251, 246, 238, 0) 48%
    );
}
.kh-home .kh-hero__visual::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    border-radius: 0;
    box-shadow: none;
    background:
        linear-gradient(180deg, rgba(255, 250, 242, 0.08) 0%, rgba(30, 50, 40, 0.03) 100%),
        linear-gradient(270deg, rgba(60, 37, 20, 0.05), transparent 28%);
}
.kh-home .kh-hero-scene {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    min-height: 610px;
    object-fit: cover;
    object-position: 54% center;
    filter: saturate(0.96) contrast(1.015) brightness(1.01);
    transform: scale(1.015);
    transition: transform 0.6s ease;
}
@media (hover: hover) {
    .kh-home .kh-hero__visual:hover .kh-hero-scene { transform: scale(1.03); }
}

html[lang^="th"] .kh-home .kh-hero__copy,
body.kh-lang-th .kh-home .kh-hero__copy { max-width: 735px; }
html[lang^="th"] .kh-home .kh-hero h1,
body.kh-lang-th .kh-home .kh-hero h1 {
    max-width: 670px;
    font-size: clamp(2.85rem, 3.25vw, 3.6rem) !important;
    line-height: 1.17 !important;
    letter-spacing: 0 !important;
}
html[lang^="th"] .kh-home .kh-hero__lead,
body.kh-lang-th .kh-home .kh-hero__lead {
    max-width: 600px;
    line-height: 1.82;
}
html[lang^="th"] .kh-home .kh-founder-credit,
body.kh-lang-th .kh-home .kh-founder-credit { font-style: normal; }

@media (max-width: 1100px) {
    .kh-home .kh-hero { padding: 28px 0 38px; }
    .kh-home .kh-hero__grid {
        min-height: 530px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.96fr);
        border-radius: 22px;
    }
    .kh-home .kh-hero__copy { padding: 48px 12px 48px 40px; }
    .kh-home .kh-hero h1 { font-size: clamp(2.55rem, 4.3vw, 3.55rem); }
    .kh-home .kh-hero__visual {
        min-height: 530px;
        margin-left: -55px;
        width: calc(100% + 55px);
    }
    .kh-home .kh-hero-scene { min-height: 530px; }
    .kh-home .kh-hero__visual::before {
        background: linear-gradient(
            90deg,
            #fbf6ee 0%,
            rgba(251,246,238,0.96) 9%,
            rgba(251,246,238,0.72) 23%,
            rgba(251,246,238,0.28) 37%,
            transparent 49%
        );
    }
}

@media (max-width: 767px) {
    .kh-home .kh-hero { padding: 18px 0 28px; }
    .kh-home .kh-hero__grid {
        display: grid;
        grid-template-columns: 1fr;
        min-height: auto;
        border-radius: 20px;
    }
    .kh-home .kh-hero__copy {
        max-width: none;
        padding: 38px 24px 30px;
    }
    .kh-home .kh-hero .kh-eyebrow {
        margin-bottom: 19px;
        font-size: 0.75rem;
    }
    .kh-home .kh-hero h1 {
        max-width: none;
        margin-bottom: 18px;
        font-size: clamp(2.25rem, 10.5vw, 3.1rem);
        line-height: 1.07;
    }
    .kh-home .kh-hero__lead {
        max-width: none;
        font-size: 1rem;
        line-height: 1.68;
    }
    .kh-home .kh-founder-credit {
        align-items: flex-start;
        margin-bottom: 23px;
    }
    .kh-home .kh-founder-credit::before {
        width: 24px;
        flex-basis: 24px;
        margin-top: 0.7em;
    }
    .kh-home .kh-hero .kh-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }
    .kh-home .kh-hero .kh-btn {
        width: 100%;
        padding-inline: 12px;
        text-align: center;
    }
    .kh-home .kh-hero__visual {
        width: 100%;
        min-height: 360px;
        margin-left: 0;
        border-radius: 0;
    }
    .kh-home .kh-hero-scene {
        min-height: 360px;
        object-position: center;
    }
    .kh-home .kh-hero__visual::before {
        background: linear-gradient(
            180deg,
            #fbf6ee 0%,
            rgba(251,246,238,0.82) 6%,
            rgba(251,246,238,0.30) 15%,
            transparent 28%
        );
    }
    html[lang^="th"] .kh-home .kh-hero h1,
    body.kh-lang-th .kh-home .kh-hero h1 {
        max-width: none;
        font-size: clamp(2.15rem, 9vw, 2.75rem) !important;
        line-height: 1.21 !important;
    }
}

@media (max-width: 430px) {
    .kh-home .kh-hero__copy { padding: 34px 20px 26px; }
    .kh-home .kh-hero .kh-actions { grid-template-columns: 1fr; }
    .kh-home .kh-hero__visual,
    .kh-home .kh-hero-scene { min-height: 320px; }
}

/* ==========================================================
   v5.5 — Full-bleed cinematic homepage hero
   Replaces the framed/card treatment with a true full-width
   editorial hero and a soft cream-to-photography transition.
   ========================================================== */
@media (min-width: 901px) {
    .kh-home .kh-hero {
        position: relative;
        width: 100vw;
        margin-left: calc(50% - 50vw);
        padding: 0;
        overflow: hidden;
        background: #f8f1e6;
        min-height: clamp(680px, calc(100svh - 118px), 860px);
        isolation: isolate;
    }

    /* Full-width stage: deliberately override .kh-container. */
    .kh-home .kh-hero > .kh-container.kh-hero__grid {
        position: relative;
        width: 100%;
        max-width: none;
        min-height: inherit;
        margin: 0;
        padding: 0;
        display: block;
        overflow: hidden;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .kh-home .kh-hero__grid::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 4;
        pointer-events: none;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        background:
            linear-gradient(180deg, rgba(255,255,255,.05), transparent 26%, transparent 76%, rgba(30,63,49,.055)),
            linear-gradient(270deg, rgba(30,35,25,.10) 0%, transparent 20%);
    }

    /* Image occupies the full right side of the viewport. */
    .kh-home .kh-hero__visual {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        bottom: 0;
        left: 35%;
        width: auto;
        height: auto;
        min-height: 100%;
        margin: 0;
        overflow: hidden;
        border: 0;
        border-radius: 0;
        background: #e8decd;
        box-shadow: none;
        aspect-ratio: auto;
    }

    /* The key blend: image dissolves naturally into the cream copy area. */
    .kh-home .kh-hero__visual::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 3;
        pointer-events: none;
        background:
            linear-gradient(
                90deg,
                #f8f1e6 0%,
                rgba(248,241,230,.995) 6%,
                rgba(248,241,230,.96) 12%,
                rgba(248,241,230,.82) 20%,
                rgba(248,241,230,.58) 28%,
                rgba(248,241,230,.28) 36%,
                rgba(248,241,230,.08) 43%,
                transparent 50%
            );
    }

    .kh-home .kh-hero__visual::after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 2;
        pointer-events: none;
        background:
            radial-gradient(circle at 55% 43%, transparent 0%, transparent 44%, rgba(28,43,34,.05) 100%),
            linear-gradient(180deg, rgba(255,249,239,.04), rgba(36,35,25,.035));
    }

    .kh-home .kh-hero-scene {
        position: absolute;
        inset: 0;
        z-index: 1;
        display: block;
        width: 100%;
        height: 100%;
        min-height: 100%;
        object-fit: cover;
        object-position: 56% center;
        filter: saturate(.98) contrast(1.025) brightness(1.015);
        transform: none;
        transition: none;
    }

    /* Copy becomes an editorial layer, not a separate card/column. */
    .kh-home .kh-hero__copy {
        position: relative;
        z-index: 6;
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: min(49vw, 820px);
        max-width: 820px;
        min-height: inherit;
        margin: 0;
        padding:
            clamp(56px, 7vh, 84px)
            24px
            clamp(58px, 7vh, 90px)
            clamp(48px, 7.4vw, 150px);
        box-sizing: border-box;
    }

    .kh-home .kh-hero .kh-eyebrow {
        margin: 0 0 24px;
        padding: 0 0 17px;
        color: #2f5d46;
        font-size: .82rem;
        font-weight: 700;
        letter-spacing: .19em;
        text-transform: uppercase;
    }

    .kh-home .kh-hero .kh-eyebrow::before { display: none; }
    .kh-home .kh-hero .kh-eyebrow::after {
        width: 210px;
        height: 1px;
        background: linear-gradient(90deg, #b98637 0%, #d9b76f 54%, transparent 100%);
    }

    .kh-home .kh-hero h1 {
        max-width: 700px;
        margin: 0 0 24px;
        color: #173f31;
        font-size: clamp(3.5rem, 4.45vw, 5.25rem);
        line-height: .99;
        letter-spacing: -.041em;
        text-wrap: balance;
        text-shadow: 0 1px 0 rgba(255,255,255,.25);
    }

    .kh-home .kh-hero__lead {
        max-width: 610px;
        margin: 0 0 23px;
        color: #52615a;
        font-size: clamp(1.03rem, 1.12vw, 1.16rem);
        line-height: 1.7;
    }

    .kh-home .kh-founder-credit {
        display: flex;
        align-items: center;
        gap: 13px;
        max-width: 610px;
        margin: 0 0 29px;
        color: #2f694d;
        font-size: 1rem;
        font-weight: 650;
        font-style: italic;
    }

    .kh-home .kh-founder-credit::before {
        width: 36px;
        height: 1px;
        flex: 0 0 36px;
        background: #b98637;
    }

    .kh-home .kh-hero .kh-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 14px;
        margin: 0;
    }

    .kh-home .kh-hero .kh-btn {
        min-height: 52px;
        padding: 14px 27px;
        border-radius: 5px;
        font-weight: 650;
    }

    .kh-home .kh-hero .kh-btn--primary {
        box-shadow: 0 11px 28px rgba(30,63,49,.15);
    }

    html[lang^="th"] .kh-home .kh-hero__copy,
    body.kh-lang-th .kh-home .kh-hero__copy {
        width: min(51vw, 850px);
        max-width: 850px;
    }

    html[lang^="th"] .kh-home .kh-hero h1,
    body.kh-lang-th .kh-home .kh-hero h1 {
        max-width: 720px;
        font-size: clamp(3.2rem, 3.75vw, 4.45rem) !important;
        line-height: 1.14 !important;
        letter-spacing: 0 !important;
    }

    html[lang^="th"] .kh-home .kh-hero__lead,
    body.kh-lang-th .kh-home .kh-hero__lead {
        max-width: 620px;
        line-height: 1.82;
    }

    html[lang^="th"] .kh-home .kh-founder-credit,
    body.kh-lang-th .kh-home .kh-founder-credit {
        font-style: normal;
    }
}

/* Mid-size laptops: retain full bleed, keep the copy from colliding with product. */
@media (min-width: 901px) and (max-width: 1280px) {
    .kh-home .kh-hero {
        min-height: 660px;
    }
    .kh-home .kh-hero__visual {
        left: 40%;
    }
    .kh-home .kh-hero__copy {
        width: 52vw;
        padding-left: clamp(38px, 5vw, 70px);
    }
    .kh-home .kh-hero h1 {
        font-size: clamp(3rem, 4.6vw, 4rem);
        max-width: 610px;
    }
    .kh-home .kh-hero__visual::before {
        background: linear-gradient(
            90deg,
            #f8f1e6 0%,
            rgba(248,241,230,.99) 8%,
            rgba(248,241,230,.88) 20%,
            rgba(248,241,230,.56) 31%,
            rgba(248,241,230,.18) 43%,
            transparent 53%
        );
    }
    html[lang^="th"] .kh-home .kh-hero h1,
    body.kh-lang-th .kh-home .kh-hero h1 {
        font-size: clamp(2.8rem, 4vw, 3.55rem) !important;
    }
}

/* Tablet and mobile: clean stacked editorial composition. */
@media (max-width: 900px) {
    .kh-home .kh-hero {
        width: 100%;
        margin-left: 0;
        padding: 0;
        background: #f8f1e6;
    }
    .kh-home .kh-hero > .kh-container.kh-hero__grid {
        width: 100%;
        max-width: none;
        min-height: auto;
        margin: 0;
        padding: 0;
        display: grid;
        grid-template-columns: 1fr;
        overflow: hidden;
        border: 0;
        border-radius: 0;
        background: #f8f1e6;
        box-shadow: none;
    }
    .kh-home .kh-hero__grid::after { display: none; }
    .kh-home .kh-hero__copy {
        order: 1;
        width: 100%;
        max-width: none;
        min-height: auto;
        padding: 46px clamp(22px, 6vw, 52px) 34px;
    }
    .kh-home .kh-hero__visual {
        order: 2;
        position: relative;
        inset: auto;
        width: 100%;
        min-height: clamp(340px, 58vw, 520px);
        margin: 0;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }
    .kh-home .kh-hero-scene {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        min-height: 100%;
        object-fit: cover;
        object-position: center center;
        transform: none;
    }
    .kh-home .kh-hero__visual::before {
        background: linear-gradient(
            180deg,
            #f8f1e6 0%,
            rgba(248,241,230,.86) 6%,
            rgba(248,241,230,.35) 16%,
            transparent 30%
        );
    }
    .kh-home .kh-hero__visual::after {
        background: linear-gradient(180deg, transparent 65%, rgba(27,49,39,.06));
    }
    .kh-home .kh-hero h1 {
        max-width: 720px;
        font-size: clamp(2.55rem, 8vw, 4rem);
        line-height: 1.02;
    }
    .kh-home .kh-hero__lead {
        max-width: 670px;
    }
    html[lang^="th"] .kh-home .kh-hero h1,
    body.kh-lang-th .kh-home .kh-hero h1 {
        max-width: 730px;
        font-size: clamp(2.45rem, 7vw, 3.55rem) !important;
        line-height: 1.18 !important;
    }
}

@media (max-width: 560px) {
    .kh-home .kh-hero__copy {
        padding: 38px 20px 28px;
    }
    .kh-home .kh-hero .kh-eyebrow {
        margin-bottom: 20px;
        font-size: .72rem;
    }
    .kh-home .kh-hero h1 {
        font-size: clamp(2.25rem, 10.7vw, 3.05rem);
        margin-bottom: 18px;
    }
    .kh-home .kh-hero__lead {
        font-size: .98rem;
        line-height: 1.66;
    }
    .kh-home .kh-founder-credit {
        margin-bottom: 23px;
    }
    .kh-home .kh-hero .kh-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }
    .kh-home .kh-hero .kh-btn {
        width: 100%;
        text-align: center;
    }
    .kh-home .kh-hero__visual {
        min-height: 330px;
    }
    html[lang^="th"] .kh-home .kh-hero h1,
    body.kh-lang-th .kh-home .kh-hero h1 {
        font-size: clamp(2.2rem, 10vw, 2.9rem) !important;
    }
}

/* =========================================================
   Search popup polish (v5.6)
   ========================================================= */
#search-drawer .drawer-overlay,
.search-drawer .drawer-overlay,
.search-popup .drawer-overlay,
.popup-drawer[data-drawer="search"] .drawer-overlay {
    background: rgba(9, 22, 17, 0.68);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

#search-drawer .drawer-inner,
.search-drawer .drawer-inner,
.search-popup .drawer-inner,
.popup-drawer[data-drawer="search"] .drawer-inner {
    background: transparent;
    padding: clamp(92px, 12vh, 136px) 24px 48px;
}

#search-drawer .drawer-header,
.search-drawer .drawer-header,
.search-popup .drawer-header,
.popup-drawer[data-drawer="search"] .drawer-header {
    width: min(100%, 980px);
    margin: 0 auto 18px;
    display: flex;
    justify-content: flex-end;
}

#search-drawer .drawer-toggle,
.search-drawer .drawer-toggle,
.search-popup .drawer-toggle,
.popup-drawer[data-drawer="search"] .drawer-toggle,
#search-drawer .drawer-close,
.search-drawer .drawer-close,
.search-popup .drawer-close,
.popup-drawer[data-drawer="search"] .drawer-close {
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(21, 57, 43, 0.12);
    background: rgba(252, 249, 243, 0.96);
    color: #173b2d;
    box-shadow: 0 14px 36px rgba(10, 24, 19, 0.18);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

#search-drawer .drawer-toggle:hover,
.search-drawer .drawer-toggle:hover,
.search-popup .drawer-toggle:hover,
.popup-drawer[data-drawer="search"] .drawer-toggle:hover,
#search-drawer .drawer-close:hover,
.search-drawer .drawer-close:hover,
.search-popup .drawer-close:hover,
.popup-drawer[data-drawer="search"] .drawer-close:hover {
    background: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 18px 40px rgba(10, 24, 19, 0.22);
}

#search-drawer .drawer-content,
.search-drawer .drawer-content,
.search-popup .drawer-content,
.popup-drawer[data-drawer="search"] .drawer-content,
#search-drawer .search-toggle-open-container,
.search-drawer .search-toggle-open-container,
.search-popup .search-toggle-open-container,
.popup-drawer[data-drawer="search"] .search-toggle-open-container {
    width: min(100%, 980px);
    margin: 0 auto;
}

#search-drawer .search-form,
.search-drawer .search-form,
.search-popup .search-form,
.popup-drawer[data-drawer="search"] .search-form,
#search-drawer form[role="search"],
.search-drawer form[role="search"],
.search-popup form[role="search"],
.popup-drawer[data-drawer="search"] form[role="search"] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 12px;
    border-radius: 26px;
    border: 1px solid rgba(23, 59, 45, 0.10);
    background: linear-gradient(180deg, rgba(252, 249, 243, 0.97) 0%, rgba(248, 244, 236, 0.94) 100%);
    box-shadow: 0 30px 80px rgba(10, 24, 19, 0.22);
}

#search-drawer .search-form label,
.search-drawer .search-form label,
.search-popup .search-form label,
.popup-drawer[data-drawer="search"] .search-form label,
#search-drawer form[role="search"] label,
.search-drawer form[role="search"] label,
.search-popup form[role="search"] label,
.popup-drawer[data-drawer="search"] form[role="search"] label {
    display: block;
    width: 100%;
    margin: 0;
}

#search-drawer .search-field,
.search-drawer .search-field,
.search-popup .search-field,
.popup-drawer[data-drawer="search"] .search-field,
#search-drawer input[type="search"],
.search-drawer input[type="search"],
.search-popup input[type="search"],
.popup-drawer[data-drawer="search"] input[type="search"] {
    width: 100%;
    height: 72px;
    margin: 0;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 18px !important;
    background: transparent !important;
    color: #183a2c !important;
    font-size: clamp(1.35rem, 2.4vw, 2rem) !important;
    font-weight: 600;
    line-height: 1.2;
    box-shadow: none !important;
    outline: none !important;
}

#search-drawer .search-field::placeholder,
.search-drawer .search-field::placeholder,
.search-popup .search-field::placeholder,
.popup-drawer[data-drawer="search"] .search-field::placeholder,
#search-drawer input[type="search"]::placeholder,
.search-drawer input[type="search"]::placeholder,
.search-popup input[type="search"]::placeholder,
.popup-drawer[data-drawer="search"] input[type="search"]::placeholder {
    color: rgba(24, 58, 44, 0.54) !important;
}

#search-drawer .search-form:focus-within,
.search-drawer .search-form:focus-within,
.search-popup .search-form:focus-within,
.popup-drawer[data-drawer="search"] .search-form:focus-within,
#search-drawer form[role="search"]:focus-within,
.search-drawer form[role="search"]:focus-within,
.search-popup form[role="search"]:focus-within,
.popup-drawer[data-drawer="search"] form[role="search"]:focus-within {
    box-shadow: 0 34px 90px rgba(10, 24, 19, 0.28), 0 0 0 3px rgba(195, 154, 74, 0.18);
}

#search-drawer .search-submit,
.search-drawer .search-submit,
.search-popup .search-submit,
.popup-drawer[data-drawer="search"] .search-submit,
#search-drawer button[type="submit"],
.search-drawer button[type="submit"],
.search-popup button[type="submit"],
.popup-drawer[data-drawer="search"] button[type="submit"] {
    min-width: 72px;
    height: 72px;
    margin: 0;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    border-radius: 20px !important;
    background: linear-gradient(135deg, #1f5a43 0%, #163f31 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 14px 28px rgba(22, 63, 49, 0.24);
    transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

#search-drawer .search-submit:hover,
.search-drawer .search-submit:hover,
.search-popup .search-submit:hover,
.popup-drawer[data-drawer="search"] .search-submit:hover,
#search-drawer button[type="submit"]:hover,
.search-drawer button[type="submit"]:hover,
.search-popup button[type="submit"]:hover,
.popup-drawer[data-drawer="search"] button[type="submit"]:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(22, 63, 49, 0.28);
    filter: brightness(1.03);
}

#search-drawer .search-submit svg,
.search-drawer .search-submit svg,
.search-popup .search-submit svg,
.popup-drawer[data-drawer="search"] .search-submit svg,
#search-drawer button[type="submit"] svg,
.search-drawer button[type="submit"] svg,
.search-popup button[type="submit"] svg,
.popup-drawer[data-drawer="search"] button[type="submit"] svg {
    width: 24px;
    height: 24px;
    fill: currentColor;
}

@media (max-width: 782px) {
    #search-drawer .drawer-inner,
    .search-drawer .drawer-inner,
    .search-popup .drawer-inner,
    .popup-drawer[data-drawer="search"] .drawer-inner {
        padding: 86px 18px 28px;
    }

    #search-drawer .search-form,
    .search-drawer .search-form,
    .search-popup .search-form,
    .popup-drawer[data-drawer="search"] .search-form,
    #search-drawer form[role="search"],
    .search-drawer form[role="search"],
    .search-popup form[role="search"],
    .popup-drawer[data-drawer="search"] form[role="search"] {
        grid-template-columns: 1fr;
        padding: 10px;
        border-radius: 22px;
    }

    #search-drawer .search-field,
    .search-drawer .search-field,
    .search-popup .search-field,
    .popup-drawer[data-drawer="search"] .search-field,
    #search-drawer input[type="search"],
    .search-drawer input[type="search"],
    .search-popup input[type="search"],
    .popup-drawer[data-drawer="search"] input[type="search"] {
        height: 62px;
        font-size: 1.18rem !important;
        padding: 0 16px !important;
    }

    #search-drawer .search-submit,
    .search-drawer .search-submit,
    .search-popup .search-submit,
    .popup-drawer[data-drawer="search"] .search-submit,
    #search-drawer button[type="submit"],
    .search-drawer button[type="submit"],
    .search-popup button[type="submit"],
    .popup-drawer[data-drawer="search"] button[type="submit"] {
        width: 100%;
        min-width: 0;
        height: 58px;
        border-radius: 16px !important;
    }
}

/* =========================================================
   Search overlay refinement — v5.7
   Clean, compact, premium search experience.
   ========================================================= */

/* Backdrop: dark enough to focus, soft enough to preserve brand imagery. */
#search-drawer .drawer-overlay,
.search-drawer .drawer-overlay,
.popup-drawer[data-drawer="search"] .drawer-overlay,
#search-drawer.popup-drawer .drawer-overlay {
    background: rgba(10, 27, 20, 0.56) !important;
    -webkit-backdrop-filter: blur(8px) saturate(.88) !important;
    backdrop-filter: blur(8px) saturate(.88) !important;
}

/* The drawer itself must remain transparent — no giant dark panel. */
#search-drawer .drawer-inner,
.search-drawer .drawer-inner,
.popup-drawer[data-drawer="search"] .drawer-inner,
#search-drawer.popup-drawer .drawer-inner {
    position: relative !important;
    display: block !important;
    min-height: 100vh !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Close control: strict reset prevents Kadence global button sizing from making a pill. */
#search-drawer .drawer-toggle,
#search-drawer .drawer-close,
.search-drawer .drawer-toggle,
.search-drawer .drawer-close,
.popup-drawer[data-drawer="search"] .drawer-toggle,
.popup-drawer[data-drawer="search"] .drawer-close,
#search-drawer button.drawer-toggle,
#search-drawer button.drawer-close {
    position: absolute !important;
    top: clamp(28px, 5vh, 52px) !important;
    right: clamp(24px, 4vw, 58px) !important;
    z-index: 20 !important;
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(23, 59, 45, .12) !important;
    border-radius: 50% !important;
    background: #fbf8f1 !important;
    color: #183d2f !important;
    line-height: 1 !important;
    font-size: 0 !important;
    box-shadow: 0 10px 26px rgba(7, 20, 15, .16) !important;
    transform: none !important;
    overflow: hidden !important;
}

#search-drawer .drawer-toggle svg,
#search-drawer .drawer-close svg,
.search-drawer .drawer-toggle svg,
.search-drawer .drawer-close svg,
.popup-drawer[data-drawer="search"] .drawer-toggle svg,
.popup-drawer[data-drawer="search"] .drawer-close svg {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

#search-drawer .drawer-toggle:hover,
#search-drawer .drawer-close:hover,
.search-drawer .drawer-toggle:hover,
.search-drawer .drawer-close:hover,
.popup-drawer[data-drawer="search"] .drawer-toggle:hover,
.popup-drawer[data-drawer="search"] .drawer-close:hover {
    background: #ffffff !important;
    color: #245d46 !important;
    box-shadow: 0 14px 32px rgba(7, 20, 15, .20) !important;
}

/* Center the search panel at a calm visual position in the upper-middle viewport. */
#search-drawer .drawer-content,
.search-drawer .drawer-content,
.popup-drawer[data-drawer="search"] .drawer-content,
#search-drawer .search-toggle-open-container,
.search-drawer .search-toggle-open-container,
.popup-drawer[data-drawer="search"] .search-toggle-open-container {
    position: absolute !important;
    left: 50% !important;
    top: 37% !important;
    transform: translate(-50%, -50%) !important;
    width: min(760px, calc(100vw - 48px)) !important;
    max-width: 760px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

/* Search field becomes one elegant compact control. */
#search-drawer .search-form,
.search-drawer .search-form,
.popup-drawer[data-drawer="search"] .search-form,
#search-drawer form[role="search"],
.search-drawer form[role="search"],
.popup-drawer[data-drawer="search"] form[role="search"] {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    min-height: 72px !important;
    margin: 0 !important;
    padding: 7px 7px 7px 20px !important;
    border: 1px solid rgba(23, 59, 45, .14) !important;
    border-radius: 18px !important;
    background: rgba(252, 249, 243, .98) !important;
    box-shadow: 0 24px 64px rgba(5, 17, 12, .23) !important;
    overflow: hidden !important;
}

#search-drawer .search-form:focus-within,
.search-drawer .search-form:focus-within,
.popup-drawer[data-drawer="search"] .search-form:focus-within,
#search-drawer form[role="search"]:focus-within,
.search-drawer form[role="search"]:focus-within,
.popup-drawer[data-drawer="search"] form[role="search"]:focus-within {
    border-color: rgba(47, 93, 70, .42) !important;
    box-shadow: 0 28px 72px rgba(5, 17, 12, .26), 0 0 0 3px rgba(196, 153, 74, .12) !important;
}

#search-drawer .search-form label,
.search-drawer .search-form label,
.popup-drawer[data-drawer="search"] .search-form label,
#search-drawer form[role="search"] label,
.search-drawer form[role="search"] label,
.popup-drawer[data-drawer="search"] form[role="search"] label {
    flex: 1 1 auto !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

#search-drawer input[type="search"],
#search-drawer .search-field,
.search-drawer input[type="search"],
.search-drawer .search-field,
.popup-drawer[data-drawer="search"] input[type="search"],
.popup-drawer[data-drawer="search"] .search-field {
    display: block !important;
    width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #193b2e !important;
    box-shadow: none !important;
    font-size: 1.2rem !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
}

#search-drawer input[type="search"]::placeholder,
#search-drawer .search-field::placeholder,
.search-drawer input[type="search"]::placeholder,
.search-drawer .search-field::placeholder,
.popup-drawer[data-drawer="search"] input[type="search"]::placeholder,
.popup-drawer[data-drawer="search"] .search-field::placeholder {
    color: #849087 !important;
    opacity: 1 !important;
    font-weight: 450 !important;
}

/* Icon-only submit. Hide the literal “Search” text from the button. */
#search-drawer .search-submit,
#search-drawer button[type="submit"],
.search-drawer .search-submit,
.search-drawer button[type="submit"],
.popup-drawer[data-drawer="search"] .search-submit,
.popup-drawer[data-drawer="search"] button[type="submit"] {
    flex: 0 0 56px !important;
    width: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    aspect-ratio: 1 / 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #245d46 !important;
    color: #ffffff !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    box-shadow: none !important;
    transform: none !important;
}

#search-drawer .search-submit:hover,
#search-drawer button[type="submit"]:hover,
.search-drawer .search-submit:hover,
.search-drawer button[type="submit"]:hover,
.popup-drawer[data-drawer="search"] .search-submit:hover,
.popup-drawer[data-drawer="search"] button[type="submit"]:hover {
    background: #173f31 !important;
}

#search-drawer .search-submit svg,
#search-drawer button[type="submit"] svg,
.search-drawer .search-submit svg,
.search-drawer button[type="submit"] svg,
.popup-drawer[data-drawer="search"] .search-submit svg,
.popup-drawer[data-drawer="search"] button[type="submit"] svg {
    display: block !important;
    width: 21px !important;
    min-width: 21px !important;
    max-width: 21px !important;
    height: 21px !important;
    min-height: 21px !important;
    max-height: 21px !important;
    margin: 0 !important;
    fill: currentColor !important;
    stroke: currentColor !important;
}

/* Prevent any Kadence pseudo-label from reintroducing button text. */
#search-drawer .search-submit::before,
#search-drawer .search-submit::after,
.search-drawer .search-submit::before,
.search-drawer .search-submit::after,
.popup-drawer[data-drawer="search"] .search-submit::before,
.popup-drawer[data-drawer="search"] .search-submit::after {
    font-size: 0 !important;
}

@media (max-width: 782px) {
    #search-drawer .drawer-content,
    .search-drawer .drawer-content,
    .popup-drawer[data-drawer="search"] .drawer-content,
    #search-drawer .search-toggle-open-container,
    .search-drawer .search-toggle-open-container,
    .popup-drawer[data-drawer="search"] .search-toggle-open-container {
        top: 32% !important;
        width: calc(100vw - 32px) !important;
        max-width: none !important;
    }

    #search-drawer .search-form,
    .search-drawer .search-form,
    .popup-drawer[data-drawer="search"] .search-form,
    #search-drawer form[role="search"],
    .search-drawer form[role="search"],
    .popup-drawer[data-drawer="search"] form[role="search"] {
        min-height: 66px !important;
        padding: 5px 5px 5px 15px !important;
        border-radius: 16px !important;
    }

    #search-drawer input[type="search"],
    #search-drawer .search-field,
    .search-drawer input[type="search"],
    .search-drawer .search-field,
    .popup-drawer[data-drawer="search"] input[type="search"],
    .popup-drawer[data-drawer="search"] .search-field {
        height: 54px !important;
        min-height: 54px !important;
        font-size: 1.05rem !important;
    }

    #search-drawer .search-submit,
    #search-drawer button[type="submit"],
    .search-drawer .search-submit,
    .search-drawer button[type="submit"],
    .popup-drawer[data-drawer="search"] .search-submit,
    .popup-drawer[data-drawer="search"] button[type="submit"] {
        flex-basis: 54px !important;
        width: 54px !important;
        min-width: 54px !important;
        max-width: 54px !important;
        height: 54px !important;
        min-height: 54px !important;
        max-height: 54px !important;
        border-radius: 13px !important;
    }

    #search-drawer .drawer-toggle,
    #search-drawer .drawer-close,
    .search-drawer .drawer-toggle,
    .search-drawer .drawer-close,
    .popup-drawer[data-drawer="search"] .drawer-toggle,
    .popup-drawer[data-drawer="search"] .drawer-close {
        top: 22px !important;
        right: 20px !important;
        width: 42px !important;
        min-width: 42px !important;
        max-width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
        max-height: 42px !important;
    }
}

/* =========================================================
   Search submit refinement (v5.8)
   Keep the search action visually light, circular and fully
   contained inside the search field.
   ========================================================= */
#search-drawer .search-form,
.search-drawer .search-form,
.popup-drawer[data-drawer="search"] .search-form,
#search-drawer form[role="search"],
.search-drawer form[role="search"],
.popup-drawer[data-drawer="search"] form[role="search"] {
    position: relative !important;
    min-height: 68px !important;
    padding: 6px 68px 6px 18px !important;
    border-radius: 18px !important;
    overflow: visible !important;
}

#search-drawer input[type="search"],
#search-drawer .search-field,
.search-drawer input[type="search"],
.search-drawer .search-field,
.popup-drawer[data-drawer="search"] input[type="search"],
.popup-drawer[data-drawer="search"] .search-field {
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 6px !important;
}

/* Place a compact circular action inside the right edge. */
#search-drawer .search-submit,
#search-drawer button[type="submit"],
.search-drawer .search-submit,
.search-drawer button[type="submit"],
.popup-drawer[data-drawer="search"] .search-submit,
.popup-drawer[data-drawer="search"] button[type="submit"] {
    position: absolute !important;
    top: 50% !important;
    right: 9px !important;
    left: auto !important;
    transform: translateY(-50%) !important;

    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    flex: none !important;
    aspect-ratio: 1 / 1 !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(190, 149, 70, .34) !important;
    border-radius: 999px !important;
    background: #245d46 !important;
    color: #ffffff !important;
    box-shadow: 0 7px 20px rgba(24, 64, 49, .20) !important;

    display: grid !important;
    place-items: center !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px !important;
    white-space: nowrap !important;

    transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

/* Hide theme/plugin icon markup and draw one consistent magnifier. */
#search-drawer .search-submit > *,
#search-drawer button[type="submit"] > *,
.search-drawer .search-submit > *,
.search-drawer button[type="submit"] > *,
.popup-drawer[data-drawer="search"] .search-submit > *,
.popup-drawer[data-drawer="search"] button[type="submit"] > * {
    display: none !important;
}

#search-drawer .search-submit::before,
#search-drawer button[type="submit"]::before,
.search-drawer .search-submit::before,
.search-drawer button[type="submit"]::before,
.popup-drawer[data-drawer="search"] .search-submit::before,
.popup-drawer[data-drawer="search"] button[type="submit"]::before {
    content: "" !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    background: transparent !important;
    box-sizing: border-box !important;
    transform: translate(-1px, -1px) !important;
    position: relative !important;
    opacity: 1 !important;
    font-size: initial !important;
}

#search-drawer .search-submit::after,
#search-drawer button[type="submit"]::after,
.search-drawer .search-submit::after,
.search-drawer button[type="submit"]::after,
.popup-drawer[data-drawer="search"] .search-submit::after,
.popup-drawer[data-drawer="search"] button[type="submit"]::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 29px !important;
    top: 29px !important;
    width: 8px !important;
    height: 2px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    transform: rotate(45deg) !important;
    transform-origin: left center !important;
    opacity: 1 !important;
    font-size: initial !important;
}

#search-drawer .search-submit:hover,
#search-drawer button[type="submit"]:hover,
.search-drawer .search-submit:hover,
.search-drawer button[type="submit"]:hover,
.popup-drawer[data-drawer="search"] .search-submit:hover,
.popup-drawer[data-drawer="search"] button[type="submit"]:hover {
    background: #173f31 !important;
    transform: translateY(-50%) scale(1.035) !important;
    box-shadow: 0 10px 24px rgba(24, 64, 49, .27) !important;
}

#search-drawer .search-submit:focus-visible,
#search-drawer button[type="submit"]:focus-visible,
.search-drawer .search-submit:focus-visible,
.search-drawer button[type="submit"]:focus-visible,
.popup-drawer[data-drawer="search"] .search-submit:focus-visible,
.popup-drawer[data-drawer="search"] button[type="submit"]:focus-visible {
    outline: 3px solid rgba(198, 154, 80, .42) !important;
    outline-offset: 3px !important;
}

@media (max-width: 782px) {
    #search-drawer .search-form,
    .search-drawer .search-form,
    .popup-drawer[data-drawer="search"] .search-form,
    #search-drawer form[role="search"],
    .search-drawer form[role="search"],
    .popup-drawer[data-drawer="search"] form[role="search"] {
        min-height: 64px !important;
        padding: 5px 61px 5px 14px !important;
        border-radius: 16px !important;
    }

    #search-drawer .search-submit,
    #search-drawer button[type="submit"],
    .search-drawer .search-submit,
    .search-drawer button[type="submit"],
    .popup-drawer[data-drawer="search"] .search-submit,
    .popup-drawer[data-drawer="search"] button[type="submit"] {
        right: 7px !important;
        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;
        height: 48px !important;
        min-height: 48px !important;
        max-height: 48px !important;
    }

    #search-drawer .search-submit::after,
    #search-drawer button[type="submit"]::after,
    .search-drawer .search-submit::after,
    .search-drawer button[type="submit"]::after,
    .popup-drawer[data-drawer="search"] .search-submit::after,
    .popup-drawer[data-drawer="search"] button[type="submit"]::after {
        left: 28px !important;
        top: 28px !important;
    }
}
