/* Homepage visual recovery layer. Functional/auth styles remain in styles.css. */
:root{--ui-premium-blue:#2f80d0;--ui-basic-blue:#e9f6ff;--ui-free-green:#edf9f2;--ui-free-accent:#39a96b;--ui-deep-navy:#123a63;--ui-soft-blue:#eaf3f8;--ui-off-white:#fafbfc;--ui-gold:#b08d57;--ui-green:#e7f2ea;--ui-text:#1f2f46;--ui-radius:20px;--ui-shadow:0 12px 32px rgba(31,47,70,.09);--section-eyebrow-color:#2d66a3;--section-description-color:#d8bd91;--section-description-size:16px;--section-description-weight:700;--section-description-line-height:1.65}
.hero{min-height:610px!important;padding:92px 0 48px!important}.hero-grid{gap:45px!important}.hero .eyebrow{margin-bottom:14px!important}.hero-desc{margin:18px 0 22px!important}.trust-row{margin-top:38px!important}.hero-visual{height:410px!important}.visual-main{width:360px!important;height:360px!important;top:22px!important}.scroll-note{bottom:18px!important}
body main>section.hero{background-color:#fff!important;background-image:none!important}
.hero .connection-symbol{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#about{background:linear-gradient(135deg,#f2fbff 0%,#def2ff 100%)!important}
#about .about-media-frame{max-width:1180px!important}
#about .about-media-frame{border-color:#c7e6f8!important;background:transparent!important;background-image:none!important;box-shadow:0 18px 44px rgba(47,128,208,.1)!important}
#about .brand-structure{background:transparent!important;background-image:none!important}
#about .about-title-row{justify-content:flex-start!important;gap:12px!important}
#about .about-company-summary{margin:0 0 14px;color:#38536d;font-size:13px;line-height:1.65;letter-spacing:-.025em}
#about .about-company-summary span{display:block;white-space:nowrap}
#community{padding:64px 0!important;background:#1d47c6!important;color:#fff!important}
#community .section-heading{margin-bottom:24px!important}#community .section-heading .eyebrow{color:#b9ddf5!important}#community .section-heading h2{color:#fff!important}
#community .audience-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;max-width:1240px!important;margin:0 auto!important}
#community .audience-card{display:grid!important;grid-template-columns:280px minmax(0,1fr) 200px!important;grid-template-rows:44px 44px!important;grid-template-areas:"label description button" "title checklist button"!important;align-items:center!important;column-gap:18px!important;row-gap:4px!important;width:100%!important;height:136px!important;min-height:136px!important;padding:22px 28px!important;border:1px solid #bcdff4!important;border-left:5px solid #72a9e9!important;border-radius:var(--ui-radius)!important;background:#fff!important;color:var(--ui-text)!important;box-shadow:0 12px 28px rgba(17,73,126,.14)!important}
#community .audience-card.learner{border-color:#b9dec8!important;border-left-color:#72bc91!important;background:#fff!important}
#community .audience-card>.audience-label{grid-area:label!important;margin:0!important;color:#39709f!important;font-size:13px!important}#community .audience-card.learner>.audience-label{color:#23764c!important}#community .audience-card>h3{grid-area:title!important;margin:0!important;color:var(--ui-text)!important;font-size:21px!important;line-height:1.25!important;white-space:nowrap!important}#community .audience-card>p{grid-area:description!important;margin:0!important;color:#38536d!important;font-size:14px!important;line-height:1.45!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}#community .audience-card>ul{grid-area:checklist!important;display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:0!important;margin:0!important;overflow:visible!important}#community .audience-card li{display:inline-flex!important;align-items:center!important;gap:7px!important;margin:0!important;padding:0 16px!important;color:#274b6c!important;font-size:14px!important;line-height:1.3!important;white-space:nowrap!important}#community .audience-card li:first-child{padding-left:0!important}#community .audience-card li+li{border-left:1px solid #b7d2e5!important}#community .audience-card.learner li+li{border-left-color:#bddbc9!important}#community .audience-card li::before{position:static!important;display:inline-block!important;flex:0 0 auto!important;margin:0!important;color:#4b96d8!important}#community .audience-card.learner li::before{color:var(--ui-free-accent)!important}#community .audience-card>a.text-link{grid-area:button!important;align-self:center!important;width:100%!important;height:48px!important;min-height:48px!important;margin:0!important;padding:0 18px!important;border-radius:12px!important;background:#4b96d8!important;color:#fff!important;font-size:15px!important;box-shadow:0 8px 18px rgba(47,128,201,.2)!important}#community .audience-card.learner>a.text-link{background:var(--ui-free-accent)!important;box-shadow:0 8px 18px rgba(57,169,107,.2)!important}
#community .audience-card>.audience-label{grid-column:1!important;grid-row:1!important}#community .audience-card>h3{grid-column:1!important;grid-row:2!important}#community .audience-card>p:not(.matching-disclaimer){grid-area:auto!important;grid-column:2!important;grid-row:1!important;width:100%!important;margin:0!important;font-size:14px!important;white-space:nowrap!important}#community .audience-card>ul{grid-column:2!important;grid-row:2!important;width:100%!important}#community .audience-card>a.text-link{grid-column:3!important;grid-row:1/3!important;position:static!important}
#community .service-note{margin-top:18px!important;border-radius:16px!important;background:#f1f5f7!important}
#partner-center{padding:64px 0!important;background:#fff!important;color:var(--ui-text)!important}#partner-center .partner-center-card,#partner-center .partner-resource-toggle{border-radius:var(--ui-radius)!important;box-shadow:var(--ui-shadow)!important}
@media(min-width:761px){#partner-center .partner-resource-library[data-count="12"]{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:none!important;margin:0!important}}
#partner-center .partner-guide-toggle{min-height:84px!important;padding:16px 22px!important;border-radius:16px!important;background:var(--ui-green)!important;color:#24553a!important}#partner-center .partner-guide-toggle small{color:#4c755b!important}#partner-center .partner-guide-toggle strong{color:#214f35!important;font-size:20px!important}#partner-center .partner-guide-toggle>b{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:50%!important;background:#fff!important;color:#24553a!important;font-size:25px!important}
#advertising.advertising{padding:64px 0!important;background:var(--ui-soft-blue)!important;color:var(--ui-text)!important}.advertising .section-heading h2,.advertising .section-heading p{color:var(--ui-text)!important}.advertising .section-heading .eyebrow{color:var(--ui-gold)!important}.advertising .ad-carousel-prev,.advertising .ad-carousel-next{width:46px!important;height:54px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#527da6!important;box-shadow:none!important;font-size:42px!important;font-weight:300!important;transition:color .2s ease,transform .2s ease!important}.advertising .ad-carousel-prev:hover,.advertising .ad-carousel-next:hover{background:transparent!important;color:var(--ui-deep-navy)!important;transform:scale(1.08)!important}
#specialty-banners{padding:64px 0!important;background:#315b80!important;color:#fff!important}#specialty-banners .section-heading h2{color:#fff!important}#specialty-banners .section-heading .eyebrow{color:#d8bd91!important}#specialty-banners .section-heading>p:last-child{color:#d8bd91!important;font-size:16px!important;font-weight:700!important}#specialty-banners .specialty-banner-grid{align-items:stretch!important;gap:22px!important;margin-top:36px!important}#specialty-banners .specialty-banner-card{display:flex!important;flex-direction:column!important;height:100%!important;border-radius:var(--ui-radius)!important;border-color:rgba(255,255,255,.35)!important;box-shadow:0 14px 32px rgba(12,35,55,.18)!important}#specialty-banners .specialty-banner-info{display:flex!important;flex:1!important;flex-direction:column!important;padding:22px!important}#specialty-banners .specialty-banner-info h3{margin:6px 0 8px!important;color:var(--ui-text)!important;font-size:22px!important}#specialty-banners .specialty-card-description{min-height:42px!important;margin:0 0 18px!important;color:#53677b!important;font-size:14px!important;line-height:1.5!important}#specialty-banners .specialty-open,#specialty-banners .specialty-programs-link{margin-top:auto!important}
#events{padding:64px 0!important;background:#fff!important}#contact.contact-simple{padding:64px 0 40px!important;background:#183f66!important}body>footer{background:#123a63!important}body>footer .footer-top{background:var(--ui-soft-blue)!important;color:var(--ui-text)!important}
#about .section-heading h2,#community .section-heading h2,#partner-center .partner-center-copy h2,#advertising .section-heading h2,#specialty-banners .section-heading h2,#events .section-heading h2,#contact h2{letter-spacing:-.035em!important}
@media(max-width:900px) and (min-width:761px){#community .audience-card{grid-template-columns:190px minmax(0,1fr) 170px!important;column-gap:14px!important}#community .audience-card>p{font-size:13px!important}#community .audience-card li{padding:0 7px!important;font-size:12px!important}}
@media(max-width:760px){.hero{min-height:0!important;padding:78px 0 42px!important}.hero-grid{gap:14px!important}.hero .eyebrow{margin-bottom:12px!important}.hero-desc{margin:16px 0 20px!important}.trust-row{margin-top:28px!important}.hero-visual{height:310px!important;margin-top:0!important}.visual-main{width:270px!important;height:270px!important;top:20px!important}.card-music{bottom:24px!important}#about .about-media-frame{max-width:calc(100% - 36px)!important}#about .about-title-row{gap:10px!important}#about .about-company-summary{font-size:13px;line-height:1.6}#about .about-company-summary span{white-space:normal}#community,#partner-center,#advertising.advertising,#specialty-banners,#events{padding:48px 0!important}#community .audience-card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;grid-template-areas:"label" "title" "description" "checklist" "button"!important;gap:8px!important;height:300px!important;min-height:300px!important;padding:20px!important}#community .audience-card>.audience-label{grid-column:1!important;grid-row:1!important}#community .audience-card>h3{grid-column:1!important;grid-row:2!important}#community .audience-card>p:not(.matching-disclaimer){grid-area:auto!important;grid-column:1!important;grid-row:3!important;width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}#community .audience-card>ul{grid-column:1!important;grid-row:4!important;width:100%!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important}#community .audience-card>a.text-link{grid-column:1!important;grid-row:5!important;margin-top:5px!important}#community .audience-card>h3{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}#community .audience-card li,#community .audience-card li+li{padding:0!important;border:0!important;white-space:normal!important}#partner-center .partner-resource-library[data-count="12"]{grid-template-columns:1fr!important}#partner-center .partner-guide-toggle{min-height:78px!important;padding:14px 16px!important}#partner-center .partner-guide-toggle strong{font-size:17px!important}.advertising .ad-inline-carousel{grid-template-columns:30px minmax(0,1fr) 30px!important}.advertising .ad-carousel-prev,.advertising .ad-carousel-next{width:30px!important;height:46px!important;font-size:34px!important}#specialty-banners .specialty-card-description{min-height:0!important}}

/* Harmony Link brand color system. Color overrides only. */
#about{background:#c1f9ff!important}
#about .structure-project{background:#042963!important;color:#fff!important}
#about .structure-project span,#about .structure-project strong,#about .structure-project b{color:#fff!important}
#community{background:#0b54c2!important}
#advertising.advertising{background:#c1f9ff!important}
#specialty-banners{background:#0b54c2!important}
#specialty-banners .section-heading .eyebrow,#specialty-banners .section-heading h2,#specialty-banners .section-heading p{color:#fff!important}
#events{background:#fff!important}
#contact.contact-simple{background:#05070b!important}
body>footer{background:#042963!important}
body>footer .footer-top{background:#0b54c2!important;color:#fff!important}
body>footer .footer-top .logo-name,body>footer .footer-top .logo-name b,body>footer .footer-top p,body>footer .footer-top a,body>footer .footer-social-copy span{color:#fff!important}
.btn-primary,.nav-cta,.admin-member-link,.hero-actions .btn-explore,#about .company-link,#community .audience-card>a.text-link,#specialty-banners .specialty-open,#specialty-banners .specialty-programs-link,#events .event-detail-button,.contact-page-submit{background:#0b54c2!important;color:#fff!important}
#community .audience-card.learner>a.text-link{background:#0b54c2!important;color:#fff!important;box-shadow:0 8px 18px rgba(11,84,194,.2)!important}
.btn-primary:hover,.nav-cta:hover,.admin-member-link:hover,.hero-actions .btn-explore:hover,#about .company-link:hover,#community .audience-card>a.text-link:hover,#specialty-banners .specialty-open:hover,#specialty-banners .specialty-programs-link:hover,#events .event-detail-button:hover,.contact-page-submit:hover{background:#0949aa!important;color:#fff!important}
#community .audience-card.learner>a.text-link:hover{background:#0949aa!important;color:#fff!important}
#specialty-banners .specialty-operation-badge{background:#e7f1ff!important;color:#042963!important;box-shadow:0 8px 20px rgba(4,41,99,.12)!important}
#specialty-banners .specialty-english .specialty-operation-badge{background:#ffeadb!important;color:#a84a16!important;box-shadow:0 8px 20px rgba(168,74,22,.12)!important}
#specialty-banners .specialty-melody .specialty-operation-badge{background:#fde7f1!important;color:#9d2f67!important;box-shadow:0 8px 20px rgba(157,47,103,.12)!important}

/* Homepage section palette (2026-09-08): approved Harmony Link colors. */
body main>section.hero{background:#fffcf0!important}
.site-header .header-signup{display:none!important}
@media(min-width:761px){.site-header .header-login{min-width:88px;padding-inline:22px!important;text-align:center}}
@media(min-width:761px){.hero-desc{font-size:15px;letter-spacing:-.02em}.hero-desc span{display:block;white-space:nowrap}}
@media(max-width:760px){.hero-desc span{display:block;white-space:normal}}
#about{background:#dcf2ff!important;color:#17233a!important}
#about .about-media-frame{background:#fff!important;background-image:none!important}
#about .about-media-company,#about .about-media-video{display:grid!important;grid-template-rows:auto minmax(0,1fr);height:100%}
#about .about-media-heading{min-height:76px}
#about .about-media-video>div{margin-bottom:0}
#about .about-media-company .brand-structure,#about .about-media-video .intro-video-frame{width:100%;height:100%;min-height:288px;margin:0!important}
#about .about-media-video .intro-video-frame{aspect-ratio:auto}
#about .about-media-company .brand-structure{padding:24px!important;border:1px solid #d4e8f5!important;background:#fff!important}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{min-width:250px;padding:12px 30px}
#about .about-media-company .structure-parent span,#about .about-media-company .structure-project span{font-size:8px}
#about .about-media-company .structure-parent strong,#about .about-media-company .structure-project strong{font-size:17px}
#about .about-media-company .structure-parent small,#about .about-media-company .structure-project b{font-size:9px}
#about .about-media-company .structure-branches>div{min-height:72px;padding:10px 7px}
#about .about-media-company .structure-branches .status{font-size:8px;padding:4px 7px}
#about .about-media-company .structure-branches strong{font-size:11px}
#about .about-media-company .structure-branches small{font-size:8px}
#about .structure-project{background:#1a34ac!important;color:#fff!important}
#about .structure-project span,#about .structure-project strong,#about .structure-project b{color:#fff!important}
#about .about-media-company .brand-structure,#about .about-media-video .intro-video-frame,#about .structure-parent,#about .structure-project,#about .structure-branches>div{border:2px solid #d4af37!important}
@media(max-width:760px){#about .about-media-heading{min-height:0}#about .about-media-company .brand-structure,#about .about-media-video .intro-video-frame{height:auto;min-height:0}#about .about-media-video .intro-video-frame{aspect-ratio:16/9}#about .about-media-company .brand-structure{padding:18px!important}#about .about-media-company .structure-parent,#about .about-media-company .structure-project{min-width:0;width:100%;padding:12px 14px}#about .about-media-company .structure-branches>div{min-height:82px}}
#community{background:#0b54c2!important;color:#fff!important}
#partner-center{background:#fff!important;color:#17233a!important}
#advertising.advertising{background:#c1f9ff!important;color:#17233a!important}
#specialty-banners{background:#0b54c2!important;color:#fff!important}
#events{background:#fff!important;color:#17233a!important}
#community .section-heading .eyebrow,#community .section-heading h2,#community .section-heading p,#specialty-banners .section-heading .eyebrow,#specialty-banners .section-heading h2,#specialty-banners .section-heading p{color:#fff!important}
#about .section-heading h2,#about .section-heading p,#advertising .section-heading h2,#advertising .section-heading p,#events .section-heading h2,#events .section-heading p{color:#17233a!important}
body>footer{background:#042963!important;color:#fff!important}
body>footer .footer-top{background:#0b54c2!important;color:#fff!important}
body>footer .footer-bottom{background:#042963!important;color:#fff!important}
body>footer .footer-top .logo-name,body>footer .footer-top .logo-name b,body>footer .footer-top p,body>footer .footer-top a,body>footer .footer-bottom,body>footer .footer-bottom a{color:#fff!important}
body>footer .footer-social-copy span{color:#fff!important}
#footerDeleteAccount{border-color:#0b54c2!important;background:#c1f9ff!important;color:#042963!important;box-shadow:none!important}
#footerDeleteAccount:hover{border-color:#c1f9ff!important;background:#c1f9ff!important;color:#042963!important}

/* Homepage section refinements: pathways visibility, partner entry, and program spacing. */
#community{display:none!important}
#partner-center{padding:48px 0!important;background:#1a34ac!important}
#partner-center .partner-center-card{max-width:1120px!important;padding:24px 28px!important}
#partner-center .partner-center-copy h2::before{content:"🔒 ";font-size:.82em}
#partner-center .partner-access-card{margin-top:8px!important}
#partner-center .partner-auth-gate{width:auto!important;margin:0 auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#partner-center .partner-auth-gate .partner-auth-icon,#partner-center .partner-auth-gate h3{display:none!important}
#partner-center .partner-auth-gate .btn{min-width:200px;margin:0 auto!important}
#partner-center .partner-center-card:has(.partner-auth-gate:not([hidden])) .partner-upgrade-guide{display:none!important}
#advertising.advertising{background:#fffcf0!important}
#specialty-banners{background:#dcf2ff!important;color:#17233a!important}
#specialty-banners .section-heading .eyebrow,#specialty-banners .section-heading h2,#specialty-banners .section-heading p{color:#17233a!important}
#specialty-banners .specialty-banner-info{display:grid!important;grid-template-rows:auto auto minmax(42px,auto) auto;padding:18px!important}
#specialty-banners .specialty-card-description{min-height:42px!important;margin:0!important}
#specialty-banners .specialty-open,#specialty-banners .specialty-programs-link{margin-top:8px!important}
@media(max-width:760px){#partner-center{padding:40px 0!important}#partner-center .partner-center-card{padding:20px 16px!important}#specialty-banners .specialty-banner-info{padding:17px!important}}

/* 2026-09-09: homepage palette and gentle advertising-card transitions. */
#about{background:#eaf7fb!important}
#partner-center{background:#2f6fb5!important}
#partner-center .partner-center-copy .eyebrow,#partner-center .partner-center-copy h2,#partner-center .partner-center-copy>p{color:#fff!important}
#advertising.advertising{background:#fffcf0!important}
#specialty-banners{background:#ddf3fa!important;color:#17233a!important}
#specialty-banners .section-heading .eyebrow,#specialty-banners .section-heading h2,#specialty-banners .section-heading p{color:#17233a!important}
#events{background:#245a8d!important}
#events .section-heading .eyebrow,#events .section-heading h2,#events .section-heading p{color:#fff!important}
#events .event-card{border:1px solid #bfe8f4!important}
.advertising .ad-carousel-track{position:relative;height:234px;overflow:hidden}
.advertising .ad-carousel-card{position:absolute;inset:0;opacity:1;transform:translateX(0);transition:opacity .5s ease,transform .5s ease;will-change:opacity,transform}
.advertising .ad-carousel-card.ad-carousel-enter{opacity:0;transform:translateX(10px)}
.advertising .ad-carousel-card.ad-carousel-leave{opacity:0;transform:translateX(-10px);pointer-events:none}
.footer-social-panel a{border-width:.75px!important}
.footer-social-panel a.instagram img{width:20px!important;height:20px!important}
.footer-social-panel a.threads img{width:22px!important;height:22px!important}
#footerDeleteAccount{border:1px solid #2f6fb5!important;background:#fff!important;color:#2f6fb5!important;box-shadow:none!important}
#footerDeleteAccount:hover,#footerDeleteAccount:focus-visible{border-color:#2f6fb5!important;background:#eaf7fb!important;color:#245a8d!important}
@media(max-width:760px){.advertising .ad-carousel-track{height:330px}}

/* 2026-09-09: blue tokens measured from the live primary CTA and BASIC tier. */
:root{--brand-blue:#0b54c2;--brand-light-blue:#edf5ff}
#about,#advertising.advertising,#specialty-banners{background:var(--brand-light-blue)!important}
#partner-center,#events,body>footer .footer-top{background:var(--brand-blue)!important}
#about .structure-project{background:var(--brand-blue)!important}
.btn-primary,.nav-cta,.admin-member-link,.hero-actions .btn-explore,#about .company-link,#specialty-banners .specialty-open,#specialty-banners .specialty-programs-link,#events .event-detail-button,.contact-page-submit{background:var(--brand-blue)!important;color:#fff!important}
#partner-center .partner-center-copy h2{display:block!important;visibility:visible!important;opacity:1!important;color:#fff!important}
#partner-center .partner-center-copy h2::before{content:"🔒 ";font-size:.82em}
.advertising .ad-carousel-card{border:0!important;border-radius:26px!important;box-shadow:0 8px 22px rgba(11,84,194,.08)!important}

/* Advertising cards use a clean outline instead of a rectangular shadow. */
#advertising.advertising{background:#fffcf0!important;border-bottom:1px solid #d6e7f5!important}
#advertising .ad-carousel-card{border:1px solid #bfddf5!important;border-radius:26px!important;box-shadow:none!important}

/* Card outlines and text contrast on the current blue section backgrounds. */
#partner-center .partner-center-copy h2{display:block!important;visibility:visible!important;opacity:1!important;color:var(--brand-blue)!important}
#partner-center .partner-center-copy h2::before{content:"🔒 ";font-size:.82em}
#specialty-banners .specialty-banner-card{border:1px solid #bfddf5!important}
#events .event-card,#events .past-event-grid .event-card{border:1px solid #fff!important}
#events .event-info>p{color:#243b55!important}
#events .past-events h3{color:#fff!important}

/* Final text contrast and the one-day flyer edge cleanup. */
#partner-center .partner-center-copy h2{color:#fff!important}
#events .section-heading>p:last-child{color:#fff!important}
#events .event-poster[href*="one-day-class"]{border:0!important;outline:0!important;box-shadow:none!important;background:#fff!important}
#events .event-poster[href*="one-day-class"] img{border:0!important;outline:0!important;box-shadow:none!important;clip-path:inset(3px);transform:scale(1.01)}

/* Restore the partner resource title against its light content card. */
#partner-center .partner-center-copy h2{display:block!important;visibility:visible!important;opacity:1!important;color:#000000!important}

/* Footer social copy and icons: aligned sizing with a subtle accessible float. */
@keyframes footer-social-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(min-width:761px){body>footer .footer-social-copy span{white-space:nowrap!important}}
body>footer .footer-social-panel a{animation:footer-social-float 3.6s ease-in-out infinite}
body>footer .footer-social-panel a.threads{animation-delay:.45s}
body>footer .footer-social-panel a.instagram img,
body>footer .footer-social-panel a.threads img{width:21px!important;height:21px!important;max-width:21px!important;max-height:21px!important;object-fit:contain!important}
@media(max-width:760px){body>footer .footer-social-copy span{white-space:normal!important}}
@media(prefers-reduced-motion:reduce){body>footer .footer-social-panel a{animation:none!important}}

/* Polished social buttons with restrained depth and a gentle glossy highlight. */
@media(min-width:761px){body>footer .footer-social-panel{position:relative!important;left:14px!important}}
body>footer .footer-social-panel a{position:relative!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.34)!important;box-shadow:0 5px 11px rgba(1,20,55,.2),inset 0 1px 1px rgba(255,255,255,.38)!important}
body>footer .footer-social-panel a::before{content:"";position:absolute;inset:1px 3px auto;height:42%;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,0));pointer-events:none}
body>footer .footer-social-panel a.instagram{background:radial-gradient(circle at 30% 105%,#ffd36b 0 16%,transparent 42%),linear-gradient(145deg,#f26b68 12%,#d84792 52%,#7059cb 100%)!important;border-color:rgba(255,210,224,.64)!important}
body>footer .footer-social-panel a.threads{background:linear-gradient(145deg,#414141 0%,#181818 52%,#050505 100%)!important;border-color:rgba(255,255,255,.34)!important}
body>footer .footer-social-panel a img{position:relative!important;z-index:1!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}
@media(max-width:760px){body>footer .footer-social-panel{left:auto!important}}

/* Keep social labels fixed below independently floating, optically balanced icons. */
body>footer .footer-social-panel nav{display:grid!important;grid-template-columns:repeat(2,52px)!important;width:114px!important;gap:10px!important}
body>footer .footer-social-panel a{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:52px!important;min-width:52px!important;height:58px!important;padding:6px 4px!important;gap:6px!important;animation:none!important}
body>footer .footer-social-panel a img{position:static!important;inset:auto!important;margin:0!important;transform:none!important;flex:0 0 auto!important;animation:footer-social-float 3.6s ease-in-out infinite}
body>footer .footer-social-panel a.instagram img{width:19px!important;height:19px!important;max-width:19px!important;max-height:19px!important}
body>footer .footer-social-panel a.threads img{width:21px!important;height:21px!important;max-width:21px!important;max-height:21px!important;animation-delay:.45s}
body>footer .footer-social-panel .footer-social-label{display:block!important;color:#fff!important;font-size:9px!important;font-weight:700!important;line-height:1!important;white-space:nowrap!important}
@media(max-width:760px){body>footer .footer-social-panel{grid-template-columns:minmax(0,1fr) 114px!important}}
@media(prefers-reduced-motion:reduce){body>footer .footer-social-panel a img{animation:none!important}}

/* UI-only administrator identity and entry-point emphasis. */
.site-header .admin-auth-user .auth-user-copy b{font-size:12px!important;font-weight:800!important}
.site-header .admin-member-link{font-size:11px!important;font-weight:900!important}

/* Country flags replace generic phone icons without changing card geometry. */
#contact .contact-simple-link[href^="tel:"] .contact-simple-icon,
#contact .contact-simple-link[href^="sms:"] .contact-simple-icon{font-size:20px!important;line-height:1!important}

/* Social icons above the fixed message, without platform-name labels. */
body>footer .footer-social-panel{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;width:auto!important;max-width:none!important;gap:11px!important}
body>footer .footer-social-panel nav{order:1;display:flex!important;align-items:center!important;justify-content:center!important;width:auto!important;gap:10px!important}
body>footer .footer-social-copy{order:2;max-width:none!important;text-align:center!important}
body>footer .footer-social-panel a{display:grid!important;place-items:center!important;width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;border-radius:50%!important;animation:footer-social-float 3.6s ease-in-out infinite!important}
body>footer .footer-social-panel a.threads{animation-delay:.45s!important}
body>footer .footer-social-panel a img{position:static!important;margin:0!important;transform:none!important;animation:none!important;object-fit:contain!important}
body>footer .footer-social-panel a.instagram img{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important}
body>footer .footer-social-panel a.threads img{width:20px!important;height:20px!important;max-width:20px!important;max-height:20px!important}
@media(max-width:760px){body>footer .footer-social-panel{display:flex!important;width:100%!important;max-width:100%!important}body>footer .footer-social-copy span{white-space:normal!important}}
@media(prefers-reduced-motion:reduce){body>footer .footer-social-panel a{animation:none!important}}

/* Final social presentation: platform colors and right-edge icon alignment. */
body>footer .footer-social-panel nav{align-self:flex-end!important;justify-content:flex-end!important}
body>footer .footer-social-copy{width:100%!important;text-align:right!important}
body>footer .footer-social-panel a::before{display:none!important}
body>footer .footer-social-panel a.instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0 5%,#fd5949 45%,#d6249f 62%,#285aeb 90%)!important;border-color:rgba(255,255,255,.5)!important}
body>footer .footer-social-panel a.threads{background:#000!important;border-color:rgba(255,255,255,.5)!important}
body>footer .footer-social-panel a img{filter:none!important}

/* Homepage visual tone refinements: typography, outlines, and two soft-green sections. */
@media(min-width:761px){.site-header .header-login{min-width:82px!important;padding-inline:18px!important;font-size:15px!important;font-weight:800!important;line-height:1!important}}
#advertising .ad-carousel-card{border-color:#6f9fd4!important}
#community .section-heading .eyebrow,
#advertising .section-heading .eyebrow,
#specialty-banners .section-heading .eyebrow{color:#2d66a3!important;font-size:11px!important;font-weight:800!important;letter-spacing:1.8px!important}
#partner-center,#events{background:#e8f5e9!important}
#events .section-heading .eyebrow,#events .section-heading h2,#events .section-heading>p:last-child{color:#172b3d!important}
body>footer .footer-top .logo-name{color:#080b10!important}
body>footer .footer-top .logo-name b{color:#fff!important}
body>footer .footer-top .logo-name small{color:#d4af37!important}

/* Keep the simplified About actions above legacy About presentation rules. */
#about .about-media-frame{align-items:start!important}
#about .about-media-company,#about .about-media-video{min-height:0!important;height:auto!important;display:flex!important;flex-direction:column!important;padding:0!important;border:0!important;border-radius:var(--hl-radius)!important;background:transparent!important;box-shadow:none!important}
#about .about-action{width:100%!important;height:62px!important;min-height:62px!important;margin:0!important;padding:0 22px!important;border:1px solid var(--hl-primary)!important;border-radius:var(--hl-radius)!important;box-shadow:none!important;font-size:16px!important;font-weight:800!important;line-height:1.25!important;text-decoration:none!important}
#about .about-structure-toggle{background:#fff!important;color:var(--hl-primary)!important}
#about .about-media-video .intro-video-frame{display:flex!important;align-items:center!important;height:62px!important;min-height:62px!important;margin:0!important;background:var(--hl-primary)!important;color:#fff!important;aspect-ratio:auto!important}
#about .about-media-video .video-play{position:relative!important;inset:auto!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:0 22px!important;color:#fff!important;transform:none!important}
#about .about-media-video .video-play em{color:#fff!important;font-size:16px!important}
#about .about-media-video .video-play b{background:#fff!important;color:var(--hl-primary)!important}
#about .about-media-company .brand-structure,#about .about-video-panel{box-sizing:border-box!important;width:100%!important;margin:14px 0 0!important;border:1px solid #d7e3ef!important;border-radius:var(--hl-radius)!important;box-shadow:0 8px 22px rgba(24,43,91,.06)!important;aspect-ratio:auto!important}
#about .about-media-company .brand-structure{height:280px!important;min-height:280px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;padding:10px 12px!important}
#about .about-video-panel{height:320px!important;min-height:320px!important;padding:12px!important}
#about .about-media-company .brand-structure{background:#f8fbfe!important}
#about .about-video-panel{display:flex;align-items:center;justify-content:center;background:#07111f!important}
#about .about-video-panel[hidden]{display:none!important}
#about .about-video-panel iframe{width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:calc(var(--hl-radius) - 4px)}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{width:min(310px,72%)!important;min-width:0!important;min-height:42px!important;padding:3px 12px!important}
#about .about-media-company .structure-parent small{display:none!important}
#about .about-media-company .structure-parent strong,#about .about-media-company .structure-project strong{font-size:13px!important;line-height:1.15!important}
#about .about-media-company .structure-parent span,#about .about-media-company .structure-project span,#about .about-media-company .structure-project b{font-size:7.5px!important;line-height:1.1!important}
#about .about-media-company .structure-arrow{height:11px!important;line-height:11px!important;margin:0!important}
#about .about-media-company .structure-branches{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin:1px 0 0!important}
#about .about-media-company .structure-branches>div{box-sizing:border-box!important;width:100%!important;height:58px!important;min-height:58px!important;padding:5px 6px!important;border-radius:calc(var(--hl-radius) - 7px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
#about .about-media-company .structure-branches>div:has(.status.direct){background:#eef5ff!important;border-color:#c9dcf5!important}
#about .about-media-company .structure-branches>div:has(.status.co){background:#fff1f5!important;border-color:#f1cdd9!important}
#about .about-media-company .structure-branches>div:has(.status.partner){background:#eef9f1!important;border-color:#cce8d4!important}
#about .about-media-company .structure-branches .status{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:8px!important;line-height:1.1!important}
#about .about-media-company .structure-branches .status.direct{color:#254f9d!important}
#about .about-media-company .structure-branches .status.co{color:#a63f67!important}
#about .about-media-company .structure-branches .status.partner{color:#2f7a4b!important}
#about .about-media-company .structure-branches strong{margin:2px 0 0!important;color:var(--hl-text)!important;line-height:1.1!important}
#about .about-media-company .structure-branches small{display:none!important}
@media(max-width:760px){#about .about-media-frame{grid-template-columns:1fr!important}#about .about-action,#about .about-media-video .intro-video-frame{height:58px!important;min-height:58px!important;font-size:14px!important}#about .about-media-company .brand-structure,#about .about-video-panel{height:auto!important;min-height:0!important}#about .about-media-company .brand-structure{padding:10px!important}#about .about-video-panel{padding:10px!important}#about .about-media-company .structure-branches{grid-template-columns:repeat(2,minmax(0,1fr))!important}#about .about-media-company .structure-branches>div{height:66px!important;min-height:66px!important}}

/* Approved final compact About metrics. */
#about .about-media-company .brand-structure{height:280px!important;min-height:280px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;padding:10px 12px!important}
#about .about-video-panel{height:320px!important;min-height:320px!important;padding:12px!important}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{min-height:42px!important;padding:3px 12px!important}
#about .about-media-company .structure-arrow{height:11px!important;line-height:11px!important;margin:0!important}
#about .about-media-company .structure-branches{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin:1px 0 0!important}
#about .about-media-company .structure-branches>div{box-sizing:border-box!important;width:100%!important;height:58px!important;min-height:58px!important;padding:5px 6px!important;border-radius:calc(var(--hl-radius) - 7px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
#about .about-media-company .structure-branches>div:has(.status.direct){background:#eef5ff!important;border-color:#c9dcf5!important}
#about .about-media-company .structure-branches>div:has(.status.co){background:#fff1f5!important;border-color:#f1cdd9!important}
#about .about-media-company .structure-branches>div:has(.status.partner){background:#eef9f1!important;border-color:#cce8d4!important}
#about .about-media-company .structure-branches .status{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:8px!important;line-height:1.1!important}
#about .about-media-company .structure-branches .status.direct{color:#254f9d!important}
#about .about-media-company .structure-branches .status.co{color:#a63f67!important}
#about .about-media-company .structure-branches .status.partner{color:#2f7a4b!important}
#about .about-media-company .structure-branches strong{margin:2px 0 0!important;color:var(--hl-text)!important;line-height:1.1!important}
#about .about-media-company .structure-branches small{display:none!important}
@media(max-width:760px){#about .about-media-company .brand-structure{height:auto!important;min-height:0!important;padding:10px!important}#about .about-video-panel{height:auto!important;min-height:0!important;padding:10px!important}#about .about-media-company .structure-branches{grid-template-columns:repeat(2,minmax(0,1fr))!important}#about .about-media-company .structure-branches>div{height:66px!important;min-height:66px!important}}

/* Compact Header-triggered About panel. */
#about{display:none!important}
.about-compact-modal[hidden]{display:none!important}
.about-compact-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px}
.about-compact-backdrop{position:absolute;inset:0;border:0;background:rgba(4,18,48,.52);backdrop-filter:blur(3px)}
.about-compact-panel{position:relative;width:min(680px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;padding:28px;border:1px solid #cfdeeb;border-radius:var(--hl-radius);background:#fff;box-shadow:0 24px 70px rgba(8,29,68,.2)}
.about-compact-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:1px solid #d7e3ef;border-radius:50%;background:#fff;color:var(--hl-text);font-size:24px;line-height:1;cursor:pointer}
.about-compact-head{padding-right:44px;margin-bottom:18px}
.about-compact-head p{margin:0 0 7px;color:var(--hl-primary);font-size:11px;font-weight:800;letter-spacing:1.6px}
.about-compact-head h2{margin:0;color:var(--hl-text);font-size:30px;line-height:1.2}
.about-compact-head span{display:block;margin-top:9px;color:var(--hl-muted);font-size:14px;line-height:1.55}
.about-compact-structure .about-modal-diagram{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:14px!important;border:1px solid #d7e3ef!important;border-radius:var(--hl-radius)!important;background:#f8fbfe!important;box-shadow:none!important}
.about-compact-structure .structure-parent,.about-compact-structure .structure-project{width:min(310px,75%)!important;min-width:0!important;min-height:42px!important;padding:4px 12px!important;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.about-compact-structure .structure-parent:hover,.about-compact-structure .structure-parent:focus-visible,.about-compact-structure .structure-project:hover,.about-compact-structure .structure-project:focus-visible{transform:translateY(-2px);box-shadow:0 7px 16px rgba(26,52,172,.12)!important;outline:2px solid rgba(26,52,172,.2);outline-offset:2px}
.about-compact-structure .structure-parent small{display:none!important}
.about-compact-structure .structure-project{background:#1a34ac!important;color:#fff!important}
.about-compact-structure .structure-project span,.about-compact-structure .structure-project strong,.about-compact-structure .structure-project b{color:#fff!important}
.about-compact-structure .structure-arrow{height:11px!important;line-height:11px!important;margin:0!important}
.about-compact-structure .structure-branches{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;width:100%!important;margin:2px 0 0!important}
.about-compact-structure .structure-branches>div{height:58px!important;min-height:58px!important;padding:5px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;border-radius:calc(var(--hl-radius) - 7px)!important}
.about-compact-structure .structure-branches>div:has(.status.direct){background:#eef5ff!important;border-color:#c9dcf5!important}
.about-compact-structure .structure-branches>div:has(.status.co){background:#fff1f5!important;border-color:#f1cdd9!important}
.about-compact-structure .structure-branches>div:has(.status.partner){background:#eef9f1!important;border-color:#cce8d4!important}
.about-compact-structure .status{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;font-size:8px!important}
.about-compact-structure .status.direct{color:#254f9d!important}.about-compact-structure .status.co{color:#a63f67!important}.about-compact-structure .status.partner{color:#2f7a4b!important}
.about-compact-structure .structure-branches strong{margin:2px 0 0!important;color:var(--hl-text)!important;font-size:10px!important}.about-compact-structure .structure-branches small{display:none!important}
.about-compact-video[hidden]{display:none!important}
.about-compact-video{margin-top:14px;padding:10px;border-radius:var(--hl-radius);background:#07111f}
.about-compact-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:calc(var(--hl-radius) - 5px)}
@media(max-width:760px){.about-compact-modal{padding:14px}.about-compact-panel{width:calc(100vw - 28px);max-height:calc(100vh - 28px);padding:22px 16px}.about-compact-head{padding-right:36px}.about-compact-head h2{font-size:26px}.about-compact-head span{font-size:13px}.about-compact-structure .structure-parent,.about-compact-structure .structure-project{width:100%!important}.about-compact-structure .structure-branches{grid-template-columns:repeat(2,minmax(0,1fr))!important}.about-compact-structure .structure-branches>div{height:64px!important;min-height:64px!important}}

/* Final modal-only organization and poster refinements. */
.about-compact-panel{padding-block:24px}
.about-compact-head{margin-bottom:14px}
.about-compact-structure .about-modal-diagram{gap:7px!important;padding:12px 14px!important}
.about-compact-structure .structure-arrow{display:none!important}
.about-compact-structure .structure-project::after,.about-compact-structure .structure-branches::before{display:none!important;content:none!important}
.about-compact-structure .structure-parent,.about-compact-structure .structure-project{min-height:0!important;height:36px!important;padding:2px 12px!important;border-radius:12px!important;box-shadow:none!important}
.about-compact-structure .structure-parent span,.about-compact-structure .structure-project span{font-size:7px!important;font-weight:700!important;opacity:.72}
.about-compact-structure .structure-parent strong,.about-compact-structure .structure-project strong{font-size:13px!important;line-height:1.05!important}
.about-compact-structure .structure-project b{font-size:7px!important;line-height:1!important}
.about-compact-structure .structure-branches{margin:0!important}
.about-compact-structure .structure-project{margin-bottom:1px!important}
.about-compact-video{position:relative;overflow:hidden;padding:0!important;background:#07111f!important;aspect-ratio:16/9}
.about-compact-video [hidden]{display:none!important}
.about-video-poster{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#07111f;cursor:pointer}
.about-video-poster img{display:block;width:100%;height:100%;object-fit:cover}
.about-video-poster span{position:absolute;left:50%;top:50%;width:72px;height:52px;display:grid;place-items:center;border-radius:15px;background:#1a34ac;color:#fff;font-size:25px;line-height:1;transform:translate(-50%,-50%);box-shadow:0 9px 24px rgba(4,17,43,.28)}
.about-video-poster:hover span,.about-video-poster:focus-visible span{transform:translate(-50%,-50%) scale(1.06)}
.about-compact-video iframe{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:16/9;border:0;border-radius:inherit}
@media(max-width:760px){.about-compact-panel{padding-block:20px}.about-compact-structure .about-modal-diagram{gap:6px!important;padding:10px!important}.about-compact-structure .structure-parent,.about-compact-structure .structure-project{height:38px!important}.about-video-poster span{width:62px;height:45px;font-size:21px}}

/* Final compact spacing and role treatment for the About diagram. */
#about .about-media-company .brand-structure{height:280px!important;min-height:280px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;padding:10px 12px!important}
#about .about-video-panel{height:320px!important;min-height:320px!important;padding:12px!important}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{min-height:42px!important;padding:3px 12px!important}
#about .about-media-company .structure-arrow{height:11px!important;line-height:11px!important;margin:0!important}
#about .about-media-company .structure-branches{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin:1px 0 0!important}
#about .about-media-company .structure-branches>div{box-sizing:border-box!important;width:100%!important;height:58px!important;min-height:58px!important;padding:5px 6px!important;border-radius:calc(var(--hl-radius) - 7px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
#about .about-media-company .structure-branches>div:has(.status.direct){background:#eef5ff!important;border-color:#c9dcf5!important}
#about .about-media-company .structure-branches>div:has(.status.co){background:#fff1f5!important;border-color:#f1cdd9!important}
#about .about-media-company .structure-branches>div:has(.status.partner){background:#eef9f1!important;border-color:#cce8d4!important}
#about .about-media-company .structure-branches .status{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:8px!important;line-height:1.1!important}
#about .about-media-company .structure-branches .status.direct{color:#254f9d!important}
#about .about-media-company .structure-branches .status.co{color:#a63f67!important}
#about .about-media-company .structure-branches .status.partner{color:#2f7a4b!important}
#about .about-media-company .structure-branches strong{margin:2px 0 0!important;color:var(--hl-text)!important;line-height:1.1!important}
#about .about-media-company .structure-branches small{display:none!important}
@media(max-width:760px){#about .about-media-company .brand-structure{height:auto!important;min-height:0!important;padding:10px!important}#about .about-video-panel{height:auto!important;min-height:0!important;padding:10px!important}#about .about-media-company .structure-branches{grid-template-columns:repeat(2,minmax(0,1fr))!important}#about .about-media-company .structure-branches>div{height:66px!important;min-height:66px!important}}

/* Final compact spacing and role treatment for the About diagram. */
#about .about-media-company .brand-structure{
  height:280px!important;
  min-height:280px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:3px!important;
  padding:10px 12px!important;
}

#about .about-video-panel{height:320px!important;min-height:320px!important;padding:12px!important}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{min-height:42px!important;padding:3px 12px!important}
#about .about-media-company .structure-arrow{height:11px!important;line-height:11px!important;margin:0!important}
#about .about-media-company .structure-branches{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;margin:1px 0 0!important}
#about .about-media-company .structure-branches>div{box-sizing:border-box!important;width:100%!important;height:58px!important;min-height:58px!important;padding:5px 6px!important;border-radius:calc(var(--hl-radius) - 7px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
#about .about-media-company .structure-branches>div:has(.status.direct){background:#eef5ff!important;border-color:#c9dcf5!important}
#about .about-media-company .structure-branches>div:has(.status.co){background:#fff1f5!important;border-color:#f1cdd9!important}
#about .about-media-company .structure-branches>div:has(.status.partner){background:#eef9f1!important;border-color:#cce8d4!important}
#about .about-media-company .structure-branches .status{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:8px!important;line-height:1.1!important}
#about .about-media-company .structure-branches .status.direct{color:#254f9d!important}
#about .about-media-company .structure-branches .status.co{color:#a63f67!important}
#about .about-media-company .structure-branches .status.partner{color:#2f7a4b!important}
#about .about-media-company .structure-branches strong{margin:2px 0 0!important;color:var(--hl-text)!important;line-height:1.1!important}
#about .about-media-company .structure-branches small{display:none!important}
@media(max-width:760px){#about .about-media-company .brand-structure{height:auto!important;min-height:0!important;padding:10px!important}#about .about-video-panel{height:auto!important;min-height:0!important;padding:10px!important}#about .about-media-company .structure-branches{grid-template-columns:repeat(2,minmax(0,1fr))!important}#about .about-media-company .structure-branches>div{height:66px!important;min-height:66px!important}}

/* Redesign phase 2: learning-area discovery between the hero and About. */
#program-categories{
  padding:72px 0!important;
  background:rgba(220,242,255,.62)!important;
  color:var(--hl-text)!important;
}
#program-categories .container{width:min(1320px,calc(100% - 48px))!important}
#program-categories .section-heading{max-width:720px;margin:0 auto 30px!important}
#program-categories .section-heading .eyebrow{color:#1a34ac!important;font-size:12px!important;font-weight:800!important;letter-spacing:1.7px!important}
#program-categories .section-heading h2{margin-top:11px!important;color:var(--hl-text)!important;font-size:clamp(34px,3.2vw,46px)!important;letter-spacing:-.035em!important}
#program-categories .section-heading>p:last-child{margin-top:14px!important;color:var(--hl-muted)!important;font-size:16px!important;font-weight:500!important;line-height:1.65!important}
.program-category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.program-category-card{
  min-width:0;
  min-height:150px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:22px 14px;
  border:1px solid #afc7df;
  border-radius:var(--hl-radius);
  background:#fff;
  color:var(--hl-text);
  text-align:center;
  text-decoration:none;
  box-shadow:0 7px 20px rgba(24,43,91,.085);
  cursor:pointer;
  transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.program-category-card.is-linked:focus-visible{border-color:rgba(26,52,172,.55);transform:translateY(-3px);box-shadow:0 12px 28px rgba(24,43,91,.1);outline:none}
.program-category-icon{display:grid;place-items:center;width:64px;height:64px;border:1px solid rgba(111,159,212,.22);border-radius:17px;background:#d4efff;font-size:31px;line-height:1}
.program-category-card strong{color:#101b35;font-size:18px;font-weight:900;letter-spacing:-.02em}

@media(min-width:761px){
  .program-category-card:hover{border-color:rgba(26,52,172,.7);transform:translateY(-3px);box-shadow:0 11px 24px rgba(24,43,91,.13)}
}

@media(max-width:760px){
  #program-categories{padding:56px 0!important}
  #program-categories .container{width:calc(100% - 32px)!important}
  #program-categories .section-heading{margin-bottom:24px!important;text-align:left!important}
  #program-categories .section-heading h2{font-size:32px!important;line-height:1.22!important}
  #program-categories .section-heading>p:last-child{font-size:15px!important}
  .program-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .program-category-card{min-height:128px;padding:18px 10px}
  .program-category-icon{width:54px;height:54px;border-radius:14px;font-size:27px}
}


/* About final: two actions with independent expandable content. */
#about .about-media-frame{align-items:start!important}
#about .about-media-company,#about .about-media-video{
  min-height:0!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
  border:0!important;
  border-radius:var(--hl-radius)!important;
  background:transparent!important;
  box-shadow:none!important;
}
#about .about-action{
  width:100%!important;
  height:62px!important;
  min-height:62px!important;
  margin:0!important;
  padding:0 22px!important;
  border:1px solid var(--hl-primary)!important;
  border-radius:var(--hl-radius)!important;
  box-shadow:none!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1.25!important;
  text-decoration:none!important;
  transition:transform .2s ease,border-color .2s ease,background-color .2s ease!important;
}
#about .about-structure-toggle{background:#fff!important;color:var(--hl-primary)!important}
#about .video-watch-link{display:flex!important;align-items:center!important;background:var(--hl-primary)!important;color:#fff!important;aspect-ratio:auto!important}
#about .about-action:hover{transform:translateY(-2px)!important}
#about .about-media-video .video-play{color:#fff!important}
#about .about-media-video .video-play em{color:#fff!important;font-size:16px!important}
#about .about-media-video .video-play b{background:#fff!important;color:var(--hl-primary)!important}
#about .about-media-company .brand-structure,#about .about-video-panel{
  box-sizing:border-box!important;
  width:100%!important;
  height:370px!important;
  min-height:370px!important;
  margin:14px 0 0!important;
  padding:14px!important;
  border:1px solid #d7e3ef!important;
  border-radius:var(--hl-radius)!important;
  background:#f8fbfe!important;
  box-shadow:0 8px 22px rgba(24,43,91,.06)!important;
  aspect-ratio:auto!important;
}
#about .about-video-panel{display:flex;align-items:center;justify-content:center;background:#07111f!important}
#about .about-video-panel[hidden]{display:none!important}
#about .about-video-panel iframe{width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:calc(var(--hl-radius) - 4px)}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{
  width:min(310px,72%)!important;
  min-width:0!important;
  min-height:46px!important;
  padding:4px 14px!important;
}
#about .about-media-company .structure-parent small{display:none!important}
#about .about-media-company .structure-parent strong,#about .about-media-company .structure-project strong{font-size:13px!important;line-height:1.15!important}
#about .about-media-company .structure-parent span,#about .about-media-company .structure-project span,#about .about-media-company .structure-project b{font-size:7.5px!important;line-height:1.1!important}
#about .about-media-company .structure-arrow{height:13px!important;line-height:13px!important}
#about .about-media-company .structure-branches{gap:5px!important;margin-top:2px!important}
#about .about-media-company .structure-branches>div{min-height:56px!important;padding:5px!important}

@media(max-width:760px){
  #about .about-media-frame{grid-template-columns:1fr!important}
  #about .about-action{height:58px!important;min-height:58px!important;padding-inline:16px!important;font-size:14px!important}
  #about .about-media-company .brand-structure,#about .about-video-panel{height:auto!important;min-height:0!important}
  #about .about-media-company .brand-structure{padding:12px!important}
  #about .about-video-panel{padding:10px!important}
}

/* Redesign phase 3: About section only. */
#about{
  padding:64px 0!important;
  background:#fff!important;
  color:var(--hl-text)!important;
}
#about .about-section-intro{width:min(820px,calc(100% - 48px))!important;margin:0 auto 28px!important}
#about .about-section-intro .eyebrow{margin-bottom:12px!important;color:var(--hl-primary)!important;font-size:12px!important;font-weight:800!important;letter-spacing:1.7px!important}
#about .about-section-intro h2{margin:0!important;color:var(--hl-text)!important;font-size:clamp(34px,3.2vw,46px)!important;line-height:1.2!important;letter-spacing:-.035em!important}
#about .about-section-intro>p:last-child{margin:16px 0 0!important;color:var(--hl-muted)!important;font-size:16px!important;font-weight:500!important;line-height:1.7!important}
#about .about-media-frame{
  width:min(1320px,calc(100% - 48px))!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:start!important;
  gap:20px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#about .about-media-company,#about .about-media-video{
  min-width:0!important;
  min-height:202px!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  padding:22px!important;
  border:1px solid #c5d8ea!important;
  border-radius:var(--hl-radius)!important;
  background:#fff!important;
  box-shadow:0 9px 24px rgba(24,43,91,.07)!important;
}
#about .about-media-heading{min-height:0!important;margin:0!important}
#about .about-media-heading .eyebrow{margin:0 0 6px!important;color:var(--hl-primary)!important;font-size:10px!important;letter-spacing:1.5px!important}
#about .about-media-heading h2,#about .about-title-row h2{color:var(--hl-text)!important;font-size:24px!important;line-height:1.25!important;letter-spacing:-.025em!important}
#about .about-title-row{align-items:center!important;margin:0!important;gap:12px!important}
#about .about-media-company .company-link{flex:0 0 auto!important}
#about .about-structure-toggle{
  width:100%;
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:16px;
  padding:10px 15px;
  border:1px solid #c5d8ea;
  border-radius:12px;
  background:#f7fbfe;
  color:var(--hl-text);
  font-size:14px;
  font-weight:800;
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease;
}
#about .about-structure-toggle:hover{border-color:var(--hl-primary);background:#f1f7ff}
#about .about-structure-toggle b{color:var(--hl-primary);font-size:11px}
#about .about-structure-toggle .when-open{display:none}
#about .about-structure-toggle[aria-expanded="true"] .when-closed{display:none}
#about .about-structure-toggle[aria-expanded="true"] .when-open{display:inline}
#about .brand-structure[hidden]{display:none!important}
#about .about-media-company .brand-structure{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:14px 0 0!important;
  padding:11px!important;
  border:1px solid #d7e3ef!important;
  border-radius:14px!important;
  background:#f8fbfe!important;
  box-shadow:none!important;
}
#about .about-media-company .structure-parent,#about .about-media-company .structure-branches>div{
  border:1px solid #cbd9e7!important;
  background:#fff!important;
  box-shadow:none!important;
}
#about .about-media-company .structure-project{
  border:1px solid var(--hl-primary)!important;
  background:var(--hl-primary)!important;
  color:#fff!important;
  box-shadow:none!important;
}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{min-width:230px!important;padding:5px 18px!important}
#about .about-media-company .structure-parent span,#about .about-media-company .structure-project span{font-size:8px!important}
#about .about-media-company .structure-parent strong,#about .about-media-company .structure-project strong{font-size:14px!important}
#about .about-media-company .structure-parent small,#about .about-media-company .structure-project b{font-size:8px!important}
#about .about-media-company .structure-arrow{height:14px!important;font-size:13px!important}
#about .about-media-company .structure-branches{gap:5px!important;margin-top:2px!important}
#about .about-media-company .structure-branches>div{min-height:52px!important;padding:5px 4px!important;border-radius:9px!important}
#about .about-media-company .structure-branches .status{font-size:7px!important;padding:2px 5px!important}
#about .about-media-company .structure-branches strong{font-size:9.5px!important;margin:2px 0 0!important}
#about .about-media-company .structure-branches small{font-size:7px!important}
#about .about-media-video .intro-video-frame{
  align-self:stretch!important;
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  aspect-ratio:auto!important;
  margin:16px 0 0!important;
  border:1px solid #d7e3ef!important;
  border-radius:14px!important;
  background:#f7fbfe!important;
  box-shadow:none!important;
}
#about .about-media-video .intro-video-frame img{display:none!important}
#about .about-media-video .intro-video-frame::after{display:none!important}
#about .about-media-video .video-play{position:relative!important;z-index:1!important;inset:auto!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:0 15px!important;background:transparent!important;color:var(--hl-text)!important;transform:none!important}
#about .about-media-video .video-play b{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:50%!important;background:var(--hl-primary)!important;color:#fff!important;font-size:15px!important}
#about .about-media-video .video-play em{color:var(--hl-text)!important;font-size:14px!important;font-style:normal!important;font-weight:800!important}
#about .video-watch-link .when-open{display:none!important}
#about .video-watch-link[aria-expanded="true"] .when-closed{display:none!important}
#about .video-watch-link[aria-expanded="true"] .when-open{display:inline!important}
#about .about-video-panel[hidden]{display:none!important}
#about .about-video-panel{width:100%;margin-top:14px;overflow:hidden;border-radius:14px;background:#07111f;aspect-ratio:16/9}
#about .about-video-panel iframe{display:block;width:100%;height:100%;border:0}
#about .values-grid{width:min(1320px,calc(100% - 48px))!important;margin-top:24px!important;gap:16px!important}
#about .value-card{background:#fff!important;border-color:#d7e3ef!important;box-shadow:none!important}

@media(max-width:760px){
  #about{padding:60px 0!important}
  #about .about-section-intro{width:calc(100% - 32px)!important;margin-bottom:22px!important;text-align:left!important}
  #about .about-section-intro h2{font-size:32px!important}
  #about .about-section-intro>p:last-child{font-size:15px!important}
  #about .about-section-intro>p:last-child br{display:none!important}
  #about .about-media-frame{width:calc(100% - 32px)!important;grid-template-columns:1fr!important;gap:16px!important}
  #about .about-media-company,#about .about-media-video{min-height:0!important;padding:18px!important}
  #about .about-media-heading{min-height:0!important;margin-bottom:16px!important}
  #about .about-title-row{align-items:flex-start!important;flex-direction:column!important}
  #about .about-structure-toggle{margin-top:16px!important}
  #about .about-media-company .brand-structure{height:auto!important;padding:16px!important}
  #about .about-media-company .structure-parent,#about .about-media-company .structure-project{width:100%!important;min-width:0!important;padding:12px!important}
  #about .about-media-company .structure-branches{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #about .about-media-company .structure-branches>div{min-height:88px!important}
  #about .about-media-video .intro-video-frame{height:50px!important;min-height:50px!important;aspect-ratio:auto!important}
  #about .about-media-video .video-play{padding:0 12px!important;gap:9px!important}
  #about .about-media-video .video-play em{font-size:12px!important}
  #about .values-grid{width:calc(100% - 32px)!important;margin-top:16px!important}
}

/* Redesign phase 1: shared design tokens, homepage header, and hero only. */
:root{
  --hl-primary:#1a34ac;
  --hl-primary-hover:#142a91;
  --hl-bg:#fff;
  --hl-bg-light:#dcf2ff;
  --hl-text:#111b36;
  --hl-muted:#526078;
  --hl-border:#dbe3ee;
  --hl-radius:18px;
  --hl-button-radius:12px;
  --hl-shadow:0 14px 38px rgba(24,43,91,.1);
  --hl-container-width:1200px;
  --hl-section-space:88px;
}

.site-header{
  height:76px!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid var(--hl-border)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px)!important;
}
.site-header.scrolled{height:68px!important;box-shadow:0 8px 26px rgba(24,43,91,.07)!important}
.site-header .nav-wrap{width:min(var(--hl-container-width),calc(100% - 48px))!important;gap:28px!important}
.site-header .logo{flex:0 0 auto!important}
.site-header .primary-nav{gap:20px!important;color:var(--hl-text)!important;font-size:13px!important;font-weight:700!important;white-space:nowrap!important}
.site-header .primary-nav>a:not(.header-education-cta){padding:7px 0!important}
.site-header .primary-nav>a:not(.header-education-cta)::after{bottom:1px!important;background:var(--hl-primary)!important}
.site-header .header-partner-link{font-size:0!important}
.site-header .header-partner-link::before{content:"파트너";font-size:13px}
html[lang="en"] .site-header .header-partner-link::before{content:"Partners"}
.site-header .lang-toggle{flex:0 0 auto!important;background:#f2f5f9!important;border:1px solid #e1e7ef!important}
.site-header .lang-toggle .active{background:var(--hl-primary)!important;color:#fff!important}
.site-header .auth-nav-slot{display:flex!important;align-items:center!important;gap:8px!important}
.site-header .header-login{
  min-width:74px!important;
  height:40px!important;
  padding:0 17px!important;
  border:1px solid #cfd9e8!important;
  border-radius:var(--hl-button-radius)!important;
  background:#fff!important;
  color:var(--hl-text)!important;
  font-size:14px!important;
  font-weight:800!important;
}
.site-header .header-education-cta{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 19px!important;
  border-radius:var(--hl-button-radius)!important;
  background:var(--hl-primary)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.site-header .header-education-cta:hover{background:var(--hl-primary-hover)!important;color:#fff!important}

body main>section.hero{
  min-height:680px!important;
  padding:132px 0 72px!important;
  background:linear-gradient(112deg,#fff 0%,#fff 62%,rgba(220,242,255,.55) 100%)!important;
  color:var(--hl-text)!important;
}
.hero .hero-orb{display:none!important}
.hero .hero-grid{width:min(var(--hl-container-width),calc(100% - 48px))!important;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr)!important;gap:70px!important}
.hero .hero-copy{max-width:680px!important}
.hero .eyebrow{margin:0 0 18px!important;color:var(--hl-primary)!important;font-size:12px!important;font-weight:800!important;letter-spacing:1.7px!important}
.hero h1{color:var(--hl-text)!important;font-size:clamp(44px,4vw,62px)!important;line-height:1.12!important;letter-spacing:-.045em!important}
.hero h1 em{color:var(--hl-primary)!important;font-style:normal!important}
.hero .hero-desc{max-width:650px!important;margin:26px 0 32px!important;color:var(--hl-muted)!important;font-size:17px!important;font-weight:500!important;line-height:1.75!important}
.hero .hero-actions{display:flex!important;align-items:center!important;gap:12px!important}
.hero .hero-actions .btn{min-height:52px!important;padding:0 22px!important;border-radius:var(--hl-button-radius)!important;gap:18px!important;font-size:15px!important;box-shadow:none!important}
.hero .hero-actions .btn-explore{background:var(--hl-primary)!important;color:#fff!important}
.hero .hero-actions .btn-explore:hover{background:var(--hl-primary-hover)!important}
.hero .hero-partner-cta{border:1px solid #aebddb!important;background:#fff!important;color:var(--hl-primary)!important}
.hero .hero-partner-cta:hover{border-color:var(--hl-primary)!important;background:#f6f8ff!important;color:var(--hl-primary)!important}
.hero .trust-row{display:none!important}
.hero .hero-visual{height:440px!important;min-width:0!important;margin:0!important}
.hero .visual-main{
  width:390px!important;
  height:390px!important;
  inset:24px auto auto 50%!important;
  transform:translateX(-50%)!important;
  border:1px solid rgba(26,52,172,.13)!important;
  background:var(--hl-bg-light)!important;
  box-shadow:var(--hl-shadow)!important;
}
.hero .visual-main::before{content:"";position:absolute;inset:34px;border:1px solid rgba(26,52,172,.13);border-radius:50%}
.hero .ripple{border-color:rgba(26,52,172,.13)!important}
.hero .center-note{z-index:2!important}
.hero .connection-symbol{color:var(--hl-primary)!important}
.hero .hero-platform-card{
  position:absolute;
  z-index:4;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:50px;
  padding:11px 16px;
  border:1px solid rgba(26,52,172,.13);
  border-radius:14px;
  background:#fff;
  color:var(--hl-text);
  box-shadow:0 10px 26px rgba(24,43,91,.1);
  font-size:13px;
}
.hero .hero-platform-card span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--hl-primary);color:#fff;font-weight:800}
.hero .hero-platform-card-teacher{left:0;top:80px}
.hero .hero-platform-card-visit{right:0;bottom:72px}
.hero .hero-topics,.hero .float-pill,.hero .scroll-note{display:none!important}

/* Hero visual refinement: reuse the existing digital-education photography. */
.app-install-banner-inner{padding:7px 0!important;gap:10px!important}
.app-install-banner-inner p{font-size:10.5px!important;line-height:1.3!important}
.app-install-banner-inner p strong{font-size:11.5px!important}
.app-install-banner-cta{padding:7px 13px!important;font-size:11px!important}
.app-install-banner-close{width:24px!important;height:24px!important;font-size:14px!important}
.hero .hero-grid{width:min(1360px,calc(100% - 48px))!important;grid-template-columns:minmax(0,48fr) minmax(0,52fr)!important;gap:44px!important}
.hero .hero-copy{max-width:640px!important}
.hero h1{font-size:59px!important;letter-spacing:-.055em!important;white-space:nowrap!important}
.hero .hero-visual{height:490px!important}
.hero .hero-learning-image{position:absolute;inset:0 0 0 0;overflow:hidden;border:1px solid rgba(26,52,172,.12);border-radius:20px;background:#eef8ff;box-shadow:0 18px 42px rgba(24,43,91,.1)}
.hero .hero-learning-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,25,59,.03),transparent 38%);pointer-events:none}
.hero .hero-learning-image img{display:block;width:228%;height:100%;object-fit:cover;object-position:100% 0;transform:translateX(-56.1%)}
.hero .hero-platform-card-teacher{left:-24px;top:52px}
.hero .hero-platform-card-visit{right:16px;bottom:30px}

@media(max-width:1100px) and (min-width:761px){
  .site-header .primary-nav{gap:12px!important;font-size:12px!important}
  .site-header .nav-wrap{width:min(100% - 32px,var(--hl-container-width))!important;gap:16px!important}
  .site-header .header-education-cta{padding-inline:14px!important}
  .hero .hero-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.82fr)!important;gap:34px!important}
  .hero .hero-visual{height:410px!important}
  .hero .hero-platform-card-teacher{left:-8px!important;top:38px!important}
  .hero .hero-platform-card-visit{right:12px!important;bottom:24px!important}
}

@media(max-width:760px){
  .site-header{height:68px!important}
  .site-header .nav-wrap{width:calc(100% - 32px)!important}
  .site-header .primary-nav{gap:8px!important;white-space:normal!important}
  .site-header .primary-nav>a,.site-header .lang-toggle,.site-header .auth-nav-slot{width:100%!important}
  .site-header .auth-nav-slot{justify-content:stretch!important}
  .site-header .header-login,.site-header .header-education-cta{width:100%!important}
  body main>section.hero{min-height:0!important;padding:104px 0 52px!important}
  .hero .hero-grid{width:calc(100% - 32px)!important;grid-template-columns:1fr!important;gap:34px!important}
  .hero .hero-copy{max-width:none!important;text-align:left!important}
  .hero h1{font-size:39px!important;line-height:1.15!important;letter-spacing:-.045em!important;white-space:normal!important}
  .hero .hero-desc{margin:20px 0 26px!important;font-size:15px!important;line-height:1.7!important}
  .hero .hero-desc br{display:none!important}
  .hero .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .hero .hero-actions .btn{width:100%!important}
  .hero .hero-visual{height:330px!important}
  .hero .hero-learning-image{inset:0!important;border-radius:16px!important}
  .hero .hero-learning-image img{width:220%!important;object-position:100% 0!important;transform:translateX(-54.5%)!important}
  .hero .hero-platform-card{min-height:44px;padding:8px 11px;font-size:11px}
  .hero .hero-platform-card-teacher{left:0;top:42px}
  .hero .hero-platform-card-visit{right:0;bottom:42px}
}

/* Match the selected homepage section copy to the specialty-program heading system. */
#events .section-heading .eyebrow{color:var(--section-eyebrow-color)!important}
.hero-desc,
#partner-center .partner-center-copy>p:not(.eyebrow),
#advertising .section-heading>p:last-child,
#specialty-banners .section-heading>p:last-child,
#events .section-heading>p:last-child{color:var(--section-description-color)!important;font-size:var(--section-description-size)!important;font-weight:var(--section-description-weight)!important;line-height:var(--section-description-line-height)!important}

/* Consistent outlines for the homepage's primary content cards. */
#about .about-media-frame,
#partner-center .partner-center-card,
#advertising .ad-carousel-card,
#specialty-banners .specialty-banner-card,
#events .event-card,
#events .past-event-grid .event-card{border:1px solid #6f9fd4!important}
#events .past-events h3{color:#000!important}

/* Footer brand lettering: Harmony light blue, Link white, subtitle gold. */
body>footer .footer-top .logo-name{color:#dcf2ff!important}
body>footer .footer-top .logo-name b{color:#fff!important}
body>footer .footer-top .logo-name small{color:#d4af37!important}

/* Final About layout precedence. */
#about .about-media-frame{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#about .about-media-company,#about .about-media-video{min-height:0!important;height:auto!important;display:flex!important;flex-direction:column!important;padding:0!important;border:0!important;border-radius:var(--hl-radius)!important;background:transparent!important;box-shadow:none!important}
#about .about-action,#about .about-media-video .intro-video-frame{width:100%!important;height:62px!important;min-height:62px!important;margin:0!important;padding:0 22px!important;border:1px solid var(--hl-primary)!important;border-radius:var(--hl-radius)!important;box-shadow:none!important;font-size:16px!important;font-weight:800!important;line-height:1.25!important;text-decoration:none!important;aspect-ratio:auto!important}
#about .about-structure-toggle{background:#fff!important;color:var(--hl-primary)!important}
#about .about-media-video .intro-video-frame{display:flex!important;align-items:center!important;background:var(--hl-primary)!important;color:#fff!important}
#about .about-media-video .video-play{position:relative!important;inset:auto!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;padding:0!important;color:#fff!important;transform:none!important}
#about .about-media-video .video-play em{color:#fff!important;font-size:16px!important}
#about .about-media-video .video-play b{background:#fff!important;color:var(--hl-primary)!important}
#about .about-media-company .brand-structure,#about .about-video-panel{box-sizing:border-box!important;width:100%!important;margin:14px 0 0!important;border:1px solid #d7e3ef!important;border-radius:var(--hl-radius)!important;box-shadow:0 8px 22px rgba(24,43,91,.06)!important;aspect-ratio:auto!important}
#about .about-media-company .brand-structure{height:280px!important;min-height:280px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;padding:10px 12px!important}
#about .about-video-panel{height:320px!important;min-height:320px!important;padding:12px!important}
#about .about-media-company .brand-structure{background:#f8fbfe!important}
#about .about-video-panel{display:flex;align-items:center;justify-content:center;background:#07111f!important}
#about .about-video-panel[hidden],#about .brand-structure[hidden]{display:none!important}
#about .about-video-panel iframe{width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:calc(var(--hl-radius) - 4px)}
#about .about-media-company .structure-parent,#about .about-media-company .structure-project{width:min(310px,72%)!important;min-width:0!important;min-height:46px!important;padding:4px 14px!important}
#about .about-media-company .structure-parent small{display:none!important}
#about .about-media-company .structure-parent strong,#about .about-media-company .structure-project strong{font-size:13px!important;line-height:1.15!important}
#about .about-media-company .structure-parent span,#about .about-media-company .structure-project span,#about .about-media-company .structure-project b{font-size:7.5px!important;line-height:1.1!important}
#about .about-media-company .structure-arrow{height:13px!important;line-height:13px!important}
#about .about-media-company .structure-branches{gap:5px!important;margin-top:2px!important}
#about .about-media-company .structure-branches>div{min-height:56px!important;padding:5px!important}
@media(max-width:760px){#about .about-media-frame{grid-template-columns:1fr!important}#about .about-action,#about .about-media-video .intro-video-frame{height:58px!important;min-height:58px!important;font-size:14px!important}#about .about-media-company .brand-structure,#about .about-video-panel{height:auto!important;min-height:0!important}#about .about-media-company .brand-structure{padding:12px!important}#about .about-video-panel{padding:10px!important}}

/* Final favicon/about-modal polish: keep all changes scoped to the compact About dialog. */
.about-compact-panel{
  max-height:calc(100dvh - 48px);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.about-compact-structure .structure-parent,
.about-compact-structure .structure-project,
.about-compact-structure .structure-branches>div{
  box-sizing:border-box!important;
  border-style:solid!important;
  border-width:1px!important;
  border-radius:12px!important;
}
.about-compact-structure .structure-parent{
  height:34px!important;
  border-color:#d5dee9!important;
  background:#fff!important;
}
.about-compact-structure .structure-project{
  height:32px!important;
  border-color:#132a93!important;
  padding-block:1px!important;
  box-shadow:none!important;
}
.about-compact-structure .structure-project strong{
  display:block!important;
  overflow:visible!important;
  font-size:12px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
.about-compact-structure .structure-project b[hidden]{display:none!important}
.about-compact-structure .structure-branches{
  width:calc(100% - 12px)!important;
  margin-inline:auto!important;
}
.about-compact-structure .structure-branches>div:has(.status.direct){border-color:#bfd6f1!important}
.about-compact-structure .structure-branches>div:has(.status.co){border-color:#edc0cf!important}
.about-compact-structure .structure-branches>div:has(.status.partner){border-color:#bfe0c9!important}
.about-compact-video{flex:0 0 auto;min-height:0}
@media(max-width:760px){
  .about-compact-panel{max-height:calc(100dvh - 28px)}
  .about-compact-structure .structure-parent{height:36px!important}
  .about-compact-structure .structure-project{height:36px!important}
  .about-compact-structure .structure-project strong{font-size:11px!important;white-space:normal!important}
  .about-compact-structure .structure-branches{width:100%!important}
}

/* Align the three organization tiers and refine their final visual weight. */
.about-compact-structure .structure-parent,
.about-compact-structure .structure-project,
.about-compact-structure .structure-branches{
  width:calc(100% - 12px)!important;
  max-width:none!important;
  margin-inline:auto!important;
}
.about-compact-structure .structure-parent{border-color:#b9c7d6!important}
.about-compact-structure .structure-project{border-color:#0f247f!important}
.about-compact-structure .structure-branches{
  gap:6px!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.about-compact-structure .structure-branches>div{
  height:48px!important;
  min-height:48px!important;
  padding:3px 5px!important;
}
.about-compact-structure .structure-branches .status{line-height:1!important}
.about-compact-structure .structure-branches strong{margin-top:1px!important;line-height:1.05!important}
.about-compact-structure .structure-branches>div:has(.status.direct){border-color:#8fb9e8!important}
.about-compact-structure .structure-branches>div:has(.status.co){border-color:#dfa0b7!important}
.about-compact-structure .structure-branches>div:has(.status.partner){border-color:#91cda3!important}
.about-compact-video{
  box-sizing:border-box;
  border:2px solid var(--hl-primary)!important;
  border-radius:var(--hl-radius)!important;
  box-shadow:none!important;
}
@media(max-width:760px){
  .about-compact-structure .structure-parent,
  .about-compact-structure .structure-project,
  .about-compact-structure .structure-branches{width:100%!important}
  .about-compact-structure .structure-branches{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .about-compact-structure .structure-branches>div{height:48px!important;min-height:48px!important}
}

/* Restore readable vertical rhythm without changing the approved About modal width. */
.about-compact-head{margin-bottom:20px}
.about-compact-head p{margin-bottom:10px}
.about-compact-head h2{margin-bottom:0}
.about-compact-head span{margin-top:12px}
.about-compact-structure .about-modal-diagram{
  flex:none!important;
  gap:10px!important;
  padding-block:16px!important;
}
.about-compact-structure .structure-parent,
.about-compact-structure .structure-project{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  padding-block:5px!important;
}
.about-compact-structure .structure-parent{height:44px!important}
.about-compact-structure .structure-project{height:44px!important;margin-bottom:0!important}
/* The approved photo is part of a taller flyer. Keep its embedded copy outside
   the clipped Hero frame at every responsive breakpoint. */
.hero .hero-learning-image img{
  position:absolute!important;
  top:0!important;
  right:0!important;
  width:auto!important;
  max-width:none!important;
  height:410%!important;
  object-fit:contain!important;
  object-position:top right!important;
  transform:none!important;
}

.about-compact-structure .structure-parent span,
.about-compact-structure .structure-project span,
.about-compact-structure .structure-parent strong,
.about-compact-structure .structure-project strong{margin:0!important}
.about-compact-structure .structure-branches>div{
  height:58px!important;
  min-height:58px!important;
  gap:4px!important;
  padding-block:6px!important;
}
.about-compact-structure .structure-branches strong{margin:0!important}
.about-compact-video{flex:none!important}
@media(max-width:760px){
  .about-compact-head{margin-bottom:18px}
  .about-compact-head p{margin-bottom:8px}
  .about-compact-head span{margin-top:10px}
  .about-compact-structure .about-modal-diagram{gap:9px!important;padding-block:14px!important}
  .about-compact-structure .structure-parent,
  .about-compact-structure .structure-project{height:44px!important}
  .about-compact-structure .structure-branches>div{height:58px!important;min-height:58px!important}
}

/* Final legibility pass: preserve component dimensions while simplifying the Hero CTA. */
.hero .hero-actions .btn-explore{
  width:200.8125px!important;
  gap:0!important;
  justify-content:center!important;
}
.hero .hero-actions .btn-explore>b{display:none!important}

.about-compact-structure .structure-parent span,
.about-compact-structure .structure-project span{font-size:9px!important}
.about-compact-structure .structure-parent strong{font-size:14px!important}
.about-compact-structure .structure-project strong{font-size:14px!important}
.about-compact-structure .structure-branches .status{font-size:9px!important}
.about-compact-structure .structure-branches strong{font-size:11px!important}
@media(max-width:760px){
  .hero .hero-actions .btn-explore{width:100%!important}
  .about-compact-structure .structure-project strong{font-size:13px!important}
  .about-compact-structure .structure-branches .status{font-size:9px!important}
  .about-compact-structure .structure-branches strong{font-size:11px!important}
}

/* Keep a substantial two-column visual on laptop widths. */
@media(max-width:1200px) and (min-width:901px){
  .hero .hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(420px,.95fr)!important;
    gap:24px!important;
  }
  .hero .hero-learning-image{
    inset:50% 0 auto!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1.75/1;
    transform:translateY(-50%)!important;
  }
  .hero .hero-learning-image img{height:440%!important}
  .hero .hero-platform-card-teacher{left:12px!important;top:calc(50% - 145px)!important}
  .hero .hero-platform-card-visit{right:12px!important;bottom:calc(50% - 145px)!important}
}
@media(max-width:1100px) and (min-width:901px){
  .hero .hero-platform-card-teacher{top:calc(50% - 125px)!important}
  .hero .hero-platform-card-visit{bottom:calc(50% - 125px)!important}
}
@media(max-width:900px){
  .hero .hero-grid{grid-template-columns:1fr!important;gap:28px!important}
  .hero .hero-copy{max-width:680px!important}
  .hero .hero-visual{
    width:min(100%,680px)!important;
    height:auto!important;
    aspect-ratio:1.75/1;
    margin:0 auto!important;
  }
  .hero .hero-learning-image{
    inset:0!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:1.75/1;
    transform:none!important;
  }
  .hero .hero-learning-image img{height:440%!important}
  .hero .hero-platform-card-teacher{left:12px!important;top:14px!important}
  .hero .hero-platform-card-visit{right:12px!important;bottom:14px!important}
}

/* Compact partner-resource entry; authentication and resource panels are unchanged. */
#partner-center{padding:26px 0!important;background:#fff!important}
#partner-center .partner-center-card{
  width:min(1040px,calc(100% - 48px))!important;
  max-width:1040px!important;
  margin:0 auto!important;
  padding:20px 24px 20px 44px!important;
  border:1px solid #c9dcf2!important;
  border-radius:var(--hl-radius)!important;
  background:#f7fbff!important;
  box-shadow:0 8px 22px rgba(24,43,91,.06)!important;
  overflow:visible!important;
}
#partner-center .partner-center-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:28px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  justify-items:stretch!important;
}
#partner-center .partner-center-copy{text-align:left!important}
#partner-center .partner-center-copy .eyebrow{display:none!important}
#partner-center .partner-center-copy h2{
  margin:0 0 4px!important;
  color:var(--hl-text)!important;
  font-size:24px!important;
  line-height:1.3!important;
  letter-spacing:-.035em!important;
}
#partner-center .partner-center-copy h2::before{font-size:.76em!important}
#partner-center .partner-center-copy>p:not(.eyebrow){
  margin:0!important;
  color:var(--hl-muted)!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.55!important;
  text-align:left!important;
}
#partner-center .partner-access-card{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#partner-center .partner-auth-gate{
  display:block!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
#partner-center .partner-auth-gate[hidden]{display:none!important}
#partner-center .partner-auth-gate .partner-auth-icon,
#partner-center .partner-auth-gate h3{display:none!important}
#partner-center .partner-auth-gate .btn{
  width:auto!important;
  min-width:174px!important;
  min-height:46px!important;
  margin:0!important;
  padding:11px 18px!important;
  border-radius:12px!important;
  background:var(--hl-primary)!important;
  color:#fff!important;
  font-size:14px!important;
  box-shadow:none!important;
}
#partner-center .partner-auth-gate .btn b{display:none!important}
#partner-center .partner-access-card:has(.partner-downloads:not([hidden])){
  grid-column:1/-1!important;
  width:100%!important;
  margin-top:14px!important;
}
#partner-center .partner-upgrade-guide{margin-top:14px!important}
@media(max-width:760px){
  #partner-center{padding:22px 0!important}
  #partner-center .partner-center-card{
    width:calc(100% - 32px)!important;
    padding:20px!important;
    border-radius:16px!important;
  }
  #partner-center .partner-center-shell{grid-template-columns:1fr!important;gap:16px!important}
  #partner-center .partner-center-copy{text-align:left!important}
  #partner-center .partner-center-copy h2{font-size:21px!important}
  #partner-center .partner-center-copy>p:not(.eyebrow){font-size:13px!important;text-align:left!important}
  #partner-center .partner-auth-gate .btn{width:100%!important;min-width:0!important}
}

/* Partner carousel: compact presentation with the existing data and controls. */
#advertising.advertising{padding:52px 0!important}
#advertising .section-heading{margin-bottom:14px!important}
#advertising .section-heading .eyebrow{color:var(--hl-primary)!important}
#advertising .ad-carousel-track{height:196px!important}
#advertising .ad-carousel-card{grid-template-columns:minmax(0,27fr) minmax(0,73fr)!important;height:196px!important}
#advertising .ad-carousel-logo{padding:18px!important}
#advertising .ad-carousel-logo>img{height:126px!important}
#advertising .ad-carousel-copy{padding:14px 22px!important}
#advertising .ad-carousel-copy>span{font-size:11px!important;letter-spacing:1.35px!important}
#advertising .ad-carousel-copy h3{margin:3px 0 5px!important;font-size:24px!important}
#advertising .ad-carousel-copy p{font-size:15px!important;line-height:1.4!important}
#advertising .ad-carousel-copy .ad-carousel-contact{margin-top:3px!important}
#advertising .ad-carousel-copy a{margin-top:7px!important;font-size:14px!important}
#advertising .ad-carousel-prev,#advertising .ad-carousel-next{width:40px!important;height:40px!important;border:1px solid rgba(26,52,172,.16)!important;border-radius:50%!important;background:#fff!important;color:var(--hl-primary)!important;box-shadow:0 5px 14px rgba(26,52,172,.09)!important;font-size:27px!important;line-height:1!important}
#advertising .ad-carousel-prev:hover,#advertising .ad-carousel-next:hover{border-color:rgba(26,52,172,.36)!important;background:#f8fbff!important;color:var(--hl-primary)!important;transform:translateY(-1px)!important}
#advertising .ad-carousel-dots{margin-top:14px!important}

@media(min-width:761px){
  #advertising .ad-inline-carousel{width:calc(100% - 32px)!important;max-width:1020px!important;margin-inline:auto!important}
}

@media(max-width:760px){
  #advertising.advertising{padding:42px 0!important}
  #advertising .section-heading{margin-bottom:16px!important}
  #advertising .section-heading h2{font-size:30px!important;line-height:1.18!important}
  #advertising .ad-inline-carousel{grid-template-columns:32px minmax(0,1fr) 32px!important;gap:6px!important}
  #advertising .ad-carousel-prev,#advertising .ad-carousel-next{width:32px!important;height:32px!important;font-size:22px!important}
  #advertising .ad-carousel-track{height:306px!important}
  #advertising .ad-carousel-card{grid-template-columns:1fr!important;height:306px!important}
  #advertising .ad-carousel-logo{height:116px!important;padding:12px 16px!important}
  #advertising .ad-carousel-logo>img{height:92px!important}
  #advertising .ad-carousel-copy{padding:14px 18px 16px!important;text-align:left!important}
  #advertising .ad-carousel-copy h3{font-size:20px!important}
  #advertising .ad-carousel-copy p{font-size:13px!important;white-space:normal!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}
  #advertising .ad-carousel-copy a{display:inline-flex!important;align-items:center!important;min-height:36px!important}
}

/* Specialty programs: compact, aligned service cards; existing actions stay intact. */
#specialty-banners .specialty-banner-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;gap:22px!important}
#specialty-banners .specialty-banner-card{height:316px!important;min-height:316px!important;border:1px solid rgba(111,159,212,.72)!important;border-radius:var(--hl-radius)!important;background:#fff!important;box-shadow:0 10px 24px rgba(24,43,91,.08)!important;cursor:default!important;transform:none!important}
#specialty-banners .specialty-banner-card:hover{transform:translateY(-2px)!important;box-shadow:0 14px 28px rgba(24,43,91,.11)!important}
#specialty-banners .specialty-poster-preview{flex:0 0 154px!important;height:154px!important;background:#f6faff!important;cursor:zoom-in!important}
#specialty-banners .specialty-poster-preview img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
#specialty-banners .specialty-poster-preview>span{padding:5px 9px!important;font-size:9px!important}
#specialty-banners .specialty-operation-badge{top:12px!important;left:12px!important;min-width:0!important;padding:6px 10px!important;font-size:10px!important;box-shadow:0 5px 12px rgba(24,43,91,.13)!important}
#specialty-banners .specialty-banner-info{display:grid!important;grid-template-rows:auto minmax(42px,1fr) 46px!important;flex:1 1 auto!important;min-height:0!important;padding:13px 18px 14px!important}
#specialty-banners .specialty-banner-info h3{margin:0 0 5px!important;font-size:21px!important;line-height:1.25!important}
#specialty-banners .specialty-card-description{min-height:42px!important;margin:0!important;font-size:14px!important;line-height:1.5!important}
#specialty-banners .specialty-open,#specialty-banners .specialty-programs-link{align-self:end!important;width:100%!important;height:46px!important;min-height:46px!important;margin:0!important;padding:0 16px!important;border-radius:12px!important;background:var(--hl-primary)!important;color:#fff!important;box-shadow:none!important;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease!important}
#specialty-banners .specialty-open:hover,#specialty-banners .specialty-programs-link:hover{background:#142b98!important;transform:translateY(-2px)!important;box-shadow:0 7px 15px rgba(26,52,172,.16)!important}

/* Specialty-program poster lightbox; card actions remain independent. */
.specialty-flyer-lightbox[hidden]{display:none!important}
.specialty-flyer-lightbox{position:fixed;inset:0;z-index:2300;display:grid;place-items:center;padding:24px}
.specialty-flyer-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(2,14,36,.88);backdrop-filter:blur(6px);cursor:zoom-out}
.specialty-flyer-panel{position:relative;z-index:1;width:fit-content;max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);border-radius:var(--hl-radius);overflow:hidden;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.38)}
.specialty-flyer-scroll{display:grid;place-items:center;width:fit-content;max-width:100%;max-height:calc(100vh - 48px);overflow:auto;padding:16px}
.specialty-flyer-image-close{display:block;max-width:100%;padding:0;border:0;background:transparent;cursor:zoom-out}
.specialty-flyer-image-close img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 84px);margin:auto;object-fit:contain;border-radius:12px;box-shadow:0 16px 44px rgba(8,24,52,.2)}
.specialty-flyer-close{position:absolute;top:12px;right:12px;z-index:2;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(4,39,89,.92);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.specialty-flyer-close:focus-visible,.specialty-flyer-image-close:focus-visible{outline:3px solid #86b7ff;outline-offset:3px}

/* Specialty detail modal: instructors and real program information, without duplicate flyers. */
.specialty-detail-panel{width:min(780px,94vw)!important;max-height:90vh!important}
.specialty-detail-panel .specialty-modal-head{align-items:flex-start!important;padding:22px 26px 18px!important}
.specialty-detail-panel .specialty-modal-head>div{min-width:0!important}
.specialty-detail-panel .specialty-modal-head h2{margin:3px 0 5px!important;font-size:26px!important}
.specialty-modal-intro{margin:0!important;color:var(--hl-muted)!important;font-size:14px!important;line-height:1.5!important;letter-spacing:0!important;font-weight:500!important}
.specialty-detail-panel .specialty-modal-scroll{overflow-y:auto!important;padding:22px 26px!important;background:#f6f9fe!important}
.specialty-detail-panel .specialty-teacher{margin:0 0 20px!important;padding:16px!important;border:1px solid #d7e3f2!important;border-radius:var(--hl-radius)!important;background:#fff!important}
.specialty-detail-panel .specialty-teacher img{width:86px!important;height:86px!important;border-radius:16px!important;object-fit:cover!important}
.specialty-detail-panel .english-teachers{margin:0 0 20px!important;padding:18px!important;border:1px solid #d7e3f2!important;border-radius:var(--hl-radius)!important;background:#fff!important;box-shadow:none!important}
.specialty-detail-panel .english-teachers .teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.specialty-detail-panel .specialty-detail-section{padding:20px;border:1px solid #d7e3f2;border-radius:var(--hl-radius);background:#fff}
.specialty-detail-eyebrow{margin:0 0 4px!important;color:var(--hl-primary)!important;font-size:10px!important;font-weight:800!important;letter-spacing:1.4px!important}
.specialty-detail-title{margin:0 0 14px!important;color:var(--hl-text)!important;font-size:20px!important;line-height:1.35!important;white-space:normal!important;overflow-wrap:anywhere}
.specialty-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.specialty-detail-grid article{display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid #dce7f4;border-radius:14px;background:#f9fbff}
.specialty-detail-grid h4{margin:0 0 7px;color:var(--hl-text);font-size:15px;line-height:1.35}
.specialty-detail-grid p{margin:0;color:#44556c;font-size:12px;line-height:1.55}
.specialty-detail-grid small{display:block;margin-top:auto;padding-top:10px;color:var(--hl-primary);font-size:10px;font-weight:800}
.specialty-detail-panel .specialty-modal-actions{gap:12px!important;padding:18px 26px!important}
.specialty-detail-panel .specialty-modal-actions p{font-size:12px!important}
.specialty-detail-panel .specialty-form-link{min-width:230px!important}

@media(max-width:900px) and (min-width:621px){
  #specialty-banners .specialty-banner-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #specialty-banners .specialty-banner-card:last-child{grid-column:1/-1!important;width:calc(50% - 11px)!important;max-width:none!important;justify-self:center!important}
}
@media(max-width:620px){
  #specialty-banners .specialty-banner-grid{grid-template-columns:1fr!important;gap:18px!important}
  #specialty-banners .specialty-banner-card,#specialty-banners .specialty-banner-card:last-child{grid-column:auto!important;width:100%!important;max-width:none!important;height:312px!important;min-height:312px!important}
  #specialty-banners .specialty-poster-preview,#specialty-banners .specialty-melody .specialty-poster-preview{height:146px!important;flex-basis:146px!important}
  #specialty-banners .specialty-banner-info,#specialty-banners .specialty-melody .specialty-banner-info{padding:13px 18px 14px!important}
  .specialty-flyer-lightbox{padding:10px}
  .specialty-flyer-panel{width:fit-content;max-width:calc(100vw - 20px);max-height:calc(100svh - 20px);border-radius:16px}
  .specialty-flyer-scroll{width:fit-content;max-width:100%;max-height:calc(100svh - 20px);padding:12px}
  .specialty-flyer-image-close img{max-height:calc(100svh - 40px);border-radius:9px}
  .specialty-detail-panel{width:calc(100vw - 16px)!important;max-height:calc(100svh - 16px)!important;border-radius:16px!important}
  .specialty-detail-panel .specialty-modal-head{padding:18px 18px 15px!important}
  .specialty-detail-panel .specialty-modal-head h2{font-size:22px!important}
  .specialty-detail-panel .specialty-modal-scroll{padding:14px!important}
  .specialty-detail-panel .english-teachers{padding:14px!important}
  .specialty-detail-panel .english-teachers .teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .specialty-detail-panel .specialty-teacher{grid-template-columns:70px 1fr!important;padding:14px!important}
  .specialty-detail-panel .specialty-teacher img{width:70px!important;height:70px!important}
  .specialty-detail-panel .specialty-detail-section{padding:16px}
  .specialty-detail-title{font-size:18px!important}
  .specialty-detail-grid{grid-template-columns:1fr;gap:9px}
  .specialty-detail-grid article{padding:13px}
  .specialty-detail-panel .specialty-modal-actions{align-items:stretch!important;padding:15px 18px!important}
  .specialty-detail-panel .specialty-form-link{width:100%!important;min-width:0!important}
}

/* Compact news and events: spacing-only refinement; data and links stay intact. */
#events{padding:48px 0 44px!important}
#events .section-heading{margin-bottom:0!important}
#events .event-grid{margin-top:22px!important;gap:20px!important;align-items:stretch!important}
#events .event-grid>.event-card:not([hidden]){height:480px!important;min-height:480px!important}
#events .event-grid>.event-card:not([hidden]) .event-poster{flex:0 0 220px!important;height:220px!important;min-height:220px!important;aspect-ratio:auto!important}
#events .event-grid>.event-card:not([hidden]) .event-info{padding:12px 16px 13px!important}
#events .event-grid>.event-card:not([hidden]) .event-title-row,#events .event-grid>.event-card:not([hidden]) .event-info>h3{margin-bottom:5px!important}
#events .event-grid>.event-card:not([hidden]) .event-info>p{margin:0!important;-webkit-line-clamp:2!important}
#events .event-grid>.event-card:not([hidden]) .event-info dl{margin:6px 0!important;padding:5px 0!important}
#events .event-grid>.event-card:not([hidden]) .event-info dl div{margin:2px 0!important;line-height:1.35!important}
#events .event-grid>.event-card:not([hidden]) .event-detail-button{width:100%!important;height:42px!important;min-height:42px!important;margin-top:auto!important;padding:8px 12px!important;border-radius:11px!important}
#events .event-grid>.event-card:not([hidden]) .event-detail-button b{display:none!important}
#events .past-events{margin-top:18px!important}
#events .past-events-head{margin-bottom:0!important}
#events .past-events-disclosure>.past-events-toggle{margin:-38px 0 12px auto!important}

@media(max-width:980px) and (min-width:761px){#events .event-grid>.event-card:not([hidden]){height:480px!important}}
@media(max-width:760px){
  #events{padding:42px 0 38px!important}
  #events .event-grid{margin-top:20px!important;gap:16px!important}
  #events .event-grid>.event-card:not([hidden]){height:auto!important;min-height:0!important}
  #events .event-grid>.event-card:not([hidden]) .event-poster{height:200px!important;min-height:200px!important;flex-basis:200px!important}
  #events .event-grid>.event-card:not([hidden]) .event-info{padding:16px 18px!important}
  #events .event-grid>.event-card:not([hidden]) .event-detail-button{height:44px!important;min-height:44px!important;margin-top:12px!important}
  #events .past-events{margin-top:16px!important}
  #events .past-events-disclosure>.past-events-toggle{margin:10px 0 12px auto!important}
}

/* Reuse established section-copy and specialty-action typography. */
#program-categories .section-heading>p:last-child{font-family:"DM Sans","Noto Sans KR",sans-serif!important;font-size:16px!important;font-weight:700!important;line-height:1.65!important;letter-spacing:normal!important;color:#d8bd91!important;opacity:1!important}
#events .event-grid>.event-card:not([hidden]) .event-detail-button{height:46px!important;min-height:46px!important;font-family:"DM Sans","Noto Sans KR",sans-serif!important;font-size:16px!important;font-weight:600!important;line-height:1.65!important;letter-spacing:normal!important;color:#fff!important}
#events .event-detail-button b{display:none!important}

/* One compact, image-sized lightbox treatment for current and past event flyers. */
.event-flyer-modal:not(.volunteer-flyer-open){padding:20px!important}
.event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-panel{width:fit-content!important;max-width:calc(100vw - 40px)!important;height:auto!important;max-height:calc(100vh - 40px)!important;grid-template-rows:minmax(0,1fr) auto!important;border-radius:20px!important;background:#fff!important}
.event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-scroll{display:grid!important;place-items:center!important;width:fit-content!important;max-width:100%!important;max-height:calc(100vh - 88px)!important;overflow:auto!important;padding:16px!important;background:#fff!important}
.event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-scroll img{display:block!important;width:auto!important;height:auto!important;max-width:calc(100vw - 72px)!important;max-height:calc(100vh - 120px)!important;margin:auto!important;object-fit:contain!important;border:0!important;outline:0!important;border-radius:12px!important;box-shadow:none!important}
.event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-collapse{min-height:48px!important}

@media(max-width:760px){
  #program-categories .section-heading>p:last-child{font-size:16px!important}
  #events .event-grid>.event-card:not([hidden]) .event-detail-button{height:46px!important;min-height:46px!important}
  .event-flyer-modal:not(.volunteer-flyer-open){place-items:center!important;padding:10px!important}
  .event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-panel{display:grid!important;width:fit-content!important;max-width:calc(100vw - 20px)!important;height:auto!important;min-height:0!important;max-height:calc(100svh - 20px)!important;border-radius:16px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 24px 70px rgba(0,0,0,.42)!important}
  .event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-scroll{display:grid!important;width:fit-content!important;max-width:100%!important;height:auto!important;min-height:0!important;max-height:calc(100svh - 68px)!important;padding:12px!important;overflow:auto!important;background:#fff!important}
  .event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-scroll img{width:auto!important;height:auto!important;max-width:calc(100vw - 44px)!important;max-height:calc(100svh - 92px)!important;margin:auto!important;border-radius:9px!important}
  .event-flyer-modal:not(.volunteer-flyer-open) .event-flyer-collapse{position:static!important;width:100%!important;min-height:48px!important;border-radius:0!important}
}

/* Header sign-in UX: keep the existing auth and education-request logic intact. */
.site-header .header-education-cta{display:none!important}
@media(min-width:761px){
  .site-header .nav-wrap{width:min(1320px,calc(100% - 32px))!important;gap:clamp(12px,1.6vw,24px)!important}
  .site-header .primary-nav{
    display:grid!important;
    grid-template-columns:76px 110px 76px 86px 54px 60px 92px max-content;
    justify-content:end!important;
    margin-left:auto!important;
    gap:clamp(6px,.8vw,12px)!important;
  }
  .site-header .primary-nav>a:not(.header-education-cta){display:flex!important;justify-content:center!important}
  html[lang="en"] .site-header .primary-nav{font-size:13px!important;letter-spacing:-.01em!important}
  .site-header .header-login{width:82px!important;min-width:82px!important;padding-inline:10px!important}
  .site-header .auth-nav-slot{width:max-content!important;min-width:0!important;gap:5px!important}
  .site-header .admin-member-link{min-width:0!important;padding-inline:8px!important;font-size:10px!important}
  .site-header .auth-user{grid-template-columns:32px minmax(0,104px) auto!important;gap:5px!important}
  .site-header .auth-avatar-edit,
  .site-header .auth-avatar-edit>img,
  .site-header .auth-avatar-edit>.auth-avatar-fallback{width:32px!important;height:32px!important}
  .site-header .auth-user-copy{min-width:0!important}
  .site-header .auth-user-copy b{max-width:104px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .site-header .auth-user-copy small{white-space:nowrap!important}
  .site-header .auth-signout{padding-inline:2px!important;font-size:11px!important}
}
@media(min-width:761px) and (max-width:1200px){
  .site-header .nav-wrap{gap:10px!important}
  .site-header .primary-nav{grid-template-columns:68px 100px 68px 78px 48px 54px 82px max-content;gap:4px!important;font-size:11px!important}
  html[lang="en"] .site-header .primary-nav{font-size:11px!important}
  .site-header .admin-member-link{padding-inline:6px!important;font-size:9px!important}
  .site-header .auth-user{grid-template-columns:30px minmax(0,82px) auto!important;gap:4px!important}
  .site-header .auth-avatar-edit,
  .site-header .auth-avatar-edit>img,
  .site-header .auth-avatar-edit>.auth-avatar-fallback{width:30px!important;height:30px!important}
  .site-header .auth-user-copy b{max-width:82px!important;font-size:11px!important}
  .site-header .auth-user-copy small{font-size:9px!important}
  .site-header .auth-signout{font-size:10px!important}
}
.auth-panel .auth-mode-switch{display:flex!important;align-items:center;justify-content:center;gap:7px;margin:4px 0 12px!important;color:#718198!important;font-size:12px!important;line-height:1.5!important}
.auth-panel .auth-mode-switch button{padding:2px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--hl-primary);font-size:inherit;font-weight:800;cursor:pointer}
.auth-panel .auth-mode-switch button:hover{color:var(--hl-primary-hover)}
@media(max-width:760px){
  .site-header .primary-nav{display:flex!important}
}

/* English event metadata: aligned labels with compact, even row spacing. */
html[lang="en"] #events .event-info dl{display:grid!important;gap:6px!important}
html[lang="en"] #events .event-info dl>div{display:grid!important;grid-template-columns:82px minmax(0,1fr)!important;align-items:start!important;gap:10px!important;margin:0!important}
html[lang="en"] #events .event-info dt{width:auto!important;min-width:0!important}
html[lang="en"] #events .event-info dd{min-width:0!important;margin:0!important}
html[lang="en"] .messiah-detail-meta{display:grid!important;gap:8px!important}
html[lang="en"] .messiah-detail-meta>div{display:grid!important;grid-template-columns:90px minmax(0,1fr)!important;align-items:start!important;gap:12px!important;margin:0!important}
html[lang="en"] .messiah-detail-meta dt,html[lang="en"] .messiah-detail-meta dd{min-width:0!important;margin:0!important}
@media(max-width:760px){
  html[lang="en"] #events .event-info dl>div{grid-template-columns:72px minmax(0,1fr)!important;gap:8px!important}
  html[lang="en"] .messiah-detail-meta>div{grid-template-columns:78px minmax(0,1fr)!important;gap:9px!important}
}

/* Keep the three English event cards on shared text and action baselines. */
@media(min-width:981px){
  html[lang="en"] #events .event-grid>.event-card:not([hidden]){position:relative!important}
  html[lang="en"] #events .event-grid>.event-card:not([hidden]) .event-info{position:static!important;padding-bottom:72px!important}
  html[lang="en"] #events .event-grid>.event-card:not([hidden]) .event-info>p{min-height:34.1px!important}
  html[lang="en"] #events .event-grid>.event-card:not([hidden]) .event-info dl>div{grid-template-columns:70px minmax(0,1fr)!important}
  html[lang="en"] #events .event-grid>.event-card:not([hidden]) .event-detail-button{
    position:absolute!important;
    right:16px!important;
    bottom:13px!important;
    left:16px!important;
    width:auto!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:8px 12px!important;
    border-radius:11px!important;
    font-size:16px!important;
    font-weight:600!important;
    line-height:1.65!important;
    white-space:nowrap!important;
  }
}
