/* Base: reuse shared navigation, footer and brand tokens. */
.sr-page{font-family:"Noto Sans","Noto Sans Thai",sans-serif;color:var(--ink)}
.sr-page main{line-height:1.75}.sr-page h1,.sr-page h2,.sr-page h3,.sr-page h4,.sr-page p{margin-top:0}.sr-page h2{font-size:clamp(26px,3vw,40px);line-height:1.3;letter-spacing:-.035em;margin-bottom:16px}.sr-page h3{line-height:1.4}.sr-page a:focus-visible,.sr-page button:focus-visible{outline:3px solid #b78000;outline-offset:5px}.sr-skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:12px}.sr-skip:focus{top:12px}.sr-eyebrow{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--brand-blue);margin-bottom:22px}.sr-section{padding:80px 0}.sr-soft{background:var(--soft)}.sr-section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:32px}.sr-section-head>p,.sr-section-head>div>p:not(.sr-eyebrow){color:var(--text);font-size:15px}.sr-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;padding:12px 24px;border-radius:9px;font:600 14px "Noto Sans","Noto Sans Thai",sans-serif;cursor:pointer;transition:background .15s;border:1px solid transparent}.sr-button-outline{background:white;border-color:var(--brand-blue);color:var(--brand-blue)}.sr-button-outline:hover{background:var(--blue-soft)}.sr-button:disabled{cursor:default;color:var(--text);border-color:var(--line)}
/* Hero: an image-independent learning-path graphic. */
.sr-hero{padding:70px 0 0;background:#f3f7fd}.sr-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:75px;align-items:center}.sr-hero h1{font-size:clamp(42px,5.4vw,72px);line-height:1.12;letter-spacing:-.055em;margin:0 0 24px;color:var(--brand-blue)}.sr-hero h1 span{position:relative;box-shadow:inset 0 -9px var(--yellow)}.sr-hero h2{font-size:clamp(20px,2vw,25px);letter-spacing:0}.sr-intro{font-size:16px;color:var(--text);max-width:550px}.sr-text-link{display:inline-flex;align-items:center;gap:25px;min-height:48px;font-size:14px;font-weight:700;color:var(--brand-blue)}.sr-principles{display:flex;gap:44px;padding:35px 0;margin-top:35px;border-top:1px solid #dde6f2;font-size:12px;font-weight:600}.sr-principles span:before{content:'✓';color:var(--brand-blue);margin-right:10px}.sr-demo-notice{padding:14px 18px;border:1px solid #e8dfbf;border-radius:8px;background:#fffaf0;color:#685323;font-size:12px;margin:25px 0 0}#results-status:empty{display:none}
/* Uploaded hero artwork: keep text on its open left side. */
.sr-hero{padding:0;background:#f3f7fd}
.sr-hero-grid{width:100%;max-width:none;display:block;min-height:500px;padding:48px max(4%,calc((100% - 1220px)/2));background:url('assets/images/student-results-banner.png') center center/cover no-repeat}
.sr-hero-grid>div{max-width:390px}
.sr-hero h1{font-size:clamp(42px,4.1vw,59px)}
.sr-hero h2{font-size:21px;line-height:1.6}
.sr-intro{font-size:14px;line-height:1.85}
.sr-principles{margin-top:0;border-top:0;padding:25px 0}
/* Reusable result cards */
.sr-featured-grid,.sr-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sr-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:white;box-shadow:var(--shadow-card-subtle)}.sr-photo{aspect-ratio:1.9;position:relative;background:#eaf0fa url("assets/images/student-card-background.png") center/cover no-repeat;display:grid;place-items:center;overflow:hidden}.sr-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:1}.sr-card-body{padding:24px}.sr-card h3{font-size:20px;margin:8px 0}.sr-demo-label{font-size:9px;letter-spacing:.08em;color:var(--text)}.sr-score{font-size:32px;font-weight:800;letter-spacing:-.04em;color:var(--brand-blue);line-height:1.35;margin-bottom:14px}.sr-badge{display:inline-block;font-size:10px;font-weight:700;padding:5px 10px;background:#fff3cd;color:#725408;border-radius:5px}.sr-improvement{font-size:13px;font-weight:800;color:var(--brand-blue);margin:14px 0 6px}.sr-meta{font-size:12px;color:var(--text);margin:12px 0 0}.sr-skills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;border-top:1px solid var(--line);padding-top:16px;margin:20px 0 0}.sr-skills:empty{display:none}.sr-skills dt{text-transform:capitalize;font-size:9px}.sr-skills dd{margin:4px 0 0;font-size:16px;font-weight:700}.sr-gallery-action{text-align:center;margin-top:32px}.sr-gallery-action p{font-size:12px;margin:12px 0 0}
/* Featured results: native swipe, keyboard scrolling and desktop controls. */
#featured-results{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:4px 0 18px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9aafd6 #edf3ff}
#featured-results>.sr-card{flex:0 0 calc((100% - 48px)/3);min-width:0;scroll-snap-align:start}
#featured-results:focus-visible{outline:3px solid #b78000;outline-offset:5px}
.sr-featured-controls{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin:-8px 0 20px}
.sr-featured-controls>span{font-size:12px;color:var(--text);margin-right:8px}
.sr-scroll-button{width:44px;height:44px;border:1px solid #cbd7ed;border-radius:50%;background:white;color:var(--brand-blue);font-size:22px;cursor:pointer}
.sr-scroll-button:disabled{opacity:.35;cursor:default}
@media(max-width:980px){#featured-results>.sr-card{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:620px){#featured-results{gap:16px}#featured-results>.sr-card{flex-basis:92%}}
/* Course identity stays compact beside the course name. */
.sr-student-quote{margin:10px 0 0;padding:0;color:var(--ink);font-size:13px;line-height:1.85}
.sr-course-copy{min-width:0;flex:1;text-align:left}
.sr-course-logos{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;flex:0 1 52%;margin-left:auto;min-width:0}
.sr-course-logos .sr-course-logo{width:clamp(56px,5.6vw,80px);height:auto;aspect-ratio:1;flex:0 1 80px;max-width:100%}
.sr-course-heading{margin:0 0 5px;font-size:11px;font-weight:500;color:var(--text);line-height:1.5}
.sr-card-with-course-logo .sr-course-copy .sr-meta{font-size:15px;font-weight:700;color:var(--brand-blue)}
.sr-card-with-course-logo .sr-card-summary{display:grid;grid-template-columns:minmax(74px,.7fr) minmax(0,1.6fr);gap:18px;align-items:start}
.sr-card-with-course-logo .sr-card-identity h3{margin-top:0}
.sr-card-with-course-logo .sr-card-identity .sr-score{font-size:44px;margin-bottom:0}
.sr-card-with-course-logo .sr-card-outcome{padding-top:3px;min-width:0;overflow-wrap:anywhere}
.sr-card-with-course-logo .sr-card-outcome .sr-improvement{margin-top:9px;line-height:1.65}
.sr-card-with-course-logo .sr-card-outcome .sr-meta{margin-top:8px}
.sr-card-with-course-logo .sr-card-course{justify-content:flex-start;padding-top:14px;border-top:1px solid var(--line);margin-top:20px}
.sr-card-course{display:flex;align-items:center;gap:14px;margin-top:14px;min-width:0}
.sr-card-course .sr-meta{margin:0;overflow-wrap:anywhere}
.sr-course-logo{width:80px;height:80px;object-fit:contain;flex:0 0 80px}
/* Transparent portraits sit above the shared background without cropping heads. */
.sr-photo img{width:100%;height:var(--student-image-height,150%);object-fit:contain;object-position:center top;inset:8px 0 auto;padding:0}
.sr-card-with-course-logo.sr-card-progression .sr-card-summary{grid-template-columns:minmax(110px,1fr) minmax(0,1.5fr);gap:14px}
.sr-card-with-course-logo.sr-card-progression .sr-card-identity .sr-score{font-size:24px;white-space:nowrap;letter-spacing:-.05em}
/* Journey and process */
.sr-journey{background:#082964;color:white}.sr-journey .sr-eyebrow{color:#ffcf45}.sr-journey-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;margin-top:45px}.sr-journey-grid h3{font-size:34px}.sr-journey-note{color:#d4e1f6;font-size:13px}.sr-journey .sr-skills{border-color:#3d5681;max-width:360px}.sr-timeline{list-style:none;margin:0;padding:0 0 0 30px;border-left:1px solid #62789d}.sr-timeline li{position:relative;padding:0 0 28px 10px}.sr-timeline li:last-child{padding-bottom:0}.sr-timeline li:before{content:'';width:11px;height:11px;border-radius:50%;background:var(--yellow);position:absolute;left:-36px;top:8px}.sr-timeline h4{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#c6d7f4;margin:0 0 10px}.sr-timeline p{font-size:16px;margin:2px 0}.sr-timeline li:last-child p{font-size:34px;font-weight:800;color:var(--yellow)}.sr-process{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:0}.sr-process li{border-top:1px solid #d9e2f1;padding-top:24px}.sr-process span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #cdd8ef;border-radius:12px;font-weight:700;color:var(--brand-blue);font-size:13px;margin-bottom:22px}.sr-process h3{font-size:17px}.sr-process p{font-size:14px;color:var(--text)}
/* Teacher and final CTA */
.sr-teacher{display:grid;grid-template-columns:300px 1fr;gap:70px;align-items:center;max-width:1050px}.sr-teacher-image{aspect-ratio:1;overflow:hidden;background:#e7edf8;border-radius:24px}.sr-teacher-image img{width:100%;height:100%;object-fit:cover;object-position:top}.sr-teacher blockquote{margin:24px 0;font-size:clamp(19px,2.1vw,27px);line-height:1.8;max-width:680px}.sr-attribution{font-size:12px;color:var(--text)}.sr-attribution strong{color:var(--ink);font-size:16px}.sr-cta{text-align:center;background:var(--brand-blue);color:white}.sr-cta .sr-eyebrow{color:var(--yellow)}.sr-cta h2{font-size:clamp(30px,4vw,50px)}.sr-cta p:not(.sr-eyebrow){color:#e0e9ff;font-size:16px;margin:24px 0}.sr-cta-actions{display:flex;justify-content:center;gap:14px;margin-top:32px}.sr-button-gold{background:var(--yellow);color:#092867}.sr-button-gold:hover{background:#ffda62}.sr-button-light{color:white;border-color:#8ba4d3}.sr-button-light:hover{background:#163f9e}
.sr-teacher-placeholder{display:grid;place-items:center;height:100%;padding:24px;color:var(--brand-blue)}
/* Responsive and reduced motion */
@media(min-width:1500px){.sr-featured-grid:has(>.sr-card:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:980px){.sr-hero-grid{gap:30px}.sr-principles{gap:22px}.sr-section{padding:60px 0}}
@media(max-width:620px){.sr-hero{padding-top:40px}.sr-hero-grid{grid-template-columns:1fr}.sr-principles{flex-direction:column;gap:12px;margin-top:28px;padding:25px 0}.sr-section{padding:48px 0}.sr-section-head{display:block;margin-bottom:25px}.sr-featured-grid,.sr-gallery-grid,.sr-journey-grid,.sr-process,.sr-teacher{grid-template-columns:1fr}.sr-featured-grid,.sr-gallery-grid{gap:22px}.sr-photo{aspect-ratio:2.2}.sr-card-body{padding:22px}.sr-skills dt{font-size:10px}.sr-teacher-image{max-width:260px;width:100%;margin:auto}.sr-cta-actions{flex-direction:column}.sr-cta-actions a{width:100%}.sr-demo-notice{font-size:11px}.sr-journey-grid{gap:35px}.sr-process{gap:12px}.sr-process li{position:relative;padding-left:60px}.sr-process span{position:absolute;left:0;top:23px}.sr-hero h1{font-size:46px}}
@media(max-width:980px){.sr-hero-grid{min-height:480px;padding-top:36px;padding-bottom:36px;background-position:55% center}.sr-hero-grid>div{max-width:330px;background:rgba(255,255,255,.88);padding:22px;border-radius:16px}.sr-hero h1{font-size:42px}.sr-hero h2{font-size:19px}}
@media(max-width:620px){.sr-hero{padding-top:0}.sr-hero-grid{padding:32px 4% 245px;min-height:0;background-color:#f4f8ff;background-size:auto 225px;background-position:70% bottom}.sr-hero-grid>div{max-width:none;padding:0;background:none;border-radius:0}.sr-hero h1{font-size:46px}.sr-principles{margin-top:0}}
@media(prefers-reduced-motion:reduce){.sr-page{scroll-behavior:auto}.sr-page *{transition:none!important}html:has(.sr-page){scroll-behavior:auto}}
