/* Theme Name: Hengzhou Jasmine Ingredients
Version: 5.4.0
Description: Five-language B2B tea catalogue, licensed self-hosted sans-serif fonts and WhatsApp inquiries.
Author: Hengzhou Jasmine Ingredients
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: hengzhou-jasmine
*/
:root{--green:#183b2b;--cream:#f7f5ec;--ink:#243b2b;--muted:#5d6a5c;--line:#d9decd;--gold:#a68448}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}button{cursor:pointer}img{max-width:100%;display:block}.wrap{max-width:1180px;margin:auto;padding:0 32px}.eyebrow{font-size:11px;letter-spacing:2.1px;text-transform:uppercase;font-weight:700;color:var(--muted)}.topline{background:var(--green);color:#e5e9d7;text-align:center;font-size:11px;letter-spacing:1.5px;padding:9px 16px}.header{position:sticky;top:0;z-index:10;background:#f7f5ecf2;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:84px}.brand{text-decoration:none;line-height:1.1}.brand strong{font-family:Georgia,serif;font-size:27px;font-weight:normal;letter-spacing:1px}.brand span{display:block;font-size:10px;letter-spacing:2.7px;margin-top:8px}.nav{display:flex;align-items:center;gap:28px;font-size:13px}.nav a{text-decoration:none}.nav a:hover{color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:47px;padding:12px 22px;border:1px solid var(--green);background:var(--green);color:#fff;text-decoration:none;font-size:13px;font-weight:600;border-radius:2px}.btn:hover{background:#31533b;color:#fff}.btn.secondary{background:transparent;color:var(--green)}.btn.secondary:hover{background:#e5e9da}.menu{display:none}.hero{padding:64px 0 30px}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:55px}.hero h1{font:normal clamp(42px,5.1vw,67px)/1.08 Georgia,serif;letter-spacing:-1.7px;margin:21px 0 24px;max-width:650px}.hero h1 em{font-weight:normal;color:#617752}.hero p{font-size:16px;color:var(--muted);max-width:520px;line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:29px 0 20px}.hero small{font-size:11px;color:var(--muted)}.botanical{position:relative}.botanical svg{width:100%;display:block}.art-label{position:absolute;top:20px;right:14px;border-left:1px solid #9dad8b;padding:8px 15px;font-size:10px;letter-spacing:1.5px}.proof{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:34px}.proof>div{padding:22px 0}.proof>div+div{padding-left:34px;border-left:1px solid var(--line)}.proof strong{display:block;font-size:14px;font-weight:500}.proof span{font-size:12px;color:var(--muted)}section{padding:76px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.section-head h2,.intro h2,.sample h2,.contact h2{font:normal clamp(31px,3.5vw,43px)/1.17 Georgia,serif;margin:12px 0 0;letter-spacing:-.6px}.section-head p{max-width:350px;font-size:14px;color:var(--muted);margin:0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}.filters button{background:transparent;border:1px solid #c9d2bd;border-radius:25px;padding:8px 18px;font-size:12px;color:var(--ink)}.filters button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:white}.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.tea{border:1px solid var(--line);background:#fcfbf6;transition:transform .2s}.tea:hover{transform:translateY(-3px)}.tea[hidden]{display:none}.tea-top{height:132px;padding:21px 24px;display:flex;flex-direction:column;justify-content:space-between;background:#e5e9d7;position:relative;overflow:hidden}.tea-top:after{content:'✳';position:absolute;right:10px;top:-36px;font:160px Georgia,serif;color:#c1ceb4;transform:rotate(25deg);line-height:1}.tea[data-family="black"] .tea-top{background:#eee5d5}.tea[data-family="black"] .tea-top:after{color:#d7c19b}.tea[data-family="oolong"] .tea-top{background:#e1e3d4}.tea[data-family="oolong"] .tea-top:after{color:#bbc4ac}.tea-top span{font-size:10px;letter-spacing:2px;position:relative;z-index:1}.tea-top b{font:normal 30px Georgia,serif;position:relative;z-index:1}.tea-image{width:100%;height:220px;object-fit:cover}.tea-content{padding:25px}.tea-content h3{font:normal 24px/1.2 Georgia,serif;margin:0 0 12px;min-height:58px}.tea-content p{font-size:12px;color:var(--muted);margin:0 0 19px}.text-button{background:none;border:0;border-bottom:1px solid #a6b39c;padding:0 0 4px;color:var(--green);font-size:12px;text-align:left}.catalog-note{color:var(--muted);font-size:12px;margin:24px 0 0}.intro{background:#e9edde}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.intro p{font-size:14px;color:var(--muted)}.intro .lead{font-size:17px;margin-top:22px;line-height:1.8}.client-list{margin-top:25px}.client-list div{border-top:1px solid #c8d2bb;padding:20px 0}.client-list h3{font-size:15px;margin:0 0 7px}.client-list p{font-size:13px;margin:0}.sample{background:var(--green);color:#f7f5ec}.sample .eyebrow{color:#c1cfaf}.sample-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.sample p{color:#d0dac5;font-size:14px}.sample-items{display:grid;grid-template-columns:1fr 1fr;gap:30px}.sample-items>div{border-top:1px solid #566e55;padding-top:19px}.sample-items b{font:normal 31px Georgia,serif;display:block}.sample-items span{font-size:12px;color:#c4d0bb;display:block;margin-top:8px}.sample .btn{background:#edf0de;color:var(--green);margin-top:19px;border-color:#edf0de}.process{padding-bottom:72px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.steps div{border-top:1px solid var(--line);padding-top:24px}.steps b{font-size:11px;letter-spacing:2px;color:var(--gold)}.steps h3{font-size:15px;margin:15px 0 10px}.steps p{font-size:13px;color:var(--muted)}.contact{background:#eef0e5}.contact-grid{display:grid;grid-template-columns:.85fr 1.2fr;gap:85px}.contact p{font-size:14px;color:var(--muted)}.contact-links{margin-top:30px;display:grid;gap:15px;font-size:13px;overflow-wrap:anywhere}.form{background:#fcfbf6;padding:30px;border:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form label,.form legend{font-size:12px;font-weight:600;display:block}.form input:not([type=checkbox]),.form select,.form textarea{width:100%;padding:11px 12px;background:#fff;border:1px solid #cbd2c0;border-radius:2px;margin-top:5px;color:var(--ink);font-size:13px}.form textarea{resize:vertical}.form fieldset{padding:0;border:0;margin:20px 0}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.choices label{display:flex;gap:8px;font-weight:normal;align-items:start}.choices input{accent-color:var(--green);margin-top:4px}.form-note{font-size:11px!important;line-height:1.6!important;margin:12px 0}.form .btn{width:100%;margin-top:10px}.draft{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.draft pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 Arial, sans-serif;background:#e9edde;padding:15px}.error{color:#9e3b24!important}.faq{max-width:850px;margin:auto}.faq h2{font:normal 34px Georgia,serif;margin:0 0 28px}.faq details{border-top:1px solid var(--line);padding:19px 0}.faq summary{font-size:14px;cursor:pointer}.faq details p{font-size:13px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:36px 0 85px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer-grid p{font-size:11px;color:var(--muted)}.footer-grid a{font-size:12px}.floating{position:fixed;bottom:22px;right:24px;z-index:12;box-shadow:0 4px 20px #183b2b22;border-radius:30px;font-size:12px;min-height:43px}.skip{position:absolute;left:10px;top:-100px;z-index:40;background:white;padding:10px}.skip:focus{top:10px}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:900px){.wrap{padding:0 22px}.nav{gap:16px}.nav .btn{padding:10px 12px}.hero-grid{gap:10px}.hero h1{font-size:46px}.intro-grid,.sample-grid,.contact-grid{gap:40px}.catalog{gap:14px}.tea-content{padding:20px}.steps{gap:20px}}@media(max-width:680px){.header .wrap{min-height:73px}.brand strong{font-size:23px}.menu{display:block;border:1px solid var(--line);background:transparent;padding:8px 12px;font-size:12px}.nav{display:none;position:absolute;top:73px;left:0;right:0;background:var(--cream);padding:22px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav.open{display:flex}.hero{padding-top:37px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:43px;max-width:480px}.hero p{font-size:14px}.botanical{max-width:400px;margin:auto;width:100%}.art-label{top:10px}.hero-actions{margin-bottom:15px}.proof{grid-template-columns:1fr;margin-top:8px}.proof>div{padding:15px 0}.proof>div+div{border-left:0;border-top:1px solid var(--line);padding:15px 0}section{padding:52px 0}.section-head{display:block;margin-bottom:24px}.section-head p{margin-top:20px}.catalog{grid-template-columns:1fr 1fr;gap:12px}.tea-top{height:105px;padding:16px}.tea-top b{font-size:24px}.tea-content{padding:17px}.tea-content h3{font-size:20px;min-height:72px}.tea-content p{font-size:11px}.intro-grid,.sample-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.sample-items{gap:24px}.steps{grid-template-columns:1fr 1fr;gap:20px}.form{padding:22px}.choices{grid-template-columns:1fr}.form-grid{gap:12px}.footer-grid{display:block}.floating{right:16px;bottom:15px;padding:10px 16px}.form input,.form select,.form textarea{font-size:16px!important}}@media(max-width:360px){.catalog,.form-grid{grid-template-columns:1fr}.tea-content h3{min-height:0}.hero h1{font-size:38px}}
/* Differentiated B2B direction */
:root{--green:#172d45;--cream:#fbfcfd;--ink:#20374e;--muted:#637386;--line:#dbe2e9;--gold:#bc7a3e}
.topline{background:#102238}.header{background:#fbfcfdf5}.brand strong{font-family:Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:-1px;font-size:25px}.brand span{letter-spacing:2px;color:#65768a}.hero{background:#172d45;padding-top:62px;color:#f6f8fa}.hero h1{font-family:Arial,Helvetica,sans-serif;font-weight:600;letter-spacing:-2.8px;line-height:1.04;font-size:clamp(43px,5.1vw,68px)}.hero h1 em{font-style:normal;color:#e3ab72}.hero .eyebrow{color:#e3ab72}.hero p,.hero small{color:#bac8d6}.hero-actions .btn{background:#dda46c;color:#172d45;border-color:#dda46c}.hero-actions .btn:hover{background:#f1c394}.hero-actions .btn.secondary{background:transparent;color:#f6f8fa;border-color:#6e8299}.hero-actions .btn.secondary:hover{background:#28425e}.hero .proof{border-color:#466078}.hero .proof>div+div{border-color:#466078}.hero .proof strong{color:#f6f8fa}.hero .proof span{color:#b7c6d5}.art-label{color:#b7c6d5;border-color:#526e87;top:2px;right:5px;letter-spacing:1.5px}.section-head h2,.intro h2,.sample h2,.contact h2,.faq h2{font-family:Arial,Helvetica,sans-serif;font-weight:500;letter-spacing:-1.2px}.intro{background:#eef2f6}.intro .lead{color:#4e647b}.client-list div{border-color:#cbd6e0}.tea{background:#fff}.tea-top{background:#233e5a!important;color:white;border-top:4px solid #8fa6bd}.tea[data-family="black"] .tea-top{border-top-color:#c48c53}.tea[data-family="oolong"] .tea-top{border-top-color:#a6b3bd}.tea-top:after{content:'/';color:#ffffff10!important;font:bold 190px Arial;top:-53px;right:10px;transform:rotate(12deg)}.tea-top b{font-family:Arial,Helvetica,sans-serif;font-size:28px;font-weight:500;letter-spacing:-1px}.tea-content h3{font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:500;letter-spacing:-.5px}.filters button{border-color:#cbd6e0}.sample{background:#fff;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sample .eyebrow{color:var(--gold)}.sample p{color:var(--muted)}.sample-items>div{border-color:#b6c7d7}.sample-items b{font-family:Arial,Helvetica,sans-serif;font-size:33px;font-weight:500;letter-spacing:-1px}.sample-items span{color:var(--muted)}.sample .btn{background:var(--green);color:#fff;border-color:var(--green)}.contact{background:#e9eef4}.form{background:white}.form input:not([type=checkbox]),.form select,.form textarea{border-color:#c5d0dc}.draft pre{background:#edf2f7}.text-button{border-color:#a6b8c8}.btn.secondary:hover{background:#e6ecf2}.steps b{color:#bd7c42}.floating{background:#172d45;border-color:#52677f;box-shadow:0 4px 18px #10223833}.brand span{line-height:1.4}@media(max-width:680px){.hero h1{font-size:45px;letter-spacing:-1.8px}.nav{background:#fbfcfd}.proof>div+div{border-top-color:#466078}.hero{padding-top:35px}.tea-content h3{font-size:19px}.tea-top b{font-size:23px}.botanical{margin-top:15px}.art-label{right:3px;font-size:9px}}

:root{--green:#65754f;--cream:#fff;--ink:#344432;--muted:#697064;--line:#e0e4da;--gold:#788664}
.topline{background:#b0b89f;color:#2f402a;font-size:10px;padding:8px 14px;letter-spacing:1.5px}.header{background:#fffffff5}.brand strong{font:normal 27px Georgia,serif;letter-spacing:.5px}.brand span{color:#5f6b56;font-size:9px;letter-spacing:2.5px}.header .wrap{min-height:80px}.nav .btn{border-radius:28px;padding:11px 22px;min-height:42px;font-size:12px}.hero{position:relative;isolation:isolate;background:#f5f3eb;padding:50px 0 0;color:var(--ink);overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:calc(100% - 110px);object-fit:cover;object-position:center;z-index:-2}.hero:after{content:'';position:absolute;inset:0 0 110px;background:linear-gradient(90deg,#f7f5eef0 0%,#f7f5eec9 27%,#f7f5ee72 46%,#f7f5ee00 66%);z-index:-1}.hero .wrap{position:relative}.hero-grid{display:block;min-height:430px;position:relative}.hero-grid>div:first-child{max-width:650px;padding:25px 0 33px}.hero h1{font:normal clamp(44px,4.1vw,58px)/1.13 Georgia,serif;letter-spacing:-1.2px;margin:19px 0 20px;max-width:650px}.hero h1 em{font-style:normal;color:#5c7046}.hero .eyebrow{color:#526644;font-size:10px;letter-spacing:1.8px}.hero p{color:#414d3c;max-width:520px;font-size:15px;line-height:1.75}.hero-actions{gap:12px;margin:27px 0 15px}.hero-actions .btn{background:#65754f;color:white;border-color:#65754f;border-radius:27px;padding:13px 24px;min-height:48px}.hero-actions .btn:hover{background:#4d603a}.hero-actions .btn.secondary{background:#fffffff2;color:#344432;border-color:#fff}.hero-actions .btn.secondary:hover{background:#e7ecdf}.hero .sample-note{color:#56614d;font-size:11px;max-width:530px;display:block}.mobile-hero-visual{display:none}.visual-caption{position:absolute;right:0;bottom:19px;font-size:10px;color:#48583e;background:#ffffffba;padding:3px 7px}.hero .proof{background:#fff;border-color:#e0e4da;margin-top:0;min-height:110px;position:relative}.hero .proof:before{content:'';position:absolute;inset:0 -100vw;background:#fff;z-index:-1}.hero .proof>div{padding:24px 0}.hero .proof>div+div{border-color:#e0e4da;padding-left:32px}.hero .proof strong{color:#3b4c31;font-size:13px}.hero .proof span{color:#707768;font-size:11px}.section-head h2,.intro h2,.sample h2,.contact h2,.faq h2{font-family:Georgia,serif;font-weight:normal;letter-spacing:-.5px}.intro{background:#eef1e8}.intro .lead{color:#5b6754}.client-list div{border-color:#d4dccb}.tea{border-radius:9px;overflow:hidden;border-color:#e1e6db}.tea-top{background:#e8eddf!important;color:#415236;border-top:none;height:120px}.tea[data-family="black"] .tea-top{background:#eee6d8!important}.tea[data-family="oolong"] .tea-top{background:#e8ebdf!important}.tea-top:after{content:'◌';font:160px Georgia,serif;color:#a2b18b40!important;top:-55px;right:4px}.tea-top b{font:normal 27px Georgia,serif;letter-spacing:-.5px}.tea-content h3{font:normal 24px/1.25 Georgia,serif;letter-spacing:-.3px}.tea-content{padding:24px}.filters button{border-color:#d3dbc8}.sample{background:#e8ede2;border-color:#e1e6db}.sample .eyebrow{color:#62734f}.sample-items>div{border-color:#bcc9ae}.sample-items b{font:normal 34px Georgia,serif;color:#455d32}.sample .btn{border-radius:25px;background:#65754f;border-color:#65754f}.contact{background:#f4f5ef}.form{border-radius:10px;border-color:#dde4d5}.form input:not([type=checkbox]),.form select,.form textarea{border-color:#cdd7c1}.draft pre{background:#eef2e8}.form .btn{border-radius:25px}.text-button{border-color:#a4b693}.steps b{color:#7a8c62}.floating{background:#65754f;border-color:#ffffff77;box-shadow:0 4px 18px #3a4b2a22}.btn{border-radius:25px}.btn.secondary:hover{background:#e7ecdf}.menu{border-radius:20px}.brand span{line-height:1.4}section{padding:65px 0}
@media(max-width:900px){.hero-grid>div:first-child{max-width:560px}.hero h1{font-size:50px}.hero .proof>div+div{padding-left:20px}.hero-photo{object-position:65% center}}
@media(max-width:680px){.topline{font-size:8px;letter-spacing:1px}.header .wrap{min-height:70px}.nav{top:70px;background:#fff}.brand strong{font-size:24px}.hero{padding-top:20px;background:#f6f4ed}.hero-photo,.hero:after{display:none}.hero-grid{min-height:0}.hero-grid>div:first-child{max-width:none;padding:16px 0 15px}.hero h1{font-size:39px;line-height:1.13;letter-spacing:-.8px;margin-top:17px}.hero p{font-size:14px;line-height:1.7}.hero-actions{flex-direction:column;align-items:stretch;margin-top:22px;gap:10px}.hero-actions .btn{min-height:47px}.hero .sample-note{font-size:10px;line-height:1.5}.mobile-hero-visual{display:block;position:relative;margin:10px -22px 0;height:215px}.mobile-hero-visual img{height:100%;width:100%;object-fit:cover;object-position:100% 60%;}.visual-caption{bottom:7px;right:4px;font-size:9px}.hero .proof{display:flex;flex-wrap:wrap;min-height:0;padding:12px 0;gap:0}.hero .proof>div{width:100%;padding:10px 0}.hero .proof>div+div{padding:10px 0;border-left:0;border-top:1px solid #e0e4da}.hero .proof strong{font-size:12px}.hero .proof span{font-size:11px}.tea-content h3{font-size:20px}.tea-content{padding:17px}.tea-top b{font-size:25px}.sample-items b{font-size:31px}.floating{bottom:12px;right:12px;min-height:40px;padding:8px 15px;font-size:11px}}

.topline{padding:5px 0}.language-bar{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:30px}.top-message{font-size:9px;letter-spacing:1.2px}.language-options{display:flex;align-items:center;gap:3px;flex-shrink:0}.language-options button{border:0;background:transparent;color:#344432;font-size:11px;letter-spacing:0;padding:5px 8px;white-space:nowrap;border-radius:14px;line-height:1.6}.language-options button:hover{background:#ffffff55}.language-options button[aria-pressed=true]{background:#fff;color:#3b5030;box-shadow:0 1px 4px #34443216}.hero h1{overflow-wrap:break-word}html:lang(zh-CN) .hero h1,html:lang(th) .hero h1{font-family:Arial,sans-serif;font-size:clamp(38px,3.6vw,52px);line-height:1.25}html:lang(th) .hero .eyebrow{letter-spacing:.2px}html:lang(vi) .hero h1{font-family:Arial,Segoe UI,sans-serif;font-size:clamp(40px,3.8vw,54px)}.choices label{overflow-wrap:anywhere}.nav{gap:20px}@media(max-width:1050px){.top-message{display:none}.language-bar{justify-content:center}.language-options{gap:6px}}@media(max-width:680px){.language-bar{padding:0 12px;min-height:32px;gap:0}.language-options{justify-content:center;gap:3px;width:100%}.language-options button{font-size:11px;padding:4px 7px}.hero .eyebrow{overflow-wrap:anywhere}html:lang(zh-CN) .hero h1,html:lang(th) .hero h1{font-size:34px}html:lang(vi) .hero h1{font-size:34px}html:lang(ms) .hero h1{font-size:35px}.hero p{overflow-wrap:break-word}.proof strong,.proof span{overflow-wrap:break-word}}@media(max-width:360px){.language-options{gap:0}.language-options button{padding:4px 5px;font-size:10px}}

.contact-icon-row{display:flex;align-items:center;gap:12px}.contact-icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;text-decoration:none;border:1px solid #65754f;transition:background .15s,transform .15s}.contact-icon svg{width:27px;height:27px;display:block}.whatsapp-icon{background:#65754f;color:#fff}.whatsapp-icon:hover{background:#4d603a;transform:translateY(-2px)}.email-icon{background:#fff;color:#65754f}.email-icon:hover{background:#e7ecdf;transform:translateY(-2px)}.contact-icon:focus-visible{outline:2px solid #344432;outline-offset:4px}

.product-photo-button{display:block;padding:0;border:0;background:#f4f1e9;width:100%;cursor:pointer;overflow:hidden}.product-photo{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .25s}.product-photo-button:hover .product-photo{transform:scale(1.035)}.product-code{font-size:10px;letter-spacing:1.1px;color:#6d7a61;margin-bottom:12px}.product-title{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-align:left}.product-title:hover{color:#65754f}.product-card-actions{display:flex;gap:15px;flex-wrap:wrap}.tea--photo .tea-content h3{min-height:0;margin-bottom:10px}.product-modal{border:0;border-radius:14px;padding:0;width:min(1040px,94vw);max-height:90vh;max-height:90dvh;overflow:auto;background:#fdfcf8;color:#344432;box-shadow:0 24px 80px #243b2b44}.product-modal:not([open]){display:none}.product-modal::backdrop{background:#24332299;backdrop-filter:blur(3px)}.product-modal-header{display:flex;align-items:center;justify-content:space-between;padding:13px 24px;background:#fdfcf8;border-bottom:1px solid #e0e4da;position:sticky;top:0;z-index:2}.product-modal-close{background:#edf0e7;color:#344432;border:0;border-radius:50%;width:36px;height:36px;font-size:25px;line-height:1}.product-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;padding:26px}.product-tabs{display:flex;gap:6px;margin-bottom:15px;flex-wrap:wrap}.product-tabs button{background:transparent;border:1px solid #d7dfcd;border-radius:20px;padding:7px 14px;font-size:11px;color:#435b34}.product-tabs button[aria-selected=true]{background:#65754f;border-color:#65754f;color:#fff}.product-gallery figure{margin:0}.product-gallery img{width:100%;height:360px;object-fit:contain;border-radius:8px;background:#f5f0e6}.product-gallery figcaption{font-size:10px;color:#7a8273;margin-top:9px}.product-specs h2{font:normal 33px/1.2 Georgia,serif;margin:8px 0 20px}.product-specs dl{margin:0}.product-specs dl>div{padding:17px 0;border-top:1px solid #dfe5d8}.product-specs dt{font-weight:600;font-size:12px;margin-bottom:6px}.product-specs dd{margin:0;font-size:13px;line-height:1.7;color:#5e6b55}.product-specs dd p{font-size:12px;margin:10px 0 0}.brew-ratio{display:flex;align-items:center;gap:14px;padding:15px 12px;background:#eef2e7;border-radius:7px}.brew-ratio>div{flex:1;text-align:center}.brew-ratio strong{display:block;font:normal 25px Georgia,serif;color:#425735;white-space:nowrap}.brew-ratio span{font-size:10px;display:block}.brew-ratio>b{font-size:15px;font-weight:normal;color:#94a585}.product-modal-inquiry{margin-top:9px;width:100%}.product-modal-open{overflow:hidden}html:lang(zh-CN) .product-specs h2,html:lang(th) .product-specs h2{font-family:Arial,sans-serif}@media(max-width:680px){.product-modal{width:94vw;max-height:92dvh}.product-modal-grid{grid-template-columns:1fr;gap:25px;padding:18px}.product-modal-header{padding:10px 17px}.product-gallery img{height:280px}.product-specs h2{font-size:29px}.product-tabs{gap:5px}.product-tabs button{padding:7px 12px}.brew-ratio{gap:8px}.brew-ratio strong{font-size:24px}.product-card-actions{gap:11px}.product-card-actions button{font-size:11px}}

.tea-top{height:150px}.tea--photo .tea-top{height:150px;padding:22px 24px;justify-content:space-between}.tea--photo .tea-top:after{display:none}.tea--photo .tea-top>span{max-width:calc(100% - 140px);font-size:9px;letter-spacing:.8px}.tea--photo .tea-top>b{max-width:calc(100% - 140px)}.tea--photo .product-photo-button{position:absolute;right:20px;top:19px;width:112px;height:112px;border-radius:50%;border:4px solid #ffffffd9;outline:2px dotted #bdcbaa;outline-offset:4px;z-index:2}.tea--photo .product-photo{width:100%;height:100%;object-fit:cover;border-radius:50%}.tea--photo .product-photo-button:hover .product-photo{transform:scale(1.08)}.tea--photo .tea-content h3{min-height:58px}.tea--photo .tea-top>b{font-size:27px}@media(max-width:680px){.tea-top{height:158px}.tea--photo .tea-top{height:158px;padding:14px 16px;justify-content:flex-start;gap:8px}.tea--photo .tea-top>span{max-width:100%;font-size:8px;letter-spacing:.4px;position:relative;z-index:3}.tea--photo .tea-top>b{font-size:19px;max-width:100%;position:relative;z-index:3}.tea--photo .product-photo-button{width:78px;height:78px;right:17px;top:66px;border-width:3px;outline-offset:3px}.tea--photo .tea-content h3{min-height:72px}}

.brew-ratio{font-family:"Segoe UI","Noto Sans",Arial,sans-serif;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:12px;padding:17px 16px;border-radius:9px;min-height:90px}.brew-ratio>div{text-align:center;min-width:0}.brew-ratio strong{display:flex;justify-content:center;align-items:baseline;gap:5px;min-height:34px;font-family:inherit;font-weight:600;line-height:1.15;white-space:nowrap;font-variant-numeric:tabular-nums;color:#3f5436}.brew-ratio strong .ratio-value{display:inline;font-family:inherit;font-size:28px;font-weight:600;line-height:1.15;letter-spacing:-.5px}.brew-ratio strong .ratio-unit{display:inline;font-family:inherit;font-size:15px;font-weight:500;line-height:1.15;letter-spacing:0;color:#53654a}.brew-ratio>div>span{font-family:inherit;font-size:12px;font-weight:500;line-height:1.35;color:#6e7b62;margin-top:3px;letter-spacing:.15px}.brew-ratio>b{font-family:inherit;font-size:20px;font-weight:400;line-height:34px;color:#a0ad92}@media(max-width:680px){.brew-ratio{gap:9px;padding:15px 11px;min-height:84px}.brew-ratio strong .ratio-value{font-size:25px}.brew-ratio strong .ratio-unit{font-size:13px}.brew-ratio>div>span{font-size:11px}}

.tea--photo .product-photo-button{background:transparent;border:0;padding:3px;overflow:visible;outline:2px dotted #bdcbaa;outline-offset:3px;box-shadow:none}.tea--photo .product-photo{background:transparent;object-fit:contain;border-radius:0}.tea--photo .product-photo-button:hover .product-photo{transform:scale(1.04)}@media(max-width:680px){.tea--photo .product-photo-button{border:0;background:transparent;padding:2px}}

.product-photo-button:not(button){cursor:default}

/* Compact typography revision: one step smaller; 14px reading floor. */
/* Accessible five-language sans-serif typography. Official SIL OFL webfonts. */
:root{--font-ui:"Inter",sans-serif;--muted:#596452}
html:lang(zh-CN){--font-ui:"Noto Sans SC","Inter",sans-serif}
html:lang(th){--font-ui:"Noto Sans Thai","Inter",sans-serif}
body{font-family:var(--font-ui);font-size:15px;line-height:1.75;font-weight:450;font-synthesis:none}
body *{font-family:var(--font-ui)!important}
button,input,select,textarea{font-weight:500}
h1,h2,h3,h4,h5,h6{font-weight:600;overflow-wrap:break-word}
.brand strong{font-family:"Inter",sans-serif!important;font-size:26px;font-weight:650;letter-spacing:-.7px;line-height:1.15}
.brand span{font-size:14px;font-weight:550;letter-spacing:.8px;line-height:1.5;color:#4d5e43;margin-top:6px}
.header .wrap{min-height:94px}
.nav{gap:22px;font-size:14px;font-weight:550}
.btn,.nav .btn{font-size:14px;font-weight:600;line-height:1.5;min-height:48px;padding:12px 22px}
.topline{font-size:14px;font-weight:500;letter-spacing:0}
.top-message{font-size:14px;letter-spacing:.5px;line-height:1.5}
.language-bar{min-height:36px}
.language-options{gap:4px}
.language-options button{font-size:14px!important;font-weight:550;line-height:1.6;padding:5px 9px;letter-spacing:0}
.language-options [lang="zh-CN"]{font-family:"Noto Sans SC","Inter",sans-serif!important}
.language-options [lang="th"]{font-family:"Noto Sans Thai","Inter",sans-serif!important}
.language-options [lang="en"],.language-options [lang="vi"],.language-options [lang="ms"]{font-family:"Inter",sans-serif!important}
.eyebrow,.hero .eyebrow{font-size:14px;font-weight:650;line-height:1.6;letter-spacing:.9px}
.hero h1{font-size:clamp(39px,3.84375vw,56px)!important;font-weight:600;line-height:1.14;letter-spacing:-1.7px;max-width:690px}
.hero h1 em{font-style:normal;font-weight:650}
.hero-grid>div:first-child{max-width:690px}
.hero p{font-size:16px;line-height:1.8;font-weight:450;color:#3e4f35;max-width:560px}
.hero small,.hero .sample-note{font-size:14px;line-height:1.75;font-weight:500;color:#4b5c40;max-width:600px}
.visual-caption,.art-label{font-size:14px;line-height:1.5;letter-spacing:0;font-weight:500;color:#45563b}
.hero .proof strong,.proof strong{font-size:15px;font-weight:600;line-height:1.6}
.hero .proof span,.proof span{font-size:14px;font-weight:500;color:#596452;line-height:1.65;display:block;margin-top:4px}
.section-head h2,.intro h2,.sample h2,.contact h2,.faq h2{font-size:clamp(28px,2.8125vw,38px);font-weight:600;line-height:1.25;letter-spacing:-.8px}
.section-head p,.intro p,.sample p,.contact p{font-size:15px;line-height:1.8;font-weight:450;color:#596452}
.intro .lead{font-size:17px;line-height:1.85;font-weight:450}
.filters button{font-size:14px;font-weight:550;line-height:1.5;padding:9px 18px}
.tea{display:flex;flex-direction:column}
.tea--photo .tea-top{height:172px;flex-shrink:0;padding:22px 24px;gap:12px}
.tea--photo .tea-top>span{font-size:14px;line-height:1.55;letter-spacing:0;font-weight:550;max-width:calc(100% - 128px)}
.tea--photo .tea-top>span span{font-size:inherit;line-height:inherit;letter-spacing:inherit;font-weight:inherit}
.tea--photo .tea-top>b{font-size:24px;font-weight:600;line-height:1.2;letter-spacing:-.4px;max-width:calc(100% - 128px)}
.tea--photo .product-photo-button{width:108px;height:108px;right:20px;top:30px}
.tea-content{padding:24px;display:flex;flex-direction:column;flex:1}
.tea--photo .tea-content h3,.tea-content h3{font-size:22px;font-weight:600;line-height:1.35;letter-spacing:-.4px;min-height:64px;margin-bottom:16px;overflow-wrap:anywhere}
.tea-content p{font-size:14px;font-weight:450;line-height:1.75;margin-bottom:20px;color:#596452}
.text-button{font-size:14px;font-weight:550;line-height:1.65;align-self:flex-start}
.tea-content>.text-button,.product-card-actions{margin-top:auto}
.product-card-actions{gap:16px}
.product-card-actions button{font-size:14px;font-weight:550}
.catalog-note{font-size:14px;font-weight:500;line-height:1.8;color:#596452}
.client-list h3,.steps h3{font-size:17px;font-weight:600;line-height:1.5}
.client-list p,.steps p{font-size:15px;line-height:1.8;font-weight:450}
.steps b{font-size:14px;font-weight:650;letter-spacing:.8px}
.sample-items b{font-size:32px;font-weight:600;line-height:1.3;letter-spacing:-.5px}
.sample-items span{font-size:14px;font-weight:450;line-height:1.75;color:#536447}
.contact-links{font-size:15px;line-height:1.8}
.form label,.form legend{font-size:14px;font-weight:600;line-height:1.6}
.choices label{font-size:14px;font-weight:500;line-height:1.7}
.form input:not([type=checkbox]),.form select,.form textarea{font-size:15px!important;font-weight:450;line-height:1.65;padding:12px}
.form-note{font-size:14px!important;line-height:1.8!important;font-weight:500;color:#596452}
.draft pre{font-size:14px;font-weight:450;line-height:1.85}
.faq summary{font-size:16px;font-weight:550;line-height:1.65}
.faq details p{font-size:15px;line-height:1.8;font-weight:450}
.footer-grid p,.footer-grid a{font-size:14px;font-weight:500;line-height:1.8}
.floating,.menu{font-size:14px;font-weight:600;line-height:1.5}
.product-code{font-size:14px;font-weight:550;line-height:1.6;letter-spacing:0}
.product-modal-header .eyebrow{font-size:14px}
.product-tabs button{font-size:14px;font-weight:550;line-height:1.6;padding:8px 15px}
.product-gallery figcaption{font-size:14px;font-weight:500;line-height:1.6;color:#596452}
.product-specs h2{font-size:32px;font-weight:600;line-height:1.3;letter-spacing:-.6px}
.product-specs dt{font-size:15px;font-weight:600;line-height:1.6}
.product-specs dd,.product-specs dd p{font-size:15px;font-weight:450;line-height:1.8;color:#536447}
.brew-ratio strong{font-weight:650;min-height:38px;line-height:1.25}
.brew-ratio strong .ratio-value{font-size:28px;font-weight:650;line-height:1.25}
.brew-ratio strong .ratio-unit{font-size:16px;font-weight:550;line-height:1.25}
.brew-ratio>div>span{font-size:14px;font-weight:550;line-height:1.6;color:#536447;letter-spacing:0}
.brew-ratio>b{font-size:21px;font-weight:500;line-height:38px;color:#6a7b5c}
html:lang(zh-CN) .hero h1{font-size:clamp(36px,3.28125vw,49px)!important;line-height:1.3;letter-spacing:-.5px}
html:lang(vi) .hero h1{font-size:clamp(38px,3.46875vw,51px)!important;line-height:1.25;letter-spacing:-1px}
html:lang(ms) .hero h1{font-size:clamp(38px,3.46875vw,51px)!important;line-height:1.2;letter-spacing:-1px}
html:lang(th) .hero h1{font-size:clamp(36px,3.09375vw,45px)!important;line-height:1.45;letter-spacing:0}
html:lang(th) .eyebrow,html:lang(zh-CN) .eyebrow{letter-spacing:0;text-transform:none}
html:lang(th) h2,html:lang(th) h3,html:lang(th) .tea-top>b{line-height:1.5;letter-spacing:0}
html:lang(zh-CN) h2,html:lang(zh-CN) h3,html:lang(zh-CN) .tea-top>b{letter-spacing:0}
@media(max-width:1100px){.nav{gap:16px}.header .wrap{gap:20px}.brand strong{font-size:24px}.brand span{font-size:14px;letter-spacing:.2px}}
@media(max-width:1000px){.top-message{display:none}.catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid>div:first-child{max-width:620px}}
@media(max-width:680px){
 .header .wrap{min-height:84px}.nav{top:84px}.brand strong{font-size:24px}.brand span{font-size:14px;letter-spacing:.3px}
 .language-bar{padding:0 10px;min-height:40px}.language-options{gap:2px;flex-wrap:wrap}.language-options button{padding:5px 6px}
 .hero h1,html:lang(vi) .hero h1,html:lang(ms) .hero h1{font-size:34px!important;letter-spacing:-.7px;line-height:1.22}
 html:lang(zh-CN) .hero h1{font-size:clamp(28px,8.15625vw,32px)!important;letter-spacing:0;line-height:1.35}
 html:lang(th) .hero h1{font-size:31px!important;letter-spacing:0;line-height:1.5}
 .hero p{font-size:15px;line-height:1.85}.hero .eyebrow{font-size:14px;line-height:1.7;letter-spacing:.2px}
 .hero .sample-note{font-size:14px;line-height:1.75}.visual-caption{font-size:14px;right:6px}
 .hero .proof strong{font-size:15px}.hero .proof span{font-size:14px}
 .tea--photo .tea-top{height:172px;padding:20px;justify-content:space-between;gap:12px}
 .tea--photo .tea-top>span{font-size:14px;line-height:1.55;letter-spacing:0;max-width:calc(100% - 124px)}
 .tea--photo .tea-top>b{font-size:23px;line-height:1.25;max-width:calc(100% - 124px)}
 .tea--photo .product-photo-button{width:104px;height:104px;right:20px;top:32px}
 .tea-content{padding:22px}.tea--photo .tea-content h3{font-size:22px;line-height:1.4;min-height:64px}
 .product-card-actions button{font-size:14px}.product-card-actions{gap:18px}
 .sample-items b{font-size:28px}.floating{font-size:14px;min-height:44px;padding:10px 16px}
 .product-modal-grid{padding:20px}.product-specs h2{font-size:27px;line-height:1.35}
 .brew-ratio{gap:8px;padding:16px 10px;min-height:96px}.brew-ratio strong .ratio-value{font-size:26px}.brew-ratio strong .ratio-unit{font-size:15px}.brew-ratio>div>span{font-size:14px}
}
@media(max-width:560px){.catalog{grid-template-columns:minmax(0,1fr);gap:20px}.tea--photo .tea-content h3{min-height:0}.tea-content p{margin-bottom:20px}.section-head h2,.intro h2,.sample h2,.contact h2,.faq h2{font-size:28px}.sample-items{gap:22px}.form-grid{grid-template-columns:1fr}}
@media(max-width:380px){.language-options{gap:1px}.language-options button{padding:5px 4px}}

/* Keep phone form inputs at 16px for comfortable editing and to avoid focus zoom. */
@media(max-width:680px){.form input:not([type=checkbox]),.form select,.form textarea{font-size:16px!important}}

/* Compact typography revision: one step smaller; 14px reading floor. */
.tea-library{margin-top:48px;padding:32px;background:#f4f6ef;border:1px solid #dce4d4;border-radius:12px}
.library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:24px}
.library-heading h3{font-size:28px;line-height:1.3;font-weight:600;letter-spacing:-.5px;margin:8px 0 12px}
.library-heading p{font-size:15px;line-height:1.8;color:#536447;margin:0;max-width:700px}
.library-total{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#e5ecdc;min-width:108px;padding:17px 18px;border-radius:9px;color:#415735}
.library-total strong{font-size:36px;font-weight:650;line-height:1.2}
.library-total span{font-size:14px;font-weight:550;line-height:1.5;margin-top:5px;text-align:center}
.library-series{border-top:1px solid #d4ddca;padding:0}
.library-series summary{display:flex;align-items:center;gap:16px;cursor:pointer;list-style:none;padding:19px 0;font-size:18px;font-weight:600;line-height:1.5}
.library-series summary::-webkit-details-marker{display:none}
.library-series summary:after{content:'+';font-size:23px;font-weight:450;margin-left:auto;padding:0 4px;color:#506744}
.library-series[open] summary:after{content:'−'}
.library-count{font-size:21px;font-weight:650;line-height:1.3;min-width:38px;text-align:center;color:#526b42}
.library-content{padding:0 0 25px 54px}
.library-content h4{font-size:16px;font-weight:600;line-height:1.6;margin:19px 0 12px}
.library-content h4:first-child{margin-top:0}
.library-products{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}
.library-products li{display:flex;align-items:flex-start;flex-wrap:wrap;gap:5px 10px;padding:10px 0;border-bottom:1px solid #dce4d4;font-size:15px;line-height:1.7;font-weight:450;color:#3f5436;overflow-wrap:anywhere}
.library-featured{font-size:14px;font-weight:550;line-height:1.7;color:#536447;white-space:nowrap;background:#e5ecdc;border-radius:4px;padding:1px 7px}
.library-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-top:24px;padding-top:23px;border-top:1px solid #d4ddca}
.library-footer p{font-size:14px;font-weight:500;line-height:1.8;color:#536447;margin:0;max-width:620px}
.library-footer .btn{flex-shrink:0}
html:lang(zh-CN) .library-heading h3,html:lang(th) .library-heading h3{letter-spacing:0}
@media(max-width:900px){.library-products{grid-template-columns:1fr}.library-footer{flex-direction:column}.library-content{padding-left:0}}
@media(max-width:560px){.tea-library{margin-top:34px;padding:23px 20px}.library-heading{flex-direction:column;gap:20px}.library-heading h3{font-size:25px;line-height:1.4}.library-total{flex-direction:row;gap:12px;padding:10px 17px;min-width:0}.library-total strong{font-size:28px}.library-total span{margin-top:0}.library-series summary{font-size:16px;gap:12px;line-height:1.6}.library-count{font-size:21px;min-width:31px}.library-footer .btn{width:100%;text-align:center}.library-content h4{font-size:16px}}
