:root{font-family:Kanit,sans-serif;color:#193d32;background:#f5f7f3}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 90% 0,#e1e9da 0,transparent 46%),#f5f7f3}header{padding:25px 7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dde5d8;background:#ffffff65}header .rk-wordmark strong{font-size:19px}main{max-width:1060px;margin:65px auto;padding:0 28px}.eyebrow{font-size:11px;color:#9c7c40;letter-spacing:1px}h1{font-size:42px;font-weight:500;line-height:1.4;letter-spacing:-.8px;margin:14px 0}.intro{color:#75816e;font-size:16px;font-weight:300}.choices{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.choices a{display:block;position:relative;overflow:hidden;background:#fff;border:1px solid #dce4d7;border-radius:22px;padding:34px;text-decoration:none;color:#193d32;box-shadow:0 6px 24px #193d3205;transition:transform .25s,border-color .25s,box-shadow .25s;animation:portal-in .5s ease-out both}.choices a:nth-child(2){animation-delay:.08s}.choices a::after{content:'';position:absolute;inset:auto -40px -60px auto;width:200px;height:200px;border-radius:50%;border:1px solid #e6ecdf;box-shadow:0 0 0 28px #f7f9f355;pointer-events:none}.choices a:hover{transform:translateY(-6px);border-color:#aebfa2;box-shadow:0 16px 40px #193d3210}.choices h2{font-weight:500;font-size:24px;margin:23px 0 10px}.choices p{font-weight:300;font-size:14px;color:#75816e;line-height:1.8}.icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;font-size:31px;color:#315b3e;background:#edf3e7;border:1px solid #e1e9d9;border-radius:16px;transition:transform .25s}.choices a:hover .icon{transform:rotate(-5deg)}.choices strong{display:block;margin-top:32px;color:#2f603e;font-size:13px;font-weight:500}footer{margin-top:30px;color:#87917f;font-size:12px;font-weight:300}.lang-switch{display:flex;gap:2px;padding:3px;border:1px solid #dbe4d5;border-radius:9px;background:#eaf0e5;height:34px;width:72px}.lang-switch button{border:0;background:none;font-size:10px;border-radius:6px;flex:1;color:#547044;cursor:pointer}.lang-switch button[aria-pressed=true]{background:#fff;box-shadow:0 1px 4px #1c382011}.lang-switch button:hover{background:#ffffff80}@keyframes portal-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:700px){header{padding:22px}.rk-wordmark strong{font-size:16px}main{margin-top:38px;padding:0 22px}.choices{grid-template-columns:1fr;gap:16px}h1{font-size:31px}.choices a{padding:26px}.choices h2{font-size:22px}.choices strong{margin-top:24px}footer{padding-bottom:25px}}

.portal-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:35px;padding-bottom:8px}.hero-emblem{display:flex;flex-direction:column;align-items:center;gap:15px;position:relative;animation:portal-in .55s ease-out both}.hero-emblem img{display:block;width:156px;height:130px;filter:drop-shadow(0 14px 20px #123f3718);border-radius:20px}.hero-emblem span{font-size:8px;font-weight:400;letter-spacing:1.7px;color:#8a7752;white-space:nowrap}.icon svg{width:32px;height:32px}.choices a:focus-visible{outline:3px solid #c29447;outline-offset:4px}.choices strong{transition:transform .2s}.choices a:hover strong{transform:translateX(4px)}@media(max-width:700px){.portal-hero{grid-template-columns:1fr;gap:12px}.hero-emblem{grid-row:1;align-items:flex-start;gap:8px}.hero-emblem img{width:108px;height:90px;border-radius:15px}.hero-emblem span{display:none}.choices{margin-top:24px}}

header{position:relative;z-index:2;background:#ffffff8c;backdrop-filter:blur(16px);border-bottom-color:#d5dfd288}
main{position:relative;z-index:1;margin-top:48px}
.portal-hero{padding:30px 34px;background:linear-gradient(115deg,#ffffff82,#e9f0e375);border:1px solid #ffffffcc;border-radius:26px;box-shadow:0 12px 45px #294b3110,inset 0 1px 0 #ffffff;backdrop-filter:blur(8px)}
.portal-hero h1{font-size:40px;max-width:690px}.portal-hero .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.4px;margin-top:0}.portal-hero .eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:#bd9852;box-shadow:0 0 0 4px #d1b16b16}
.hero-emblem img{box-shadow:0 12px 30px #173d3218}.choices{gap:24px;margin-top:26px}.choices a{background:#fffffff0;border-color:#ffffff;box-shadow:0 8px 28px #294b3109,inset 0 1px 0 #fff;padding:32px;border-radius:24px}.choices a:hover{border-color:#abc09b;box-shadow:0 18px 42px #294b3115;transform:translateY(-7px)}
.choices a::before{content:'';position:absolute;top:0;left:32px;right:32px;height:3px;background:linear-gradient(90deg,#557b59,#b8c8a6);border-radius:0 0 4px 4px;opacity:.65}.choices a:nth-child(2)::before{background:linear-gradient(90deg,#c7a261,#eed9b1)}
.choices a:nth-child(2) .icon{color:#8d6d32;background:#f7f0df;border-color:#eee3c8}.choices p{min-height:50px;color:#66745e}.choices strong{display:inline-flex;align-items:center;padding:10px 15px;border:1px solid #dce6d6;border-radius:10px;background:#f1f5ed;margin-top:20px;position:relative;z-index:1}.choices a:nth-child(2) strong{background:#faf5e9;border-color:#eee3ce;color:#7d622f}footer{margin-top:24px;text-align:center;color:#71806a}

@media(max-width:700px){main{margin-top:24px}.portal-hero{padding:24px;border-radius:22px;gap:12px}.portal-hero h1{font-size:29px;line-height:1.45;margin-top:12px}.portal-hero .intro{font-size:14px;margin-bottom:0}.hero-emblem{margin-bottom:6px}.hero-emblem img{width:96px;height:80px}.choices{gap:17px;margin-top:20px}.choices a{padding:26px;border-radius:22px}.choices a::before{left:26px;right:26px}.choices p{min-height:0}.choices strong{margin-top:16px;font-size:12px}footer{font-size:11px;line-height:1.7}}
@media(prefers-reduced-motion:reduce){.hero-emblem,.choices a{animation:none;transition:none}}

/* Solid surfaces prevent background light bleeding through content. */
header{background:#fff;backdrop-filter:none}.portal-hero{background:linear-gradient(115deg,#fff,#eef3e9);backdrop-filter:none;border-color:#e1e8dc}.choices a{background:#fff;border-color:#e1e8dc}

/* Give the dimensional brick logo room to show its depth. */
.portal-hero{grid-template-columns:minmax(0,1fr) 250px}.hero-emblem img{width:250px;height:192px;filter:none;box-shadow:none;border-radius:0}.hero-emblem{gap:0}.hero-emblem span{letter-spacing:1.5px}@media(max-width:700px){.portal-hero{grid-template-columns:1fr}.hero-emblem{align-items:center;margin:-8px 0 0}.hero-emblem img{width:205px;height:158px}}

/* One RK palette across the welcome screen and both services. */
:root{color:var(--rk-green-deep)}header{border-bottom-color:var(--rk-border)}.portal-hero{background:linear-gradient(115deg,#fff,var(--rk-soft-green));border-color:var(--rk-border)}h1,.choices h2{color:var(--rk-green-deep)}.intro,.choices p,footer{color:var(--rk-muted)}.eyebrow,.hero-emblem span{color:var(--rk-gold-dark)}.portal-hero .eyebrow::before{background:var(--rk-gold)}.choices a{color:var(--rk-green);border-color:var(--rk-border)}.choices a::before,.choices a:nth-child(2)::before{background:linear-gradient(90deg,var(--rk-green),var(--rk-gold));opacity:.8}.choices a .icon,.choices a:nth-child(2) .icon{background:var(--rk-soft-green);color:var(--rk-green);border-color:var(--rk-border)}.choices a strong,.choices a:nth-child(2) strong{background:var(--rk-green);color:#fff;border-color:var(--rk-green)}.choices a:hover strong{background:var(--rk-green-deep)}.choices a:hover{border-color:var(--rk-gold)}.lang-switch{background:var(--rk-soft-green);border-color:var(--rk-border)}.lang-switch button{color:var(--rk-green)}

.portal-header-actions{display:flex;align-items:center;gap:16px}.portal-login{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 16px;border:1px solid var(--rk-green);border-radius:10px;background:var(--rk-green);color:#fff;text-decoration:none;font-size:12px;white-space:nowrap;transition:background .2s,transform .2s}.portal-login:hover{background:var(--rk-green-deep);transform:translateY(-1px)}@media(max-width:700px){header{flex-wrap:wrap;gap:16px}.portal-header-actions{gap:10px;margin-left:auto}.portal-login{font-size:11px;padding:8px 12px}.portal-header-actions .lang-switch{flex-shrink:0}}
