/* A brighter gold-and-white identity, retaining the editorial layout. */
:root{--paper:#fffefa;--card:#ffffff;--ink:#2b261d;--muted:#807767;--line:#ede4cd;--gold:#edbe43;--gold-ink:#98701c;--green:#956a16;--soft:#fff5d7;color-scheme:light}
:root[data-theme=dark]{--paper:#1b1812;--card:#242016;--ink:#faf5e7;--muted:#c3b592;--line:#483d26;--gold:#efc754;--gold-ink:#efc754;--green:#7d5c1b;--soft:#322a18;color-scheme:dark}
.topline{background:linear-gradient(105deg,#f8dc84,#edbf45);color:#594010;border-bottom:1px solid #dcb44e;font-weight:700}
.topline i{background:#94701e;box-shadow:0 0 0 3px #fff6}.masthead{padding-block:27px;background:radial-gradient(ellipse at 12% 50%,#fff6d0,transparent 45%)}
.brand{gap:13px}.brand img{width:58px;height:58px;filter:drop-shadow(0 4px 9px #d6aa2e20)}.brand-name{font-size:36px;letter-spacing:-1.9px;color:var(--ink)}.brand-name b{color:var(--gold-ink);font-weight:700;font-size:26px;letter-spacing:-1px}.brand-name small{color:var(--muted);font-size:9px;letter-spacing:1.7px;font-weight:400;margin-top:2px}
.main-nav{background:var(--card);border-top-color:var(--line);border-bottom-color:#e7cd85;box-shadow:0 4px 14px #b9952910}.nav-links a.active{color:var(--gold-ink)}.nav-links a::after{background:linear-gradient(90deg,#d9a326,#f4d579);height:3px;box-shadow:0 1px 5px #e2b94350}
.search-trigger{border-color:#e5cf99}.search-trigger:hover,.header-link:hover{color:var(--gold-ink)}.icon-button:hover{background:var(--soft);border-color:var(--gold)}
.intro{padding-top:37px}.intro h1 em{color:#b7841b}.hero-media{border:1px solid #efdca5;box-shadow:0 13px 35px #c89d2720;border-radius:7px}.hero-main h2 a:hover,.story h3 a:hover,.story-card h3 a:hover{color:var(--gold-ink)}
.story-image,.card-image,.knowledge-image{background:var(--soft)}.story-card .card-image{border:1px solid #ebdfc2}.story-meta .cat.pr{background:var(--soft);color:var(--gold-ink)}.story-meta .cat{color:var(--gold-ink)}
.hero-aside .community-mini{background:linear-gradient(115deg,#fff9e8,#fff1c4);color:#57451f;border-color:#e7b635}.community-mini .eyebrow{color:#94701d}
.filter-btn[aria-pressed=true]{background:#f5d36c;color:#584113;border-color:#e8bc4b;font-weight:700}.filter-btn:hover{border-color:var(--gold);color:var(--gold-ink)}
.button{background:#d8a62f;border-color:#d8a62f;color:#2f230e;box-shadow:0 3px 9px #c59d1e12}.button:hover{background:#edc050;color:#33250d;border-color:#e7b73f}.button.gold{background:linear-gradient(110deg,#f3d16b,#e8b538);border-color:#e0b440;color:#33270e}.button.gold:hover{background:#f9dc85}.button.outline{background:var(--card);color:var(--gold-ink);border-color:#dfc476;box-shadow:none}.button.outline:hover{background:var(--soft);border-color:var(--gold)}
.community-card{background:linear-gradient(145deg,#fff9e9,#f8df8c);color:#4d3914;border:1px solid #e7c66d;box-shadow:0 12px 25px #ac7b1310}.community-card:after{color:#b6831410}.community-card p{color:#796331}.community-card .sidebar-kicker{color:#8c6a1f}.community-card .community-symbol{color:#a27215;border-color:#d2b364;background:#fff9}.community-card .button{background:#fffefa;border-color:#d6b150;color:#876017;box-shadow:0 4px 10px #af83101c}
.sidebar-note{border-color:#e5cd90;background:linear-gradient(150deg,var(--card),var(--soft))}.sidebar-note .eyebrow{color:var(--gold-ink)}.compact .index{color:#c9a84e}
.knowledge-section{background:linear-gradient(110deg,#fffbef,#fff4ce);border-color:#efdcaa}.knowledge-card{background:var(--card);border-color:#e8dbb6;box-shadow:0 3px 14px #c5a04e0a}.knowledge-card .knowledge-content>span{color:var(--gold-ink)}
.newsletter{background:linear-gradient(110deg,#f8db7c,#efbf45);color:#4a3510;border:1px solid #e2b740;box-shadow:0 12px 32px #d2a63118}.newsletter:before{color:#b67f1010}.newsletter .button{background:#fffefa;border-color:#fffefa;color:#805a14;box-shadow:0 5px 15px #98670f16}.newsletter .button:hover{background:#fff4cf}
.site-footer{background:linear-gradient(180deg,#fffdfa,#fff7df);color:#453b27;border-top:3px solid #ebbf4c}.site-footer .brand-name{color:#3b3020}.site-footer .brand-name b{color:#ae7c1a}.site-footer .brand-name small{color:#97835c}.site-footer .brand img{width:46px;height:46px}.footer-about,.footer-col a{color:#857553}.footer-col a:hover{color:#a26d0b}.footer-bottom{border-top-color:#e5d6b5;color:#958363}.footer-disclaimer{color:#7e6c48}
.author-badge{background:#fff1bd!important}.author-badge img{filter:none}.article-toc a.active{color:var(--gold-ink);background:var(--soft);border-color:#dcad34}.article-pr-note{background:var(--soft);border-color:#e9d490}.reading-progress span{background:linear-gradient(90deg,#c69421,#f4d574)}.article-content a{color:var(--gold-ink)}.article-content blockquote{border-color:#dbad33}.search-dialog{border-color:#e6cf92}.search-box{border-color:#e8d7ab}.search-result .eyebrow{color:var(--gold-ink)}
:root[data-theme=dark] .masthead{background:radial-gradient(ellipse at 12% 50%,#4c3a1429,transparent 45%)}:root[data-theme=dark] .intro h1 em{color:#edc65b}:root[data-theme=dark] .community-mini,:root[data-theme=dark] .community-card,:root[data-theme=dark] .knowledge-section,:root[data-theme=dark] .site-footer{background:linear-gradient(140deg,#2c2518,#201c14);color:#f5e6be;border-color:#5c481e}:root[data-theme=dark] .community-card p,:root[data-theme=dark] .footer-about,:root[data-theme=dark] .footer-col a{color:#c8b88d}:root[data-theme=dark] .site-footer .brand-name{color:#fff4d5}:root[data-theme=dark] .site-footer .brand-name b{color:#e5bb51}:root[data-theme=dark] .community-card .button{background:#e9bd4e;color:#3c2c0e}:root[data-theme=dark] .community-mini{color:#c9b78e}:root[data-theme=dark] .community-mini .eyebrow{color:#e5bb51}:root[data-theme=dark] .community-card .community-symbol{background:#e8bd4b12;color:#e8bd4b}:root[data-theme=dark] .story-card .card-image,:root[data-theme=dark] .hero-media,:root[data-theme=dark] .knowledge-card{border-color:var(--line)}:root[data-theme=dark] .author-badge{background:#483a1a!important}
@media(max-width:850px){.brand-name{font-size:31px}.brand-name small{letter-spacing:1.2px}.brand img{width:50px;height:50px}.masthead{padding-block:22px}}
@media(max-width:600px){.masthead{padding-block:17px}.brand{gap:8px}.brand img{width:39px;height:39px}.brand-name{font-size:26px;letter-spacing:-1.5px}.brand-name b{font-size:20px}.brand-name small{font-size:7px;letter-spacing:.7px;line-height:1.7;padding-top:3px;margin:0}.intro{padding-top:25px}.topline{font-size:9px}.site-footer .brand img{width:40px;height:40px}.site-footer .brand-name small{font-size:7px;letter-spacing:1px}.story-meta .cat.pr{padding:2px 4px}.story-card .story-meta .cat{font-size:10px}.story-card .story-meta time{font-size:10px}.footer-bottom,.footer-disclaimer{font-size:11px}}
/* Outlined brand artwork has its own optical spacing; no browser font dependency. */
.brand{width:302px;max-width:100%;min-width:0;display:block;flex-shrink:0;line-height:0}
.brand>img.brand-lockup{display:block;width:100%;height:auto;filter:none;max-width:100%}
.brand>img.brand-lockup--dark{display:none}
:root[data-theme=dark] .brand>img.brand-lockup--light{display:none}
:root[data-theme=dark] .brand>img.brand-lockup--dark{display:block}
.site-footer .brand{width:260px}
@media(max-width:850px){.brand{width:263px}}
@media(max-width:600px){.brand{width:190px;max-width:calc(100vw - 154px)}.mast-actions{gap:7px}.site-footer .brand{width:236px;max-width:100%}}
/* Approved gold emblem with a single, balanced horizontal name. */
.brand.brand-inline{width:auto;max-width:100%;display:inline-flex;align-items:center;gap:12px;line-height:1;flex-shrink:0}
.brand.brand-inline>img.brand-symbol{display:block;width:72px;height:72px;object-fit:contain;filter:none;flex-shrink:0}
.brand-wordmark{font-size:32px;font-weight:700;letter-spacing:-1.4px;line-height:1.2;color:var(--ink);white-space:nowrap}
.brand-wordmark>span{color:var(--gold-ink)}
.masthead:has(.brand-inline){padding-block:18px}
.site-footer .brand.brand-inline{width:auto;max-width:100%;gap:10px}
.site-footer .brand.brand-inline>img.brand-symbol{width:62px;height:62px}
.site-footer .brand-wordmark{font-size:28px}
@media(max-width:850px){.brand-wordmark{font-size:29px}.brand.brand-inline>img.brand-symbol{width:64px;height:64px}}
@media(max-width:600px){.brand.brand-inline{max-width:none;gap:8px}.brand.brand-inline>img.brand-symbol{width:44px;height:44px}.brand-wordmark{font-size:clamp(16px,5.1vw,22px);letter-spacing:-.8px}.masthead:has(.brand-inline){padding-block:14px}.site-footer .brand.brand-inline>img.brand-symbol{width:52px;height:52px}.site-footer .brand-wordmark{font-size:25px}}

/* Event media partners: eight square cards, four per desktop row. */
.event-partners{padding:88px 0;background:radial-gradient(ellipse at 95% 5%,#f7df9d66,transparent 45%),linear-gradient(145deg,#fffefa,#fff8e6);border-block:1px solid var(--line)}
.event-partners-head{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:36px}
.event-partners h2{font-size:clamp(30px,3.4vw,46px);line-height:1.2;letter-spacing:-1.5px;margin:14px 0 0}
.event-partners h2 em{font-style:normal;color:var(--gold-ink)}
.event-partners-head>p{max-width:350px;color:var(--muted);font-size:16px;line-height:1.7;margin:0}
.event-partners-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.event-partner{aspect-ratio:1;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:24px;background:#fff;border:1px solid #e6d5a4;border-radius:16px;box-shadow:0 8px 26px #97712209;transition:transform .2s,border-color .2s,box-shadow .2s}
.event-partner:hover,.event-partner:focus-visible{transform:translateY(-5px);border-color:#c59628;box-shadow:0 16px 32px #97712220}
.event-logo-stage{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;margin-bottom:20px;border-radius:9px;padding:10px}
.event-logo-stage img{width:100%;height:100%;max-height:130px;object-fit:contain}
.event-logo-stage.dark{background:#191b23;padding:18px}
.event-card-name{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #eee6d5;padding-top:16px;font-size:13px;font-weight:600;line-height:1.4;color:#3a3327}
.event-card-name>span{font-size:20px;color:#b58823}
.event-partners-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:28px;color:var(--muted);font-size:14px}
.event-partners-bottom a{display:inline-flex;align-items:center;gap:12px;color:var(--gold-ink);font-weight:600}
[data-theme="dark"] .event-partners{background:radial-gradient(ellipse at top right,#765a1925,transparent 55%),#1b1914}
@media(max-width:850px){.event-partners{padding:60px 0}.event-partners-head{align-items:start;gap:24px;flex-direction:column}.event-partners-head>p{max-width:580px}.event-partners-grid{gap:12px}.event-partner{padding:14px}.event-logo-stage{padding:4px;margin-bottom:12px}.event-card-name{font-size:11px;padding-top:10px}}
@media(max-width:600px){.event-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-partner{padding:16px}.event-partners h2{letter-spacing:-1px}.event-partners-bottom{align-items:start;flex-direction:column}.event-card-name{font-size:12px}.event-logo-stage img{max-height:95px}}
@media(prefers-reduced-motion:reduce){.event-partner{transition:none}.event-partner:hover{transform:none}}

/* Use the Vietnamese typeface consistently, including đ and stacked accents. */
.intro h1 em{font-family:"Be Vietnam Pro",Arial,sans-serif;font-style:normal;font-weight:700;font-size:1.04em;letter-spacing:-.025em;line-height:1.5}
.brand.brand-inline>img.brand-symbol{object-fit:contain;image-rendering:auto}

/* Original DGroup lockup, preserving the approved brand asset as one image. */
.brand.brand-original{display:block;width:248px;max-width:100%;flex-shrink:0;line-height:0}
.brand.brand-original>img{width:100%;height:auto;display:block;object-fit:contain;filter:none}
.masthead:has(.brand-original){padding-block:18px}
.site-footer .brand.brand-original{width:220px;max-width:100%}
.site-footer .brand.brand-original>img{width:100%;height:auto;filter:none}
@media(max-width:850px){.brand.brand-original{width:220px}}
@media(max-width:600px){.brand.brand-original{width:clamp(145px,46vw,180px)}.masthead:has(.brand-original){padding-block:14px}.site-footer .brand.brand-original{width:200px}}
