
:root{
  --navy:#071b33;
  --navy2:#0d3159;
  --royal:#135a9f;
  --blue:#2b78bd;
  --gold:#d5a84d;
  --gold2:#f0cd82;
  --cream:#fbf7ef;
  --ivory:#fffdf9;
  --ink:#162235;
  --muted:#657287;
  --line:#dfe5ec;
  --white:#fff;
  --shadow:0 18px 45px rgba(9,31,58,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",Arial,sans-serif;color:var(--ink);background:var(--ivory);line-height:1.68;overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.wrap{width:min(1200px,92vw);margin:0 auto}
.topbar{background:linear-gradient(90deg,#071b33,#0d3159 68%,#174f82);color:#edf4fb;font-size:13px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding:8px 0}
.lang a{margin-left:14px;opacity:.68;font-weight:700}
.lang a.active{opacity:1;color:var(--gold2)}
.header{position:sticky;top:0;z-index:40;background:rgba(255,253,249,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(8,27,51,.08)}
.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px;min-width:310px}
.brand-mark{font-size:38px;font-weight:950;letter-spacing:-3px;color:var(--navy);font-style:italic;line-height:1}
.brand-text b{display:block;font-size:16px;letter-spacing:-.2px}
.brand-text span{font-size:11px;color:#6f7d90}
.menu{display:flex;gap:23px;align-items:center;font-size:14px;font-weight:850;white-space:nowrap}
.menu a{position:relative}
.menu a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--gold);transition:.2s}
.menu a:not(.nav-cta):hover:after{right:0}
.nav-cta{padding:11px 17px;border-radius:999px;background:linear-gradient(135deg,var(--navy2),var(--royal));color:#fff!important;box-shadow:0 8px 20px rgba(19,90,159,.18)}
.mobile-toggle{display:none}

.hero{
  position:relative;
  color:#fff;
  background:
    radial-gradient(circle at 78% 18%,rgba(43,120,189,.34),transparent 24%),
    radial-gradient(circle at 9% 86%,rgba(213,168,77,.15),transparent 24%),
    linear-gradient(118deg,#06172c 0%,#0b2c52 56%,#114a7f 100%);
  overflow:hidden
}
.hero:before{
  content:"";position:absolute;inset:0;opacity:.18;pointer-events:none;
  background-image:
   linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px),
   linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(to right,transparent 0%,#000 45%,#000 100%)
}
.hero:after{
  content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(240,205,130,.28);
  border-radius:50%;right:-130px;top:90px;box-shadow:0 0 0 55px rgba(240,205,130,.035),0 0 0 110px rgba(240,205,130,.02)
}
.hero-grid{position:relative;z-index:2;min-height:660px;display:grid;grid-template-columns:1.08fr .82fr;align-items:center;gap:62px;padding:54px 0}
.eyebrow{font-size:13px;letter-spacing:.16em;color:var(--gold2);font-weight:900}
.hero-name{margin-top:14px;font-size:31px;font-weight:900;line-height:1.2;color:#fff;letter-spacing:-.04em}
.hero-role{margin-top:5px;font-size:15px;font-weight:700;color:#d9e5f1}
.hero h1{font-family:"Noto Serif KR","Batang","Times New Roman",serif;font-size:54px;line-height:1.18;margin:18px 0 22px;letter-spacing:-2.2px;word-break:keep-all}
.hero h1 em{font-style:normal;color:var(--gold2)}
.hero p{font-size:18px;color:#dce8f4;max-width:700px;word-break:keep-all}
.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 21px;border-radius:8px;font-weight:900;font-size:14px;transition:.2s}
.btn:hover{transform:translateY(-2px)}
.btn-gold{background:linear-gradient(135deg,#e2b95f,#f0ce86);color:#0b203a;box-shadow:0 12px 28px rgba(213,168,77,.23)}
.btn-line{border:1px solid rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.035)}
.portrait-shell{position:relative;padding:20px}
.portrait-shell:before{content:"";position:absolute;inset:0;border:1px solid rgba(240,205,130,.42);border-radius:28px;transform:translate(-13px,-13px)}
.portrait-card{position:relative;border-radius:24px;overflow:hidden;background:#0c2748;box-shadow:0 30px 75px rgba(0,0,0,.26)}
.portrait-card img{width:100%;height:520px;object-fit:cover;object-position:center 12%}
.portrait-caption{position:absolute;left:20px;right:20px;bottom:18px;padding:12px 14px;border-radius:12px;background:rgba(7,27,51,.78);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12)}
.portrait-caption b{display:block;font-size:15px}.portrait-caption span{font-size:11px;color:#d7e4ef}

.statbar{background:#fff;border-bottom:1px solid var(--line)}
.stats{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:28px 24px;border-right:1px solid var(--line);position:relative}
.stat:last-child{border-right:0}
.stat:before{content:"";position:absolute;left:24px;top:0;width:46px;height:3px;background:linear-gradient(90deg,var(--gold),var(--royal))}
.stat strong{display:block;color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:30px}
.stat span{font-size:13px;color:var(--muted)}

section{padding:84px 0}
.section-head{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(260px,.72fr);gap:46px;align-items:end;margin-bottom:34px}
.section-head h2{font-family:"Noto Serif KR","Batang",serif;font-size:38px;line-height:1.27;margin:8px 0;color:var(--navy);letter-spacing:-1.3px;word-break:keep-all;max-width:760px}
.section-head p{color:var(--muted);margin:0;word-break:keep-all}
.kicker{font-size:12px;color:#9b762d;letter-spacing:.15em;font-weight:950}

.solutions{background:linear-gradient(180deg,#f7f9fc 0%,#fffdf9 100%)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{position:relative;overflow:hidden;background:#fff;border:1px solid #e0e6ed;padding:29px;border-radius:17px;min-height:255px;transition:.24s;box-shadow:0 8px 28px rgba(17,45,75,.035)}
.card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--gold),var(--royal))}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#cbd7e2}
.card .num{font-family:Georgia,serif;font-size:19px;color:#a37d32}
.card h3{font-size:20px;color:var(--navy);margin:20px 0 9px;word-break:keep-all}
.card p{font-size:14px;color:#68768a}
.card .more{display:inline-block;margin-top:18px;font-size:13px;font-weight:900;color:var(--royal)}

.journey{background:var(--cream);position:relative}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.step{position:relative;border:1px solid #eadfca;background:#fff;padding:22px 18px;min-height:128px;border-radius:14px;font-size:13px;color:#6b7684}
.step b{display:block;color:var(--navy);font-size:14px;margin-bottom:8px}
.step:after{content:"→";position:absolute;right:-11px;top:50%;transform:translateY(-50%);color:var(--gold);font-weight:900;z-index:2}
.step:nth-child(4n):after,.step:last-child:after{display:none}

.enterprise{background:linear-gradient(125deg,#071b33,#0e3157 64%,#165482);color:#fff;position:relative;overflow:hidden}
.enterprise:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 20%,rgba(213,168,77,.16),transparent 24%)}
.enterprise .wrap{position:relative;z-index:1}
.enterprise .section-head h2{color:#fff}
.enterprise .section-head p{color:#c6d7e7}
.enterprise-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.feature{padding:30px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.055);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.feature h3{margin-top:0;color:var(--gold2);font-size:21px}
.feature ul{padding-left:18px;color:#dbe7f1}

.global-band{background:#fff}
.global-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}
.global-panel{min-height:410px;padding:38px;border-radius:24px;background:
  linear-gradient(135deg,rgba(19,90,159,.08),rgba(213,168,77,.11)),
  #fbfcfe;border:1px solid #dbe5ef;position:relative;overflow:hidden}
.global-panel:after{content:"GLOBAL";position:absolute;right:-14px;bottom:-40px;font:900 104px/1 Arial;color:rgba(13,49,89,.045);letter-spacing:-6px}
.global-panel h2,.team h2{font-family:"Noto Serif KR","Batang",serif;color:var(--navy);font-size:38px;line-height:1.28;margin:8px 0 18px;word-break:keep-all}
.chips{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0}
.chip{border:1px solid #c9d7e4;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:800;background:#fff;color:var(--navy2)}
.global-visual{min-height:410px;border-radius:24px;background:
 radial-gradient(circle at 20% 22%,rgba(240,205,130,.28),transparent 18%),
 linear-gradient(145deg,#0b2747,#124d83);position:relative;overflow:hidden;border:1px solid rgba(213,168,77,.38)}
.global-visual:before{content:"";position:absolute;inset:24px;border:1px solid rgba(255,255,255,.16);border-radius:50%}
.global-visual:after{content:"US   CANADA   CHINA   PCT";position:absolute;left:30px;right:30px;bottom:34px;color:#fff;font-weight:900;letter-spacing:.18em;font-size:15px;text-align:center}
.orbit{position:absolute;border:1px solid rgba(255,255,255,.22);border-radius:50%}
.orbit.o1{width:260px;height:260px;left:50%;top:50%;transform:translate(-50%,-54%)}
.orbit.o2{width:360px;height:175px;left:50%;top:50%;transform:translate(-50%,-58%) rotate(28deg)}
.orbit.o3{width:360px;height:175px;left:50%;top:50%;transform:translate(-50%,-58%) rotate(-28deg)}
.orbit-core{position:absolute;width:94px;height:94px;left:50%;top:46%;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold),var(--gold2));color:var(--navy);font-weight:950;font-size:25px;box-shadow:0 0 0 15px rgba(255,255,255,.06)}

.ipservices{background:#f6f8fb}
.service-row{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.service-pill{padding:23px 18px;border:1px solid #d9e1e9;border-radius:15px;background:#fff;font-size:13px;font-weight:850;transition:.2s}
.service-pill b{display:block;color:var(--royal);font-size:16px;margin-bottom:5px}
.service-pill:hover{border-color:#b8cbe0;box-shadow:0 12px 30px rgba(21,74,125,.08);transform:translateY(-3px)}

.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.case{padding:25px;border:1px solid #e1e6ec;border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(20,40,60,.055);position:relative}
.case:before{content:"";position:absolute;left:0;top:22px;bottom:22px;width:4px;border-radius:4px;background:linear-gradient(var(--gold),var(--royal))}
.case small{color:#91702f;font-weight:900;margin-left:10px}
.case h3{color:var(--navy);font-size:18px;margin-left:10px}
.case p{margin-left:10px}

.team{background:linear-gradient(180deg,#fffdf9,#f3f6f9)}
.team-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:44px;align-items:center}
.team-visual{height:420px;border-radius:24px;background:
 linear-gradient(135deg,rgba(213,168,77,.12),rgba(19,90,159,.12)),
 #fff;border:1px solid #dfe6ed;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.team-visual:before{content:"SKY";position:absolute;left:34px;top:26px;font:italic 950 74px/1 Arial;color:var(--navy);letter-spacing:-7px}
.team-visual:after{content:"PATENT · IP-R&D · CERTIFICATION · GLOBAL";position:absolute;left:38px;right:38px;bottom:35px;padding-top:20px;border-top:1px solid #d7dee6;color:#597089;font-size:13px;letter-spacing:.1em;font-weight:800}
.network-node{position:absolute;width:94px;height:94px;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:12px;font-weight:900;background:#fff;border:1px solid #dce3eb;color:var(--navy);box-shadow:0 10px 24px rgba(9,42,75,.08)}
.n1{left:44px;top:150px}.n2{left:180px;top:120px}.n3{left:285px;top:210px}.n4{left:150px;top:260px}
.team-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.team-item{background:#fff;border:1px solid #e0e6ec;border-radius:12px;padding:18px}
.team-item b{display:block;color:var(--navy)}
.notice{font-size:11px;color:#7b8794;margin-top:12px}

.support{background:linear-gradient(90deg,#fff7e8,#fffdf9);border-top:1px solid #ead8b8;border-bottom:1px solid #ead8b8}
.support-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center}
.support h2{margin:0;color:#654717;font-family:"Noto Serif KR","Batang",serif;font-size:30px}
.support p{color:#705c3f}

.insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.article{border:1px solid var(--line);border-radius:16px;padding:23px;background:#fff;transition:.2s}
.article:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.article span{font-size:11px;color:#927443;font-weight:900}
.article h3{font-size:18px;color:var(--navy)}

.contact{background:
 radial-gradient(circle at 85% 20%,rgba(43,120,189,.22),transparent 20%),
 linear-gradient(120deg,#06172c,#0a2a4d);color:#fff}
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px}
.contact h2{font-family:"Noto Serif KR","Batang",serif;font-size:40px;margin-top:0}
.contact p{color:#cbd7e2}
.contact-card{background:#fff;color:#1a2a3c;border-radius:16px;padding:29px;box-shadow:0 18px 45px rgba(0,0,0,.18)}
.contact-card b{display:block;color:var(--navy);margin-top:11px}

.footer{background:#04111f;color:#96a7ba;padding:25px 0;font-size:12px}
.footer .wrap{display:flex;justify-content:space-between;gap:20px}

/* Detail pages */
.subhero{position:relative;background:
 linear-gradient(120deg,#06182e,#0e3b68);color:#fff;padding:84px 0;overflow:hidden}
.subhero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(213,168,77,.25);border-radius:50%;right:-70px;top:-95px}
.subhero .kicker{color:var(--gold2)}
.subhero h1{font-family:"Noto Serif KR","Batang",serif;font-size:46px;line-height:1.22;margin:7px 0 15px;max-width:900px;word-break:keep-all}
.subhero p{max-width:800px;color:#d5e1ec;font-size:17px}
.content{padding:72px 0}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:45px}
.prose h2{font-family:"Noto Serif KR","Batang",serif;color:var(--navy);font-size:30px;margin:42px 0 14px;word-break:keep-all}
.prose h3{color:var(--navy2);margin-top:30px}
.prose p,.prose li{color:#4f6073}
.prose ul{padding-left:20px}
.callout{padding:22px 24px;border-left:4px solid var(--gold);background:#fff8ea;border-radius:0 12px 12px 0;margin:26px 0}
.sidebox{background:#f6f8fa;border:1px solid #e2e7ed;border-radius:14px;padding:23px;height:max-content;position:sticky;top:105px}
.sidebox h3{margin-top:0;color:var(--navy)}
.sidebox a{display:block;padding:10px 0;border-bottom:1px solid #e0e5ea;font-size:13px;font-weight:800;color:var(--royal)}
.sidebox a:last-child{border-bottom:0}

@media(max-width:980px){
 .menu{display:none}.mobile-toggle{display:block;font-size:23px;background:none;border:0;color:var(--navy)}
 .brand{min-width:0}
 .hero-grid{grid-template-columns:1fr;min-height:0;padding:62px 0}
 .hero h1{font-size:45px}
 .portrait-shell{max-width:590px}
 .stats{grid-template-columns:1fr 1fr}
 .stat:nth-child(2){border-right:0}
 .cards{grid-template-columns:1fr 1fr}
 .journey-grid{grid-template-columns:1fr 1fr}
 .step:nth-child(2n):after{display:none}
 .enterprise-grid,.global-grid,.team-grid,.support-grid,.contact-grid,.content-grid{grid-template-columns:1fr}
 .service-row{grid-template-columns:1fr 1fr 1fr}
 .case-grid,.insights-grid{grid-template-columns:1fr 1fr}
 .sidebox{position:static}
}
@media(max-width:680px){
 section{padding:62px 0}
 .topbar .wrap{font-size:11px}
 .topbar .wrap>span{max-width:70%}
 .nav{min-height:70px}
 .brand-mark{font-size:31px}.brand-text b{font-size:14px}
 .hero h1{font-size:36px;letter-spacing:-1.4px}
 .hero p{font-size:16px}
 .hero-actions{flex-direction:column;align-items:stretch}
 .portrait-card img{height:445px}
 .stats{grid-template-columns:1fr 1fr}
 .stat{padding:22px 13px}.stat strong{font-size:23px}
 .section-head{grid-template-columns:1fr;gap:12px}
 .section-head h2,.global-panel h2,.team h2{font-size:30px}
 .cards,.case-grid,.insights-grid,.service-row{grid-template-columns:1fr}
 .journey-grid{grid-template-columns:1fr}
 .step:after{display:none}
 .team-list{grid-template-columns:1fr}
 .team-visual{height:390px}
 .n3{left:230px}
 .footer .wrap{display:block}
 .subhero h1{font-size:35px}
}


/* ===== Upgraded V2: refined futuristic corporate IP style ===== */
.brand{gap:14px;min-width:360px}
.brand-logo-img{
  width:120px;height:54px;object-fit:contain;object-position:left center;display:block;
}
.brand-text b{font-size:16px}
.brand-text span{font-size:11px}

.hero{
  background:
    radial-gradient(circle at 76% 16%,rgba(41,111,168,.24),transparent 23%),
    radial-gradient(circle at 12% 86%,rgba(213,168,77,.15),transparent 23%),
    linear-gradient(120deg,#07182b 0%,#0b2d50 58%,#123f68 100%);
}
.hero:before{
  opacity:.18;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px);
  background-size:48px 48px;
}
.hero-visual-accent{
  position:absolute;right:5%;top:11%;width:220px;height:220px;border-radius:50%;
  border:1px solid rgba(214,177,103,.18);box-shadow:0 0 0 38px rgba(214,177,103,.025);
  pointer-events:none;
}
.portrait-shell{padding:0;position:relative}
.portrait-shell:before{display:none}
.portrait-card{
  border-radius:0;
  overflow:hidden;
  background:#0b2748;
  box-shadow:0 26px 62px rgba(0,0,0,.26);
  border:1px solid rgba(229,195,127,.36);
  aspect-ratio:4/5;
}
.portrait-card img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  background:#0b2748;
}
.portrait-caption{
  left:0;right:0;bottom:0;border-radius:0;
  background:linear-gradient(180deg,transparent,rgba(6,22,41,.92));
  border:0;padding:44px 18px 16px;
}

.focus-strip{
  background:linear-gradient(90deg,#fff8e8,#f7fbff);
  border-top:1px solid #ead9b7;border-bottom:1px solid #d9e5ef
}
.focus-grid{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:center;padding:42px 0
}
.focus-title{
  font-family:"Noto Serif KR","Batang",serif;
  color:#0a2747;font-size:31px;line-height:1.35;margin:4px 0 0;word-break:keep-all
}
.focus-copy{font-size:15px;color:#5d6a79;word-break:keep-all}
.focus-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.focus-point{padding:12px 14px;border:1px solid #dbe5ee;background:#fff;border-radius:10px;font-size:12px;font-weight:800;color:#123b63}

.solution-highlight{
  border:1px solid #d8e2ec;background:linear-gradient(145deg,#fff,#f7fbff);
  border-radius:16px;padding:24px;margin-top:18px
}
.solution-highlight b{display:block;color:#0d4f85;font-size:17px;margin-bottom:8px}

.futuristic-divider{
  height:1px;background:linear-gradient(90deg,transparent,#d0aa5f 18%,#4a8ac0 50%,#d0aa5f 82%,transparent)
}

@media(max-width:980px){
 .brand{min-width:0}
 .brand-logo-img{width:100px;height:46px}
 .focus-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
 .brand-logo-img{width:90px;height:42px}
 .portrait-card{aspect-ratio:4/5}
 .focus-points{grid-template-columns:1fr}
}


/* ===== V8 targeted refinements only ===== */
.brand{min-width:auto;gap:0}
.brand-logo-img{display:none!important}
.brand-text{display:none!important}
.sky-only-logo{
  width:122px;
  height:62px;
  object-fit:contain;
  object-position:left center;
  display:block;
}
.nav{min-height:82px}

.profile-link-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:24px;
}
.profile-link-card{
  display:block;
  padding:20px 18px;
  border:1px solid #dce4eb;
  border-radius:14px;
  background:#fff;
  min-height:145px;
  box-shadow:0 10px 28px rgba(12,56,94,.045);
  transition:.2s;
}
.profile-link-card:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 34px rgba(12,56,94,.10);
}
.profile-link-card small{
  display:block;
  color:#a47c30;
  font-weight:900;
  letter-spacing:.06em;
  margin-bottom:8px;
}
.profile-link-card b{
  display:block;
  color:#0b365d;
  font-size:16px;
  margin-bottom:7px;
}
.profile-link-card span{
  display:block;
  color:#687789;
  font-size:12px;
  line-height:1.6;
}

.profile-detail-section{
  scroll-margin-top:110px;
  padding:24px;
  border:1px solid #e0e6ec;
  border-radius:14px;
  background:#fff;
  margin-bottom:16px;
}
.profile-detail-section h2{
  margin-top:0;
  color:#0b365d;
  font-size:24px;
}
.profile-detail-section .tagline{
  color:#9b762d;
  font-weight:900;
  font-size:12px;
  letter-spacing:.08em;
}

.contact-process{
  display:grid;
  gap:12px;
  margin-top:22px;
}
.contact-step{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  align-items:start;
  padding:15px 0;
  border-bottom:1px solid rgba(255,255,255,.13);
}
.contact-step:last-child{border-bottom:0}
.contact-step .n{
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  background:#d5a84d;color:#071b33;font-weight:950;
}
.contact-step b{display:block;color:#fff;margin-bottom:3px}
.contact-step span{color:#cbd7e2;font-size:13px}
.contact-email{
  display:inline-block;
  margin-top:20px;
  padding:13px 20px;
  border-radius:8px;
  background:#fff;
  color:#0b2f57;
  font-weight:950;
}
.contact-card .primary-email{
  font-size:18px;
  color:#0b365d;
  font-weight:950;
  word-break:break-all;
}
.contact-card .secondary-contact{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #e0e5ea;
  color:#687789;
  font-size:12px;
}

.project-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}
.project-card{
  display:block;
  padding:26px;
  border:1px solid #dde5ed;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 28px rgba(12,56,94,.05);
  transition:.2s;
}
.project-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 36px rgba(12,56,94,.11);
}
.project-card small{
  color:#9b762d;
  font-weight:900;
  letter-spacing:.06em;
}
.project-card h3{
  color:#0b365d;
  margin:9px 0 10px;
  font-size:21px;
}
.project-card p{color:#667588}
.project-card .more{
  margin-top:14px;
  display:inline-block;
  color:#135a9f;
  font-weight:900;
}

.project-meta{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:24px 0;
}
.project-meta .box{
  padding:18px;
  border-radius:12px;
  background:#f6f8fb;
  border:1px solid #e0e6ec;
}
.project-meta b{
  display:block;
  color:#0b365d;
  margin-bottom:5px;
}
.project-meta span{
  color:#687789;
  font-size:13px;
}

@media(max-width:980px){
  .profile-link-grid{grid-template-columns:1fr 1fr}
  .project-list{grid-template-columns:1fr}
  .project-meta{grid-template-columns:1fr}
}
@media(max-width:680px){
  .sky-only-logo{width:98px;height:50px}
  .profile-link-grid{grid-template-columns:1fr}
}


/* ===== V9 header company name refinement ===== */
.brand{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  min-width:auto !important;
  text-decoration:none;
}
.sky-only-logo{
  width:122px;
  height:62px;
  object-fit:contain;
  object-position:left center;
  display:block;
  flex:0 0 auto;
}
.brand-name-wrap{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:1.2;
}
.brand-name-en{
  font-size:16px;
  font-weight:800;
  color:#102844;
  letter-spacing:.01em;
}
.brand-name-ko{
  font-size:11px;
  font-weight:700;
  color:#69798d;
  margin-top:4px;
}
@media (max-width: 840px){
  .brand{
    gap:10px !important;
  }
  .sky-only-logo{
    width:98px;
    height:50px;
  }
  .brand-name-en{
    font-size:14px;
  }
  .brand-name-ko{
    font-size:10px;
  }
}
@media (max-width: 560px){
  .brand-name-en{
    font-size:12px;
  }
  .brand-name-ko{
    font-size:9px;
  }
}


/* ===== V11 header emphasis: bigger company name ===== */
.brand{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  min-width:auto !important;
  text-decoration:none;
}
.sky-only-logo{
  width:96px !important;
  height:54px !important;
  object-fit:contain;
  object-position:left center;
  display:block;
  flex:0 0 auto;
}
.brand-name-wrap{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:1.08;
}
.brand-name-en{
  font-size:31px !important;
  font-weight:900 !important;
  color:#102844;
  letter-spacing:-0.01em;
}
.brand-name-ko{
  font-size:15px !important;
  font-weight:800 !important;
  color:#6a798d;
  margin-top:7px;
}
.nav{
  min-height:96px !important;
}
@media (max-width: 1100px){
  .brand-name-en{font-size:26px !important;}
  .brand-name-ko{font-size:14px !important;}
  .sky-only-logo{width:84px !important;height:48px !important;}
}
@media (max-width: 840px){
  .brand{gap:12px !important;}
  .brand-name-en{font-size:21px !important;}
  .brand-name-ko{font-size:12px !important;}
  .sky-only-logo{width:72px !important;height:42px !important;}
  .nav{min-height:84px !important;}
}
@media (max-width: 560px){
  .brand-name-en{font-size:17px !important;}
  .brand-name-ko{font-size:10px !important;}
  .sky-only-logo{width:60px !important;height:36px !important;}
}


/* ===== V12 header refinement: no left logo, English one-line, bigger Korean ===== */
.sky-only-logo{
  display:none !important;
}
.brand{
  display:flex !important;
  align-items:center !important;
  gap:0 !important;
  min-width:auto !important;
  text-decoration:none;
}
.brand-name-wrap{
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:1.05;
}
.brand-name-en{
  font-size:25px !important;
  font-weight:900 !important;
  color:#102844;
  letter-spacing:-0.02em;
  white-space:nowrap !important;
}
.brand-name-ko{
  font-size:18px !important;
  font-weight:800 !important;
  color:#6a798d;
  margin-top:8px;
  white-space:nowrap !important;
}
.nav{
  min-height:94px !important;
}
.nav-links{
  gap:22px !important;
}
.nav-links a{
  font-size:15px !important;
}
@media (max-width: 1180px){
  .brand-name-en{font-size:22px !important;}
  .brand-name-ko{font-size:16px !important;}
  .nav-links{gap:16px !important;}
  .nav-links a{font-size:14px !important;}
}
@media (max-width: 900px){
  .brand-name-en{font-size:19px !important;}
  .brand-name-ko{font-size:14px !important;}
}
@media (max-width: 680px){
  .brand-name-en{font-size:16px !important;}
  .brand-name-ko{font-size:12px !important;}
}


/* ===== V13: larger company title only ===== */
.brand-name-en{
  font-size:31px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.brand-name-ko{
  font-size:21px !important;
  font-weight:850 !important;
  margin-top:9px !important;
  white-space:nowrap !important;
}
.nav{
  min-height:104px !important;
}
@media (max-width:1180px){
  .brand-name-en{font-size:27px !important;}
  .brand-name-ko{font-size:18px !important;}
}
@media (max-width:900px){
  .brand-name-en{font-size:23px !important;}
  .brand-name-ko{font-size:16px !important;}
}
@media (max-width:680px){
  .brand-name-en{font-size:19px !important;}
  .brand-name-ko{font-size:14px !important;}
}


/* ===== V14: larger company title + larger desktop menu ===== */
.brand-name-en{
  font-size:38px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  letter-spacing:-0.025em !important;
}
.brand-name-ko{
  font-size:24px !important;
  font-weight:850 !important;
  margin-top:10px !important;
  white-space:nowrap !important;
}
.nav{
  min-height:118px !important;
}
.menu{
  gap:26px !important;
  font-size:18px !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}
.menu a{
  font-size:18px !important;
}
.nav-cta{
  padding:14px 22px !important;
  font-size:18px !important;
}

@media (max-width: 1450px){
  .brand-name-en{font-size:34px !important;}
  .brand-name-ko{font-size:21px !important;}
  .menu{gap:20px !important;font-size:16px !important;}
  .menu a{font-size:16px !important;}
  .nav-cta{font-size:16px !important;padding:13px 19px !important;}
}
@media (max-width: 1180px){
  .brand-name-en{font-size:29px !important;}
  .brand-name-ko{font-size:18px !important;}
  .menu{gap:15px !important;font-size:15px !important;}
  .menu a{font-size:15px !important;}
  .nav-cta{font-size:15px !important;}
  .nav{min-height:104px !important;}
}
@media (max-width: 980px){
  .brand-name-en{font-size:25px !important;}
  .brand-name-ko{font-size:16px !important;}
}


/* ===== V15: shorter top menu + bigger clickable labels site-wide ===== */
.brand-name-en{
  font-size:40px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  letter-spacing:-0.03em !important;
}
.brand-name-ko{
  font-size:26px !important;
  font-weight:850 !important;
  margin-top:10px !important;
  white-space:nowrap !important;
  text-decoration:none !important;
  border-bottom:0 !important;
  box-shadow:none !important;
}
.menu{
  gap:24px !important;
  font-size:20px !important;
  font-weight:850 !important;
}
.menu a{
  font-size:20px !important;
  white-space:nowrap !important;
}
.nav-cta{
  font-size:20px !important;
  padding:15px 24px !important;
}
.nav{
  min-height:122px !important;
}

/* focus buttons / section labels */
.focus-point{
  font-size:22px !important;
  font-weight:850 !important;
  padding:18px 22px !important;
}

/* clickable expertise cards */
.profile-link-card{
  min-height:160px !important;
}
.profile-link-card small{
  font-size:13px !important;
}
.profile-link-card b{
  font-size:20px !important;
  line-height:1.35 !important;
}
.profile-link-card span{
  font-size:14px !important;
  line-height:1.7 !important;
}

/* service / case / project / insight cards */
.service-card h3,
.case h3,
.project-card h3,
.article-card h3,
.insight-card h3,
.feature-card h3{
  font-size:23px !important;
  line-height:1.35 !important;
}
.service-card p,
.case p,
.project-card p,
.article-card p,
.insight-card p,
.feature-card p{
  font-size:15px !important;
  line-height:1.75 !important;
}
.service-card small,
.case small,
.project-card small,
.article-card small,
.insight-card small,
.feature-card small{
  font-size:13px !important;
}

/* side links / buttons */
.sidebox a,
.about-link,
.contact-email,
.button,
.btn{
  font-size:17px !important;
}

@media (max-width: 1450px){
  .brand-name-en{font-size:35px !important;}
  .brand-name-ko{font-size:22px !important;}
  .menu{gap:18px !important;font-size:17px !important;}
  .menu a{font-size:17px !important;}
  .nav-cta{font-size:17px !important;padding:14px 20px !important;}
  .focus-point{font-size:19px !important;}
}
@media (max-width: 1180px){
  .brand-name-en{font-size:30px !important;}
  .brand-name-ko{font-size:19px !important;}
  .menu{gap:14px !important;font-size:15px !important;}
  .menu a{font-size:15px !important;}
  .nav-cta{font-size:15px !important;}
  .focus-point{font-size:17px !important;padding:16px 18px !important;}
}
@media (max-width: 980px){
  .brand-name-en{font-size:25px !important;}
  .brand-name-ko{font-size:16px !important;}
  .profile-link-card b{font-size:18px !important;}
}


/* V18 */
html{scroll-behavior:smooth;}
.en .brand-name-ko{display:none;}
.focus-point{display:block;text-decoration:none;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;}
.focus-point:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(9,31,58,.08);border-color:#a5b8cf;background:#fff;}
.back-to-top{position:fixed;right:24px;bottom:24px;width:48px;height:48px;border-radius:999px;background:#0f4e91;color:#fff;text-decoration:none;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;box-shadow:0 14px 34px rgba(9,31,58,.22);z-index:120;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .2s ease, transform .2s ease, background .2s ease;}
.back-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0);}
.back-to-top:hover{background:#123f75;}
.profile-detail-section{scroll-margin-top:110px;}
@media (max-width:700px){.back-to-top{right:16px;bottom:16px;width:44px;height:44px;font-size:21px;}}


/* ===== V19 EN/ZH navigation fit + profile/contact consistency ===== */
.en .header .wrap,
.zh .header .wrap{width:min(1540px,96vw) !important;}
.en .brand{min-width:0 !important;flex:0 0 auto !important;}
.en .brand-name-en{font-size:31px !important;white-space:nowrap !important;}
.en .menu{gap:17px !important;font-size:16px !important;}
.en .menu a{font-size:16px !important;}
.en .nav-cta{font-size:16px !important;padding:13px 19px !important;}
.en .nav{gap:24px !important;}
.zh .brand{min-width:0 !important;flex:0 0 auto !important;}
.zh .brand-name-en{font-size:29px !important;white-space:nowrap !important;}
.zh .brand-name-ko{font-size:18px !important;white-space:nowrap !important;}
.zh .menu{gap:18px !important;font-size:16px !important;}
.zh .menu a{font-size:16px !important;}
.zh .nav-cta{font-size:16px !important;padding:13px 19px !important;}
.profile-link-card{text-decoration:none !important;}
.contact-email{cursor:pointer;}
@media(max-width:1380px){
  .en .brand-name-en{font-size:28px !important;}
  .en .menu{gap:13px !important;}
  .en .menu a{font-size:14px !important;}
  .en .nav-cta{font-size:14px !important;padding:12px 16px !important;}
  .zh .brand-name-en{font-size:26px !important;}
  .zh .brand-name-ko{font-size:16px !important;}
  .zh .menu{gap:13px !important;}
  .zh .menu a{font-size:14px !important;}
}


/* ===== V20: unified typography =====
   Use one clean sans-serif family across home and all detail pages.
   This intentionally overrides older Noto Serif KR / Batang / Georgia heading rules.
*/
body,
button,
input,
textarea,
select,
.brand-name-en,
.brand-name-ko,
.menu,
.hero h1,
.section-head h2,
.global-panel h2,
.team h2,
.support h2,
.contact h2,
.subhero h1,
.prose h1,
.prose h2,
.prose h3,
.profile-intro h2,
.profile-detail-section h2,
.card h3,
.feature h3,
.case h3,
.project-card h3,
.article h3,
.article-card h3,
.insight-card h3,
.service-pill b,
.sidebox h3,
.contact-card b,
.stat strong,
.card .num {
  font-family:
    "Pretendard",
    "Noto Sans KR",
    "Noto Sans CJK KR",
    "Noto Sans SC",
    "Apple SD Gothic Neo",
    "Malgun Gothic",
    "Microsoft YaHei",
    Arial,
    sans-serif !important;
}

/* Keep heading hierarchy through size/weight, not by switching typeface */
.hero h1,
.subhero h1 {
  font-weight: 850 !important;
  letter-spacing: -0.045em !important;
}
.section-head h2,
.global-panel h2,
.team h2,
.contact h2,
.support h2,
.prose h2,
.profile-intro h2,
.profile-detail-section h2 {
  font-weight: 800 !important;
  letter-spacing: -0.035em !important;
}
.prose h3,
.card h3,
.feature h3,
.case h3,
.project-card h3,
.article h3,
.article-card h3,
.insight-card h3 {
  font-weight: 800 !important;
}

/* Prevent detail-page headings from looking like a separate 'traditional law firm' template */
.prose h2 {
  font-size: 30px !important;
  line-height: 1.35 !important;
}
.subhero h1 {
  line-height: 1.2 !important;
}

/* Chinese/English also stay in the same visual family */
.en,
.en * {
  font-family:
    "Pretendard",
    "Noto Sans",
    "Segoe UI",
    Arial,
    sans-serif;
}
.zh,
.zh * {
  font-family:
    "Noto Sans SC",
    "Microsoft YaHei",
    "PingFang SC",
    "Pretendard",
    Arial,
    sans-serif;
}

/* Re-apply strong weights to language pages after universal language rules */
.en h1,.en h2,.en h3,.en .menu a,.en .brand-name-en,
.zh h1,.zh h2,.zh h3,.zh .menu a,.zh .brand-name-en,.zh .brand-name-ko {
  font-weight: 800;
}


/* ===== V21: official sources + searchable IP databases ===== */
.official-ref-hint{
  display:inline-flex;
  align-items:center;
  margin:0 0 13px;
  padding:7px 11px;
  border-radius:999px;
  background:#eaf3fd;
  color:#135a9f;
  font-size:12px;
  font-weight:800;
}
.official-source-list{
  list-style:none !important;
  padding:0 !important;
  margin:0 0 22px !important;
  display:grid;
  gap:10px;
}
.official-source-list li{margin:0 !important;padding:0 !important;}
.official-source-list a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  border:1px solid #cbdceb;
  border-left:5px solid #d5a84d;
  border-radius:12px;
  background:linear-gradient(100deg,#f8fbff 0%,#ffffff 72%);
  color:#0d4f8d !important;
  font-weight:850;
  box-shadow:0 6px 18px rgba(13,49,89,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.official-source-list a:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 25px rgba(13,49,89,.11);
  border-color:#87add0;
  background:linear-gradient(100deg,#edf6ff,#fff8e9);
}
.external-mark{
  flex:0 0 auto;
  width:29px;height:29px;border-radius:50%;
  display:grid;place-items:center;
  background:#0f5798;color:#fff;
  font-size:15px;font-weight:900;
}

.official-resources-section{
  position:relative;
  overflow:hidden;
  padding:72px 0;
  background:
    radial-gradient(circle at 92% 10%,rgba(68,154,224,.24),transparent 24%),
    radial-gradient(circle at 4% 92%,rgba(213,168,77,.16),transparent 22%),
    linear-gradient(125deg,#071b33 0%,#0b315a 55%,#12598d 100%);
  color:#fff;
}
.official-resources-section:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.12;
  background-image:linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px);
  background-size:42px 42px;
}
.official-resources-section .wrap{position:relative;z-index:1;}
.official-resources-head{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:40px;
  align-items:end;
  margin-bottom:28px;
}
.official-resources-head .kicker{color:#f0cd82;}
.official-resources-head h2{
  margin:7px 0 0;
  color:#fff;
  font-size:36px;
  line-height:1.25;
  letter-spacing:-.035em;
}
.official-resources-head p{margin:0;color:#ccdae8;font-size:15px;}
.official-db-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.official-db-card{
  min-height:128px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:13px;
  padding:19px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:16px;
  background:rgba(255,255,255,.095);
  backdrop-filter:blur(8px);
  color:#fff;
  box-shadow:inset 0 1px rgba(255,255,255,.06);
  transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.official-db-card:hover{
  transform:translateY(-4px);
  background:rgba(255,255,255,.16);
  border-color:rgba(240,205,130,.62);
  box-shadow:0 16px 34px rgba(0,0,0,.14);
}
.official-db-code{
  min-width:43px;height:43px;padding:0 9px;border-radius:11px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,#efc86f,#d5a84d);
  color:#071b33;
  font-size:11px;font-weight:950;letter-spacing:.03em;
}
.official-db-text{min-width:0;}
.official-db-text b{display:block;color:#fff;font-size:16px;line-height:1.25;margin-bottom:6px;}
.official-db-text small{display:block;color:#c8d8e7;font-size:12px;line-height:1.45;}
.official-db-arrow{
  flex:0 0 auto;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.34);color:#f6d68e;font-size:17px;font-weight:900;
}
@media(max-width:980px){
  .official-db-grid{grid-template-columns:1fr 1fr;}
  .official-resources-head{grid-template-columns:1fr;gap:10px;}
}
@media(max-width:620px){
  .official-db-grid{grid-template-columns:1fr;}
  .official-resources-head h2{font-size:29px;}
}


/* ===== V22 consultation + typography final overrides ===== */
html{scroll-behavior:smooth}
body,button,input,textarea,select,
.hero h1,.focus-title,.section-head h2,.global-panel h2,.team h2,.support h2,.contact h2,
.subhero h1,.prose h1,.prose h2,.prose h3,.profile-intro h2,.profile-detail-section h2,
.card h3,.feature h3,.case h3,.project-card h3,.article h3,.sidebox h3,.stat strong{
  font-family:"Pretendard","Noto Sans KR","Noto Sans CJK KR","Noto Sans SC","Apple SD Gothic Neo","Malgun Gothic","Microsoft YaHei","Segoe UI",Arial,sans-serif !important;
}
.hero h1,.focus-title,.subhero h1,.section-head h2,.global-panel h2,.team h2,.contact h2,.profile-intro h2,.profile-detail-section h2,.prose h2{font-weight:850!important;letter-spacing:-.035em!important}
.prose h2{font-size:30px!important;line-height:1.35!important}

.consult-compact{margin-top:38px;padding:28px;border:1px solid #dbe4ed;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#f6f9fc 100%);box-shadow:0 12px 32px rgba(13,49,89,.06)}
.consult-compact .consult-label{font-size:12px;font-weight:900;letter-spacing:.12em;color:#a37a2c;margin-bottom:8px}
.consult-compact h2{margin:0 0 10px!important;color:#071b33!important;font-size:28px!important}
.consult-compact p{margin:0;color:#5c6d80!important;font-size:15px;line-height:1.75}
.consult-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.consult-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;border-radius:10px;font-weight:900;font-size:15px;transition:.2s;border:1px solid transparent}
.consult-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(13,49,89,.12)}
.consult-btn.primary{background:linear-gradient(135deg,#0d3159,#135a9f);color:#fff}
.consult-btn.secondary{background:#fff;color:#0d3159;border-color:#b9cadb}
.consult-btn.email{background:#b42318;color:#fff}
.consult-note{margin-top:11px!important;font-size:12px!important;color:#7d8996!important}

.consult-page{background:linear-gradient(180deg,#fffdf9,#f5f8fb)}
.consult-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:start}
.consult-form-card,.consult-choice-card{background:#fff;border:1px solid #dce4ec;border-radius:18px;padding:30px;box-shadow:0 14px 34px rgba(11,42,74,.07)}
.consult-form-card h2,.consult-choice-card h2{margin-top:0;color:#071b33;font-size:27px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-field{display:flex;flex-direction:column;gap:7px}
.form-field.full{grid-column:1/-1}
.form-field label{font-size:13px;font-weight:850;color:#20344c}
.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #cad6e1;border-radius:10px;background:#fff;padding:12px 13px;font:inherit;color:#1b2c40;outline:none}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#2b78bd;box-shadow:0 0 0 3px rgba(43,120,189,.10)}
.form-field textarea{min-height:190px;resize:vertical}
.form-help{font-size:12px;color:#758394;margin-top:8px}
.form-submit{border:0;cursor:pointer;width:100%;margin-top:18px}
.consult-choice{padding:18px 0;border-bottom:1px solid #e4e9ef}
.consult-choice:last-child{border-bottom:0}
.consult-choice b{display:block;color:#071b33;margin-bottom:5px;font-size:17px}
.consult-choice p{margin:0 0 12px;color:#637387;font-size:14px}
.consult-direct-email{font-size:19px;font-weight:900;color:#135a9f;word-break:break-all}

.contact .consult-form-card{color:#1a2a3c;background:#fff}
.contact .consult-form-card h2{color:#071b33}
.contact .consult-form-card p{color:#637387}
.contact .consult-choice-card{color:#1a2a3c}
.contact .consult-choice-card p{color:#637387}

@media(max-width:900px){.consult-layout{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}}
@media(max-width:600px){.consult-actions{flex-direction:column}.consult-btn{width:100%}.consult-form-card,.consult-choice-card{padding:22px}}


/* ===== V24: richer sidebars, clickable cards, larger process/detail typography ===== */

.content-grid{grid-template-columns:minmax(0,1fr) 360px;gap:34px}
.prose p,.prose li{font-size:18px;line-height:1.9;color:#495d73}
.prose ul{padding-left:20px}
.prose .lead-copy{font-size:19px;color:#41556c}
.prose h2{font-size:34px!important;margin:38px 0 16px!important}
.prose h3{font-size:24px!important;margin:22px 0 10px!important}
.prose .mini-kicker{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#eef5fc;color:#145b9f;font-size:12px;font-weight:900;letter-spacing:.08em;margin-bottom:14px}
.subhero h1{font-size:52px!important}
.subhero p{font-size:19px!important;line-height:1.8!important}

.journey-grid{grid-template-columns:repeat(4,1fr);gap:18px}
a.step{display:block;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.step{min-height:154px;font-size:21px;line-height:1.45;color:#33475e;padding:24px 20px;border:1px solid #e1d7c3;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:0 8px 24px rgba(11,42,74,.035)}
.step b{font-size:36px;line-height:1;color:#0b365d;margin-bottom:12px}
a.step:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(11,42,74,.09);border-color:#c3b089;background:linear-gradient(180deg,#fffdf7,#f3f8fe)}
.step:after{font-size:28px;right:-14px}

.team-list{grid-template-columns:1fr 1fr;gap:14px}
a.team-item{display:block;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
a.team-item:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(11,42,74,.08);border-color:#bdd1e5;background:#fbfdff}
.team-item span{display:block;margin-top:5px;color:#657488;font-size:15px;line-height:1.7}

.sidebox{background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%);border:1px solid #d7e3ef;border-radius:22px;padding:24px;box-shadow:0 16px 36px rgba(11,42,74,.08)}
.sidebox h3{font-size:28px!important;margin:0 0 18px;color:#082746}
.sidebox .side-links{display:grid;gap:12px}
.sidebox a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid #d6e1eb;border-radius:16px;background:#fff;font-size:19px!important;font-weight:900;color:#135a9f;box-shadow:0 8px 22px rgba(11,42,74,.04);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.sidebox a:after{content:'→';font-size:18px;color:#cc9a3b;font-weight:900}
.sidebox a:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(11,42,74,.10);border-color:#a9c0d8;background:linear-gradient(120deg,#ffffff,#f4f9ff)}
.quick-consult-card{margin-top:18px;padding:20px;border-radius:18px;background:linear-gradient(140deg,#fff1f0,#fff);border:1px solid #f3c0bc;box-shadow:0 12px 28px rgba(181,35,24,.08)}
.quick-consult-card .tag{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#c92c1f;color:#fff;font-weight:900;font-size:18px;margin-bottom:10px}
.quick-consult-card h4{margin:0 0 8px;color:#8f130d;font-size:23px;line-height:1.3}
.quick-consult-card p{margin:0 0 14px;color:#7f5b58;font-size:15px;line-height:1.75}
.quick-consult-card .cta-stack{display:grid;gap:10px}
.quick-consult-card .cta-stack a{padding:14px 16px;border-radius:14px;border:0;color:#fff;background:linear-gradient(135deg,#c92c1f,#e14b37);font-size:17px!important;justify-content:center;box-shadow:0 10px 20px rgba(201,44,31,.16)}
.quick-consult-card .cta-stack a.mail-link{background:linear-gradient(135deg,#0d3159,#145b9f)}
.quick-consult-card .cta-stack a:after{display:none}

.insight-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 10px}
.insight-feature{padding:18px;border:1px solid #dde7ef;border-radius:16px;background:linear-gradient(145deg,#ffffff,#f7fbff)}
.insight-feature b{display:block;color:#0c365d;font-size:18px;margin-bottom:8px}
.insight-feature span{display:block;color:#5d7086;font-size:15px;line-height:1.75}
.detail-action-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.detail-action-row .consult-btn{min-width:200px}

.official-source-list a,.official-db-card{cursor:pointer}

@media(max-width:1180px){
  .content-grid{grid-template-columns:minmax(0,1fr) 320px}
  .subhero h1{font-size:46px!important}
  .journey-grid{grid-template-columns:repeat(2,1fr)}
  .step:nth-child(2n):after{display:none}
  .sidebox a{font-size:17px!important}
}
@media(max-width:900px){
  .content-grid{grid-template-columns:1fr}
  .sidebox{position:static}
}
@media(max-width:680px){
  .subhero h1{font-size:36px!important}
  .subhero p{font-size:16px!important}
  .prose p,.prose li{font-size:16px}
  .prose h2{font-size:28px!important}
  .journey-grid{grid-template-columns:1fr}
  .step:after{display:none}
  .insight-feature-grid{grid-template-columns:1fr}
  .sidebox h3{font-size:24px!important}
  .sidebox a{font-size:16px!important;padding:14px 16px}
  .quick-consult-card h4{font-size:20px}
}


/* ===== V25 refinement: premium consult, richer side service cards, official resources ===== */
.quick-consult-card{
  margin-top:22px;
  padding:22px;
  border-radius:22px;
  background:linear-gradient(180deg,#fffef9 0%,#f7fbff 100%);
  border:1px solid #dfd8c7;
  box-shadow:0 16px 38px rgba(11,42,74,.08);
  position:relative;
  overflow:hidden;
}
.quick-consult-card:before{
  content:'';
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,#d0a447 0%,#1f5fa8 100%);
}
.quick-consult-card .tag{
  width:44px;height:44px;border-radius:14px;
  background:linear-gradient(135deg,#153e6f,#1f66b8);
  box-shadow:0 10px 22px rgba(31,102,184,.18);
  color:#fff;font-size:18px;font-weight:900;
}
.quick-consult-card h4{margin:2px 0 10px;color:#0b365d;font-size:24px;line-height:1.25}
.quick-consult-card p{margin:0 0 16px;color:#5f7084;font-size:16px;line-height:1.8}
.quick-consult-card .cta-stack{display:grid;gap:12px}
.quick-consult-card .cta-stack a{
  position:relative;
  padding:15px 16px;border-radius:16px;border:1px solid transparent;
  color:#fff;font-size:18px!important;font-weight:900;text-align:center;justify-content:center;
  box-shadow:0 12px 24px rgba(11,42,74,.10);
}
.quick-consult-card .cta-stack a:first-child{background:linear-gradient(135deg,#c79a3e,#e0bf69);color:#102d4d}
.quick-consult-card .cta-stack a.mail-link{background:linear-gradient(135deg,#143a68,#1e5b9d)}
.quick-consult-card .cta-stack a:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(11,42,74,.14)}

.sidebox .side-links{display:grid;gap:14px}
.sidebox .side-links a{
  position:relative;
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  min-height:72px;padding:18px 18px 18px 22px;
  border:1px solid #d6e1eb;border-radius:18px;background:#fff;
  font-size:20px!important;font-weight:900;line-height:1.35;color:#114f8e;
  box-shadow:0 10px 26px rgba(11,42,74,.05);
  overflow:hidden;
}
.sidebox .side-links a:before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:6px;border-radius:18px 0 0 18px;background:linear-gradient(180deg,#d1a649,#be8e33);
}
.sidebox .side-links a:after{content:'→';font-size:22px;color:#c58d2e;font-weight:900}
.sidebox .side-links a:nth-child(2n):before{background:linear-gradient(180deg,#2a6fbf,#154f90)}
.sidebox .side-links a:nth-child(3n):before{background:linear-gradient(180deg,#7aa7d9,#2d5f9f)}
.sidebox .side-links a:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(11,42,74,.10);background:linear-gradient(140deg,#fff,#f8fbff)}

.consult-compact{
  background:linear-gradient(180deg,#fbfdff 0%,#f6f9fd 100%);
  border:1px solid #d7e4ef;
}
.consult-compact .consult-btn.primary{
  background:linear-gradient(135deg,#d3a84c,#e7c975);
  color:#123355;
}
.consult-compact .consult-btn.email{background:linear-gradient(135deg,#133963,#1e5d9c)}

.official-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 8px}
.official-resource-card{
  display:block;text-decoration:none;padding:18px 18px 16px;
  border:1px solid #d8e4ee;border-radius:18px;background:linear-gradient(140deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 10px 24px rgba(11,42,74,.05);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.official-resource-card:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(11,42,74,.10);border-color:#b7cbe0}
.official-resource-card .db-tag{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#eef5fb;color:#145a9e;font-size:12px;font-weight:900;letter-spacing:.08em;margin-bottom:10px}
.official-resource-card b{display:block;font-size:20px;line-height:1.35;color:#0b365d;margin-bottom:6px}
.official-resource-card span{display:block;font-size:15px;line-height:1.75;color:#607487}
.official-resource-card em{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-style:normal;font-weight:800;color:#bf8e34}

.section-card{margin:18px 0 24px;padding:22px 22px 20px;border:1px solid #dae5ee;border-radius:20px;background:linear-gradient(160deg,#ffffff 0%,#f7fbff 100%);box-shadow:0 10px 24px rgba(11,42,74,.04)}
.section-card h3{margin:0 0 10px;color:#0b365d;font-size:24px;line-height:1.35}
.section-card p{margin:0;color:#52657a;font-size:17px;line-height:1.9}
.section-card ul{margin:12px 0 0;padding-left:18px}
.section-card li{margin:6px 0;color:#52657a;font-size:17px;line-height:1.8}

@media(max-width:860px){
  .official-resource-grid{grid-template-columns:1fr}
  .sidebox .side-links a{font-size:18px!important;min-height:64px}
}

.sidebox .side-links a strong{display:block;font-size:20px;line-height:1.35;color:#114f8e;margin-right:12px}
.sidebox .side-links a span{display:block;font-size:13px;line-height:1.6;color:#718297;font-weight:700}

.solution-card{background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);box-shadow:0 10px 28px rgba(11,42,74,.05)}
.solution-card:nth-child(1),.solution-card:nth-child(4){border-top:4px solid #d1a649}
.solution-card:nth-child(2),.solution-card:nth-child(5){border-top:4px solid #275f9f}
.solution-card:nth-child(3),.solution-card:nth-child(6){border-top:4px solid #7aa8d6}


/* ===== V29 targeted refinement — rollback base, richer detail only ===== */

/* No global palette override. Keep V25 visual system intact. */

/* Quick consultation: simpler, premium, no dot/icon */
.quick-consult-card{
  margin-top:18px;
  padding:22px;
  border-radius:20px;
  background:#fffdf8;
  border:1px solid #dfd3ba;
  box-shadow:0 10px 24px rgba(20,35,52,.05);
}
.quick-consult-card:before{
  content:'';
  display:block;
  width:52px;
  height:3px;
  margin-bottom:17px;
  border-radius:999px;
  background:#b78a35;
}
.quick-consult-card .tag{display:none!important;}
.quick-consult-card h4{
  margin:0 0 8px;
  color:#17212c;
  font-size:23px;
}
.quick-consult-card p{
  margin:0 0 15px;
  color:#66717d;
  font-size:15px;
  line-height:1.75;
}
.quick-consult-card .cta-stack{display:grid;gap:9px;}
.quick-consult-card .cta-stack a{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:13px 15px;
  border-radius:12px;
  font-size:16px!important;
  font-weight:900;
  box-shadow:none;
}
.quick-consult-card .cta-stack a:first-child{
  background:#b78a35;
  color:#fff;
  border:1px solid #b78a35;
}
.quick-consult-card .cta-stack a.mail-link{
  background:#fff;
  color:#17212c;
  border:1px solid #d9d3c9;
}

/* Related services: neutral cards with small varied accents */
.sidebox .side-links{display:grid;gap:11px;}
.sidebox .side-links a{
  position:relative;
  min-height:68px;
  padding:15px 17px 15px 20px;
  border-radius:16px;
  background:#fff;
  border:1px solid #dce4eb;
  box-shadow:0 7px 18px rgba(20,35,52,.035);
  color:#17212c!important;
}
.sidebox .side-links a:before{
  content:'';
  position:absolute;
  left:0; top:0; bottom:0;
  width:4px;
  border-radius:16px 0 0 16px;
  background:#b78a35;
}
.sidebox .side-links a:nth-child(2n):before{background:#5e7e7a;}
.sidebox .side-links a:nth-child(3n):before{background:#4e6f96;}
.sidebox .side-links a:nth-child(4n):before{background:#856f83;}
.sidebox .side-links a:after{
  content:'→';
  color:#a97d2d;
  font-weight:900;
}
.sidebox .side-links a:hover{
  transform:translateY(-2px);
  border-color:#cdbb95;
  box-shadow:0 11px 23px rgba(20,35,52,.07);
}
.side-link-copy strong{
  display:block;
  color:#17212c;
  font-size:18px;
  line-height:1.35;
}
.side-link-copy span{
  display:block;
  margin-top:4px;
  color:#7a8591;
  font-size:12px;
  line-height:1.55;
}

/* IP service hub cards */
.ip-hub-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:24px 0 34px;
}
.ip-hub-card{
  display:block;
  text-decoration:none;
  padding:24px;
  border-radius:20px;
  background:#fff;
  border:1px solid #dde4ea;
  border-top:4px solid #b78a35;
  box-shadow:0 10px 24px rgba(20,35,52,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.ip-hub-card:nth-child(2){border-top-color:#557c78;}
.ip-hub-card:nth-child(3){border-top-color:#496b96;}
.ip-hub-card:nth-child(4){border-top-color:#836f82;}
.ip-hub-card small{
  display:inline-block;
  margin-bottom:11px;
  padding:6px 9px;
  border-radius:999px;
  background:#f6f0e3;
  color:#8c692a;
  font-weight:900;
  font-size:11px;
  letter-spacing:.08em;
}
.ip-hub-card:nth-child(2) small{background:#eff6f4;color:#426a64;}
.ip-hub-card:nth-child(3) small{background:#eef3f8;color:#496b96;}
.ip-hub-card:nth-child(4) small{background:#f5f0f5;color:#705d70;}
.ip-hub-card h2{
  margin:0 0 10px!important;
  padding:0!important;
  border:0!important;
  color:#17212c!important;
  font-size:30px!important;
}
.ip-hub-card h2:before{display:none!important;}
.ip-hub-card p{
  margin:0;
  color:#66737f!important;
  font-size:16px!important;
  line-height:1.8!important;
}
.ip-hub-card em{
  display:inline-block;
  margin-top:16px;
  color:#8d6928;
  font-style:normal;
  font-weight:900;
}
.ip-hub-card:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 30px rgba(20,35,52,.08);
}

/* Rich detail pages */
.detail-intro{
  padding:22px 24px;
  border-radius:18px;
  background:#fffdf8;
  border:1px solid #e4d8bf;
  margin-bottom:24px;
}
.detail-intro p{
  margin:0!important;
  font-size:18px!important;
  line-height:1.9!important;
  color:#4f5c68!important;
}
.detail-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
  margin:18px 0 30px;
}
.detail-summary{
  padding:18px;
  border-radius:17px;
  background:#fff;
  border:1px solid #e0e6ec;
}
.detail-summary b{
  display:block;
  margin-bottom:7px;
  color:#17212c;
  font-size:17px;
}
.detail-summary span{
  display:block;
  color:#697783;
  font-size:14px;
  line-height:1.7;
}
.detail-section-card{
  margin:18px 0;
  padding:22px 23px;
  border-radius:19px;
  background:#fff;
  border:1px solid #e0e6ec;
}
.detail-section-card .eyebrow{
  display:inline-block;
  margin-bottom:9px;
  color:#a67b2c;
  font-size:12px;
  letter-spacing:.1em;
  font-weight:900;
}
.detail-section-card h2{
  margin:0 0 10px!important;
  padding:0!important;
  border:0!important;
  color:#17212c!important;
  font-size:29px!important;
}
.detail-section-card h2:before{display:none!important;}
.detail-section-card p{
  margin:0!important;
  color:#586673!important;
  font-size:16px!important;
  line-height:1.85!important;
}
.detail-section-card ul{
  margin:12px 0 0;
  padding-left:19px;
}
.detail-section-card li{
  margin:6px 0;
  color:#64717e!important;
  font-size:15px!important;
  line-height:1.75!important;
}
.detail-section-card:nth-child(2n){background:#fcfdfc;}
.detail-section-card:nth-child(3n){background:#fbfcfe;}

.official-link-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
  margin:18px 0 28px;
}
.official-link-card{
  display:block;
  text-decoration:none;
  padding:18px;
  border-radius:17px;
  background:#fff;
  border:1px solid #dfe5eb;
}
.official-link-card small{
  display:block;
  margin-bottom:7px;
  color:#a67b2c;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
}
.official-link-card b{
  display:block;
  color:#17212c;
  font-size:18px;
  margin-bottom:6px;
}
.official-link-card span{
  display:block;
  color:#6b7884;
  font-size:14px;
  line-height:1.65;
}
.official-link-card em{
  display:inline-block;
  margin-top:10px;
  color:#806024;
  font-style:normal;
  font-weight:900;
}
.official-link-card:hover{
  border-color:#cdbb95;
  transform:translateY(-2px);
}

/* Simple consultation block only */
.simple-consult{
  margin-top:32px;
  padding:24px;
  border-radius:20px;
  background:#fffdf8;
  border:1px solid #dfd3ba;
}
.simple-consult h2{
  margin:0 0 8px!important;
  padding:0!important;
  border:0!important;
  color:#17212c!important;
  font-size:26px!important;
}
.simple-consult h2:before{display:none!important;}
.simple-consult p{
  margin:0 0 15px!important;
  color:#66727e!important;
  font-size:16px!important;
}
.simple-consult-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.simple-consult-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 17px;
  border-radius:11px;
  font-weight:900;
  text-decoration:none;
}
.simple-consult-actions .form-btn{
  background:#b78a35;
  color:#fff;
}
.simple-consult-actions .email-btn{
  background:#fff;
  color:#17212c;
  border:1px solid #d9d3c9;
}

@media(max-width:800px){
  .ip-hub-grid,
  .detail-summary-grid,
  .official-link-grid{grid-template-columns:1fr;}
}


/* ===== V30 compact related services ===== */
.sidebox{padding:20px!important;}
.sidebox h3{font-size:24px!important;margin:0 0 12px!important;color:#17212c!important;}
.sidebox .side-links{display:grid!important;gap:8px!important;}
.sidebox .side-links a{
  min-height:0!important;
  padding:12px 14px!important;
  border-radius:12px!important;
  background:#fff!important;
  border:1px solid #dfe5ea!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  color:#17212c!important;
}
.sidebox .side-links a:before{width:3px!important;border-radius:12px 0 0 12px!important;}
.sidebox .side-links a:after{content:'→'!important;font-size:15px!important;color:#a77d2e!important;}
.sidebox .side-links a:hover{transform:translateY(-1px)!important;border-color:#cdbb95!important;box-shadow:0 6px 14px rgba(20,35,52,.05)!important;}
.sidebox .side-links .side-link-copy strong{font-size:15px!important;line-height:1.35!important;color:#17212c!important;margin:0!important;}
.sidebox .side-links .side-link-copy span{display:none!important;}
@media(max-width:900px){.sidebox{padding:16px!important}.sidebox h3{font-size:21px!important}}


/* ===== V31 HEADER: compact main navigation + visible language selector ===== */
.topbar{display:none!important;}
.header{top:0!important;}
.header .wrap.nav{
  width:min(1720px,96vw)!important;
  min-height:94px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:22px!important;
}
.brand{
  min-width:0!important;
  flex:0 0 auto!important;
  margin-right:18px!important;
}
.sky-only-logo{display:none!important;}
.brand-name-en{
  font-size:31px!important;
  line-height:1!important;
  letter-spacing:-.025em!important;
  white-space:nowrap!important;
}
.brand-name-ko{
  font-size:18px!important;
  line-height:1.1!important;
  margin-top:7px!important;
  white-space:nowrap!important;
}
.menu{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:15px!important;
  margin-left:auto!important;
  font-size:15.5px!important;
  white-space:nowrap!important;
}
.menu a{
  font-size:15.5px!important;
  white-space:nowrap!important;
}
.nav-tools{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
  margin-left:2px;
}
.nav-cta-compact{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:66px!important;
  height:42px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  font-size:14.5px!important;
  font-weight:900!important;
  color:#fff!important;
  background:#123f72!important;
  box-shadow:0 7px 16px rgba(18,63,114,.14)!important;
}
.nav-lang{
  display:flex;
  align-items:center;
  gap:6px;
  padding-left:2px;
}
.nav-lang .lang-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:39px;
  height:39px;
  padding:0 9px;
  border-radius:999px;
  border:1px solid #d7dde4;
  background:#fff;
  color:#24364a;
  font-size:12.5px!important;
  font-weight:900!important;
  line-height:1;
  text-decoration:none;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease;
}
.nav-lang .lang-chip:last-child{min-width:50px;}
.nav-lang .lang-chip:hover{
  transform:translateY(-1px);
  border-color:#b99243;
  color:#8a6422;
}
.nav-lang .lang-chip.active{
  background:#b78a35;
  border-color:#b78a35;
  color:#fff;
  box-shadow:0 6px 14px rgba(183,138,53,.16);
}

/* English / Chinese fit in one line */
.en .header .wrap.nav,
.zh .header .wrap.nav{width:min(1760px,97vw)!important;}
.en .brand-name-en{font-size:29px!important;}
.en .menu{gap:12px!important;}
.en .menu a{font-size:14.5px!important;}
.zh .brand-name-en{font-size:27px!important;}
.zh .brand-name-ko{font-size:16px!important;}
.zh .menu{gap:13px!important;}
.zh .menu a{font-size:14.5px!important;}

@media(max-width:1450px){
  .header .wrap.nav{gap:15px!important;}
  .brand{margin-right:8px!important;}
  .brand-name-en{font-size:27px!important;}
  .brand-name-ko{font-size:16px!important;}
  .menu{gap:11px!important;}
  .menu a{font-size:14px!important;}
  .nav-tools{gap:8px;}
  .nav-cta-compact{min-width:58px!important;height:38px!important;padding:0 11px!important;font-size:13px!important;}
  .nav-lang .lang-chip{min-width:35px;height:35px;padding:0 7px;font-size:11.5px!important;}
  .nav-lang .lang-chip:last-child{min-width:46px;}
  .en .brand-name-en{font-size:26px!important;}
  .en .menu a,.zh .menu a{font-size:13px!important;}
}

@media(max-width:1120px){
  .header .wrap.nav{min-height:82px!important;}
  .menu{display:none!important;}
  .brand{margin-right:auto!important;}
  .nav-tools{margin-left:auto;}
  .mobile-toggle{display:block!important;}
}

@media(max-width:700px){
  .header .wrap.nav{width:min(96vw,680px)!important;gap:8px!important;min-height:76px!important;}
  .brand-name-en{font-size:20px!important;}
  .brand-name-ko{font-size:12px!important;margin-top:5px!important;}
  .en .brand-name-en{font-size:19px!important;}
  .zh .brand-name-en{font-size:18px!important;}
  .zh .brand-name-ko{font-size:11px!important;}
  .nav-tools{gap:6px;}
  .nav-cta-compact{min-width:48px!important;height:34px!important;padding:0 9px!important;font-size:11px!important;}
  .nav-lang{gap:4px;}
  .nav-lang .lang-chip{min-width:31px;height:31px;padding:0 5px;font-size:10px!important;}
  .nav-lang .lang-chip:last-child{min-width:40px;}
  .mobile-toggle{font-size:21px!important;margin-left:2px;}
}

@media(max-width:480px){
  .brand-name-ko{display:none!important;}
  .brand-name-en{font-size:18px!important;}
  .nav-cta-compact{display:none!important;}
  .nav-lang .lang-chip{min-width:29px;height:29px;font-size:9.5px!important;}
  .nav-lang .lang-chip:last-child{min-width:38px;}
}

/* ===== V32 HEADER: larger firm brand, larger menu, high-visibility languages ===== */
.header{
  background:rgba(255,253,249,.98)!important;
  box-shadow:0 6px 22px rgba(10,31,52,.055)!important;
}
.header .wrap.nav{
  width:min(1840px,98vw)!important;
  min-height:112px!important;
  gap:18px!important;
  padding:0 4px!important;
}
.brand{
  flex:0 0 405px!important;
  min-width:405px!important;
  margin-right:4px!important;
  padding:19px 28px 18px!important;
  border-radius:0 0 18px 18px!important;
  background:linear-gradient(135deg,#071b33 0%,#0d3159 72%,#174f82 100%)!important;
  box-shadow:0 10px 28px rgba(7,27,51,.16)!important;
  align-self:stretch!important;
  display:flex!important;
  align-items:center!important;
}
.brand-name-wrap{display:block!important;width:100%!important;}
.brand-name-en{
  display:block!important;
  font-size:36px!important;
  line-height:1.02!important;
  letter-spacing:-.038em!important;
  color:#fff!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
.brand-name-ko{
  display:block!important;
  margin-top:9px!important;
  font-size:20px!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
  color:#efcf87!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.en .brand{flex-basis:365px!important;min-width:365px!important;}
.en .brand-name-en{font-size:34px!important;}
.zh .brand{flex-basis:395px!important;min-width:395px!important;}
.zh .brand-name-en{font-size:32px!important;}
.zh .brand-name-ko{font-size:18px!important;}

.menu{
  margin-left:8px!important;
  gap:20px!important;
  font-size:18px!important;
  font-weight:900!important;
}
.menu a{
  font-size:18px!important;
  color:#172538!important;
  letter-spacing:-.025em!important;
}
.menu a:not(.nav-cta):after{bottom:-10px!important;height:3px!important;background:#b78a35!important;}
.en .menu{gap:16px!important;}
.en .menu a{font-size:16.5px!important;letter-spacing:-.01em!important;}
.zh .menu{gap:17px!important;}
.zh .menu a{font-size:17px!important;}

.nav-tools{gap:12px!important;margin-left:auto!important;}
.nav-cta-compact{
  min-width:64px!important;
  height:42px!important;
  padding:0 14px!important;
  border-radius:12px!important;
  font-size:14px!important;
  background:#173d68!important;
  box-shadow:0 7px 16px rgba(23,61,104,.12)!important;
}
.en .nav-cta-compact{min-width:84px!important;padding:0 14px!important;font-size:13.5px!important;}
.zh .nav-cta-compact{min-width:60px!important;}

.nav-lang{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:5px!important;
  border-radius:16px!important;
  background:#f5f2eb!important;
  border:1px solid #e6dfd1!important;
}
.nav-lang .lang-chip{
  min-width:45px!important;
  height:40px!important;
  padding:0 10px!important;
  border-radius:12px!important;
  border:1px solid transparent!important;
  font-size:13px!important;
  font-weight:950!important;
  box-shadow:none!important;
}
.nav-lang .lang-chip:nth-child(1){background:#f5e8c9!important;color:#72531c!important;border-color:#dec891!important;}
.nav-lang .lang-chip:nth-child(2){background:#e8f0f8!important;color:#174f82!important;border-color:#c9d9e9!important;}
.nav-lang .lang-chip:nth-child(3){background:#eaf3f0!important;color:#38645e!important;border-color:#cbded8!important;min-width:58px!important;}
.nav-lang .lang-chip.active{
  background:#b78a35!important;
  color:#fff!important;
  border-color:#9f772c!important;
  box-shadow:0 6px 14px rgba(183,138,53,.18)!important;
  transform:translateY(-1px)!important;
}
.nav-lang .lang-chip:hover{transform:translateY(-2px)!important;filter:brightness(.98);}

@media(max-width:1660px){
  .header .wrap.nav{width:min(1620px,98vw)!important;gap:12px!important;}
  .brand{flex-basis:350px!important;min-width:350px!important;padding-left:22px!important;padding-right:22px!important;}
  .brand-name-en{font-size:31px!important;}
  .brand-name-ko{font-size:18px!important;}
  .menu{gap:14px!important;}
  .menu a{font-size:16px!important;}
  .en .brand{flex-basis:330px!important;min-width:330px!important;}
  .en .brand-name-en{font-size:30px!important;}
  .en .menu{gap:11px!important;}
  .en .menu a{font-size:14.5px!important;}
  .zh .brand{flex-basis:350px!important;min-width:350px!important;}
  .zh .brand-name-en{font-size:29px!important;}
  .zh .brand-name-ko{font-size:17px!important;}
  .zh .menu a{font-size:15px!important;}
  .nav-tools{gap:8px!important;}
  .nav-lang{gap:5px!important;padding:4px!important;}
  .nav-lang .lang-chip{min-width:40px!important;height:37px!important;font-size:11.5px!important;}
  .nav-lang .lang-chip:nth-child(3){min-width:52px!important;}
}

@media(max-width:1280px){
  .header .wrap.nav{min-height:96px!important;}
  .brand{flex-basis:315px!important;min-width:315px!important;}
  .brand-name-en{font-size:28px!important;}
  .brand-name-ko{font-size:16px!important;}
  .menu{gap:10px!important;}
  .menu a{font-size:14.5px!important;}
  .en .menu a,.zh .menu a{font-size:13px!important;}
  .nav-cta-compact{min-width:56px!important;height:38px!important;font-size:12.5px!important;padding:0 10px!important;}
}

@media(max-width:1120px){
  .header .wrap.nav{min-height:88px!important;}
  .brand{align-self:stretch!important;flex-basis:330px!important;min-width:330px!important;border-radius:0 0 14px 14px!important;}
  .menu{display:none!important;}
  .brand-name-en{font-size:29px!important;}
  .brand-name-ko{font-size:16px!important;}
  .nav-tools{margin-left:auto!important;}
}

@media(max-width:700px){
  .header .wrap.nav{min-height:80px!important;width:100%!important;padding:0 10px!important;}
  .brand{flex-basis:auto!important;min-width:0!important;flex:1 1 auto!important;margin-left:-10px!important;padding:14px 15px!important;border-radius:0 0 12px 0!important;}
  .brand-name-en{font-size:21px!important;}
  .brand-name-ko{font-size:12px!important;margin-top:5px!important;}
  .nav-tools{gap:5px!important;}
  .nav-cta-compact{display:none!important;}
  .nav-lang{gap:3px!important;padding:3px!important;border-radius:12px!important;}
  .nav-lang .lang-chip{min-width:32px!important;height:31px!important;padding:0 5px!important;border-radius:9px!important;font-size:9.5px!important;}
  .nav-lang .lang-chip:nth-child(3){min-width:40px!important;}
  .mobile-toggle{margin-left:1px!important;}
}

@media(max-width:480px){
  .brand-name-ko{display:block!important;}
  .brand-name-en{font-size:18px!important;}
  .brand-name-ko{font-size:10.5px!important;}
}


/* ===== V33: FULL-WIDTH NAVY BRAND HEADER ===== */
.topbar{display:none!important;}
.header{
  position:sticky!important;
  top:0!important;
  z-index:100!important;
  background:#0c2d50!important;
  border-bottom:1px solid rgba(215,181,111,.34)!important;
  box-shadow:0 8px 24px rgba(7,25,43,.16)!important;
}
.header .wrap.nav{
  width:min(1760px,96.5vw)!important;
  min-height:112px!important;
  padding:14px 0!important;
  display:flex!important;
  align-items:center!important;
  gap:28px!important;
}
.brand{
  flex:0 0 390px!important;
  min-width:390px!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
  text-decoration:none!important;
  display:flex!important;
  align-items:center!important;
}
.sky-only-logo{display:none!important;}
.brand-name-wrap{
  display:block!important;
  width:100%!important;
}
.brand-name-en{
  display:block!important;
  color:#fff!important;
  font-size:36px!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
}
.brand-name-ko{
  display:block!important;
  margin-top:8px!important;
  color:#d9b86f!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.en .brand-name-ko{display:none!important;}
.en .brand{flex-basis:390px!important;min-width:390px!important;}
.en .brand-name-en{font-size:35px!important;}
.zh .brand{flex-basis:390px!important;min-width:390px!important;}
.zh .brand-name-en{font-size:32px!important;}
.zh .brand-name-ko{font-size:16px!important;color:#d9b86f!important;}

.menu{
  flex:1 1 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:22px!important;
  margin:0!important;
  min-width:0!important;
}
.menu a{
  position:relative!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1!important;
  font-weight:850!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  padding:10px 0!important;
}
.menu a:not(.nav-cta):after{
  content:''!important;
  position:absolute!important;
  left:0!important;
  right:100%!important;
  bottom:0!important;
  height:2px!important;
  background:#d7b56f!important;
  transition:right .18s ease!important;
}
.menu a:not(.nav-cta):hover:after{right:0!important;}
.menu a:hover{color:#f3dfad!important;}
.en .menu{gap:18px!important;}
.en .menu a{font-size:16.5px!important;letter-spacing:-.01em!important;}
.zh .menu{gap:19px!important;}
.zh .menu a{font-size:17px!important;}

.nav-tools{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-left:2px!important;
}
.nav-cta-compact{
  min-width:66px!important;
  height:42px!important;
  padding:0 16px!important;
  border-radius:999px!important;
  background:transparent!important;
  border:1.5px solid #d7b56f!important;
  color:#f5dfac!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:14px!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.nav-cta-compact:hover{
  background:#d7b56f!important;
  color:#0c2d50!important;
}

.nav-lang{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
}
.nav-lang .lang-chip{
  min-width:39px!important;
  height:39px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.40)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  box-shadow:none!important;
}
.nav-lang .lang-chip:last-child{min-width:52px!important;}
.nav-lang .lang-chip:hover{
  background:rgba(255,255,255,.20)!important;
  border-color:#fff!important;
}
.nav-lang .lang-chip.active{
  background:#d7b56f!important;
  border-color:#d7b56f!important;
  color:#0c2d50!important;
}
.mobile-toggle{
  color:#fff!important;
  background:transparent!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-radius:10px!important;
  width:42px!important;
  height:42px!important;
}

/* Main page header and hero read as one continuous brand block */
body.kr .hero,
body.en .hero,
body.zh .hero{
  margin-top:0!important;
}
.hero{
  border-top:0!important;
}
.header + main .hero{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}

/* Fit large desktop widths without shrinking language buttons into invisibility */
@media(max-width:1600px){
  .header .wrap.nav{gap:20px!important;}
  .brand{flex-basis:330px!important;min-width:330px!important;}
  .brand-name-en{font-size:31px!important;}
  .brand-name-ko{font-size:16px!important;}
  .menu{gap:16px!important;}
  .menu a{font-size:16px!important;}
  .en .brand,.zh .brand{flex-basis:320px!important;min-width:320px!important;}
  .en .brand-name-en{font-size:29px!important;}
  .zh .brand-name-en{font-size:27px!important;}
  .en .menu{gap:13px!important;}
  .en .menu a{font-size:14.5px!important;}
  .zh .menu{gap:14px!important;}
  .zh .menu a{font-size:15px!important;}
  .nav-tools{gap:9px!important;}
  .nav-lang .lang-chip{min-width:36px!important;height:36px!important;font-size:11px!important;}
  .nav-lang .lang-chip:last-child{min-width:48px!important;}
  .nav-cta-compact{height:38px!important;min-width:58px!important;padding:0 12px!important;font-size:12px!important;}
}
@media(max-width:1260px){
  .header .wrap.nav{min-height:92px!important;}
  .brand{flex-basis:290px!important;min-width:290px!important;}
  .brand-name-en{font-size:27px!important;}
  .brand-name-ko{font-size:14px!important;}
  .menu{gap:12px!important;}
  .menu a{font-size:14px!important;}
  .en .menu a,.zh .menu a{font-size:13px!important;}
}
@media(max-width:1040px){
  .header .wrap.nav{min-height:84px!important;gap:12px!important;}
  .brand{flex:1 1 auto!important;min-width:0!important;}
  .brand-name-en{font-size:25px!important;}
  .brand-name-ko{font-size:13px!important;}
  .menu{display:none!important;}
  .nav-tools{margin-left:auto!important;}
  .mobile-toggle{display:block!important;}
}
@media(max-width:620px){
  .header .wrap.nav{width:94vw!important;min-height:78px!important;padding:10px 0!important;}
  .brand-name-en{font-size:20px!important;}
  .brand-name-ko{font-size:11px!important;margin-top:5px!important;}
  .nav-cta-compact{display:none!important;}
  .nav-lang{gap:4px!important;}
  .nav-lang .lang-chip{min-width:31px!important;height:31px!important;padding:0 5px!important;font-size:9.5px!important;}
  .nav-lang .lang-chip:last-child{min-width:40px!important;}
  .mobile-toggle{width:35px!important;height:35px!important;font-size:18px!important;}
}


/* =========================================================
   V34 — Warm large-brand header + tighter hero
   ========================================================= */

/* Remove the full navy header treatment */
.header{
  position:sticky !important;
  top:0 !important;
  z-index:100 !important;
  background:rgba(252,250,246,.98) !important;
  border-bottom:1px solid #ded8ce !important;
  box-shadow:0 6px 20px rgba(25,31,38,.055) !important;
}
.header .wrap.nav{
  width:min(1780px,97vw) !important;
  min-height:122px !important;
  padding:13px 0 !important;
  gap:30px !important;
  align-items:center !important;
}

/* Make the firm name the actual visual head */
.brand{
  flex:0 0 500px !important;
  min-width:500px !important;
  color:#151b22 !important;
  background:transparent !important;
}
.brand-name-wrap{
  width:100% !important;
}
.brand-name-en{
  color:#151b22 !important;
  font-size:47px !important;
  line-height:1.0 !important;
  font-weight:900 !important;
  letter-spacing:-.045em !important;
  white-space:nowrap !important;
}
.brand-name-ko{
  margin-top:9px !important;
  color:#8d6b2b !important;
  font-size:22px !important;
  line-height:1.05 !important;
  font-weight:850 !important;
}
.en .brand{flex-basis:490px !important;min-width:490px !important;}
.en .brand-name-en{font-size:46px !important;}
.zh .brand{flex-basis:500px !important;min-width:500px !important;}
.zh .brand-name-en{font-size:24px !important;}
.zh .brand-name-ko{font-size:13px !important;color:#8d6b2b !important;}

/* Larger navigation, but dark/neutral rather than blue */
.menu{
  gap:24px !important;
}
.menu a{
  color:#20262d !important;
  font-size:19px !important;
  font-weight:850 !important;
  padding:10px 0 !important;
}
.menu a:not(.nav-cta):after{
  background:#b78a35 !important;
}
.menu a:hover{
  color:#8d6b2b !important;
}
.en .menu{gap:18px !important;}
.en .menu a{font-size:17px !important;}
.zh .menu{gap:19px !important;}
.zh .menu a{font-size:17.5px !important;}

/* Compact consultation */
.nav-cta-compact{
  min-width:62px !important;
  height:38px !important;
  padding:0 13px !important;
  border-radius:10px !important;
  background:#fff !important;
  border:1px solid #b78a35 !important;
  color:#72521c !important;
  font-size:13px !important;
}
.nav-cta-compact:hover{
  background:#b78a35 !important;
  color:#fff !important;
}

/* Language selector: clearly visible, restrained, high contrast */
.nav-lang{
  gap:7px !important;
}
.nav-lang .lang-chip{
  min-width:42px !important;
  height:38px !important;
  padding:0 9px !important;
  border-radius:11px !important;
  border:1px solid #cfc9bf !important;
  color:#252b31 !important;
  background:#fff !important;
  font-size:12.5px !important;
  font-weight:900 !important;
  box-shadow:none !important;
}
.nav-lang .lang-chip:last-child{
  min-width:54px !important;
}
.nav-lang .lang-chip:nth-child(1){
  border-color:#c9aa67 !important;
}
.nav-lang .lang-chip:nth-child(2){
  border-color:#8d9ba8 !important;
}
.nav-lang .lang-chip:nth-child(3){
  border-color:#7b9d96 !important;
}
.nav-lang .lang-chip:hover{
  transform:translateY(-1px);
  background:#f7f4ee !important;
}
.nav-lang .lang-chip.active{
  background:#b78a35 !important;
  border-color:#b78a35 !important;
  color:#fff !important;
}
.mobile-toggle{
  color:#20262d !important;
  background:#fff !important;
  border:1px solid #d6d0c7 !important;
}

/* ---------------------------------------------------------
   Main hero: no more blue block; make it a warm editorial hero
   --------------------------------------------------------- */
.hero{
  min-height:0 !important;
  background:
    radial-gradient(circle at 84% 18%,rgba(183,138,53,.12),transparent 25%),
    linear-gradient(120deg,#fbf8f1 0%,#f4efe5 60%,#eee7da 100%) !important;
  border-top:0 !important;
  border-bottom:1px solid #ddd5c7 !important;
}
.hero:before{
  opacity:.22 !important;
  background-image:
    linear-gradient(90deg,rgba(65,57,44,.055) 1px,transparent 1px),
    linear-gradient(rgba(65,57,44,.035) 1px,transparent 1px) !important;
  background-size:60px 60px !important;
}
.hero:after{
  display:none !important;
}
.hero-visual-accent{
  display:none !important;
}
.hero-grid{
  min-height:540px !important;
  grid-template-columns:1.08fr .78fr !important;
  align-items:center !important;
  gap:42px !important;
  padding:28px 0 30px !important;
}
.hero .eyebrow{
  color:#9a722a !important;
  font-weight:900 !important;
}
.hero h1{
  color:#171c22 !important;
  font-size:58px !important;
  line-height:1.14 !important;
  margin:13px 0 17px !important;
}
.hero h1 em{
  color:#8b6727 !important;
}
.hero p{
  color:#4e5964 !important;
  font-size:18px !important;
  line-height:1.75 !important;
}
.hero p strong{
  color:#222a32 !important;
}
.hero-actions{
  margin-top:23px !important;
}
.hero .btn-gold{
  background:#b78a35 !important;
  border-color:#b78a35 !important;
  color:#fff !important;
}
.hero .btn-line{
  background:#fff !important;
  border-color:#c9c2b7 !important;
  color:#222a32 !important;
}

/* Portrait: less dead space, visually integrated into the warm hero */
.portrait-shell{
  padding:0 !important;
  align-self:center !important;
}
.portrait-card{
  aspect-ratio:auto !important;
  height:500px !important;
  border-radius:22px !important;
  background:#efe9df !important;
  border:1px solid #d5cab7 !important;
  box-shadow:0 20px 44px rgba(38,35,29,.14) !important;
}
.portrait-card img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 14% !important;
  background:#efe9df !important;
}
.portrait-caption{
  background:linear-gradient(180deg,transparent,rgba(24,27,31,.80)) !important;
  padding:46px 18px 16px !important;
}
.portrait-caption b{
  color:#fff !important;
}

/* Internal pages keep the same warm/white header, but no forced hero recolor */
.subhero{
  margin-top:0 !important;
}

/* Responsive */
@media(max-width:1660px){
  .brand{flex-basis:425px !important;min-width:425px !important;}
  .brand-name-en{font-size:40px !important;}
  .brand-name-ko{font-size:19px !important;}
  .menu{gap:17px !important;}
  .menu a{font-size:16px !important;}
  .en .brand,.zh .brand{flex-basis:400px !important;min-width:400px !important;}
  .en .brand-name-en{font-size:38px !important;}
  .zh .brand-name-en{font-size:35px !important;}
  .en .menu a,.zh .menu a{font-size:14.5px !important;}
}
@media(max-width:1320px){
  .header .wrap.nav{min-height:102px !important;}
  .brand{flex-basis:340px !important;min-width:340px !important;}
  .brand-name-en{font-size:32px !important;}
  .brand-name-ko{font-size:16px !important;}
  .menu{gap:12px !important;}
  .menu a{font-size:14px !important;}
  .hero-grid{min-height:500px !important;gap:30px !important;}
  .hero h1{font-size:50px !important;}
  .portrait-card{height:455px !important;}
}
@media(max-width:1040px){
  .header .wrap.nav{min-height:88px !important;}
  .brand{flex:1 1 auto !important;min-width:0 !important;}
  .brand-name-en{font-size:29px !important;}
  .brand-name-ko{font-size:14px !important;}
  .menu{display:none !important;}
  .nav-tools{margin-left:auto !important;}
  .mobile-toggle{display:block !important;}
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:0 !important;
    padding:36px 0 !important;
  }
  .portrait-shell{max-width:600px !important;}
  .portrait-card{height:auto !important;aspect-ratio:4/5 !important;}
}
@media(max-width:620px){
  .header .wrap.nav{min-height:78px !important;padding:9px 0 !important;}
  .brand-name-en{font-size:21px !important;}
  .brand-name-ko{font-size:11px !important;margin-top:5px !important;}
  .nav-cta-compact{display:none !important;}
  .nav-lang .lang-chip{min-width:34px !important;height:32px !important;font-size:10px !important;padding:0 6px !important;}
  .nav-lang .lang-chip:last-child{min-width:43px !important;}
  .hero h1{font-size:39px !important;}
  .hero p{font-size:16px !important;}
}


/* =========================================================
   V35 — Restore blue hero, stronger language button colors
   ========================================================= */

/* Keep the V34 warm/white header, but restore the main hero to a refined blue tone */
.hero{
  min-height:0 !important;
  background:
    radial-gradient(circle at 84% 20%, rgba(208,169,82,.16), transparent 24%),
    linear-gradient(135deg,#0f3559 0%, #184a78 58%, #1f5e8e 100%) !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
}
.hero:before{
  opacity:.16 !important;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px) !important;
  background-size:60px 60px !important;
}
.hero h1{
  color:#ffffff !important;
}
.hero h1 em{
  color:#e1c177 !important;
}
.hero p{
  color:#dce7f1 !important;
}
.hero p strong{
  color:#ffffff !important;
}
.hero .eyebrow{   font-size:26px !important;   font-weight:900 !important;   letter-spacing:.04em !important;   line-height:1.35 !important;   color:var(--gold2) !important;   margin-bottom:14px !important; }
  color:#e0c076 !important;
}
.hero .btn-gold{
  background:#c0963c !important;
  border-color:#c0963c !important;
  color:#fff !important;
}
.hero .btn-line{
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.32) !important;
  color:#fff !important;
}
.portrait-card{
  background:#1a446b !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 24px 50px rgba(8,22,38,.26) !important;
}
.portrait-card img{
  background:#1a446b !important;
}

/* Language chips: each color-filled and easier to notice */
.nav-lang .lang-chip{
  color:#fff !important;
  border-width:1px !important;
  box-shadow:0 6px 14px rgba(24,32,43,.08) !important;
}
.nav-lang .lang-chip:nth-child(1){
  background:#b78a35 !important; /* KR gold */
  border-color:#b78a35 !important;
}
.nav-lang .lang-chip:nth-child(2){
  background:#8e4b58 !important; /* EN muted burgundy */
  border-color:#8e4b58 !important;
}
.nav-lang .lang-chip:nth-child(3){
  background:#4f7d6d !important; /* ZH muted green */
  border-color:#4f7d6d !important;
}
.nav-lang .lang-chip:hover{
  filter:brightness(1.04) !important;
  transform:translateY(-1px) !important;
}
.nav-lang .lang-chip.active{
  background:#1f2b36 !important;
  border-color:#1f2b36 !important;
  color:#fff !important;
}

/* Keep buttons visible on smaller screens */
@media(max-width:620px){
  .nav-lang .lang-chip:nth-child(1),
  .nav-lang .lang-chip:nth-child(2),
  .nav-lang .lang-chip:nth-child(3){
    color:#fff !important;
  }
}


/* =========================================================
   V36 — Dark navy hero + refined language chips
   ========================================================= */

/* Restore a deeper navy tone, less bright blue */
.hero{
  min-height:0 !important;
  background:
    radial-gradient(circle at 84% 20%, rgba(205,170,89,.14), transparent 24%),
    linear-gradient(135deg,#0a2742 0%, #123757 56%, #1a476b 100%) !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
}
.hero:before{
  opacity:.14 !important;
  background-image:
    linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px) !important;
  background-size:60px 60px !important;
}
.hero h1{color:#ffffff !important;}
.hero h1 em{color:#e0c37f !important;}
.hero p{color:#d8e4ef !important;}
.hero p strong{color:#ffffff !important;}
.hero .eyebrow{color:#ddc079 !important;}
.hero .btn-gold{
  background:#b99245 !important;
  border-color:#b99245 !important;
  color:#fff !important;
}
.hero .btn-line{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.28) !important;
  color:#fff !important;
}
.portrait-card{
  background:#123454 !important;
  border:1px solid rgba(255,255,255,.16) !important;
  box-shadow:0 24px 50px rgba(8,20,34,.28) !important;
}
.portrait-card img{background:#123454 !important;}

/* Refined language chips: all white text, equal visual balance, less tacky */
.nav-lang{
  gap:8px !important;
}
.nav-lang .lang-chip{
  height:38px !important;
  min-width:52px !important;
  padding:0 10px !important;
  border-radius:11px !important;
  color:#ffffff !important;
  font-size:12px !important;
  font-weight:900 !important;
  border:1px solid transparent !important;
  box-shadow:none !important;
}
.nav-lang .lang-chip:last-child{
  min-width:52px !important;
}
.nav-lang .lang-chip:nth-child(1){
  background:#b78a35 !important; /* KR */
  border-color:#b78a35 !important;
}
.nav-lang .lang-chip:nth-child(2){
  background:#5c6470 !important; /* EN - elegant slate */
  border-color:#5c6470 !important;
}
.nav-lang .lang-chip:nth-child(3){
  background:#627a63 !important; /* 中文 - muted olive green */
  border-color:#627a63 !important;
}
.nav-lang .lang-chip:hover{
  filter:brightness(1.03) !important;
  transform:translateY(-1px) !important;
}
.nav-lang .lang-chip.active{
  background:#1e2d3b !important;
  border-color:#1e2d3b !important;
  color:#fff !important;
}

@media(max-width:620px){
  .nav-lang .lang-chip,
  .nav-lang .lang-chip:last-child{
    min-width:38px !important;
    height:32px !important;
    padding:0 7px !important;
    font-size:10px !important;
  }
}


/* =========================================================
   V37 — force white text on all language chips
   ========================================================= */
.nav-lang .lang-chip,
.nav-lang .lang-chip:link,
.nav-lang .lang-chip:visited,
.nav-lang .lang-chip:hover,
.nav-lang .lang-chip:active,
.nav-lang .lang-chip span{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.nav-lang .lang-chip:nth-child(1){background:#b78a35 !important;border-color:#b78a35 !important;}
.nav-lang .lang-chip:nth-child(2){background:#5e6471 !important;border-color:#5e6471 !important;}
.nav-lang .lang-chip:nth-child(3){background:#6d8a74 !important;border-color:#6d8a74 !important;}
.nav-lang .lang-chip.active{
  background:#223041 !important;
  border-color:#223041 !important;
  color:#ffffff !important;
}


/* =========================================================
   V39 — GLOBAL READABILITY / RESPONSIVE FIX
   Prevent clipped Korean words, overflow, fixed-height text cards,
   and improve desktop + mobile readability across all pages.
   ========================================================= */
html,body{max-width:100%;overflow-x:hidden;}
*,*::before,*::after{box-sizing:border-box;}
img,svg,video{max-width:100%;height:auto;}

/* All grid/flex children may shrink. Critical for preventing right-edge clipping. */
.wrap,.nav,.hero-grid,.content-grid,.about-page-grid,.consult-layout,
.prose,.sidebox,.credential-list,.insight-feature-grid,.official-resource-grid,
.project-list,.project-meta,.team-list,.journey-grid,.form-grid,
.content-grid>*,.hero-grid>*,.consult-layout>*,.about-page-grid>*{min-width:0!important;}

/* Korean: never split a word/syllable unnaturally. */
.kr h1,.kr h2,.kr h3,.kr h4,.kr p,.kr li,.kr span,.kr strong,.kr b,
.ko h1,.ko h2,.ko h3,.ko h4,.ko p,.ko li,.ko span,.ko strong,.ko b{
  word-break:keep-all!important;
  overflow-wrap:break-word!important;
}
/* English and Chinese natural wrapping. */
.en h1,.en h2,.en h3,.en h4,.en p,.en li,.en span,.en strong,.en b{word-break:normal!important;overflow-wrap:break-word!important;}
.zh h1,.zh h2,.zh h3,.zh h4,.zh p,.zh li,.zh span,.zh strong,.zh b{word-break:normal!important;overflow-wrap:break-word!important;}
a,.official-resource-card,.official-link-card,.consult-direct-email{overflow-wrap:anywhere;}

/* Header: maintain current design but allow compact scaling without overflow. */
.header .wrap.nav{max-width:1780px!important;width:min(1780px,96vw)!important;}
.brand{min-width:0!important;}
.brand-name-en,.brand-name-ko{max-width:100%;}
.nav-tools{flex:0 0 auto!important;}

/* Detail hero: long titles must fit naturally, no clipping. */
.subhero{overflow:hidden!important;}
.subhero .wrap{padding-top:64px!important;padding-bottom:64px!important;}
.subhero h1{
  width:100%!important;
  max-width:1080px!important;
  font-size:clamp(38px,4vw,58px)!important;
  line-height:1.18!important;
  letter-spacing:-.04em!important;
  margin:10px 0 18px!important;
}
.subhero p{
  width:100%!important;
  max-width:1080px!important;
  font-size:clamp(16px,1.45vw,19px)!important;
  line-height:1.82!important;
  margin:0!important;
}

/* Content grid: slightly wider main text and narrower supporting sidebar. */
.content{overflow:visible!important;}
.content>.wrap{max-width:1380px!important;width:min(1380px,92vw)!important;}
.content-grid{grid-template-columns:minmax(0,1fr) 300px!important;gap:38px!important;align-items:start!important;}
.prose{width:100%!important;max-width:100%!important;}
.prose h2{
  width:100%!important;
  max-width:100%!important;
  font-size:clamp(28px,2.4vw,38px)!important;
  line-height:1.3!important;
  margin:38px 0 14px!important;
}
.prose h3{font-size:clamp(22px,2vw,28px)!important;line-height:1.35!important;}
.prose p,.prose li,.prose .lead-copy{
  max-width:100%!important;
  font-size:clamp(16px,1.35vw,18px)!important;
  line-height:1.85!important;
}
.callout{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  line-height:1.75!important;
  padding:22px 24px!important;
}

/* Never fix text card heights. */
.insight-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
.insight-feature,.profile-detail-section,.project-card,.official-resource-card,
.detail-section-card,.section-card,.anchor-card,.subcard,.step,.team-item,
.consult-compact,.quick-consult-card,.consult-form-card,.consult-choice-card{
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
.insight-feature{padding:20px!important;}
.insight-feature b{font-size:19px!important;line-height:1.38!important;}
.insight-feature span{font-size:15.5px!important;line-height:1.75!important;}

/* About page: clean readable cards and full portrait. */
.about-page-grid{grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr)!important;gap:34px!important;align-items:start!important;}
.about-photo{position:sticky!important;top:120px!important;}
.about-photo img{width:100%!important;height:auto!important;max-height:none!important;object-fit:cover!important;object-position:center top!important;border-radius:20px!important;}
.profile-detail-section{padding:25px!important;}
.profile-detail-section h2{font-size:clamp(25px,2.2vw,32px)!important;line-height:1.35!important;}
.profile-detail-section p{font-size:16.5px!important;line-height:1.82!important;}

/* Main hero portrait: show approved photo cleanly; no blurred caption/overlay. */
.portrait-card{height:auto!important;aspect-ratio:1/1.05!important;overflow:hidden!important;}
.portrait-card img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 12%!important;}
.portrait-caption{display:none!important;}

/* Related links are supporting navigation, never dominate or overflow. */
.sidebox{width:100%!important;max-width:300px!important;padding:18px!important;position:sticky!important;top:112px!important;}
.sidebox h3{font-size:22px!important;line-height:1.3!important;margin:0 0 12px!important;}
.sidebox .side-links{gap:8px!important;}
.sidebox .side-links a{
  width:100%!important;
  min-width:0!important;
  padding:12px 13px!important;
  gap:8px!important;
  font-size:14px!important;
}
.sidebox .side-link-copy{min-width:0!important;}
.sidebox .side-links .side-link-copy strong{font-size:14.5px!important;line-height:1.4!important;}
.sidebox .side-links a:after{flex:0 0 auto!important;}
.quick-consult-card{padding:18px!important;}
.quick-consult-card h4{font-size:20px!important;line-height:1.35!important;}
.quick-consult-card p{font-size:14px!important;line-height:1.7!important;}
.quick-consult-card .cta-stack a{font-size:14px!important;padding:12px!important;}

/* Consultation blocks: no awkward split words or fixed widths. */
.consult-compact{padding:24px!important;}
.consult-compact h2{font-size:25px!important;line-height:1.35!important;}
.consult-compact p{font-size:15px!important;line-height:1.75!important;}
.consult-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;}
.consult-btn{max-width:100%!important;white-space:normal!important;text-align:center!important;}
.consult-layout{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)!important;gap:24px!important;}
.consult-form-card,.consult-choice-card{padding:26px!important;}
.form-field input,.form-field select,.form-field textarea{min-width:0!important;}

/* Official resource cards and projects */
.official-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
.official-resource-card{min-width:0!important;padding:20px!important;}
.official-resource-card b{font-size:19px!important;line-height:1.35!important;}
.official-resource-card span{font-size:14px!important;line-height:1.7!important;}

/* Tablet */
@media(max-width:1100px){
  .content>.wrap{width:min(1000px,92vw)!important;}
  .content-grid{grid-template-columns:minmax(0,1fr) 260px!important;gap:26px!important;}
  .sidebox{max-width:260px!important;}
  .subhero .wrap{padding-top:52px!important;padding-bottom:52px!important;}
  .subhero h1{font-size:clamp(36px,4.5vw,48px)!important;}
  .about-page-grid{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)!important;gap:24px!important;}
}

/* Mobile / narrow tablet: one column, natural card flow. */
@media(max-width:900px){
  .content>.wrap{width:min(760px,92vw)!important;}
  .content-grid,.about-page-grid,.consult-layout{grid-template-columns:1fr!important;gap:24px!important;}
  .sidebox{position:static!important;max-width:none!important;width:100%!important;}
  .about-photo{position:static!important;max-width:560px!important;margin:0 auto!important;}
  .official-resource-grid{grid-template-columns:1fr 1fr!important;}
  .subhero h1{max-width:100%!important;}
}

/* Phones */
@media(max-width:620px){
  .wrap,.content>.wrap{width:calc(100% - 32px)!important;}
  .header .wrap.nav{width:calc(100% - 24px)!important;}
  .subhero .wrap{padding-top:36px!important;padding-bottom:38px!important;}
  .subhero h1{font-size:32px!important;line-height:1.24!important;letter-spacing:-.035em!important;margin:8px 0 14px!important;}
  .subhero p{font-size:15.5px!important;line-height:1.75!important;}
  .prose h2{font-size:27px!important;line-height:1.32!important;margin:32px 0 12px!important;}
  .prose h3{font-size:22px!important;}
  .prose p,.prose li,.prose .lead-copy{font-size:15.5px!important;line-height:1.8!important;}
  .callout{padding:18px!important;font-size:15.5px!important;line-height:1.75!important;}
  .insight-feature-grid,.official-resource-grid{grid-template-columns:1fr!important;}
  .insight-feature{padding:17px!important;}
  .insight-feature b{font-size:18px!important;}
  .insight-feature span{font-size:14.5px!important;}
  .profile-detail-section{padding:20px!important;}
  .profile-detail-section h2{font-size:25px!important;}
  .profile-detail-section p{font-size:15.5px!important;}
  .portrait-card{aspect-ratio:4/5!important;}
  .portrait-card img{object-position:center top!important;}
  .consult-form-card,.consult-choice-card,.consult-compact,.quick-consult-card{padding:18px!important;}
  .consult-actions{flex-direction:column!important;}
  .consult-actions .consult-btn{width:100%!important;}
  .form-grid{grid-template-columns:1fr!important;}
  .form-field.full{grid-column:auto!important;}
  .footer .wrap{gap:8px!important;flex-direction:column!important;align-items:flex-start!important;}
}

/* Very narrow phones */
@media(max-width:390px){
  .subhero h1{font-size:29px!important;}
  .brand-name-en{font-size:19px!important;}
  .brand-name-ko{font-size:10.5px!important;}
  .nav-lang{gap:4px!important;}
  .nav-lang .lang-chip,.nav-lang .lang-chip:last-child{min-width:34px!important;height:30px!important;padding:0 5px!important;font-size:9.5px!important;}
  .mobile-toggle{width:34px!important;height:34px!important;}
}


/* =========================================================
   V41 — Public agency / support-program update section
   ========================================================= */
.public-updates-section{padding:68px 0;background:linear-gradient(180deg,#f8fafc 0%,#ffffff 100%);border-top:1px solid #e5e9ee;border-bottom:1px solid #e5e9ee}
.public-updates-head{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:end;margin-bottom:24px}
.public-updates-head h2{margin:8px 0 0;color:#102e4d;font-size:40px;line-height:1.25;letter-spacing:-.035em}
.public-updates-head p{margin:0;color:#637488;font-size:16px;line-height:1.85}
.public-update-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.public-update-card{display:flex;flex-direction:column;min-height:300px;padding:24px;border-radius:22px;background:#fff;border:1px solid #dce4ec;box-shadow:0 10px 26px rgba(17,43,70,.055);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;position:relative;overflow:hidden}
.public-update-card:before{content:'';position:absolute;left:0;right:0;top:0;height:5px;background:#b78a35}
.public-update-card:nth-child(2):before{background:#557c78}.public-update-card:nth-child(3):before{background:#4c6f99}.public-update-card:nth-child(4):before{background:#806b80}
.public-update-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(17,43,70,.09);border-color:#c9d4df}
.public-update-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.public-update-org{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#f6f0e3;color:#806024;font-size:12px;font-weight:900;letter-spacing:.04em}
.public-update-card:nth-child(2) .public-update-org{background:#eef6f4;color:#456b65}.public-update-card:nth-child(3) .public-update-org{background:#eef3f8;color:#45688f}.public-update-card:nth-child(4) .public-update-org{background:#f4f0f4;color:#705f70}
.public-update-date{color:#8a95a0;font-size:12px;font-weight:800;white-space:nowrap}
.public-update-card h3{margin:0 0 12px;color:#18232e;font-size:23px;line-height:1.42;letter-spacing:-.025em;word-break:keep-all;overflow-wrap:normal}
.public-update-card>p{margin:0 0 16px;color:#657484;font-size:15px;line-height:1.8}
.public-update-point{margin-top:auto;padding:15px 16px;border-radius:15px;background:#f8fafc;border:1px solid #e5eaf0;color:#536476;font-size:14px;line-height:1.75}
.public-update-point b{display:block;margin-bottom:4px;color:#8b6827;font-size:12px;letter-spacing:.05em}
.public-update-link{display:inline-flex;align-items:center;gap:6px;margin-top:15px;color:#174f82;font-size:14px;font-weight:900}
.public-update-note{margin-top:18px;color:#7d8792;font-size:12px;line-height:1.7}
.public-update-more{display:flex;justify-content:flex-end;margin-top:20px}.public-update-more a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:12px;background:#153a60;color:#fff;text-decoration:none;font-weight:900;font-size:14px}
.home-public-updates{padding:60px 0;background:#f7f9fb;border-top:1px solid #e5e9ee}
.home-public-updates .public-update-card{min-height:255px}
.home-public-updates .public-update-card h3{font-size:20px}
.home-public-updates .public-update-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.home-public-updates .public-update-card:nth-child(4){display:none}
@media(max-width:900px){.public-updates-head{grid-template-columns:1fr;gap:10px}.public-update-grid,.home-public-updates .public-update-grid{grid-template-columns:1fr}.home-public-updates .public-update-card:nth-child(4){display:flex}.public-updates-head h2{font-size:34px}.public-update-card{min-height:0}}
@media(max-width:520px){.public-updates-section,.home-public-updates{padding:48px 0}.public-update-card{padding:20px;border-radius:18px}.public-update-card h3{font-size:20px}.public-update-top{align-items:flex-start;flex-direction:column;gap:7px}.public-update-date{white-space:normal}}


/* =========================================================
   V42 — Featured Support Programs / IP News navigation
   ========================================================= */
.menu a.menu-featured,
.menu a.menu-featured:link,
.menu a.menu-featured:visited{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px 13px !important;
  border:1px solid #b78a35 !important;
  border-radius:10px !important;
  background:#b78a35 !important;
  color:#ffffff !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  box-shadow:0 4px 12px rgba(183,138,53,.10) !important;
}
.menu a.menu-featured:after{display:none !important;}
.menu a.menu-featured:hover{
  background:#9f762b !important;
  color:#ffffff !important;
  transform:translateY(-1px) !important;
}
.en .menu a.menu-featured{
  font-size:14.5px !important;
  letter-spacing:.01em !important;
}
@media(max-width:1320px){
  .menu a.menu-featured{padding:7px 10px !important;}
  .en .menu a.menu-featured{font-size:13px !important;}
}
@media(max-width:1040px){
  .menu[data-open="1"] a.menu-featured,
  .menu a.menu-featured{
    width:100% !important;
    min-height:42px !important;
    padding:10px 14px !important;
  }
}

/* V45 — Chinese featured public-program/IP news navigation */
.zh .menu a.menu-featured{font-size:14px !important;padding:8px 12px !important;white-space:nowrap !important;}
@media(max-width:1320px){.zh .menu a.menu-featured{font-size:12.5px !important;padding:7px 9px !important;}}


/* =========================================================
   V46 — expanded Support Programs & IP News hub
   ========================================================= */
.support-hub .public-updates-head{margin-bottom:24px}
.support-category-bar{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 34px;padding:14px;border:1px solid #e3e7eb;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(18,38,58,.05)}
.support-filter{appearance:none;border:1px solid #d8dde3;background:#f8fafb;color:#344453;border-radius:999px;padding:10px 15px;font:inherit;font-size:13px;font-weight:800;cursor:pointer;white-space:nowrap;transition:.18s ease}
.support-filter:hover{border-color:#b78a35;color:#7b5b1d;background:#fffaf0}
.support-filter.active{background:#b78a35;border-color:#b78a35;color:#fff}
.support-hub-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 16px}
.support-hub-intro h3{font-size:24px;margin:0;color:#172d42}
.support-hub-intro p{margin:0;max-width:720px;color:#667480;font-size:14px;line-height:1.7;text-align:right}
.official-hub-title{margin-top:46px}
.featured-programs{margin-bottom:4px}
.support-source-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.support-source-card{display:flex;flex-direction:column;min-width:0;min-height:215px;padding:20px;border:1px solid #e1e5e8;border-radius:18px;background:#fff;text-decoration:none;box-shadow:0 10px 28px rgba(14,33,51,.05);transition:.18s ease}
.support-source-card:hover{transform:translateY(-3px);border-color:#c7a45b;box-shadow:0 16px 34px rgba(14,33,51,.10)}
.support-source-card span{display:inline-block;align-self:flex-start;font-size:10px;font-weight:900;letter-spacing:.08em;color:#9b7429;background:#fbf5e8;border-radius:999px;padding:6px 8px;margin-bottom:13px}
.support-source-card h3{font-size:19px;line-height:1.35;margin:0 0 9px;color:#142d43;word-break:keep-all;overflow-wrap:break-word}
.support-source-card p{font-size:13px;line-height:1.7;color:#64727e;margin:0 0 16px;word-break:keep-all;overflow-wrap:break-word}
.support-source-card b{margin-top:auto;font-size:12px;color:#8d6721}
.support-sky-note{display:grid;grid-template-columns:180px 1fr auto;gap:18px;align-items:center;margin-top:34px;padding:22px 24px;border-radius:18px;background:#102f4b;color:#fff}
.support-sky-note strong{font-size:17px;color:#e1c57f}
.support-sky-note p{margin:0;color:#dce7ef;line-height:1.7;font-size:14px}
.support-sky-note a{white-space:nowrap;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.32);border-radius:12px;padding:11px 14px;font-size:13px;font-weight:800}
.support-item.is-hidden{display:none !important}
@media(max-width:1180px){.support-source-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.support-sky-note{grid-template-columns:1fr}.support-sky-note a{justify-self:start}}
@media(max-width:760px){.support-category-bar{gap:7px;padding:11px;margin-bottom:28px}.support-filter{font-size:12px;padding:9px 12px}.support-hub-intro{display:block}.support-hub-intro h3{font-size:22px}.support-hub-intro p{text-align:left;margin-top:7px}.support-source-grid{grid-template-columns:1fr 1fr}.support-source-card{min-height:0}.official-hub-title{margin-top:34px}}
@media(max-width:480px){.support-source-grid{grid-template-columns:1fr}.support-filter{flex:1 1 calc(50% - 7px);text-align:center}.support-sky-note{padding:19px}.support-source-card{padding:18px}}

/* V47 official-link hub robustness */
.support-source-card{overflow:hidden;min-width:0;word-break:keep-all;overflow-wrap:break-word;}
.support-source-card h3,.support-source-card p,.support-source-card b{max-width:100%;}
.support-source-grid{align-items:stretch;}
.support-source-card::before,.support-source-card::after{pointer-events:none;}
@media(max-width:620px){.support-source-grid{grid-template-columns:1fr !important;}.support-source-card{min-height:0 !important;}}


/* =========================================================
   V48 — back-to-top visibility + mobile readability hardening
   ========================================================= */
.back-to-top{
  right:24px !important;
  bottom:24px !important;
  width:48px !important;
  height:48px !important;
  background:#b78a35 !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.55) !important;
  box-shadow:0 10px 28px rgba(16,34,52,.24) !important;
}
.back-to-top:hover{background:#9d7428 !important;}
html,body{max-width:100%;overflow-x:hidden;}
img,svg,video,iframe{max-width:100%;}
.content-grid,.detail-grid,.about-page-grid,.hero-grid,.case-grid,.card-grid,.support-grid,.official-link-grid{min-width:0;}
.content-grid > *, .detail-grid > *, .about-page-grid > *, .hero-grid > *{min-width:0;}
@media(max-width:700px){
  .back-to-top{
    right:14px !important;
    bottom:14px !important;
    width:44px !important;
    height:44px !important;
    font-size:21px !important;
  }
  h1,h2,h3,p,a,span,strong,li{overflow-wrap:break-word;}
  .wrap{width:min(92vw,1180px) !important;}
  .btn,.nav-cta,.nav-cta-compact{max-width:100%;white-space:normal;}
  .support-filter-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;}
  .support-filter-bar button{flex:0 0 auto;}
}


/* ===== V49: larger card typography and richer service pills ===== */
.service-row{gap:18px;}
.service-pill{padding:28px 22px;font-size:18px;line-height:1.55;font-weight:700;min-height:140px;display:flex;flex-direction:column;justify-content:center;}
.service-pill b{font-size:30px;line-height:1.18;margin-bottom:10px;color:var(--royal);word-break:keep-all;}
.service-pill span{display:block;font-size:18px;line-height:1.6;color:#667588;font-weight:600;word-break:keep-all;}

.cards{gap:22px;}
.card{padding:34px;min-height:290px;border-radius:20px;}
.card .num{font-size:20px;}
.card h3{font-size:34px;line-height:1.24;margin:22px 0 12px;word-break:keep-all;}
.card p{font-size:20px;line-height:1.72;color:#5f7084;word-break:keep-all;}
.card .more{font-size:20px;margin-top:22px;}

.project-card h3,.service-card h3,.article-card h3,.insight-card h3,.feature-card h3{font-size:30px!important;line-height:1.28!important;word-break:keep-all;}
.project-card p,.service-card p,.article-card p,.insight-card p,.feature-card p{font-size:19px!important;line-height:1.75!important;word-break:keep-all;}
.project-card small,.service-card small,.article-card small,.insight-card small,.feature-card small{font-size:14px!important;}

@media (max-width:1200px){
  .card h3{font-size:30px;}
  .card p{font-size:18px;}
  .service-pill b{font-size:26px;}
  .service-pill span,.service-pill{font-size:17px;}
}
@media (max-width:768px){
  .service-row{gap:14px;}
  .service-pill{padding:22px 18px;min-height:auto;font-size:16px;}
  .service-pill b{font-size:24px;margin-bottom:8px;}
  .service-pill span{font-size:16px;line-height:1.55;}
  .card{padding:26px;min-height:auto;}
  .card h3{font-size:28px;margin:18px 0 10px;}
  .card p{font-size:17px;line-height:1.65;}
  .card .more{font-size:17px;}
}
@media (max-width:480px){
  .service-pill{padding:20px 16px;}
  .service-pill b{font-size:21px;}
  .service-pill span,.service-pill{font-size:15px;}
  .card{padding:22px;}
  .card .num{font-size:18px;}
  .card h3{font-size:24px;}
  .card p{font-size:16px;}
  .card .more{font-size:16px;}
}


/* ===== V50: polished navigation, card typography, consultation emphasis ===== */
/* Main navigation: slightly larger and easier to scan, without crowding */
.menu{
  gap:18px !important;
  align-items:center !important;
}
.menu a{
  font-size:17px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  letter-spacing:-.02em !important;
  white-space:nowrap !important;
}
.menu .menu-featured{
  padding:11px 15px !important;
  border-radius:12px !important;
  font-weight:900 !important;
}

/* Improve visual hierarchy and breathing room in the main solution cards */
.card{
  padding:36px 34px 34px !important;
}
.card .num{
  font-size:21px !important;
  line-height:1 !important;
}
.card h3{
  font-size:32px !important;
  line-height:1.28 !important;
  letter-spacing:-.035em !important;
  margin:24px 0 14px !important;
}
.card p{
  font-size:18px !important;
  line-height:1.78 !important;
  letter-spacing:-.018em !important;
}
.card .more{
  font-size:17px !important;
  line-height:1.35 !important;
  margin-top:24px !important;
}

/* IP service cards: larger title, cleaner secondary copy */
.service-pill{
  padding:30px 24px !important;
  min-height:154px !important;
}
.service-pill b{
  font-size:27px !important;
  line-height:1.22 !important;
  letter-spacing:-.03em !important;
  margin-bottom:10px !important;
}
.service-pill span{
  font-size:16px !important;
  line-height:1.62 !important;
  letter-spacing:-.015em !important;
}

/* Consultation CTAs: stronger but still professional */
.consult-btn,
.form-submit,
.quick-consult-card .cta-stack a,
.contact .consult-btn{
  font-size:17px !important;
  font-weight:900 !important;
  min-height:54px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  letter-spacing:-.015em !important;
}
.consult-btn.primary,
.form-submit{
  box-shadow:0 10px 22px rgba(183,138,53,.17) !important;
}
.consult-btn.primary:hover,
.form-submit:hover{
  transform:translateY(-2px) !important;
}

/* Slightly more readable section intros */
.section-head h2{
  letter-spacing:-.04em !important;
}
.section-head > p,
.section-head p{
  line-height:1.75 !important;
}

/* Restore Korean + English mobile language controls */  @media(max-width:700px){   body.en .brand{     flex:1 1 auto !important;     min-width:0 !important;   }    body.en .brand-name-en{     font-size:19px !important;     line-height:1.1 !important;     white-space:nowrap !important;   }    body.en .nav-tools{     display:flex !important;     align-items:center !important;     gap:4px !important;     margin-left:auto !important;   }    body.en .nav-cta-compact{     display:none !important;   }    body.en .nav-lang{     display:flex !important;     gap:2px !important;     padding:2px !important;   }    body.en .nav-lang .lang-chip{     display:inline-flex !important;     min-width:34px !important;     height:34px !important;     padding:0 6px !important;     font-size:10px !important;   }    body.en .nav-lang .lang-chip:nth-child(3){     min-width:38px !important;   } } @media(max-width:1040px){   body.kr .nav-tools{     display:flex !important;     align-items:center !important;   }    body.kr .nav-lang{     display:flex !important;   }    body.kr .nav-lang .lang-chip{     display:inline-flex !important;   } }  @media(max-width:700px){   body.kr .nav-tools{     margin-left:14px !important;   } }  /* Responsive refinements */
@media(max-width:1450px){
  .menu{gap:14px !important;}
  .menu a{font-size:15.5px !important;}
  .menu .menu-featured{padding:10px 12px !important;}
}
@media(max-width:1180px){
  .menu{gap:11px !important;}
  .menu a{font-size:14px !important;}
  .card h3{font-size:29px !important;}
  .card p{font-size:17px !important;}
  .service-pill b{font-size:24px !important;}
  .service-pill span{font-size:15px !important;}
}
@media(max-width:1040px){
  /* desktop nav collapses at this breakpoint; preserve mobile menu behavior */    .mobile-toggle{     display:block !important;     visibility:visible !important;     opacity:1 !important;     position:relative !important;     width:40px !important;     height:40px !important;     min-width:40px !important;     padding:0 !important;     margin-left:8px !important;     background:#ffffff !important;     border:1px solid #cfc9bf !important;     border-radius:8px !important;     color:#20262d !important;     font-size:25px !important;     line-height:38px !important;     text-align:center !important;     overflow:visible !important;     z-index:99999 !important;   }    .nav-tools{     display:flex !important;   }    .nav-tools{     display:flex !important;   }    .mobile-toggle{     display:block !important;     width:42px !important;     height:42px !important;     min-width:42px !important;     margin:0 !important;     padding:0 !important;     border:1px solid #d6d0c7 !important;     border-radius:8px !important;      background:       linear-gradient(#20262d,#20262d) center 12px / 20px 2px no-repeat,       linear-gradient(#20262d,#20262d) center 19px / 20px 2px no-repeat,       linear-gradient(#20262d,#20262d) center 26px / 20px 2px no-repeat,       #ffffff !important;      color:transparent !important;     font-size:0 !important;     line-height:0 !important;     overflow:hidden !important;     box-shadow:none !important;   }    .mobile-toggle::before,   .mobile-toggle::after{     content:none !important;     display:none !important;   }
  .menu{display:none !important;}
}
@media(max-width:700px){
  .card{padding:26px 22px !important;}
  .card .num{font-size:18px !important;}
  .card h3{font-size:25px !important;line-height:1.3 !important;margin:18px 0 10px !important;}
  .card p{font-size:16px !important;line-height:1.68 !important;}
  .card .more{font-size:16px !important;margin-top:18px !important;}
  .service-pill{padding:22px 18px !important;min-height:0 !important;}
  .service-pill b{font-size:22px !important;}
  .service-pill span{font-size:15px !important;line-height:1.55 !important;}
  .consult-btn,.form-submit,.quick-consult-card .cta-stack a,.contact .consult-btn{
    width:100% !important;
    min-height:52px !important;
    font-size:16px !important;
  }
}
.portrait-meta{   width:100% !important;   padding:22px 0 0 4px !important;   margin:0 !important;   text-align:left !important;   color:#fff !important; }padding:16px 6px 0;text-align:center;color:#fff}
.portrait-meta strong{   display:block !important;   font-size:40px !important;   line-height:1.15 !important;   font-weight:950 !important;   letter-spacing:-.045em !important;   color:#fff !important;   text-align:left !important; }display:block;font-size:24px;font-weight:900;line-height:1.3;letter-spacing:-.03em}.portrait-meta span{   display:block !important;   margin-top:10px !important;   font-size:24px !important;   line-height:1.35 !important;   font-weight:850 !important;   color:#eef4fa !important;   text-align:left !important; }.portrait-meta span{   display:block !important;   margin-top:10px !important;   font-size:24px !important;   line-height:1.35 !important;   font-weight:850 !important;   color:#eef4fa !important;   text-align:left !important; }display:block;margin-top:4px;font-size:14px;font-weight:700;color:#d6e2ee}
.portrait-meta{
  padding:16px 4px 0 !important;
  text-align:left !important;
  color:#fff !important;
}

.portrait-meta strong{
  display:block !important;
  font-size:25px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  letter-spacing:-0.03em !important;
  color:#fff !important;
}

.portrait-meta span{
  display:block !important;
  margin-top:6px !important;
  font-size:14px !important;
  line-height:1.45 !important;
  font-weight:650 !important;
  color:#cbd9e7 !important;
}
/* ===== Hero final visual refinement ===== */

.hero .eyebrow{
  font-size:17px !important;
  font-weight:900 !important;
  letter-spacing:.10em !important;
  line-height:1.4 !important;
  color:var(--gold2) !important;
}

.portrait-meta{
  width:100% !important;
  padding:18px 0 0 4px !important;
  margin:0 !important;
  text-align:left !important;
  color:#fff !important;
}

.portrait-meta strong{
  display:block !important;
  font-size:31px !important;
  line-height:1.2 !important;
  font-weight:900 !important;
  letter-spacing:-.04em !important;
  color:#fff !important;
  text-align:left !important;
}

.portrait-meta span{
  display:block !important;
  margin-top:7px !important;
  font-size:16px !important;
  line-height:1.45 !important;
  font-weight:700 !important;
  color:#d6e2ee !important;
  text-align:left !important;
}
/* ===== Hero identity emphasis ===== */

.hero .eyebrow{
  font-size:22px !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
  line-height:1.35 !important;
  color:var(--gold2) !important;
  margin-bottom:10px !important;
}

.portrait-meta{
  width:100% !important;
  padding:22px 0 0 4px !important;
  margin:0 !important;
  text-align:left !important;
  color:#fff !important;
}

.portrait-meta strong{
  display:block !important;
  font-size:39px !important;
  line-height:1.15 !important;
  font-weight:950 !important;
  letter-spacing:-.045em !important;
  color:#fff !important;
  text-align:left !important;
}

.portrait-meta span{
  display:block !important;
  margin-top:8px !important;
  font-size:20px !important;
  line-height:1.4 !important;
  font-weight:800 !important;
  color:#e1eaf3 !important;
  text-align:left !important;
}
