/* Approved combined revisions: clear typography, balanced imagery and contact details. */
@font-face{font-family:"Noto Sans KR";src:url("assets/noto-sans-kr-bold.woff") format("woff");font-style:normal;font-weight:700;font-display:swap}
body,button,input,select,textarea{font-family:"Noto Sans KR","Malgun Gothic",sans-serif;font-weight:500;font-synthesis:none}
h1,h2,h3,h4,h5,h6,strong,b,.button{font-weight:700}
.button,.text-link,.contact-service-links a{font-family:"Noto Sans KR","Malgun Gothic",sans-serif;letter-spacing:normal}
.button{font-size:1rem;line-height:1.65}
.club-hero-inner>p:not(.eyebrow):not(.breadcrumb):not(.club-korean-title){color:#edf3f8;font-size:1.125rem;font-weight:500}
.club-korean-title,.home-club-inner>div:last-child>p:not(.eyebrow){color:#edf3f8}

/* The approved logo and calligraphy share the masthead without a telephone block. */
.masthead{grid-template-columns:250px minmax(0,1fr);gap:56px;min-height:112px}
.brand-message{width:min(100%,780px);justify-self:center}
.calligraphy-window{position:relative;aspect-ratio:9.2;overflow:hidden}
.calligraphy-window img{position:absolute;width:100%;height:auto;max-width:none;left:0;top:50%;transform:translateY(-50%);object-fit:contain}
.logo-window{width:250px;height:auto;aspect-ratio:1530/480}
.logo-window img{width:126.863%;left:-13.072%;top:-29.167%}
.emblem-window img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain;left:auto;top:auto}
.color-chip.navy{background:#0f3a66}.color-chip.gold{background:#bca16b}

/* A fine, straight navy / gold / blue-navy rule above the masthead. */
.site-header{color-scheme:light dark}
.brand-rule{height:6px;background:linear-gradient(180deg,#103551 0%,#173f60 50%,#c59d55 50%,#edcf92 59%,#b58b43 66.667%,#315c7d 66.667%,#244d6e 100%)}
/* Real alpha PNGs are selected by picture; no browser logo filters are needed. */
@media(max-width:1000px){
 .brand-rule{height:4px;background:linear-gradient(180deg,#123a59 0 50%,#d5b476 50% 75%,#315c7d 75% 100%)}
}
@media(prefers-color-scheme:dark){
 .site-header{--ink:#eef4fa;--navy:#eef4fa;--gold:#d9bc7e;background:#111e2b;color:#eef4fa;box-shadow:0 2px 8px #0003}
 .site-header .calligraphy-window img{filter:brightness(0) invert(1)}
 .site-header nav{background:#111e2b;border-color:#35485b}
 .site-header .menu-toggle{background:#1c3043;border-color:#64798c;color:#eef4fa}
 .site-header .nav-group.is-active>.nav-entry,.site-header .nav-group.is-open>.nav-entry{background:#20364a}
 .site-header .submenu{background:#192c3e;border-color:#3d5266;border-top-color:#d9bc7e;box-shadow:0 16px 32px #0004}
 .site-header .submenu a:hover,.site-header .submenu a[aria-current="page"]{background:#29445d;color:#fff}
}

/* Readable original artwork in the portfolio. */
.solution-image img[src*="applications"],.solution-image img[src*="document-"]{object-fit:contain;background:#fff}
.brand-case-image img[src*="mugunghwa-symbol"]{padding:25px}
.brand-case-gallery.columns-5 .brand-case-card:last-child{grid-column:1/-1;max-width:calc(50% - 12px);justify-self:center;width:100%}
.brand-case-card p,.application-gallery figcaption{font-size:1rem;line-height:1.8}
.brand-case-card .text-link{font-size:.9375rem}

/* Business information is kept together in the footer. */
.footer-main{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;align-items:start;gap:38px;padding-block:38px}
.footer-company{font-style:normal;margin-top:13px;color:#e0e8ef;font-size:.9375rem;line-height:1.9}
.footer-company p{display:flex;flex-wrap:wrap;gap:3px 20px;margin:0}
.footer-company p+p{margin-top:3px}
.footer-contact{display:flex;flex-direction:column;max-width:none;align-items:flex-start;gap:5px;color:#e8edf3;font-size:.9375rem}
.footer-contact-label{color:#ddc18a;font-weight:700}
.footer-phones{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;font-weight:700}
.footer-phones>span{color:#9aaebf;font-weight:500}
.footer-bottom{font-size:.875rem;color:#c2ced9;border-top-color:#ffffff25}
.contact-channel>span{font-size:1rem;color:#324b63}
.contact-note{font-size:.9375rem;color:#405870}

@media(min-width:801px){
 .page-hero-panoramic .page-hero-copy{width:43%;max-width:585px}
 .page-hero-panoramic .page-hero-image{inset:0 clamp(30px,5.5vw,110px) 0 34%;justify-content:center;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 91%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 91%,transparent 100%)}
 .page-hero-panoramic .page-hero-image img{width:100%;height:auto;object-fit:contain;object-position:center}
 .page-education .page-hero-panoramic .page-hero-image{left:37%;right:5%}
 .page-branding .page-hero-panoramic .page-hero-image,.page-portfolio .page-hero-panoramic .page-hero-image{inset:25px 4.5% 25px 45%;-webkit-mask-image:none;mask-image:none}
 .page-branding .page-hero-panoramic .page-hero-image img,.page-portfolio .page-hero-panoramic .page-hero-image img{padding:0;-webkit-mask-image:none;mask-image:none}
 .club-hero-image{inset:0 4% 0 36%;background:transparent}
 .club-hero-image img{width:100%;height:100%;object-fit:contain;object-position:center}
 .club-hero-image::after{background:linear-gradient(90deg,#163758 0%,#16375800 22%,#16375800 92%,#163758 100%)}
 .home-hero-image{inset:0 2.5% 0 -2.5%;-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 90%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 90%,transparent 100%)}
}
@media(max-width:1200px){
 .masthead{grid-template-columns:220px minmax(0,1fr);gap:36px}
 .logo-window{width:220px;height:auto}
 .brand-message{width:min(100%,740px)}
 .footer-main{gap:24px;grid-template-columns:minmax(0,1fr) auto 38px}
 .footer-company,.footer-contact{font-size:.875rem}
}
@media(max-width:1000px){
 html{scroll-padding-top:150px}
 .masthead{grid-template-columns:minmax(0,1fr) auto;gap:3px 20px;padding-block:11px 7px;min-height:0}
 .masthead>.brand{grid-column:1;grid-row:1}
 .masthead>.menu-toggle{grid-column:2;grid-row:1}
 .masthead>.brand-message{grid-column:1/-1;grid-row:2;width:min(100%,650px);margin:0 auto}
 .logo-window{width:210px;height:auto}
 .calligraphy-window{aspect-ratio:10.4}
 .site-header nav{max-height:calc(100dvh - 150px)}
}
@media(max-width:800px){
 .page-hero-panoramic .page-hero-image{width:92%;margin-inline:auto;justify-content:center}
 .page-hero-panoramic .page-hero-image img{width:100%;object-position:center}
 .page-branding .page-hero-image,.page-portfolio .page-hero-image{padding-inline:0}
 .footer-main{grid-template-columns:minmax(0,1fr) 44px;gap:22px}
 .footer-contact{grid-column:1;grid-row:2}
 .back-top{grid-column:2;grid-row:1}
 .footer-company,.footer-contact{font-size:.9375rem}
 .brand-case-gallery.columns-5 .brand-case-card:last-child{max-width:calc(50% - 10px)}
}
@media(max-width:560px){
 html{scroll-padding-top:132px}
 .masthead{gap:2px 12px;padding-block:10px 7px}
 .logo-window{width:196px;height:auto}
 .masthead>.brand-message{margin:1px auto 0;width:100%;max-width:none}
 .calligraphy-window{aspect-ratio:9.2}
 .site-header nav{max-height:calc(100dvh - 132px)}
 .club-hero-inner>p:not(.eyebrow):not(.breadcrumb):not(.club-korean-title){font-size:1.0625rem;line-height:1.9}
 .club-hero .button,.home-club .button{font-size:1rem}
 .brand-case-gallery.columns-5 .brand-case-card:last-child{grid-column:auto;max-width:none}
 .brand-case-image img[src*="mugunghwa-symbol"]{padding:20px}
 .footer-main{gap:22px 15px;padding-block:30px}
 .footer-identity{min-width:0}
 .footer-company p{display:block}
 .footer-company p>span{display:block}
 .footer-contact{flex-basis:auto;font-size:.875rem}
 .footer-company{font-size:.875rem}
 .footer-bottom,.footer-bottom>div{font-size:.875rem}
 .footer-phones{gap:5px 9px}
 .contact-channel strong{font-size:1.65rem}
 .contact-channel strong.email{font-size:1.25rem}
}
@media(max-width:380px){
 .logo-window{width:185px;height:auto}
 .footer-main{grid-template-columns:minmax(0,1fr) 38px}
 .footer-phones{column-gap:7px}
}
