/* Small diagrams explain relationships; the shared closing frame stays decorative. */
.concept-svg{display:block;width:100%;height:auto;overflow:visible;color:#93a8be}
.concept-svg text{font-family:Inter,Arial,sans-serif;font-size:14px;font-weight:500;fill:#40546c;stroke:none}
.concept-node{fill:#fff;stroke:#ced8e2}
.concept-node.blue{fill:#eef4fb;stroke:#b5cbe5}
.concept-node.green{fill:#ecf5ef;stroke:#afcdb9}
.concept-link{stroke:#90a8bc;stroke-width:1.5}
.control-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1000px;margin:auto;text-align:left}
.control-pair article{border:1px solid #dbe6df;border-radius:10px;background:#f4f9f6;padding:28px}
.control-pair article+article{background:#f8f9fb;border-color:#dce3eb}
.control-pair h3{font-size:21px;color:#213950;margin:0}
.control-pair .concept-svg{max-width:380px;margin:25px auto}
.control-pair ul{padding-left:20px;display:grid;gap:8px;color:#315b41;font-size:16px}
.control-pair p{font-size:16px;line-height:1.75;color:#53657b;max-width:420px}
.program-page .layers3 .concept-svg{margin:22px 0;height:122px}
.program-page .layers3>div:not(.ly-arrow){padding:24px 20px}
.feedback-map{display:grid;grid-template-columns:1fr 1.15fr;gap:56px;align-items:center;border:1px solid #dce4eb;padding:36px;border-radius:12px;background:linear-gradient(125deg,#f7faf8,white 65%);text-align:left}
.feedback-map figure,.review-map figure{margin:0;min-width:0}
.feedback-map figcaption,.review-map figcaption{font-size:14px;line-height:1.6;color:#5b6e82;text-align:center;margin-top:20px}
.feedback-steps{list-style:none;padding:0;margin:0;display:grid;gap:20px}
.feedback-steps li{display:flex;gap:14px;align-items:flex-start}
.feedback-steps li>span{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;font-size:14px;font-weight:600;background:#edf3fa;color:#24466d}
.feedback-steps li:last-child>span{background:#e6f2e9;color:#315b41}
.feedback-steps b{font-size:17px;color:#22374f}
.feedback-steps p{font-size:16px;color:#586b81;line-height:1.65;margin:5px 0 0}
.review-map{display:grid;grid-template-columns:.8fr 1.5fr;gap:44px;align-items:center;text-align:left}
.review-map figure{padding:26px;border-radius:10px;background:#f5f8fa;border:1px solid #dfe6ed}
.methodology-page .review-map .cadence{grid-template-columns:1fr 1fr}
.methodology-page .review-map .cadence>div{padding:22px;border-top:2px solid #a6bfad}
.methodology-page .review-map .cadence p{font-size:15px;line-height:1.65}
/* The path connects summaries only. The original student evidence stays intact. */
.results-page .case-arc{gap:24px;position:relative}
.results-page .case-arc>div{position:relative}
.results-page .case-arc>div+div:before{content:'→';position:absolute;left:-23px;top:30px;color:#8da2b7;font-size:20px}
.results-page .case-arc>div>span{display:flex;align-items:center;gap:10px;color:#375575}
.arc-step{display:inline-grid;place-items:center;font-style:normal;width:30px;height:30px;flex-shrink:0;background:#fff;border:1px solid #cdd9e6;border-radius:50%;font-size:14px}
.results-page .case-arc .win{background:#edf6f0;border-color:#d0e3d6}
.results-page .case-arc .win :is(p,span){color:#315b41}
.results-page .case-arc .win .arc-step{border-color:#b5d2be;color:#315b41}
/* A quiet frame along the left, bottom and right; open space around the message. */
.section.final.concept-closing{position:relative;isolation:isolate;overflow:hidden;padding:110px 0 150px;background:#f7faf8;border-top:1px solid #e2e9e4;border-bottom:1px solid #e2e9e4;color:#1e344b}
.final.concept-closing .closing-content{position:relative;z-index:2;max-width:740px;text-align:center}
.final.concept-closing h2{color:#20374d;font-size:clamp(30px,3.2vw,44px);line-height:1.18;letter-spacing:-.035em;max-width:670px;margin:0 auto}
.final.concept-closing p{color:#53677a;font-size:17px;line-height:1.8;max-width:570px;margin:22px auto 0}
.final.concept-closing .cta-row{justify-content:center;margin-top:28px}
.final.concept-closing .btn-primary{background:#173d67;border-color:#173d67;color:white;box-shadow:none}
.final.concept-closing .btn-primary:hover{background:#0f2d50}
.final.concept-closing .micro{font-size:14px;color:#5a6d7d;margin-top:18px}
.final.concept-closing .closing-note{font-size:12px;color:#687d8b;margin-top:7px}
.closing-frame{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent)}
.frame-motif{position:absolute;width:300px;opacity:.33;transform:rotate(-7deg)}
.frame-left{left:-25px;top:80px}
.frame-right{right:-20px;top:85px;transform:rotate(8deg);width:285px}
.frame-bottom{width:330px;left:calc(50% - 165px);bottom:-21px;opacity:.21;transform:rotate(0deg)}
.frame-track{position:absolute;left:9%;right:9%;height:160px;bottom:40px;border:1px dashed #abc7b7;border-top:0;border-radius:0 0 85px 85px;opacity:.28}
.closing-frame:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 37% 55% at 50% 35%,#f7faf8 65%,transparent 100%)}
body>footer{background:#f7faf8;border-top:0}
@media(max-width:1100px){.frame-left{left:-115px}.frame-right{right:-120px}.review-map{gap:25px}.feedback-map{gap:30px;padding:28px}}
@media(max-width:800px){.feedback-map,.review-map{grid-template-columns:1fr}.feedback-map figure{max-width:420px;margin:0 auto}.review-map figure{max-width:440px;margin:0 auto;width:100%}.frame-motif{opacity:.2}.frame-left{left:-170px;top:190px}.frame-right{right:-175px;top:180px}.closing-frame:after{background:radial-gradient(ellipse 46% 52% at 50% 35%,#f7faf8 65%,transparent 100%)}.results-page .case-arc>div+div:before{content:'↓';top:-27px;left:calc(50% - 6px)}}
@media(max-width:620px){.control-pair{grid-template-columns:1fr;gap:18px}.control-pair article{padding:24px}.feedback-map{padding:24px 20px;gap:30px}.feedback-steps{gap:21px}.methodology-page .review-map .cadence{grid-template-columns:1fr}.section.final.concept-closing{padding:64px 0 130px}.final.concept-closing p{font-size:16px}.frame-left{top:auto;bottom:45px;left:-150px}.frame-right{top:auto;bottom:30px;right:-160px}.frame-bottom{width:240px;left:calc(50% - 120px);bottom:-8px}.frame-track{bottom:30px;height:80px}.closing-frame:after{background:linear-gradient(#f7faf8 35%,transparent 85%)}.final.concept-closing .closing-note{font-size:12px}}
.program-page .layers3 .concept-svg text{font-size:16px}
@media(max-width:620px){.frame-left{bottom:-15px;opacity:.18}.frame-right{bottom:-25px;opacity:.18}.frame-bottom{opacity:.18}.closing-frame:after{background:linear-gradient(#f7faf8 48%,transparent 90%)}}
/* The graphic frame now continues behind the footer as one uninterrupted surface. */
.closing-surface{position:relative;isolation:isolate;overflow:hidden;background:#f7faf8;border-top:1px solid #e2e9e4}
.closing-surface .section.final.concept-closing{isolation:auto;overflow:visible;background:transparent;border:0;padding:155px 0 205px}
.closing-surface .closing-frame{mask-image:linear-gradient(to bottom,#000 0%,#000 65%,transparent 100%)}
.closing-surface .frame-motif{width:310px;opacity:.35}
.closing-surface .frame-left{left:1%;top:75px;bottom:auto;transform:rotate(-8deg)}
.closing-surface .frame-right{right:1%;top:60px;bottom:auto;transform:rotate(8deg)}
.closing-surface .frame-left-middle{left:3%;top:310px;transform:rotate(5deg);opacity:.29}
.closing-surface .frame-right-middle{right:2%;top:290px;transform:rotate(-6deg);width:270px;opacity:.28}
.closing-surface .frame-left-low{left:9%;top:590px;transform:rotate(-5deg);opacity:.24}
.closing-surface .frame-right-low{right:8%;top:600px;transform:rotate(6deg);opacity:.24}
.closing-surface .frame-bottom{left:calc(50% - 145px);width:290px;top:600px;bottom:auto;opacity:.2;transform:none}
.closing-surface .frame-track{left:7%;right:7%;top:230px;bottom:auto;height:470px;border-radius:0 0 150px 150px;opacity:.22}
.closing-surface .closing-frame:after{background:radial-gradient(ellipse 34% 50% at 50% 24%,#f7faf8 63%,transparent 100%)}
.closing-surface>footer{position:relative;z-index:1;background:transparent;border:0;padding-top:52px}
.closing-surface>footer .top{border-bottom:0;padding-bottom:12px}
@media(min-width:1600px){.closing-surface .frame-left,.closing-surface .frame-left-middle{left:calc(50% - 700px)}.closing-surface .frame-right,.closing-surface .frame-right-middle{right:calc(50% - 700px)}}
@media(max-width:1100px){.closing-surface .frame-left,.closing-surface .frame-left-middle{left:-100px}.closing-surface .frame-right,.closing-surface .frame-right-middle{right:-100px}.closing-surface .frame-left-low{left:-50px}.closing-surface .frame-right-low{right:-50px}.closing-surface .closing-frame:after{background:radial-gradient(ellipse 43% 49% at 50% 25%,#f7faf8 65%,transparent 100%)}}
@media(max-width:620px){.closing-surface .section.final.concept-closing{padding:90px 0 205px}.closing-surface .frame-motif{width:240px;opacity:.24}.closing-surface .frame-left{left:-158px;top:60px}.closing-surface .frame-right{right:-160px;top:80px}.closing-surface .frame-left-middle{left:-145px;top:290px;opacity:.22}.closing-surface .frame-right-middle{right:-145px;top:305px;width:230px;opacity:.22}.closing-surface .frame-left-low{left:-100px;top:530px}.closing-surface .frame-right-low{right:-120px;top:540px}.closing-surface .frame-bottom{left:calc(50% - 115px);width:230px;top:640px;opacity:.18}.closing-surface .frame-track{top:350px;height:380px;left:8%;right:8%;border-radius:0 0 70px 70px}.closing-surface .closing-frame:after{background:radial-gradient(ellipse 60% 45% at 50% 18%,#f7faf8 55%,transparent 100%)}.closing-surface>footer{padding-top:40px}.closing-surface .closing-frame{mask-image:linear-gradient(to bottom,#000 0%,#000 45%,transparent 88%)}}
/* Keep the frame visible beside the footer and all the way to the page edge. */
.closing-surface .closing-frame{mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)}
.closing-surface .closing-frame:after{background:radial-gradient(ellipse 34% 50% at 50% 24%,#f7faf8 62%,transparent 100%)}
.closing-surface .frame-right{width:280px;top:35px;transform:rotate(5deg)}
.closing-surface .frame-left-middle{width:290px;top:290px;opacity:.3;transform:rotate(-7deg)}
.closing-surface .frame-right-middle{width:270px;top:300px;opacity:.3;transform:rotate(6deg)}
.closing-surface .frame-left-low{width:285px;top:560px;left:1%;opacity:.27;transform:rotate(5deg)}
.closing-surface .frame-right-low{width:310px;top:535px;right:1%;opacity:.27;transform:rotate(-5deg)}
.closing-surface .frame-floor-left{width:330px;left:-95px;bottom:-35px;opacity:.22;transform:rotate(-8deg)}
.closing-surface .frame-floor-right{width:300px;right:0;bottom:-25px;opacity:.25;transform:rotate(7deg)}
.closing-surface>footer{padding-bottom:65px}
.closing-surface>footer .risk,.closing-surface>footer .mt-16{position:relative;background:linear-gradient(90deg,rgba(247,250,248,.92),rgba(247,250,248,.75) 85%,transparent)}
@media(min-width:1600px){.closing-surface .frame-left-low{left:calc(50% - 700px)}.closing-surface .frame-right-low{right:calc(50% - 700px)}.closing-surface .frame-floor-left{left:calc(50% - 890px)}.closing-surface .frame-floor-right{right:calc(50% - 810px)}}
@media(max-width:1100px){.closing-surface .frame-left-low{left:-120px}.closing-surface .frame-right-low{right:-110px}.closing-surface .frame-floor-left{left:-140px}.closing-surface .frame-floor-right{right:-80px}.closing-surface .closing-frame:after{background:radial-gradient(ellipse 43% 49% at 50% 25%,#f7faf8 65%,transparent 100%)}}
@media(max-width:620px){.closing-surface .frame-right{width:240px;right:-155px;top:60px}.closing-surface .frame-left-middle{width:250px;left:-170px;top:285px;opacity:.23}.closing-surface .frame-right-middle{width:240px;right:-160px;top:310px;opacity:.23}.closing-surface .frame-left-low{width:240px;left:-130px;top:525px;opacity:.24}.closing-surface .frame-right-low{width:260px;right:-120px;top:550px;opacity:.24}.closing-surface .frame-floor-left{width:250px;left:-170px;bottom:-25px;opacity:.25}.closing-surface .frame-floor-right{width:270px;right:-145px;bottom:-30px;opacity:.24}.closing-surface .closing-frame:after{background:radial-gradient(ellipse 60% 45% at 50% 18%,#f7faf8 55%,transparent 100%)}.closing-surface>footer{padding-bottom:90px}}
.closing-surface .frame-left-low{top:520px}
@media(max-width:620px){.closing-surface .frame-left-low{top:480px}.closing-surface .frame-right-low{top:490px}}
/* Offset, softly focused concept clusters sit along the sides rather than in rows. */
.closing-surface .frame-motif{filter:blur(.65px);opacity:.23}
.closing-surface .frame-left{width:355px;left:-85px;top:115px;transform:rotate(-17deg);filter:blur(1.3px);opacity:.22}
.closing-surface .frame-right{width:350px;right:-45px;top:20px;transform:rotate(18deg);filter:blur(.6px);opacity:.26}
.closing-surface .frame-left-middle{width:380px;left:-115px;top:335px;transform:rotate(9deg);filter:blur(.5px);opacity:.29}
.closing-surface .frame-right-middle{width:320px;right:-100px;top:285px;transform:rotate(-19deg);filter:blur(1.6px);opacity:.21}
.closing-surface .frame-left-low{width:340px;left:-155px;top:610px;transform:rotate(-16deg);filter:blur(1.3px);opacity:.25}
.closing-surface .frame-right-low{width:355px;right:-55px;top:515px;transform:rotate(12deg);filter:blur(.7px);opacity:.24}
.closing-surface .frame-floor-left{width:370px;left:-155px;bottom:-75px;transform:rotate(15deg);filter:blur(.5px);opacity:.25}
.closing-surface .frame-floor-right{width:350px;right:-135px;bottom:-20px;transform:rotate(-20deg);filter:blur(1.2px);opacity:.24}
@media(min-width:1600px){.closing-surface .frame-left{left:2%}.closing-surface .frame-left-middle{left:-1%}.closing-surface .frame-right{right:1%}.closing-surface .frame-right-middle{right:-2%}.closing-surface .frame-left-low{left:1%}.closing-surface .frame-right-low{right:3%}}
@media(max-width:620px){.closing-surface .frame-left{left:-245px;top:90px}.closing-surface .frame-right{right:-240px;top:10px}.closing-surface .frame-left-middle{left:-270px;top:340px}.closing-surface .frame-right-middle{right:-225px;top:275px}.closing-surface .frame-left-low{left:-240px;top:605px}.closing-surface .frame-right-low{right:-255px;top:500px}.closing-surface .frame-floor-left{left:-260px;bottom:-60px}.closing-surface .frame-floor-right{right:-225px;bottom:40px}}
