/* Shared navigation and additions to the existing light-blue website. */
:root { --sg-ink:#1e293b; --sg-muted:#52657b; --sg-blue:#1677bb; --sg-cyan:#0891b2; --sg-line:#d7e8f4; --sg-pale:#eff8ff; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
.sg-page { margin:0; background:#f0f9ff; color:var(--sg-ink); font-family:Inter,Arial,sans-serif; }
.sg-page main { flex:1; }
.sg-page h1,.sg-page h2,.sg-page h3,.sg-page p,.sg-page dl,.sg-page dd { margin:0; }
.sg-page a,.sg-nav a,.sg-footer a,.sg-section a { text-decoration:none; }
.sg-container { width:100%; max-width:1280px; padding-inline:32px; margin-inline:auto; }
.sg-skip { position:fixed; top:8px; left:16px; z-index:100; padding:12px 18px; background:#fff; color:#075985; border:2px solid #0284c7; border-radius:10px; transform:translateY(-150%); }
.sg-skip:focus { transform:none; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #0284c7; outline-offset:5px; }
.sg-nav { position:fixed; inset:0 0 auto; z-index:60; min-height:80px; border-bottom:1px solid var(--sg-line); background:rgba(255,255,255,.94); backdrop-filter:blur(16px); font-family:Inter,Arial,sans-serif; }
.sg-nav-inner { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.sg-brand { display:inline-block; font-size:clamp(18px,2.2vw,29px); font-weight:900; letter-spacing:.025em; line-height:1.15; color:#148ab7; background:linear-gradient(110deg,#4799f6,#089bb8); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.sg-navigation { display:flex; align-items:center; gap:27px; }
.sg-navigation a { color:#52657b; font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:.035em; padding:28px 0 24px; border-bottom:3px solid transparent; white-space:nowrap; }
.sg-navigation a:hover,.sg-navigation a[aria-current] { color:#147cbc; border-bottom-color:#39b8e7; }
.sg-menu { font-family:inherit; align-items:center; gap:10px; border:1px solid var(--sg-line); border-radius:12px; background:#fff; padding:9px 12px; color:#075985; font-weight:800; font-size:13px; cursor:pointer; }
.sg-menu:not([hidden]) { display:none; }
.sg-footer { background:#fff; padding:64px 0 28px; border-top:1px solid var(--sg-line); font-family:Inter,Arial,sans-serif; }
.sg-footer-top { display:flex; justify-content:space-between; gap:64px; padding-bottom:48px; }
.sg-footer-top p { margin:18px 0 0; max-width:420px; color:var(--sg-muted); font-size:14px; line-height:1.8; }
.sg-footer nav { display:flex; flex-wrap:wrap; align-content:flex-start; gap:24px; padding-top:6px; }
.sg-footer nav a { color:var(--sg-ink); font-size:14px; font-weight:600; }
.sg-footer a:hover { color:var(--sg-blue); }
.sg-footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:24px; border-top:1px solid #e7f0f7; padding-top:24px; font-size:12px; color:var(--sg-muted); }
.sg-footer-bottom div { display:flex; flex-wrap:wrap; gap:20px; }
.sg-footer-bottom a { color:inherit; }
.sg-gradient { color:#198fbc; background:linear-gradient(105deg,#4799f6,#08a2b6); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.sg-section { padding:104px 0; }
.sg-section h2,.sg-page h2 { font-size:clamp(32px,3.8vw,52px); font-weight:900; letter-spacing:-.045em; line-height:1.13; color:var(--sg-ink); margin:0; }
.sg-eyebrow { margin:0 0 22px !important; color:#087ba7; text-transform:uppercase; font-weight:800; font-size:11px; line-height:1.6; letter-spacing:.17em; }
.sg-section p,.sg-intro { color:var(--sg-muted); font-size:16px; line-height:1.8; }
.sg-heading-row { display:flex; justify-content:space-between; align-items:flex-end; gap:64px; margin-bottom:48px; }
.sg-heading-row > p { max-width:350px; margin:0; }
.sg-text-link { display:inline-flex; gap:24px; align-items:center; color:#0877a2; font-size:14px; font-weight:800; padding:12px 0; border-bottom:1px solid #9acee0; }
.sg-text-link:hover { color:#075985; border-color:#075985; }
.sg-button { display:inline-flex; align-items:center; justify-content:center; gap:24px; padding:16px 24px; border-radius:100px; background:linear-gradient(110deg,#438ff1,#0ca3c0); color:#fff; font-weight:800; font-size:14px; line-height:1.5; box-shadow:0 8px 20px #87cde02e; transition:transform .2s; }
.sg-button:hover { transform:translateY(-2px); }
.sg-button-light { color:#075985; background:#fff; box-shadow:none; }
/* Home: an interactive reading panel, an open process line, and compact FAQ. */
.sg-play-notes { background:#f0f9ff; }
.sg-notes { background:#fff; border:1px solid var(--sg-line); border-radius:32px; overflow:hidden; display:grid; grid-template-columns:230px 1fr; }
.sg-tabs { padding:32px 22px; background:#e8f5ff; display:flex; flex-direction:column; gap:12px; }
.sg-tabs button { background:none; border:1px solid transparent; display:flex; justify-content:space-between; align-items:center; padding:21px; text-align:left; font:800 18px Inter,Arial,sans-serif; color:#52657b; border-radius:16px; cursor:pointer; }
.sg-tabs button[aria-selected="true"] { background:#fff; border-color:#c3e4f3; color:#0a79a7; box-shadow:0 8px 20px #4799f60d; }
.sg-tabs button:hover { color:#087ba7; }
.sg-note-panel { display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:44px; padding:52px; min-height:370px; }
.sg-note-panel h3 { font-size:clamp(26px,2.7vw,36px); font-weight:900; line-height:1.16; letter-spacing:-.035em; margin:0 0 22px; color:var(--sg-ink); }
.sg-note-panel p { margin:0; font-size:15px; }
.sg-note-panel .sg-eyebrow { font-size:10px; }
.sg-note-art { min-height:220px; position:relative; display:flex; align-items:center; justify-content:center; }
.sg-art-clarity span { display:flex; align-items:center; justify-content:center; width:76px; height:98px; border-radius:18px; font-size:54px; font-weight:900; position:absolute; box-shadow:0 12px 30px #449cd322; border:3px solid #fff; }
.sg-art-clarity span:nth-child(1) { background:#cbe9ff; color:#368fe0; transform:translate(-47px,30px) rotate(-13deg); }
.sg-art-clarity span:nth-child(2) { background:#89d5ec; color:#075985; transform:translate(0,-38px) rotate(7deg); }
.sg-art-clarity span:nth-child(3) { background:#d9f6ed; color:#138c84; transform:translate(51px,33px) rotate(14deg); }
.sg-art-rhythm { gap:10px; }
.sg-art-rhythm i { width:22px; background:linear-gradient(#76c8fb,#0f9cb8); border-radius:50px; height:65px; }
.sg-art-rhythm i:nth-child(2),.sg-art-rhythm i:nth-child(4) { height:130px; }
.sg-art-rhythm i:nth-child(3) { height:190px; }
.sg-art-delight > span { color:#21b1cd; font-size:200px; line-height:1; }
.sg-art-delight i { position:absolute; background:#b9e0fb; width:30px; height:30px; border-radius:50%; right:0; top:22px; }
.sg-art-delight i:last-child { left:5px; top:auto; bottom:20px; background:#7fe0d0; width:18px; height:18px; }
.sg-process { background:#fff; }
.sg-process-heading { max-width:670px; margin:0 auto 68px; text-align:center; }
.sg-process-heading > p:last-child { max-width:540px; margin:24px auto 0; }
.sg-process-path { padding:0; margin:0 0 36px; list-style:none; display:grid; grid-template-columns:repeat(4,1fr); gap:42px; position:relative; }
.sg-process-path::before { content:""; position:absolute; left:28px; right:28px; top:27px; border-top:2px dashed #c4e9f5; }
.sg-process-path li { position:relative; }
.sg-step { display:flex; width:56px; height:56px; align-items:center; justify-content:center; border-radius:50%; background:#fff; border:2px solid #c4e9f5; color:#0887b2; font-weight:800; margin-bottom:28px; }
.sg-process-path h3 { font-size:19px; font-weight:800; letter-spacing:-.025em; margin:0 0 14px; color:var(--sg-ink); }
.sg-process-path p { font-size:14px; margin:0; }
.sg-process .sg-text-link { display:table; margin:12px auto 0; }
.sg-process .sg-text-link span { margin-left:16px; }
.sg-home-faq { background:#e5f5fb; }
.sg-faq-layout { display:grid; grid-template-columns:1fr 1.4fr; gap:112px; }
.sg-faq-aside > p:not(.sg-eyebrow) { max-width:300px; margin:24px 0 30px; }
.sg-faq-list details { border-bottom:1px solid #bcdce9; }
.sg-faq-list details:first-child { border-top:1px solid #bcdce9; }
.sg-faq-list summary { display:flex; justify-content:space-between; gap:24px; cursor:pointer; padding:25px 0; color:#243e55; font-size:16px; font-weight:800; line-height:1.6; list-style:none; }
.sg-faq-list summary::-webkit-details-marker,.sg-role summary::-webkit-details-marker { display:none; }
.sg-faq-list summary span { font-size:25px; font-weight:400; flex-shrink:0; line-height:1; margin-top:3px; }
.sg-faq-list details[open] summary span { transform:rotate(45deg); }
.sg-faq-list details > div { padding:0 38px 25px 0; }
.sg-faq-list details p { margin:0; font-size:15px; }
.sg-faq-list details a { color:#075985; text-decoration:underline; text-underline-offset:3px; }
/* About: an open company introduction, mission essay, capability ledger and values. */
.sg-about-hero { padding:155px 0 0; background:linear-gradient(140deg,#f5faff,#e6f7fb); }
.sg-page h1 { font-size:clamp(42px,5.5vw,74px); line-height:1.1; letter-spacing:-.055em; font-weight:900; color:var(--sg-ink); }
.sg-about-opening { display:grid; grid-template-columns:1.6fr 1fr; gap:80px; align-items:center; padding:12px 0 68px; }
.sg-intro { max-width:675px; margin-top:30px !important; font-size:18px; }
.sg-outlook { position:relative; height:330px; background:#d6eefb; border-radius:190px 190px 28px 28px; overflow:hidden; isolation:isolate; }
.sg-outlook::after { content:""; position:absolute; width:560px; height:320px; left:-80px; bottom:-195px; background:#fff9; border-radius:50%; z-index:-1; }
.sg-sun { position:absolute; width:160px; height:160px; border-radius:50%; background:linear-gradient(140deg,#70c4f4,#5cced4); top:53px; left:50%; transform:translateX(-50%); box-shadow:0 0 0 30px #ebfaff66,0 0 0 60px #ecfaff44; z-index:-2; }
.sg-outlook-caption { position:absolute; bottom:38px; left:0; right:0; text-align:center; font-size:15px; line-height:1.65; font-weight:800; color:#347da0; }
.sg-spark { position:absolute; right:42px; top:63px; color:#fff; font-size:43px; }
.sg-company-strip { display:grid; grid-template-columns:1fr 1fr 1.3fr; border-top:1px solid #cfe4f1; padding:30px 0; gap:30px; }
.sg-company-strip dt { color:#5b7990; font-size:10px; font-weight:800; letter-spacing:.13em; margin-bottom:10px; }
.sg-company-strip dd { color:#234a62; font-size:14px; font-weight:600; line-height:1.6; }
.sg-purpose { background:#fff; }
.sg-purpose > div { display:grid; grid-template-columns:1fr 2.25fr; gap:80px; }
.sg-purpose-label > span { display:block; font-size:96px; line-height:1; color:#a6deef; margin-top:52px; }
.sg-purpose-copy h2 { font-size:clamp(34px,4.5vw,62px); }
.sg-purpose-copy > p { max-width:630px; margin-top:30px; }
.sg-capabilities { background:#eaf7fd; }
.sg-capability-layout { display:grid; grid-template-columns:1fr 1.15fr; gap:100px; }
.sg-capability-intro > p:not(.sg-eyebrow) { max-width:340px; margin:25px 0; }
.sg-capability-list article { display:flex; gap:28px; padding:27px 0; border-top:1px solid #c2deed; }
.sg-capability-list article:last-child { border-bottom:1px solid #c2deed; }
.sg-capability-list article > span { color:#168cbb; font-size:12px; padding-top:5px; font-weight:800; }
.sg-capability-list h3 { font-size:21px; font-weight:800; letter-spacing:-.025em; }
.sg-capability-list p { font-size:15px; margin-top:12px; }
.sg-culture { background:#fff; }
.sg-culture-row { display:flex; justify-content:space-between; align-items:center; gap:70px; padding:38px 0; border-bottom:1px solid var(--sg-line); }
.sg-culture-row h2 { font-size:clamp(34px,5vw,66px); }
.sg-culture-row h2 em { color:#20a5c8; font-style:normal; }
.sg-culture-row:nth-child(3) h2 em { color:#438ff1; }
.sg-culture-row:nth-child(4) h2 em { color:#10968e; }
.sg-culture-row p { max-width:355px; font-size:15px; }
.sg-company-address { display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; padding-top:35px; color:#637b8e; font-size:12px; line-height:1.7; }
.sg-company-address a { color:#087ba7; }
/* Join Us: broad typography and expandable role briefs. */
.sg-join-hero { background:radial-gradient(ellipse at 85% 25%,#dcf5f8,transparent 50%),#f0f9ff; padding:150px 0 0; }
.sg-join-opening { display:grid; grid-template-columns:1.4fr 1fr; align-items:end; gap:110px; padding:12px 0 64px; }
.sg-join-note > p { color:var(--sg-muted); font-size:17px; line-height:1.8; margin:15px 0 28px; max-width:365px; }
.sg-join-star { display:block; font-size:95px; color:#67cadd; line-height:1; }
.sg-discipline-line { display:flex; align-items:center; gap:32px; color:#416d86; font-weight:800; padding:30px 0; border-top:1px solid #cfe4f1; font-size:14px; }
.sg-discipline-line span[aria-hidden] { color:#7fbcd4; }
.sg-roles { background:#fff; }
.sg-role-list { border-top:1px solid var(--sg-line); }
.sg-role { border-bottom:1px solid var(--sg-line); scroll-margin-top:105px; }
.sg-role summary { cursor:pointer; list-style:none; display:grid; grid-template-columns:55px 1fr 40px; align-items:center; gap:25px; padding:35px 30px; }
.sg-role[open] { background:#f5fbff; }
.sg-role-number { align-self:start; padding-top:5px; font-size:12px; font-weight:800; color:#1787b3; }
.sg-role-heading small { display:block; text-transform:uppercase; font-size:10px; letter-spacing:.12em; font-weight:800; color:#41839f; margin-bottom:10px; }
.sg-role-heading strong { display:block; font-size:30px; letter-spacing:-.04em; font-weight:800; }
.sg-role-heading > span { display:block; font-size:15px; color:var(--sg-muted); line-height:1.7; margin-top:10px; }
.sg-role summary > b { font-size:28px; font-weight:400; color:#1794bf; background:#e0f3fc; border-radius:50%; width:40px; height:40px; display:flex; align-items:center; justify-content:center; }
.sg-role[open] summary > b { transform:rotate(45deg); }
.sg-role-content { padding:0 94px 38px 110px; max-width:970px; }
.sg-role-content h3 { font-size:12px; letter-spacing:.07em; text-transform:uppercase; font-weight:800; }
.sg-role-content ul { color:var(--sg-muted); font-size:15px; line-height:1.8; margin:18px 0; padding-left:20px; }
.sg-role-content li { padding-left:6px; margin:10px 0; }
.sg-introduce { background:#e9f7fb; }
.sg-introduce-inner { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:120px; }
.sg-introduce-inner > div > p:not(.sg-eyebrow) { max-width:405px; margin:24px 0 28px; }
.sg-introduce ol { margin:0; padding:0; list-style:none; }
.sg-introduce li { display:flex; gap:24px; padding:26px 0; border-bottom:1px solid #c4dfeb; }
.sg-introduce li > span { width:42px; height:42px; flex-shrink:0; border-radius:50%; background:#fff; display:flex; align-items:center; justify-content:center; color:#1685b2; font-size:12px; font-weight:800; }
.sg-introduce li h3 { font-size:18px; font-weight:800; }
.sg-introduce li p { font-size:14px; margin-top:10px; }
@media (min-width:640px) and (max-width:1023px) { .sg-container { padding-inline:24px; } }
@media (max-width:1050px) {
 .sg-navigation { gap:19px; } .sg-brand { font-size:23px; }
 .sg-note-panel { padding:36px; gap:24px; } .sg-notes { grid-template-columns:185px 1fr; }
 .sg-tabs { padding:28px 12px; } .sg-tabs button { padding:18px 15px; }
 .sg-about-opening,.sg-join-opening { gap:40px; } .sg-outlook { height:290px; }
 .sg-faq-layout,.sg-capability-layout,.sg-introduce-inner { gap:60px; }
 .sg-culture-row { gap:32px; } .sg-culture-row p { max-width:300px; }
 .sg-footer-top { gap:40px; } .sg-footer nav { max-width:300px; }
}
@media (max-width:899px) {
 .sg-nav-inner { flex-wrap:wrap; gap:0; } .sg-nav-inner > .sg-brand { max-width:calc(100% - 85px); }
 .sg-menu:not([hidden]) { display:inline-flex; }
 .sg-navigation { width:100%; flex-wrap:wrap; gap:0; padding:8px 0 15px; border-top:1px solid var(--sg-line); }
 .sg-navigation a { padding:14px 16px; border:none; }
 .sg-js .sg-navigation { display:none; } .sg-js .sg-nav.sg-menu-open .sg-navigation { display:flex; }
 .sg-navigation a[aria-current] { background:#eaf6fc; border-radius:10px; }
 .sg-section { padding:78px 0; }
 .sg-heading-row { gap:40px; } .sg-heading-row > p { max-width:275px; font-size:15px; }
 .sg-notes { display:block; } .sg-tabs { flex-direction:row; padding:16px; } .sg-tabs button { flex:1; }
 .sg-note-panel { min-height:330px; }
 .sg-process-path { gap:26px; } .sg-process-path h3 { font-size:16px; }
 .sg-process-path p { font-size:13px; }
 .sg-about-opening { grid-template-columns:1.3fr 1fr; gap:32px; } .sg-intro { font-size:16px; }
 .sg-company-strip { gap:20px; } .sg-company-strip dd { font-size:12px; }
 .sg-purpose > div { gap:35px; grid-template-columns:1fr 2.5fr; }
 .sg-capability-layout { grid-template-columns:1fr 1.25fr; gap:40px; }
 .sg-culture-row { align-items:flex-start; } .sg-culture-row p { max-width:275px; font-size:14px; }
 .sg-join-opening { grid-template-columns:1.2fr 1fr; } .sg-join-note > p { font-size:15px; }
 .sg-join-star { font-size:65px; } .sg-join-note .sg-button { padding:14px 18px; font-size:12px; }
 .sg-footer-bottom { align-items:flex-start; flex-direction:column; }
}
@media (max-width:639px) {
 .sg-container { padding-inline:20px; } .sg-nav-inner { min-height:74px; } .sg-nav { min-height:74px; }
 .sg-brand { font-size:18px; } .sg-nav .sg-brand { font-size:17px; letter-spacing:0; }
 .sg-menu { padding:9px; gap:7px; font-size:12px; } .sg-navigation a { font-size:12px; padding:13px 12px; }
 .sg-section { padding:64px 0; } .sg-eyebrow { margin-bottom:18px !important; font-size:10px; }
 .sg-heading-row { display:block; margin-bottom:32px; } .sg-heading-row > p { margin-top:22px; max-width:100%; }
 .sg-tabs { padding:10px; gap:5px; } .sg-tabs button { font-size:13px; padding:13px 10px; border-radius:10px; } .sg-tabs button span { display:none; }
 .sg-notes { border-radius:24px; } .sg-note-panel { grid-template-columns:1fr; gap:15px; padding:25px 25px 32px; }
 .sg-note-art { min-height:185px; } .sg-note-panel h3 { font-size:29px; } .sg-note-panel p { font-size:14px; }
 .sg-note-panel .sg-eyebrow { font-size:9px; } .sg-art-rhythm i:nth-child(3) { height:160px; }
 .sg-art-delight > span { font-size:175px; } .sg-art-delight i { right:32px; }
 .sg-process-heading { text-align:left; margin-bottom:35px; } .sg-process-heading > p:last-child { margin-top:22px; }
 .sg-process-path { grid-template-columns:1fr; gap:26px; } .sg-process-path::before { left:23px; right:auto; top:0; bottom:0; border-top:0; border-left:2px dashed #c4e9f5; }
 .sg-process-path li { padding-left:68px; } .sg-step { width:48px; height:48px; position:absolute; left:0; top:0; }
 .sg-process-path h3 { font-size:18px; margin:0 0 10px; } .sg-process-path p { font-size:14px; }
 .sg-process .sg-text-link { display:flex; font-size:13px; margin-left:0; }
 .sg-faq-layout { grid-template-columns:1fr; gap:38px; } .sg-faq-aside > p:not(.sg-eyebrow) { margin:20px 0 24px; }
 .sg-faq-list summary { font-size:15px; padding:22px 0; gap:18px; }
 .sg-faq-list details > div { padding-right:10px; } .sg-faq-list details p { font-size:14px; }
 .sg-about-hero,.sg-join-hero { padding-top:125px; } .sg-page h1 { font-size:42px; }
 .sg-about-opening { grid-template-columns:1fr; gap:35px; padding:0 0 35px; }
 .sg-intro { margin-top:24px !important; font-size:16px; }
 .sg-outlook { width:100%; max-width:330px; height:250px; margin:auto; border-radius:170px 170px 24px 24px; }
 .sg-sun { width:125px; height:125px; top:37px; } .sg-outlook-caption { bottom:25px; font-size:13px; }
 .sg-company-strip { grid-template-columns:1fr; gap:20px; padding:26px 0; } .sg-company-strip div { display:grid; grid-template-columns:120px 1fr; gap:18px; }
 .sg-company-strip dt { font-size:9px; line-height:1.6; margin:0; } .sg-company-strip dd { font-size:12px; }
 .sg-purpose > div { display:block; } .sg-purpose-label > span { display:none; } .sg-purpose-copy h2 { font-size:35px; }
 .sg-purpose-copy > p { font-size:15px; margin-top:23px; }
 .sg-capability-layout { grid-template-columns:1fr; gap:35px; } .sg-capability-list article { gap:20px; padding:24px 0; }
 .sg-capability-list h3 { font-size:19px; } .sg-capability-list p { font-size:14px; }
 .sg-culture-row { display:block; padding:26px 0; } .sg-culture-row h2 { font-size:38px; }
 .sg-culture-row p { max-width:none; margin-top:18px; } .sg-company-address { font-size:11px; }
 .sg-join-opening { grid-template-columns:1fr; gap:25px; padding:0 0 36px; }
 .sg-join-note { position:relative; } .sg-join-star { display:none; } .sg-join-note > p { margin:0 0 22px; }
 .sg-discipline-line { gap:11px; justify-content:space-between; font-size:10px; padding:24px 0; }
 .sg-role summary { grid-template-columns:22px 1fr 30px; gap:12px; padding:25px 12px; }
 .sg-role-heading strong { font-size:23px; } .sg-role-heading > span { font-size:13px; }
 .sg-role-heading small { font-size:9px; } .sg-role-number { font-size:10px; } .sg-role summary > b { width:30px; height:30px; font-size:23px; }
 .sg-role-content { padding:0 22px 30px 46px; } .sg-role-content ul { font-size:14px; } .sg-role-content .sg-text-link { gap:12px; font-size:12px; }
 .sg-introduce-inner { grid-template-columns:1fr; gap:25px; } .sg-introduce li { gap:18px; } .sg-introduce li h3 { font-size:17px; }
 .sg-footer { padding:42px 0 25px; } .sg-footer-top { flex-direction:column; gap:30px; padding-bottom:30px; }
 .sg-footer nav { max-width:none; gap:22px; } .sg-footer nav a { font-size:13px; }
 .sg-footer-top p { font-size:13px; } .sg-footer-bottom { font-size:11px; gap:20px; }
 .sg-footer-bottom div { gap:16px; }
}
@media (max-width:359px) {
 .sg-container { padding-inline:16px; } .sg-nav .sg-brand { font-size:15px; }
 .sg-page h1 { font-size:36px; } .sg-culture-row h2 { font-size:33px; }
 .sg-note-panel { padding-inline:20px; } .sg-discipline-line { font-size:9px; gap:8px; }
 .sg-role-heading strong { font-size:21px; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto !important; }
 *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

html:not(.sg-js) .sg-notes { display:block; }
html:not(.sg-js) .sg-tabs { display:none; }
html:not(.sg-js) .sg-note-panel + .sg-note-panel { border-top:1px solid var(--sg-line); }

/* Latest about-page rounded split overrides */
.sg-about-line {
  padding: 88px 0;
  background: #edf9fd;
}

.sg-about-line + .sg-about-line {
  padding-top: 0;
}

.sg-about-line .sg-line-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.25fr);
  gap: 64px;
  align-items: center;
  padding: 56px;
  border: 1px solid #cfe4f1;
  border-radius: 32px;
  background: #ffffff;
  box-shadow: 0 24px 70px rgba(71, 150, 190, 0.12);
}

.sg-about-line:nth-of-type(2n) .sg-line-layout {
  background: #f7fcff;
}

.sg-about-line .sg-line-heading {
  min-width: 0;
}

.sg-about-line .sg-line-heading h2 {
  max-width: 560px;
}

.sg-about-line .sg-line-heading > p:not(.sg-eyebrow) {
  max-width: 520px;
  margin-top: 24px;
}

.sg-about-line .sg-line-copy {
  max-width: 640px;
  min-width: 0;
}

.sg-about-line .sg-line-copy p + p {
  margin-top: 22px;
}

.sg-about-line .sg-line-list {
  border-top: 1px solid #c2deed;
}

.sg-about-line .sg-line-list article {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 28px;
  padding: 26px 0;
  border-bottom: 1px solid #c2deed;
}

.sg-about-line .sg-line-list span {
  color: var(--sg-blue-strong);
  font-weight: 900;
  letter-spacing: 0;
}

.sg-about-line .sg-line-list h3,
.sg-about-line .sg-line-list-large h3 {
  margin: 0;
  color: var(--sg-navy);
  font-size: 21px;
  line-height: 1.25;
}

.sg-about-line .sg-line-list p,
.sg-about-line .sg-line-list-large p {
  margin-top: 12px;
  color: var(--sg-muted);
}

.sg-about-line .sg-line-list-large {
  gap: 0;
}

.sg-about-line .sg-line-list-large article > div {
  display: block;
  grid-column: auto;
}

.sg-introduce-official .sg-introduce-inner {
  align-items: center;
}

.sg-intro-official-card {
  border: 1px solid #c4dfeb;
  border-radius: 28px;
  background: #ffffff;
  padding: 34px;
  box-shadow: 0 22px 58px rgba(71, 150, 190, 0.12);
}

.sg-intro-official-card p {
  margin: 0;
}

.sg-intro-official-card p + p {
  margin-top: 14px;
}

@media (max-width: 899px) {
  .sg-about-line {
    padding: 72px 0;
  }

  .sg-about-line + .sg-about-line {
    padding-top: 0;
  }

  .sg-about-line .sg-line-layout {
    grid-template-columns: 1fr;
    gap: 34px;
    padding: 38px;
    border-radius: 26px;
  }
}

@media (max-width: 639px) {
  .sg-about-line {
    padding: 58px 0;
  }

  .sg-about-line .sg-line-layout {
    padding: 26px;
    border-radius: 22px;
  }

  .sg-about-line .sg-line-list article {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 18px;
    padding: 22px 0;
  }
}
