.storefront{background:#f8fafc;color:#12283d;font-family:Arial,Helvetica,sans-serif}.storefront .wrap{max-width:1344px;padding-left:40px;padding-right:40px}.storefront .topline{background:#0c2440;color:#d3e0ef;font-size:10px;padding:6px 0}.storefront header{background:white;backdrop-filter:none;box-shadow:0 3px 12px #162c4610}.storefront .nav{min-height:130px;position:relative;padding-bottom:42px;gap:30px}.storefront .brand>span{color:#103768}.storefront .brand img{width:48px;height:48px;object-fit:contain}.storefront .nav>nav{position:absolute;bottom:0;left:40px;right:40px;height:43px;display:flex;gap:28px;align-items:center;border-top:1px solid #e7edf2;font-size:13px;white-space:nowrap}.header-search{margin-left:28px;display:flex;border:1px solid #dce4eb;background:#f5f8fb;border-radius:9px;max-width:530px;flex:1;height:44px;overflow:hidden}.header-search input{border:0;background:transparent;min-width:0;flex:1;padding:10px 17px;font-size:14px;outline-offset:-4px}.header-search button{background:#113b68;color:white;border:0;width:48px;font-size:27px;line-height:1}.storefront .nav>.button{margin-left:auto;border:1px solid #163958;border-radius:8px;font-size:13px;padding:10px 17px;white-space:nowrap}.storefront .store-hero{padding-top:28px;padding-bottom:26px;display:grid;grid-template-columns:1fr 340px;gap:20px}.hero-main{background:#0c2440;min-height:400px;border-radius:16px;color:white;position:relative;overflow:hidden;display:grid;grid-template-columns:1.12fr 1fr}.hero-content{position:relative;z-index:1;padding:44px 0 42px 38px}.hero-content .eyebrow{color:#a6c7e2;font-size:10px;letter-spacing:2px;margin-bottom:18px}.hero-content h1{font-size:45px;line-height:1.08;letter-spacing:-1.9px;margin-bottom:20px;font-weight:750}.hero-content h1 em{font-style:normal;color:#64dad8}.hero-content p:not(.eyebrow){font-size:14px;color:#cfdae6;line-height:1.6;margin-bottom:25px}.storefront .button.primary{background:#087f88;border-radius:7px;box-shadow:none}.hero-content .button.primary{background:#65dddc;color:#092939;font-size:13px;font-weight:700;padding:12px 17px;gap:30px}.hero-editorial{position:relative;min-width:0;overflow:hidden}.outline-sg{font-size:270px;font-weight:800;letter-spacing:-30px;color:#ffffff05;-webkit-text-stroke:1px #ffffff10;position:absolute;right:-55px;top:-50px}.book-stack{position:absolute;right:30px;top:55px;width:188px;transform:rotate(9deg)}.book-stack img{display:block;position:relative;z-index:2;box-shadow:-10px 14px 22px #0006;border:1px solid #ffffff50;border-radius:2px}.book-back{position:absolute;inset:-17px 17px 13px -22px;background:#286a9c;transform:rotate(-16deg);border:1px solid #77a1c5;box-shadow:-5px 8px 15px #0004;padding:24px 12px;font-size:18px;letter-spacing:2px;line-height:1.5;color:#d0edf9}.editorial-label{position:absolute;bottom:24px;right:29px;color:#81a3bd;font-size:9px;letter-spacing:2px}.hero-side{display:grid;grid-template-rows:1.1fr 1fr;gap:18px}.spotlight{padding:25px 27px;border-radius:14px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s}.spotlight:hover{transform:translateY(-3px)}.spot-blue{background:#1658a6;color:white}.spot-blue:after{content:'26';position:absolute;right:-8px;top:-29px;font-size:150px;font-weight:800;color:#ffffff08;pointer-events:none}.spot-light{background:#e9eeef;color:#112c41}.spot-kicker{font-size:9px;letter-spacing:1.4px;font-weight:700;position:relative;z-index:1}.spotlight strong{font-size:28px;line-height:1.2;letter-spacing:-1px;margin-top:10px}.spotlight strong b{color:#7de3e0}.spot-light strong b{color:#087f88}.spotlight p{font-size:12px;line-height:1.4;margin:8px 0 16px;opacity:.87}.spot-action{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:bold;margin-top:15px}.spot-action i{font-style:normal;font-size:20px}.career-section{padding-top:10px;padding-bottom:32px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-title h2{font-size:22px;letter-spacing:-.7px;margin:0}.section-title>span{font-size:12px;color:#657487}.career-tiles{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.career-tiles>a{background:#fff;border:1px solid #e1e7ed;border-radius:10px;padding:17px 14px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:border .2s,transform .2s}.career-tiles>a:hover{border-color:#168a95;transform:translateY(-3px)}.career-symbol{width:38px;height:38px;display:grid;place-items:center;background:#edf3f8;color:#1b5487;border-radius:10px;margin-bottom:9px;font-size:20px;font-weight:700;font-family:Georgia,serif}.career-tiles strong{font-size:12px}.career-tiles small{font-size:10px;color:#738090;margin-top:3px}.storefront #catalogo{padding-top:30px;padding-bottom:52px;border-top:1px solid #e2e8ef}.storefront .section-head{margin-bottom:23px}.storefront .section-head h2{font-size:30px;margin-bottom:4px;letter-spacing:-1px}.storefront .eyebrow{font-size:10px;letter-spacing:1.7px}.storefront .section-head>p{font-size:13px;max-width:310px;color:#607287}.storefront .catalog-toolbar{background:white;border:1px solid #e0e7ee;border-radius:10px;padding:10px;gap:12px;margin-bottom:16px}.storefront .searchbox{background:#f6f8fb;border-color:#e9edf3;min-height:44px}.storefront .select-label{font-size:11px}.storefront .select-label select{font-size:13px;background:#fff;border-radius:6px}.storefront .filters{gap:8px;flex-wrap:wrap}.storefront .filters button{border-radius:6px;font-size:12px;padding:8px 17px;background:white}.storefront .filters button.active{background:#123b65;border-color:#123b65;color:white}.storefront .results-info{font-size:11px;color:#738191;margin:16px 0}.storefront .course-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}.storefront .course-card{background:#fff;border:1px solid #dfe7ed;border-radius:12px;box-shadow:0 3px 8px #172b4005;overflow:hidden;transition:transform .2s,box-shadow .2s}.storefront .course-card:hover{transform:translateY(-5px);box-shadow:0 12px 26px #12304b12}.storefront .course-banner{height:138px;padding:20px 20px;position:relative;overflow:hidden;background:var(--accent,#194773);color:white;align-items:flex-start;flex-direction:column;justify-content:flex-end;gap:4px}.storefront .course-banner:before{content:'SG';position:absolute;right:-15px;top:-18px;font-size:116px;font-weight:800;letter-spacing:-15px;color:#ffffff0b;line-height:1.25;transform:rotate(-10deg)}.storefront .course-code{position:relative;font-size:32px;letter-spacing:-1.5px;color:#fff;font-weight:800;line-height:1}.storefront .course-year{position:absolute;top:16px;right:16px;color:#ffffffb8;font-size:10px;letter-spacing:1px}.storefront .course-kind{position:relative;color:#ffffffda;font-size:10px;letter-spacing:1px;text-transform:uppercase;margin-top:6px}.storefront .course-body{padding:20px 18px 16px;display:flex;flex-direction:column;flex:1}.storefront .course-type{font-size:9px;letter-spacing:.6px;color:#43708b;margin-bottom:10px}.storefront .course-body h3{font-size:17px;line-height:1.35;letter-spacing:-.3px;margin-bottom:10px;min-height:46px}.storefront .course-body>p{font-size:12px;line-height:1.6;color:#667586;margin-bottom:18px}.storefront .card-actions{margin-top:auto;padding-top:14px;border-top:1px solid #edf0f4;gap:7px;display:grid;grid-template-columns:1fr auto}.storefront .card-actions a{background:#0a7d86;color:white;border-radius:6px;font-size:11px;padding:9px 12px;text-align:center}.storefront .card-actions button{border:1px solid #dae3ea;background:white;font-size:10px;padding:8px 10px;border-radius:6px;color:#203b51}.storefront .method{background:#102b47;color:white;padding:50px 0}.storefront .method .section-head>p{color:#b5c8d8}.storefront .method-grid{gap:25px}.storefront .method-grid article{border:0;background:transparent;padding:0 12px 0 0}.storefront .method h3{font-size:17px}.storefront .method article p{font-size:12px;color:#b5c8d8}.storefront .method .step{color:#6dd8d7;background:transparent;font-size:28px;padding:0;display:block;margin-bottom:16px}.storefront .about{padding-top:45px;padding-bottom:45px}.storefront .about h2{font-size:28px}.storefront .about p{font-size:13px}.storefront .contact-band{background:#edf3f5;padding:38px 0}.storefront .contact-band h2{font-size:27px}.storefront .contact-band p{font-size:13px}.storefront footer{background:white;padding:24px 0;font-size:11px}.storefront .footer-grid{gap:22px}.storefront dialog{border:0;border-radius:15px;max-width:560px}.storefront dialog h2{font-size:27px}.storefront .mobile-menu{display:none}@media(min-width:1400px){.hero-content h1{font-size:50px}.book-stack{width:207px;right:37px;top:48px}}@media(max-width:1100px){.storefront .wrap{padding-left:24px;padding-right:24px}.storefront .nav>nav{left:24px;right:24px;gap:20px}.storefront .store-hero{grid-template-columns:1fr 275px}.hero-content{padding-left:28px}.hero-content h1{font-size:37px}.book-stack{width:155px;right:22px;top:73px}.storefront .course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.career-tiles{grid-template-columns:repeat(3,1fr)}.career-tiles>a{align-items:flex-start;text-align:left;position:relative;padding-left:66px;min-height:75px;justify-content:center}.career-symbol{position:absolute;left:15px;top:17px}.header-search{margin-left:0}}@media(max-width:900px){.storefront .nav{min-height:132px;padding-bottom:63px;gap:15px}.storefront .brand>span{font-size:20px}.storefront .brand img{width:37px;height:37px}.storefront .nav>.button{font-size:11px;padding:8px 10px}.header-search{position:absolute;bottom:14px;left:20px;right:20px;max-width:none;height:39px}.storefront .nav>nav{display:none;position:absolute;left:0;right:0;top:132px;bottom:auto;height:auto;padding:18px 22px;background:white;border-bottom:1px solid #ddd;z-index:30;white-space:normal}.storefront .nav>nav.open{display:flex;flex-wrap:wrap}.storefront .mobile-menu{display:block;border:0;background:transparent;padding:5px;color:#31516c;font-size:12px;margin-left:auto}.storefront .nav>.button{margin-left:0}.storefront .wrap{padding-left:18px;padding-right:18px}.storefront .topline span{display:none}.storefront .store-hero{grid-template-columns:1fr;gap:14px;padding-top:18px}.hero-main{min-height:330px;grid-template-columns:1.35fr 1fr;border-radius:12px}.hero-content{padding:28px 0 30px 24px}.hero-content h1{font-size:35px;letter-spacing:-1.4px}.hero-content .eyebrow{font-size:8px;letter-spacing:1px;max-width:150px}.hero-content p:not(.eyebrow){font-size:12px;max-width:200px}.hero-content .button.primary{font-size:11px;padding:10px 12px;gap:9px}.book-stack{width:127px;right:12px;top:67px}.book-back{padding:20px 7px;font-size:14px}.editorial-label{display:none}.hero-side{grid-template-columns:1fr 1fr;grid-template-rows:1fr;gap:12px}.spotlight{padding:19px 17px;min-height:185px}.spotlight strong{font-size:22px}.spot-kicker{font-size:8px;letter-spacing:.8px}.spotlight p{font-size:10px}.spot-action{font-size:9px}.career-section{padding-top:4px;padding-bottom:24px}.section-title h2{font-size:20px}.section-title>span{display:none}.career-tiles{grid-template-columns:repeat(2,1fr);gap:8px}.career-tiles>a{padding-left:58px}.career-symbol{left:12px;width:33px;height:33px;font-size:17px}.career-tiles strong{font-size:11px}.career-tiles small{font-size:9px}.storefront .section-head{display:block}.storefront .section-head h2{font-size:27px}.storefront .section-head>p{max-width:none;margin-top:10px}.storefront .course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.storefront .course-banner{height:112px;padding:15px}.storefront .course-code{font-size:25px}.storefront .course-body{padding:15px 12px}.storefront .course-body h3{font-size:14px;min-height:56px}.storefront .course-body>p{font-size:11px}.storefront .card-actions{grid-template-columns:1fr}.storefront .card-actions button{padding:7px}.storefront .course-type{font-size:8px}.storefront .catalog-toolbar{display:block}.storefront .select-label{margin-top:10px}.storefront .method-grid{grid-template-columns:1fr 1fr;gap:28px 15px}.storefront .about{display:block}.storefront .filters button{font-size:11px;padding:7px 10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media(max-width:360px){.hero-content h1{font-size:29px}.book-stack{width:100px;right:5px;top:84px}.storefront .brand>span{font-size:17px}.storefront .nav{gap:7px}}
.storefront .course-cover-link{display:block;background:#f1f4f6;border-bottom:1px solid #e3e9ed;overflow:hidden}.storefront .course-cover{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;object-position:center;background:#f1f4f6}.storefront .card-actions{grid-template-columns:1fr}.storefront .course-body h3 a:hover{color:#087f88}.storefront .course-body>p{max-width:none}.storefront .course-card{display:flex;flex-direction:column}
.sg-carousel{position:relative;padding-bottom:52px}.carousel-controls{position:absolute;bottom:16px;left:30px;display:flex;gap:10px;align-items:center;z-index:4}.carousel-controls button{background:#ffffff14;border:1px solid #ffffff40;border-radius:6px;color:#fff;cursor:pointer;min-width:32px;height:30px;font-size:13px}.carousel-controls button:hover{background:#ffffff30}.carousel-controls button:focus-visible{outline:3px solid #70e1df;outline-offset:3px}#slide-dots{display:flex;gap:7px}#slide-dots button{min-width:9px;width:9px;height:9px;padding:0;border-radius:50%;background:#ffffff40;border:0}#slide-dots button[aria-pressed=true]{background:#69dedc}#slide-pause{padding:0 10px;font-size:10px}.hero-calendar{position:absolute;inset:40px 20px 40px 0;color:white;border:1px solid #86cfcd55;border-radius:18px;background:#ffffff09;padding:25px;transform:rotate(5deg)}.hero-calendar>span{font-size:13px;letter-spacing:3px}.hero-calendar strong{display:block;font-size:60px;line-height:1.1;margin:20px 0}.hero-calendar i{color:#6be0dc;font-style:normal}.hero-calendar p{font-size:12px}.sg-carousel [hidden]{display:none!important}@media(max-width:900px){.carousel-controls{left:24px;bottom:16px}.sg-carousel{padding-bottom:58px}}

/* Responsive hardening: consistent menu breakpoint and compact touch layout. */
.storefront .hero-content,.storefront .hero-side,.storefront .spotlight,.storefront .career-tiles>a{min-width:0;overflow-wrap:anywhere}
.storefront input,.storefront select{font-size:16px}
.storefront .header-search input,.storefront .select-label select{font-size:16px}
.carousel-controls{gap:6px;right:16px;flex-wrap:wrap}
.carousel-controls button{min-width:44px;min-height:44px;height:auto}
#slide-dots{gap:0}
#slide-dots button{width:24px;min-width:24px;height:44px;border-radius:0;background:radial-gradient(circle,#ffffff65 4px,transparent 5px)}
#slide-dots button[aria-pressed=true]{background:radial-gradient(circle,#69dedc 4px,transparent 5px)}
@media(min-width:901px){.storefront .mobile-menu{display:none}.storefront .nav>nav{top:auto}}
@media(max-width:900px){.storefront .mobile-menu{min-height:44px;min-width:44px}.storefront .nav>nav.open{max-height:calc(100dvh - 150px);overflow-y:auto}.storefront .nav>nav a{display:flex;align-items:center;min-height:44px}.storefront .filters button,.storefront .card-actions a,.storefront .card-actions button{min-height:44px}.sg-carousel{padding-bottom:76px}.carousel-controls{left:16px;bottom:12px}}
@media(max-width:520px){.storefront .course-grid{grid-template-columns:minmax(0,1fr)}.storefront .hero-main{grid-template-columns:minmax(0,1fr)}.storefront .hero-content{padding:28px 24px}.storefront .hero-side{grid-template-columns:minmax(0,1fr)}.storefront .career-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.storefront .career-tiles>a{padding:14px;align-items:center;text-align:center}.storefront .career-symbol{position:static}.storefront .course-body h3{min-height:0;font-size:18px}.storefront .course-body>p{font-size:14px}.storefront .card-actions a,.storefront .card-actions button{font-size:14px}}
@media(max-height:500px) and (orientation:landscape){.storefront>header{position:relative}}

/* Published catalog, career shortcuts and public navigation. */
.storefront [hidden]{display:none!important}
.storefront .nav>nav{gap:22px;font-size:12px}
.storefront .hero-content h1{max-width:460px;text-wrap:balance}
.storefront .hero-content>p:not(.eyebrow){max-width:320px}
.storefront .hero-calendar strong{font-size:42px;line-height:1.1;letter-spacing:-1px}
.storefront .calendar-home{display:flex;align-items:center;gap:22px;margin-top:8px;margin-bottom:36px;padding-top:22px;padding-bottom:22px;background:#f0f5fa;border-top:1px solid #dce7ee;border-bottom:1px solid #dce7ee}
.calendar-home-icon{width:56px;height:56px;border-radius:14px;background:#dfeaf5;color:#305d8c;display:grid;place-items:center;flex-shrink:0}
.calendar-home-icon svg{width:28px;height:28px}
.storefront .calendar-home h2{font-size:22px;line-height:1.3;letter-spacing:-.5px;margin:5px 0}
.storefront .calendar-home p{font-size:13px;max-width:700px;margin:0;color:#506477;line-height:1.6}
.storefront .calendar-home .eyebrow{font-size:9px;color:#416482;letter-spacing:1.4px}
.storefront .calendar-home .button{flex-shrink:0;margin-left:auto;font-size:12px;white-space:nowrap;background:white}
.storefront .career-tiles>a{border-radius:13px;padding-top:22px;padding-bottom:20px;gap:3px}
.storefront .career-symbol{width:44px;height:44px;border-radius:12px;background:#edf3f8;color:#285d84}
.career-symbol svg{width:25px;height:25px}
.storefront .career-tone-1 .career-symbol{background:#e3f1ee;color:#21786e}
.storefront .career-tone-2 .career-symbol{background:#eeebf8;color:#655790}
.storefront .career-tone-3 .career-symbol{background:#e7ecf4;color:#415d86}
.storefront .career-tone-4 .career-symbol{background:#f8efdf;color:#88652c}
.storefront .career-tone-5 .career-symbol{background:#e7f0ec;color:#476a58}
.storefront .career-tiles strong{font-size:13px}
.storefront .career-tiles small{font-size:11px;color:#5b6c7e}
.storefront .catalog-toolbar{display:grid;grid-template-columns:minmax(220px,1.8fr) repeat(3,minmax(140px,1fr));padding:16px;align-items:end}
.storefront .catalog-toolbar .searchbox{align-self:end;margin:0;height:46px}
.storefront .catalog-toolbar .select-label{margin:0;display:grid;gap:6px;min-width:0;color:#4c6277;font-size:11px}
.storefront .catalog-toolbar select{width:100%;min-width:0;height:46px;padding:8px;border:1px solid #dce4eb;font-size:13px;background:#fff}
.filter-reset{grid-column:1/-1;justify-self:end;border:0;background:none;text-decoration:underline;color:#375770;font-size:12px;min-height:30px;cursor:pointer}
.storefront .filters button{min-height:42px}
.catalog-badges{margin:0 0 15px}
.sample-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:#5c6d7c;background:#f0f3f6;border-radius:5px;padding:5px 8px;line-height:1.5}
.sample-badge.available{background:#e4f2ed;color:#26624f}
.storefront .card-actions .sample-link{background:#f0f7f7;color:#106c73;border:1px solid #d6e9e8}
.course-cover-placeholder{aspect-ratio:3/4;background:#173b5c;color:white;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;gap:18px;text-align:center}
.course-cover-placeholder span{font-size:11px;letter-spacing:2px}.course-cover-placeholder strong{font-size:28px}.course-cover-placeholder small{color:#bed5e5;font-size:11px}
.catalog-unavailable{padding:32px;background:#fff;border:1px solid #dce5ed;border-radius:12px;margin-bottom:24px}
.catalog-unavailable h3{font-size:20px}.catalog-unavailable p{font-size:14px;color:#526b7e}.catalog-unavailable>a{display:inline-block;margin:16px;color:#1b6476;font-size:14px}
.storefront .footer-grid{grid-template-columns:auto 1fr auto;align-items:start}.storefront .footer-grid>p{display:none}
.storefront .footer-grid nav{display:flex;gap:10px 18px;flex-wrap:wrap;justify-content:center}.storefront .footer-grid nav a{min-height:32px;display:flex;align-items:center}
@media(max-width:1100px){.storefront .nav>nav{gap:16px}.storefront .catalog-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.storefront .catalog-toolbar .searchbox{grid-column:1/-1}.storefront .career-tiles>a{padding-top:18px;padding-bottom:18px}.storefront .calendar-home{gap:16px}.calendar-home-icon{display:none}}
@media(max-width:900px){.storefront .nav>nav{gap:10px 24px}.storefront .calendar-home{margin-top:0}.storefront .catalog-toolbar select{font-size:16px}.storefront .catalog-toolbar .select-label{margin-top:0}.storefront .footer-grid{grid-template-columns:1fr}.storefront .footer-grid nav{justify-content:flex-start}.storefront .calendar-home .button{white-space:normal;text-align:center}}
@media(max-width:600px){.storefront .calendar-home{display:block;margin-bottom:26px;padding:20px 18px}.storefront .calendar-home .button{display:inline-flex;margin-top:15px}.storefront .catalog-toolbar{grid-template-columns:minmax(0,1fr);gap:14px}.storefront .catalog-toolbar .searchbox{grid-column:auto}.storefront .career-tiles>a{padding:16px 10px}.storefront .career-tiles strong{font-size:12px}.storefront .career-tiles small{font-size:10px}.storefront .filters{display:none}.storefront .hero-calendar strong{font-size:30px}.storefront .course-type{font-size:10px}.storefront .sample-badge{font-size:11px}}
.storefront .course-body>.catalog-payment-note{font-size:11px;color:#657488;margin:0 0 12px}.storefront .card-actions a{overflow-wrap:anywhere}

/* v22: public home resources, full career taxonomy and channel access. */
.storefront .brand,.storefront .brand>span,.storefront .brand>span b{color:#000}
.sg-home{background:#f7f9fc}
.sg-home header{border-bottom-color:#dde6ed;box-shadow:0 4px 16px #14334808}
.sg-home .brand>span{letter-spacing:-.7px}.sg-home .brand>span b{font-weight:500}
.sg-home .header-search{background:#f7f9fb;border-color:#d6e2ea}
.sg-home .nav>nav a{color:#233e53}.sg-home .nav>nav a:hover{color:#067780}
.sg-home .nav>.button.student-entry{background:#a84519;border-color:#a84519;color:#fff;transition:background-color .16s ease,border-color .16s ease}
.sg-home .nav>.button.student-entry:hover{background:#88370f;border-color:#88370f;color:#fff}
.sg-home .nav>.button.student-entry:active{background:#74310f;border-color:#74310f;color:#fff}
.sg-home .nav>.button.student-entry:focus-visible{outline:3px solid #123c55;outline-offset:3px}
.sg-home .hero-main{background:linear-gradient(115deg,#0c2440,#123653);box-shadow:0 8px 25px #14334a0b}
.sg-home .hero-content .eyebrow{color:#b8d9e7}
.sg-home .hero-content p:not(.eyebrow){color:#e0eaf1}
.sg-home .hero-content .button.primary{box-shadow:0 4px 12px #061d301f}
.sg-home .spot-blue{background:linear-gradient(135deg,#164a86,#1b60a8)}
.sg-home .spot-light{background:linear-gradient(135deg,#edf3f4,#e4ecee)}
.sg-home .spot-kicker{letter-spacing:1.25px}
.sg-home .public-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-top:2px;padding-bottom:24px}
.sg-home .public-tool-card{display:flex;align-items:center;gap:18px;padding:24px;border:1px solid #d7e3ea;border-radius:14px;min-width:0;color:#17344d;transition:border-color .2s,box-shadow .2s,transform .2s;background:#fff}
.sg-home .tool-ranking{background:linear-gradient(115deg,#f7faff,#fff)}
.sg-home .tool-community{background:linear-gradient(115deg,#f0f8f6,#fff)}
.sg-home .public-tool-card:hover{border-color:#78aab5;box-shadow:0 8px 22px #1538500b;transform:translateY(-2px)}
.sg-home .public-tool-icon{display:grid;place-items:center;flex-shrink:0;width:52px;height:52px;border-radius:13px;background:#e6eff9;color:#3b608b}
.sg-home .tool-community .public-tool-icon{background:#dff0e9;color:#297460}
.sg-home .public-tool-icon svg{width:27px;height:27px}
.sg-home .public-tool-copy{min-width:0;flex:1}
.sg-home .public-access{display:inline-flex;align-items:center;gap:6px;color:#527180;font-size:10px;font-weight:700;letter-spacing:.65px;text-transform:uppercase}
.sg-home .public-access:before{content:'';width:5px;height:5px;border-radius:50%;background:#468d80}
.sg-home .public-tool-copy h2{font-size:23px;letter-spacing:-.55px;line-height:1.25;margin:7px 0 8px}
.sg-home .public-tool-copy p{font-size:13px;line-height:1.65;margin:0;color:#50687a;max-width:390px}
.sg-home .public-tool-arrow{font-size:22px;color:#467284;flex-shrink:0;align-self:center}
.sg-home .calendar-home{border-radius:12px;border:1px solid #dbe6ed;box-shadow:0 2px 5px #1f405103;margin-top:0}
.sg-home .career-tiles{grid-template-columns:repeat(7,minmax(0,1fr));gap:11px}
.sg-home .career-tiles>a{padding:22px 10px 20px;min-width:0;align-items:center;text-align:center;box-shadow:0 2px 6px #18354703}
.sg-home .career-symbol{position:static;margin-bottom:11px}
.sg-home .career-tiles strong{font-size:12px;line-height:1.4;color:#223c50}
.sg-home .career-tiles small{font-size:10px;line-height:1.5;color:#5b6d7b}
.sg-home .career-tone-6 .career-symbol{background:#e9eef3;color:#526c85}
.sg-home .section-title>span{font-size:12px;color:#5c7182}
.sg-home .catalog-toolbar{border-color:#d9e4eb;box-shadow:0 2px 6px #16374a03}
.sg-home .catalog-toolbar .select-label{border:0;padding:0;background:transparent}
.sg-home .catalog-toolbar select{border-color:#cedce5;border-radius:7px}
.sg-home .catalog-toolbar .searchbox{border-color:#dce5ec;background:#f5f8fb}
.sg-home .results-info{font-size:12px;color:#546b7c}
.sg-home .course-card{border-color:#dce5ec;box-shadow:0 3px 10px #16374a05}
.sg-home .course-body h3{color:#17364d}.sg-home .course-type{color:#356b80;font-size:10px}
.sg-home .course-body>p{color:#536a7b}
.sg-home .empty{background:#edf3f7;border:1px solid #dde7ed;padding:38px 24px}
.sg-home .empty h3{font-size:22px;letter-spacing:-.4px;line-height:1.35}
.sg-home .empty p{font-size:14px;color:#536c7d}
.sg-home .empty-actions{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}
.sg-home .empty-actions>a{font-size:13px;color:#0b6f78;text-decoration:underline;text-underline-offset:4px}
.sg-home .method .eyebrow{color:#8adbd9}
.sg-home .method article p{color:#c4d6e3}
.sg-home .contact-band{background:#edf4f5;color:#17394d;border-top:1px solid #deeaee}
.sg-home .contact-band .eyebrow{color:#096f77}
.sg-home .contact-band p:last-child{color:#4b6677}
.sg-home .contact-actions>a:last-child{color:#285970}
.sg-home .site-footer{padding-top:30px;padding-bottom:24px}
.sg-home .public-channels{padding-bottom:30px;margin-bottom:26px;border-bottom:1px solid #e1e9ee}
.sg-home .channels-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:20px}
.sg-home .channels-heading .eyebrow{margin-bottom:8px;font-size:9px}
.sg-home .channels-heading h2{font-size:24px;letter-spacing:-.6px;margin:0;line-height:1.3}
.sg-home .channels-heading>p{font-size:13px;line-height:1.7;color:#5c7281;max-width:400px;margin:0}
.sg-home .channel-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sg-home .channel-link{display:flex;align-items:center;gap:13px;padding:17px 18px;border:1px solid #d8e4eb;border-radius:10px;background:#fff;min-width:0;transition:border-color .2s,background .2s}
.sg-home .channel-link[href]:hover{background:#f2f8f8;border-color:#79a9b0}
.sg-home .channel-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:10px;background:#edf4f7;color:#375d73;flex-shrink:0}
.sg-home .channel-icon svg{width:23px;height:23px}
.sg-home .channel-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.sg-home .channel-copy strong{font-size:14px;font-weight:700;color:#203f54}
.sg-home .channel-copy small{font-size:11px;color:#5d7382;line-height:1.45}
.sg-home .channel-arrow{margin-left:auto;font-size:18px;color:#527181;flex-shrink:0}
.sg-home .channel-link.is-pending{background:#f5f7f9;border-style:dashed;cursor:default}
.sg-home .channel-link.is-pending .channel-icon{background:#eaf0f3;color:#6b8190}
.sg-home .channel-link.is-pending .channel-copy strong{color:#536b7a}
.sg-home .channel-link.is-pending .channel-copy small{color:#617583}
.sg-home .footer-grid{display:grid;grid-template-columns:180px minmax(0,1fr) auto;align-items:center;gap:22px}
.sg-home .footer-grid .brand img{width:38px;height:38px}
.sg-home .footer-grid .brand>span{font-size:21px}
.sg-home .footer-grid nav{margin:0;justify-content:center;gap:8px 20px;font-size:11px;color:#455e70;min-width:0}
.sg-home .footer-grid>span{font-size:10px;color:#637989;white-space:nowrap}
@media(max-width:1100px){
 .sg-home .public-tool-card{gap:15px;padding:22px 20px}.sg-home .public-tool-icon{width:44px;height:44px}.sg-home .public-tool-copy h2{font-size:21px}.sg-home .public-tool-copy p{font-size:12px}
 .sg-home .career-tiles{grid-template-columns:repeat(12,minmax(0,1fr))}.sg-home .career-tiles>a{grid-column:span 3;padding:18px 12px}.sg-home .career-tiles>a:nth-child(n+5){grid-column:span 4}
 .sg-home .footer-grid{grid-template-columns:180px minmax(0,1fr)}.sg-home .footer-grid nav{justify-content:flex-start}.sg-home .footer-grid>span{grid-column:1/-1}
}
@media(max-width:900px){
 .sg-home .public-tools{gap:14px}.sg-home .public-tool-card{gap:13px;padding:20px 17px}.sg-home .public-tool-icon{width:38px;height:38px;border-radius:10px}.sg-home .public-tool-icon svg{width:23px;height:23px}.sg-home .public-tool-copy h2{font-size:19px}.sg-home .public-tool-arrow{display:none}
 .sg-home .career-tiles{gap:9px}.sg-home .career-tiles strong{font-size:12px}
 .sg-home .channels-heading{gap:20px}.sg-home .channels-heading>p{font-size:12px;max-width:310px}
 .sg-home .channel-list{gap:10px}.sg-home .channel-link{padding:15px 12px;gap:10px}.sg-home .channel-icon{width:32px;height:32px}.sg-home .channel-icon svg{width:20px;height:20px}.sg-home .channel-copy strong{font-size:12px}.sg-home .channel-copy small{font-size:10px}.sg-home .channel-arrow{display:none}
}
@media(max-width:600px){
 .sg-home .public-tools{grid-template-columns:minmax(0,1fr);gap:12px;padding-bottom:20px}.sg-home .public-tool-card{padding:20px;gap:16px}.sg-home .public-tool-icon{width:44px;height:44px}.sg-home .public-tool-copy h2{font-size:21px}.sg-home .public-tool-copy p{font-size:12px}
 .sg-home .career-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.sg-home .career-tiles>a,.sg-home .career-tiles>a:nth-child(n+5){grid-column:span 1}.sg-home .career-tiles>a:last-child{grid-column:1/-1;display:grid;grid-template-columns:44px auto;justify-content:center;column-gap:14px;text-align:left;padding:18px}.sg-home .career-tiles>a:last-child .career-symbol{grid-row:1/3;margin:0}.sg-home .career-tiles>a:last-child small{margin-top:0}
 .sg-home .channels-heading{display:block}.sg-home .channels-heading h2{font-size:23px}.sg-home .channels-heading>p{max-width:none;margin-top:10px;font-size:13px}
 .sg-home .channel-list{grid-template-columns:minmax(0,1fr)}.sg-home .channel-link{padding:16px;gap:14px}.sg-home .channel-icon{width:38px;height:38px}.sg-home .channel-icon svg{width:22px;height:22px}.sg-home .channel-copy strong{font-size:14px}.sg-home .channel-copy small{font-size:11px}.sg-home .channel-arrow{display:block}
 .sg-home .footer-grid{grid-template-columns:minmax(0,1fr);gap:18px}.sg-home .footer-grid nav{font-size:12px;gap:8px 20px}.sg-home .footer-grid>span{font-size:11px}.sg-home .public-channels{padding-bottom:25px}
}
/* A full-width artwork stage; all slides use the supplied image's exact ratio. */
.sg-home .store-hero{grid-template-columns:minmax(0,1fr) 340px}
.sg-home .sg-carousel,.sg-home .sg-carousel.has-user-art{display:block;width:100%;min-width:0;height:auto;min-height:0;max-height:none;padding:0;align-self:start;background:#0c2440}
.sg-home .carousel-stage{position:relative;width:100%;min-width:0;aspect-ratio:1681/936;overflow:hidden}
.sg-home .hero-art-panel{position:absolute;inset:0;margin:0;width:100%;height:100%}
.sg-home .hero-art-panel>a{display:block;width:100%;line-height:0}
.sg-home .hero-art-panel img{display:block;width:100%;max-width:100%;height:auto;margin:0;padding:0}
.sg-home .sg-carousel .hero-content{position:absolute;inset:0 45% 0 0;min-width:0;min-height:0;padding:clamp(18px,3vw,38px);overflow:auto}
.sg-home .sg-carousel .hero-content h1{font-size:clamp(27px,2.9vw,40px);line-height:1.08;margin-bottom:14px;letter-spacing:-1px}
.sg-home .sg-carousel .hero-content .eyebrow{margin-bottom:12px;font-size:10px}
.sg-home .sg-carousel .hero-content>p:not(.eyebrow){margin-bottom:16px;line-height:1.5}
.sg-home .sg-carousel .hero-editorial{position:absolute;inset:0 0 0 55%}
.sg-home .carousel-navigation{display:flex;align-items:center;gap:12px;min-height:56px;padding:6px 10px;background:#fff;border:1px solid #d9e4eb;border-top:0;color:#173d54}
.sg-home .sg-carousel .carousel-controls{position:static;display:flex;flex:1;min-width:0;justify-content:center;gap:12px;flex-wrap:wrap;padding:0;color:#173d54}
.sg-home .sg-carousel .carousel-arrow{position:static;transform:none;flex:none;width:40px;height:44px;min-width:40px;min-height:44px;border:1px solid #cedce6;border-radius:7px;background:#fff;color:#173d54;font:30px/1 Arial,sans-serif;cursor:pointer;padding:0;display:grid;place-items:center}
.sg-home .sg-carousel .carousel-arrow:hover{background:#edf5f7}
.sg-home #slide-pause{font-size:13px;background:#fff;color:#173d54;border:1px solid #cedce6;border-radius:6px;padding:5px 10px;min-height:36px}
.sg-home #slide-dots button{background:#afc3d1;border-color:#7f9bab}
.sg-home #slide-dots button[aria-pressed=true]{background:#0b7380;border-color:#0b7380}
.sg-home #slide-motion-note{font-size:12px;color:#173d54}
@media(max-width:1100px){.sg-home .store-hero{grid-template-columns:minmax(0,1fr) 275px}.sg-home .sg-carousel .hero-content{padding:22px}.sg-home .sg-carousel .book-stack{width:150px;right:22px;top:42px}}
@media(max-width:900px){.sg-home .store-hero{grid-template-columns:minmax(0,1fr)}.sg-home .sg-carousel .hero-content{padding:clamp(18px,4vw,32px)}.sg-home .sg-carousel .hero-content h1{font-size:clamp(25px,4vw,36px)}.sg-home .sg-carousel .book-stack{width:clamp(115px,20vw,175px);right:22px;top:38px}}
@media(max-width:600px){.sg-home .sg-carousel .hero-content{inset:0 35% 0 0;padding:12px 8px 12px 16px}.sg-home .sg-carousel .hero-editorial{inset:0 0 0 65%}.sg-home .sg-carousel .hero-content h1{font-size:clamp(18px,4.8vw,27px);line-height:1.08;margin-bottom:10px;letter-spacing:-.5px}.sg-home .sg-carousel .hero-content .eyebrow{font-size:8px;line-height:1.35;margin-bottom:8px;letter-spacing:.7px}.sg-home .sg-carousel .hero-content>p:not(.eyebrow){display:none}.sg-home .sg-carousel .hero-content .button.primary{font-size:11px;padding:8px 9px;line-height:1.3;gap:4px}.sg-home .sg-carousel .book-stack{width:clamp(70px,20vw,112px);right:14px;top:32px}.sg-home .sg-carousel .book-back{display:none}.sg-home .sg-carousel .hero-calendar{inset:30px 8px auto;padding:12px 8px;transform:none}.sg-home .sg-carousel .hero-calendar strong{font-size:17px}.sg-home .sg-carousel .hero-calendar p{display:none}.sg-home .carousel-navigation{gap:6px;padding:5px 7px}.sg-home .sg-carousel .carousel-controls{gap:7px}.sg-home #slide-motion-note{font-size:11px}.sg-home .sg-carousel .carousel-arrow{width:36px;min-width:36px}.sg-home #slide-pause{font-size:12px;padding:5px 8px}}
/* Separate visible dots from their full-size pointer targets. */
.sg-home #slide-dots{display:flex;justify-content:center;flex-wrap:wrap;gap:4px;max-width:100%}
.sg-home #slide-dots button{flex:none;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:8px;background:radial-gradient(circle,#8ca8ba 5px,transparent 6px)}
.sg-home #slide-dots button[aria-pressed=true]{background:radial-gradient(circle,#0b7380 5px,transparent 6px)}
.sg-home #slide-dots button:hover{background:radial-gradient(circle,#315d73 5px,transparent 6px)}
@media(max-width:600px){.sg-home .carousel-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;row-gap:0}.sg-home .sg-carousel .carousel-controls{display:contents}.sg-home #slide-prev{grid-column:1;grid-row:1}.sg-home #slide-next{grid-column:3;grid-row:1;justify-self:end}.sg-home #slide-pause,.sg-home #slide-motion-note{grid-column:2;grid-row:1;justify-self:center}.sg-home #slide-dots{grid-column:1/-1;grid-row:2;justify-self:center}}
