@font-face{font-family:'Novera Thai';src:url('/portal/NotoSansThai.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
html{font-size:16px}
body{font-family:'Novera Thai','Segoe UI',Tahoma,sans-serif!important;font-size:17px;line-height:1.85;color:#f2eff5}
button,input,select,textarea{font-family:'Novera Thai','Segoe UI',Tahoma,sans-serif!important}
button,input,select,textarea{font-size:16px!important}
main p,main li{line-height:1.85}
main p{font-size:16px}
main small,figcaption,.source-note,.verified,.hint,.wm-footnote,.support-note,.guide-note{font-size:14px!important;line-height:1.8;color:#bdbbcf}
.eyebrow{font-size:13px!important;letter-spacing:2px!important;color:#e5cb97}
body>.header,body>header:not(.header){height:auto;min-height:100px;align-items:center;gap:24px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px}
.header nav,body>header nav{gap:18px;flex-wrap:wrap}
.header nav a,body>header nav a{font-size:15px!important;line-height:1.65;padding:7px 2px}
.brand{font-size:28px!important;white-space:nowrap}
.brand small{font-family:'Novera Thai',Tahoma,sans-serif;font-size:12px!important;letter-spacing:1px}
.header .brand-mark{width:44px;height:44px;background:transparent!important;object-fit:contain}
.page-heading h1,.support-intro h1,.wm-heading h1{font-size:clamp(34px,3.6vw,48px)!important;line-height:1.45}
.page-heading>p:not(.eyebrow),.support-intro>p:not(.eyebrow),.wm-heading>p:not(.eyebrow),.intro{font-size:18px!important;color:#c4c0d2}
.guide-toolbar{padding:22px;gap:22px}
.guide-tabs button{font-size:17px!important;padding:12px 18px}
.guide-filters label,.guide-filters input,.guide-filters select{font-size:16px!important}
.guide-results{gap:20px}
.guide-card{padding:25px;min-height:280px}
.guide-card h2,.guide-title{font-size:24px!important;line-height:1.5}
.guide-code{font-size:13px!important;letter-spacing:1px}
.guide-card>p,.guide-stats dt{font-size:14px!important;line-height:1.8}
.guide-stats dd{font-size:18px!important;color:#f2eff5}
.guide-action,.guide-close,.guide-reset,.guide-bottom button,.guide-map-chip{font-size:16px!important;min-height:44px}
.guide-detail{padding:28px}
.guide-detail h2{font-size:32px}
.guide-detail h3{font-size:21px}
.guide-detail .guide-pills{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.guide-pills li{font-size:15px!important;display:flex;gap:10px;align-items:center;padding:10px!important}
.guide-portrait{width:100%;height:100px;object-fit:contain;image-rendering:pixelated;margin:10px 0 14px;filter:drop-shadow(0 5px 9px #0005)}
.guide-detail-portrait{width:120px;height:110px;object-fit:contain;image-rendering:pixelated;float:right;margin:0 15px 15px}
.guide-item-picture{width:32px;height:32px;object-fit:contain;flex:none;image-rendering:pixelated}
.support-panel{padding:32px}
.support-panel h2{font-size:28px}
.support-panel label,.support-panel p,.support-answer p,.support-result p{font-size:16px!important}
.support-suggestions button{font-size:15px!important;min-height:44px;padding:10px 15px}
.support-answer h3,.support-result h3{font-size:20px}
.support-layout{grid-template-columns:minmax(0,1fr) 300px}
.support-aside p,.support-aside li{font-size:15px!important;line-height:1.85}
main>h1{font-size:clamp(38px,4.5vw,58px);line-height:1.5}
.step h2,h2{line-height:1.55}
.notice p,section .tip,section .destination,section .next-path{font-size:16px!important}
.job-picker strong{font-size:28px}
.job-picker span,.job-picker small{font-size:15px!important}
.job-layout li{font-size:17px;line-height:1.95;padding-bottom:18px}
.table-scroll table{font-size:16px!important;line-height:1.8}
.table-scroll td,.table-scroll th{padding:15px 18px}
code{font-size:14px!important}
.flow span{font-size:17px}
.flow b{font-size:14px}
.columns figcaption{margin-top:15px}
details summary{font-size:18px}
details p{font-size:16px!important}
footer,footer p,footer small,footer a{font-size:14px!important;line-height:1.8}
/* Homepage hierarchy: readable Thai copy and stronger actions. */
.topline{font-size:12px;min-height:36px}.test-badge{font-size:12px}
.site-header{min-height:104px;height:auto;padding-top:20px;padding-bottom:20px;flex-wrap:wrap}
.site-header .logo{font-family:Georgia,serif;font-size:30px}.logo small{font-size:10px;letter-spacing:1.5px}
.site-header nav{gap:24px}.site-header nav a{font-size:16px!important}
.header-play{font-size:17px;padding:14px 23px;min-height:54px}
.hero{height:760px;max-height:none;min-height:680px}
.hero-content{padding-top:70px}.hero h1{font-size:clamp(36px,3.5vw,48px);font-weight:600;line-height:1.55}
.hero-copy{font-size:18px!important;line-height:1.95;color:#e2dce8}
.hero-actions .button{font-size:18px;min-height:72px}.hero-actions small{font-size:13px!important}
.button.ghost{font-size:16px}.hero-tags{font-size:13px;letter-spacing:0}.scroll-cue{font-size:13px}
.quick-links strong{font-size:19px}.quick-links small{font-size:14px;line-height:1.7}
.section-heading h2{font-size:36px;font-weight:600}.section-heading h2 span{font-size:24px}
.news-filters button{font-size:16px!important;padding:12px 18px}
.news-art{height:235px}.news-label{font-size:12px;letter-spacing:2px}
.news-meta{font-size:14px}.news-body h3{font-size:24px;font-weight:600;line-height:1.55}
.news-body p{font-size:16px!important;min-height:98px;color:#bdbbcd}.news-body>a{font-size:16px;min-height:44px;align-items:center}
.world-content h2{font-size:42px}.world-content>p:not(.eyebrow){font-size:17px!important;line-height:1.9}
.world-stats span{font-size:14px}.text-link{font-size:17px}
.heading-note{font-size:15px}.start-grid h3{font-size:24px}.start-grid p{font-size:16px!important;min-height:92px}
.start-grid a,.start-grid button{font-size:16px!important;min-height:44px;align-items:center}
.community-section h2{font-size:39px}.community-section p:not(.eyebrow){font-size:17px!important}
.discord-button small,.community-actions>a{font-size:15px!important}.floating-support div{font-size:15px}.floating-support small{font-size:12px}
@media(max-width:1050px){.site-header nav{order:3;width:100%;justify-content:center;margin:0;padding-top:12px}.header-play{margin-left:auto}.site-header .logo{font-size:28px}.support-layout{grid-template-columns:1fr}}
@media(max-width:760px){body{font-size:16px}.header nav a,body>header nav a{font-size:14px!important}.header nav{gap:12px}.site-header nav{justify-content:flex-start;padding:20px;position:absolute;top:100%;width:100%;left:0;order:0}.site-header .logo{font-size:24px}.logo small{font-size:8px}.site-header .sigil{width:40px;height:40px}.site-header .menu-toggle{font-size:14px!important}.header-play{margin-left:0;font-size:15px;min-height:44px}.hero{height:auto;min-height:740px}.hero-content{padding-top:54px;padding-bottom:65px}.hero h1{font-size:34px}.hero-copy{font-size:17px!important}.hero-wordmark{font-size:clamp(43px,10vw,64px)}.hero-actions{width:min(100%,330px)}.hero-actions .button{min-height:62px}.hero-actions small{font-size:12px!important}.hero-tags{font-size:11px;flex-wrap:wrap}.news-body p,.start-grid p{min-height:0}.section-heading h2{font-size:29px}.quick-links strong{font-size:19px}.floating-support{padding:10px 14px}.floating-support div{font-size:13px}.floating-support small{font-size:11px}.table-scroll table{font-size:15px!important}.guide-detail{padding:22px}.guide-card{padding:22px}.support-panel{padding:22px}.support-intro h1{font-size:34px!important}.brand{font-size:27px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.hero-actions .primary small{color:#453324!important;font-size:14px!important}.wm-locations{margin-top:14px}.wm-locations summary{cursor:pointer;color:#e1c28d;font-size:16px}.wm-locations .wm-location-chips{margin-top:12px}
