:root{--blue:#1769df;--blue2:#2787ee;--ink:#173b62;--muted:#68829c;--line:#dceaf8;--light:#f3f9ff;--sky:#d9efff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Pretendard,'Noto Sans KR','Malgun Gothic',Arial,sans-serif;color:var(--ink);line-height:1.72;background:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.wrap{width:min(1160px,calc(100% - 56px));margin:auto}.demo{background:#eaf5ff;color:#457ba8;font-size:11px;text-align:center;padding:6px 10px}.site-header{height:80px;background:#fffffff5;position:sticky;top:0;z-index:10;border-bottom:1px solid #e8f0f9;backdrop-filter:blur(14px)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{color:#1769df;font-weight:850;font-size:25px;letter-spacing:.085em;line-height:1}.logo small{display:block;font-size:8px;letter-spacing:.26em;font-weight:750;color:#7b9dbd;margin-top:8px}.links{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:700}.links a:hover,.links a[aria-current=page]{color:#1769df}.navcta{background:#1769df;color:#fff!important;border-radius:6px;padding:10px 16px}.menubtn{display:none;border:1px solid var(--line);background:#fff;border-radius:7px;padding:8px 12px;color:var(--ink)}.hero{min-height:610px;display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 88% 44%,#d3edff 0,transparent 33%),linear-gradient(110deg,#fff 3%,#f4faff 55%,#e8f5ff)}.hero .wrap{padding-top:90px;padding-bottom:100px;position:relative;z-index:1}.eyebrow,.kicker{color:#297cde;font-size:12px;font-weight:850;letter-spacing:.17em}.hero h1{font-size:clamp(36px,4.3vw,56px);line-height:1.24;letter-spacing:-.065em;margin:23px 0;color:#163c67}.hero h1 em{font-style:normal;color:#1776e8}.hero p{font-size:17px;max-width:560px;color:#607b96;margin:0}.hero-art{position:absolute;right:6%;top:17%;height:415px;width:min(39vw,510px);border-radius:43% 57% 55% 45%;background:linear-gradient(135deg,#d5f1ff,#9dd4ff 58%,#60aaf0);transform:rotate(-13deg);opacity:.77;box-shadow:inset 15px 20px 58px #fff9}.hero-art:after{content:'';position:absolute;inset:15%;border:1px solid #fffd;border-radius:50%;box-shadow:0 0 0 35px #ffffff38,0 0 0 78px #ffffff22}.hero-note{position:absolute;right:7%;bottom:19%;z-index:2;background:#ffffffe7;border:1px solid white;padding:18px 24px;border-radius:12px;box-shadow:0 18px 55px #4a9bdf22;color:#4d79a4;font-size:11px;letter-spacing:.13em}.hero-note strong{display:block;color:#1769cf;font-size:22px;letter-spacing:0}.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{border:1px solid #bedcf5;padding:12px 24px;border-radius:7px;font-size:14px;font-weight:750;background:#fff;color:#1961af;display:inline-flex;align-items:center;gap:9px;justify-content:center;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.section{padding:103px 0}.section.alt{background:#f5faff}.heading{font-size:clamp(28px,3.2vw,42px);line-height:1.4;letter-spacing:-.055em;margin:15px 0 18px}.lead{font-size:16px;max-width:770px;color:var(--muted);margin:0}.cols{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.features{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:35px}.features>div{border-top:2px solid #c1dff8;padding:20px 0;font-size:16px;font-weight:750}.features small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:5px}.medical-panel{background:linear-gradient(145deg,#e9f6ff,#cbeaff);border-radius:20px;padding:43px;box-shadow:0 22px 50px #a5d6f335}.medical-panel h3{font-size:28px;line-height:1.4;margin:12px 0 24px}.medical-panel ul{padding-left:20px;color:#506f90}.medical-panel li{margin:7px 0}.cta{text-align:center;padding:95px 24px;background:linear-gradient(125deg,#eff8ff,#e2f2ff)}.cta h2{font-size:34px;letter-spacing:-.045em;margin:0 0 9px}.cta p{color:var(--muted)}.cta .btns{justify-content:center}.footer{background:#153a63;color:#d1e3f4;padding:46px 0}.footer .wrap{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer b{color:white;font-size:14px}.footer p{font-size:12px;margin:5px 0}.footer-nav{display:flex;gap:15px;flex-wrap:wrap;font-size:12px}.proof-bar{background:#fff;border-bottom:1px solid #eaf2fb;padding:29px 0 18px}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr)}.proof-grid>div{text-align:center;border-right:1px solid var(--line)}.proof-grid>div:last-child{border-right:0}.proof-grid strong{display:block;font-size:31px;font-weight:600;color:#1769df;line-height:1.3}.proof-grid strong span{font-size:.5em}.proof-grid small{font-size:12px;color:#6d88a3}.proof-note{text-align:center;font-size:11px;color:#8c9fb1;margin:18px 0 0}.division-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.division{background:#fff;border:1px solid var(--line);border-radius:14px;padding:32px 25px;min-height:230px;transition:.2s}.division:hover{box-shadow:0 15px 35px #246cba19;transform:translateY(-3px)}.division span,.record span{font-size:11px;letter-spacing:.14em;font-weight:800;color:#267bd1}.division h2{font-size:24px;margin:19px 0 9px}.division p{font-size:14px;color:var(--muted)}.division b{display:block;font-size:12px;color:#1769df;margin-top:22px}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.record{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px}.record h3{margin:10px 0;font-size:22px}.record p,.note{font-size:13px;color:#7a90a5}.page-hero{background:linear-gradient(125deg,#fff,#e6f5ff);padding:85px 0}.page-hero h1{font-size:clamp(34px,4vw,52px);margin:14px 0;letter-spacing:-.05em}.page-hero p{color:var(--muted);font-size:16px;max-width:780px}.subnav{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 0}.subnav a{padding:8px 13px;border:1px solid #cce4f8;background:#fff;border-radius:6px;color:#2666a4;font-size:13px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:32px 0}.info-card{padding:26px;background:#fff;border:1px solid var(--line);border-radius:12px}.info-card h3{margin:0 0 8px}.info-card p{color:var(--muted);font-size:14px;margin:0}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:13px;border-bottom:1px solid #e3eef7;text-align:left;font-size:14px}.table th{color:#266bb2;background:#f5faff}.client-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.client-grid>*{border:1px solid #dfebf5;border-radius:6px;text-align:center;padding:18px 8px;background:#fff;min-height:72px;display:flex;justify-content:center;align-items:center;font-size:14px;font-weight:700;color:#3a5977}.curriculum-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-top:30px}.curriculum-tabs button{padding:9px 18px;border:1px solid #cadff3;border-radius:7px;background:#fff;color:#296ba5;cursor:pointer}.curriculum-tabs button.active{background:#1769df;color:white;border-color:#1769df}.course-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:25px 0}.course{background:#fff;border:1px solid var(--line);padding:24px;border-radius:10px}.course h3{margin:0 0 8px}.course p{font-size:13px;color:var(--muted)}.course details{border-top:1px solid var(--line);margin-top:16px;padding-top:10px;font-size:13px}.course summary{cursor:pointer;color:#1769df;font-weight:700}.course[hidden]{display:none}.contact-box{border:1px solid var(--line);padding:30px;border-radius:12px;background:#fff}.contact-box p{color:var(--muted)}@media(max-width:850px){.links{gap:12px;font-size:11px}.hero-note{display:none}.hero-art{opacity:.25;right:-10%}.division-grid,.info-grid{grid-template-columns:1fr 1fr}.cols{gap:25px}}@media(max-width:650px){.wrap{width:calc(100% - 36px)}.site-header{height:auto;min-height:72px}.nav{min-height:72px;flex-wrap:wrap}.menubtn{display:block}.links{display:none;flex-direction:column;align-items:stretch;width:100%;gap:0;padding:0 0 15px}.links.open{display:flex}.links a{padding:11px;border-bottom:1px solid #edf4fc}.hero{min-height:510px}.hero .wrap{padding:70px 0 110px}.hero h1{font-size:36px}.hero p{font-size:15px}.section{padding:67px 0}.cols,.record-grid,.course-list,.division-grid,.info-grid{grid-template-columns:1fr}.client-grid{grid-template-columns:repeat(2,1fr)}.proof-grid strong{font-size:24px}.proof-grid small{font-size:10px}.proof-note{padding:0 16px}.footer .wrap{display:block}.footer-nav{margin-top:22px}.page-hero{padding:60px 0}}
/* Pages: About, Service, Program, Clients */
.anchor-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.anchor-links a{padding:9px 16px;background:#fff;border:1px solid var(--line);border-radius:999px;color:#236bb1;font-size:12px;font-weight:700}.editorial-panel{padding:50px;background:linear-gradient(145deg,#eff8ff,#dfefff);border-radius:18px;min-height:330px;display:flex;flex-direction:column;justify-content:center}.editorial-panel span{font-size:11px;font-weight:800;letter-spacing:.18em;color:#277ed4}.editorial-panel p{font-size:29px;font-weight:650;line-height:1.55;margin:20px 0}.editorial-panel small{color:#7994b0}.timeline{border-left:2px solid #cae4fb;margin:36px 0 0 7px}.timeline>div{padding:0 0 36px 25px;position:relative}.timeline>div:before{content:'';height:12px;width:12px;background:#2787ee;border:3px solid #eaf6ff;border-radius:50%;position:absolute;left:-9px;top:2px}.timeline b{color:#1769df}.timeline p{margin:8px 0;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.metric-grid>div{padding:26px 18px;background:#eef7ff;border-radius:10px}.metric-grid strong{font-size:29px;font-weight:600;color:#1769df;display:block;line-height:1.3}.metric-grid strong span{font-size:15px}.metric-grid>div>span{font-size:12px;color:#68829c;display:block;margin-top:8px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:34px}.detail{padding:29px 31px;border-radius:12px;background:#fff;border:1px solid var(--line)}.detail h3{font-size:20px;margin:0 0 10px}.detail p{color:var(--muted);font-size:14px;margin:0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:32px}.step{padding:24px 18px;border:1px solid #cfe5f8;border-radius:12px;background:white}.step b{color:#3184da;font-size:12px}.step h3{font-size:16px;margin:13px 0 7px}.step p{color:var(--muted);font-size:13px;margin:0}.section-link{margin-top:38px;padding:25px 30px;background:#f1f8ff;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:20px}.section-link p{color:var(--muted);font-size:14px}.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:33px}.solution-grid article{border:1px solid var(--line);border-radius:12px;padding:27px;background:#fff}.solution-grid span{color:#2a85df;font-size:12px;font-weight:800}.solution-grid h3{font-size:18px;margin:16px 0 9px}.solution-grid p{font-size:13px;color:var(--muted);margin:0}.curriculum-disclaimer{border-left:3px solid #64a8e8;background:#f3f9ff;padding:13px 18px;color:#64809b;font-size:12px;margin:30px 0}.course-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0 24px}.course-tabs button{background:white;color:#3979b5;border:1px solid #c6def5;border-radius:7px;padding:10px 18px;cursor:pointer;font-size:13px;font-weight:700}.course-tabs button[aria-selected=true]{background:#1769df;color:white;border-color:#1769df}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.course-card{border:1px solid #d9e8f7;padding:25px;border-radius:12px}.course-card .course-tag{display:block;font-size:11px;color:#3b8dd6;letter-spacing:.09em;font-weight:750}.course-card h3{font-size:20px;margin:14px 0 8px}.course-card p{font-size:13px;color:var(--muted)}.course-card details{border-top:1px solid #e2eef8;margin-top:20px;padding-top:15px;font-size:13px}.course-card summary{cursor:pointer;color:#1666af;font-weight:750}.course-card dl{display:grid;grid-template-columns:70px 1fr;gap:6px 10px}.course-card dt{font-weight:750;color:#245d8b}.course-card dd{margin:0;color:#627e97}.client-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end}.industry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d9e4ef;border-left:1px solid #d9e4ef;margin:40px 0 75px}.industry-grid>div{border-right:1px solid #d9e4ef;border-bottom:1px solid #d9e4ef;padding:20px 22px;font-size:13px;color:#486780}.client-heading{border-top:1px solid #d7e5f2;padding-top:25px;margin-bottom:25px}.client-heading h2{margin:0 0 8px;font-size:24px}.client-heading p{font-size:13px;color:var(--muted);max-width:800px}.logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.logo-grid div{min-height:80px;background:#fff;border:1px solid #dce8f3;display:flex;align-items:center;justify-content:center;text-align:center;font-size:17px;letter-spacing:-.035em;font-weight:650;color:#416580;padding:14px}.contact-card{border:1px solid var(--line);padding:36px;border-radius:15px;background:#fff;max-width:760px;margin-top:34px}.contact-card label{font-weight:700;display:block;margin-bottom:8px}.contact-card input,.contact-card textarea,.contact-card select{width:100%;border:1px solid #cedfed;padding:12px;border-radius:6px;background:white;color:var(--ink)}.contact-card .field{margin:0 0 19px}.contact-card .hint{color:var(--muted);font-size:12px}.note{font-size:13px;color:#6d8ca9;margin-top:22px}@media(max-width:900px){.division-grid,.solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.division-grid,.solution-grid,.course-grid,.client-intro,.detail-grid,.steps,.metric-grid{grid-template-columns:1fr}.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-link{display:block}.section-link .btn{margin-top:8px}.editorial-panel{padding:30px}.editorial-panel p{font-size:24px}.contact-card{padding:23px}}
/* Corporate contact details in global footer */
.footer .footer-company{max-width:720px}
.footer .footer-company a{color:#e7f5ff;text-decoration:underline;text-underline-offset:3px}
.footer .footer-company a:hover{color:#fff}
.footer .footer-company p{line-height:1.9}
.footer .footer-legal{margin-top:16px}
.footer .footer-copyright{margin-top:16px;color:#9ebbd6}
.footer-sep{color:#7395b2;margin:0 7px}
.contact-card a[href^="mailto:"],.contact-card a[href^="tel:"]{color:#1769df;text-decoration:underline;text-underline-offset:4px}
@media(max-width:650px){.footer-sep{margin:0 4px}.footer .footer-company p{font-size:11px}}

/* Clients corporate logo gallery — official-source images, text fallbacks */
.client-groups{margin-top:58px;display:grid;gap:44px}
.client-group{border-top:1px solid #dce8f4;padding-top:23px}
.client-group-heading{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:19px}
.client-group-heading h2{font-size:22px;letter-spacing:-.04em;margin:6px 0 0}
.client-group-heading>span{font-size:10px;letter-spacing:.12em;color:#7894ae;font-weight:750}
.client-logo-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.client-logo-tile{border:1px solid #dce9f6;border-radius:9px;background:white;min-height:126px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 12px;gap:9px}
.client-logo-tile img{display:block;object-fit:contain;max-width:83%;width:auto;height:auto;max-height:58px}
.client-logo-tile img[hidden]{display:none}
.client-logo-fallback{font-size:20px;letter-spacing:-.04em;font-weight:750;color:#345c82}
.client-logo-fallback[hidden]{display:none}
.client-logo-tile small{color:#7890a7;font-size:11px;text-align:center}
@media(max-width:740px){.client-logo-row{grid-template-columns:repeat(2,minmax(0,1fr))}.client-logo-tile{min-height:110px}.client-group-heading h2{font-size:19px}}

/* Logo-only client tiles; four columns wrap onto additional rows automatically */
.client-logo-tile small{display:none!important}
.client-logo-tile{gap:0}

/* Compact client gallery: visible on first viewport, consistent grid. */
.clients-page .page-hero{padding:24px 0 17px;background:linear-gradient(125deg,#fff,#f4faff)}
.clients-page .page-hero h1{font-size:clamp(24px,2.5vw,32px);line-height:1.25;margin:5px 0 0}
.clients-page .page-hero p{display:none}
.clients-page > .section{padding:17px 0 38px}
.clients-page .client-intro{display:block;margin:0}
.clients-page .client-intro .kicker{display:none}
.clients-page .client-intro .heading{font-size:15px;font-weight:650;line-height:1.5;letter-spacing:-.015em;color:#6b88a2;margin:0}
.clients-page .client-intro .lead{display:none}
.clients-page .client-groups{margin-top:13px;gap:19px}
.clients-page .client-group{padding-top:12px}
.clients-page .client-group-heading{margin-bottom:9px}
.clients-page .client-group-heading .kicker{font-size:10px;letter-spacing:.12em}
.clients-page .client-group-heading h2{font-size:18px;margin:2px 0 0}
.clients-page .client-logo-row{gap:10px}
.clients-page .client-logo-tile{min-height:93px;padding:10px;border-radius:8px}
.clients-page .client-logo-tile img{max-height:49px;max-width:85%}
.clients-page .client-logo-fallback{font-size:16px}
.clients-page .note{margin-top:16px}
@media(max-width:740px){
.clients-page .page-hero{padding:20px 0 14px}
.clients-page > .section{padding:12px 0 28px}
.clients-page .client-groups{gap:16px}
.clients-page .client-logo-tile{min-height:86px;padding:9px}
.clients-page .client-logo-tile img{max-height:44px}
.clients-page .client-group-heading>span{font-size:9px}
}

/* Client gallery v2: six-column compact layout with individual logo scale */
.clients-page .client-logo-row{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
}
.clients-page .client-logo-tile{
  min-height:76px;
  padding:8px 6px;
  border-radius:8px;
}
.clients-page .client-logo-tile img{
  max-height:38px;
  max-width:82%;
  object-fit:contain;
}
.clients-page .client-logo-tile img[src$="/enex.png"]{
  max-width:67%;
  max-height:28px;
}
.clients-page .client-logo-tile img[src$="/woori-bank.png"]{
  max-width:72%;
  max-height:31px;
}
@media (max-width:1050px){
  .clients-page .client-logo-row{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width:740px){
  .clients-page .client-logo-row{grid-template-columns:repeat(2,minmax(0,1fr));}
  .clients-page .client-logo-tile{min-height:72px;padding:7px;}
  .clients-page .client-logo-tile img{max-height:34px;}
  .clients-page .client-logo-tile img[src$="/enex.png"]{max-height:26px;}
  .clients-page .client-logo-tile img[src$="/woori-bank.png"]{max-height:28px;}
}

/* Optical alignment pass: source logos trimmed of excessive empty margins.
   Target: similar perceived wordmark size within a six-column gallery. */
.clients-page .client-logo-row{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:9px;
}
.clients-page .client-logo-tile{
  height:85px;
  min-height:85px;
  padding:7px 8px;
  overflow:hidden;
  display:flex;
  justify-content:center;
  align-items:center;
}
.clients-page .client-logo-tile img{
  display:block;
  width:85%;
  height:49px;
  max-width:85%;
  max-height:49px;
  object-fit:contain;
  object-position:center;
  flex-shrink:0;
}
.clients-page .client-logo-tile img[src$="/miraeasset.png"]{width:88%;height:51px;max-width:88%;max-height:51px}
.clients-page .client-logo-tile img[src$="/korea-investment.png"]{width:89%;height:57px;max-width:89%;max-height:57px}
.clients-page .client-logo-tile img[src$="/meritz-securities.png"]{width:87%;height:59px;max-width:87%;max-height:59px}
.clients-page .client-logo-tile img[src$="/hana-securities.png"]{width:88%;height:49px;max-width:88%;max-height:49px}
.clients-page .client-logo-tile img[src$="/shinhan-bank.png"]{width:84%;height:48px;max-width:84%;max-height:48px}
.clients-page .client-logo-tile img[src$="/enex.png"]{width:64%;height:30px;max-width:64%;max-height:30px}
.clients-page .client-logo-tile img[src$="/woori-bank.png"]{width:69%;height:35px;max-width:69%;max-height:35px}
.clients-page .client-logo-tile img[src$="/suhyup-bank.png"]{width:80%;height:42px;max-width:80%;max-height:42px}
.clients-page .client-logo-tile img[src$="/korea-post.png"]{width:63%;height:53px;max-width:63%;max-height:53px}
.clients-page .client-logo-tile img[src$="/kdhc.png"]{width:89%;height:44px;max-width:89%;max-height:44px}
@media(max-width:1050px){
  .clients-page .client-logo-row{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:740px){
  .clients-page .client-logo-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .clients-page .client-logo-tile{height:81px;min-height:81px}
}

/* Readable text-only placeholders for customer logos still awaiting image import. */
.clients-page .client-logo-text .client-logo-fallback{
  display:block;
  color:#315b82;
  font-size:clamp(12px,1.05vw,15px);
  font-weight:700;
  line-height:1.25;
  max-width:100%;
  text-align:center;
  overflow-wrap:break-word;
  word-break:keep-all;
  letter-spacing:-.04em;
}
@media(max-width:740px){
.clients-page .client-logo-text .client-logo-fallback{font-size:13px}
}

/* MS Vision 2026 brand refresh — animated upward-growth hero */
:root{--blue:#1455f5;--blue2:#2479ee;--ink:#071c3d;--muted:#526a87;--line:#dce9f6;--light:#f6faff}
.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid #e5edf6}
.logo{display:block;flex:none;width:236px;height:52px;font-size:0!important;line-height:0;letter-spacing:0;background:url("assets/msvision-logo-2026.svg") no-repeat center left;background-size:contain}
.logo small{display:none!important}
.links .navcta{background:#1455f5}
.hero{min-height:645px;background:linear-gradient(106deg,#fff 0%,#f9fcff 37%,#e7f2ff 70%,#cfdef8 100%)}
.hero .wrap{padding-top:96px;padding-bottom:106px}
.hero .wrap h1{max-width:530px;color:#071c3d}
.hero .wrap h1 em{color:#1455f5}
.hero .wrap p{max-width:482px;color:#5b7089}
.hero .eyebrow{color:#1455f5;letter-spacing:.16em}
.hero-art{position:absolute;width:min(73vw,1040px);height:100%;top:0;right:-2%;border-radius:0;background:url("assets/hero-growth-2026.svg") center center/contain no-repeat;transform:none;opacity:1;box-shadow:none;pointer-events:none;z-index:0;overflow:hidden}
.hero-art::after{content:"";position:absolute;inset:auto;width:17px;height:17px;left:12%;top:82%;border:0;border-radius:50%;background:radial-gradient(circle,#fff 0%,#c3f5ff 20%,#26aeff 39%,transparent 73%);box-shadow:0 0 15px 4px #8fe7ff,0 0 32px 11px #48b5ff77;opacity:0;animation:msRiseSpark 5.5s linear infinite}
.hero-note{display:none}
@keyframes msRiseSpark{0%{left:11%;top:82%;opacity:0;transform:scale(.55)}9%{opacity:1}35%{left:40%;top:61%;opacity:.95;transform:scale(1)}67%{left:65%;top:37%;opacity:1;transform:scale(1.3)}92%{opacity:1}100%{left:91%;top:12%;opacity:0;transform:scale(.7)}}
.btn.primary{background:#1455f5;border-color:#1455f5}
.proof-grid strong,.metric-grid strong{color:#1455f5}
@media(max-width:950px){.logo{width:191px;height:45px}.hero-art{right:-14%;width:82vw;opacity:.64}.hero .wrap p{max-width:465px}}
@media(max-width:650px){.logo{width:183px;height:42px}.hero{min-height:550px}.hero .wrap{padding-top:65px;padding-bottom:100px}.hero-art{width:130vw;right:-57%;height:100%;opacity:.27}.hero .wrap h1{max-width:380px}.hero .wrap p{max-width:340px}}
@media(prefers-reduced-motion:reduce){.hero-art::after{animation:none;opacity:.45;left:91%;top:12%}}

/* Approved visual artwork, exact image instead of the earlier geometric redraw.
   Keep the existing copy and routes intact. The animated sparkle is separate. */
.hero{isolation:isolate;background:linear-gradient(107deg,#ffffff 0%,#f9fcff 37%,#eaf3fe 69%,#c4dcfb 100%)}
.hero-art{
  right:0;top:0;width:min(72vw,1090px);height:100%;
  background-image:url("https://d2ol7oe51mr4n9.cloudfront.net/user_3Lffu1cN7VmKUnknZuBWpwtZkfs/13b0bd19-28be-452f-b331-7d93d86c5287.png");
  background-repeat:no-repeat;background-position:center right;background-size:cover;
  border-radius:0;opacity:1;transform:none;filter:none;overflow:hidden;
}
.hero-art::before{content:"";position:absolute;left:-1px;top:0;bottom:0;width:32%;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.65) 37%,transparent 100%);pointer-events:none}
.hero-art::after{
  content:"";position:absolute;width:23px;height:23px;inset:auto;
  background:radial-gradient(circle,#fff 0 8%,#d5faff 14%,#6bdfff 28%,#37acff80 48%,transparent 72%);
  box-shadow:0 0 12px 2px #b1f9ff,0 0 29px 7px #67c8ff77;opacity:0;border-radius:50%;
  animation:msRefinedRise 6.4s linear infinite;pointer-events:none;
}
@keyframes msRefinedRise{
  0%{left:7%;top:84%;transform:scale(.55);opacity:0}
  10%{opacity:.95}
  26%{left:27%;top:70%;transform:scale(.84)}
  47%{left:52%;top:52%;transform:scale(1.07)}
  70%{left:72%;top:35%;transform:scale(1.2)}
  89%{left:86%;top:17%;opacity:1}
  100%{left:93%;top:4%;transform:scale(.75);opacity:0}
}
.hero .wrap{z-index:2}
@media(max-width:1100px){.hero-art{width:72vw;opacity:.78}.hero-art::before{width:36%}}
@media(max-width:730px){.hero-art{right:-34%;width:118vw;opacity:.23;background-size:cover}.hero-art::before{width:44%}}
@media(prefers-reduced-motion:reduce){.hero-art::after{animation:none;opacity:0}}

/* 2026-11-06 precision pass: the owner's exact header artwork, lighter hero scale,
   and a tiny white point tracing the M-to-growth trajectory rather than a large orb. */
.site-header .logo{
  width:254px;height:47px;flex:none;display:block;
  background-image:url("assets/msvision-official-logo.png");
  background-position:left center;background-repeat:no-repeat;background-size:contain;
  font-size:0!important;line-height:0!important;
}
.hero{overflow:hidden}
.hero-art{
  width:min(61vw,900px);height:100%;top:0;right:0;
  background-image:url("assets/msvision-hero-sparkline.svg"),url("assets/msvision-growth-original.png");
  background-size:contain,contain;
  background-position:center right,center right;
  background-repeat:no-repeat,no-repeat;
  opacity:1;
}
.hero-art::after{content:none!important;animation:none!important;display:none!important}
.hero-art::before{width:26%;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.44) 30%,transparent 100%)}
@media(max-width:1100px){.hero-art{width:65vw;right:-2%;opacity:.94}}
@media(max-width:730px){
  .site-header .logo{width:190px;height:42px}
  .hero-art{right:-38%;width:115vw;opacity:.3}
  .hero-art::before{width:35%}
}
@media(prefers-reduced-motion:reduce){.hero-art{background-image:url("assets/msvision-growth-original.png");background-size:contain}}

/* CEO introduction: supplied keynote visual */
.ceo-keynote-photo{margin:0;align-self:center;overflow:hidden;border-radius:18px;background:#edf4fc;border:1px solid #d9e6f6;box-shadow:0 16px 38px rgba(8,36,78,.11)}
.ceo-keynote-photo img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center}
.ceo-keynote-photo figcaption{font-size:12px;color:#61728a;padding:10px 16px 13px;line-height:1.5;background:#fff}
@media(max-width:750px){.ceo-keynote-photo{margin-top:16px;border-radius:14px}}

/* Seamless hero blend (2026-11-08)
   The source image is taller than its drawing box, so its pale left edge previously
   appeared as a hard vertical seam. Mask the actual composite art rather than
   layering a white rectangular gradient on top of it. */
.hero{
  background:linear-gradient(108deg,#f9fbff 0%,#f8fbff 34%,#edf5ff 72%,#d2e6ff 100%);
}
.hero-art{
  -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.05) 12%,rgba(0,0,0,.48) 28%,#000 48%);
  mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.05) 12%,rgba(0,0,0,.48) 28%,#000 48%);
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
}
.hero-art::before{content:none!important;display:none!important}
@media(max-width:730px){
  .hero-art{
    -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 20%,#000 56%);
    mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.25) 20%,#000 56%);
  }
}

/* Medical curriculum: expandable three-level course hierarchy */
.course-card-nested{grid-column:1/-1;background:linear-gradient(180deg,#fff,#fbfdff)}
.course-subtitle{font-size:13px;color:#214c82;margin:22px 0 10px;letter-spacing:.025em}
.course-subitems{display:grid;gap:9px}
.course-subitem{border:1px solid #dbe9f8;border-radius:10px;background:#f8fbff;overflow:hidden}
.course-subitem>summary{display:list-item;cursor:pointer;padding:12px 17px;color:#125db3;font-weight:750;font-size:14px;list-style-position:inside}
.course-subitem[open]>summary{background:#eef6ff}
.course-subitem>p{margin:8px 17px 12px;font-size:13px;color:#58718b}
.course-subitem>p.course-topics{font-size:12px;color:#657f9b;margin-top:2px}
.course-subitem>.course-subitems{padding:1px 13px 13px;gap:8px}
.course-depth-2{background:#fff;border-color:#e0eafa}
.course-depth-2>summary{font-size:13px;padding:10px 14px}
.course-depth-3{background:#f9fcff}
.course-depth-3>summary{font-size:13px;padding:9px 13px}
.course-card .course-overview{border-top:1px solid #e2eef8;margin-top:18px;padding-top:12px}
@media(max-width:650px){.course-card-nested{grid-column:auto}.course-subitem>summary{padding:11px 12px}}

/* Clear hierarchy: Medical communication > two courses > three counseling levels */
.medical-curriculum-toggle{margin-top:22px;border:1px solid #aacbf0;border-radius:13px;background:#f2f8ff;overflow:hidden}
.medical-curriculum-toggle>summary{cursor:pointer;list-style:none;padding:15px 19px;font-size:15px;font-weight:800;color:#134a91;display:flex;align-items:center;justify-content:space-between;gap:12px}
.medical-curriculum-toggle>summary::-webkit-details-marker{display:none}
.medical-curriculum-toggle>summary::after{content:"＋";color:#1769df;font-weight:700;font-size:21px;line-height:1}
.medical-curriculum-toggle[open]>summary::after{content:"−"}
.medical-curriculum-toggle[open]>summary{border-bottom:1px solid #d4e5f8;background:#eaf4ff}
.medical-curriculum-toggle .course-root-children{padding:15px 20px 20px;display:flex;flex-direction:column;gap:12px}
.medical-curriculum-toggle .course-depth-1{border:1px solid #c9ddf3;border-left:4px solid #247be4;border-radius:9px;background:white;overflow:hidden}
.medical-curriculum-toggle .course-depth-1>summary{display:flex;align-items:center;justify-content:space-between;list-style:none;padding:15px 17px;color:#0c3e7b;font-size:15px;font-weight:800;background:#fff;gap:12px}
.medical-curriculum-toggle .course-depth-1>summary::-webkit-details-marker{display:none}
.medical-curriculum-toggle .course-depth-1[open]>summary{background:#f7fbff}
.medical-curriculum-toggle .course-tree-chevron{font-size:22px;line-height:1;color:#4588ce;transition:transform .2s}
.medical-curriculum-toggle details[open]>summary .course-tree-chevron{transform:rotate(180deg)}
.medical-curriculum-toggle .course-detail-body{padding:0 17px 16px}
.medical-curriculum-toggle .course-detail-body>p{font-size:13px;margin:10px 0;color:#59728f}
.medical-curriculum-toggle .course-depth-1>.course-detail-body>.course-children{margin-top:15px;margin-left:18px;border-left:2px solid #92bdf1;padding:2px 0 2px 15px;display:grid;gap:9px}
.medical-curriculum-toggle .course-depth-2{border:1px solid #d7e6f6;background:#f8fbff;border-radius:8px}
.medical-curriculum-toggle .course-depth-2>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;padding:10px 14px;font-size:13px;font-weight:700;color:#2867a7;gap:10px}
.medical-curriculum-toggle .course-depth-2>summary::-webkit-details-marker{display:none}
.medical-curriculum-toggle .course-depth-2>.course-detail-body{padding:0 14px 13px}
.medical-curriculum-toggle .course-depth-2>.course-detail-body p{margin:8px 0;font-size:12px}
@media(max-width:650px){
 .medical-curriculum-toggle .course-root-children{padding:10px}
 .medical-curriculum-toggle .course-depth-1>.course-detail-body>.course-children{margin-left:5px;padding-left:9px}
 .medical-curriculum-toggle .course-depth-1>summary{padding:12px}
}
