:root{
  --blue:#0071E3;--blue-600:#0071E3;--blue-700:#005BB5;--blue-50:#EAF4FF;
  --ink:#1D1D1F;--ink-700:#1D1D1F;--ink-500:#6E6E73;--ink-300:#A1A1A6;
  --line:#D9D9DE;--bg:#F5F5F7;--grad:linear-gradient(135deg,#07142E,#0A2D63);
  --sh-xs:0 1px 0 rgba(0,0,0,.06);--sh-sm:0 8px 24px rgba(15,23,42,.08);
  --sh-md:0 18px 44px rgba(15,23,42,.12);--sh-lg:0 28px 70px rgba(10,20,40,.18);
}
body{color:var(--ink-700)}
.ysc-site-header{position:sticky;top:0;z-index:300;background:rgba(255,255,255,.88);
  border-bottom:1px solid rgba(0,0,0,.07);backdrop-filter:saturate(180%) blur(24px);
  -webkit-backdrop-filter:saturate(180%) blur(24px)}
.ysc-site-nav{max-width:1200px;height:56px;margin:0 auto;padding:0 24px;display:flex;align-items:center}
/* High-specificity overrides to defeat business-shell.css FOUC hiding rules */
header.ysc-site-header nav.ysc-site-nav,
body div.ysc-site-drawer.ysc-site-drawer { visibility: visible !important; }
.ysc-site-logo{width:126px;height:56px;display:flex;align-items:center;flex:none}
.ysc-site-logo img{height:38px;width:auto;display:block}
.ysc-site-menu{display:flex;gap:28px;margin:0 auto;font-size:14px;font-weight:500;color:#6E6E73}
.ysc-site-menu a{position:relative;white-space:nowrap;padding:4px 0}
.ysc-site-menu a::after{content:'';position:absolute;left:0;right:0;bottom:-2px;height:1.5px;
  border-radius:2px;background:#0071E3;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.ysc-site-menu a:hover,.ysc-site-menu a.active{color:#1D1D1F}
.ysc-site-menu a:hover::after,.ysc-site-menu a.active::after{transform:scaleX(1)}
.ysc-nav-cta{flex:none;display:flex;align-items:center;gap:12px;margin-left:auto}
.ysc-nav-phone{display:inline-flex;align-items:center;gap:6px;color:#0071e3;font-size:13px;font-weight:800;white-space:nowrap;text-decoration:none}
.ysc-nav-phone::before{content:"";width:7px;height:7px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 4px rgba(34,197,94,.18);animation:ysc-online-pulse 2s ease-in-out infinite}
@keyframes ysc-online-pulse{0%,100%{box-shadow:0 0 0 3px rgba(34,197,94,.16)}50%{box-shadow:0 0 0 5px rgba(34,197,94,.08)}}
.ysc-site-cta{position:relative;overflow:hidden;font-size:14px!important;padding:9px 20px!important;border-radius:999px!important;letter-spacing:.4px;
  background:linear-gradient(135deg,#FF9A1F 0%,#FF7A00 55%,#F26A00 100%)!important;color:#fff!important;border:0!important;cursor:pointer;font-family:inherit;
  box-shadow:0 6px 18px rgba(255,122,0,.36),inset 0 1px 0 rgba(255,255,255,.28)!important;
  display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.ysc-site-cta .ic{width:15px;height:15px;stroke-width:2;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.ysc-site-cta::before{content:'';position:absolute;top:0;left:-130%;width:62%;height:100%;
  background:linear-gradient(115deg,transparent,rgba(255,255,255,.5),transparent);
  animation:ysc-btn-sweep 3.6s infinite 1s;transform:skewX(-20deg)}
@keyframes ysc-btn-sweep{0%{left:-130%}100%{left:200%}}
.ysc-site-cta:hover{background:linear-gradient(135deg,#FFA833,#FF8A00,#E86400)!important;
  transform:translateY(-1px)!important;box-shadow:0 11px 26px rgba(255,122,0,.48)!important}
.ysc-site-ham{display:none;border:0;background:transparent;padding:8px;color:#1D1D1F;cursor:pointer;margin-left:auto}
.ysc-site-ham span{display:block;width:21px;height:1.5px;background:currentColor;margin:5px 0;border-radius:2px}
.ysc-site-drawer{display:none;position:fixed;z-index:299;top:56px;right:0;bottom:0;left:0;inset:56px 0 0;background:rgba(255,255,255,.98);
  padding:20px 24px 40px;overflow-y:auto}
.ysc-site-drawer.open{display:block}
.ysc-site-drawer a{display:block;padding:14px 0;border-bottom:1px solid #E5E5EA;color:#1D1D1F;font-size:17px;font-weight:600}
.ysc-site-drawer .ysc-drawer-cta{margin-top:24px;width:100%;justify-content:center;background:linear-gradient(135deg,#FF9A1F,#FF7A00)!important;color:#fff!important;
  border-radius:999px!important;box-shadow:0 6px 18px rgba(255,122,0,.28)!important}

/* Shared conversion entry: digital planner + responsive lead panel. */
.sticky-bar,.sticky-apply{display:none!important}
.ysc-ip-guide{position:fixed;right:24px;bottom:28px;z-index:190;border:0;background:transparent;
  padding:0;cursor:pointer;display:flex;align-items:flex-end;font-family:inherit;
  filter:drop-shadow(0 16px 26px rgba(29,29,31,.16));opacity:0;pointer-events:none;
  transform:translateY(16px);transition:opacity .25s,transform .25s}
.ysc-ip-guide.visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.ysc-ip-copy{margin:0 -18px 22px 0;padding:11px 30px 11px 15px;border-radius:15px 0 0 15px;
  background:rgba(255,255,255,.94);border:1px solid rgba(0,0,0,.08);text-align:left;
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:.22s}
.ysc-ip-copy b{display:block;font-size:13px;color:#1D1D1F;margin-bottom:2px}
.ysc-ip-copy span{display:block;font-size:11px;color:#6E6E73;white-space:nowrap}
.ysc-ip-guide img{width:104px;height:142px;object-fit:contain;object-position:center bottom;
  animation:yscIpFloat 4.4s ease-in-out infinite;transition:.25s}
.ysc-ip-guide:hover img{transform:translateY(-5px) rotate(-2deg)}
.ysc-ip-guide:hover .ysc-ip-copy{border-color:rgba(0,113,227,.28);transform:translateX(-3px)}
@keyframes yscIpFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

.ysc-lead-layer{position:fixed;top:0;right:0;bottom:0;left:0;inset:0;z-index:480;display:flex;justify-content:flex-end;
  background:rgba(0,0,0,.34);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .24s,visibility .24s}
.ysc-lead-layer.open{opacity:1;visibility:visible;pointer-events:auto}
.ysc-lead-panel{width:min(430px,100%);height:100%;background:#fff;padding:38px 34px 30px;
  box-shadow:-24px 0 70px rgba(0,0,0,.16);transform:translateX(100%);transition:transform .3s ease;
  display:flex;flex-direction:column;overflow-y:auto;position:relative}
.ysc-lead-layer.open .ysc-lead-panel{transform:translateX(0)}
.ysc-lead-head{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;margin-bottom:22px}
.ysc-lead-kicker{font-size:11px;font-weight:800;letter-spacing:1.4px;color:#0071E3;text-transform:uppercase;margin-bottom:7px}
.ysc-lead-head h3{font-size:28px;line-height:1.2;color:#1D1D1F;margin:0 0 8px}
.ysc-lead-head p{font-size:14px;line-height:1.7;color:#6E6E73;margin:0}
.ysc-lead-close{width:32px;height:32px;border:0;border-radius:50%;background:#F5F5F7;color:#6E6E73;
  cursor:pointer;font-size:20px;line-height:1}
.ysc-lead-mascot{height:122px;width:auto;object-fit:contain;object-position:left bottom;margin:-4px auto 10px 0}
.ysc-lead-form{display:grid;gap:14px}
.ysc-lead-field{display:grid;gap:7px}
.ysc-lead-field label{font-size:13px;font-weight:600;color:#6E6E73}
.ysc-lead-field input,.ysc-lead-field select{width:100%;min-height:48px;border:1px solid #D9D9DE;border-radius:12px;
  background:#F5F5F7;color:#1D1D1F;padding:0 14px;font:inherit;outline:none}
.ysc-lead-field input:focus,.ysc-lead-field select:focus{background:#fff;border-color:#0071E3;box-shadow:0 0 0 4px rgba(0,113,227,.12)}
.ysc-lead-submit{width:100%;justify-content:center;border:0;border-radius:999px;background:#0071E3;color:#fff;
  min-height:50px;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 8px 22px rgba(0,113,227,.24)}
.ysc-lead-privacy{font-size:11px;line-height:1.6;text-align:center;color:#A1A1A6;margin:0}
.ysc-lead-status{min-height:20px;text-align:center;font-size:13px;color:#00875A;font-weight:600;margin:0}

/* Normalize early-page visuals to the approved homepage direction. */
.review{display:none!important}
.page-hero,.course-hero,.banner,.cta-strip{background:
  radial-gradient(ellipse 80% 100% at 85% 0%,rgba(0,113,227,.28),transparent 55%),
  #070A12!important}
.btn-cta,.btn-blue{background:#0071E3!important;color:#fff!important;border-radius:999px!important;
  box-shadow:0 6px 18px rgba(0,113,227,.28)!important}
.btn-cta:hover,.btn-blue:hover{background:#005BB5!important;filter:none!important}
.btn-line{color:#0071E3!important;border-color:#0071E3!important;border-radius:999px!important}
.ftab.on,.page-btn.on,.pg.on{background:#0071E3!important;border-color:#0071E3!important}
.persona-item{border-left-width:1px!important}
footer{background:#050507!important;color:#6E6E73!important}
footer h4{color:#D2D2D7!important}
.flogo img,footer img.flogo{filter:brightness(0) invert(1)!important;opacity:.78!important}
.filter-bar,.tab-nav,.about-subnav{top:56px!important}

@media(max-width:1100px){
  .ysc-site-menu{gap:18px;font-size:13px}
  .ysc-lead-layer{justify-content:center;align-items:center;padding:28px}
  .ysc-lead-panel{width:min(520px,100%);height:auto;max-height:min(760px,calc(100vh - 56px));border-radius:24px;
    transform:translateY(18px) scale(.98);box-shadow:0 24px 70px rgba(0,0,0,.18)}
  .ysc-lead-layer.open .ysc-lead-panel{transform:translateY(0) scale(1)}
}
@media(max-width:768px){
  .ysc-site-header{display:block!important}
  .ysc-site-nav{height:56px;padding:0 18px}
  .ysc-site-logo{width:106px;height:56px}
  .ysc-site-logo img{height:34px}
  .ysc-site-menu,.ysc-nav-cta{display:none!important}
  .ysc-site-ham{display:block}
  .ysc-site-drawer{max-width:430px;left:50%;right:auto;width:100%;transform:translateX(-50%)}
  .sticky-bar,.sticky-apply{display:flex!important;position:fixed!important;bottom:0!important;left:50%!important;
    transform:translateX(-50%)!important;width:100%!important;max-width:430px!important;padding:10px 16px!important;
    align-items:center!important;gap:10px!important;background:rgba(255,255,255,.94)!important;
    border-top:1px solid rgba(0,0,0,.08)!important;box-shadow:0 -4px 20px rgba(0,0,0,.1)!important;
    backdrop-filter:saturate(180%) blur(20px);z-index:185!important}
  .sticky-bar .info{flex:1}.sticky-bar .btns{display:flex;gap:8px}
  .sticky-bar .info .lbl{font-size:11px;color:#6E6E73}.sticky-bar .info .val{font-size:14px;font-weight:700;color:#1D1D1F}
  .ysc-ip-guide{display:none!important}
  .ysc-lead-layer{align-items:flex-end;padding:0}
  .ysc-lead-panel{width:100%;height:auto;max-height:88vh;border-radius:24px 24px 0 0;padding:24px 20px 28px;
    transform:translateY(100%);box-shadow:0 -24px 70px rgba(0,0,0,.18)}
  .ysc-lead-layer.open .ysc-lead-panel{transform:translateY(0)}
  .ysc-lead-head{margin-bottom:16px}
  .ysc-lead-head h3{font-size:24px}
  .ysc-lead-mascot{position:absolute;right:46px;top:16px;width:58px;height:86px;margin:0;opacity:.95}
}
