@font-face{font-family:LawLao;src:url('fonts/NotoSerifLao-var.woff2') format('woff2');font-display:swap;font-weight:100 900}
:root{--canvas:#0B1D33;--canvas-2:#102840;--panel:#142c43;--accent:#D4AF37;--accent-text:#D4AF37;--paper:#f7f5f0;--maxw:1200px}
body{line-height:1.75}.env{display:none}.page{overflow:clip}h1,h2,h3{text-wrap:balance}p{max-width:75ch}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #D4AF37;outline-offset:5px}.sec{padding:clamp(64px,8vw,112px) clamp(20px,5vw,64px);scroll-margin-top:100px}.sec.light{background:#f7f5f0}.kicker{font-size:.73rem;letter-spacing:.19em;margin-bottom:20px}.sec h2{line-height:1.2}.nav,.nav.solid{background:#0b1d33f5;border-bottom:1px solid #ffffff1c;backdrop-filter:blur(16px);gap:20px;padding:14px 4vw}.nav .logo,.nav.solid .logo{width:105px}.navlinks{gap:22px}.navlinks a{font-size:.8rem}.nav .btn{font-size:.78rem;margin-left:0}.btn{border-radius:2px;padding:13px 23px;min-height:48px;box-shadow:none}.btn.ghost{background:transparent}.menu-toggle{display:none}.hero{min-height: min(850px,100svh);height:auto;padding:190px 5vw 120px;display:flex;align-items:center;background:#0b1d33 url('hero-poster.jpg') center/cover}.hero .wrap{width:100%}.hero .veil{background:linear-gradient(90deg,rgba(5,18,33,.94),rgba(5,18,33,.72) 48%,rgba(5,18,33,.15))}.hero-copy{max-width:760px}.hero h1{font-size:clamp(3rem,6.5vw,6.3rem);line-height:1.07;letter-spacing:-.035em;text-shadow:none}.hero .sub{max-width:49ch;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.8;margin-top:28px}.hero .chip{background:transparent;border:0;border-radius:0;padding:0;letter-spacing:.2em;font-size:.7rem;color:#e3cc8e}.hero .row{margin-top:34px;gap:14px}.hero .cue{display:none}.philosophy{background:#0B1D33;border-bottom:1px solid #ffffff1c}.philosophy-grid{display:grid;grid-template-columns: .9fr 1.1fr;gap:clamp(36px,7vw,100px);align-items:center}.philosophy h2{font-family:var(--display);font-size:clamp(2rem,3.5vw,3.3rem);margin:0 0 26px}.philosophy-intro>p:not(.kicker){color:#b8c5d3;font-size:.96rem}.philosophy-intro .principles{padding-top:22px;border-top:1px solid #ffffff26;color:#dcca9d!important;font-size:.78rem!important;letter-spacing:.05em}.philosophy-quote{position:relative;border-left:1px solid #d4af3760;padding:20px 0 20px clamp(24px,4vw,56px)}.quote-mark{font:80px Georgia,serif;line-height:1;color:#D4AF37;display:block}.philosophy blockquote{font-family:LawLao,serif;font-size:clamp(1rem,1.5vw,1.35rem);line-height:2.2;margin:0;color:#faf6e8}.quote-source{font-family:LawLao,serif;font-size:.8rem;color:#dcca9d;margin:20px 0}.philosophy-note{font-size:.86rem;color:#aebdcd;border-top:1px solid #ffffff20;padding-top:20px}.pillars{background:#fff!important;border-block:1px solid #e2e1db;padding-block:52px}.pillar{text-align:left;padding:0 20px;border-left:1px solid #dedbd2}.pillar .ico{margin:0 0 18px;width:48px;height:48px;border-radius:50%;overflow:hidden}.pillar h3{font-size:.8rem;letter-spacing:.08em}.pillar p{font-size:.88rem}.vm{box-shadow:none;border:0;border-top:1px solid #bca469;background:transparent;padding:28px 0}.vm h3{font-size:1.5rem}.values{gap:0}.value{background:transparent;border:0;border-left:1px solid #dcd7cc;padding:22px 18px}.value p{font-size:.85rem}.value h3{font-size:.78rem;letter-spacing:.06em}.sechead{margin-bottom:40px}.svc-grid{gap:24px}.scard{border-radius:0;box-shadow:none}.scard img{transition:transform .5s}.scard:hover img{transform:scale(1.025)}.team-intro{grid-template-columns:1fr 1fr}.team-grid{grid-template-columns:minmax(230px,370px);justify-content:end}.member{border:0;background:#fff;box-shadow:0 14px 45px #0b1d3310}.member figcaption{padding:24px}.member .ph{aspect-ratio:4/4.5}.equation{padding-block:60px;background:#102840;border-block:1px solid #ffffff16}.equation .eq-icon{width:42px;height:42px}.equation .eq-word{font-size:clamp(1rem,2vw,1.6rem)}.equation .lede{font-size:.95rem}.proof{background:#102840}.proof-three{gap:22px}.proof .shot{border-radius:0}.ctaband{padding-block:80px}.consult{background:#0b1d33}.consult-grid{gap:70px}.consult input,.consult textarea{border-radius:0}.terms{gap:0 64px}.term{padding:26px 0}.term dt{font-size:1.1rem}.term .lo{font-family:LawLao,serif}.term dd{font-size:.9rem}footer{background:#071625;padding-top:64px}.legal{line-height:1.8;color:#9cabbc}.rise,.stagger>*{opacity:1;transform:none}.g{text-shadow:none}html{scroll-padding-top:100px}
@media(max-width:1180px){.menu-toggle{display:flex;align-items:center;gap:10px;margin-left:auto;background:transparent;color:#f7f5f0;border:1px solid #ffffff40;padding:10px 14px;min-height:44px;font:inherit;font-size:.8rem}.navlinks{display:none}.nav .lang-switch{margin-left:0}.nav.menu-open .navlinks{display:flex;position:absolute;top:100%;left:0;right:0;background:#0b1d33;flex-direction:column;align-items:stretch;padding:20px 5vw;gap:0;max-height:70svh;overflow:auto;border-bottom:1px solid #d4af3760}.navlinks a{padding:14px 0;border-bottom:1px solid #ffffff16}.nav .btn{margin-left:0}}
@media(max-width:760px){.philosophy-grid,.team-intro{grid-template-columns:1fr}.philosophy-quote{padding-left:24px}.team-grid{justify-content:start;width:100%}.hero{min-height:740px;min-height:90svh;padding-top:160px;padding-bottom:80px}.hero h1{font-size:clamp(2.7rem,10vw,4.5rem)}.hero .veil{background:linear-gradient(90deg,#071625eb,#0716259c)}.nav,.nav.solid{gap:10px;padding:10px 20px}.nav .logo,.nav.solid .logo{width:80px}.nav>.btn{display:none}.nav .menu-toggle{order:2}.nav .lang-switch{margin-left:auto}.philosophy blockquote{font-size:1rem;line-height:2.25}.philosophy blockquote br{display:block}.values{grid-template-columns:1fr 1fr}.pillar-grid{gap:28px 12px}.pillar{padding-left:16px}.sec{scroll-margin-top:80px}.consult-grid{gap:36px}.legal{margin-top:36px}.hero .row{flex-wrap:wrap}.hero .row .btn{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Match the quotation typography to the language of its page. */
.philosophy blockquote:not([lang="lo"]){font-family:var(--display),Georgia,serif;line-height:1.9;overflow-wrap:break-word}
.philosophy .quote-source:not([lang="lo"]){font-family:var(--body),sans-serif}
html[lang="th"] .philosophy blockquote{font-family:"Noto Serif Thai",Thonburi,serif}
html[lang="zh"] .philosophy blockquote{font-family:"Noto Serif SC","Songti SC",serif}
html[lang="ko"] .philosophy blockquote{font-family:"Noto Serif KR","AppleMyungjo",serif}
[style*="text-align:center"]>p,.values-head>p{margin-left:auto;margin-right:auto}
.equation .kicker{margin-left:auto;margin-right:auto}
.legal>span:last-child{flex-basis:100%;text-align:center}
#glossary .wrap>.rise:first-child,#glossary h2,#proof h2,#services .sechead h2{max-width:none!important}
#team .wrap>.rise:not(:first-child),#glossary .wrap>.rise:first-child,#glossary .disclaimer,#proof .wrap>.rise:first-child,#platform .wrap>.rise:first-child,.plaque-lead,.plaque-footer,.th-head,.th-head>div,.th-note{text-align:center!important;margin-inline:auto!important}
#team .wrap>.rise:not(:first-child) p,#glossary .wrap>.rise:first-child p,#proof .wrap>.rise:first-child p,#platform .wrap>.rise:first-child p,.plaque-lead p,.th-head p{margin-inline:auto}
.th-head{justify-content:center}.plaque-native{justify-content:center;align-items:center;text-align:center}
#glossary .disclaimer{max-width:none!important}
#team .wrap>.rise:first-child{max-width:none!important}#team .wrap>.rise:first-child h2{max-width:none!important}#team .wrap>.rise:first-child .lede{max-width:52rem!important}
#team .wrap>.rise:first-child .lede{max-width:none!important}@media(max-width:760px){.br2{display:none}}
.vm{text-align:center}.vm p,.vm h3{margin-left:auto;margin-right:auto}
/* About: vision & mission as one framed statement pair */
.vm-grid{gap:0!important;grid-template-rows:repeat(4,auto);max-width:1080px;margin:0 auto clamp(3.5rem,7vw,5rem)!important;background:#fff;border:1px solid #e4dfd3;border-top:2px solid #b8963e;box-shadow:0 22px 50px #0b1d330d}
.vm{display:grid!important;grid-row:span 4;grid-template-rows:subgrid;justify-items:center;align-content:start;text-align:center;row-gap:0;border:0!important;padding:clamp(2.2rem,4vw,3.2rem) clamp(1.6rem,4vw,3.2rem)!important;background:transparent}
.vm+.vm{border-left:1px solid #e4dfd3!important}
.vm .vm-ico{width:52px;height:52px;border:1px solid #b8963e;border-radius:50%;display:grid;place-items:center;color:#8a6d1f;margin-bottom:1.1rem}
.vm .vm-ico svg{width:24px;height:24px}
.vm .kicker{margin:0 auto .9rem!important}
.vm h3{font-size:clamp(1.2rem,1.8vw,1.5rem)!important;line-height:1.38;max-width:26ch;margin:0 auto!important}
.vm h3::after{content:"";display:block;width:36px;height:1px;background:#b8963e;margin:1.2rem auto 1.1rem}
.vm p:not(.kicker){max-width:44ch;font-size:.95rem;line-height:1.75;margin:0 auto}
@media(max-width:820px){.vm-grid{grid-template-columns:1fr!important;grid-template-rows:none}.vm{grid-row:auto;grid-template-rows:none}.vm+.vm{border-left:0!important;border-top:1px solid #e4dfd3!important}}
.vm-grid{max-width:1200px}.vm{padding-inline:clamp(1.4rem,3vw,2.6rem)!important}.vm h3{max-width:30ch}.vm p:not(.kicker){max-width:none}
.vm{padding-inline:clamp(1.2rem,2.4vw,2.6rem)!important}.vm p:not(.kicker){font-size:.92rem}
/* Pillars: navy band, gold line icons (LAO INTER-LAW brand: navy authority, gold accent) */
.pillars{background:#0B1D33!important;border-block:1px solid #d4af3733!important;padding-block:clamp(56px,7vw,88px)!important}
.pillars .pillar-grid{gap:0!important;counter-reset:pil}
.pillars .pillar{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;border-left:1px solid #d4af3740!important;text-align:center!important;padding:6px clamp(16px,2.4vw,34px)!important;counter-increment:pil}
.pillars .pillar:first-child{border-left:0!important}
.pillars .pillar::before{content:counter(pil,decimal-leading-zero);display:block;font-family:var(--accentface);font-size:.7rem;letter-spacing:.24em;color:#D4AF37;margin-bottom:18px}
.pillars .pillar .ico{width:64px!important;height:64px!important;margin:0 auto 22px!important;border:1px solid #D4AF37;border-radius:50%;display:grid!important;place-items:center;box-shadow:none!important;background:#d4af370d;color:#D4AF37;overflow:visible!important}
.pillars .pillar .ico svg{width:28px;height:28px}
.pillars .pillar h3{color:#F2F5FA!important;font-size:.82rem!important;letter-spacing:.16em!important;text-transform:uppercase;margin:0 0 12px!important}
.pillars .pillar p{color:#A9BAD4!important;font-size:.9rem!important;line-height:1.7;max-width:28ch;margin:0 auto!important}
.pillars .pillar:hover .ico{background:#d4af371f;box-shadow:none!important}
@media(max-width:900px){.pillars .pillar:nth-child(3){border-left:0!important}.pillars .pillar-grid{row-gap:44px!important}}
@media(max-width:520px){.pillars .pillar{border-left:0!important}}
.pillars .pillar::before{position:static!important;width:auto!important;height:auto!important;background:none!important;left:auto!important;top:auto!important}.pillars .pillar::after{display:none!important}
/* Departments: photo on top, no circle frame, no service list */
.dept{padding:0!important;overflow:hidden;display:flex;flex-direction:column}
.dept .dph{aspect-ratio:4/5;background:#0B1D33;overflow:hidden;margin:0}
.dept .dph img{width:100%;height:100%;object-fit:cover;object-position:center 15%;display:block}
.dept .dph-empty{display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#16284A,#0A1327 75%)}
.dept .dph-empty span{font-family:var(--display);font-size:3rem;color:#D4AF37;letter-spacing:.06em}
.dept .dno{margin:1.2rem 1.25rem .35rem!important}
.dept h3{margin:0 1.25rem .5rem!important}
.dept .dhead{display:block!important;margin:0 1.25rem 1.35rem!important;padding:0!important;border:0!important}
/* Philosophy: portrait of Mr Oun-Neua Phimmasone */
.phil-portrait{margin:0 0 30px;max-width:230px}
.phil-portrait img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:center 20%;padding:6px;background:#0B1D33;border:1px solid #D4AF37;box-shadow:0 18px 40px #0000004d}
.phil-portrait figcaption{margin-top:12px;font-family:var(--accentface);font-size:.74rem;letter-spacing:.14em;color:#dcca9d}
@media(max-width:760px){.phil-portrait{max-width:200px}}
/* Philosophy option A: portrait sits beside the quote it belongs to */
.philosophy-quote{display:grid;grid-template-columns:clamp(150px,15vw,200px) 1fr;column-gap:clamp(24px,3vw,44px);align-items:start}
.philosophy-quote>*{grid-column:2}
.philosophy-quote>.phil-portrait{grid-column:1;grid-row:1 / span 6;margin:8px 0 0;max-width:none;position:sticky;top:120px}
@media(max-width:760px){.philosophy-quote{grid-template-columns:1fr}.philosophy-quote>*,.philosophy-quote>.phil-portrait{grid-column:1;grid-row:auto;position:static}.philosophy-quote>.phil-portrait{max-width:180px;margin:0 0 22px}}
/* Philosophy: centred memorial composition */
.philosophy-grid{grid-template-columns:1fr!important;justify-items:center;text-align:center;row-gap:0!important;gap:0!important}
.philosophy-intro{display:contents}
.philosophy-intro>.kicker{order:1;margin-inline:auto}
.philosophy h2{order:2;max-width:22ch;margin:0 auto 20px!important}
.philosophy-intro>p:not(.kicker):not(.principles){order:3;max-width:62ch;margin:0 auto}
.philosophy-quote{order:4;width:100%;max-width:1040px;margin-top:clamp(40px,5vw,64px);text-align:left;border:1px solid #d4af3740!important;border-top:2px solid #D4AF37!important;background:linear-gradient(160deg,#10243f,#0b1d33);box-shadow:0 30px 60px #00000040;padding:clamp(28px,4vw,52px)!important;grid-template-columns:clamp(180px,22vw,260px) 1fr!important;column-gap:clamp(28px,4vw,56px)!important;align-items:center!important}
.philosophy-quote>.phil-portrait{position:static!important;margin:0!important;grid-row:1 / span 5!important;align-self:center}
.philosophy-quote>.phil-portrait img{padding:8px;border-color:#d4af37b3}
.philosophy-quote .quote-mark{font-size:64px;margin-bottom:4px}
.philosophy blockquote{font-size:clamp(1.05rem,1.55vw,1.4rem)!important;line-height:1.9!important}
.philosophy-quote .quote-source{margin:18px 0 18px!important}
.philosophy-quote .philosophy-note{margin:0;max-width:none}
.philosophy-intro .principles{order:5;border-top:0!important;padding-top:0!important;margin:clamp(30px,4vw,44px) auto 0!important;letter-spacing:.18em!important;text-transform:uppercase;font-size:.72rem!important}
@media(max-width:760px){.philosophy-quote{grid-template-columns:1fr!important;text-align:center}.philosophy-quote>.phil-portrait{grid-row:auto!important;max-width:200px!important;margin:0 auto 24px!important}.philosophy-quote .philosophy-note{text-align:center}}
.philosophy-intro>p:not(.kicker):not(.principles){max-width:none!important}
/* ---- 5-point brief ---- */
.scard .for{margin-top:.9rem;padding-top:.8rem;border-top:1px solid var(--line);font-size:.86rem;color:var(--text-secondary)}
.scard .for span{display:block;font-family:var(--accentface);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-text);margin-bottom:.25rem}
.dept-group+.dept-group{margin-top:clamp(28px,4vw,44px)}
.dg-label{font-family:var(--accentface);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#7A5E15;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #dcd7cc}
.dept-group .depts{grid-template-columns:repeat(5,1fr)}
@media(max-width:1100px){.dept-group .depts{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.dept-group .depts{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.dept-group .depts{grid-template-columns:1fr}}
.plat-grid.plat-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.plat-grid.plat-3{grid-template-columns:1fr}}
.plat .status{display:inline-block;border:1px solid #D4AF37;color:#D4AF37;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;padding:3px 9px;border-radius:2px}
.plat p b{color:var(--text-primary);font-weight:600;margin-right:.25rem}
.plat-note{margin-top:22px;font-size:.84rem;color:var(--text-secondary)}
.about-more{margin-top:8px}
.about-more>summary{list-style:none;cursor:pointer;display:block;width:max-content;max-width:100%;margin:0 auto 8px;padding:13px 26px;border:1px solid #b8963e;color:#7A5E15;font-size:.86rem;letter-spacing:.06em;text-align:center}
.about-more>summary::-webkit-details-marker{display:none}
.about-more>summary::after{content:" +";}
.about-more[open]>summary::after{content:" −"}
.about-more>summary:hover{background:#b8963e14}
.about-more[open]>summary{margin-bottom:clamp(28px,4vw,44px)}
.formhelp{font-size:.8rem;color:var(--text-secondary);margin:.5rem 0 0;line-height:1.6}
.consult select{width:100%;background:transparent;color:inherit;border:1px solid var(--line-strong);padding:.85rem .9rem;font:inherit;border-radius:0}
.consult select option{color:#121A28}
.hero h1{font-size:clamp(2.4rem,4.8vw,4.4rem)!important;max-width:17ch}
.plat-note{text-align:center}
@media(max-width:760px){.hero h1{font-size:clamp(1.95rem,8.2vw,2.5rem)!important;max-width:none}}
/* all five departments on one row, two labelled groups side by side */
.dept-row{display:grid;grid-template-columns:3fr 2fr;gap:clamp(14px,1.6vw,22px);align-items:start}
.dept-row .dept-group+.dept-group{margin-top:0}
.dept-row .dg-label{min-height:3.4em;display:flex;align-items:flex-end;line-height:1.5}
.dept-row .dept-group:first-child .depts{grid-template-columns:repeat(3,1fr)}
.dept-row .dept-group:last-child .depts{grid-template-columns:repeat(2,1fr)}
@media(max-width:1100px){.dept-row{grid-template-columns:1fr}.dept-row .dg-label{min-height:0}.dept-row .dept-group+.dept-group{margin-top:clamp(28px,4vw,44px)}.dept-row .dept-group:last-child .depts{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.dept-row .dept-group .depts{grid-template-columns:1fr 1fr!important}}
@media(max-width:480px){.dept-row .dept-group .depts{grid-template-columns:1fr!important}}
/* one 5-column grid: group labels span their columns, cards share one row */
@media(min-width:1101px){
.dept-row{grid-template-columns:repeat(5,minmax(0,1fr));column-gap:clamp(12px,1.4vw,20px);row-gap:0;align-items:stretch}
.dept-row .dept-group,.dept-row .dept-group .depts{display:contents}
.dept-row .dept-group:first-child .dg-label{grid-column:1 / 4;grid-row:1}
.dept-row .dept-group:last-child .dg-label{grid-column:4 / 6;grid-row:1}
.dept-row .dg-label{min-height:0;align-self:end;margin-bottom:14px}
.dept-row .dept{grid-row:2}
}
.formprivacy{font-size:.8rem;color:var(--text-secondary);margin:.2rem 0 0}
.formprivacy a,.legal a{color:#dcca9d;text-decoration:underline;text-underline-offset:3px}
.formprivacy a:hover,.legal a:hover{color:#D4AF37}
