.contact-info dd a{color:#087e74;font-weight:700;text-decoration:none}.contact-info dd a:hover,.contact-info dd a:focus-visible{color:#045c57;text-decoration:underline}.dm-grid{grid-template-columns:.72fr 1.28fr}.dm-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;align-items:start}.dm-gallery figure{margin:0;border-radius:10px;overflow:hidden;background:#f1ece0;box-shadow:0 9px 24px #18343b1a}.dm-gallery img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top}.dm-gallery figcaption{padding:10px 10px 11px;color:var(--ink);font-size:12px;font-weight:700;text-align:center;line-height:1.35}@media(max-width:800px){.dm-grid{grid-template-columns:1fr}.dm-gallery{max-width:650px;width:100%;margin:auto}}@media(max-width:540px){.dm-gallery{gap:8px}.dm-gallery figcaption{padding:8px 4px;font-size:10px}}
.brand-logo{width:44px;height:38px;object-fit:contain;object-position:center;display:block}.site-footer .brand-logo{filter:brightness(0) invert(1)}
.connect-box{grid-template-columns:1fr}.interview-video{display:grid;grid-template-columns:.7fr 1.3fr;gap:25px;align-items:center;padding:22px 0;border-top:1px solid #70ada4;border-bottom:1px solid #70ada4}.video-copy h3{font-size:22px;margin:0 0 8px}.video-copy p:last-child{font-size:14px;color:#d2ece5;margin:0}.video-frame{aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#102b32}.video-frame iframe{display:block;width:100%;height:100%;border:0}.social-links{max-width:600px}@media(max-width:800px){.interview-video{grid-template-columns:1fr}.social-links{max-width:none}}@media(max-width:540px){.video-copy h3{font-size:19px}}
.video-qr{display:block;margin-top:18px;border-radius:8px;overflow:hidden;box-shadow:0 6px 14px #102b3260}.video-qr img{display:block;width:100%;height:auto}
.brand-monogram{background:var(--teal);font-size:20px;font-family:'Noto Sans TC',sans-serif}.site-footer .brand-monogram,.page-footer .brand-monogram{background:#31786f}.button-on-dark{border-color:#8fc4b8;color:#fff}.qr-callout{display:inline-flex;align-items:center;gap:13px;margin-top:17px;color:#fff;text-decoration:none}.qr-callout b,.qr-callout small{display:block}.qr-callout small{color:#cfe5df;font-size:12px;margin-top:2px}.qr-crop{width:86px;height:86px;overflow:hidden;background:#fff;display:block;border-radius:5px;flex:0 0 auto}.qr-crop img{width:100%;height:100%;object-fit:cover;object-position:right center;display:block}.social-links-light{margin:auto;max-width:680px;grid-template-columns:repeat(3,1fr)}.social-links-light a{color:var(--ink);border-color:var(--line);background:#fff}.social-links-light a b{background:var(--teal);color:#fff}@media(max-width:540px){.social-links-light{grid-template-columns:1fr}.qr-crop{width:72px;height:72px}}
.brand:has(.brand-logo) .brand-logo{display:none}.brand:has(.brand-logo):before{content:'昇';height:38px;width:38px;border-radius:11px;background:var(--teal);color:#fff;display:grid;place-items:center;font-weight:800;font-size:20px}.site-footer .brand:has(.brand-logo):before{background:#31786f}
.hero,.page-hero,.course-index-hero{position:relative;isolation:isolate}.hero:before,.page-hero:before,.course-index-hero:before{content:'∑  ·  π  ·  △  ·  H₂O';position:absolute;right:6%;bottom:18px;color:var(--teal);opacity:.16;font:700 clamp(17px,2vw,25px) Outfit,sans-serif;letter-spacing:.22em;z-index:-1}.section-heading:after,.page-copy h2:after{content:'';display:block;width:52px;height:2px;margin-top:15px;background:linear-gradient(90deg,var(--gold),#a8d2c5);border-radius:99px}.course-card,.path-card,.contact-panel,.news-feature,.dm-feature{position:relative}.course-card:before,.path-card:before{content:'⌁';position:absolute;right:19px;top:14px;color:var(--gold);opacity:.6;font-size:24px}.course-card.junior:before{color:#91cabb}.course-detail-main{position:relative}.course-detail-main:before{content:'f(x)  ∿  Δ';position:absolute;right:3%;top:-30px;color:var(--teal);font:700 14px Outfit,sans-serif;letter-spacing:.2em;opacity:.35}.course-detail-main img.course-atlas{height:410px;object-fit:cover;object-position:center;background:linear-gradient(135deg,#fff5ea,#f0edf8);box-shadow:15px 16px 0 #e5ddd0}.team-note{border:1px solid #507079;position:relative;overflow:hidden}.team-note:after{content:'∑';position:absolute;right:28px;bottom:-36px;color:#91cabb;opacity:.18;font:700 130px Outfit,sans-serif}.page-section.alt{position:relative;background-image:linear-gradient(rgba(22,114,109,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(22,114,109,.055) 1px,transparent 1px);background-size:32px 32px}.ig-card:after{content:'＋';margin-top:16px;color:var(--gold);font-size:18px}@media(max-width:800px){.course-detail-main img.course-atlas{height:330px}.hero:before,.page-hero:before,.course-index-hero:before{right:4%;bottom:10px;font-size:15px}.course-detail-main:before{top:-18px}}@media(max-width:540px){.course-detail-main img.course-atlas{height:250px}.page-section.alt{background-size:24px 24px}}
.course-index-hero{padding:90px 0 70px;background:#e8f1ed}.course-index-hero h1{font-size:clamp(34px,5vw,58px);line-height:1.28;margin:0 0 15px}.course-index-hero h1 em{font-style:normal;color:var(--teal)}.course-index-hero p:last-child{color:var(--muted);max-width:620px}.course-group{padding:8px 0 64px}.course-group h2{font-size:30px;margin-bottom:20px}.course-list{display:grid;grid-template-columns:1fr 1fr;gap:13px}.course-list a{display:grid;grid-template-columns:43px 1fr auto;column-gap:12px;align-items:center;min-height:94px;padding:17px 18px;background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink);text-decoration:none;transition:transform .18s,box-shadow .18s}.course-list a:hover{transform:translateY(-3px);box-shadow:0 10px 22px #18343b14}.course-list span{grid-row:span 2;color:var(--teal);font:700 18px Outfit,sans-serif}.course-list strong{font-size:17px}.course-list small{color:var(--muted);font-size:12px}.course-list b{grid-column:3;grid-row:span 2;color:var(--teal);font-size:20px}.course-detail{min-height:100vh;background:var(--cream);padding:30px min(7vw,100px) 70px}.course-back{color:var(--teal);font-size:14px;font-weight:700;text-decoration:none}.course-detail-main{width:min(1080px,100%);margin:42px auto 65px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.course-detail-main h1{font-size:clamp(37px,5vw,58px);line-height:1.18;margin:0 0 10px}.course-detail-main>div>p:not(.eyebrow):not(.course-focus){color:var(--muted);font-size:17px}.course-focus{color:var(--teal);font-weight:800;margin-bottom:23px}.course-detail-main ul{list-style:none;padding:0;margin:25px 0 30px}.course-detail-main li{margin:10px 0;font-size:15px}.course-detail-main li:before{content:'✓';color:var(--teal);font-weight:800;margin-right:10px}.course-detail-main img{width:100%;border-radius:18px;background:#e8f1ed;box-shadow:15px 16px 0 #cbe1da}.team-note{width:min(1080px,100%);margin:auto;padding:42px;background:var(--navy);color:#fff;border-radius:16px}.team-note .eyebrow{color:#91cabb}.team-note h2{font-size:28px;margin-bottom:7px}.team-note p{color:#c8d9d5;margin-bottom:18px}.team-note a{color:#b8e4d9;font-weight:700}
@media(max-width:800px){.course-nav{display:flex}.course-list{grid-template-columns:1fr}.course-detail{padding:24px 24px 55px}.course-detail-main{grid-template-columns:1fr;gap:32px;margin:36px auto 48px}.course-detail-main img{order:-1}.team-note{padding:30px}}@media(max-width:540px){.course-nav{gap:13px}.course-nav a{font-size:12px}.course-nav .nav-cta{padding:7px 10px}.course-index-hero{padding:62px 0 48px}.course-list a{grid-template-columns:32px 1fr auto;padding:14px}.course-list strong{font-size:15px}.course-detail-main>div>p:not(.eyebrow):not(.course-focus){font-size:15px}}

/* Official school logo: used for both the refreshed pages and the older course layout. */
.brand-monogram{
  width:42px;
  height:42px;
  border-radius:10px;
  background:url("assets/shengda-logo-official.jpg") center / cover no-repeat !important;
  box-shadow:0 4px 12px rgba(15,40,77,.22);
  font-size:0 !important;
}
.site-footer .brand-monogram,.page-footer .brand-monogram{
  background:url("assets/shengda-logo-official.jpg") center / cover no-repeat !important;
}
.brand:has(.brand-logo):before{
  content:"";
  background:url("assets/shengda-logo-official.jpg") center / cover no-repeat !important;
  box-shadow:0 4px 12px rgba(15,40,77,.22);
}

/* Each course now receives one complete scene.  Avoid sprite cropping, artificial
   background panels, and any visual bleed from a neighbouring course image. */
.course-detail-main img.course-scene{
  height:410px;
  object-fit:contain;
  object-position:center;
  background:transparent;
  box-shadow:none;
}
@media(max-width:800px){.course-detail-main img.course-scene{height:330px}}
@media(max-width:540px){.course-detail-main img.course-scene{height:250px}}

/* Single-page course guide: light mathematical structure without visual clutter. */
.course-hero-lines{overflow:hidden;background-color:#e8f1ed;background-image:linear-gradient(90deg,rgba(23,111,106,.08) 1px,transparent 1px),linear-gradient(rgba(23,111,106,.08) 1px,transparent 1px);background-size:46px 46px}.course-hero-lines:after{content:'π  ·  Δ  ·  √  ·  H₂O';position:absolute;right:8%;top:25%;color:#d09b43;font:700 clamp(18px,2.5vw,28px) Outfit,sans-serif;letter-spacing:.32em;opacity:.48}.course-overview{padding:78px 0;position:relative}.course-overview:before{content:'';position:absolute;left:0;right:0;top:40px;height:1px;background:linear-gradient(90deg,transparent 5%,#b5d2c8 5%,#b5d2c8 25%,transparent 25%,transparent 75%,#e2c688 75%,#e2c688 95%,transparent 95%);opacity:.8}.course-overview-alt{background:#f6f2e9;background-image:radial-gradient(circle at 12% 18%,rgba(208,155,67,.12) 0 2px,transparent 2.5px),radial-gradient(circle at 89% 45%,rgba(23,111,106,.12) 0 2px,transparent 2.5px);background-size:37px 37px,53px 53px}.course-overview-heading{max-width:680px;margin-bottom:34px}.course-overview-heading h2{font-size:clamp(30px,4vw,42px);margin:8px 0}.course-overview-heading>p:last-child{color:var(--muted);margin:0}.course-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.course-expanded{display:grid;grid-template-columns:1.14fr .86fr;gap:15px;min-height:330px;padding:25px;background:rgba(255,255,255,.9);border:1px solid #cfddd7;border-radius:16px;position:relative;overflow:hidden}.course-expanded:after{content:'';position:absolute;right:-30px;bottom:-30px;width:125px;height:125px;border:1px solid rgba(23,111,106,.15);border-radius:50%}.course-expanded:nth-child(even):after{border-color:rgba(208,155,67,.25)}.course-expanded-copy{position:relative;z-index:1}.course-number{color:var(--teal);font:700 17px Outfit,sans-serif;margin:0}.course-expanded h3{font-size:23px;margin:7px 0 2px}.course-tag{color:var(--teal);font-size:13px;font-weight:800;margin:0 0 13px}.course-expanded-copy>p:not(.course-number):not(.course-tag){font-size:14px;line-height:1.75;color:var(--muted);margin:0}.course-expanded ul{list-style:none;padding:0;margin:15px 0 0}.course-expanded li{font-size:13px;margin:6px 0}.course-expanded li:before{content:'✓';color:var(--teal);font-weight:800;margin-right:8px}.course-expanded img{align-self:center;width:100%;height:220px;object-fit:contain;position:relative;z-index:1}.chinese-course{display:grid;grid-template-columns:1.3fr .7fr;gap:25px;align-items:center;margin-top:28px;padding:36px;background:#12343c;color:#fff;border-radius:17px;position:relative;overflow:hidden}.chinese-course:before{content:'文  ·  讀  ·  思';position:absolute;right:-9px;top:18px;color:#8fc4b8;opacity:.17;font:700 72px Outfit,sans-serif;letter-spacing:.08em}.chinese-course-copy{position:relative;z-index:1}.chinese-course .eyebrow{color:#9dd4c8}.chinese-course h3{font-size:31px;margin:6px 0}.chinese-course p{color:#d8e7e2;font-size:14px;line-height:1.8}.chinese-course .chinese-lead{font-size:17px;color:#f3cd7b;font-weight:800;margin:0}.chinese-levels{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:19px}.chinese-levels section{padding:16px;border:1px solid rgba(174,215,204,.3);border-radius:10px;background:rgba(255,255,255,.05)}.chinese-levels h4{font-size:17px;margin:0}.chinese-levels p{font-size:13px;margin:7px 0 0}.chinese-course>img{position:relative;z-index:1;width:100%;max-height:280px;object-fit:contain}.course-contact-note{padding:20px 0 0;margin:0;text-align:center;color:var(--muted);font-size:14px}.course-contact-note a{color:var(--teal);font-weight:800}@media(max-width:900px){.course-overview-grid{grid-template-columns:1fr}.course-expanded{grid-template-columns:1.2fr .8fr}.course-hero-lines:after{right:2%;top:auto;bottom:15px}.chinese-course{grid-template-columns:1fr}.chinese-course>img{max-height:240px}}@media(max-width:600px){.course-overview{padding:58px 0}.course-overview:before{top:28px}.course-expanded{grid-template-columns:1fr;padding:22px}.course-expanded img{height:205px;order:-1}.chinese-course{padding:26px 22px}.chinese-course h3{font-size:27px}.chinese-levels{grid-template-columns:1fr}.course-hero-lines{background-size:32px 32px}.course-hero-lines:after{font-size:13px}}

/* Course detail pages no longer repeat a second, dark teaching-team panel. */
.course-detail .team-note{display:none}.course-context{margin:15px 0 0;color:var(--teal)!important;font-weight:800;line-height:1.7;padding:12px 15px;border-left:3px solid var(--gold);background:linear-gradient(90deg,#fff5e7,transparent);border-radius:0 8px 8px 0}
.chinese-tutoring-page .chinese-intro{margin-bottom:34px}.chinese-programs{width:min(1080px,100%);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:22px}.chinese-program-card{position:relative;padding:34px 32px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 28px #18343b0d}.chinese-program-card.featured{background:#fffaf0;border-color:#e5c786}.chinese-program-card>.number{display:block;margin-bottom:12px;color:var(--gold);font:700 18px Outfit,sans-serif}.chinese-program-card h2{margin:4px 0 16px;font-size:30px;color:var(--ink)}.chinese-program-card>p:not(.eyebrow){color:var(--muted);line-height:1.85}.chinese-program-card ul{list-style:none;padding:0;margin:22px 0 0}.chinese-program-card li{margin:9px 0;font-size:15px}.chinese-program-card li:before{content:'✓';margin-right:10px;color:var(--teal);font-weight:800}@media(max-width:800px){.chinese-programs{grid-template-columns:1fr}.chinese-program-card{padding:28px 24px}}


