@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700&display=swap');
:root{--font-app:'Be Vietnam Pro','Segoe UI',Arial,sans-serif;--ink:#26352b;--deep:#213b2f;--leaf:#64795e;--paper:#f6f2e9;--sand:#e8ddca;--line:#d9d0bf;--accent:#ad6a3a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--font-app)}.site-header{height:76px;padding:0 clamp(22px,5vw,86px);display:flex;gap:32px;align-items:center;border-bottom:1px solid var(--line);background:#fbf8f1}.brand{font:600 19px var(--font-app);letter-spacing:.08em;color:var(--deep);text-decoration:none;white-space:nowrap}.site-header nav{display:flex;gap:20px;flex:1;justify-content:center}.site-header a{color:var(--ink);text-decoration:none;font-size:13px}.account{display:flex;align-items:center;gap:13px;white-space:nowrap}.account form{margin:0}.account button,.text-button{border:0;background:transparent;color:var(--leaf);font:inherit;cursor:pointer}main{max-width:1120px;margin:auto;padding:42px 24px 88px}footer{text-align:center;color:#6b766a;border-top:1px solid var(--line);padding:28px 20px;font-size:12px}.hero{min-height:450px;padding:80px clamp(28px,8vw,110px);display:flex;align-items:flex-start;justify-content:center;flex-direction:column;background:linear-gradient(100deg,#e3ddce 0%,#f0e9dd 48%,rgba(240,233,221,.65)),url('https://images.unsplash.com/photo-1544787219-7f47ccb76574?auto=format&fit=crop&w=1600&q=80') center/cover;border-radius:3px}.eyebrow{letter-spacing:.14em;color:var(--accent);font-size:11px;font-weight:600;margin:0 0 12px}.hero h1,.intro h1,.form-card h1{font:600 clamp(42px,6vw,72px)/1.08 var(--font-app);margin:0 0 20px;color:var(--deep)}.hero>p:not(.eyebrow){font:20px/1.65 var(--font-app);margin:0 0 28px}.button{display:inline-block;border:1px solid var(--deep);background:var(--deep);color:#fff!important;padding:11px 18px;text-decoration:none;font:500 13px var(--font-app);cursor:pointer;border-radius:2px}.button.small{padding:7px 12px;font-size:12px}.quiet{margin-left:18px;text-decoration:underline;color:var(--deep)}.doors,.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0 62px}.doors a{padding:30px;text-decoration:none;color:var(--ink);border:1px solid var(--line);background:#fbf8f1;min-height:160px}.doors b{display:block;font:600 25px var(--font-app);color:var(--deep);margin-bottom:10px}.doors span{font-size:13px;color:#647064}.cards article,.post{background:#fbf8f1;border:1px solid var(--line);padding:23px}.cards h2,.cards h3,.post h2{font:500 23px/1.3 var(--font-app);color:var(--deep);margin:7px 0 10px}.cards h3{font-size:21px}.cards p{font-size:13px;color:#5d695f}.cards time,small,.byline{font-size:12px;color:#798176}.intro{max-width:690px;margin:16px 0 34px}.intro h1{font-size:48px}.intro>p:not(.eyebrow){font-size:17px;color:#5f695f}.form-card{max-width:560px;background:#fbf8f1;border:1px solid var(--line);padding:clamp(25px,4vw,45px);margin:25px auto}.form-card h1{font-size:40px}.form-card h2{font:500 28px var(--font-app);margin-top:0}.form-card form{display:grid;gap:17px}.form-card label{display:grid;gap:6px;font-size:13px;color:#4e5b50}input,textarea,select{font:inherit;border:1px solid #cfc4b1;background:#fffdf8;padding:10px 11px;color:var(--ink);width:100%;border-radius:1px}textarea{min-height:110px;resize:vertical}.feed{max-width:740px;margin:auto}.post{margin:16px 0}.post p{white-space:normal}.post form{margin-top:15px}.notice{max-width:760px;margin:0 auto 22px;padding:12px 16px;border-left:3px solid var(--leaf);background:#edf0e9}.notice.error{border-color:#9c4d3e;background:#f7e9e5}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stats div{padding:22px;background:#fbf8f1;border:1px solid var(--line)}.stats strong{display:block;font:500 34px var(--font-app);color:var(--deep)}.stats span{font-size:12px;color:#69756b}.muted{color:#6b776c}
@media(max-width:800px){.site-header{height:auto;min-height:64px;flex-wrap:wrap;padding:15px 20px;gap:12px}.site-header nav{order:3;width:100%;overflow:auto;justify-content:flex-start;padding-bottom:2px}.account{margin-left:auto}.site-header nav a{font-size:12px;white-space:nowrap}main{padding:26px 18px 60px}.hero{min-height:405px;padding:48px 26px}.doors,.cards{grid-template-columns:1fr;margin-bottom:40px}.intro h1{font-size:40px}.stats{grid-template-columns:repeat(2,1fr)}}

/* Authentic Thiên Trà Đạo brand and menu assets */
.brand{display:flex;align-items:center;height:50px}.brand img{width:118px;max-height:50px;object-fit:contain}.hero{min-height:500px;background:linear-gradient(90deg,rgba(246,242,233,.98) 0%,rgba(246,242,233,.86) 38%,rgba(246,242,233,.18) 72%),url('menu/Set-Xuan-co-text-768x512.png') center/cover}.featured-menu{display:grid;grid-template-columns:1fr 1.25fr;gap:42px;align-items:center;margin:0 0 70px;padding:38px;background:#e9e0d1}.featured-menu h2,.set-grid h2{font:500 28px/1.3 var(--font-app);color:var(--deep);margin:7px 0 10px}.featured-menu img{width:100%;display:block}.set-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:22px 0 60px}.set-grid article{background:#fbf8f1;border:1px solid var(--line)}.set-grid img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.set-grid article div{padding:14px 18px}.set-grid p{margin:0;color:var(--accent);font-weight:600}.menu-pages{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}.menu-pages a{background:#fff;border:1px solid var(--line);padding:8px}.menu-pages img{width:100%;display:block}
@media(max-width:800px){.site-header{padding:11px 20px}.hero{min-height:405px;background-position:63% center}.featured-menu{grid-template-columns:1fr;gap:20px;padding:25px}.set-grid,.menu-pages{grid-template-columns:1fr;margin-bottom:40px}}

/* Layout and loading polish — build 20260808-03 */
.site-header{min-height:72px;align-items:center}.brand{flex:0 0 142px;width:142px;height:54px;overflow:hidden}.brand img{display:block;width:132px!important;height:48px!important;max-height:48px!important;object-fit:contain;object-position:left center}.site-header nav{min-width:0;gap:clamp(12px,1.35vw,22px)}.site-header nav a{white-space:nowrap}.intro{padding:18px 0 12px}.intro h1{max-width:760px}.set-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.set-grid article{overflow:hidden;border-radius:3px}.set-grid img{aspect-ratio:3/2;object-fit:cover}.menu-pages{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.menu-pages a{border-radius:3px;box-shadow:0 5px 16px rgba(52,45,33,.08)}.menu-pages img{aspect-ratio:2/3;object-fit:cover;background:#eee9de}.featured-menu{border-radius:3px}.featured-menu img{border-radius:2px}.hero{border-radius:3px}
@media (max-width:1000px){.site-header{padding-inline:24px;gap:16px}.brand{flex-basis:122px;width:122px}.brand img{width:116px!important}.site-header nav{gap:12px}.account .button{display:none}.menu-pages{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.site-header{padding:10px 16px;gap:8px}.brand{flex:0 0 112px;width:112px;height:44px}.brand img{width:106px!important;height:42px!important;max-height:42px!important}.account{font-size:12px}.site-header nav{gap:16px;padding-top:6px}.site-header nav a{font-size:12px}.intro{margin-top:0}.intro h1{font-size:clamp(34px,10vw,44px)}.intro>p:not(.eyebrow){font-size:15px}.hero{min-height:390px;padding:40px 22px;background:linear-gradient(90deg,rgba(246,242,233,.97),rgba(246,242,233,.72)),url('menu/Set-Xuan-co-text-768x512.png') 70% center/cover}.hero>p:not(.eyebrow){font-size:18px}.featured-menu{padding:20px;margin-bottom:46px}.set-grid{grid-template-columns:1fr;gap:18px;margin-bottom:44px}.menu-pages{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.menu-pages a{padding:5px}.cards{gap:14px}}

/* Navigation module */
.site-header{position:sticky;top:0;z-index:40;height:72px;background:rgba(252,250,245,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(39,45,41,.12)}.site-nav{align-items:center}.site-nav a{position:relative;padding:10px 0}.site-nav a:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--deep);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.site-nav a:hover:after,.site-nav a:focus-visible:after{transform:scaleX(1)}.nav-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:0;background:transparent;cursor:pointer}.nav-toggle span{width:22px;height:1.5px;background:var(--deep);display:block}.mobile-menu{display:none}.site-header a:focus-visible,.button:focus-visible,.nav-toggle:focus-visible,.mobile-menu button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}body.menu-open{overflow:hidden}
@media(max-width:900px){.site-nav,.desktop-cta{display:none!important}.site-header{justify-content:space-between}.account{margin-left:auto}.nav-toggle{display:flex}.mobile-menu{display:block;position:fixed;z-index:100;inset:0;pointer-events:none}.mobile-menu.is-open{pointer-events:auto}.mobile-menu__overlay{position:absolute;inset:0;border:0;background:rgba(20,31,25,.46);opacity:0;transition:opacity .2s ease}.mobile-menu.is-open .mobile-menu__overlay{opacity:1}.mobile-menu__panel{position:absolute;inset:0 0 0 auto;width:min(380px,88vw);padding:22px;background:var(--color-surface,#fcfaf5);transform:translateX(102%);transition:transform .25s ease;box-shadow:-12px 0 28px rgba(0,0,0,.12);overflow:auto}.mobile-menu.is-open .mobile-menu__panel{transform:translateX(0)}.mobile-menu__head{height:54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:10px}.mobile-menu__head img{width:118px;height:48px;object-fit:contain}.mobile-menu__close{font:30px/1 var(--font-app);border:0;background:transparent;color:var(--deep);width:44px;height:44px;cursor:pointer}.mobile-menu nav{display:grid}.mobile-menu nav a,.mobile-menu nav button{min-height:48px;display:flex;align-items:center;border-bottom:1px solid rgba(39,45,41,.1);font:500 15px var(--font-app);color:var(--ink);text-decoration:none;background:transparent;border-left:0;border-right:0;border-top:0;text-align:left;padding:0}.mobile-menu nav form{margin:0}.mobile-menu nav button{width:100%;cursor:pointer}.site-header .account{display:flex}.site-header .account>a{font-size:13px}}
@media(max-width:480px){.site-header{height:64px}.brand{flex-basis:108px;width:108px}.account>a{display:none}.nav-toggle{margin-right:-8px}}

/* Menu editorial page */
.menu-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);align-items:center;gap:clamp(28px,5vw,74px);padding:clamp(28px,5vw,72px) 0 52px}.menu-hero__content{max-width:520px}.menu-hero h1{font:600 clamp(40px,4.5vw,64px)/1.08 var(--font-app);color:var(--deep);margin:0 0 20px}.menu-hero__content>p:not(.eyebrow){font-size:17px;color:#536057;margin:0 0 18px}.menu-hero__contact{font-size:13px!important;line-height:1.7}.menu-hero>img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:4px;box-shadow:0 12px 34px rgba(39,45,41,.12)}.menu-tabs{display:flex;gap:9px;overflow-x:auto;scrollbar-width:none;padding:13px 0 26px;margin-bottom:36px;border-bottom:1px solid var(--line)}.menu-tabs::-webkit-scrollbar{display:none}.menu-tabs a{white-space:nowrap;color:var(--deep);text-decoration:none;font-size:13px;padding:9px 14px;border:1px solid var(--line);border-radius:99px;transition:background .2s ease,border-color .2s ease}.menu-tabs a:hover,.menu-tabs a:focus-visible{background:var(--deep);border-color:var(--deep);color:#fff}.menu-card h3{font:500 29px/1.25 var(--font-app);margin:4px 0;color:var(--deep)}.menu-card__price{font-weight:600!important;color:var(--accent)!important;font-size:15px!important}.menu-card__description{min-height:50px}.button--secondary{background:transparent;color:var(--deep)!important}.button--secondary:hover{background:var(--deep);color:#fff!important}.menu-cta{margin:70px 0 0;padding:clamp(30px,5vw,56px);text-align:center;background:#e9e0d1}.menu-cta p{font:500 clamp(24px,3vw,38px)/1.35 var(--font-app);margin:0 0 22px;color:var(--deep)}
@media(max-width:767px){.menu-hero{grid-template-columns:1fr;gap:24px;padding:30px 0 34px}.menu-hero__content{max-width:none}.menu-hero h1{font-size:clamp(38px,11vw,50px)}.menu-hero__content>p:not(.eyebrow){font-size:16px}.menu-tabs{margin-left:-2px;margin-right:-2px;padding-bottom:20px;margin-bottom:30px}.menu-card__description{min-height:auto}.menu-cta{margin-top:48px}.menu-hero>img{order:2}}

/* Member journey */
.journey-hero{display:grid;grid-template-columns:1.35fr .65fr;gap:36px;align-items:stretch;padding:clamp(34px,6vw,76px);margin:22px 0 54px;background:linear-gradient(115deg,#e7eee6,#f3ede2);border-radius:6px}.journey-hero h1{font:600 clamp(40px,5vw,68px)/1.06 var(--font-app);color:var(--deep);margin:0 0 18px}.journey-hero>div>p:not(.eyebrow){max-width:570px;font-size:17px;color:#536057}.journey-hero>div>div{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.journey-tree{display:flex;flex-direction:column;justify-content:center;padding:30px;background:rgba(252,250,245,.7);border:1px solid rgba(33,59,47,.13);border-radius:5px}.journey-tree span{font-size:48px;color:var(--leaf)}.journey-tree p{font-size:12px;letter-spacing:.12em;color:var(--accent);margin:14px 0 4px}.journey-tree strong{font:500 26px/1.25 var(--font-app);color:var(--deep)}.journey-tree small{margin-top:24px;color:#627067;line-height:1.6}.journey-section{margin-bottom:42px}.journey-section h2{font:500 clamp(28px,3vw,38px)/1.2 var(--font-app);color:var(--deep);margin:0 0 22px}.journey-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.journey-stats article{padding:24px;border:1px solid var(--line);background:#fcfaf5;transition:transform .2s ease,border-color .2s ease}.journey-stats article:hover{transform:translateY(-2px);border-color:#8d9f8d}.journey-stats strong{display:block;font:500 38px/1 var(--font-app);color:var(--deep)}.journey-stats span{display:block;margin-top:9px;font-size:13px;color:#66736a}.journey-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}.journey-card{padding:26px;background:#fcfaf5;border:1px solid var(--line);border-radius:4px}.journey-card--ritual{background:#213b2f;color:#fff;border-color:#213b2f}.journey-card h2{font:500 27px/1.25 var(--font-app);margin:8px 0 12px;color:var(--deep)}.journey-card--ritual h2,.journey-card--ritual p{color:#fff}.journey-card p:not(.eyebrow){font-size:14px;line-height:1.7;color:#5c6960}.journey-card a:not(.button){color:var(--deep);text-decoration:underline;font-size:13px}.journey-card--ritual .eyebrow{color:#d7b48a}.journey-card--ritual .button{background:#fcfaf5;color:var(--deep)!important;border-color:#fcfaf5}
@media(max-width:900px){.journey-hero{grid-template-columns:1fr}.journey-grid{grid-template-columns:1fr 1fr}.journey-card--ritual{grid-column:1/-1}}@media(max-width:640px){.journey-hero{padding:28px 22px;margin-top:0}.journey-hero h1{font-size:42px}.journey-stats{grid-template-columns:1fr 1fr}.journey-grid{grid-template-columns:1fr}.journey-card--ritual{grid-column:auto}.journey-tree{padding:24px}}

/* Typography and rendering hardening — 20260808-08 */
html{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body,input,textarea,select,button{font-family:var(--font-app)}
h1,h2,h3,h4,h5,h6,.serif{font-family:var(--font-app)}
