:root{--blue:#2B78B5;--deep:#0b2d46;--ink:#183244;--muted:#647988;--orange:#FF751F;--pale:#f4f8fb;--border:#dce7ef;--white:#fff;--width:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:'Noto Sans Thai','DM Sans',sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.container{width:min(calc(100% - 48px),var(--width));margin-inline:auto}.skip-link{position:absolute;top:-100px;left:20px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:12px}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.eyebrow,.column-label{font-family:'DM Sans','Noto Sans Thai',sans-serif;letter-spacing:.16em;font-size:12px;font-weight:700}.orange-dot{color:var(--orange)}
.site-header{background:#fff;position:relative;z-index:20;border-bottom:1px solid #e8eef2}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--deep);font-family:'DM Sans',sans-serif;font-weight:700;font-size:19px;letter-spacing:-.03em;white-space:nowrap}.brand-mark{width:35px;height:35px;display:grid;place-items:center;border-radius:9px;background:var(--blue);color:white;font-size:20px}.brand-mark span{color:var(--orange)}.main-nav{display:flex;align-items:center;gap:32px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:14px;color:#536a7a}.main-nav a{position:relative;padding:30px 0}.main-nav a:hover,.main-nav a.active{color:var(--blue)}.main-nav a.active:after{content:"";position:absolute;bottom:21px;left:0;right:0;height:2px;background:var(--orange)}.menu-toggle{display:none;border:0;background:none;color:var(--deep);font-size:28px;cursor:pointer}
.hero{background:linear-gradient(125deg,#0e3854 0%,#0b2d46 56%,#124b70 100%);color:white;overflow:hidden}.hero-grid{min-height:620px;display:grid;grid-template-columns:1.13fr .87fr;gap:70px;align-items:center}.hero-copy{padding:78px 0 61px;position:relative;z-index:2}.hero-eyebrow{display:flex;align-items:center;gap:12px;color:#b4d7ef;margin:0 0 24px}.small-line{width:27px;height:2px;background:var(--orange)}.hero h1{font-size:clamp(38px,4.4vw,63px);line-height:1.28;letter-spacing:-.045em;margin:0 0 22px;font-weight:700}.hero h1 span{color:#89c7ec}.hero-lede{font-size:18px;color:#d2e1ec;line-height:1.9;max-width:590px;margin:0 0 29px}.hero-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:10px 22px;border-radius:6px;font-weight:700;font-size:14px;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button--orange{background:var(--orange);color:#162837}.button--orange:hover{background:#ff9451}.button--ghost{border:1px solid #7296ad;color:white}.button--ghost:hover{background:#ffffff12}.hero-bottom{display:flex;gap:24px;flex-wrap:wrap;margin-top:84px;color:#a6bed0;font-family:'DM Sans',sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.09em}.hero-bottom span+span:before{content:'●';font-size:5px;color:var(--orange);margin-right:23px;vertical-align:middle}.hero-photo-wrap{height:100%;min-height:560px;position:relative;display:flex;align-items:end}.hero-photo-bg{position:absolute;width:86%;height:81%;right:-3%;bottom:0;background:#2b78b5;border-radius:200px 200px 0 0;opacity:.36}.hero-photo{position:relative;width:87%;height:480px;object-fit:cover;object-position:center;filter:saturate(.82);border-radius:200px 200px 0 0;box-shadow:0 0 0 12px #ffffff0d}.photo-caption{position:absolute;bottom:36px;left:-54px;background:#fff;color:var(--ink);font-weight:700;font-size:13px;padding:14px 18px;border-radius:5px;box-shadow:0 14px 35px #00172742}.caption-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--orange);margin-right:7px}
.intro-strip{border-bottom:1px solid var(--border);background:#f8fbfd}.intro-strip__inner{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:67px}.intro-strip p{font-size:13px;font-weight:600;margin:0;color:#4e6a7d}.intro-strip p span{color:var(--orange);margin:0 14px}.intro-strip__number{font-family:'DM Sans',sans-serif;color:#98afbf;font-size:12px;white-space:nowrap}.section{padding:105px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:35px}.section-heading h2,.teaching-copy h2,.about-section h2,.courses-section h2,.contact-section h2{font-size:clamp(32px,3.2vw,45px);line-height:1.35;letter-spacing:-.035em;margin:8px 0 0;color:var(--deep)}.section-kicker{color:var(--blue);margin:0}.section-heading>p{max-width:370px;margin:0;color:var(--muted);font-size:15px}.topics-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border)}.topic-card{padding:26px 23px 22px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:background .2s}.topic-card+ .topic-card{border-left:1px solid var(--border)}.topic-card:hover{background:var(--pale)}.topic-number{font-family:'DM Sans',sans-serif;font-size:12px;color:var(--blue);font-weight:700}.topic-card h3{font-family:'DM Sans',sans-serif;font-size:19px;margin:0 0 8px;color:var(--deep)}.topic-card p{font-size:14px;color:var(--muted);line-height:1.7;margin:0;max-width:200px}.topic-arrow{position:absolute;top:23px;right:23px;color:var(--blue)}
.articles-section{background:var(--pale)}.article-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:25px}.column-label{color:#8499a8;margin:0 0 15px}.featured-column,.latest-column{display:flex;flex-direction:column}.latest-column{gap:15px}.latest-column .column-label{margin-bottom:0}.article-card{background:#fff;border:1px solid var(--border);min-height:210px;display:flex;flex-direction:column;justify-content:space-between;transition:box-shadow .2s,transform .2s}.article-card:hover{box-shadow:0 14px 35px #0c355612;transform:translateY(-2px)}.article-card__top{min-height:80px;padding:18px 23px;display:flex;justify-content:space-between;align-items:start;background:#e6f2f9}.article-card__top .eyebrow{color:var(--blue)}.article-card__mark{font-family:'DM Sans',sans-serif;font-size:28px;line-height:1;font-weight:700;color:#b6d7ea}.article-card__body{padding:22px 24px 25px}.article-card__meta{color:#7c919e!important;font-family:'DM Sans','Noto Sans Thai',sans-serif;font-size:12px!important;margin:0 0 11px!important;display:flex;gap:8px}.article-card h3{font-size:20px;line-height:1.5;margin:0 0 10px;color:var(--deep)}.article-card h3 a:hover{color:var(--blue)}.article-card p{font-size:14px;color:var(--muted);margin:0 0 18px}.text-link,.section-link{display:inline-flex;gap:8px;align-items:center;color:var(--blue);font-size:14px;font-weight:700}.text-link:hover,.section-link:hover{text-decoration:underline}.article-card--featured{height:100%}.article-card--featured .article-card__top{min-height:210px;padding:24px 28px;background:linear-gradient(135deg,#c7e3f3,#a9d0e7 70%,#86b8d8);position:relative;overflow:hidden}.article-card--featured .article-card__top:after{content:'AI / WORK';position:absolute;right:-20px;bottom:-39px;font:bold 83px 'DM Sans',sans-serif;letter-spacing:-.1em;color:#ffffff60}.article-card--featured .article-card__mark{color:#ffffffab}.article-card--featured .article-card__body{padding:30px}.article-card--featured h3{font-size:26px}.latest-column .article-card{min-height:0;display:grid;grid-template-columns:128px 1fr}.latest-column .article-card__top{min-height:100%;padding:14px;flex-direction:column}.latest-column .article-card__top .eyebrow{font-size:10px;letter-spacing:.07em}.latest-column .article-card__mark{font-size:24px}.latest-column .article-card__body{padding:17px 22px}.latest-column .article-card h3{font-size:16px;margin-bottom:5px}.latest-column .article-card p{display:none}.latest-column .text-link{font-size:12px}.articles-section .section-link{margin-top:28px}
.teaching-section{padding:105px 0;background:#fff}.teaching-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.teaching-copy p:not(.eyebrow){color:var(--muted);max-width:490px;margin:20px 0 28px}.button--blue{background:var(--blue);color:#fff}.button--blue:hover{background:#195f95}.teaching-visual{min-height:365px;background:var(--deep);color:white;padding:24px 29px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.teaching-visual:before{content:"";position:absolute;width:300px;height:300px;border:1px solid #ffffff22;border-radius:50%;right:-40px;top:40px;box-shadow:0 0 0 65px #ffffff07,0 0 0 130px #ffffff04}.teaching-visual__top,.teaching-visual__bottom{position:relative;display:flex;justify-content:space-between;font:700 11px 'DM Sans',sans-serif;letter-spacing:.15em;color:#93b6cb}.teaching-visual__center{position:relative}.teaching-quote{display:block;font-size:clamp(23px,2.3vw,34px);line-height:1.65;font-weight:700;letter-spacing:-.03em}.teaching-visual__bottom{justify-content:start;gap:24px;color:#fdb17d}
.about-section{background:#edf5fa}.about-grid{display:grid;grid-template-columns:.72fr 1fr;gap:120px}.about-copy{max-width:610px}.about-copy p{color:#577081;margin:0 0 17px}.about-copy .about-lead{color:var(--deep);font-size:21px;font-weight:600;line-height:1.65}.about-copy .section-link{margin-top:8px}.courses-section{padding:68px 0;background:#fff;border-top:1px solid var(--border)}.courses-inner{display:flex;justify-content:space-between;align-items:center;gap:50px}.courses-section h2{font-size:30px}.courses-section p:not(.eyebrow){max-width:630px;color:var(--muted);margin:10px 0 0}.button--outline{border:1px solid var(--blue);color:var(--blue);white-space:nowrap}.button--outline:hover{background:var(--blue);color:white}.contact-section{background:var(--deep);padding:77px 0;color:white}.contact-grid{display:grid;grid-template-columns:1fr .8fr;gap:95px}.contact-section .eyebrow{color:#9ec3dc}.contact-section h2{color:#fff}.contact-section p:not(.eyebrow){color:#bbd1de;max-width:480px}.contact-actions{border-top:1px solid #ffffff30}.contact-actions a{display:grid;grid-template-columns:1fr auto 18px;align-items:center;gap:18px;border-bottom:1px solid #ffffff30;padding:21px 0;font-weight:700}.contact-actions a span:nth-child(1){font-size:12px;color:#a9c3d3;font-weight:400}.contact-actions a:hover{color:#ffab76}.site-footer{padding:28px 0;background:#082638;color:#b4c6d2}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.site-footer .brand{color:white;font-size:17px}.site-footer p,.site-footer>a,.footer-inner>a:last-child{font-size:12px}.footer-inner p{margin:0}
@media(max-width:1000px){.main-nav{gap:18px}.hero-grid{gap:30px}.hero-bottom{margin-top:50px}.teaching-grid{gap:45px}.about-grid{gap:60px}.topics-grid{grid-template-columns:repeat(2,1fr)}.topic-card:nth-child(3){border-left:0;border-top:1px solid var(--border)}.topic-card:nth-child(4){border-top:1px solid var(--border)}}
@media(max-width:760px){.container{width:min(calc(100% - 36px),var(--width))}.header-inner{min-height:68px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:68px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;gap:0;padding:10px 18px 20px;box-shadow:0 14px 20px #092d4a16}.main-nav.is-open{display:flex}.main-nav a{padding:11px 5px}.main-nav a.active:after{bottom:7px;right:auto;width:35px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:63px 0 22px}.hero h1{font-size:clamp(34px,8vw,48px)}.hero-lede{font-size:16px}.hero-bottom{margin-top:40px;gap:12px;font-size:10px}.hero-bottom span+span:before{margin-right:12px}.hero-photo-wrap{min-height:0;height:350px;justify-content:center}.hero-photo-bg{width:67%;height:310px;right:7%}.hero-photo{width:72%;height:340px;object-position:center 35%}.photo-caption{left:0;bottom:24px}.intro-strip__number{display:none}.intro-strip__inner{min-height:60px}.intro-strip p{font-size:11px}.intro-strip p span{margin:0 5px}.section,.teaching-section{padding:70px 0}.section-heading{display:block}.section-heading>p{margin-top:13px}.topics-grid{grid-template-columns:repeat(2,1fr)}.topic-card{min-height:180px}.article-layout,.teaching-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.article-card--featured{height:auto}.article-card--featured .article-card__top{min-height:150px}.teaching-visual{min-height:310px}.courses-inner{align-items:start;flex-direction:column;gap:23px}.contact-section{padding:70px 0}.footer-inner{flex-wrap:wrap}.footer-inner p{order:3;width:100%}}
@media(max-width:480px){.brand{font-size:17px}.topics-grid{grid-template-columns:1fr}.topic-card{min-height:140px}.topic-card+.topic-card,.topic-card:nth-child(3),.topic-card:nth-child(4){border-left:0;border-top:1px solid var(--border)}.hero-photo-wrap{height:300px}.hero-photo{height:300px;width:77%}.hero-photo-bg{height:270px;width:72%;right:2%}.photo-caption{font-size:11px;padding:11px}.latest-column .article-card{grid-template-columns:80px 1fr}.latest-column .article-card__body{padding:14px}.latest-column .article-card h3{font-size:15px}.latest-column .article-card__top .eyebrow{font-size:9px;word-break:break-word}.latest-column .article-card__mark{font-size:18px}.contact-actions a{grid-template-columns:1fr 18px}.contact-actions a span:nth-child(1){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.brand-icon{width:44px;height:44px;flex:none;object-fit:cover;object-position:center;border-radius:50%}.site-footer .brand-icon{width:40px;height:40px}.topic-card::after{content:"";position:absolute;right:23px;top:29px;width:20px;height:2px;background:var(--orange);transition:width .2s}.topic-card:hover::after{width:34px}.text-link,.section-link{border-bottom:1px solid currentColor;padding-bottom:2px}.contact-actions a{grid-template-columns:1fr auto;gap:18px}.contact-actions a strong{font-weight:700}.contact-actions a span{font-size:12px;color:#a9c3d3;font-weight:400}.contact-actions a:hover span{color:#ffcfad}
@media(max-width:480px){.contact-actions a{grid-template-columns:1fr auto}.contact-actions a span{display:block!important;text-align:right}.brand-icon{width:40px;height:40px}}

/* Topic and social icon set */
.topic-card{min-height:245px}
.topic-card::after{display:none}
.topic-icon{width:51px;height:51px;display:grid;place-items:center;border:1px solid #c7e2f0;border-radius:14px;background:#eff8fc;color:var(--blue);margin:8px 0 14px}
.topic-icon svg{width:32px;height:32px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.topic-card:hover .topic-icon{border-color:var(--orange);color:var(--orange)}
.contact-actions a{display:flex;align-items:center;gap:17px;padding:17px 0}
.social-icon{width:44px;height:44px;flex:none;display:grid;place-items:center;border:1px solid #8eafc377;border-radius:12px;background:#ffffff0b;color:#fff}
.social-icon svg{width:27px;height:27px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-actions a:hover .social-icon{border-color:var(--orange);color:var(--orange)}
.social-copy{display:flex;flex-direction:column;gap:0}
.social-copy strong{line-height:1.4}
.contact-actions a .social-copy strong{font-size:16px;color:#fff}
.contact-actions a .social-icon{color:#fff}
.contact-actions a:hover .social-icon{color:var(--orange)}
.social-copy small{font-size:12px;color:#a9c3d3;font-weight:400}

/* Article previews with locally hosted illustrations */
.article-card__image{display:block;overflow:hidden;background:#d9eaf4}
.article-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.article-card:hover .article-card__image img{transform:scale(1.03)}
.article-card--featured .article-card__image{height:248px}
.article-card--featured .article-card__body{flex:1}
.article-card__meta{flex-wrap:wrap}
.article-card__meta span:first-child{color:var(--blue);font-weight:700}
.latest-column .article-card{grid-template-columns:155px 1fr}
.latest-column .article-card__image{min-height:180px}
.latest-column .article-card__body{min-width:0}
.latest-column .article-card__meta{font-size:11px!important}

/* Reading and privacy pages */
.reading-container{width:min(calc(100% - 48px),780px);margin-inline:auto}
.article-page-intro{padding:62px 0 58px;background:#f4f8fb}
.back-link{display:inline-flex;color:var(--blue);font-size:14px;font-weight:700;margin-bottom:34px;border-bottom:1px solid currentColor}
.article-page-intro .eyebrow{margin:0 0 13px}
.article-page-intro h1{font-size:clamp(34px,4vw,51px);line-height:1.3;color:var(--deep);margin:0 0 18px;letter-spacing:-.035em}
.article-page-summary{font-size:19px;color:#526b7c;margin:0 0 20px}
.article-byline{font-size:13px;color:#738a99;margin:0}
.article-content{padding-block:44px 85px}
.article-hero-image{margin:0 0 42px}
.article-hero-image img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:5px}
.article-prose{font-size:17px;line-height:1.95;color:#334d5e}
.article-prose p{margin:0 0 18px}
.article-prose .article-intro{font-size:20px;font-weight:600;color:var(--deep)}
.prose-section{margin:35px 0}
.prose-section h2{font-size:25px;line-height:1.5;color:var(--deep);margin:0 0 12px}
.article-closing{background:#edf5fa;padding:22px 25px;border-left:3px solid var(--orange)}
.related-articles{border-top:1px solid var(--border);margin-top:55px;padding-top:27px}
.related-articles h2{font-size:20px;margin:0 0 15px;color:var(--deep)}
.related-articles div{display:flex;flex-direction:column;gap:14px}
.related-articles a,.privacy-prose a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.privacy-note{padding:18px 22px;background:#edf5fa;font-size:15px}
.footer-legal{border-top:1px solid #ffffff22;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:18px;margin-top:22px;font-size:12px}
.footer-legal a{color:#d6eaf4;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.topic-card{min-height:220px}.latest-column .article-card{grid-template-columns:155px 1fr}.article-page-intro{padding:45px 0}.article-content{padding-bottom:65px}}
@media(max-width:480px){.topic-card{min-height:180px}.topic-icon{width:47px;height:47px;margin:7px 0 12px}.latest-column .article-card{grid-template-columns:100px 1fr}.latest-column .article-card__image{min-height:150px}.latest-column .article-card__meta span:nth-child(n+3){display:none}.latest-column .text-link{font-size:12px}.reading-container{width:calc(100% - 36px)}.article-page-summary{font-size:17px}.article-prose{font-size:16px}.article-prose .article-intro{font-size:18px}.prose-section h2{font-size:22px}.contact-actions a .social-icon{display:grid!important}.contact-actions a .social-copy{display:flex!important;text-align:left}}

/* Latest videos */
.videos-section{background:#fff;padding-bottom:22px}
.videos-section + .teaching-section{padding-top:26px}
.videos-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.video-card{border:1px solid var(--border);background:#fff;overflow:hidden;min-width:0}
.video-card__link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.video-card__link:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
.video-card__media{display:block;width:100%;aspect-ratio:16/9;position:relative;background:#0b2d46;overflow:hidden}
.video-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s,filter .25s}
.video-card__link:hover .video-card__media img,.video-card__link:focus-visible .video-card__media img{transform:scale(1.04);filter:brightness(.82)}
.video-card__play-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:44px;display:grid;place-items:center;border-radius:13px;background:#f00;color:#fff;box-shadow:0 8px 25px #03152266;transition:background .2s,transform .2s}
.video-card__link:hover .video-card__play-mark,.video-card__link:focus-visible .video-card__play-mark{background:#c90000;transform:translate(-50%,-50%) scale(1.06)}
.video-card__play-mark svg{width:26px;height:26px;margin-left:2px}
.video-card__copy{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:18px 20px 20px;min-width:0}
.video-card__meta{display:flex;gap:8px;flex-wrap:wrap;color:#778e9d;font-size:12px;margin:0 0 7px}
.video-card__title{display:block;font-size:17px;font-weight:700;line-height:1.5;color:var(--deep);margin:0 0 12px}
.video-card__link:hover .video-card__title,.video-card__link:focus-visible .video-card__title{color:var(--blue)}
.video-card__hint{margin-top:auto;font-size:12px;color:var(--blue);font-weight:700}
.videos-section .section-link{margin-top:27px}
@media(max-width:850px){.videos-layout{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.videos-layout{grid-template-columns:1fr}.video-card__title{font-size:18px}.video-card__play-mark{width:58px;height:40px}.videos-section{padding-bottom:18px}.videos-section + .teaching-section{padding-top:24px}}

/* Learning Space illustration */
.courses-section{padding:76px 0;background:#f8fbfd}
.courses-inner{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:58px;align-items:center}
.courses-copy .button{margin-top:26px}
.courses-visual{display:block;min-width:0;border-radius:24px;box-shadow:0 20px 48px #0b2d461c;transition:transform .25s,box-shadow .25s}
.courses-visual img{width:100%;height:auto;border-radius:24px}
.courses-visual:hover{transform:translateY(-4px);box-shadow:0 26px 55px #0b2d4626}
@media(max-width:760px){.courses-section{padding:64px 0}.courses-inner{grid-template-columns:1fr;gap:32px}.courses-visual{max-width:640px}}

/* About page */
.about-page{padding:86px 0 100px;background:linear-gradient(125deg,#f4f8fb,#fff 78%)}
.about-page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.87fr);gap:clamp(42px,6vw,90px);align-items:center}
.about-page h1{font-size:clamp(43px,4.8vw,65px);line-height:1.3;letter-spacing:-.045em;color:var(--deep);margin:15px 0 25px}
.about-page-copy p:not(.eyebrow){color:#526b7c;max-width:590px;margin:0 0 19px;font-size:17px;line-height:1.9}
.about-page-copy .about-page-lead{color:var(--deep)!important;font-size:23px!important;font-weight:600;line-height:1.6!important;margin-bottom:22px!important}
.about-page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:32px}
.about-page-portrait{position:relative;margin:0;min-width:0;padding:0 16px 16px 0}
.about-page-portrait::before{content:"";position:absolute;inset:18px 0 0 16px;border-radius:260px 260px 10px 10px;background:#c9e4f2}
.about-page-portrait img{position:relative;width:100%;height:clamp(420px,43vw,560px);object-fit:cover;object-position:center 35%;border-radius:260px 260px 10px 10px;box-shadow:0 18px 42px #0b2d461f}
.about-page-portrait figcaption{position:absolute;z-index:1;left:-23px;bottom:42px;background:#fff;color:var(--ink);font-size:13px;font-weight:700;padding:13px 18px;border-radius:5px;box-shadow:0 12px 30px #0b2d4626}
@media(max-width:760px){.about-page{padding:58px 0 74px}.about-page-grid{grid-template-columns:1fr;gap:48px}.about-page h1{font-size:clamp(40px,10vw,54px)}.about-page-portrait{max-width:520px;margin:0 auto}.about-page-portrait img{height:auto;aspect-ratio:4/5}.about-page-portrait figcaption{left:0;bottom:30px}}
@media(max-width:480px){.about-page-copy p:not(.eyebrow){font-size:16px}.about-page-copy .about-page-lead{font-size:20px!important}.about-page-actions{gap:20px}.about-page-portrait figcaption{font-size:11px;padding:10px 12px}}

/* Shared feature sections and action buttons */
.teaching-section{padding-bottom:76px}
.teaching-grid,.courses-inner{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:58px;align-items:center}
.teaching-section h2,.courses-section h2{font-size:clamp(32px,3.2vw,45px)}
.teaching-copy p:not(.eyebrow),.courses-copy p:not(.eyebrow){max-width:500px;color:var(--muted);line-height:1.85;margin:14px 0 0}
.teaching-copy .button,.courses-copy .button{margin-top:26px}
.feature-visual{display:block;width:100%;min-width:0;aspect-ratio:640/420;overflow:hidden;border-radius:24px;box-shadow:0 20px 48px #0b2d461c}
.feature-visual img{width:100%;height:100%;object-fit:cover}
.feature-visual--link{transition:transform .25s,box-shadow .25s}
.feature-visual--link:hover{transform:translateY(-4px);box-shadow:0 26px 55px #0b2d4626}
.button{border:1px solid transparent}
.button--blue{border-color:var(--blue)}
.button--blue:hover{border-color:#195f95}
.button--orange{border-color:var(--orange)}
.button--orange:hover{border-color:#ff9451}
.button--ghost{background:transparent;border-color:#8fb4cc}
.button--ghost:hover{border-color:#d2e4ed;background:#ffffff1c}
@media(max-width:760px){.teaching-grid,.courses-inner{grid-template-columns:1fr;gap:32px}.teaching-section{padding-bottom:64px}}

/* Course entry points */
.course-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:26px}
.course-actions .button{margin-top:0}
.course-actions .button--outline{background:transparent;border-color:var(--blue);color:var(--blue)}
.course-actions .button--outline:hover{background:var(--blue);color:#fff}
.footer-legal-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px}
.footer-legal-links a:hover{color:#fff}
@media(max-width:600px){.course-actions{flex-direction:column;align-items:stretch}.course-actions .button{width:100%}}

/* Articles index */
.articles-page-intro{background:#f4f8fb;padding:68px 0 62px}
.articles-page-intro__inner{display:flex;align-items:end;justify-content:space-between;gap:30px}
.articles-page-intro .eyebrow{margin:0 0 12px}
.articles-page-intro h1{color:var(--deep);font-size:clamp(36px,4.4vw,56px);line-height:1.3;letter-spacing:-.035em;margin:0 0 13px}
.articles-page-intro p:not(.eyebrow){color:#526b7c;font-size:18px;max-width:670px;margin:0}
.articles-count{white-space:nowrap;color:var(--blue);font-size:14px;font-weight:700;background:#e2f1fa;border-radius:999px;padding:8px 17px}
.articles-page-list{padding:34px 0 90px}
.articles-page-note{color:#6b8291;font-size:13px;margin:0 0 28px}
.articles-tools{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:18px 28px;margin:0 0 26px}
.articles-search{display:grid;gap:7px;color:var(--deep);font-size:13px;font-weight:700;min-width:min(100%,285px)}
.articles-search input{width:100%;border:1px solid #c8d8e2;border-radius:5px;padding:10px 13px;color:var(--ink);font:400 14px 'Noto Sans Thai','DM Sans',sans-serif}
.articles-filters{display:flex;flex-wrap:wrap;gap:8px}
.articles-filters button{border:1px solid #c9dce8;background:#fff;color:var(--blue);border-radius:999px;padding:8px 14px;cursor:pointer;font:700 12px 'Noto Sans Thai','DM Sans',sans-serif}
.articles-filters button[aria-pressed="true"]{background:var(--blue);border-color:var(--blue);color:#fff}
.articles-filters button:hover{border-color:var(--blue)}
.articles-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.articles-page-grid .article-card[hidden]{display:none}
.articles-empty{padding:40px 20px;text-align:center;color:var(--muted);background:#f4f8fb;border-radius:6px}
.article-card--index{min-width:0}
.article-card--index .article-card__image{aspect-ratio:16/10}
.article-card--index .article-card__body{display:flex;flex-direction:column;align-items:flex-start;flex:1}
.article-card--index .article-card__body>p:not(.article-card__meta){flex:1}
.article-card--index .text-link{margin-top:auto}
@media(max-width:960px){.articles-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.articles-page-intro{padding:48px 0}.articles-page-intro__inner{display:block}.articles-page-intro p:not(.eyebrow){font-size:16px}.articles-count{display:inline-block;margin-top:22px}.articles-page-list{padding:27px 0 65px}.articles-page-grid{grid-template-columns:1fr}.article-card--index .article-card__image{aspect-ratio:16/9}}

/* Private article drafting workspace */
.write-page{background:#f6f9fb;padding:56px 0 90px}
.write-page-heading{max-width:780px;margin-bottom:38px}
.write-page-heading .eyebrow{margin:0 0 10px}
.write-page-heading h1{font-size:clamp(36px,4vw,52px);line-height:1.3;color:var(--deep);margin:0 0 12px}
.write-page-heading>p:not(.eyebrow){color:#526b7c;font-size:17px;margin:0}
.write-layout{display:grid;grid-template-columns:245px minmax(0,1fr);align-items:start;gap:30px}
.write-sidebar,.write-form,.write-preview{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 35px #103c5b08}
.write-sidebar{padding:24px;position:sticky;top:95px}
.write-sidebar h2{font-size:19px;color:var(--deep);margin:0 0 8px}
.write-sidebar>p{font-size:13px;color:var(--muted);margin:0 0 20px}
.write-sidebar .button{width:100%;padding-inline:12px}
.write-draft-list{margin-top:23px;border-top:1px solid var(--border);padding-top:12px}
.write-draft-list>p{font-size:13px;color:var(--muted)}
.write-draft-item{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--border);padding:7px 0}
.write-draft-item button{background:none;border:0;text-align:left;color:var(--deep);cursor:pointer;font-size:13px;line-height:1.5;padding:5px 0}
.write-draft-item button:first-child{flex:1}
.write-draft-item .write-draft-remove{color:#a7432b;white-space:nowrap}
.write-form{padding:28px 32px 33px}
.write-form-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:21px;margin-bottom:24px;border-bottom:1px solid var(--border)}
.write-form-header span{color:var(--muted);font-size:13px}
.write-fields{display:grid;gap:23px}
.write-fields label{display:grid;gap:8px;color:var(--deep);font-weight:700;font-size:14px}
.write-fields input,.write-fields select,.write-fields textarea{width:100%;border:1px solid #c7d7e1;border-radius:5px;background:#fff;padding:12px 14px;color:var(--ink);font:400 15px/1.7 'Noto Sans Thai','DM Sans',sans-serif}
.write-fields textarea{resize:vertical}
.write-fields input:focus,.write-fields select:focus,.write-fields textarea:focus{outline:2px solid #84c0e4;outline-offset:1px}
.write-field-hint{font-weight:400;font-size:12px;color:var(--muted)}
.write-extra{border-top:1px solid var(--border);padding-top:19px}
.write-extra summary{cursor:pointer;color:var(--blue);font-size:14px;font-weight:700}
.write-extra>div{display:grid;gap:19px;padding-top:21px}
.write-form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.write-message{font-size:13px;color:var(--blue);margin:14px 0 0;min-height:1.5em}
.write-message.is-error{color:#ae4026}
.write-preview{margin-top:34px;padding:32px;max-width:850px;margin-left:auto}
.write-preview h2{color:var(--blue);font-size:17px;margin:0 0 20px;border-bottom:1px solid var(--border);padding-bottom:13px}
.write-preview h3{font-size:30px;line-height:1.4;color:var(--deep);margin:8px 0 13px}
.write-preview h4{font-size:22px;color:var(--deep);margin:32px 0 12px}
.write-preview p{color:#334d5e;line-height:1.85;margin:0 0 14px}
.write-preview .article-closing{margin-top:30px}
@media(max-width:800px){.write-layout{grid-template-columns:1fr}.write-sidebar{position:static}.write-preview{margin-left:0}}
@media(max-width:520px){.write-page{padding:45px 0 65px}.write-form,.write-sidebar,.write-preview{padding:21px}.write-form-header{align-items:start;flex-direction:column}.write-form-actions{flex-direction:column}.write-form-actions .button{width:100%}}

/* Teaching page */
.teaching-page-hero{background:#f3f8fb;padding:84px 0 80px}
.teaching-page-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:70px}
.teaching-page-hero__copy h1{font-size:clamp(38px,4vw,55px);line-height:1.31;letter-spacing:-.04em;color:var(--deep);margin:12px 0 22px}
.teaching-page-hero__copy>p:not(.eyebrow){font-size:17px;line-height:1.9;color:#526b7c;max-width:620px;margin:0}
.teaching-page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px 24px;margin-top:28px}
.teaching-page-hero__visual{margin:0;position:relative}
.teaching-page-hero__visual img{display:block;width:100%;height:auto;aspect-ratio:640/420;object-fit:cover;border-radius:22px;box-shadow:0 22px 50px #103c5b20}
.teaching-page-hero__visual figcaption{position:absolute;left:-19px;bottom:-18px;background:#fff;color:var(--deep);font-size:12px;font-weight:700;padding:11px 16px;border-radius:5px;box-shadow:0 10px 27px #103c5b1e}
.teaching-approach,.teaching-topics{padding:83px 0}
.teaching-page-heading{max-width:750px;margin-bottom:32px}
.teaching-page-heading h2{font-size:clamp(29px,3vw,42px);line-height:1.4;color:var(--deep);letter-spacing:-.03em;margin:8px 0 10px}
.teaching-page-heading>p:not(.eyebrow){color:var(--muted);margin:0}
.teaching-approach-grid,.teaching-topics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.teaching-approach-grid article{border-top:3px solid var(--blue);background:#f4f8fb;padding:27px 26px 30px;min-height:225px}
.teaching-step{font:700 13px 'DM Sans',sans-serif;color:var(--orange)}
.teaching-approach-grid h3,.teaching-topics-grid h3{font-size:20px;line-height:1.5;color:var(--deep);margin:16px 0 9px}
.teaching-approach-grid p,.teaching-topics-grid p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}
.teaching-topics{background:#f7fafc;border-top:1px solid var(--border)}
.teaching-topics-grid article{background:#fff;border:1px solid var(--border);padding:25px 26px 28px;min-height:250px}
.teaching-topic-icon{width:51px;height:51px;display:grid;place-items:center;background:#e7f3fa;border-radius:12px;color:var(--blue)}
.teaching-topic-icon svg{width:35px;height:35px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.teaching-inquiry{background:var(--deep);padding:65px 0 72px;color:#fff}
.teaching-inquiry__grid{display:flex;align-items:center;justify-content:space-between;gap:32px}
.teaching-inquiry .eyebrow{color:#a4c9df}
.teaching-inquiry h2{font-size:clamp(29px,3vw,42px);margin:7px 0 12px;line-height:1.4}
.teaching-inquiry p:not(.eyebrow){color:#c3d8e4;max-width:700px;margin:0;line-height:1.8}
.teaching-inquiry__action{display:flex;flex-direction:column;align-items:center;gap:8px;flex:none}
.teaching-inquiry__action span{font:500 12px 'DM Sans',sans-serif;color:#aac8da}
@media(max-width:900px){.teaching-page-hero__grid{gap:35px}.teaching-approach-grid,.teaching-topics-grid{gap:13px}.teaching-approach-grid article,.teaching-topics-grid article{padding:21px}}
@media(max-width:700px){.teaching-page-hero{padding:57px 0 65px}.teaching-page-hero__grid{grid-template-columns:1fr;gap:38px}.teaching-page-hero__visual{max-width:560px}.teaching-approach,.teaching-topics{padding:64px 0}.teaching-approach-grid,.teaching-topics-grid{grid-template-columns:1fr}.teaching-approach-grid article,.teaching-topics-grid article{min-height:0}.teaching-inquiry__grid{align-items:start;flex-direction:column}.teaching-inquiry__action{align-items:start}}
@media(max-width:480px){.teaching-page-hero__copy>p:not(.eyebrow){font-size:16px}.teaching-page-actions{align-items:stretch;flex-direction:column}.teaching-page-actions .button{width:100%}.teaching-page-hero__visual figcaption{left:0;font-size:10px;padding:9px 11px}}

/* Teaching experience and event gallery */
.teaching-experience{background:#fff;padding:79px 0 87px}
.teaching-experience-list{display:grid;gap:24px}
.teaching-event-card{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);background:#fff;border:1px solid var(--border);box-shadow:0 14px 38px #103c5b0b;overflow:hidden}
.teaching-event-card__image{display:block;min-height:360px;overflow:hidden;background:#e7f0f5}
.teaching-event-card__image img{width:100%;height:100%;min-height:360px;object-fit:cover;transition:transform .3s}
.teaching-event-card__image:hover img{transform:scale(1.025)}
.teaching-event-card__copy{display:flex;flex-direction:column;align-items:start;padding:39px 40px}
.teaching-event-card__copy .eyebrow{font-size:11px;letter-spacing:.07em}
.teaching-event-card__copy h3{font-size:clamp(25px,2.6vw,35px);line-height:1.42;color:var(--deep);letter-spacing:-.025em;margin:13px 0 16px}
.teaching-event-card__copy h3 a:hover{color:var(--blue)}
.teaching-event-card__copy>p:not(.eyebrow){font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 18px}
.teaching-event-card__meta{display:flex;flex-wrap:wrap;gap:8px;color:#668092;font-size:13px;margin-top:auto;margin-bottom:25px}
.teaching-detail-intro{background:#f3f8fb;padding:58px 0 64px}
.teaching-detail-intro .container{max-width:970px}
.teaching-detail-intro .back-link{margin-bottom:30px}
.teaching-detail-intro .eyebrow{margin:0 0 11px}
.teaching-detail-intro h1{font-size:clamp(36px,4vw,53px);line-height:1.33;color:var(--deep);letter-spacing:-.035em;margin:0 0 17px}
.teaching-detail-intro p:not(.eyebrow){font-size:18px;line-height:1.8;color:#526b7c;max-width:780px;margin:0}
.teaching-detail-content{padding-top:43px;padding-bottom:88px}
.teaching-detail-cover{margin:0}
.teaching-detail-cover img{width:100%;height:auto;max-height:600px;aspect-ratio:1620/920;object-fit:cover;border-radius:7px}
.teaching-detail-cover figcaption{font-size:12px;color:#718999;margin-top:10px}
.teaching-detail-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:60px;padding:54px 0 62px;border-bottom:1px solid var(--border)}
.teaching-detail-overview h2{font-size:clamp(28px,3vw,38px);color:var(--deep);margin:8px 0 18px}
.teaching-detail-overview p:not(.eyebrow){color:var(--muted);margin:0 0 16px}
.teaching-detail-topics{display:flex;flex-wrap:wrap;gap:9px}
.teaching-detail-topics span{background:#e8f3fa;color:var(--blue);font-size:13px;font-weight:700;padding:8px 14px;border-radius:99px}
.teaching-detail-overview dl{display:grid;grid-template-columns:1fr 1fr;gap:22px 25px;margin:0;background:#f5f9fb;padding:27px}
.teaching-detail-overview dt{color:#738a99;font-size:12px;margin-bottom:5px}
.teaching-detail-overview dd{margin:0;color:var(--deep);font-size:14px;font-weight:700;line-height:1.55}
.teaching-gallery{padding-top:61px}
.teaching-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.teaching-gallery-item{margin:0;min-width:0}
.teaching-gallery-item a{display:block;overflow:hidden;border-radius:6px;background:#e8f1f6}
.teaching-gallery-item img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .25s}
.teaching-gallery-item a:hover img{transform:scale(1.025)}
.teaching-gallery-item figcaption{font-size:13px;color:#6e8594;margin-top:9px}
@media(max-width:800px){.teaching-event-card{grid-template-columns:1fr}.teaching-event-card__image,.teaching-event-card__image img{min-height:0}.teaching-event-card__image img{aspect-ratio:16/10}.teaching-detail-overview{grid-template-columns:1fr;gap:25px}}
@media(max-width:600px){.teaching-experience{padding:62px 0}.teaching-event-card__copy{padding:25px}.teaching-event-card__copy h3{font-size:25px}.teaching-detail-intro{padding:43px 0 52px}.teaching-detail-intro p:not(.eyebrow){font-size:16px}.teaching-detail-content{padding-top:25px;padding-bottom:65px}.teaching-detail-cover img{aspect-ratio:3/2}.teaching-detail-overview{padding:38px 0 45px}.teaching-detail-overview dl{padding:22px}.teaching-gallery{padding-top:47px}.teaching-gallery-grid{grid-template-columns:1fr;gap:23px}}

/* Videos archive */
.videos-page-intro{background:#f4f8fb;padding:68px 0 62px}
.videos-page-intro__inner{display:flex;align-items:end;justify-content:space-between;gap:30px}
.videos-page-intro .eyebrow{margin:0 0 12px}
.videos-page-intro h1{color:var(--deep);font-size:clamp(36px,4.4vw,56px);line-height:1.3;letter-spacing:-.035em;margin:0 0 13px}
.videos-page-intro p:not(.eyebrow){color:#526b7c;font-size:18px;max-width:700px;margin:0}
.videos-page-youtube{margin-top:25px}
.videos-count{white-space:nowrap;color:var(--blue);font-size:14px;font-weight:700;background:#e2f1fa;border-radius:999px;padding:8px 17px}
.videos-page-list{padding:32px 0 90px}
.videos-page-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;margin-bottom:25px}
.videos-page-toolbar p{color:#6b8291;font-size:13px;margin:0}
.videos-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.videos-pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:44px}
.videos-pagination a{display:grid;place-items:center;min-width:40px;min-height:40px;padding:8px 12px;border:1px solid #c9dce8;border-radius:5px;color:var(--blue);font-size:14px;font-weight:700}
.videos-pagination a:hover,.videos-pagination a[aria-current="page"]{background:var(--blue);border-color:var(--blue);color:#fff}
.videos-pagination__step{padding-inline:18px!important}
@media(max-width:850px){.videos-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.videos-page-intro{padding:48px 0}.videos-page-intro__inner{display:block}.videos-page-intro p:not(.eyebrow){font-size:16px}.videos-count{display:inline-block;margin-top:22px}.videos-page-list{padding:27px 0 65px}.videos-page-grid{grid-template-columns:1fr;gap:18px}.videos-page-toolbar{align-items:flex-start}.videos-pagination{margin-top:32px}}

/* Courses navigation */
/* LINE contact stays within the viewport while the page scrolls. */
.floating-line{position:fixed;right:calc(24px + env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:50;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#06c755;box-shadow:0 6px 22px #06381e33;transition:background .2s,box-shadow .2s}
.floating-line svg{display:block;width:42px;height:42px}
.floating-line:hover{background:#05b34c;box-shadow:0 8px 26px #06381e4d}
.floating-line:focus-visible{outline:3px solid var(--deep);outline-offset:4px}
@media(max-width:700px){.floating-line{width:56px;height:56px;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px))}.floating-line svg{width:39px;height:39px}.site-footer{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.floating-line{transition:none}}

.courses-menu{position:relative}
.courses-menu-toggle{display:inline-flex;align-items:center;gap:9px;padding:30px 0;border:0;background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer}
.courses-menu-toggle:hover,.courses-menu-toggle[aria-expanded="true"]{color:var(--blue)}
.courses-menu-indicator{position:relative;display:inline-block;width:11px;height:11px;flex:none}
.courses-menu-indicator::before,.courses-menu-indicator::after{content:"";position:absolute;background:currentColor;top:50%;left:50%;transform:translate(-50%,-50%)}
.courses-menu-indicator::before{width:11px;height:2px}
.courses-menu-indicator::after{width:2px;height:11px}
.courses-menu-toggle[aria-expanded="true"] .courses-menu-indicator::after{display:none}
.courses-submenu{position:absolute;z-index:30;top:100%;left:-18px;width:225px;padding:8px;background:#fff;border:1px solid var(--border);border-radius:0 0 8px 8px;box-shadow:0 15px 30px #0b2d4626}
.courses-submenu[hidden]{display:none}
.main-nav .courses-submenu a{display:block;padding:11px 13px;border-radius:4px;color:var(--deep);font-family:'Noto Sans Thai','DM Sans',sans-serif;font-size:13px;font-weight:600;white-space:nowrap}
.main-nav .courses-submenu a:hover,.main-nav .courses-submenu a:focus-visible{background:var(--pale);color:var(--blue)}
@media(max-width:760px){.courses-menu{width:100%}.courses-menu-toggle{width:100%;justify-content:space-between;padding:11px 5px;text-align:left}.courses-submenu{position:static;width:calc(100% - 12px);margin:0 0 8px 12px;padding:3px 0 3px 9px;border:0;border-left:2px solid var(--blue);border-radius:0;box-shadow:none}.main-nav .courses-submenu a{padding:10px 12px;font-size:14px}}
