
:root{--navy:#102f57;--blue:#1f6fb2;--sky:#eef7ff;--bg:#f6f8fb;--line:#dfe7f1;--text:#14243b;--muted:#60738b;--white:#fff;--shadow:0 18px 46px rgba(16,47,87,.08);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Pretendard","Noto Sans KR","Malgun Gothic",Arial,sans-serif;color:var(--text);font-size:16px;line-height:1.72;background:#fff;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}p{color:#40546d}h1,h2,h3{letter-spacing:-.04em;color:var(--navy);line-height:1.22}.container{width:min(1220px,calc(100% - 48px));margin:0 auto}.section{padding:88px 0}.soft{background:var(--bg)}.center{text-align:center;margin-top:30px}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{height:74px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand img{width:150px;height:auto}.brand span{display:none}.nav{display:flex;align-items:center;gap:25px}.nav a{font-weight:800;color:#344963;font-size:15px;white-space:nowrap}.nav a.active,.nav a:hover{color:var(--navy)}.header-actions{display:flex;align-items:center;gap:10px}.header-phone{font-weight:900;color:var(--navy);font-size:15px}.menu{display:none;border:0;background:transparent;padding:8px}.menu span{display:block;width:24px;height:2px;background:var(--navy);margin:5px 0;border-radius:9px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:14px;background:var(--navy);color:#fff;padding:15px 23px;font-weight:900;box-shadow:0 12px 26px rgba(16,47,87,.14);cursor:pointer;transition:.18s}.btn:hover{background:#174878;transform:translateY(-2px)}.btn.ghost{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}.btn.ghost.dark{background:transparent}.btn.small{padding:11px 16px;font-size:14px}.btn.light{background:#fff;color:var(--navy)}.kicker{display:inline-flex;padding:7px 11px;border-radius:999px;background:var(--sky);color:var(--navy);font-size:12px;font-weight:900;letter-spacing:.04em;margin-bottom:18px}
.hero{padding:90px 0 76px;background:linear-gradient(135deg,#fff 0%,#f4faff 100%)}.hero-grid,.sub-hero-grid{display:grid;grid-template-columns:1fr .85fr;gap:52px;align-items:center}.hero h1{font-size:clamp(38px,5vw,64px)}.hero p{font-size:19px;max-width:640px;margin-top:20px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:34px;max-width:620px}.hero-mini div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;text-align:center;color:var(--navy);font-weight:900;box-shadow:var(--shadow)}.hero-photo,.sub-photo,.preview-photo{border-radius:30px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}.hero-photo img{height:480px;width:100%;object-fit:cover}.sub-hero{padding:86px 0 70px;background:linear-gradient(135deg,#fff 0%,#f5faff 100%)}.sub-hero.simple{padding:80px 0 58px}.sub-hero h1,.cert-hero h1{font-size:clamp(34px,4.5vw,56px)}.sub-hero p,.cert-hero p{font-size:18px;margin-top:15px;max-width:740px}.sub-photo img{height:330px;width:100%;object-fit:cover}
.section-head{margin-bottom:30px}.section-head span{display:inline-flex;font-size:12px;font-weight:900;color:var(--blue);text-transform:uppercase;margin-bottom:10px}.section-head h2{font-size:clamp(28px,3.2vw,42px)}.section-head p{font-size:17px;margin-top:12px;max-width:780px}
.purpose-grid,.iso-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.purpose-card{display:block;background:#fff;border:1px solid var(--line);border-radius:22px;padding:25px;box-shadow:var(--shadow);transition:.18s}.purpose-card:hover{transform:translateY(-2px);border-color:#b9d9f5}.purpose-card h3{font-size:21px;margin-bottom:10px}.purpose-card p{font-weight:800;color:#566a82}
.iso-card{display:block;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);transition:.18s}.iso-card:hover{transform:translateY(-2px)}.iso-card-img{overflow:hidden}.iso-card-img img{height:220px;width:100%;object-fit:cover;transition:.22s}.iso-card:hover img{transform:scale(1.015)}.iso-card-body{padding:22px}.iso-card-body b{display:block;color:var(--blue);font-size:14px;margin-bottom:7px}.iso-card-body h3{font-size:22px;margin-bottom:9px}.iso-card-body p{font-size:15.5px;min-height:54px}.iso-card-body em{display:inline-block;margin-top:16px;font-style:normal;font-weight:900;color:var(--navy)}
.why-grid,.split,.education-preview,.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:start}.why-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.why-cards div,.summary-grid div,.process-row div,.contact-side,.contact-form,.faq-list details{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}.why-cards h3{font-size:20px;margin-bottom:8px}.compact div{padding:21px}.process-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.process-row b{display:inline-flex;width:38px;height:38px;border-radius:12px;background:var(--sky);align-items:center;justify-content:center;color:var(--navy);font-weight:900;margin-bottom:13px}.process-row h3{font-size:19px;margin-bottom:5px}.preview-photo img{height:330px;width:100%;object-fit:cover}
.cert-hero{padding:74px 0 34px;background:linear-gradient(135deg,#fff 0%,#f5faff 100%)}.cert-photos{padding:24px 0 70px;background:#fff}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.photo-grid figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.photo-grid figure div{overflow:hidden}.photo-grid img{height:270px;width:100%;object-fit:cover;transition:.22s}.photo-grid figure:hover img{transform:scale(1.012)}.photo-grid figcaption{display:block;padding:18px 20px 20px}.photo-grid b{display:block;color:var(--navy);font-size:19px;margin-bottom:6px}.photo-grid span{display:block;color:#53677f;font-size:15px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.summary-grid span{display:block;color:var(--blue);font-size:13px;font-weight:900;margin-bottom:8px}.summary-grid strong{font-size:18px;color:var(--navy)}.clean-list,.check-list{display:grid;gap:11px;padding:0;margin:0;list-style:none}.clean-list li,.check-list li{position:relative;padding-left:24px}.clean-list li:before,.check-list li:before{content:"";position:absolute;left:0;top:.75em;width:8px;height:8px;border-radius:50%;background:var(--blue)}.final-cta{padding:70px 0;background:var(--navy)}.final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.final-cta h2,.final-cta p{color:#fff}.final-cta h2{font-size:34px}.final-cta p{margin-top:10px;opacity:.85}
.contact-form{display:grid;gap:14px}.contact-form h2{font-size:30px}.contact-form label{font-weight:900;color:var(--navy)}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:14px;padding:14px 15px;font:inherit;background:#fbfdff}.contact-form textarea{resize:vertical}.agree{display:flex;gap:9px;font-weight:700!important;color:#66758a!important}.agree input{width:auto;margin-top:3px}.contact-side h3{font-size:22px;margin:18px 0 8px}.contact-side h3:first-child{margin-top:0}.contact-side ul{padding-left:18px;color:#40546d}.faq-list{display:grid;gap:14px;max-width:900px}.faq-list details{padding:0}.faq-list summary{cursor:pointer;font-weight:900;color:var(--navy);padding:22px}.faq-list p{padding:0 22px 22px}.text-page{max-width:850px}.text-page h2{font-size:24px;margin:24px 0 8px}
.footer{background:#07172d;color:#dbe6f4;padding:56px 0 0}.footer-grid{display:grid;grid-template-columns:1.2fr .9fr .7fr;gap:28px}.footer h3,.footer h4{color:#fff}.footer p,.footer a{color:#dbe6f4}.copyright{margin-top:36px;padding:18px 0;border-top:1px solid rgba(255,255,255,.1);color:#90a3ba;font-size:14px}.mobile-actions{display:none}
@media(max-width:1120px){.header-actions{display:none}.menu{display:block}.nav{display:none;position:absolute;top:74px;left:18px;right:18px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:12px;flex-direction:column;align-items:stretch;gap:2px}.nav.open{display:flex}.nav a{padding:12px 14px;border-radius:12px}.nav a.active,.nav a:hover{background:var(--sky)}} 
@media(max-width:960px){.container{width:calc(100% - 34px)}.hero-grid,.sub-hero-grid,.why-grid,.split,.education-preview,.contact-grid{grid-template-columns:1fr}.purpose-grid,.iso-grid,.photo-grid,.summary-grid{grid-template-columns:repeat(2,1fr)}.process-row{grid-template-columns:repeat(3,1fr)}.hero-photo img{height:360px}} 
@media(max-width:700px){body{font-size:15.5px}.site-header{top:0}.header-inner{height:64px}.brand img{width:136px}.nav{top:64px}.section{padding:60px 0}.hero{padding:58px 0 52px}.hero h1,.sub-hero h1,.cert-hero h1{font-size:32px}.hero p,.sub-hero p,.cert-hero p{font-size:16px}.hero-buttons{display:grid}.btn{width:100%}.hero-mini,.purpose-grid,.iso-grid,.photo-grid,.summary-grid,.process-row,.why-cards{grid-template-columns:1fr}.hero-photo img,.sub-photo img,.preview-photo img{height:220px}.iso-card-img img{height:205px}.cert-hero{padding:48px 0 18px}.cert-photos{padding:18px 0 42px}.photo-grid img{height:218px}.final-cta-inner{display:block}.final-cta .btn{margin-top:20px}.footer-grid{grid-template-columns:1fr}.footer{padding-bottom:76px}.mobile-actions{position:fixed;left:10px;right:10px;bottom:10px;z-index:2000;display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-actions a{background:#fff;color:var(--navy);border:1px solid var(--line);border-radius:14px;padding:13px 10px;text-align:center;font-weight:900;box-shadow:0 12px 26px rgba(16,47,87,.14)}} 


/* v17 ISO category + certification explanation */
.iso-filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.iso-filter{border:1px solid var(--line);background:#fff;color:#344963;border-radius:999px;padding:12px 18px;font-weight:900;cursor:pointer;transition:.16s;font:inherit}
.iso-filter:hover{border-color:#b9d9f5;color:var(--navy);transform:translateY(-1px)}
.iso-filter.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.iso-filter-grid .iso-card.is-hidden{display:none}
.cert-explain{padding-top:72px}
.explain-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:stretch}
.explain-main,.explain-side{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:var(--shadow)}
.explain-main h2{font-size:clamp(26px,3vw,38px);margin-bottom:14px}
.explain-main p{font-size:17px;margin-top:12px}
.kicker.mini{margin-bottom:12px}
.explain-side{background:linear-gradient(135deg,#102f57,#174878);color:#fff}
.explain-side h3{color:#fff;font-size:26px;margin-bottom:16px}
.explain-side ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.explain-side li{position:relative;padding-left:22px;color:#edf5ff}
.explain-side li:before{content:"";position:absolute;left:0;top:.75em;width:8px;height:8px;border-radius:50%;background:#6db7e8}
@media(max-width:900px){.explain-grid{grid-template-columns:1fr}.iso-filter-bar{gap:8px}.iso-filter{padding:10px 14px;font-size:14px}}
@media(max-width:700px){.cert-explain{padding-top:48px}.explain-main,.explain-side{padding:22px;border-radius:18px}.explain-main p{font-size:15.8px}.explain-side h3{font-size:22px}}


/* =========================
   v18 premium interactions + gold accents
   ========================= */
:root{--gold:#c9a25d;--gold-soft:#f6efe1;--navy-soft:#244a78;--shadow-strong:0 22px 54px rgba(16,47,87,.10)}
body{background:linear-gradient(180deg,#fff 0%,#fcfcfd 100%)}
.site-header{background:rgba(255,255,255,.96);box-shadow:0 6px 24px rgba(16,47,87,.04)}
.nav{gap:22px;position:relative}
.nav > a,.nav-parent{position:relative;display:inline-flex;align-items:center;padding:6px 0;font-weight:800;color:#344963;font-size:15px;white-space:nowrap}
.nav > a:after,.nav-parent:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:linear-gradient(90deg,var(--gold),var(--navy));transition:width .22s ease}
.nav > a:hover:after,.nav > a.active:after,.nav-dropdown:hover .nav-parent:after,.nav-dropdown.active .nav-parent:after,.nav-parent.active:after{width:100%}
.nav > a.active,.nav > a:hover,.nav-parent:hover,.nav-parent.active,.nav-dropdown.active .nav-parent{color:var(--navy)}
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-submenu{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%) translateY(8px);min-width:210px;background:#fff;border:1px solid rgba(201,162,93,.34);border-radius:18px;box-shadow:0 26px 70px rgba(16,47,87,.14);padding:10px;display:grid;gap:4px;opacity:0;pointer-events:none;transition:opacity .22s ease, transform .22s ease}
.nav-submenu:before{content:"";position:absolute;top:-8px;left:50%;transform:translateX(-50%) rotate(45deg);width:16px;height:16px;background:#fff;border-left:1px solid rgba(201,162,93,.34);border-top:1px solid rgba(201,162,93,.34)}
.nav-dropdown:hover .nav-submenu,.nav-dropdown.open .nav-submenu{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-submenu a{padding:10px 12px;border-radius:12px;font-weight:800;color:#3d536f;font-size:14px}
.nav-submenu a:hover{background:var(--gold-soft);color:var(--navy)}
.kicker{background:linear-gradient(135deg,var(--gold-soft),#f9f5ec);color:#7c6030;border:1px solid rgba(201,162,93,.28)}
.btn{background:linear-gradient(135deg,#12335d,#1d4f84)}
.btn:hover{background:linear-gradient(135deg,#173e70,#275b93)}
.btn.light{background:linear-gradient(135deg,#fff,#fbf7f0);border:1px solid rgba(201,162,93,.34)}
.btn.ghost{border:1px solid rgba(201,162,93,.34)}
.hero{background:linear-gradient(135deg,#fff 0%,#f6faff 56%,#faf6ef 100%)}
.soft{background:linear-gradient(180deg,#fafbfd 0%,#f6f8fb 100%)}
.section-head span{color:#9a7432;letter-spacing:.08em}
.hero-mini div,.purpose-card,.iso-card,.why-cards div,.summary-grid div,.process-row div,.contact-side,.contact-form,.faq-list details,.explain-main,.explain-side,.photo-grid figure,.iso-filter,.trust-mark{transition:transform .26s ease, box-shadow .26s ease, border-color .26s ease, opacity .45s ease, translate .45s ease}
.purpose-card:hover,.iso-card:hover,.why-cards div:hover,.summary-grid div:hover,.process-row div:hover,.trust-mark:hover,.iso-filter:hover{transform:translateY(-4px);box-shadow:var(--shadow-strong)}
.hero-photo,.sub-photo,.preview-photo{position:relative;overflow:hidden}
.hero-photo:after,.sub-photo:after,.preview-photo:after{content:"";position:absolute;inset:auto 0 0 auto;width:120px;height:120px;background:radial-gradient(circle at center, rgba(201,162,93,.18), transparent 70%)}
.hero-photo img,.sub-photo img,.preview-photo img,.iso-card-img img,.photo-grid img{transition:transform .8s ease, filter .5s ease}
.hero-photo:hover img,.sub-photo:hover img,.preview-photo:hover img,.iso-card:hover img,.photo-grid figure:hover img{transform:scale(1.03)}
.hero-mini div:nth-child(2){border-color:rgba(201,162,93,.34)}
.hero-mini div:nth-child(3){background:linear-gradient(135deg,#fff,#faf6ef)}
.trust-strip{padding:0 0 24px;background:linear-gradient(180deg,transparent 0%,#fff 100%)}
.trust-strip-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.trust-strip-mini{padding-top:12px}
.trust-mark{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid rgba(201,162,93,.28);border-radius:22px;padding:20px;box-shadow:0 14px 34px rgba(16,47,87,.06)}
.mark-icon{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#12335d,#244a78);color:#fff;font-weight:900;box-shadow:0 10px 20px rgba(18,51,93,.16)}
.trust-mark b{display:block;font-size:16px;color:var(--navy);margin-bottom:4px}
.trust-mark p{font-size:14px;color:#556b83;line-height:1.6}
.iso-filter-bar{padding:4px 0 2px}
.iso-filter.active{background:linear-gradient(135deg,#12335d,#244a78);border-color:rgba(201,162,93,.45);box-shadow:0 14px 28px rgba(16,47,87,.12)}
.iso-card-body b{color:#9a7432}.iso-card-body em{color:#7b5d2d;font-style:normal;font-weight:900}
.why{background:linear-gradient(135deg,#f8fbff 0%,#faf6ef 100%)}
.process-row div b{color:#9a7432}
.final-cta{background:linear-gradient(135deg,#102f57,#224b79);position:relative;overflow:hidden}
.final-cta:before{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle, rgba(201,162,93,.22), transparent 70%)}
.cert-badges{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:4px}
.cert-badges span{display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border:1px solid rgba(201,162,93,.28);border-radius:999px;background:#fff;color:#7b5d2d;font-weight:800;font-size:13px;box-shadow:0 8px 18px rgba(16,47,87,.05)}
.cert-badges span:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gold)}
.explain-side{background:linear-gradient(135deg,#102f57,#244a78)}
.explain-main{border-color:rgba(201,162,93,.22)}
.explain-main h2{position:relative;padding-bottom:12px}
.explain-main h2:after{content:"";position:absolute;left:0;bottom:0;width:82px;height:3px;background:linear-gradient(90deg,var(--gold),rgba(201,162,93,0))}
.photo-grid figure{border-color:rgba(201,162,93,.18)}
.photo-grid figcaption b{color:var(--navy)}

/* reveal motion */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .68s ease, transform .68s ease}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}

@media (max-width:1120px){
  .nav-dropdown{display:block;width:100%}
  .nav-parent{width:100%;justify-content:space-between;padding:12px 14px;border-radius:12px}
  .nav-parent:before{content:"▾";order:2;font-size:12px;color:#7b5d2d;margin-left:auto;transition:transform .2s ease}
  .nav-dropdown.open .nav-parent:before{transform:rotate(180deg)}
  .nav-submenu{position:static;transform:none;opacity:1;pointer-events:auto;display:none;box-shadow:none;border:1px solid var(--line);margin-top:6px;background:#fbfcfe}
  .nav-submenu:before{display:none}
  .nav-dropdown.open .nav-submenu{display:grid}
  .trust-strip-inner{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:960px){
  .trust-strip-inner{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  .trust-strip{padding-bottom:10px}
  .trust-strip-inner{grid-template-columns:1fr}
  .trust-mark{padding:18px;border-radius:18px}
}


/* =========================
   v19 refinement: wider layout, horizontal dropdown, Korean-photo polish
   ========================= */
.container{width:min(1400px,calc(100% - 72px))}
@media (min-width:1700px){.container{width:min(1520px,calc(100% - 88px))}}
.site-header .container{width:min(1440px,calc(100% - 72px))}
.section{padding:98px 0}.hero{padding:104px 0 82px}.sub-hero,.cert-hero{padding-top:86px}
.hero-grid,.sub-hero-grid{grid-template-columns:1.06fr .94fr;gap:64px}.hero h1{font-size:clamp(42px,5vw,72px)}.sub-hero h1,.cert-hero h1{font-size:clamp(34px,4vw,56px)}
.hero p{font-size:20px;max-width:720px}.section-head h2{font-size:clamp(30px,3vw,46px)}.section-head p{font-size:18px;max-width:860px}
.hero-photo img{height:520px;width:100%;object-fit:cover}.sub-photo img,.preview-photo img{height:390px;width:100%;object-fit:cover}
.nav{gap:26px;align-items:center}.nav-dropdown{position:relative;display:flex;align-items:center;padding-bottom:16px;margin-bottom:-16px}
.nav-parent{display:inline-flex;align-items:center;gap:8px}
.nav-parent::before{content:"";display:none}
.nav-parent::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:linear-gradient(90deg,var(--gold),var(--navy));transition:width .22s ease}
.nav-dropdown:hover .nav-parent::after,.nav-dropdown.active .nav-parent::after,.nav-parent.active::after{width:100%}
.nav-submenu{top:calc(100% - 4px);left:50%;transform:translateX(-50%) translateY(0);min-width:760px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:14px;border-radius:20px}
.nav-submenu a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:46px;background:#fbfcfe;border:1px solid rgba(201,162,93,.15)}
.nav-submenu a:hover{background:linear-gradient(135deg,#fbf7ef,#f4f8fd);border-color:rgba(201,162,93,.3)}
.nav-dropdown:hover .nav-submenu,.nav-dropdown.open .nav-submenu{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.iso-mark-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.iso-mark-row span{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:linear-gradient(135deg,#fff,#faf6ef);border:1px solid rgba(201,162,93,.28);font-weight:900;color:#6f5528;font-size:13px;box-shadow:0 8px 16px rgba(16,47,87,.05)}
.iso-mark-row span:before{content:"";width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--gold),#e0bf7d);margin-right:8px}
.trust-strip-inner{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.trust-mark{padding:22px}
.purpose-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.iso-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.photo-grid img{height:300px}.iso-card-img img{height:230px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.trust-mark,.purpose-card,.iso-card,.why-cards div,.summary-grid div,.process-row div{border-radius:24px}
.photo-grid figure,.hero-photo,.sub-photo,.preview-photo{border-radius:32px}
.explain-grid{grid-template-columns:1.08fr .92fr;gap:28px}
.explain-main p{font-size:17.5px}

/* stronger official look */
.header-phone{position:relative;padding-left:16px}.header-phone:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:var(--gold)}
.trust-mark b,.process-row div h3{letter-spacing:-.02em}

/* desktop dropdown hover bridge */
.nav-dropdown::after{content:"";position:absolute;left:-8px;right:-8px;top:100%;height:18px}

/* mobile refinement */
@media (max-width:1120px){
  .site-header .container,.container{width:calc(100% - 34px)}
  .nav-dropdown{display:block;width:100%;padding-bottom:0;margin-bottom:0}
  .nav-parent{width:100%;justify-content:space-between;padding:12px 14px;border-radius:12px}
  .nav-parent::before{content:"▾";display:block;order:2;font-size:12px;color:#7b5d2d;margin-left:auto;transition:transform .2s ease}
  .nav-dropdown.open .nav-parent::before{transform:rotate(180deg)}
  .nav-submenu{min-width:0;grid-template-columns:1fr 1fr;position:static;transform:none;display:none;opacity:1;pointer-events:auto;border-radius:14px;padding:8px;margin-top:6px}
  .nav-dropdown.open .nav-submenu{display:grid}
  .nav-dropdown::after{display:none}
}
@media (max-width:960px){
  .hero-grid,.sub-hero-grid,.explain-grid,.why-grid,.split,.education-preview,.contact-grid{grid-template-columns:1fr}
  .trust-strip-inner{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
  .section{padding:62px 0}.hero{padding:56px 0 52px}.hero h1,.sub-hero h1,.cert-hero h1{font-size:32px}.hero p,.sub-hero p,.cert-hero p{font-size:16px}
  .hero-photo img,.sub-photo img,.preview-photo img{height:230px}
  .nav-submenu{grid-template-columns:1fr}
  .trust-strip-inner,.purpose-grid,.iso-grid,.summary-grid,.photo-grid,.process-row,.why-cards{grid-template-columns:1fr}
  .final-cta-inner{display:block}
}


/* =========================
   v20 final: dropdown stability + wide polish + official marks
   ========================= */
:root{
  --gold:#c9a25d;
  --gold-soft:#f7f0e3;
  --max-wide:1500px;
}

/* wide layout */
.container{width:min(var(--max-wide), calc(100% - 84px));}
.site-header .container{width:min(1520px, calc(100% - 84px));}
.hero-grid,.sub-hero-grid{grid-template-columns:1.08fr .92fr;gap:72px;}
.hero-photo img{height:560px;}
.sub-photo img,.preview-photo img{height:420px;}
.iso-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.purpose-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.photo-grid{gap:24px;}
.photo-grid img{height:320px;}
.section{padding:104px 0;}

/* top menu underline */
.nav > a,.nav-parent{
  position:relative;
}
.nav > a:after,.nav-parent:after{
  content:"";
  position:absolute;
  left:0;
  bottom:-7px;
  width:0;
  height:2px;
  background:linear-gradient(90deg,var(--gold),#102f57);
  transition:width .22s ease;
}
.nav > a:hover:after,.nav > a.active:after,
.nav-dropdown:hover .nav-parent:after,
.nav-dropdown.open .nav-parent:after,
.nav-dropdown.active .nav-parent:after{
  width:100%;
}

/* horizontal mega dropdown */
.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
  padding:18px 0;
  margin:-18px 0;
}
.nav-dropdown:before{
  content:"";
  position:absolute;
  left:-40px;
  right:-40px;
  top:100%;
  height:26px;
}
.nav-submenu{
  position:fixed;
  top:74px;
  left:50%;
  transform:translateX(-50%) translateY(10px);
  width:min(980px, calc(100vw - 80px));
  min-width:0;
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:8px;
  padding:14px;
  background:rgba(255,255,255,.98);
  border:1px solid rgba(201,162,93,.32);
  border-radius:20px;
  box-shadow:0 26px 70px rgba(16,47,87,.15);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  z-index:5000;
}
.nav-submenu:before{
  display:none;
}
.nav-dropdown:hover .nav-submenu,
.nav-dropdown.open .nav-submenu{
  opacity:1;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.nav-submenu a{
  min-height:50px;
  padding:10px 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border:1px solid rgba(201,162,93,.15);
  border-radius:14px;
  background:#fbfcfe;
  font-size:14px;
  font-weight:900;
  color:#344963;
}
.nav-submenu a:hover{
  background:linear-gradient(135deg,#fbf7ef,#f4f8fd);
  color:#102f57;
  border-color:rgba(201,162,93,.42);
}

/* ISO official-looking marks */
.iso-mark-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.iso-mark-row span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 15px;
  border-radius:999px;
  background:linear-gradient(135deg,#fff,#faf5ea);
  border:1px solid rgba(201,162,93,.34);
  color:#6d5226;
  font-weight:950;
  font-size:13px;
  box-shadow:0 8px 18px rgba(16,47,87,.05);
}
.iso-mark-row span:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--gold);
  margin-right:8px;
}

/* image polish */
.hero-photo,.sub-photo,.preview-photo,.photo-grid figure{
  border-color:rgba(201,162,93,.20);
}
.hero-photo img,.sub-photo img,.preview-photo img,.iso-card-img img,.photo-grid img{
  filter:saturate(.98) contrast(1.02);
}

/* less crowded on mid-size */
@media(max-width:1320px){
  .container,.site-header .container{width:calc(100% - 56px);}
  .nav{gap:20px;}
  .nav-submenu{grid-template-columns:repeat(4,1fr);width:min(760px, calc(100vw - 56px));}
  .hero-grid,.sub-hero-grid{gap:52px;}
}

@media(max-width:1120px){
  .container,.site-header .container{width:calc(100% - 34px);}
  .nav-dropdown{
    display:block;
    width:100%;
    padding:0;
    margin:0;
  }
  .nav-dropdown:before{display:none;}
  .nav-parent{
    width:100%;
    justify-content:space-between;
    padding:12px 14px;
    border-radius:12px;
  }
  .nav-parent:before{
    content:"▾";
    display:block;
    order:2;
    font-size:12px;
    color:#7b5d2d;
    margin-left:auto;
    transition:transform .2s ease;
  }
  .nav-dropdown.open .nav-parent:before{transform:rotate(180deg);}
  .nav-submenu{
    position:static;
    transform:none;
    width:100%;
    grid-template-columns:1fr 1fr;
    display:none;
    opacity:1;
    pointer-events:auto;
    box-shadow:none;
    border:1px solid var(--line);
    margin-top:6px;
    padding:8px;
    border-radius:14px;
  }
  .nav-dropdown.open .nav-submenu{display:grid;}
  .nav-dropdown:hover .nav-submenu{transform:none;}
  .nav-submenu a{min-height:44px;}
}

@media(max-width:960px){
  .hero-grid,.sub-hero-grid{grid-template-columns:1fr;}
  .hero-photo img,.sub-photo img,.preview-photo img{height:300px;}
  .photo-grid{grid-template-columns:1fr 1fr;}
  .iso-grid,.purpose-grid{grid-template-columns:1fr 1fr;}
}

@media(max-width:700px){
  .container,.site-header .container{width:calc(100% - 32px);}
  .section{padding:64px 0;}
  .hero{padding:58px 0 54px;}
  .hero-photo img,.sub-photo img,.preview-photo img{height:230px;}
  .photo-grid,.iso-grid,.purpose-grid{grid-template-columns:1fr;}
  .nav-submenu{grid-template-columns:1fr;}
  .iso-mark-row span{font-size:12px;padding:9px 12px;}
}


/* =========================
   v21 final homepage polish
   - larger small text
   - icon size correction
   - non-duplicated photo use
   - wider desktop layout
   - ISO click goes to full list
   ========================= */

:root{
  --gold:#c9a25d;
  --gold-soft:#f7f0e3;
  --max-wide:1540px;
}

body{
  font-size:17px;
  letter-spacing:-.015em;
}

.container{
  width:min(var(--max-wide), calc(100% - 88px));
}

.site-header .container{
  width:min(1580px, calc(100% - 88px));
}

.nav > a,
.nav-parent{
  font-size:16px;
  font-weight:900;
}

.header-phone{
  font-size:15.5px;
}

.btn{
  font-size:16px;
  min-height:52px;
}

.btn.small{
  font-size:15px;
  min-height:44px;
}

.hero{
  padding:108px 0 86px;
}

.hero-grid,
.sub-hero-grid{
  grid-template-columns:1.08fr .92fr;
  gap:76px;
}

.hero h1{
  font-size:clamp(46px,5vw,78px);
  line-height:1.13;
}

.hero p{
  font-size:21px;
  line-height:1.68;
  max-width:760px;
}

.sub-hero h1,
.cert-hero h1{
  font-size:clamp(38px,4vw,60px);
}

.sub-hero p,
.cert-hero p{
  font-size:19px;
}

.section{
  padding:108px 0;
}

.section-head h2{
  font-size:clamp(34px,3vw,48px);
}

.section-head p{
  font-size:18.5px;
  line-height:1.72;
}

.hero-photo img{
  height:580px;
}

.sub-photo img,
.preview-photo img{
  height:430px;
}

.iso-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
}

.purpose-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:26px;
}

.iso-card-img img{
  height:250px;
}

.iso-card-body{
  padding:27px 28px 29px;
}

.iso-card-body b{
  font-size:15px;
}

.iso-card-body h3{
  font-size:26px;
}

.iso-card-body p{
  font-size:17px;
  line-height:1.68;
  min-height:62px;
}

.iso-card-body em{
  font-size:17px;
}

.purpose-card{
  padding:29px;
}

.purpose-card h3{
  font-size:24px;
}

.purpose-card p{
  font-size:17px;
}

.hero-mini div{
  font-size:16px;
  padding:18px;
}

.trust-mark{
  padding:24px;
}

.mark-icon{
  min-width:50px;
  width:50px;
  height:50px;
  border-radius:16px;
  font-size:20px;
}

.trust-mark b{
  font-size:18px;
}

.trust-mark p{
  font-size:15.5px;
}

.process-row div{
  padding:27px;
}

.process-row b{
  width:46px;
  height:46px;
  font-size:16px;
}

.process-row h3{
  font-size:22px;
}

.process-row p{
  font-size:16.5px;
}

.photo-grid{
  gap:26px;
}

.photo-grid img{
  height:340px;
}

.photo-grid figcaption{
  padding:23px 25px 25px;
}

.photo-grid b{
  font-size:22px;
}

.photo-grid span{
  font-size:16.5px;
}

.summary-grid div{
  padding:27px;
}

.summary-grid span{
  font-size:15px;
}

.summary-grid strong{
  font-size:20px;
}

.explain-main,
.explain-side{
  padding:34px;
}

.explain-main p{
  font-size:18px;
}

.explain-side h3{
  font-size:28px;
}

.explain-side li{
  font-size:17px;
}

/* dropdown: 가로형 + 안 사라지게 */
.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
  padding:20px 0;
  margin:-20px 0;
}

.nav-dropdown:before{
  content:"";
  position:absolute;
  left:-56px;
  right:-56px;
  top:100%;
  height:34px;
}

.nav-submenu{
  position:fixed;
  top:76px;
  left:50%;
  transform:translateX(-50%) translateY(10px);
  width:min(1080px, calc(100vw - 90px));
  min-width:0;
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:9px;
  padding:16px;
  background:rgba(255,255,255,.985);
  border:1px solid rgba(201,162,93,.34);
  border-radius:22px;
  box-shadow:0 28px 78px rgba(16,47,87,.16);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  z-index:5000;
}

.nav-submenu:before{
  display:none;
}

.nav-dropdown:hover .nav-submenu,
.nav-dropdown.open .nav-submenu{
  opacity:1;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}

.nav-submenu a{
  min-height:54px;
  padding:12px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border:1px solid rgba(201,162,93,.16);
  border-radius:15px;
  background:#fbfcfe;
  font-size:15px;
  font-weight:950;
  color:#344963;
}

.nav-submenu a:hover{
  background:linear-gradient(135deg,#fbf7ef,#f4f8fd);
  color:#102f57;
  border-color:rgba(201,162,93,.45);
}

/* ISO chips */
.iso-mark-row span{
  font-size:14px;
  padding:11px 16px;
}

/* photo tone */
.hero-photo img,
.sub-photo img,
.preview-photo img,
.iso-card-img img,
.photo-grid img{
  object-fit:cover;
  filter:saturate(1.02) contrast(1.03);
}

/* mobile/tablet */
@media(max-width:1320px){
  .container,
  .site-header .container{
    width:calc(100% - 56px);
  }
  .nav{
    gap:20px;
  }
  .nav-submenu{
    grid-template-columns:repeat(4,1fr);
    width:min(820px, calc(100vw - 56px));
  }
  .hero-grid,
  .sub-hero-grid{
    gap:56px;
  }
}

@media(max-width:1120px){
  .container,
  .site-header .container{
    width:calc(100% - 34px);
  }

  .nav-dropdown{
    display:block;
    width:100%;
    padding:0;
    margin:0;
  }

  .nav-dropdown:before{
    display:none;
  }

  .nav-parent{
    width:100%;
    justify-content:space-between;
    padding:12px 14px;
    border-radius:12px;
  }

  .nav-parent:before{
    content:"▾";
    display:block;
    order:2;
    font-size:12px;
    color:#7b5d2d;
    margin-left:auto;
    transition:transform .2s ease;
  }

  .nav-dropdown.open .nav-parent:before{
    transform:rotate(180deg);
  }

  .nav-submenu{
    position:static;
    transform:none;
    width:100%;
    grid-template-columns:1fr 1fr;
    display:none;
    opacity:1;
    pointer-events:auto;
    box-shadow:none;
    border:1px solid var(--line);
    margin-top:6px;
    padding:8px;
    border-radius:14px;
  }

  .nav-dropdown.open .nav-submenu{
    display:grid;
  }
}

@media(max-width:960px){
  body{
    font-size:16px;
  }

  .hero-grid,
  .sub-hero-grid,
  .explain-grid,
  .why-grid,
  .split,
  .education-preview,
  .contact-grid{
    grid-template-columns:1fr;
  }

  .hero-photo img,
  .sub-photo img,
  .preview-photo img{
    height:320px;
  }

  .photo-grid,
  .iso-grid,
  .purpose-grid,
  .summary-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:700px){
  .container,
  .site-header .container{
    width:calc(100% - 32px);
  }

  .section{
    padding:66px 0;
  }

  .hero{
    padding:58px 0 54px;
  }

  .hero h1,
  .sub-hero h1,
  .cert-hero h1{
    font-size:34px;
  }

  .hero p,
  .sub-hero p,
  .cert-hero p{
    font-size:16.5px;
  }

  .hero-photo img,
  .sub-photo img,
  .preview-photo img{
    height:240px;
  }

  .photo-grid,
  .iso-grid,
  .purpose-grid,
  .summary-grid,
  .process-row,
  .why-cards{
    grid-template-columns:1fr;
  }

  .iso-card-img img,
  .photo-grid img{
    height:225px;
  }

  .nav-submenu{
    grid-template-columns:1fr;
  }

  .iso-card-body h3{
    font-size:23px;
  }

  .photo-grid b{
    font-size:20px;
  }
}


/* =========================
   v22 main-style final
   screenshot-inspired main layout
   ========================= */

:root{
  --v22-navy:#061426;
  --v22-navy2:#0a1e36;
  --v22-gold:#c9a25d;
  --v22-gold2:#e4bd72;
  --v22-line:#dce3ee;
  --v22-muted:#6b7b90;
}

/* general readability */
body{
  font-size:17px;
}
p{
  font-size:17px;
}
.nav > a,
.nav-parent{
  font-size:16px;
}
.btn,
.v22-btn{
  font-size:16px;
}

/* Main hero */
.v22-hero{
  position:relative;
  min-height:640px;
  background:var(--v22-navy);
  overflow:hidden;
}
.v22-hero-bg{
  position:absolute;
  inset:0;
}
.v22-hero-bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.v22-hero-shade{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 0% 100%, rgba(201,162,93,.16), transparent 33%),
    linear-gradient(90deg, rgba(3,13,27,.96) 0%, rgba(3,13,27,.78) 36%, rgba(3,13,27,.48) 62%, rgba(3,13,27,.78) 100%);
}
.v22-hero-inner{
  position:relative;
  z-index:2;
  min-height:640px;
  display:grid;
  grid-template-columns:1fr 380px;
  align-items:center;
  gap:72px;
  padding:58px 0 50px;
}
.v22-overline{
  display:block;
  color:var(--v22-gold2);
  font-weight:900;
  font-size:18px;
  margin-bottom:20px;
}
.v22-hero h1{
  color:#fff;
  font-size:clamp(52px,5.6vw,86px);
  line-height:1.08;
  letter-spacing:-.06em;
}
.v22-hero h1 em{
  color:var(--v22-gold2);
  font-style:normal;
}
.v22-hero p{
  color:#dce7f3;
  font-size:21px;
  line-height:1.65;
  margin-top:24px;
}
.v22-hero-buttons{
  display:flex;
  gap:16px;
  margin-top:34px;
}
.v22-btn{
  min-width:220px;
  height:58px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  border-radius:6px;
  font-weight:900;
  transition:.2s;
}
.v22-btn.gold{
  background:linear-gradient(135deg,#d5ad62,#b88d42);
  color:#fff;
}
.v22-btn.outline{
  color:#fff;
  border:1px solid rgba(228,189,114,.7);
  background:rgba(6,20,38,.18);
}
.v22-btn:hover{
  transform:translateY(-2px);
}
.v22-cert-marks{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin-top:30px;
}
.v22-cert-marks span{
  width:54px;
  height:54px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.42);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:13px;
  font-weight:950;
  background:rgba(255,255,255,.08);
}
.v22-cert-marks p{
  color:#cfd9e6;
  font-size:14px;
  line-height:1.5;
  margin:0 0 0 6px;
}
.v22-hero-panel{
  background:rgba(5,18,34,.72);
  border:1px solid rgba(255,255,255,.28);
  border-radius:16px;
  padding:32px;
  color:#fff;
  backdrop-filter:blur(10px);
}
.v22-hero-panel h2{
  color:var(--v22-gold2);
  font-size:25px;
  margin-bottom:24px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(228,189,114,.35);
}
.v22-hero-panel div{
  padding:15px 0 15px 54px;
  position:relative;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.v22-hero-panel div:before{
  content:"";
  position:absolute;
  left:0;
  top:18px;
  width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(228,189,114,.72);
}
.v22-hero-panel b{
  display:block;
  color:#fff;
  font-size:17px;
  margin-bottom:4px;
}
.v22-hero-panel p{
  margin:0;
  color:#bfccd9;
  font-size:14.5px;
}

/* industry section */
.v22-industry-section{
  background:#fff;
  padding:42px 0 28px;
}
.v22-section-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px;
}
.v22-section-row h2{
  font-size:30px;
  color:var(--v22-navy);
}
.v22-section-row p{
  color:var(--v22-muted);
  font-size:15.5px;
  margin-top:4px;
}
.v22-section-row a{
  color:var(--v22-navy);
  font-weight:900;
}
.v22-industry-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:12px;
}
.v22-industry-card{
  border:1px solid var(--v22-line);
  background:#fff;
  border-radius:8px;
  overflow:hidden;
  transition:.18s;
}
.v22-industry-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 36px rgba(6,20,38,.10);
}
.v22-industry-top{
  display:grid;
  grid-template-columns:46px 1fr;
  gap:12px;
  padding:18px 16px 14px;
  min-height:112px;
}
.v22-line-icon{
  width:36px;
  height:36px;
  border:2px solid var(--v22-navy);
  border-radius:8px;
  opacity:.9;
}
.v22-industry-top h3{
  font-size:18px;
  color:var(--v22-navy);
  margin-bottom:4px;
}
.v22-industry-top p{
  font-size:14px;
  line-height:1.45;
  color:#1f2d40;
  font-weight:800;
}
.v22-industry-img img{
  width:100%;
  height:94px;
  object-fit:cover;
}

/* purpose section */
.v22-purpose-section{
  background:var(--v22-navy);
  color:#fff;
  padding:32px 0;
}
.v22-purpose-inner{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:30px;
  align-items:center;
}
.v22-purpose-head h2{
  color:#fff;
  font-size:28px;
}
.v22-purpose-head p{
  color:#c2cfdd;
  font-size:15px;
  margin-top:5px;
}
.v22-purpose-scroll{
  display:grid;
  grid-template-columns:repeat(8,1fr);
  gap:0;
}
.v22-purpose-item{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:13px;
  align-items:center;
  color:#fff;
  padding:12px 18px;
  border-left:1px solid rgba(201,162,93,.45);
}
.v22-gold-icon{
  width:42px;
  height:42px;
  display:block;
  border:2px solid var(--v22-gold2);
  border-radius:12px;
}
.v22-purpose-item h3{
  color:#fff;
  font-size:16px;
  margin-bottom:3px;
}
.v22-purpose-item p{
  color:#cdd8e5;
  font-size:13.5px;
  line-height:1.4;
}

/* service section */
.v22-service-section{
  background:#fff;
  padding:46px 0 66px;
}
.v22-service-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:12px;
}
.v22-service-card{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:14px;
  align-items:center;
  border:1px solid var(--v22-line);
  border-radius:8px;
  background:#fff;
  padding:24px 20px;
}
.v22-service-icon{
  width:46px;
  height:46px;
  border:2px solid #a87d35;
  border-radius:50%;
}
.v22-service-card h3{
  font-size:18px;
  color:var(--v22-navy);
}
.v22-service-card p{
  font-size:14.5px;
  color:var(--v22-muted);
}

/* 상세 페이지 중복감 줄이고 시안 톤 보정 */
.cert-photos{
  background:#fff;
}
.photo-grid figure{
  border-radius:24px;
}
.photo-grid img{
  height:330px;
}
.photo-grid figcaption{
  text-align:left;
}
.photo-grid b{
  font-size:23px;
}
.photo-grid span{
  font-size:16.8px;
}

/* 기존 v21 과충돌 정리 */
.hero:not(.v22-hero){
  display:none;
}

/* responsive */
@media(max-width:1400px){
  .v22-industry-grid{
    grid-template-columns:repeat(3,1fr);
  }
  .v22-purpose-inner{
    grid-template-columns:1fr;
  }
  .v22-purpose-scroll{
    grid-template-columns:repeat(4,1fr);
  }
  .v22-service-grid{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:1100px){
  .v22-hero-inner{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .v22-hero{
    min-height:auto;
  }
  .v22-hero-panel{
    max-width:640px;
  }
}
@media(max-width:760px){
  .v22-hero-inner{
    padding:54px 0;
  }
  .v22-hero h1{
    font-size:42px;
  }
  .v22-hero p{
    font-size:16.5px;
  }
  .v22-hero-buttons{
    display:grid;
  }
  .v22-btn{
    width:100%;
  }
  .v22-cert-marks span{
    width:46px;
    height:46px;
  }
  .v22-hero-panel{
    padding:24px;
  }
  .v22-industry-grid,
  .v22-purpose-scroll,
  .v22-service-grid{
    grid-template-columns:1fr;
  }
  .v22-purpose-item{
    border-left:0;
    border-top:1px solid rgba(201,162,93,.32);
  }
  .v22-section-row{
    display:block;
  }
  .v22-section-row a{
    display:inline-block;
    margin-top:10px;
  }
}


/* =========================
   v23 designer final polish
   ========================= */
.hero:not(.v23-hero){display:none}
body{font-size:16px;line-height:1.7}
p{font-size:17px;line-height:1.68}
.container{width:min(1480px,calc(100% - 64px))}
.site-header{background:rgba(255,255,255,.96)}
.header-inner{height:76px}
.nav{gap:28px}
.nav a,.nav-parent{font-size:15px;font-weight:900}
.btn.small{padding:12px 18px;border-radius:16px;font-size:14px}
.header-phone{font-size:15px;font-weight:900}

/* hero */
.v23-hero{position:relative;min-height:640px;background:#071728;overflow:hidden}
.v23-hero-bg,.v23-hero-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.v23-hero-overlay{position:absolute;inset:0;background:
linear-gradient(90deg,rgba(4,16,31,.92) 0%,rgba(4,16,31,.78) 34%,rgba(4,16,31,.48) 58%,rgba(4,16,31,.74) 100%),
radial-gradient(circle at 10% 20%,rgba(201,162,93,.12),transparent 35%)}
.v23-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:center;gap:72px;min-height:640px;padding:54px 0}
.v23-hero-top{display:inline-block;color:#e3b866;font-size:17px;font-weight:900;margin-bottom:22px}
.v23-hero-copy h1{font-size:clamp(54px,5.6vw,86px);line-height:1.04;letter-spacing:-.06em;color:#fff}
.v23-hero-copy h1 em{font-style:normal;color:#e7bf72}
.v23-hero-copy p{color:#d9e3ef;font-size:19px;line-height:1.72;max-width:760px;margin-top:24px}
.v23-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.v23-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:220px;height:58px;border-radius:8px;font-size:16px;font-weight:900;transition:transform .18s ease, background .18s ease}
.v23-btn:hover{transform:translateY(-2px)}
.v23-btn-gold{background:linear-gradient(135deg,#d9af65,#bb8f44);color:#fff;box-shadow:0 16px 34px rgba(0,0,0,.18)}
.v23-btn-outline{border:1px solid rgba(231,191,114,.6);background:rgba(255,255,255,.02);color:#fff}
.v23-mark-wrap{display:flex;align-items:center;gap:18px;margin-top:28px;flex-wrap:wrap}
.v23-mark-list{display:flex;gap:10px;flex-wrap:wrap}
.v23-mark-list span{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.05);color:#fff;font-size:15px;font-weight:900}
.v23-mark-text b{display:block;color:#fff;font-size:17px;margin-bottom:4px}
.v23-mark-text p{font-size:15px;color:#d1dceb;margin:0}

/* side panel */
.v23-side-panel{background:rgba(6,20,38,.72);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);border-radius:18px;padding:32px}
.v23-side-panel h2{font-size:22px;color:#e7bf72;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(231,191,114,.22)}
.v23-side-list{display:grid;gap:6px}
.v23-side-item{display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.v23-step{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;border:1px solid rgba(231,191,114,.48);background:rgba(255,255,255,.03);color:#e7bf72;font-size:13px;font-weight:900}
.v23-side-item b{display:block;color:#fff;font-size:18px;line-height:1.35;margin-bottom:5px}
.v23-side-item p{margin:0;color:#c9d3df;font-size:14.5px;line-height:1.5}

/* generic section head */
.v23-section{padding:54px 0}
.v23-section-services{padding-top:44px;padding-bottom:74px}
.v23-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.v23-section-head h2{font-size:30px;color:#071b35}
.v23-section-head p{font-size:16px;color:#6b7b90;margin-top:6px}
.v23-section-head a{font-size:15px;font-weight:900;color:#0f2c54}

/* cards */
.v23-industry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.v23-card-industry{display:block;background:#fff;border:1px solid #dde4ee;border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(11,29,57,.05);transition:transform .18s ease, box-shadow .18s ease}
.v23-card-industry:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(11,29,57,.09)}
.v23-card-head{display:grid;grid-template-columns:68px 1fr;gap:16px;padding:20px 20px 16px;min-height:126px}
.v23-badge{display:flex;align-items:center;justify-content:center;border-radius:16px;font-weight:900;letter-spacing:-.01em}
.v23-badge-blue{background:#eef4fb;border:1px solid #d7e4f3;color:#173a67;width:58px;height:58px;font-size:15px}
.v23-badge-gold{background:rgba(231,191,114,.12);border:1px solid rgba(231,191,114,.35);color:#e7bf72;width:58px;height:58px;font-size:14px}
.v23-badge-line{border:1px solid rgba(201,162,93,.52);color:#a87d35;background:#fff;width:56px;height:56px;font-size:14px}
.v23-card-copy h3{font-size:24px;color:#071b35;margin-bottom:8px}
.v23-card-copy p{font-size:15px;line-height:1.45;color:#20324d;font-weight:800;margin:0}
.v23-card-thumb img{width:100%;height:142px;object-fit:cover}

/* purpose */
.v23-purpose-band{padding:0 0 24px;background:#fff}
.v23-purpose-wrap{background:#03162d;border-radius:18px;padding:26px 26px 24px;display:grid;grid-template-columns:260px 1fr;gap:26px;align-items:start}
.v23-purpose-intro{padding:10px 6px 0 8px}
.v23-purpose-intro h2{font-size:29px;color:#fff;margin-bottom:8px}
.v23-purpose-intro p{font-size:16px;color:#c7d2df}
.v23-purpose-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.v23-purpose-card{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:center;padding:16px 14px;border-radius:14px;background:rgba(255,255,255,.02);border:1px solid rgba(231,191,114,.18);transition:transform .18s ease,border-color .18s ease}
.v23-purpose-card:hover{transform:translateY(-2px);border-color:rgba(231,191,114,.42)}
.v23-purpose-copy h3{font-size:18px;color:#fff;line-height:1.35;margin-bottom:5px}
.v23-purpose-copy p{margin:0;color:#d2dbe6;font-size:14px;line-height:1.45}

/* service */
.v23-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.v23-service-card{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start;background:#fff;border:1px solid #dde4ee;border-radius:14px;padding:24px 22px;box-shadow:0 10px 28px rgba(11,29,57,.04)}
.v23-service-copy h3{font-size:24px;color:#071b35;margin-bottom:6px}
.v23-service-copy p{font-size:15px;line-height:1.52;color:#687a8f;margin:0}

/* detailed pages */
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.photo-grid figure{background:#fff;border:1px solid #e1e7ef;border-radius:22px;overflow:hidden;box-shadow:0 10px 26px rgba(11,29,57,.05)}
.photo-grid img{width:100%;height:320px;object-fit:cover}
.photo-grid figcaption{padding:20px 22px 22px}
.photo-grid b{display:block;font-size:24px;color:#102f57;margin-bottom:8px}
.photo-grid span{display:block;font-size:16.5px;line-height:1.58;color:#52657d}
.sub-hero h1,.cert-hero h1{font-size:clamp(38px,4.2vw,64px)}
.sub-hero p,.cert-hero p{font-size:19px}

/* polish interactions */
.v23-card-industry,.v23-purpose-card,.v23-service-card,.v23-side-panel,.v23-mark-list span{transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}
.v23-mark-list span:hover,.v23-service-card:hover,.v23-card-industry:hover,.v23-purpose-card:hover{transform:translateY(-2px)}

/* responsive */
@media (max-width:1320px){
  .container{width:calc(100% - 48px)}
  .v23-hero-inner{grid-template-columns:1fr 330px;gap:48px}
}
@media (max-width:1100px){
  .v23-hero-inner{grid-template-columns:1fr;min-height:auto;padding:56px 0}
  .v23-side-panel{max-width:640px}
  .v23-industry-grid,.v23-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v23-purpose-wrap{grid-template-columns:1fr}
}
@media (max-width:760px){
  .container{width:calc(100% - 28px)}
  .v23-hero-copy h1{font-size:40px}
  .v23-hero-copy p{font-size:16.5px}
  .v23-hero-actions{display:grid}
  .v23-btn{width:100%}
  .v23-mark-wrap{display:block}
  .v23-mark-text{margin-top:14px}
  .v23-side-panel{padding:24px}
  .v23-section{padding:40px 0}
  .v23-section-head{display:block}
  .v23-section-head a{display:inline-block;margin-top:10px}
  .v23-industry-grid,.v23-purpose-grid,.v23-service-grid,.photo-grid{grid-template-columns:1fr}
  .v23-purpose-card,.v23-service-card,.v23-card-head{grid-template-columns:58px 1fr}
  .v23-purpose-wrap{padding:22px 18px}
}



/* =========================
   v24 final typography + shortcut polish
   ========================= */

/* large sub page headings: prevent awkward one-word breaks */
.sub-hero h1,
.cert-hero h1{
  max-width:1120px;
  word-break:keep-all;
  overflow-wrap:normal;
  line-height:1.16;
  letter-spacing:-.055em;
}

/* education title was breaking after a single word on desktop */
.sub-hero-education h1{
  font-size:clamp(42px,4.2vw,68px);
  max-width:1280px;
  white-space:nowrap;
}

/* sub page spacing balance */
.sub-hero.simple,
.sub-hero{
  padding-top:82px;
  padding-bottom:64px;
}
.sub-hero p,
.cert-hero p{
  max-width:980px;
  word-break:keep-all;
  font-size:18.5px;
}

/* badge label balance */
.kicker{
  font-size:13px;
  padding:8px 14px;
}

/* footer shortcut link polish */
.footer a[target="_blank"]{
  color:#f0d39a;
  font-weight:800;
}

/* detailed page title line rhythm */
.cert-hero h1{
  font-size:clamp(40px,4.4vw,66px);
}

/* desktop main top nav visual alignment */
.header-inner{
  align-items:center;
}
.nav a,
.nav-parent{
  line-height:1;
}

/* Card copy final readability */
.v23-card-copy h3,
.v23-purpose-copy h3,
.v23-service-copy h3{
  word-break:keep-all;
}
.v23-card-copy p,
.v23-purpose-copy p,
.v23-service-copy p{
  word-break:keep-all;
  overflow-wrap:normal;
}

/* mobile: allow natural wrapping */
@media(max-width:900px){
  .sub-hero h1,
  .cert-hero h1,
  .sub-hero-education h1{
    white-space:normal;
    max-width:100%;
    font-size:clamp(34px,8vw,46px);
    line-height:1.18;
  }
  .sub-hero p,
  .cert-hero p{
    font-size:16.5px;
    line-height:1.68;
  }
}



/* =====================================================
   v25 FINAL STABLE
   PC/Mobile dropdown + typography + layout final override
   ===================================================== */

body{
  font-size:16.5px;
  letter-spacing:-0.015em;
}
p{
  word-break:keep-all;
}
.container{
  width:min(1480px, calc(100% - 64px));
}

/* Header 안정화 */
.site-header{
  z-index:9000;
}
.header-inner{
  height:76px;
}
.nav{
  align-items:center;
  gap:28px;
}
.nav > a,
.nav-parent{
  position:relative;
  display:inline-flex;
  align-items:center;
  height:76px;
  padding:0;
  font-size:15.5px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  color:#26384f;
}
.nav > a:after,
.nav-parent:after{
  content:"";
  position:absolute;
  left:0;
  bottom:18px;
  width:0;
  height:2px;
  background:linear-gradient(90deg,#c9a25d,#102f57);
  transition:width .22s ease;
}
.nav > a:hover:after,
.nav > a.active:after,
.nav-dropdown:hover .nav-parent:after,
.nav-dropdown.open .nav-parent:after{
  width:100%;
}

/* ISO 드롭다운: PC hover 안정화 */
.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
  height:76px;
  padding:0 0;
  margin:0;
}
.nav-dropdown:before{
  content:"";
  position:absolute;
  left:-70px;
  right:-70px;
  top:100%;
  height:34px;
}
.nav-submenu{
  position:fixed;
  top:76px;
  left:50%;
  transform:translateX(-50%) translateY(8px);
  width:min(1080px, calc(100vw - 80px));
  min-width:0;
  display:grid;
  grid-template-columns:repeat(7, 1fr);
  gap:9px;
  padding:16px;
  background:rgba(255,255,255,.985);
  border:1px solid rgba(201,162,93,.34);
  border-radius:22px;
  box-shadow:0 28px 78px rgba(16,47,87,.16);
  opacity:0;
  pointer-events:none;
  z-index:9999;
  transition:opacity .18s ease, transform .18s ease;
}
.nav-submenu:before{
  display:none;
}
.nav-dropdown:hover .nav-submenu,
.nav-dropdown.open .nav-submenu{
  opacity:1;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.nav-submenu a{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border:1px solid rgba(201,162,93,.16);
  border-radius:15px;
  background:#fbfcfe;
  font-size:14.5px;
  font-weight:900;
  color:#344963;
  line-height:1.28;
}
.nav-submenu a:hover{
  background:linear-gradient(135deg,#fbf7ef,#f4f8fd);
  color:#102f57;
  border-color:rgba(201,162,93,.45);
}

/* 메인 히어로 최종 정리 */
.v23-hero{
  min-height:640px;
}
.v23-hero-inner{
  min-height:640px;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:72px;
}
.v23-hero-copy h1{
  word-break:keep-all;
}
.v23-hero-copy p{
  font-size:19px;
  word-break:keep-all;
}

/* 우측 패널: 빈 네모 방지, 숫자 배지 형태 고정 */
.v23-side-item{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:16px;
  align-items:start;
}
.v23-step{
  width:42px !important;
  height:42px !important;
  border-radius:14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:13px !important;
  font-weight:950 !important;
  color:#e7bf72 !important;
  background:rgba(231,191,114,.08) !important;
  border:1px solid rgba(231,191,114,.58) !important;
  line-height:1 !important;
}
.v23-side-item b{
  font-size:18px;
  line-height:1.38;
  word-break:keep-all;
}
.v23-side-item p{
  font-size:14.5px;
  line-height:1.5;
  word-break:keep-all;
}

/* 인증 마크 영역 */
.v23-mark-wrap{
  align-items:center;
  gap:18px;
}
.v23-mark-list span{
  width:54px;
  height:54px;
  font-size:14px;
}
.v23-mark-text b{
  font-size:16px;
}
.v23-mark-text p{
  font-size:14px;
}

/* 업종별 추천 ISO */
.v23-industry-grid{
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}
.v23-card-head{
  grid-template-columns:64px minmax(0,1fr);
  gap:16px;
  min-height:124px;
}
.v23-card-copy h3{
  font-size:23px;
  line-height:1.25;
  word-break:keep-all;
}
.v23-card-copy p{
  font-size:15px;
  line-height:1.45;
  word-break:keep-all;
}

/* 목적별 추천 ISO: PC 4+4 */
.v23-purpose-wrap{
  grid-template-columns:260px minmax(0,1fr);
  align-items:start;
}
.v23-purpose-grid{
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  gap:14px;
}
.v23-purpose-card{
  grid-template-columns:58px minmax(0,1fr);
  align-items:center;
  min-height:92px;
}
.v23-purpose-copy h3{
  font-size:18px;
  line-height:1.32;
  word-break:keep-all;
}
.v23-purpose-copy p{
  font-size:14px;
  line-height:1.42;
  word-break:keep-all;
}

/* 서비스 카드: PC 3+3 */
.v23-service-grid{
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:18px;
}
.v23-service-card{
  grid-template-columns:64px minmax(0,1fr);
  min-height:118px;
}
.v23-service-copy h3{
  font-size:23px;
  line-height:1.25;
  word-break:keep-all;
}
.v23-service-copy p{
  font-size:15px;
  line-height:1.5;
  word-break:keep-all;
}

/* 서브페이지 제목 줄바꿈 */
.sub-hero h1,
.cert-hero h1{
  word-break:keep-all;
  overflow-wrap:normal;
  line-height:1.16;
}
.sub-hero-education h1{
  white-space:normal;
  max-width:1280px;
}

/* 교육 페이지: PC 넓은 화면에서만 한 줄 */
@media(min-width:1350px){
  .sub-hero-education h1{
    white-space:nowrap;
  }
}

/* 상세 사진 */
.photo-grid{
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
}
.photo-grid b{
  word-break:keep-all;
}
.photo-grid span{
  word-break:keep-all;
}

/* 모션: 과하지 않게 */
.v23-card-industry,
.v23-purpose-card,
.v23-service-card,
.v23-side-panel,
.v23-mark-list span,
.iso-card,
.purpose-card{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.v23-card-industry:hover,
.v23-purpose-card:hover,
.v23-service-card:hover,
.iso-card:hover,
.purpose-card:hover{
  transform:translateY(-2px);
}

/* tablet */
@media(max-width:1320px){
  .container{
    width:calc(100% - 48px);
  }
  .nav{
    gap:20px;
  }
  .nav-submenu{
    grid-template-columns:repeat(4,1fr);
    width:min(820px, calc(100vw - 56px));
  }
  .v23-hero-inner{
    grid-template-columns:minmax(0,1fr) 330px;
    gap:48px;
  }
}

/* mobile nav */
@media(max-width:1120px){
  .container{
    width:calc(100% - 34px);
  }
  .header-actions{
    display:none !important;
  }
  .menu{
    display:block !important;
  }
  .nav{
    display:none;
    position:absolute;
    top:76px;
    left:18px;
    right:18px;
    background:#fff;
    border:1px solid #dfe7f1;
    border-radius:18px;
    box-shadow:0 18px 46px rgba(16,47,87,.12);
    padding:12px;
    flex-direction:column;
    align-items:stretch;
    gap:2px;
  }
  .nav.open{
    display:flex;
  }
  .nav > a,
  .nav-parent{
    height:auto;
    width:100%;
    padding:13px 14px;
    border-radius:12px;
    justify-content:space-between;
  }
  .nav > a:after,
  .nav-parent:after{
    display:none;
  }
  .nav > a:hover,
  .nav > a.active,
  .nav-parent:hover{
    background:#f6f8fb;
  }
  .nav-dropdown{
    display:block;
    width:100%;
    height:auto;
  }
  .nav-dropdown:before{
    display:none;
  }
  .nav-parent:before{
    content:"▾";
    display:block;
    order:2;
    font-size:12px;
    color:#7b5d2d;
    margin-left:auto;
    transition:transform .2s ease;
  }
  .nav-dropdown.open .nav-parent:before{
    transform:rotate(180deg);
  }
  .nav-submenu{
    position:static;
    transform:none !important;
    width:100%;
    display:none;
    grid-template-columns:1fr 1fr;
    opacity:1;
    pointer-events:auto;
    box-shadow:none;
    border:1px solid #dfe7f1;
    margin-top:6px;
    padding:8px;
    border-radius:14px;
  }
  .nav-dropdown.open .nav-submenu{
    display:grid;
  }
}

/* responsive layout */
@media(max-width:1100px){
  .v23-hero-inner{
    grid-template-columns:1fr;
    min-height:auto;
    padding:56px 0;
  }
  .v23-side-panel{
    max-width:680px;
  }
  .v23-industry-grid,
  .v23-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .v23-purpose-wrap{
    grid-template-columns:1fr;
  }
  .v23-purpose-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .photo-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:760px){
  .container{
    width:calc(100% - 28px);
  }
  .v23-hero-copy h1{
    font-size:40px;
    line-height:1.1;
  }
  .v23-hero-copy p{
    font-size:16.5px;
  }
  .v23-hero-actions{
    display:grid;
  }
  .v23-btn{
    width:100%;
  }
  .v23-side-panel{
    padding:24px;
  }
  .v23-side-item{
    grid-template-columns:40px 1fr;
  }
  .v23-step{
    width:40px !important;
    height:40px !important;
  }
  .v23-industry-grid,
  .v23-purpose-grid,
  .v23-service-grid,
  .photo-grid{
    grid-template-columns:1fr !important;
  }
  .v23-card-head,
  .v23-purpose-card,
  .v23-service-card{
    grid-template-columns:56px 1fr;
  }
  .sub-hero h1,
  .cert-hero h1,
  .sub-hero-education h1{
    white-space:normal;
    font-size:clamp(34px,8vw,46px);
    line-height:1.18;
  }
  .sub-hero p,
  .cert-hero p{
    font-size:16.5px;
  }
}



/* =====================================================
   v27 logo + photo + contact final polish
   ===================================================== */

/* New uploaded logo */
.brand{
  min-width:240px;
}
.brand img{
  width:240px !important;
  height:auto !important;
  max-height:46px;
  object-fit:contain;
}
.brand span{
  display:none !important;
}

/* Header phone cleaner */
.header-phone{
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  padding:9px 13px;
  border:1px solid #dfe7f1;
  border-radius:999px;
  background:#fff;
  color:#102f57 !important;
  font-weight:950;
  line-height:1;
}
.header-phone:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#c9a25d;
  display:inline-block;
  position:static !important;
  transform:none !important;
}

/* Sub hero images: less oversized and better visual balance */
.sub-photo{
  max-width:620px;
  margin-left:auto;
}
.sub-photo img{
  height:360px !important;
  object-fit:cover;
}
.sub-hero-grid{
  align-items:center;
}

/* Contact page: reduce empty-looking space and make right panel useful */
.contact-grid{
  grid-template-columns:minmax(0, 1.05fr) 420px !important;
  gap:42px !important;
  align-items:start;
}
.contact-form{
  max-width:720px;
}
.contact-side{
  position:sticky;
  top:100px;
}
.contact-side p,
.contact-side li{
  word-break:keep-all;
}

/* ISO list image diversity polish */
.iso-card-img img{
  object-position:center center;
}

/* Header on mobile */
@media(max-width:1120px){
  .brand{
    min-width:auto;
  }
  .brand img{
    width:190px !important;
    max-height:42px;
  }
  .header-phone{
    display:none !important;
  }
}

@media(max-width:900px){
  .sub-photo{
    max-width:100%;
    margin-left:0;
  }
  .sub-photo img{
    height:260px !important;
  }
  .contact-grid{
    grid-template-columns:1fr !important;
  }
  .contact-form{
    max-width:100%;
  }
  .contact-side{
    position:static;
  }
}

@media(max-width:520px){
  .brand img{
    width:166px !important;
  }
}


/* v29 contact submit visible status */
.form-status{
  display:none;
  margin:4px 0 2px;
  padding:13px 15px;
  border-radius:14px;
  font-weight:800;
  line-height:1.45;
  font-size:15px;
}
.form-status.loading,
.form-status.success,
.form-status.error{
  display:block;
}
.form-status.loading{
  background:#f6f8fb;
  color:#344963;
  border:1px solid #dfe7f1;
}
.form-status.success{
  background:#eef8f1;
  color:#186038;
  border:1px solid #ccebd4;
}
.form-status.error{
  background:#fff1f1;
  color:#a92525;
  border:1px solid #f2cccc;
}
.contact-form button[disabled]{
  opacity:.72;
  cursor:not-allowed;
}



/* =====================================================
   v31 company name / logo / mark / icon cleanup
   ===================================================== */
.brand{min-width:310px;}
.brand img{
  width:300px !important;
  height:auto !important;
  max-height:58px !important;
  object-fit:contain !important;
}
.brand span{display:none !important;}

/* 업종별 약자/아이콘 제거 */
.v23-card-industry .v23-badge-blue,
.v23-card-industry .v23-badge,
.v22-industry-card .v22-line-icon,
.v22-industry-top .v22-line-icon{
  display:none !important;
}
.v23-card-head{
  grid-template-columns:1fr !important;
  padding:24px 24px 18px !important;
  min-height:118px !important;
}
.v22-industry-top{grid-template-columns:1fr !important;}

.v23-mark-list span,
.v22-cert-marks span{
  font-size:13px !important;
  letter-spacing:-.02em;
}

.ici-global-intro{padding:72px 0;background:#fff;}
.ici-global-card{
  border:1px solid #dde4ee;
  border-radius:24px;
  padding:42px;
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  box-shadow:0 18px 44px rgba(15,47,87,.07);
}
.ici-global-card h2{
  font-size:34px;
  line-height:1.25;
  color:#102f57;
  margin-bottom:22px;
  word-break:keep-all;
}
.ici-global-card p{
  font-size:18px;
  line-height:1.78;
  color:#344963;
  word-break:keep-all;
}
.ici-global-network{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:28px;
}
.ici-location{
  border:1px solid #e4eaf2;
  border-radius:18px;
  padding:22px;
  background:#fff;
}
.ici-location b{
  display:block;
  color:#9b7430;
  font-size:17px;
  margin-bottom:7px;
}
.ici-location span{
  color:#344963;
  font-weight:800;
}
@media(max-width:1120px){
  .brand{min-width:auto;}
  .brand img{width:230px !important;}
}
@media(max-width:760px){
  .brand img{width:190px !important;}
  .ici-global-card{padding:28px 22px;}
  .ici-global-card h2{font-size:28px;}
  .ici-global-card p{font-size:16.5px;}
  .ici-global-network{grid-template-columns:1fr;}
}


/* =====================================================
   v32 client logo + about intro fix
   ===================================================== */
.brand{
  min-width: 330px !important;
}
.brand img{
  width: 250px !important;
  max-height: 64px !important;
  height: auto !important;
  object-fit: contain !important;
}
.brand span{
  display: none !important;
}

/* About hero copy updated */
.v23-subhero-copy p{
  max-width: 700px;
  font-size: 17px !important;
  line-height: 1.8 !important;
  word-break: keep-all;
}

.ici-global-card p{
  font-size: 17px !important;
  line-height: 1.82 !important;
  word-break: keep-all;
}

@media (max-width: 760px){
  .brand{
    min-width: auto !important;
  }
  .brand img{
    width: 180px !important;
    max-height: 50px !important;
  }
  .v23-subhero-copy p{
    font-size: 15.5px !important;
    line-height: 1.75 !important;
  }
}


/* =====================================================
   v33 about page right visual replacement
   ===================================================== */
.v23-subhero-media img{
  object-fit: cover !important;
  object-position: center top !important;
}


/* =====================================================
   v34 about hero international business visual
   ===================================================== */
.about-hero-premium{background:#f5f8fc;overflow:hidden}
.about-hero-grid{align-items:center;gap:64px;grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr)}
.about-copy-block h1{font-size:4.2rem;line-height:1.05;max-width:700px}
.about-copy-block p{max-width:760px;font-size:17px;line-height:1.78;color:#3b5069;word-break:keep-all}
.network-stage{position:relative;height:360px;border-radius:34px;overflow:hidden;background:linear-gradient(135deg,#e9f0f8 0%,#edf3fb 50%,#dee8f5 100%);box-shadow:0 26px 70px rgba(16,47,87,.10)}
.network-city-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(9,31,66,.28),rgba(9,31,66,.08) 40%,rgba(9,31,66,.03)), url('assets/images/photos/about_new.jpg');background-size:cover;background-position:center center;filter:saturate(1.02);transform:scale(1.03);animation:heroFloat 12s ease-in-out infinite alternate}
.network-stage::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.1) 22%,rgba(255,255,255,.18));pointer-events:none}
.network-grid-fx{position:absolute;inset:0;pointer-events:none;opacity:.95}
.fx-line{position:absolute;height:2px;background:linear-gradient(90deg,rgba(236,192,97,.0),rgba(236,192,97,.88),rgba(236,192,97,.0));transform-origin:left center;animation:linePulse 4.8s ease-in-out infinite}
.fx-line-a{top:50px;right:38px;width:128px;transform:rotate(14deg)}
.fx-line-b{top:72px;right:120px;width:110px;transform:rotate(-28deg);animation-delay:.8s}
.fx-line-c{top:24px;right:84px;width:150px;transform:rotate(35deg);animation-delay:1.4s}
.fx-dot{position:absolute;width:13px;height:13px;border-radius:50%;background:#e6b043;box-shadow:0 0 0 5px rgba(230,176,67,.14),0 0 18px rgba(230,176,67,.48);animation:dotPulse 3.2s ease-in-out infinite}
.fx-dot-a{top:38px;right:22px}
.fx-dot-b{top:22px;right:138px;animation-delay:.5s}
.fx-dot-c{top:82px;right:94px;animation-delay:1s}
.fx-dot-d{top:60px;right:182px;animation-delay:1.6s}
.network-card-wrap{position:absolute;inset:30px 28px 30px 28px;display:flex;align-items:center;justify-content:flex-end}
.network-card-wrap img{width:min(83%,470px);height:auto;border-radius:28px;background:rgba(255,255,255,.92);box-shadow:0 18px 40px rgba(15,47,87,.16);border:1px solid rgba(215,223,235,.9)}
@keyframes dotPulse{0%,100%{transform:scale(1);opacity:.92}50%{transform:scale(1.18);opacity:1}}
@keyframes linePulse{0%,100%{opacity:.28}50%{opacity:1}}
@keyframes heroFloat{0%{transform:scale(1.03) translateY(0)}100%{transform:scale(1.06) translateY(-8px)}}
@media (max-width: 1120px){
  .about-hero-grid{grid-template-columns:1fr;gap:30px}
  .about-copy-block h1{font-size:3.3rem;max-width:none}
  .about-copy-block p{max-width:none}
  .network-stage{height:340px}
  .network-card-wrap{justify-content:center}
  .network-card-wrap img{width:min(88%,500px)}
}
@media (max-width: 760px){
  .about-copy-block h1{font-size:2.4rem;line-height:1.1}
  .about-copy-block p{font-size:15.5px;line-height:1.72}
  .network-stage{height:270px;border-radius:24px}
  .network-card-wrap{inset:18px}
  .network-card-wrap img{width:min(92%,360px);border-radius:18px}
  .fx-line-a{top:34px;right:18px;width:82px}
  .fx-line-b{top:48px;right:76px;width:74px}
  .fx-line-c{top:18px;right:54px;width:88px}
  .fx-dot{width:10px;height:10px}
  .fx-dot-a{top:24px;right:10px}
  .fx-dot-b{top:14px;right:88px}
  .fx-dot-c{top:52px;right:60px}
  .fx-dot-d{top:38px;right:118px}
}


/* =====================================================
   v36 robust about hero visual
   ===================================================== */
.about-hero-v2{background:linear-gradient(180deg,#f5f8fc 0%,#f3f7fb 100%);padding:86px 0 70px;overflow:hidden}
.about-hero-grid-v2{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(460px,.94fr);align-items:center;gap:56px}
.about-copy-block-v2 h1{font-size:clamp(50px,4.7vw,78px);line-height:1.02;letter-spacing:-0.03em;margin:0 0 20px;color:var(--navy);word-break:keep-all}
.about-copy-block-v2 p{font-size:17px;line-height:1.78;color:#3c526c;max-width:760px;word-break:keep-all;margin:0}
.about-visual-wrap-v2{position:relative;min-height:420px;padding-top:12px;padding-right:10px}
.about-main-card-v2{position:relative;z-index:1;width:100%;max-width:620px;margin-left:auto;border-radius:34px;overflow:hidden;box-shadow:0 26px 64px rgba(16,47,87,.14);border:1px solid rgba(220,228,238,.95);background:#fff}
.about-main-card-v2 img{display:block;width:100%;height:410px;object-fit:cover}
.about-network-card-v2{position:absolute;right:-8px;bottom:-14px;z-index:2;width:280px;border-radius:26px;overflow:hidden;background:rgba(255,255,255,.97);box-shadow:0 18px 40px rgba(15,47,87,.16);border:1px solid rgba(220,228,238,.96)}
.about-network-card-v2 img{display:block;width:100%;height:auto}
.map-motion-v2{position:absolute;top:10px;right:24px;width:240px;height:120px;z-index:3;pointer-events:none}
.map-line{position:absolute;height:2px;background:linear-gradient(90deg,rgba(222,176,67,0),rgba(222,176,67,.92),rgba(222,176,67,0));transform-origin:left center;animation:linePulse 4.8s ease-in-out infinite}
.map-line.line1{top:18px;right:14px;width:132px;transform:rotate(12deg)}
.map-line.line2{top:43px;right:75px;width:116px;transform:rotate(-26deg);animation-delay:.7s}
.map-line.line3{top:63px;right:18px;width:154px;transform:rotate(34deg);animation-delay:1.4s}
.map-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:#e1ae48;box-shadow:0 0 0 5px rgba(225,174,72,.15),0 0 16px rgba(225,174,72,.42);animation:dotPulse 3s ease-in-out infinite}
.map-dot.dot1{top:10px;right:6px}
.map-dot.dot2{top:33px;right:99px;animation-delay:.5s}
.map-dot.dot3{top:58px;right:56px;animation-delay:1s}
.map-dot.dot4{top:78px;right:145px;animation-delay:1.5s}
@media (max-width: 1200px){
  .about-hero-grid-v2{grid-template-columns:minmax(0,1fr) minmax(400px,.92fr);gap:42px}
  .about-main-card-v2 img{height:380px}
  .about-network-card-v2{width:245px}
}
@media (max-width: 980px){
  .about-hero-grid-v2{grid-template-columns:1fr;gap:26px}
  .about-copy-block-v2 h1{font-size:clamp(38px,8vw,56px)}
  .about-copy-block-v2 p{font-size:16px;line-height:1.72}
  .about-visual-wrap-v2{min-height:unset;padding-right:0;padding-top:8px;max-width:760px;margin:0 auto}
  .about-main-card-v2{max-width:100%}
  .about-main-card-v2 img{height:360px}
  .about-network-card-v2{right:12px;bottom:-10px;width:230px}
}
@media (max-width: 640px){
  .about-hero-v2{padding:64px 0 42px}
  .about-copy-block-v2 h1{font-size:clamp(34px,10vw,44px);line-height:1.08}
  .about-copy-block-v2 p{font-size:15px;line-height:1.7}
  .about-visual-wrap-v2{padding-bottom:120px}
  .about-main-card-v2{border-radius:22px}
  .about-main-card-v2 img{height:250px}
  .about-network-card-v2{right:10px;left:auto;bottom:0;width:180px;border-radius:18px}
  .map-motion-v2{right:8px;top:8px;width:170px;height:90px}
  .map-line.line1{width:92px;top:12px}
  .map-line.line2{width:82px;top:30px;right:58px}
  .map-line.line3{width:106px;top:46px}
  .map-dot{width:10px;height:10px}
}


/* =====================================================
   v37 about global hero refresh
   ===================================================== */
.about-hero-global-section{position:relative;background:linear-gradient(180deg,#f6f8fc 0%,#f3f7fb 100%);padding:72px 0 0;overflow:hidden}
.about-global-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,.95fr);gap:54px;align-items:start}
.about-global-copy{padding:44px 0 60px;position:relative;z-index:2}
.about-global-copy h1{display:flex;flex-direction:column;gap:2px;font-size:clamp(54px,5.5vw,86px);line-height:.98;letter-spacing:-.04em;color:var(--navy);margin:18px 0 26px;word-break:keep-all}
.about-global-copy h1 .gold{color:var(--gold)}
.about-global-copy-list{max-width:720px}
.about-global-copy-list p{margin:0 0 18px;font-size:18px;line-height:1.78;color:#324b6b;word-break:keep-all}
.about-global-copy-list p:last-child{margin-bottom:0}
.about-global-copy-list p + p{position:relative;padding-top:20px}
.about-global-copy-list p + p:before{content:"";position:absolute;left:0;top:0;width:64px;height:1px;background:rgba(201,157,71,.5)}
.about-global-visual{position:relative;padding:34px 0 0;min-height:700px}
.about-network-panel{position:relative;z-index:2;background:rgba(255,255,255,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(212,222,235,.92);box-shadow:0 18px 48px rgba(20,47,86,.10);border-radius:34px;padding:34px 34px 28px;max-width:720px;margin-left:auto}
.network-panel-head{margin-bottom:24px}
.network-panel-head h2{margin:0;font-size:clamp(44px,4.2vw,74px);line-height:.95;letter-spacing:-.04em;color:var(--navy)}
.network-panel-head p{margin:10px 0 0;font-size:17px;color:#d1a24a;text-transform:uppercase;letter-spacing:.03em}
.network-countries-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid rgba(217,223,232,.72);border-left:1px solid rgba(217,223,232,.72)}
.network-country-item{padding:18px 18px 16px;border-right:1px solid rgba(217,223,232,.72);border-bottom:1px solid rgba(217,223,232,.72);background:rgba(255,255,255,.34)}
.network-country-item b{display:block;font-size:24px;line-height:1.08;color:var(--navy);margin-bottom:6px;letter-spacing:-.02em;word-break:keep-all}
.network-country-item span{display:block;font-size:14px;font-weight:800;color:var(--gold);margin-bottom:8px;text-transform:uppercase;letter-spacing:.03em}
.network-country-item em{display:block;font-style:normal;font-size:15px;line-height:1.55;color:#4a607d;word-break:keep-all}
.about-network-motion{position:absolute;top:10px;right:20px;width:430px;height:190px;z-index:1;pointer-events:none;opacity:.95}
.about-network-motion .line{position:absolute;height:2px;background:linear-gradient(90deg,rgba(212,162,76,0),rgba(212,162,76,.78),rgba(212,162,76,0));transform-origin:left center;animation:linePulse 5.2s ease-in-out infinite}
.about-network-motion .line.l1{top:26px;left:146px;width:180px;transform:rotate(8deg)}
.about-network-motion .line.l2{top:48px;left:216px;width:148px;transform:rotate(34deg);animation-delay:.8s}
.about-network-motion .line.l3{top:98px;left:102px;width:182px;transform:rotate(-24deg);animation-delay:1.5s}
.about-network-motion .line.l4{top:72px;left:268px;width:120px;transform:rotate(-10deg);animation-delay:2.1s}
.about-network-motion .dot{position:absolute;width:12px;height:12px;border-radius:50%;background:#d8aa54;box-shadow:0 0 0 6px rgba(216,170,84,.14),0 0 18px rgba(216,170,84,.35);animation:dotPulse 3.4s ease-in-out infinite}
.about-network-motion .dot.d1{top:18px;left:132px}
.about-network-motion .dot.d2{top:42px;left:318px;animation-delay:.4s}
.about-network-motion .dot.d3{top:112px;left:88px;animation-delay:.9s}
.about-network-motion .dot.d4{top:88px;left:258px;animation-delay:1.3s}
.about-network-motion .dot.d5{top:56px;left:380px;animation-delay:1.8s}
.about-global-visual:before{content:"";position:absolute;top:0;right:0;width:420px;height:200px;opacity:.58;background-image:radial-gradient(circle at 2px 2px, rgba(83,102,128,.28) 1.45px, transparent 1.6px);background-size:14px 14px;mask-image:radial-gradient(circle at 60% 40%, rgba(0,0,0,1) 0, rgba(0,0,0,1) 48%, rgba(0,0,0,.25) 74%, rgba(0,0,0,0) 100%);-webkit-mask-image:radial-gradient(circle at 60% 40%, rgba(0,0,0,1) 0, rgba(0,0,0,1) 48%, rgba(0,0,0,.25) 74%, rgba(0,0,0,0) 100%)}
.about-skyline-band{position:absolute;left:-100px;right:-100px;bottom:0;height:248px;z-index:0;background:linear-gradient(180deg,rgba(246,248,252,0) 0%,rgba(246,248,252,.34) 10%,rgba(246,248,252,.72) 24%,rgba(246,248,252,.18) 26%), url('assets/images/photos/about_new.jpg') center bottom/cover no-repeat;filter:saturate(.88) brightness(1.12);opacity:.78;mask-image:linear-gradient(180deg,transparent 0%, rgba(0,0,0,.86) 28%, rgba(0,0,0,1) 60%);-webkit-mask-image:linear-gradient(180deg,transparent 0%, rgba(0,0,0,.86) 28%, rgba(0,0,0,1) 60%)}
.about-skyline-band:before,.about-skyline-band:after{content:"";position:absolute;inset:auto;pointer-events:none}
.about-skyline-band:before{left:0;bottom:54px;width:300px;height:120px;background:radial-gradient(circle at 15% 50%, rgba(209,162,74,.20), transparent 62%), radial-gradient(circle at 55% 55%, rgba(209,162,74,.16), transparent 54%)}
.about-skyline-band:after{right:20px;bottom:28px;width:340px;height:120px;background:radial-gradient(circle at 85% 40%, rgba(209,162,74,.16), transparent 58%), radial-gradient(circle at 30% 65%, rgba(209,162,74,.13), transparent 55%)}
@media (max-width: 1400px){
  .about-global-grid{grid-template-columns:minmax(0,1fr) minmax(440px,.92fr);gap:40px}
  .network-country-item b{font-size:22px}
  .about-global-visual{min-height:660px}
}
@media (max-width: 1200px){
  .about-global-grid{grid-template-columns:1fr}
  .about-global-copy{padding-bottom:10px}
  .about-global-visual{min-height:unset;padding-top:8px;padding-bottom:220px}
  .about-network-panel{max-width:none;margin-left:0}
  .about-network-motion{right:30px;top:6px}
}
@media (max-width: 900px){
  .about-hero-global-section{padding:58px 0 0}
  .about-global-copy h1{font-size:clamp(42px,9vw,68px)}
  .about-global-copy-list p{font-size:16px;line-height:1.72}
  .network-panel-head h2{font-size:clamp(36px,8vw,56px)}
  .network-countries-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-global-visual:before{width:280px;height:150px}
}
@media (max-width: 640px){
  .about-hero-global-section{padding:44px 0 0}
  .about-global-copy h1{font-size:clamp(34px,11vw,48px);line-height:1.02}
  .about-global-copy-list p{font-size:15px;line-height:1.66}
  .about-network-panel{padding:24px 18px 18px;border-radius:24px}
  .network-panel-head p{font-size:13px}
  .network-countries-grid{grid-template-columns:1fr}
  .network-country-item b{font-size:20px}
  .network-country-item em{font-size:14px}
  .about-global-visual{padding-bottom:160px}
  .about-network-motion{right:8px;top:-4px;width:220px;height:110px}
  .about-network-motion .line.l1{top:20px;left:70px;width:100px}
  .about-network-motion .line.l2{top:32px;left:112px;width:84px}
  .about-network-motion .line.l3{top:62px;left:52px;width:96px}
  .about-network-motion .line.l4{top:52px;left:148px;width:62px}
  .about-network-motion .dot{width:10px;height:10px}
  .about-network-motion .dot.d1{top:14px;left:58px}
  .about-network-motion .dot.d2{top:30px;left:166px}
  .about-network-motion .dot.d3{top:72px;left:42px}
  .about-network-motion .dot.d4{top:54px;left:140px}
  .about-network-motion .dot.d5{top:42px;left:198px}
  .about-skyline-band{height:150px;left:-30px;right:-30px;opacity:.7}
}


/* v38 about visual refinement */
.about-hero-global-section{padding:72px 0 36px;background:linear-gradient(180deg,#f6f8fc 0%,#f4f7fb 100%)}
.about-global-grid{grid-template-columns:minmax(0,.9fr) minmax(620px,1.1fr);gap:48px;align-items:center}
.about-global-copy{padding:22px 0 24px}
.about-global-copy h1{font-size:clamp(48px,4.8vw,78px);line-height:1.02;letter-spacing:-.04em;margin:18px 0 24px}
.about-global-copy-list{max-width:640px}
.about-global-copy-list p{font-size:18px;line-height:1.72;color:#334d6b}
.about-global-visual{padding:0;min-height:unset}
.about-global-visual:before,.about-network-motion,.about-network-panel,.about-skyline-band{display:none !important}
.about-global-visual-frame{position:relative;overflow:hidden;border-radius:34px;background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);border:1px solid rgba(212,222,235,.95);box-shadow:0 26px 60px rgba(20,47,86,.12)}
.about-global-visual-frame img{display:block;width:100%;height:auto}
@media (max-width: 1400px){
  .about-global-grid{grid-template-columns:minmax(0,.95fr) minmax(520px,1.05fr)}
}
@media (max-width: 1200px){
  .about-global-grid{grid-template-columns:1fr;gap:28px}
  .about-global-copy{padding-bottom:0}
  .about-global-visual{order:2}
}
@media (max-width: 900px){
  .about-hero-global-section{padding:54px 0 24px}
  .about-global-copy h1{font-size:clamp(40px,8vw,60px)}
  .about-global-copy-list p{font-size:16px;line-height:1.66}
}
@media (max-width: 640px){
  .about-hero-global-section{padding:40px 0 18px}
  .about-global-copy h1{font-size:clamp(32px,10vw,44px)}
  .about-global-copy-list p{font-size:15px;line-height:1.62}
  .about-global-visual-frame{border-radius:24px}
}



/* =====================================================
   v39 final company intro background visual
   ===================================================== */
.ici-about-final-hero{
  position:relative;
  min-height:720px;
  padding:92px 0 86px;
  overflow:hidden;
  background:linear-gradient(135deg,#f5f8fc 0%,#eef5fb 100%);
  isolation:isolate;
}
.ici-about-final-bg{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  width:70%;
  background-image:url('../images/photos/about_global_right_background.png');
  background-repeat:no-repeat;
  background-position:right center;
  background-size:cover;
  opacity:.98;
  z-index:0;
}
.ici-about-final-shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,
      rgba(245,248,252,1) 0%,
      rgba(245,248,252,.98) 22%,
      rgba(245,248,252,.86) 40%,
      rgba(245,248,252,.35) 61%,
      rgba(245,248,252,.08) 100%),
    radial-gradient(circle at 16% 44%,rgba(255,255,255,.72),rgba(255,255,255,0) 38%);
  pointer-events:none;
}
.ici-about-final-inner{
  position:relative;
  z-index:2;
  min-height:540px;
  display:flex;
  align-items:center;
}
.ici-about-final-copy{
  width:min(680px,52vw);
}
.ici-about-final-copy .kicker{
  margin-bottom:26px;
}
.ici-about-final-copy h1{
  margin:0 0 26px;
  color:var(--navy);
  font-size:clamp(48px,5vw,78px);
  line-height:1.03;
  letter-spacing:-.045em;
  word-break:keep-all;
}
.ici-about-final-copy h1 strong{
  display:inline-block;
  color:var(--gold);
  font-weight:900;
}
.ici-about-final-text{
  max-width:640px;
}
.ici-about-final-text p{
  margin:0 0 18px;
  color:#17365c;
  font-size:18px;
  line-height:1.78;
  font-weight:500;
  word-break:keep-all;
}
.ici-about-final-text p:last-child{
  margin-bottom:0;
}
.ici-about-final-points{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:38px;
}
.ici-about-final-points span{
  display:inline-flex;
  align-items:center;
  min-height:46px;
  padding:0 18px;
  border:1px solid rgba(207,164,82,.32);
  border-radius:999px;
  background:rgba(255,255,255,.58);
  box-shadow:0 12px 26px rgba(16,47,87,.07);
  color:#12345b;
  font-size:16px;
  font-weight:900;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.ici-about-final-points span:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--gold);
  margin-right:9px;
  box-shadow:0 0 0 4px rgba(207,164,82,.14);
}
@media (max-width:1200px){
  .ici-about-final-hero{
    min-height:unset;
    padding:78px 0 64px;
  }
  .ici-about-final-bg{
    width:82%;
    opacity:.52;
  }
  .ici-about-final-shade{
    background:linear-gradient(90deg,rgba(245,248,252,1) 0%,rgba(245,248,252,.94) 52%,rgba(245,248,252,.50) 100%);
  }
  .ici-about-final-inner{
    min-height:500px;
  }
  .ici-about-final-copy{
    width:min(760px,78vw);
  }
}
@media (max-width:760px){
  .ici-about-final-hero{
    padding:58px 0 44px;
  }
  .ici-about-final-bg{
    width:100%;
    opacity:.25;
    background-position:center bottom;
  }
  .ici-about-final-shade{
    background:linear-gradient(180deg,rgba(245,248,252,.98) 0%,rgba(245,248,252,.92) 48%,rgba(245,248,252,.78) 100%);
  }
  .ici-about-final-inner{
    min-height:auto;
  }
  .ici-about-final-copy{
    width:100%;
  }
  .ici-about-final-copy h1{
    font-size:clamp(34px,10vw,48px);
    line-height:1.1;
    margin-bottom:22px;
  }
  .ici-about-final-text p{
    font-size:15.5px;
    line-height:1.68;
    margin-bottom:14px;
  }
  .ici-about-final-points{
    gap:8px;
    margin-top:28px;
  }
  .ici-about-final-points span{
    min-height:40px;
    padding:0 13px;
    font-size:14px;
  }
}



/* =====================================================
   v40 final: no duplicated intro text in background
   ===================================================== */
.ici-about-final-hero{
  position:relative;
  min-height:720px;
  padding:92px 0 86px;
  overflow:hidden;
  background:linear-gradient(135deg,#f5f8fc 0%,#eef5fb 100%);
  isolation:isolate;
}
.ici-about-final-bg{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  width:68%;
  background-image:url('../images/photos/about_global_right_background.png');
  background-repeat:no-repeat;
  background-position:right center;
  background-size:contain;
  opacity:.92;
  z-index:0;
}
.ici-about-final-shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,
      rgba(245,248,252,1) 0%,
      rgba(245,248,252,.99) 23%,
      rgba(245,248,252,.90) 40%,
      rgba(245,248,252,.46) 60%,
      rgba(245,248,252,.16) 100%),
    radial-gradient(circle at 16% 44%,rgba(255,255,255,.74),rgba(255,255,255,0) 38%);
  pointer-events:none;
}
.ici-about-final-inner{
  position:relative;
  z-index:2;
  min-height:540px;
  display:flex;
  align-items:center;
}
.ici-about-final-copy{
  width:min(680px,52vw);
}
.ici-about-final-copy .kicker{
  margin-bottom:26px;
}
.ici-about-final-copy h1{
  margin:0 0 26px;
  color:var(--navy);
  font-size:clamp(48px,5vw,78px);
  line-height:1.03;
  letter-spacing:-.045em;
  word-break:keep-all;
}
.ici-about-final-copy h1 strong{
  display:inline-block;
  color:var(--gold);
  font-weight:900;
}
.ici-about-final-text{
  max-width:640px;
}
.ici-about-final-text p{
  margin:0 0 18px;
  color:#17365c;
  font-size:18px;
  line-height:1.78;
  font-weight:500;
  word-break:keep-all;
}
.ici-about-final-text p:last-child{
  margin-bottom:0;
}
.ici-about-final-points{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:38px;
}
.ici-about-final-points span{
  display:inline-flex;
  align-items:center;
  min-height:46px;
  padding:0 18px;
  border:1px solid rgba(207,164,82,.32);
  border-radius:999px;
  background:rgba(255,255,255,.62);
  box-shadow:0 12px 26px rgba(16,47,87,.07);
  color:#12345b;
  font-size:16px;
  font-weight:900;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.ici-about-final-points span:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--gold);
  margin-right:9px;
  box-shadow:0 0 0 4px rgba(207,164,82,.14);
}
@media (max-width:1200px){
  .ici-about-final-hero{
    min-height:unset;
    padding:78px 0 64px;
  }
  .ici-about-final-bg{
    width:84%;
    opacity:.44;
    background-position:right center;
  }
  .ici-about-final-shade{
    background:linear-gradient(90deg,rgba(245,248,252,1) 0%,rgba(245,248,252,.95) 54%,rgba(245,248,252,.54) 100%);
  }
  .ici-about-final-inner{
    min-height:500px;
  }
  .ici-about-final-copy{
    width:min(760px,80vw);
  }
}
@media (max-width:760px){
  .ici-about-final-hero{
    padding:58px 0 44px;
  }
  .ici-about-final-bg{
    width:100%;
    opacity:.23;
    background-size:cover;
    background-position:center bottom;
  }
  .ici-about-final-shade{
    background:linear-gradient(180deg,rgba(245,248,252,.99) 0%,rgba(245,248,252,.93) 48%,rgba(245,248,252,.82) 100%);
  }
  .ici-about-final-inner{
    min-height:auto;
  }
  .ici-about-final-copy{
    width:100%;
  }
  .ici-about-final-copy h1{
    font-size:clamp(34px,10vw,48px);
    line-height:1.1;
    margin-bottom:22px;
  }
  .ici-about-final-text p{
    font-size:15.5px;
    line-height:1.68;
    margin-bottom:14px;
  }
  .ici-about-final-points{
    gap:8px;
    margin-top:28px;
  }
  .ici-about-final-points span{
    min-height:40px;
    padding:0 13px;
    font-size:14px;
  }
}


/* =====================================================
   v41 final: sharper background image
   ===================================================== */
.ici-about-final-bg{
  opacity:1 !important;
  filter:saturate(1.08) contrast(1.06) brightness(1.02) !important;
  width:70% !important;
  background-size:contain !important;
  background-position:right center !important;
}
.ici-about-final-shade{
  background:
    linear-gradient(90deg,
      rgba(245,248,252,1) 0%,
      rgba(245,248,252,.98) 22%,
      rgba(245,248,252,.76) 40%,
      rgba(245,248,252,.22) 55%,
      rgba(245,248,252,.04) 72%,
      rgba(245,248,252,0) 100%),
    radial-gradient(circle at 13% 46%,rgba(255,255,255,.68),rgba(255,255,255,0) 36%) !important;
}
@media (max-width:1200px){
  .ici-about-final-bg{
    opacity:.72 !important;
    width:88% !important;
    filter:saturate(1.06) contrast(1.05) brightness(1.01) !important;
  }
  .ici-about-final-shade{
    background:
      linear-gradient(90deg,
        rgba(245,248,252,1) 0%,
        rgba(245,248,252,.96) 46%,
        rgba(245,248,252,.42) 70%,
        rgba(245,248,252,.10) 100%) !important;
  }
}
@media (max-width:760px){
  .ici-about-final-bg{
    opacity:.40 !important;
    width:100% !important;
    background-size:cover !important;
    background-position:center bottom !important;
  }
  .ici-about-final-shade{
    background:
      linear-gradient(180deg,
        rgba(245,248,252,.98) 0%,
        rgba(245,248,252,.90) 48%,
        rgba(245,248,252,.72) 100%) !important;
  }
}


/* =====================================================
   v42 final: seamless background + global line motion
   ===================================================== */

/* remove visible hard boundary between text area and background */
.ici-about-final-hero{
  background:
    radial-gradient(circle at 23% 46%, rgba(255,255,255,.88) 0%, rgba(255,255,255,.68) 25%, rgba(255,255,255,0) 52%),
    linear-gradient(135deg,#f6f9fd 0%,#eef5fb 100%) !important;
}
.ici-about-final-bg{
  width:76% !important;
  right:0 !important;
  opacity:1 !important;
  background-size:cover !important;
  background-position:right center !important;
  filter:saturate(1.08) contrast(1.06) brightness(1.02) !important;
  /* soft fade on the left edge so no vertical boundary appears */
  -webkit-mask-image:linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 9%, rgba(0,0,0,.78) 24%, rgba(0,0,0,1) 38%);
  mask-image:linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 9%, rgba(0,0,0,.78) 24%, rgba(0,0,0,1) 38%);
}
.ici-about-final-shade{
  background:
    linear-gradient(90deg,
      rgba(246,249,253,1) 0%,
      rgba(246,249,253,.98) 18%,
      rgba(246,249,253,.80) 34%,
      rgba(246,249,253,.32) 49%,
      rgba(246,249,253,.06) 64%,
      rgba(246,249,253,0) 100%),
    radial-gradient(circle at 20% 48%,rgba(255,255,255,.78),rgba(255,255,255,0) 40%) !important;
}

/* animated global-network glow on the right side */
.ici-global-motion{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}
.ici-global-motion .spark{
  position:absolute;
  top:0;
  left:0;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#fff;
  box-shadow:
    0 0 8px rgba(255,255,255,.95),
    0 0 18px rgba(214,168,82,.72),
    0 0 36px rgba(214,168,82,.38);
  opacity:0;
  offset-rotate:0deg;
  animation:iciSparkMove 7.6s ease-in-out infinite;
}
.ici-global-motion .spark-1{
  offset-path:path("M 1040 142 C 1170 70, 1340 84, 1535 204");
  animation-delay:.2s;
}
.ici-global-motion .spark-2{
  offset-path:path("M 1010 224 C 1185 120, 1370 142, 1610 315");
  animation-delay:1.7s;
}
.ici-global-motion .spark-3{
  offset-path:path("M 1115 322 C 1260 240, 1432 265, 1582 426");
  animation-delay:3.1s;
}
.ici-global-motion .spark-4{
  offset-path:path("M 965 415 C 1165 335, 1350 390, 1550 565");
  animation-delay:4.4s;
}
.ici-global-motion .node{
  position:absolute;
  width:12px;
  height:12px;
  border-radius:50%;
  background:#d6a852;
  box-shadow:
    0 0 0 5px rgba(214,168,82,.14),
    0 0 16px rgba(214,168,82,.45);
  opacity:.86;
  animation:iciNodePulse 3.8s ease-in-out infinite;
}
.ici-global-motion .node-1{top:118px;right:270px;animation-delay:.1s;}
.ici-global-motion .node-2{top:175px;right:180px;animation-delay:.8s;}
.ici-global-motion .node-3{top:250px;right:92px;animation-delay:1.5s;}
.ici-global-motion .node-4{top:315px;right:330px;animation-delay:2.1s;}

@keyframes iciSparkMove{
  0%{offset-distance:0%;opacity:0;transform:scale(.6);}
  12%{opacity:.95;transform:scale(1);}
  55%{opacity:.9;transform:scale(1.18);}
  88%{opacity:.7;transform:scale(.9);}
  100%{offset-distance:100%;opacity:0;transform:scale(.55);}
}
@keyframes iciNodePulse{
  0%,100%{transform:scale(1);opacity:.65;}
  45%{transform:scale(1.35);opacity:1;}
  70%{transform:scale(1.05);opacity:.82;}
}

/* keep actual text clean and readable */
.ici-about-final-copy{
  position:relative;
  z-index:3;
}
.ici-about-final-points{
  position:relative;
  z-index:3;
}

/* Responsive tuning */
@media (max-width:1200px){
  .ici-about-final-bg{
    width:100% !important;
    opacity:.82 !important;
    -webkit-mask-image:linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 14%, rgba(0,0,0,.78) 34%, rgba(0,0,0,1) 52%);
    mask-image:linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.18) 14%, rgba(0,0,0,.78) 34%, rgba(0,0,0,1) 52%);
  }
  .ici-about-final-shade{
    background:
      linear-gradient(90deg,
        rgba(246,249,253,1) 0%,
        rgba(246,249,253,.98) 42%,
        rgba(246,249,253,.58) 68%,
        rgba(246,249,253,.16) 100%) !important;
  }
  .ici-global-motion{
    opacity:.75;
    transform:scale(.82);
    transform-origin:right top;
  }
}
@media (max-width:760px){
  .ici-about-final-bg{
    opacity:.44 !important;
    width:100% !important;
    background-size:cover !important;
    background-position:center bottom !important;
    -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.85) 45%, rgba(0,0,0,1) 100%);
    mask-image:linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.85) 45%, rgba(0,0,0,1) 100%);
  }
  .ici-about-final-shade{
    background:
      linear-gradient(180deg,
        rgba(246,249,253,.99) 0%,
        rgba(246,249,253,.93) 50%,
        rgba(246,249,253,.78) 100%) !important;
  }
  .ici-global-motion{
    display:none;
  }
}



/* =====================================================
   v43 complete mobile optimization
   ===================================================== */

html{
  scroll-padding-top:92px;
}
body{
  overflow-x:hidden;
}

/* menu open lock for mobile drawer */
body.menu-open{
  overflow:hidden;
}

@media(max-width:1120px){
  .site-header{
    z-index:3000;
  }
  .header-inner{
    height:64px !important;
  }
  .brand img{
    width:132px !important;
    max-height:46px !important;
    object-fit:contain !important;
  }
  .menu{
    display:flex !important;
    width:46px;
    height:46px;
    align-items:center;
    justify-content:center;
    border:1px solid #dce5f0;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 22px rgba(16,47,87,.08);
  }
  .menu span{
    width:22px;
    height:2px;
    margin:3.5px 0;
  }
  .nav{
    position:fixed !important;
    top:72px !important;
    left:14px !important;
    right:14px !important;
    max-height:calc(100vh - 92px);
    overflow-y:auto;
    padding:14px !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.98) !important;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    box-shadow:0 24px 60px rgba(16,47,87,.18) !important;
  }
  .nav.open{
    display:flex !important;
  }
  .nav a,
  .nav-parent{
    width:100%;
    min-height:46px;
    display:flex !important;
    align-items:center;
    padding:12px 14px !important;
    border-radius:14px !important;
    font-size:15.5px !important;
  }
  .nav a.active,
  .nav a:hover,
  .nav-parent.active{
    background:#eef5fb !important;
    color:var(--navy) !important;
  }
  .nav-dropdown{
    width:100%;
  }
  .nav-submenu{
    position:static !important;
    display:none !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    width:100% !important;
    min-width:0 !important;
    margin:4px 0 8px !important;
    padding:8px !important;
    box-shadow:none !important;
    border:1px solid #e3ebf4 !important;
    border-radius:16px !important;
    background:#f7fafd !important;
  }
  .nav-dropdown.open .nav-submenu{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:6px;
  }
  .nav-submenu a{
    min-height:40px;
    font-size:14px !important;
    padding:9px 10px !important;
    background:#fff;
    border:1px solid #e9eef5;
  }
}

/* mobile bottom conversion bar */
@media(max-width:760px){
  html{
    scroll-padding-top:76px;
  }
  body{
    padding-bottom:78px;
  }
  .container{
    width:calc(100% - 34px) !important;
  }
  .mobile-actions{
    left:10px !important;
    right:10px !important;
    bottom:calc(10px + env(safe-area-inset-bottom)) !important;
    z-index:3200 !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    padding:0 !important;
  }
  .mobile-actions a{
    min-height:52px !important;
    display:flex !important;
    align-items:center;
    justify-content:center;
    border-radius:16px !important;
    font-size:15px !important;
    font-weight:900 !important;
    box-shadow:0 14px 34px rgba(16,47,87,.18) !important;
  }
  .mobile-actions a:first-child{
    background:#fff !important;
    border:1px solid rgba(201,162,93,.42) !important;
    color:var(--navy) !important;
  }
  .mobile-actions a:last-child{
    background:var(--navy) !important;
    border:1px solid var(--navy) !important;
    color:#fff !important;
  }
  .footer{
    padding-bottom:110px !important;
  }
}

/* About page: mobile-first readability */
.ici-mobile-network-card{
  display:none;
}

@media(max-width:760px){
  .ici-about-final-hero{
    min-height:auto !important;
    padding:50px 0 40px !important;
    background:linear-gradient(180deg,#f6f9fd 0%,#eef5fb 100%) !important;
  }
  .ici-about-final-bg{
    opacity:.18 !important;
    width:100% !important;
    background-image:url('../images/photos/about_global_right_background_mobile.jpg') !important;
    background-size:cover !important;
    background-position:center bottom !important;
    filter:saturate(1.03) contrast(1.03) brightness(1.02) !important;
  }
  .ici-about-final-shade{
    background:
      linear-gradient(180deg,
        rgba(246,249,253,.99) 0%,
        rgba(246,249,253,.96) 58%,
        rgba(246,249,253,.82) 100%) !important;
  }
  .ici-global-motion{
    display:none !important;
  }
  .ici-about-final-inner{
    min-height:auto !important;
    display:block !important;
  }
  .ici-about-final-copy{
    width:100% !important;
  }
  .ici-about-final-copy .kicker{
    margin-bottom:20px !important;
  }
  .ici-about-final-copy h1{
    font-size:clamp(34px,10vw,46px) !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;
    margin-bottom:20px !important;
  }
  .ici-about-final-text p{
    font-size:15.5px !important;
    line-height:1.68 !important;
    margin-bottom:14px !important;
  }
  .ici-mobile-network-card{
    display:block;
    margin:24px 0 0;
    border-radius:22px;
    overflow:hidden;
    border:1px solid rgba(210,222,236,.94);
    box-shadow:0 18px 42px rgba(16,47,87,.11);
    background:#fff;
  }
  .ici-mobile-network-card img{
    display:block;
    width:100%;
    height:auto;
  }
  .ici-about-final-points{
    margin-top:20px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .ici-about-final-points span{
    justify-content:flex-start;
    min-height:43px !important;
    font-size:14.5px !important;
    padding:0 14px !important;
    background:rgba(255,255,255,.84) !important;
  }
  .ici-global-intro{
    padding:42px 0 !important;
  }
  .ici-global-card{
    padding:24px 18px !important;
    border-radius:22px !important;
  }
  .ici-global-card h2{
    font-size:25px !important;
    line-height:1.22 !important;
  }
  .ici-global-card p{
    font-size:15.5px !important;
    line-height:1.72 !important;
  }
}

/* Main hero mobile refinement */
@media(max-width:760px){
  .v23-hero{
    min-height:auto !important;
  }
  .v23-hero-inner{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    padding:52px 0 44px !important;
    gap:24px !important;
  }
  .v23-hero-copy h1{
    font-size:clamp(36px,10vw,48px) !important;
    line-height:1.08 !important;
    letter-spacing:-.055em !important;
  }
  .v23-hero-copy p{
    font-size:16px !important;
    line-height:1.68 !important;
    margin-top:18px !important;
  }
  .v23-hero-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-top:26px !important;
  }
  .v23-btn{
    min-width:0 !important;
    width:100% !important;
    height:54px !important;
    border-radius:14px !important;
  }
  .v23-side-panel{
    display:none !important;
  }
  .v23-mark-wrap{
    display:block !important;
    margin-top:24px !important;
  }
  .v23-mark-list{
    gap:8px !important;
  }
  .v23-mark-list span{
    width:48px !important;
    height:48px !important;
    font-size:13px !important;
  }
  .v23-mark-text{
    margin-top:12px !important;
  }
  .v23-mark-text b{
    font-size:15px !important;
  }
  .v23-mark-text p{
    font-size:13.5px !important;
  }
}

/* Cards / lists / ISO filters on mobile */
@media(max-width:760px){
  .v23-section{
    padding:42px 0 !important;
  }
  .v23-section-head{
    display:block !important;
    margin-bottom:18px !important;
  }
  .v23-section-head h2{
    font-size:25px !important;
    line-height:1.22 !important;
  }
  .v23-section-head p{
    font-size:14.5px !important;
    line-height:1.6 !important;
  }
  .v23-section-head a{
    display:inline-flex !important;
    margin-top:10px !important;
  }
  .v23-industry-grid,
  .v23-service-grid,
  .iso-filter-grid,
  .iso-grid,
  .photo-grid,
  .summary-grid,
  .why-cards{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .v23-card-industry,
  .v23-service-card,
  .iso-card,
  .photo-grid figure{
    border-radius:18px !important;
  }
  .v23-card-head{
    min-height:auto !important;
    padding:18px 18px 14px !important;
  }
  .v23-card-copy h3,
  .v23-service-copy h3{
    font-size:20px !important;
  }
  .v23-card-copy p,
  .v23-service-copy p{
    font-size:14.5px !important;
  }
  .v23-card-thumb img,
  .iso-card-img img,
  .photo-grid img{
    height:210px !important;
  }
  .v23-purpose-wrap{
    display:block !important;
    padding:24px 18px !important;
    border-radius:18px !important;
  }
  .v23-purpose-intro{
    padding:0 0 16px !important;
  }
  .v23-purpose-intro h2{
    font-size:24px !important;
  }
  .v23-purpose-intro p{
    font-size:14.5px !important;
  }
  .v23-purpose-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .v23-purpose-card{
    grid-template-columns:48px 1fr !important;
    gap:12px !important;
    padding:14px !important;
  }
  .v23-purpose-copy h3{
    font-size:17px !important;
  }
  .v23-purpose-copy p{
    font-size:13.5px !important;
  }
  .iso-filter-bar{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    gap:8px !important;
    padding:2px 17px 10px !important;
    margin-left:-17px !important;
    margin-right:-17px !important;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }
  .iso-filter-bar::-webkit-scrollbar{
    display:none;
  }
  .iso-filter{
    flex:0 0 auto !important;
    scroll-snap-align:start;
    padding:10px 14px !important;
    font-size:14px !important;
  }
}

/* Detail pages mobile */
@media(max-width:760px){
  .sub-hero,
  .cert-hero{
    padding:46px 0 30px !important;
  }
  .sub-hero h1,
  .cert-hero h1{
    font-size:clamp(32px,9vw,42px) !important;
    line-height:1.12 !important;
  }
  .sub-hero p,
  .cert-hero p{
    font-size:15.8px !important;
    line-height:1.66 !important;
  }
  .cert-tags{
    gap:6px !important;
  }
  .cert-tags span{
    padding:8px 10px !important;
    font-size:13px !important;
  }
  .photo-grid figcaption{
    padding:17px 18px 19px !important;
  }
  .photo-grid b{
    font-size:20px !important;
  }
  .photo-grid span{
    font-size:14.5px !important;
  }
}

/* Contact form mobile */
@media(max-width:760px){
  .contact-grid{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }
  .contact-form,
  .contact-side{
    padding:22px 18px !important;
    border-radius:20px !important;
  }
  .contact-form h2,
  .contact-side h3{
    font-size:24px !important;
  }
  .contact-form label{
    font-size:14.5px !important;
  }
  .contact-form input,
  .contact-form select,
  .contact-form textarea{
    min-height:52px !important;
    font-size:16px !important;
    border-radius:14px !important;
  }
  .contact-form textarea{
    min-height:154px !important;
  }
  .contact-form .btn,
  .contact-form button[type="submit"]{
    min-height:54px !important;
    border-radius:15px !important;
    font-size:16px !important;
  }
}

/* Performance / accessibility */
@media(max-width:760px){
  .reveal{
    transition-duration:.42s !important;
  }
}
@media(prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
  }
}



/* =====================================================
   v44 mobile final polish
   ===================================================== */

/* 1) Fix hamburger icon: show clean 3-line menu instead of one dash */
@media(max-width:1120px){
  .menu{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    width:46px !important;
    height:46px !important;
    padding:0 !important;
    border:1px solid #dce5f0 !important;
    border-radius:14px !important;
    background:#fff !important;
    box-shadow:0 8px 22px rgba(16,47,87,.08) !important;
  }
  .menu span{
    display:block !important;
    width:22px !important;
    height:2px !important;
    min-height:2px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:999px !important;
    background:#0b2f57 !important;
    opacity:1 !important;
    transform:none !important;
  }
  body.menu-open .menu span:nth-child(1){
    transform:translateY(7px) rotate(45deg) !important;
  }
  body.menu-open .menu span:nth-child(2){
    opacity:0 !important;
  }
  body.menu-open .menu span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg) !important;
  }
}

/* 2) Mobile header spacing refinement */
@media(max-width:760px){
  .site-header{
    height:68px !important;
  }
  .header-inner{
    height:68px !important;
  }
  .brand{
    min-width:auto !important;
    display:flex !important;
    align-items:center !important;
  }
  .brand img{
    width:138px !important;
    max-height:48px !important;
    object-fit:contain !important;
  }
  .header-actions{
    display:none !important;
  }
}

/* 3) Mobile company hero: reduce empty feel and make layout intentional */
@media(max-width:760px){
  .ici-about-final-hero{
    padding:46px 0 34px !important;
  }
  .ici-about-final-copy .kicker{
    margin-bottom:18px !important;
  }
  .ici-about-final-copy h1{
    font-size:clamp(36px,10.3vw,48px) !important;
    line-height:1.08 !important;
    letter-spacing:-.055em !important;
    margin-bottom:18px !important;
  }
  .ici-about-final-text{
    max-width:100% !important;
  }
  .ici-about-final-text p{
    font-size:15.8px !important;
    line-height:1.68 !important;
    margin-bottom:15px !important;
  }
  .ici-mobile-network-card{
    margin:24px 0 18px !important;
    border-radius:20px !important;
    box-shadow:0 14px 34px rgba(16,47,87,.10) !important;
  }
  .ici-mobile-network-card img{
    display:block !important;
    width:100% !important;
    height:auto !important;
  }
  .ici-about-final-points{
    margin-top:14px !important;
  }
}

/* 4) Below card starts with better breathing room */
@media(max-width:760px){
  .ici-global-intro{
    padding:36px 0 42px !important;
  }
  .ici-global-card{
    margin-top:0 !important;
  }
}

/* 5) Drawer menu final shape */
@media(max-width:1120px){
  .nav{
    border:1px solid #dce5f0 !important;
  }
  .nav.open{
    animation:mobileMenuDrop .22s ease-out both;
  }
  @keyframes mobileMenuDrop{
    from{opacity:0; transform:translateY(-8px);}
    to{opacity:1; transform:translateY(0);}
  }
}



/* =====================================================
   v45 final checked mobile polish
   ===================================================== */

html, body{
  max-width:100%;
  overflow-x:hidden;
}

@media(max-width:760px){
  .site-header{
    height:66px !important;
    min-height:66px !important;
  }
  .header-inner{
    height:66px !important;
    min-height:66px !important;
    padding:0 !important;
  }
  .brand{
    min-width:0 !important;
  }
  .brand img{
    width:130px !important;
    max-width:130px !important;
    max-height:46px !important;
    object-fit:contain !important;
  }
  .menu{
    width:44px !important;
    height:44px !important;
    border-radius:14px !important;
  }
  .menu span{
    width:21px !important;
    height:2px !important;
    min-height:2px !important;
    background:#0b2f57 !important;
  }
}

@media(max-width:760px){
  .ici-about-final-hero{
    padding:44px 0 34px !important;
    min-height:auto !important;
  }
  .ici-about-final-bg{
    opacity:.16 !important;
  }
  .ici-about-final-copy h1{
    font-size:clamp(34px,10vw,46px) !important;
    line-height:1.08 !important;
    margin-bottom:18px !important;
  }
  .ici-about-final-text p{
    font-size:15.5px !important;
    line-height:1.68 !important;
    letter-spacing:-.01em !important;
  }
  .ici-mobile-network-card{
    margin:22px 0 18px !important;
    border-radius:20px !important;
  }
  .ici-mobile-network-card img{
    max-height:260px !important;
    object-fit:cover !important;
    object-position:center center !important;
  }
  .ici-about-final-points{
    grid-template-columns:1fr !important;
    margin-top:14px !important;
    gap:8px !important;
  }
  .ici-about-final-points span{
    width:100% !important;
    min-height:42px !important;
    border-radius:999px !important;
    box-sizing:border-box !important;
  }
}

@media(max-width:760px){
  .ici-global-intro{
    padding:34px 0 42px !important;
  }
  .ici-global-card{
    padding:22px 18px !important;
    border-radius:22px !important;
  }
  .ici-global-card h2{
    font-size:24px !important;
    line-height:1.24 !important;
    letter-spacing:-.03em !important;
  }
}

@media(max-width:1120px){
  .nav{
    top:72px !important;
    left:12px !important;
    right:12px !important;
    width:auto !important;
    max-width:none !important;
    box-sizing:border-box !important;
  }
  .nav-submenu{
    box-sizing:border-box !important;
  }
}

@media(max-width:760px){
  body{
    padding-bottom:76px !important;
  }
  .mobile-actions{
    left:10px !important;
    right:10px !important;
    bottom:10px !important;
  }
  .mobile-actions a{
    height:50px !important;
    min-height:50px !important;
  }
}

@media(max-width:760px){
  .v23-industry-grid,
  .v23-service-grid,
  .iso-grid,
  .photo-grid,
  .summary-grid,
  .why-cards,
  .contact-grid{
    grid-template-columns:1fr !important;
  }
}


/* =====================================================
   v46 ICI authority-focused home
   ===================================================== */
.ici-authority-hero{position:relative;isolation:isolate;min-height:680px;overflow:hidden;background:#081a33;color:#fff}
.ici-authority-hero-media,.ici-authority-hero-overlay{position:absolute;inset:0;z-index:-2}.ici-authority-hero-media img,.ici-authority-hero-media video{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.ici-authority-hero-overlay{z-index:-1;background:linear-gradient(90deg,rgba(5,20,42,.96) 0%,rgba(8,28,55,.86) 45%,rgba(8,28,55,.44) 100%)}
.ici-authority-hero:after{content:"";position:absolute;z-index:-1;right:-11vw;bottom:-18vw;width:56vw;aspect-ratio:1;border:1px solid rgba(216,180,109,.28);border-radius:50%;box-shadow:0 0 0 44px rgba(216,180,109,.08),0 0 0 89px rgba(216,180,109,.05)}
.ici-authority-hero-inner{min-height:680px;display:flex;align-items:center;justify-content:space-between;gap:48px;padding:92px 0;position:relative}.ici-authority-copy{max-width:790px}.ici-overline{display:block;margin:0 0 18px;color:#e7c884;font-size:12px;font-weight:900;letter-spacing:.16em;line-height:1.4}.ici-overline-dark{color:#92713c}
.ici-authority-copy h1{margin:0;color:#fff;font-size:clamp(44px,5.2vw,78px);font-weight:800;line-height:1.13;letter-spacing:-.065em}.ici-authority-copy h1 strong{color:#e3c07a;font-weight:800}.ici-authority-lead{max-width:670px;margin:27px 0 0;color:#eef4fc;font-size:clamp(17px,1.45vw,21px);line-height:1.8;word-break:keep-all}.ici-authority-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}
.ici-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:54px;padding:14px 21px;border:1px solid transparent;border-radius:3px;font-size:15px;font-weight:900;line-height:1.35;transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.ici-button:hover{transform:translateY(-2px)}.ici-button-gold{color:#152a46;background:#d3ad62;box-shadow:0 14px 30px rgba(0,0,0,.2)}.ici-button-gold:hover{background:#e1c27e}.ici-button-outline{color:#fff;border-color:rgba(255,255,255,.58);background:rgba(10,28,53,.14)}.ici-button-outline:hover{border-color:#e3c07a;background:rgba(255,255,255,.08)}.ici-button-navy{background:#0d2d55;color:#fff}.ici-button-navy:hover{background:#174474}
.ici-hero-seal{position:relative;flex:0 0 226px;width:226px;aspect-ratio:1;display:grid;place-items:center;align-content:center;gap:12px;margin-right:54px;border:1px solid rgba(231,200,132,.8);border-radius:50%;color:#f4dfae;text-align:center}.ici-hero-seal:before,.ici-hero-seal:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.ici-hero-seal:before{inset:9px;border:1px solid rgba(231,200,132,.42)}.ici-hero-seal:after{inset:-12px;border:1px dashed rgba(231,200,132,.35)}.ici-seal-ring{position:absolute;inset:37px;border:1px solid rgba(231,200,132,.4);border-radius:50%}.ici-hero-seal strong{font-family:Georgia,serif;font-size:46px;line-height:1;letter-spacing:.04em}.ici-seal-top,.ici-seal-bottom{position:relative;font-size:9px;font-weight:900;letter-spacing:.16em}.ici-seal-bottom{font-size:8px;color:#d9e5f1}
.ici-intro-section{padding:104px 0;background:#fff}.ici-intro-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:10vw;align-items:start}.ici-section-heading h2{margin:0;color:#0b2a51;font-size:clamp(31px,3.4vw,52px);line-height:1.2;letter-spacing:-.06em;word-break:keep-all}.ici-intro-copy{padding:4px 0 0;border-top:1px solid #b89a62}.ici-intro-copy p{margin:22px 0 0;color:#40536d;font-size:18px;line-height:1.85;word-break:keep-all}.ici-text-link{display:inline-flex;align-items:center;gap:14px;margin-top:27px;color:#102f57;font-size:15px;font-weight:900}.ici-text-link span{color:#a27d3b;font-size:20px;line-height:1;transition:transform .2s ease}.ici-text-link:hover span{transform:translateX(4px)}
.ici-services-section{padding:108px 0;background:#f4f6f9;border-top:1px solid #e7ebf0;border-bottom:1px solid #e7ebf0}.ici-section-heading-center{text-align:center;margin:0 auto 46px;max-width:800px}.ici-section-heading-center>p:last-child{margin:16px auto 0;color:#53667e;font-size:17px;word-break:keep-all}.ici-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #cdd6e1;border-left:1px solid #cdd6e1;background:#fff}.ici-service-card{min-height:244px;padding:32px 30px;border-right:1px solid #cdd6e1;border-bottom:1px solid #cdd6e1;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}.ici-service-card:hover{position:relative;z-index:1;background:#0e315c;box-shadow:0 16px 32px rgba(12,38,71,.17);transform:translateY(-4px)}.ici-service-card>span{display:block;margin-bottom:39px;color:#b18b47;font-family:Georgia,serif;font-size:14px;font-weight:700}.ici-service-card h3{margin:0;color:#122f55;font-size:23px;letter-spacing:-.04em}.ici-service-card p{margin:11px 0 0;color:#5d7087;font-size:15.5px;line-height:1.65;word-break:keep-all}.ici-service-card:hover h3{color:#fff}.ici-service-card:hover p{color:#d6e2ee}.ici-center-link{text-align:center;margin-top:34px}
.ici-strength-section{padding:112px 0;background:#0a2548;color:#fff;position:relative;overflow:hidden}.ici-strength-section:after{content:"ICI";position:absolute;right:-.04em;bottom:-.28em;color:rgba(255,255,255,.035);font-family:Georgia,serif;font-size:clamp(150px,27vw,480px);font-weight:700;line-height:1}.ici-strength-grid{position:relative;z-index:1;display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;align-items:center}.ici-strength-copy h2{margin:0;color:#fff;font-size:clamp(34px,3.8vw,58px);line-height:1.18;letter-spacing:-.06em}.ici-strength-copy>p:last-child{margin:24px 0 0;color:#d6e0eb;font-size:17px;line-height:1.85;word-break:keep-all}.ici-strength-list{border-top:1px solid rgba(255,255,255,.28)}.ici-strength-list article{display:grid;grid-template-columns:72px 1fr;gap:22px;padding:25px 0;border-bottom:1px solid rgba(255,255,255,.22)}.ici-strength-list span{color:#d2ad66;font-family:Georgia,serif;font-size:17px}.ici-strength-list h3{margin:0;color:#fff;font-size:22px}.ici-strength-list p{margin:7px 0 0;color:#c7d4e3;font-size:15.5px;word-break:keep-all}
.ici-auditors-section{padding:114px 0;background:#fff}.ici-auditor-lead{display:grid;grid-template-columns:310px 1fr;gap:50px;align-items:stretch;max-width:1120px;margin:0 auto 28px;padding:30px;border:1px solid #c9b184;background:linear-gradient(135deg,#f8f7f4,#fff);box-shadow:0 20px 50px rgba(16,47,87,.08)}.ici-profile-placeholder{width:94px;height:94px;display:grid;place-content:center;align-content:center;gap:3px;flex:0 0 auto;background:linear-gradient(145deg,#123963,#0b2446);border:1px solid rgba(218,183,111,.7);box-shadow:inset 0 0 0 7px rgba(255,255,255,.08);color:#e7ca8e;text-align:center}.ici-profile-placeholder span{font-family:Georgia,serif;font-size:29px;letter-spacing:.04em;line-height:1}.ici-profile-placeholder small{font-size:8px;font-weight:900;letter-spacing:.14em}.ici-profile-placeholder-lead{width:100%;height:100%;min-height:256px;background:linear-gradient(145deg,#123a65,#071d3a)}.ici-profile-placeholder-lead span{font-size:64px}.ici-profile-placeholder-lead small{font-size:10px}.ici-card-role{margin:0 0 9px;color:#a17a36;font-size:12px;font-weight:900;letter-spacing:.1em}.ici-auditor-lead h3{margin:0;color:#0d2c54;font-size:38px;line-height:1.2}.ici-auditor-lead h3 span,.ici-auditor-card h3 span{margin-left:6px;color:#4e617a;font-size:.55em;font-weight:700;letter-spacing:-.02em}.ici-auditor-standard{margin:19px 0 0;color:#173c67;font-size:15.5px;font-weight:800;line-height:1.75;word-break:keep-all}.ici-auditor-career{display:grid;gap:4px;margin:15px 0 0;padding:0;list-style:none;color:#52667f;font-size:15px}.ici-auditor-career li{position:relative;padding-left:15px}.ici-auditor-career li:before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;background:#ba9654;border-radius:50%}.ici-detail-button{display:inline-flex;align-items:center;gap:10px;justify-content:flex-start;margin-top:22px;padding:0;border:0;background:none;color:#0c315c;font:inherit;font-size:14px;font-weight:900;cursor:pointer}.ici-detail-button span{font-size:18px;color:#a47e3d;transition:transform .2s ease}.ici-detail-button:hover span{transform:translateX(4px)}
.ici-auditors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ici-auditor-card{display:flex;gap:20px;min-height:295px;padding:25px;border:1px solid #dbe2e9;background:#fff;box-shadow:0 12px 26px rgba(16,47,87,.045);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.ici-auditor-card:hover{border-color:#b99a61;box-shadow:0 18px 38px rgba(16,47,87,.1);transform:translateY(-4px)}.ici-auditor-card>div:last-child{display:flex;min-width:0;flex:1;flex-direction:column}.ici-auditor-card h3{margin:0;color:#12345d;font-size:23px;line-height:1.25}.ici-auditor-card .ici-auditor-standard{margin-top:15px;font-size:14px;line-height:1.6}.ici-card-summary{margin:12px 0 0;color:#65778d;font-size:14px;line-height:1.55;word-break:keep-all}.ici-auditor-card .ici-detail-button{margin-top:auto;padding-top:18px}
.ici-notice-section{padding:108px 0;background:#f4f6f9}.ici-notice-heading{display:flex;align-items:end;justify-content:space-between;gap:26px;margin-bottom:32px}.ici-notice-heading .ici-text-link{flex:0 0 auto;margin:0}.ici-notice-heading h2{margin:0;color:#0b2a51;font-size:clamp(31px,3.4vw,50px);letter-spacing:-.06em}.ici-notice-heading p:last-child{margin:12px 0 0;color:#5d7087;font-size:16px}.ici-notice-list{border-top:2px solid #183a63}.ici-notice-item{display:grid;grid-template-columns:180px 1fr 28px;align-items:center;gap:24px;min-height:76px;padding:15px 18px;border-bottom:1px solid #d9e0e8;background:rgba(255,255,255,.6);transition:background .18s ease,padding .18s ease}.ici-notice-item:hover{padding-left:26px;background:#fff}.ici-notice-meta{display:flex;align-items:center;gap:10px;color:#78889b;font-size:13px}.ici-notice-meta b{display:inline-flex;align-items:center;justify-content:center;min-width:53px;padding:4px 8px;color:#87652e;background:#f5ecdc;font-size:11px;font-weight:900}.ici-notice-meta b:first-child{color:#7b4e1d;background:#f2e4cf}.ici-notice-item strong{overflow:hidden;color:#183552;font-size:17px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.ici-notice-arrow{color:#9a763c;font-size:21px;text-align:right}.ici-contact-cta{padding:92px 0;background:#0b294d;color:#fff}.ici-contact-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:46px}.ici-contact-cta h2{margin:0;color:#fff;font-size:clamp(31px,3.6vw,52px);line-height:1.2;letter-spacing:-.06em}.ici-contact-cta p:last-child{margin:17px 0 0;color:#d6e2ee;font-size:17px}.ici-contact-cta-actions{display:flex;align-items:center;gap:28px;flex:0 0 auto}.ici-telephone{display:grid;gap:3px;color:#fff;font-size:23px;font-weight:900;letter-spacing:.01em}.ici-telephone small{color:#d8b46f;font-size:12px;letter-spacing:.08em}
.ici-auditor-modal{position:fixed;z-index:6000;inset:0;display:grid;place-items:center;padding:24px}.ici-auditor-modal[hidden]{display:none}.ici-auditor-modal-backdrop{position:absolute;inset:0;background:rgba(4,18,37,.72);backdrop-filter:blur(4px)}.ici-auditor-dialog{position:relative;width:min(680px,100%);max-height:min(760px,calc(100vh - 48px));overflow:auto;padding:42px;background:#fff;box-shadow:0 26px 80px rgba(0,0,0,.32);outline:none}.ici-modal-close{position:absolute;top:12px;right:16px;width:39px;height:39px;padding:0;border:0;background:transparent;color:#183552;font-size:33px;font-weight:300;line-height:1;cursor:pointer}.ici-modal-close:hover{color:#a57f3c}.ici-modal-profile{display:flex;align-items:center;gap:20px;padding-right:32px}.ici-modal-placeholder{width:82px;height:82px}.ici-modal-placeholder span{font-size:22px}.ici-modal-profile h2{margin:0;color:#0c2c54;font-size:32px}.ici-modal-details{display:grid;gap:0;margin:30px 0 0;border-top:1px solid #dce3eb}.ici-modal-details>div{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid #dce3eb}.ici-modal-details dt{color:#14375f;font-size:14px;font-weight:900}.ici-modal-details dd{margin:0;color:#4e627b;font-size:15px;line-height:1.75;word-break:keep-all}.ici-modal-details ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.ici-modal-details li{position:relative;padding-left:14px}.ici-modal-details li:before{content:"";position:absolute;left:0;top:.75em;width:5px;height:5px;border-radius:50%;background:#b38d49}body.ici-modal-open{overflow:hidden}

@media(max-width:1120px){.ici-authority-hero,.ici-authority-hero-inner{min-height:590px}.ici-authority-hero-inner{padding:80px 0}.ici-hero-seal{margin-right:18px;transform:scale(.85);transform-origin:center right}.ici-intro-grid,.ici-strength-grid{gap:64px}.ici-auditors-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ici-auditor-card{min-height:270px}.ici-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.ici-authority-hero,.ici-authority-hero-inner{min-height:590px}.ici-authority-hero-media img{object-position:58% center}.ici-authority-hero-overlay{background:linear-gradient(90deg,rgba(5,20,42,.96),rgba(6,24,48,.83) 78%,rgba(6,24,48,.72))}.ici-authority-hero-inner{display:block;padding:74px 0 60px}.ici-authority-copy h1{font-size:clamp(38px,10.8vw,53px);line-height:1.15}.ici-authority-lead{margin-top:21px;font-size:16px;line-height:1.72}.ici-authority-actions{display:grid;margin-top:28px}.ici-button{width:100%;min-height:52px}.ici-hero-seal{display:none}.ici-intro-section,.ici-services-section,.ici-strength-section,.ici-auditors-section,.ici-notice-section{padding:70px 0}.ici-intro-grid,.ici-strength-grid{grid-template-columns:1fr;gap:28px}.ici-section-heading h2,.ici-notice-heading h2{font-size:32px}.ici-intro-copy p{margin-top:16px;font-size:16px;line-height:1.75}.ici-section-heading-center{margin-bottom:32px}.ici-section-heading-center>p:last-child{font-size:15.5px;line-height:1.7}.ici-services-grid{grid-template-columns:1fr}.ici-service-card{min-height:0;padding:25px 22px}.ici-service-card>span{margin-bottom:24px}.ici-service-card h3{font-size:21px}.ici-strength-copy>p:last-child{font-size:15.5px;line-height:1.75}.ici-strength-list article{grid-template-columns:45px 1fr;gap:14px}.ici-strength-list h3{font-size:20px}.ici-strength-list p{font-size:14.8px}.ici-auditor-lead{grid-template-columns:1fr;gap:25px;margin-bottom:18px;padding:20px}.ici-profile-placeholder-lead{min-height:180px}.ici-auditor-lead h3{font-size:31px}.ici-auditor-standard{font-size:14.5px;line-height:1.7}.ici-auditors-grid{grid-template-columns:1fr;gap:14px}.ici-auditor-card{min-height:0;padding:21px;gap:17px}.ici-auditor-card h3{font-size:22px}.ici-profile-placeholder{width:78px;height:78px}.ici-auditor-card .ici-auditor-standard{font-size:13.5px}.ici-notice-heading{display:block;margin-bottom:24px}.ici-notice-heading .ici-text-link{margin-top:18px}.ici-notice-item{grid-template-columns:1fr 20px;gap:9px;min-height:0;padding:16px 6px}.ici-notice-item:hover{padding-left:10px}.ici-notice-meta{grid-column:1/-1;gap:8px;font-size:12px}.ici-notice-item strong{font-size:15.5px}.ici-notice-arrow{grid-column:2;grid-row:2}.ici-contact-cta{padding:68px 0}.ici-contact-cta-inner{display:block}.ici-contact-cta h2{font-size:32px}.ici-contact-cta p:last-child{font-size:15.5px;line-height:1.7}.ici-contact-cta-actions{display:grid;gap:20px;margin-top:28px}.ici-telephone{font-size:20px;text-align:center}.ici-auditor-modal{align-items:end;padding:0}.ici-auditor-dialog{width:100%;max-height:calc(100vh - 24px);padding:31px 20px 26px}.ici-modal-profile{gap:14px}.ici-modal-profile h2{font-size:27px}.ici-modal-details{margin-top:24px}.ici-modal-details>div{grid-template-columns:1fr;gap:7px;padding:16px 0}.ici-modal-details dd{font-size:14.5px}.ici-modal-close{top:9px;right:10px}}

.ici-auditor-standard:before{content:"심사 자격";display:block;margin-bottom:5px;color:#a17a36;font-size:11px;font-weight:900;letter-spacing:.08em}

.ici-profile-photo{display:block;width:94px;height:94px;flex:0 0 auto;border:1px solid #c9b184;background:#edf1f5;object-fit:cover;object-position:center 22%}.ici-profile-photo-lead{width:100%;height:100%;min-height:256px}.ici-modal-photo{width:82px;height:82px}
@media(max-width:760px){.ici-profile-photo{width:78px;height:78px}.ici-profile-photo-lead{width:100%;height:180px;min-height:180px}.ici-modal-photo{width:82px;height:82px}}

/* Main-page notice: visual and announcements shown side by side. */
.ici-notice-featured{padding:88px 0;background:#f4f6f9;border-top:1px solid #e7ebf0;border-bottom:1px solid #e7ebf0}.ici-notice-layout{display:grid;grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);overflow:hidden;border:1px solid #d9e1e9;background:#fff;box-shadow:0 18px 42px rgba(16,47,87,.07)}.ici-notice-visual{position:relative;min-height:430px;overflow:hidden;background:#0d2d55}.ici-notice-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,22,43,.04),rgba(5,22,43,.78))}.ici-notice-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}.ici-notice-visual-copy{position:absolute;z-index:1;left:38px;right:30px;bottom:34px;color:#fff}.ici-notice-visual-copy span{display:block;margin-bottom:11px;color:#e7c884;font-size:11px;font-weight:900;letter-spacing:.15em}.ici-notice-visual-copy strong{font-size:clamp(25px,2.2vw,34px);line-height:1.3;letter-spacing:-.055em}.ici-notice-content{padding:46px 50px}.ici-notice-featured .ici-notice-heading{align-items:flex-start;margin-bottom:26px}.ici-notice-featured .ici-notice-heading p:last-child{max-width:440px;line-height:1.6}.ici-notice-featured .ici-notice-list{border-top:2px solid #183a63}.ici-notice-featured .ici-notice-item{grid-template-columns:128px 1fr 28px;gap:16px;min-height:72px;padding:13px 7px;background:transparent}.ici-notice-featured .ici-notice-item:hover{padding-left:13px}.ici-notice-featured .ici-notice-meta{gap:7px;font-size:12px}.ici-notice-featured .ici-notice-meta b{min-width:0;padding:4px 6px;white-space:nowrap}.ici-notice-featured .ici-notice-item strong{font-size:16px}
@media(max-width:980px){.ici-notice-layout{grid-template-columns:1fr}.ici-notice-visual{min-height:290px}.ici-notice-content{padding:40px 38px}}
@media(max-width:760px){.ici-notice-featured{padding:58px 0}.ici-notice-visual{min-height:230px}.ici-notice-visual-copy{left:24px;bottom:24px}.ici-notice-visual-copy strong{font-size:25px}.ici-notice-content{padding:28px 21px}.ici-notice-featured .ici-notice-heading{display:block;margin-bottom:23px}.ici-notice-featured .ici-notice-heading .ici-text-link{margin-top:15px}.ici-notice-featured .ici-notice-item{grid-template-columns:1fr 20px;gap:8px;padding:15px 4px}.ici-notice-featured .ici-notice-meta{grid-column:1/-1}.ici-notice-featured .ici-notice-item strong{font-size:15px}}

/* JSON notice board */
.notice-empty{margin:0;padding:28px 0;color:#60738b;text-align:center}.notice-board-list{display:grid;gap:14px}.notice-board-card{display:grid;grid-template-columns:174px minmax(0,1fr) 26px;align-items:center;gap:26px;min-height:142px;padding:18px 22px;border:1px solid #d9e1e9;background:#fff;box-shadow:0 8px 22px rgba(16,47,87,.035);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.notice-board-card:hover{border-color:#b99a61;box-shadow:0 16px 30px rgba(16,47,87,.09);transform:translateY(-2px)}.notice-board-thumbnail{width:174px;height:104px;object-fit:cover;background:#edf1f5}.notice-board-card-copy{min-width:0}.notice-board-card .ici-notice-meta{margin-bottom:10px}.notice-board-card h2{margin:0;color:#0d2d55;font-size:21px;letter-spacing:-.04em}.notice-board-card p{display:-webkit-box;overflow:hidden;margin:10px 0 0;color:#64758a;font-size:15px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2}.notice-board-card:not(:has(.notice-board-thumbnail)){grid-template-columns:minmax(0,1fr) 26px}.notice-board-card:not(:has(.notice-board-thumbnail)) .notice-board-card-copy{grid-column:1}.notice-detail-wrap{max-width:920px}.notice-detail-card{padding:52px 58px;border:1px solid #d9e1e9;background:#fff;box-shadow:0 14px 34px rgba(16,47,87,.06)}.notice-detail-card>.ici-notice-meta{margin-bottom:18px}.notice-detail-card h1{margin:0;color:#0c2c54;font-size:clamp(29px,3.2vw,45px);line-height:1.25;letter-spacing:-.055em}.notice-detail-summary{margin:22px 0 0;padding:19px 22px;border-left:3px solid #b28a43;background:#f6f8fa;color:#40536d;font-size:16px;line-height:1.8;word-break:keep-all}.notice-detail-image{display:block;max-width:100%;max-height:620px;margin:32px auto 0;object-fit:contain}.notice-detail-content{min-height:160px;margin-top:32px;padding-top:32px;border-top:1px solid #dce3eb;color:#344b66;font-size:16px;line-height:1.95;white-space:pre-line;word-break:break-word}.notice-detail-back{margin-top:38px}

/* Notice administration */
.notice-admin-body{min-height:100vh;background:#f1f4f8}.notice-admin-shell{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:30px 0 70px}.notice-admin-header{display:flex;align-items:center;justify-content:space-between;padding:5px 0 28px}.notice-admin-header .brand img{width:160px}.notice-admin-public-link{display:inline-flex;align-items:center;gap:8px;color:#173b67;font-size:14px;font-weight:900}.notice-admin-public-link span{font-size:18px}.notice-admin-intro{padding:47px 52px;background:linear-gradient(125deg,#0b294d,#174c7e);box-shadow:0 18px 40px rgba(11,41,77,.16);color:#fff}.notice-admin-intro p{margin:0 0 13px;color:#e4c17d;font-size:12px;font-weight:900;letter-spacing:.15em}.notice-admin-intro h1{margin:0;font-size:clamp(34px,4vw,52px);letter-spacing:-.055em}.notice-admin-intro span{display:block;margin-top:16px;color:#d9e6f1;font-size:16px}.notice-admin-login{width:min(470px,100%);margin:46px auto 0;padding:39px;border:1px solid #d9e1e9;background:#fff;box-shadow:0 16px 34px rgba(16,47,87,.06)}.notice-admin-login h2{margin:0;color:#0b2a51;font-size:28px}.notice-admin-login p{margin:12px 0 23px;color:#64758a;font-size:15px;line-height:1.7}.notice-admin-login label,.notice-editor>label{display:grid;gap:8px;color:#183a63;font-size:14px;font-weight:900}.notice-admin-login input,.notice-editor input:not([type="checkbox"]),.notice-editor textarea{box-sizing:border-box;width:100%;border:1px solid #cfd9e4;border-radius:2px;background:#fff;color:#183552;font:inherit;font-weight:500}.notice-admin-login input,.notice-editor input:not([type="checkbox"]){height:47px;padding:0 13px}.notice-editor textarea{min-height:190px;padding:13px;resize:vertical;line-height:1.7}.notice-admin-login .ici-button{width:100%;margin-top:20px}.notice-admin-console{margin-top:38px}.notice-admin-toolbar{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:0 0 20px;border-bottom:1px solid #ced8e3}.notice-admin-toolbar h2,.notice-admin-list-heading h2{margin:0;color:#0b2a51;font-size:26px}.notice-admin-toolbar p{margin:7px 0 0;color:#64758a;font-size:14px}.notice-admin-logout,.notice-editor-cancel,.notice-editor-delete,.notice-admin-list-heading button,.notice-admin-item button{border:0;background:none;color:#174474;font:inherit;font-weight:900;cursor:pointer}.notice-admin-logout{padding:9px 13px;border:1px solid #b8c6d5}.notice-admin-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:26px;margin-top:24px}.notice-editor,.notice-admin-list-wrap{padding:31px;border:1px solid #d9e1e9;background:#fff;box-shadow:0 12px 28px rgba(16,47,87,.045)}.notice-editor{display:grid;gap:20px}.notice-editor-heading,.notice-admin-list-heading{display:flex;align-items:start;justify-content:space-between;gap:15px}.notice-editor-heading p{margin:0 0 6px;color:#a17a36;font-size:11px;font-weight:900;letter-spacing:.11em}.notice-editor-heading h2{margin:0;color:#0b2a51;font-size:25px}.notice-editor-pair{display:grid;grid-template-columns:1fr 160px;gap:16px;align-items:end}.notice-editor-published{height:47px;display:flex;align-items:center;gap:8px;color:#183a63;font-size:14px;font-weight:900}.notice-editor>label small{color:#6e8095;font-size:12px;font-weight:500}.notice-editor input[type="file"]{padding:10px 0!important;height:auto!important;border:0!important}.notice-editor-image{display:grid;gap:12px;padding:13px;border:1px solid #d9e1e9;background:#f7f9fb}.notice-editor-image img{display:block;max-width:100%;max-height:280px;margin:auto;object-fit:contain}.notice-editor-image label{color:#52667f;font-size:13px}.notice-editor-actions{display:flex;align-items:center;gap:14px;padding-top:4px}.notice-editor-delete{color:#a04132}.notice-admin-list-heading{align-items:center;padding-bottom:17px;border-bottom:1px solid #dce3eb}.notice-admin-list-heading button{padding:7px 0}.notice-admin-list{display:grid;gap:10px;margin-top:17px}.notice-admin-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid #e5eaf0}.notice-admin-item p{margin:0;color:#9a763c;font-size:11px;font-weight:900}.notice-admin-item h3{margin:7px 0 0;color:#173c67;font-size:15px;line-height:1.45}.notice-admin-item button{padding:5px 0}.notice-admin-item.is-draft h3{color:#8694a4}.notice-admin-empty{margin:25px 0;color:#64758a;text-align:center}.notice-admin-message{min-height:21px;margin:14px 0 0;color:#245d3d;font-size:14px;font-weight:800}.notice-admin-message.is-error{color:#ae4438}.notice-admin-login .notice-admin-message{margin-bottom:0}
@media(max-width:760px){.notice-board-card,.notice-board-card:not(:has(.notice-board-thumbnail)){grid-template-columns:1fr 20px;gap:13px;padding:17px}.notice-board-thumbnail{grid-column:1/-1;width:100%;height:185px}.notice-board-card h2{font-size:19px}.notice-board-card p{font-size:14px}.notice-board-card .ici-notice-arrow{grid-column:2;grid-row:2}.notice-detail-card{padding:28px 21px}.notice-detail-summary{padding:16px;font-size:15px}.notice-detail-content{font-size:15px}.notice-admin-shell{width:min(100% - 24px,1180px);padding-top:19px}.notice-admin-header{padding-bottom:20px}.notice-admin-header .brand img{width:140px}.notice-admin-intro{padding:34px 25px}.notice-admin-intro span{font-size:14px;line-height:1.6}.notice-admin-login{margin-top:26px;padding:28px 22px}.notice-admin-toolbar{align-items:start;flex-direction:column}.notice-admin-grid{grid-template-columns:1fr;gap:16px}.notice-editor,.notice-admin-list-wrap{padding:23px 19px}.notice-editor-pair{grid-template-columns:1fr}.notice-editor-published{height:auto}.notice-admin-item{align-items:start}.notice-admin-toolbar h2,.notice-admin-list-heading h2{font-size:23px}}

/* Public notice writing with per-post name and password */
.notice-board-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px}.notice-board-actions p{margin:0;color:#5d7087;font-size:15px}.notice-board-actions .ici-button{min-height:47px;white-space:nowrap}.notice-detail-edit{display:inline-flex;margin:38px 0 0 17px;color:#173c67;font-size:14px;font-weight:900;vertical-align:middle}.notice-write-wrap{max-width:900px}.notice-write-form{display:grid;gap:21px;padding:45px 50px;border:1px solid #d9e1e9;background:#fff;box-shadow:0 14px 34px rgba(16,47,87,.06)}.notice-write-form-head{padding-bottom:21px;border-bottom:1px solid #dce3eb}.notice-write-form-head p{margin:0 0 8px;color:#a17a36;font-size:11px;font-weight:900;letter-spacing:.14em}.notice-write-form-head h2{margin:0;color:#0b2a51;font-size:29px}.notice-write-form label{display:grid;gap:8px;color:#183a63;font-size:14px;font-weight:900}.notice-write-form input:not([type="checkbox"]),.notice-write-form textarea{box-sizing:border-box;width:100%;border:1px solid #cfd9e4;border-radius:2px;background:#fff;color:#183552;font:inherit;font-weight:500}.notice-write-form input:not([type="checkbox"]){height:48px;padding:0 13px}.notice-write-form textarea{min-height:220px;padding:13px;resize:vertical;line-height:1.75}.notice-write-form input[type="file"]{height:auto!important;padding:10px 0!important;border:0!important}.notice-write-form label small{color:#6e8095;font-size:12px;font-weight:500}.notice-write-pair{display:grid;grid-template-columns:1fr 1fr;gap:17px}.notice-write-image{display:grid;gap:12px;padding:13px;border:1px solid #d9e1e9;background:#f7f9fb}.notice-write-image img{display:block;max-width:100%;max-height:330px;margin:auto;object-fit:contain}.notice-write-image label{display:flex;align-items:center;gap:7px;color:#52667f;font-size:13px}.notice-write-message{min-height:21px;margin:0;color:#245d3d;font-size:14px;font-weight:800}.notice-write-message.is-error{color:#ae4438}.notice-write-actions{display:flex;align-items:center;justify-content:flex-end;gap:15px;padding-top:3px}.notice-write-cancel,.notice-write-delete{border:0;background:none;color:#52667f;font:inherit;font-size:14px;font-weight:900;cursor:pointer}.notice-write-delete{margin-left:6px;color:#a04132}.notice-write-actions .ici-button{min-width:122px}
@media(max-width:760px){.notice-board-actions{align-items:stretch;flex-direction:column}.notice-board-actions .ici-button{width:100%}.notice-detail-edit{display:block;margin:22px 0 0}.notice-write-form{padding:28px 21px}.notice-write-form-head h2{font-size:25px}.notice-write-pair{grid-template-columns:1fr}.notice-write-actions{flex-wrap:wrap;justify-content:space-between}.notice-write-actions .ici-button{order:1;width:100%}.notice-write-delete{margin-left:auto}}

.notice-detail-delete{margin:38px 0 0 17px;padding:0;border:0;background:none;color:#a04132;font:inherit;font-size:14px;font-weight:900;cursor:pointer;vertical-align:middle}
@media(max-width:760px){.notice-detail-delete{display:block;margin:22px 0 0}}


/* =====================================================
   v47 Premium design upgrade
   - Stats strip, gradient accents, smooth reveals,
     CTA watermark, service card micro-interactions
   ===================================================== */

/* === Scrollbar === */
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:#f1f4f8}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#c9a25d,#102f57);border-radius:3px}

/* === Stats Strip === */
.ici-stats-strip{
  background:linear-gradient(135deg,#06152a 0%,#0d2848 100%);
  border-bottom:1px solid rgba(201,162,93,.28);
}
.ici-stats-inner{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-left:1px solid rgba(255,255,255,.07);
}
.ici-stat-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:32px 24px;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.07);
  transition:background .22s ease;
}
.ici-stat-item:hover{
  background:rgba(201,162,93,.07);
}
.ici-stat-num{
  display:block;
  font-family:Georgia,serif;
  font-size:44px;
  font-weight:700;
  color:#e3c07a;
  line-height:1;
  letter-spacing:-.03em;
}
.ici-stat-num small{
  font-size:.5em;
  vertical-align:super;
  font-weight:700;
  opacity:.8;
}
.ici-stat-label{
  display:block;
  margin-top:10px;
  color:#b8c8d8;
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
  word-break:keep-all;
}

/* === Intro copy gradient border-top === */
.ici-intro-copy{
  border-top:3px solid transparent !important;
  padding-top:24px !important;
  background:
    linear-gradient(#fff,#fff) padding-box,
    linear-gradient(90deg,#c9a25d 0%,rgba(201,162,93,0) 80%) border-box !important;
}

/* === Section heading accent === */
.ici-section-heading::after{
  content:'';
  display:block;
  width:36px;
  height:3px;
  margin-top:20px;
  background:linear-gradient(90deg,#c9a25d,transparent);
  border-radius:2px;
}

/* === Enhanced CTA section === */
.ici-contact-cta{
  position:relative;
  overflow:hidden;
}
.ici-contact-cta::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 560px 380px at 90% 50%,rgba(201,162,93,.1),transparent),
    radial-gradient(ellipse 380px 300px at 10% 80%,rgba(30,80,150,.35),transparent);
  pointer-events:none;
}
.ici-contact-cta::after{
  content:'ISO';
  position:absolute;
  right:-.04em;
  bottom:-.3em;
  font-family:Georgia,serif;
  font-size:clamp(90px,18vw,300px);
  font-weight:700;
  line-height:1;
  color:rgba(255,255,255,.03);
  pointer-events:none;
  user-select:none;
}

/* === Service card hover gold side bar === */
.ici-service-card{
  position:relative;
  overflow:hidden;
}
.ici-service-card::before{
  content:'';
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:0;
  background:linear-gradient(180deg,#d3ad62,rgba(201,162,93,0) 100%);
  transition:width .22s ease;
  pointer-events:none;
}
.ici-service-card:hover::before{
  width:3px;
}

/* === Notice item hover accent === */
.ici-notice-featured .ici-notice-item{
  position:relative;
}
.ici-notice-featured .ici-notice-item::before{
  content:'';
  position:absolute;
  left:0;
  top:10px;
  bottom:10px;
  width:0;
  background:#c9a25d;
  transition:width .2s ease;
  pointer-events:none;
}
.ici-notice-featured .ici-notice-item:hover::before{
  width:2px;
}

/* === Strength list hover === */
.ici-strength-list article span{
  transition:color .2s ease;
}
.ici-strength-list article:hover span{
  color:#e8c87a;
}

/* === Smoother reveal animation === */
.reveal{
  opacity:0 !important;
  transform:translateY(24px) !important;
  transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1) !important;
}
.reveal.is-visible{
  opacity:1 !important;
  transform:translateY(0) !important;
}

/* === Hero entrance animation === */
@keyframes ici-fade-up{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
.ici-authority-hero .ici-overline{
  animation:ici-fade-up .7s .1s cubic-bezier(.22,1,.36,1) both;
}
.ici-authority-copy h1{
  animation:ici-fade-up .8s .25s cubic-bezier(.22,1,.36,1) both;
}
.ici-authority-lead{
  animation:ici-fade-up .8s .4s cubic-bezier(.22,1,.36,1) both;
}
.ici-authority-actions{
  animation:ici-fade-up .7s .52s cubic-bezier(.22,1,.36,1) both;
}
.ici-hero-seal{
  animation:ici-fade-up .9s .35s cubic-bezier(.22,1,.36,1) both;
}

/* === Responsive stats strip === */
@media(max-width:960px){
  .ici-stats-inner{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:760px){
  .ici-stats-inner{
    grid-template-columns:repeat(2,1fr);
  }
  .ici-stat-item{
    padding:24px 16px;
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .ici-stat-num{
    font-size:36px;
  }
  .ici-stat-label{
    font-size:12px;
  }
}

/* Home notice visual: show ICI sales points on pointer hover, then restore the original photo. */
.ici-notice-visual img,.ici-notice-visual-copy{transition:opacity .35s ease,transform .35s ease}.ici-notice-sales-points{position:absolute;z-index:2;inset:0;display:grid;align-content:center;gap:28px;padding:35px;color:#fff;background:linear-gradient(135deg,#061b38,#123d68 58%,#0a294d);opacity:0;pointer-events:none;transform:scale(1.03);transition:opacity .35s ease,transform .35s ease}.ici-notice-sales-heading p{margin:0 0 9px;color:#e8c879;font-size:10px;font-weight:900;letter-spacing:.15em}.ici-notice-sales-heading h3{margin:0;color:#fff;font-size:clamp(25px,2.2vw,34px);line-height:1.22;letter-spacing:-.055em}.ici-notice-sales-points ol{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;list-style:none}.ici-notice-sales-points li{min-width:0;padding:11px 12px;border:1px solid rgba(232,200,121,.38);background:rgba(255,255,255,.07)}.ici-notice-sales-points li span{display:block;margin-bottom:5px;color:#e8c879;font-family:Georgia,serif;font-size:12px;font-weight:700}.ici-notice-sales-points li strong{display:block;color:#fff;font-size:14px;letter-spacing:-.03em}.ici-notice-sales-points li small{display:block;margin-top:4px;color:#d9e5f1;font-size:11px;line-height:1.35;word-break:keep-all}@media(hover:hover) and (pointer:fine){.ici-notice-visual:hover img{opacity:0;transform:scale(1.04)}.ici-notice-visual:hover .ici-notice-visual-copy{opacity:0;transform:translateY(8px)}.ici-notice-visual:hover .ici-notice-sales-points{opacity:1;transform:scale(1)}}
@media(max-width:760px){.ici-notice-sales-points{display:none}}


/* ╔══════════════════════════════════════════════════════╗
   ║  v48  Complete design system overhaul                ║
   ║  Typography · Layout · Motion · All-page polish      ║
   ╚══════════════════════════════════════════════════════╝ */

/* ── Scroll progress bar ── */
.ici-scroll-progress{
  position:fixed;top:0;left:0;
  height:3px;width:0%;
  background:linear-gradient(90deg,#c9a25d 0%,#1a4f8a 100%);
  z-index:99999;pointer-events:none;
  transition:width .08s linear;
}

/* ── Back-to-top ── */
.ici-top-btn{
  position:fixed;right:24px;bottom:100px;
  width:48px;height:48px;border-radius:14px;
  background:linear-gradient(135deg,#0b2a51,#1a4f8a);
  color:#fff;border:0;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 26px rgba(11,42,81,.28);
  opacity:0;transform:translateY(14px) scale(.94);
  transition:opacity .3s ease,transform .3s ease,background .2s ease,box-shadow .2s ease;
  z-index:1900;pointer-events:none;
}
.ici-top-btn.visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
.ici-top-btn:hover{
  background:linear-gradient(135deg,#1a4f8a,#2262a8);
  box-shadow:0 16px 32px rgba(11,42,81,.32);
  transform:translateY(-2px) scale(1);
}
@media(max-width:760px){
  .ici-top-btn{right:14px;bottom:82px;width:42px;height:42px;border-radius:12px;}
}

/* ── Header scroll states ── */
.site-header{
  transition:transform .32s cubic-bezier(.22,1,.36,1),
             box-shadow .28s ease,
             background .28s ease !important;
}
.site-header.scrolled{
  background:rgba(255,255,255,.98) !important;
  box-shadow:0 4px 28px rgba(16,47,87,.1) !important;
}
.site-header.hdr-hidden{transform:translateY(-100%) !important;}
.site-header.hdr-visible{transform:translateY(0) !important;}

/* ── Hamburger animation ── */
.menu span{
  transition:transform .22s ease,opacity .18s ease !important;
  transform-origin:center;
}
.menu.is-open span:nth-child(1){transform:rotate(45deg) translate(5px,5px) !important;}
.menu.is-open span:nth-child(2){opacity:0 !important;transform:scaleX(0) !important;}
.menu.is-open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px) !important;}

/* ── Button ripple ── */
.ici-button,.btn,.v23-btn,.iso-filter{position:relative;overflow:hidden;}
.ici-ripple{
  position:absolute;
  width:80px;height:80px;
  margin:-40px 0 0 -40px;
  border-radius:50%;
  background:rgba(255,255,255,.22);
  transform:scale(0);
  animation:ici-ripple-anim .56s ease-out forwards;
  pointer-events:none;
}
@keyframes ici-ripple-anim{to{transform:scale(5.5);opacity:0;}}

/* ── Universal scroll reveal ── */
.ici-reveal{
  opacity:0;
  transform:translateY(20px);
  transition:opacity .78s cubic-bezier(.22,1,.36,1),
             transform .78s cubic-bezier(.22,1,.36,1);
}
.ici-reveal.ici-visible{opacity:1;transform:translateY(0);}

/* ── Typography unification ── */
p{word-break:keep-all !important;overflow-wrap:break-word;}

.section-head{margin-bottom:36px;}
.section-head span{
  display:block;font-size:12px;font-weight:900;
  letter-spacing:.12em;color:#9a7432;
  text-transform:uppercase;margin-bottom:12px;
}
.section-head::after{
  content:'';display:block;
  width:38px;height:3px;margin-top:18px;
  background:linear-gradient(90deg,#c9a25d,transparent);
  border-radius:2px;
}
.section-head h2{
  font-size:clamp(28px,3.2vw,46px) !important;
  letter-spacing:-.06em !important;
  line-height:1.18 !important;
  color:#0b2a51 !important;
  word-break:keep-all;
}
.section-head p{
  font-size:17px !important;
  color:#4a5e75 !important;
  line-height:1.82 !important;
  margin-top:14px !important;
  word-break:keep-all;
}

/* ── Sub-hero dark style (all subpages except about) ── */
.sub-hero:not(.ici-about-final-hero){
  background:linear-gradient(118deg,#071a34 0%,#0d2d52 55%,#081e36 100%) !important;
  color:#fff;
  position:relative;overflow:hidden;
}
.sub-hero:not(.ici-about-final-hero)::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 500px 350px at 85% 50%,rgba(201,162,93,.13),transparent),
    radial-gradient(ellipse 300px 420px at 5% 90%,rgba(26,79,138,.28),transparent);
  pointer-events:none;z-index:0;
}
.sub-hero:not(.ici-about-final-hero) .kicker{
  background:rgba(201,162,93,.15) !important;
  border:1px solid rgba(201,162,93,.38) !important;
  color:#e3c07a !important;
}
.sub-hero:not(.ici-about-final-hero) h1{
  color:#fff !important;
  font-size:clamp(34px,4.2vw,62px) !important;
  letter-spacing:-.065em !important;
  line-height:1.12 !important;
}
.sub-hero:not(.ici-about-final-hero) p{
  color:#d4e0ed !important;
  font-size:17px !important;
  line-height:1.82 !important;
  margin-top:16px !important;
}
.sub-hero:not(.ici-about-final-hero) .sub-hero-grid{
  position:relative;z-index:1;
  padding:88px 0 80px !important;
}
.sub-hero:not(.ici-about-final-hero) .sub-photo{
  border-radius:10px !important;
  border:1px solid rgba(201,162,93,.28) !important;
  box-shadow:0 26px 56px rgba(0,0,0,.36) !important;
  position:relative;overflow:hidden;
}
.sub-hero:not(.ici-about-final-hero) .sub-photo::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(201,162,93,.09),transparent 55%);
  pointer-events:none;
}
.sub-hero:not(.ici-about-final-hero) .sub-photo img{
  opacity:.82 !important;
  filter:saturate(.88) contrast(1.06) !important;
  transition:transform .7s ease !important;
}
.sub-hero:not(.ici-about-final-hero) .sub-photo:hover img{
  transform:scale(1.04) !important;
}
.sub-hero.simple:not(.ici-about-final-hero){
  padding:80px 0 72px !important;
}
@media(max-width:960px){
  .sub-hero:not(.ici-about-final-hero) .sub-hero-grid{
    padding:72px 0 60px !important;
  }
  .sub-hero:not(.ici-about-final-hero) .sub-photo img{
    height:260px !important;
  }
}
@media(max-width:760px){
  .sub-hero:not(.ici-about-final-hero) h1{font-size:32px !important;}
  .sub-hero:not(.ici-about-final-hero) p{font-size:15.5px !important;}
}

/* ── Trust marks ── */
.trust-strip{
  padding:40px 0 !important;
  background:#fff !important;
  border-top:1px solid #e8edf4;
  border-bottom:1px solid #e8edf4;
}
.trust-mark{
  background:#fff !important;
  border:1px solid rgba(201,162,93,.2) !important;
  border-radius:18px !important;
  padding:22px 20px !important;
  display:flex;gap:16px;align-items:flex-start;
  box-shadow:0 8px 24px rgba(16,47,87,.06) !important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease !important;
}
.trust-mark:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 22px 42px rgba(16,47,87,.1) !important;
  border-color:rgba(201,162,93,.42) !important;
}
.mark-icon{
  min-width:46px !important;width:46px !important;height:46px !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,#0b2a51,#1a4f8a) !important;
  color:#e3c07a !important;font-size:18px !important;
  box-shadow:0 8px 20px rgba(11,42,81,.2) !important;
  flex-shrink:0;display:flex;align-items:center;justify-content:center;
}
.trust-mark b{font-size:16px !important;color:#0b2a51 !important;letter-spacing:-.02em;}
.trust-mark p{
  font-size:14.5px !important;color:#566880 !important;
  line-height:1.65 !important;margin-top:4px !important;
}

/* ── Purpose cards ── */
.purpose-card{
  background:#fff !important;
  border:1px solid #dce4ee !important;
  border-radius:16px !important;
  padding:30px 26px !important;
  box-shadow:0 8px 24px rgba(16,47,87,.055) !important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease !important;
  position:relative;overflow:hidden;
}
.purpose-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,#c9a25d,rgba(201,162,93,0));
  opacity:0;transition:opacity .22s ease;
}
.purpose-card:hover{
  transform:translateY(-7px) !important;
  box-shadow:0 26px 50px rgba(16,47,87,.12) !important;
  border-color:rgba(201,162,93,.38) !important;
}
.purpose-card:hover::before{opacity:1;}
.purpose-card h3{
  font-size:22px !important;color:#0b2a51 !important;
  margin-bottom:10px;letter-spacing:-.04em;
}
.purpose-card p{
  font-size:15.5px !important;color:#566880 !important;
  line-height:1.68 !important;font-weight:500 !important;
}

/* ── Why cards ── */
.why-cards>div{
  background:#fff !important;
  border:1px solid #dce4ee !important;
  border-radius:16px !important;
  padding:26px !important;
  box-shadow:0 6px 20px rgba(16,47,87,.05) !important;
  transition:transform .22s ease,box-shadow .22s ease !important;
}
.why-cards>div:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 20px 40px rgba(16,47,87,.1) !important;
}
.why-cards h3{
  font-size:20px !important;color:#0b2a51 !important;
  margin-bottom:9px;letter-spacing:-.04em;
}
.why-cards p{
  font-size:15px !important;color:#566880 !important;line-height:1.65 !important;
}

/* ── ISO cards ── */
.iso-card{
  border-radius:16px !important;
  border:1px solid #dce4ee !important;
  box-shadow:0 8px 24px rgba(16,47,87,.055) !important;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease !important;
}
.iso-card:hover{
  transform:translateY(-8px) !important;
  box-shadow:0 30px 56px rgba(16,47,87,.13) !important;
  border-color:rgba(201,162,93,.38) !important;
}
.iso-card-img{position:relative;overflow:hidden;}
.iso-card-img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(7,23,40,.25));
  pointer-events:none;
}
.iso-card-img img{transition:transform .65s ease !important;}
.iso-card:hover .iso-card-img img{transform:scale(1.07) !important;}
.iso-card-body b{
  font-size:11px !important;letter-spacing:.1em !important;
  color:#9a7432 !important;text-transform:uppercase;
}
.iso-card-body em{
  display:inline-flex !important;align-items:center;gap:7px;
  font-style:normal !important;font-weight:900;color:#0b2a51 !important;
}
.iso-card-body em::after{
  content:'→';transition:transform .2s ease;
}
.iso-card:hover .iso-card-body em::after{transform:translateX(4px);}

/* ── FAQ accordion ── */
.faq-list{display:grid;gap:12px !important;}
.faq-list details{
  background:#fff !important;
  border:1px solid #dce4ee !important;
  border-radius:14px !important;
  padding:0 !important;
  box-shadow:0 4px 14px rgba(16,47,87,.04) !important;
  overflow:hidden;
  transition:box-shadow .22s ease,border-color .22s ease;
}
.faq-list details[open]{
  border-color:rgba(201,162,93,.38) !important;
  box-shadow:0 12px 30px rgba(16,47,87,.09) !important;
}
.faq-list summary{
  cursor:pointer !important;
  font-weight:900 !important;font-size:17px;
  color:#0b2a51 !important;
  padding:22px 24px !important;
  list-style:none;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  transition:color .18s ease;user-select:none;
}
.faq-list summary::-webkit-details-marker{display:none;}
.faq-list summary::after{
  content:'';
  width:22px;height:22px;flex-shrink:0;border-radius:50%;
  background:#f0f4f8 url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 3.5L5 6.5L8 3.5' stroke='%23566880' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center;
  border:1.5px solid #dce4ee;
  transition:background .22s ease,border-color .22s ease,transform .32s cubic-bezier(.22,1,.36,1);
}
.faq-list details[open]>summary::after{
  background-color:#0b2a51;
  border-color:#0b2a51;
  transform:rotate(180deg);
  background-image:url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 3.5L5 6.5L8 3.5' stroke='%23ffffff' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.faq-list details[open]>summary{border-bottom:1px solid #e8edf4;}
.faq-list p{
  padding:18px 24px 22px !important;
  font-size:16px !important;
  color:#4a5e75 !important;
  line-height:1.82 !important;
  word-break:keep-all;
}

/* ── Contact form ── */
.contact-form{
  background:#fff !important;
  border:1px solid #dce4ee !important;
  border-radius:20px !important;
  padding:40px 38px !important;
  box-shadow:0 12px 36px rgba(16,47,87,.07) !important;
}
.contact-form h2{
  font-size:28px !important;color:#0b2a51 !important;
  letter-spacing:-.055em !important;margin-bottom:4px;
}
.contact-form label{
  font-weight:800 !important;color:#1a3a62 !important;font-size:14px !important;
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  border:1.5px solid #dce4ee !important;
  border-radius:10px !important;
  padding:12px 14px !important;
  font-size:15px !important;
  background:#fafbfc !important;
  color:#183552 !important;
  outline:none !important;
  transition:border-color .2s ease,box-shadow .2s ease !important;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  border-color:#c9a25d !important;
  box-shadow:0 0 0 3px rgba(201,162,93,.14) !important;
  background:#fff !important;
}
.contact-form label.focused input,
.contact-form label.focused select,
.contact-form label.focused textarea{
  border-color:#c9a25d !important;
  box-shadow:0 0 0 3px rgba(201,162,93,.14) !important;
}
.contact-form #submitBtn{
  width:100%;height:52px;
  font-size:16px !important;font-weight:900 !important;
  border-radius:10px !important;
  background:linear-gradient(135deg,#0b2a51,#1a4f8a) !important;
  box-shadow:0 12px 28px rgba(11,42,81,.2) !important;
}
.contact-form #submitBtn:hover{
  background:linear-gradient(135deg,#1a4f8a,#2262a8) !important;
  transform:translateY(-2px) !important;
}
.contact-side{
  background:#fff !important;
  border:1px solid #dce4ee !important;
  border-radius:20px !important;
  padding:32px 28px !important;
  box-shadow:0 12px 36px rgba(16,47,87,.07) !important;
  height:fit-content;
}
.contact-side h3{
  font-size:18px !important;color:#0b2a51 !important;
  margin:0 0 8px !important;letter-spacing:-.04em;
  padding-top:22px;border-top:1px solid #e8edf4;
}
.contact-side h3:first-child{padding-top:0 !important;border-top:0 !important;}
.contact-side p,.contact-side ul{
  font-size:15px !important;color:#566880 !important;line-height:1.85 !important;
}
.contact-side ul{padding-left:0 !important;list-style:none;margin:0;}
.contact-side ul li{position:relative;padding-left:15px;}
.contact-side ul li::before{
  content:'';position:absolute;left:0;top:.75em;
  width:5px;height:5px;border-radius:50%;background:#c9a25d;
}
@media(max-width:960px){
  .contact-form{padding:30px 24px !important;}
}
@media(max-width:760px){
  .contact-form{padding:26px 20px !important;}
}

/* ── Final CTA ── */
.final-cta{
  background:linear-gradient(118deg,#071a34,#0d2d52) !important;
  padding:88px 0 !important;
  position:relative;overflow:hidden;
}
.final-cta::before{
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse 460px 340px at 88% 50%,rgba(201,162,93,.12),transparent),
    radial-gradient(ellipse 300px 400px at 5% 80%,rgba(26,79,138,.28),transparent);
  pointer-events:none;
}
.final-cta h2{
  font-size:clamp(26px,3.2vw,44px) !important;
  color:#fff !important;
  letter-spacing:-.06em !important;
  word-break:keep-all;line-height:1.18;
}
.final-cta p{
  color:#d0dce8 !important;
  font-size:17px !important;
  margin-top:12px !important;
  word-break:keep-all;
}
.final-cta .btn.light,
.final-cta .ici-button{
  background:linear-gradient(135deg,#d3ad62,#b88d42) !important;
  color:#fff !important;border:0 !important;
  box-shadow:0 16px 32px rgba(0,0,0,.22) !important;
  min-width:180px;border-radius:6px !important;
  font-size:16px !important;font-weight:900 !important;
  height:56px;
}
.final-cta .btn.light:hover,
.final-cta .ici-button:hover{
  background:linear-gradient(135deg,#e0be72,#c69d52) !important;
  transform:translateY(-2px) !important;
}
@media(max-width:760px){.final-cta{padding:72px 0 !important;}}

/* ── Process row cards ── */
.process-row>div{
  border:1px solid #dce4ee !important;
  border-radius:16px !important;
  padding:26px 22px !important;
  box-shadow:0 6px 18px rgba(16,47,87,.05) !important;
  transition:transform .22s ease,box-shadow .22s ease !important;
}
.process-row>div:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 20px 40px rgba(16,47,87,.1) !important;
}

/* ── Photo grid ── */
.photo-grid figure{
  border:1px solid rgba(201,162,93,.18) !important;
  border-radius:18px !important;
  overflow:hidden;
  box-shadow:0 10px 28px rgba(16,47,87,.06) !important;
  transition:transform .24s ease,box-shadow .24s ease !important;
}
.photo-grid figure:hover{
  transform:translateY(-7px) !important;
  box-shadow:0 26px 52px rgba(16,47,87,.13) !important;
}
.photo-grid img{transition:transform .65s ease !important;}
.photo-grid figure:hover img{transform:scale(1.06) !important;}

/* ── Summary grid cards ── */
.summary-grid>div{
  border:1px solid #dce4ee !important;
  border-radius:16px !important;
  box-shadow:0 6px 18px rgba(16,47,87,.05) !important;
  transition:transform .22s ease,box-shadow .22s ease !important;
}
.summary-grid>div:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 18px 36px rgba(16,47,87,.09) !important;
}

/* ── Footer ── */
.footer{background:#071728 !important;}
.footer-grid{gap:40px !important;}
.footer h3{font-size:18px !important;letter-spacing:-.03em !important;margin-bottom:12px !important;}
.footer h4{
  color:#e3c07a !important;font-size:12px !important;
  letter-spacing:.12em !important;text-transform:uppercase;margin-bottom:14px;
}
.footer p{font-size:14.5px !important;color:#8fa3ba !important;line-height:1.92 !important;}
.footer a{color:#8fa3ba !important;transition:color .18s ease;}
.footer a:hover{color:#e3c07a !important;}
.copyright{
  padding:20px 0 !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  color:#5a6e82 !important;font-size:13px !important;
}
@media(max-width:960px){.footer-grid{grid-template-columns:1fr 1fr !important;}}
@media(max-width:700px){.footer-grid{grid-template-columns:1fr !important;gap:28px !important;}}

/* ── Mobile action buttons ── */
.mobile-actions a:last-child{
  background:linear-gradient(135deg,#0b2a51,#1a4f8a) !important;
  color:#fff !important;border:0 !important;
  box-shadow:0 8px 20px rgba(11,42,81,.26) !important;
}
.mobile-actions a:first-child{
  background:#fff !important;color:#0b2a51 !important;
  border:1.5px solid #dce4ee !important;
  box-shadow:0 8px 20px rgba(16,47,87,.1) !important;
}

/* ── Scrollbar (webkit) ── */
::-webkit-scrollbar{width:5px;}
::-webkit-scrollbar-track{background:#f1f4f8;}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#c9a25d,#0b2a51);border-radius:3px;}

/* ── Explain / cert detail cards ── */
.explain-main,.explain-side{border-radius:18px !important;}
.explain-main{border:1px solid rgba(201,162,93,.2) !important;}

/* ── Section soft bg ── */
.section.soft,.soft{background:linear-gradient(180deg,#f6f8fb,#f0f4f8) !important;}

/* ── Image hover polish for hero seal ── */
.ici-hero-seal{
  transition:transform .4s cubic-bezier(.22,1,.36,1) !important;
}
.ici-authority-hero-inner:hover .ici-hero-seal{
  transform:scale(1.03) !important;
}

/* ── Auditor lead card — real photo layout ── */
.ici-auditor-lead-photo{
  border-radius:16px !important;
  overflow:hidden !important;
  background:#f0f4f8 !important;
  border:1px solid rgba(201,162,93,.22) !important;
  box-shadow:0 18px 44px rgba(16,47,87,.1) !important;
}
.ici-auditor-lead-photo img{
  width:100% !important;height:100% !important;
  object-fit:cover !important;object-position:top center !important;
  display:block !important;
  transition:transform .6s ease !important;
}
.ici-auditor-lead:hover .ici-auditor-lead-photo img{transform:scale(1.04) !important;}
.ici-auditor-lead h3{font-size:38px !important;color:#0d2c54 !important;margin:8px 0 0 !important;}

/* ── Auditor grid card — real photo layout ── */
.ici-auditor-card-photo{
  width:92px !important;height:92px !important;
  flex:0 0 92px !important;
  border-radius:12px !important;
  overflow:hidden !important;
  background:#f0f4f8 !important;
  border:1px solid rgba(201,162,93,.18) !important;
  box-shadow:0 4px 12px rgba(16,47,87,.08) !important;
}
.ici-auditor-card-photo img{
  width:100% !important;height:100% !important;
  object-fit:cover !important;object-position:top center !important;
  display:block !important;
  transition:transform .5s ease !important;
}
.ici-auditor-card:hover .ici-auditor-card-photo img{transform:scale(1.06) !important;}

/* ── Modal real photo ── */
.ici-modal-photo{
  width:90px !important;height:90px !important;
  border-radius:12px !important;
  object-fit:cover !important;object-position:top center !important;
  flex:0 0 90px !important;
  border:1px solid rgba(201,162,93,.22) !important;
  box-shadow:0 6px 16px rgba(16,47,87,.1) !important;
}

/* ── ISO filter bar ── */
.iso-filter{
  transition:transform .18s ease,box-shadow .18s ease,
             background .18s ease,color .18s ease,border-color .18s ease !important;
}
.iso-filter:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 18px rgba(16,47,87,.1);
}
.iso-filter.active{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(16,47,87,.14);
}


/* ╔══════════════════════════════════════════════════════╗
   ║  auditors.html  — 전문심사위원단 전용 레이아웃        ║
   ╚══════════════════════════════════════════════════════╝ */

/* ── 통계 스트립 ── */
.au-stats-strip{
  background:linear-gradient(90deg,#071a34,#0d2d52);
  padding:22px 0;
  border-top:1px solid rgba(201,162,93,.18);
}
.au-stats-inner{
  display:flex;align-items:center;justify-content:center;
  gap:0;flex-wrap:wrap;
}
.au-stat{
  display:flex;flex-direction:column;align-items:center;
  padding:8px 40px;
}
.au-stat strong{
  font-size:36px;font-weight:900;color:#fff;
  letter-spacing:-.05em;line-height:1;
}
.au-stat strong small{
  font-size:.5em;color:#c9a25d;font-weight:900;
}
.au-stat span{
  font-size:12px;font-weight:700;color:#8fa8c4;
  margin-top:4px;letter-spacing:.01em;
}
.au-stat-div{
  width:1px;height:40px;
  background:rgba(255,255,255,.12);
  flex-shrink:0;
}
@media(max-width:680px){
  .au-stat{padding:8px 22px;}
  .au-stat strong{font-size:28px;}
}
@media(max-width:480px){
  .au-stats-inner{gap:0;}
  .au-stat{padding:8px 14px;}
  .au-stat-div{display:none;}
}

/* ── 대표 심사위원 섹션 ── */
.au-section{padding:88px 0;background:#fff;}

.au-lead{
  display:grid;
  grid-template-columns:360px 1fr;
  gap:56px;
  align-items:start;
  background:#fff;
  border:1px solid rgba(201,162,93,.22);
  border-radius:24px;
  padding:44px;
  box-shadow:0 24px 60px rgba(16,47,87,.08);
  position:relative;overflow:hidden;
}
.au-lead::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,#c9a25d,#1a4f8a);
}
.au-lead-photo{
  border-radius:16px;
  overflow:hidden;
  position:relative;
  aspect-ratio:3/4;
  background:#f0f4f8;
  box-shadow:0 16px 40px rgba(16,47,87,.12);
}
.au-lead-photo img{
  width:100%;height:100%;
  object-fit:cover;object-position:top center;
  display:block;
  transition:transform .7s ease;
}
.au-lead:hover .au-lead-photo img{transform:scale(1.04);}
.au-lead-photo-badge{
  position:absolute;bottom:14px;left:14px;
  background:linear-gradient(135deg,#0b2a51,#1a4f8a);
  color:#e3c07a;
  font-size:11px;font-weight:900;letter-spacing:.1em;
  text-transform:uppercase;
  padding:5px 12px;border-radius:6px;
  box-shadow:0 4px 12px rgba(0,0,0,.22);
}
.au-lead-body{display:flex;flex-direction:column;justify-content:center;}
.au-kicker{
  font-size:11px;font-weight:900;letter-spacing:.12em;
  color:#9a7432;text-transform:uppercase;
  margin:0 0 10px;
}
.au-lead-name{
  font-size:clamp(32px,3.2vw,46px);
  color:#0b2a51;letter-spacing:-.06em;
  line-height:1.1;margin:0 0 14px;
}
.au-lead-desc{
  font-size:16px;color:#4a5e75;line-height:1.78;
  margin:0 0 20px;word-break:keep-all;
}
.au-tags{
  display:flex;flex-wrap:wrap;gap:7px;
  margin-bottom:22px;
}
.au-tags span{
  font-size:12px;font-weight:800;
  color:#1a4f8a;
  background:#eef3fa;
  border:1px solid rgba(26,79,138,.18);
  border-radius:5px;
  padding:4px 9px;
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.au-tags span:hover{
  background:#1a4f8a;color:#fff;border-color:#1a4f8a;
}
.au-career{
  list-style:none;padding:0;margin:0 0 24px;
  display:grid;gap:6px;
}
.au-career li{
  position:relative;padding-left:16px;
  font-size:15px;color:#566880;line-height:1.65;
}
.au-career li::before{
  content:'';position:absolute;left:0;top:.72em;
  width:5px;height:5px;border-radius:50%;background:#c9a25d;
}
.au-lead-btn{
  align-self:flex-start;
  padding:0 28px;height:50px;
  font-size:15px !important;font-weight:900 !important;
  border-radius:8px !important;
}
@media(max-width:960px){
  .au-lead{grid-template-columns:280px 1fr;gap:36px;padding:32px;}
}
@media(max-width:760px){
  .au-lead{
    grid-template-columns:1fr;
    gap:24px;padding:26px 22px;
  }
  .au-lead-photo{
    max-width:240px;margin:0 auto;
    aspect-ratio:1/1;
  }
  .au-lead-name{font-size:32px;}
}

/* ── 심사위원 그리드 섹션 ── */
.au-grid-section{
  padding:80px 0 96px;
  background:linear-gradient(180deg,#f6f8fb,#f0f4f8);
}
.au-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin-top:0;
}

/* ── 세로형 카드 ── */
.au-card{
  background:#fff;
  border:1px solid #dce4ee;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(16,47,87,.055);
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
  display:flex;flex-direction:column;
}
.au-card:hover{
  transform:translateY(-8px);
  box-shadow:0 28px 56px rgba(16,47,87,.12);
  border-color:rgba(201,162,93,.38);
}
.au-card-img{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  background:#eef2f7;
}
.au-card-img img{
  width:100%;height:100%;
  object-fit:cover;object-position:top center;
  display:block;
  transition:transform .6s ease;
}
.au-card:hover .au-card-img img{transform:scale(1.07);}
.au-card-overlay-btn{
  position:absolute;inset:0;
  display:flex;align-items:flex-end;justify-content:center;
  padding-bottom:18px;
  background:linear-gradient(0deg,rgba(7,23,40,.72) 0%,rgba(7,23,40,.18) 55%,transparent 100%);
  color:#fff;font-size:14px;font-weight:900;letter-spacing:.04em;
  border:0;cursor:pointer;
  opacity:0;
  transition:opacity .24s ease;
}
.au-card:hover .au-card-overlay-btn{opacity:1;}
.au-card-body{
  padding:22px 20px 24px;
  display:flex;flex-direction:column;gap:8px;
  flex:1;
}
.au-name{
  font-size:22px;font-weight:900;
  color:#0b2a51;letter-spacing:-.04em;
  margin:0;
}
.au-card-spec{
  font-size:13.5px;color:#7a90a6;
  line-height:1.55;margin:0;
  word-break:keep-all;
}
.au-card-body .au-tags{margin-top:4px;margin-bottom:0;}
.au-card-body .au-tags span{font-size:11px;padding:3px 7px;}

@media(max-width:1100px){
  .au-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:600px){
  .au-grid{grid-template-columns:1fr 1fr;gap:14px;}
  .au-card-body{padding:16px 14px 18px;}
  .au-name{font-size:18px;}
  .au-card-overlay-btn{font-size:13px;padding-bottom:12px;}
}
@media(max-width:420px){
  .au-grid{grid-template-columns:1fr;}
}

/* ── 프로필 모달 ── */
.au-modal{
  padding:20px;
}
.au-modal .ici-auditor-modal-backdrop{
  position:absolute;inset:0;
  background:rgba(4,14,30,.76);
  backdrop-filter:blur(6px);
}
.au-dialog{
  position:relative;
  width:min(640px,100%);
  max-height:calc(100vh - 40px);
  overflow-y:auto;
  border-radius:20px !important;
  padding:0 !important;
  background:#fff;
  box-shadow:0 32px 80px rgba(0,0,0,.32);
}
.au-dialog .ici-modal-close{
  position:sticky;top:0;
  z-index:2;
  float:right;
  margin:12px 12px 0 0;
  width:36px;height:36px;
  background:rgba(255,255,255,.9);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:18px;font-weight:700;
  color:#0b2a51;
  box-shadow:0 2px 8px rgba(0,0,0,.1);
}
.au-dialog .ici-modal-close:hover{
  background:#fff;color:#c9a25d;
}
.au-dialog-header{
  display:flex;align-items:center;gap:20px;
  padding:28px 28px 22px;
  border-bottom:1px solid #e8edf4;
  position:relative;
}
.au-dialog-header::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,#c9a25d,#1a4f8a);
  border-radius:20px 20px 0 0;
}
.au-dialog-photo{
  width:88px;height:88px;
  border-radius:14px;
  object-fit:cover;object-position:top center;
  flex-shrink:0;
  border:1px solid rgba(201,162,93,.25);
  box-shadow:0 6px 18px rgba(16,47,87,.1);
}
.au-dialog-title .au-kicker{color:#9a7432;margin-bottom:6px;}
.au-dialog-title h2{
  font-size:26px;color:#0b2a51;
  letter-spacing:-.05em;margin:0;
}
.au-dialog-body{padding:0 28px 28px;}
.au-dialog-row{
  display:grid;
  grid-template-columns:110px 1fr;
  gap:16px;
  padding:18px 0;
  border-bottom:1px solid #f0f4f8;
  align-items:start;
}
.au-dialog-row:last-child{border-bottom:0;}
.au-dialog-row dt{
  font-size:12px;font-weight:900;
  color:#9a7432;letter-spacing:.08em;
  text-transform:uppercase;
  padding-top:2px;
}
.au-dialog-row dd{
  margin:0;
  font-size:15px;color:#4a5e75;
  line-height:1.75;word-break:keep-all;
}
.au-dialog-row ul{
  list-style:none;padding:0;margin:0;
  display:grid;gap:5px;
}
.au-dialog-row ul li{
  position:relative;padding-left:14px;
  font-size:14.5px;color:#566880;
}
.au-dialog-row ul li::before{
  content:'';position:absolute;left:0;top:.75em;
  width:5px;height:5px;border-radius:50%;background:#c9a25d;
}
@media(max-width:760px){
  .au-dialog{border-radius:16px 16px 0 0 !important;}
  .au-modal{align-items:flex-end;padding:0;}
  .au-dialog-header{padding:22px 20px 18px;}
  .au-dialog-body{padding:0 20px 24px;}
  .au-dialog-row{grid-template-columns:1fr;gap:6px;}
  .au-dialog-photo{width:72px;height:72px;}
  .au-dialog-title h2{font-size:22px;}
}


/* ╔══════════════════════════════════════════════════════╗
   ║  v49  Comprehensive motion & design upgrade          ║
   ╚══════════════════════════════════════════════════════╝ */

/* ── Scroll reveal upgrade: blur + scale combo ── */
.ici-reveal{
  opacity:0 !important;
  transform:translateY(26px) scale(.98) !important;
  transition:
    opacity .85s cubic-bezier(.22,1,.36,1),
    transform .85s cubic-bezier(.22,1,.36,1) !important;
}
.ici-reveal.ici-visible{
  opacity:1 !important;
  transform:translateY(0) scale(1) !important;
}

/* ── Cursor glow ── */
.ici-cursor-glow{
  position:fixed;pointer-events:none;z-index:1;
  width:480px;height:480px;
  margin-left:-240px;margin-top:-240px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(201,162,93,.055) 0%,rgba(26,79,138,.03) 45%,transparent 70%);
  opacity:0;
  transition:opacity .5s ease;
  will-change:left,top;
}

/* ── Typewriter cursor ── */
.type-cursor{
  display:inline-block;
  width:2px;height:.85em;
  background:#c9a25d;
  margin-left:2px;
  vertical-align:middle;
  border-radius:1px;
  animation:type-blink .7s step-end infinite;
}
.type-cursor-done{animation:none;opacity:0;transition:opacity .4s ease;}
@keyframes type-blink{0%,100%{opacity:1}50%{opacity:0}}

/* ── Hero entrance sequence ── */
.ici-authority-copy .ici-overline,
.ici-authority-copy h1,
.ici-authority-copy .ici-authority-lead,
.ici-authority-copy .ici-authority-actions{
  opacity:0;
  transform:translateY(22px);
}
body.hero-loaded .ici-authority-copy .ici-overline{
  animation:heroUp .75s cubic-bezier(.22,1,.36,1) .15s forwards;
}
body.hero-loaded .ici-authority-copy h1{
  animation:heroUp 1s cubic-bezier(.22,1,.36,1) .38s forwards;
}
body.hero-loaded .ici-authority-copy .ici-authority-lead{
  animation:heroUp .75s cubic-bezier(.22,1,.36,1) .7s forwards;
}
body.hero-loaded .ici-authority-copy .ici-authority-actions{
  animation:heroUp .75s cubic-bezier(.22,1,.36,1) .92s forwards;
}
@keyframes heroUp{
  to{opacity:1;transform:translateY(0);}
}

/* ── Hero h1 gradient text ── */
.ici-authority-copy h1{
  background:linear-gradient(120deg,#fff 40%,#e3c07a 80%,#fff 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  background-size:200%;
  animation:heroUp 1s cubic-bezier(.22,1,.36,1) .38s forwards,
            shimmer 5s ease-in-out 1.5s infinite !important;
}
body.hero-loaded .ici-authority-copy h1{
  animation:heroUp 1s cubic-bezier(.22,1,.36,1) .38s forwards,
            shimmer 5s ease-in-out 1.5s infinite !important;
}
@keyframes shimmer{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}

/* ── Hero seal glow pulse ── */
.ici-hero-seal{
  animation:sealPulse 3s ease-in-out infinite !important;
}
@keyframes sealPulse{
  0%,100%{filter:drop-shadow(0 0 12px rgba(201,162,93,.2));}
  50%{filter:drop-shadow(0 0 28px rgba(201,162,93,.45));}
}
.ici-seal-ring{
  animation:sealRing 18s linear infinite !important;
}
@keyframes sealRing{
  to{transform:rotate(360deg) !important;}
}

/* ── Stat number glow after count-up ── */
.ici-stat-num.counted-done,
.au-stat strong.counted-done{
  animation:numPulse .6s ease !important;
}
@keyframes numPulse{
  0%{text-shadow:0 0 0 rgba(201,162,93,0);}
  50%{text-shadow:0 0 20px rgba(201,162,93,.5);}
  100%{text-shadow:0 0 0 rgba(201,162,93,0);}
}

/* ── Service card number badge redesign ── */
.ici-service-card>span{
  width:42px !important;height:42px !important;
  background:linear-gradient(135deg,#0b2a51,#1a4f8a) !important;
  color:#e3c07a !important;
  border-radius:12px !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
  font-size:13px !important;font-weight:900 !important;letter-spacing:.04em !important;
  margin-bottom:18px !important;
  box-shadow:0 6px 16px rgba(11,42,81,.2) !important;
  transition:transform .2s ease,box-shadow .2s ease !important;
  flex-shrink:0 !important;
}
.ici-service-card:hover>span{
  transform:scale(1.08) rotate(-5deg) !important;
  box-shadow:0 10px 22px rgba(11,42,81,.28) !important;
}

/* ── Card tilt shimmer on hover ── */
.ici-service-card,
.iso-card,
.au-card,
.purpose-card,
.trust-mark,
.au-lead{
  transform-style:preserve-3d;
  will-change:transform;
  background-image:radial-gradient(
    circle at var(--tilt-x,50%) -20%,
    rgba(255,255,255,.06),
    transparent 60%
  );
}

/* ── Section-head animated underline ── */
.section-head::after{
  content:'';display:block;
  width:0;height:3px;margin-top:18px;
  background:linear-gradient(90deg,#c9a25d,transparent);
  border-radius:2px;
  transition:width .9s cubic-bezier(.22,1,.36,1) !important;
}
.section-head.ici-visible::after{
  width:44px !important;
}
.ici-section-heading .ici-overline-dark::after,
.ici-section-heading-center .ici-overline-dark::after{display:none;}

/* ── Strength list item hover ── */
.ici-strength-list article{
  position:relative;
  padding-left:20px !important;
  border-left:3px solid transparent;
  transition:border-color .22s ease,padding-left .22s ease !important;
}
.ici-strength-list article:hover{
  border-left-color:#c9a25d !important;
  padding-left:26px !important;
}

/* ── Notice skeleton shimmer ── */
.notice-skel-item{
  height:70px;border-radius:10px;
  background:linear-gradient(90deg,#f0f4f8 25%,#e4ecf4 50%,#f0f4f8 75%);
  background-size:300% 100%;
  animation:skelShimmer 1.6s ease infinite;
  margin-bottom:8px;
}
@keyframes skelShimmer{
  from{background-position:100% 0}
  to{background-position:-100% 0}
}

/* ── Image load fade ── */
.img-load-fade{
  opacity:0;
  transition:opacity .55s ease;
}
.img-load-fade.img-loaded{
  opacity:1;
}

/* ── CTA button glow on hover ── */
.ici-button-gold{
  box-shadow:0 8px 24px rgba(201,162,93,.25) !important;
}
.ici-button-gold:hover{
  box-shadow:0 16px 40px rgba(201,162,93,.4) !important;
}
.ici-button-navy{
  box-shadow:0 8px 24px rgba(11,42,81,.22) !important;
}
.ici-button-navy:hover{
  box-shadow:0 16px 40px rgba(11,42,81,.34) !important;
}

/* ── Contact CTA section improvement ── */
.ici-contact-cta{
  background:linear-gradient(118deg,#071a34 0%,#0d2d52 60%,#081e36 100%) !important;
  position:relative;overflow:hidden;
}
.ici-contact-cta::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 500px 360px at 90% 50%,rgba(201,162,93,.1),transparent),
             radial-gradient(ellipse 280px 380px at 5% 85%,rgba(26,79,138,.25),transparent);
  pointer-events:none;
}
.ici-contact-cta-inner{position:relative;z-index:1;}
.ici-contact-cta h2{color:#fff !important;word-break:keep-all;}
.ici-contact-cta p{color:#cfdce9 !important;}
.ici-telephone{color:#e3c07a !important;}

/* ── Strength section — keep dark navy, polish ── */
.ici-strength-section{
  background:linear-gradient(135deg,#081d38 0%,#0a2548 55%,#071628 100%) !important;
  color:#fff !important;
  padding:100px 0 !important;
  position:relative;overflow:hidden;
}
.ici-strength-section::after{
  content:'ICI';
  position:absolute;right:-.04em;bottom:-.28em;
  color:rgba(255,255,255,.028);
  font-family:Georgia,serif;
  font-size:clamp(150px,27vw,480px);
  font-weight:700;line-height:1;
  pointer-events:none;
  user-select:none;
}
.ici-strength-copy h2{
  color:#fff !important;
  font-size:clamp(34px,3.8vw,56px) !important;
  letter-spacing:-.06em !important;line-height:1.18 !important;
}
.ici-strength-copy p{color:#ccd9e8 !important;font-size:16.5px !important;line-height:1.85 !important;}
.ici-strength-copy .ici-overline{color:#c9a25d !important;}
.ici-strength-list{border-top:1px solid rgba(255,255,255,.12) !important;}
.ici-strength-list article{
  border-bottom:1px solid rgba(255,255,255,.1) !important;
  border-left:3px solid transparent !important;
  transition:border-left-color .22s ease,padding-left .22s ease !important;
}
.ici-strength-list article:hover{
  border-left-color:rgba(201,162,93,.7) !important;
  padding-left:10px !important;
}
.ici-strength-list h3{color:#fff !important;}
.ici-strength-list p{color:#c0d0e2 !important;}
/* number badge redesigned for dark bg */
.ici-strength-list span{
  width:44px !important;height:44px !important;
  background:rgba(255,255,255,.09) !important;
  border:1.5px solid rgba(201,162,93,.4) !important;
  color:#e3c07a !important;font-size:13px !important;font-weight:900 !important;
  font-family:Georgia,serif !important;
  border-radius:12px !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
  box-shadow:none !important;
  transition:transform .2s ease,background .2s ease,border-color .2s ease !important;
}
.ici-strength-list article:hover span{
  transform:scale(1.08) !important;
  background:rgba(201,162,93,.18) !important;
  border-color:#c9a25d !important;
}

/* ── Intro section gradient border on copy ── */
.ici-intro-copy{
  border-left:3px solid rgba(201,162,93,.3) !important;
  padding-left:28px !important;
  transition:border-color .3s ease !important;
}
.ici-intro-copy:hover{border-left-color:#c9a25d !important;}

/* ── Global link hover underline draw ── */
.ici-text-link{
  position:relative;
}
.ici-text-link::after{
  content:'';position:absolute;bottom:-2px;left:0;
  width:0;height:1.5px;
  background:currentColor;
  transition:width .28s ease !important;
}
.ici-text-link:hover::after{width:100% !important;}

/* ── ISO card hover arrow slide ── */
.iso-card-body em::after{
  transition:transform .22s ease !important;
}
.iso-card:hover .iso-card-body em::after{
  transform:translateX(5px) !important;
}

/* ── Mobile: disable tilt shimmer ── */
@media(max-width:900px){
  .ici-service-card,.iso-card,.au-card,.purpose-card,.trust-mark,.au-lead{
    background-image:none !important;
  }
}

/* ═══════════════════════════════════════
   v50 — Globe / International Network Animation
   회사소개 페이지 글로벌 네트워크 시각화
   ═══════════════════════════════════════ */

/* Section wrapper */
.ici-globe-section{
  background:linear-gradient(180deg,#05101f 0%,#081a35 55%,#050e1c 100%);
  padding:90px 0 70px;
  position:relative;overflow:hidden;
}
.ici-globe-head{
  text-align:center;
  margin-bottom:0;
  position:relative;z-index:2;
}
.ici-globe-head span{
  display:inline-block;
  letter-spacing:.18em;font-size:11.5px;font-weight:700;
  color:#c9a25d;text-transform:uppercase;
  margin-bottom:12px;
}
.ici-globe-head h2{
  color:#fff;
  font-size:clamp(26px,3vw,42px);
  letter-spacing:-.05em;line-height:1.2;
  margin:0 0 12px;
}
.ici-globe-head p{
  color:#8eacc8;font-size:15.5px;line-height:1.7;
  max-width:480px;margin:0 auto;
}

/* Globe stage: full-width overflow canvas */
.ici-globe-stage{
  position:relative;
  width:100%;height:460px;
  margin:0 auto;
  max-width:900px;
}

/* SVG base */
.ici-globe-svg{
  width:100%;height:100%;
  position:absolute;top:0;left:0;
}

/* Globe grid animation */
.globe-grid-lat,.globe-grid-lon{
  animation:globeSpin 40s linear infinite;
  transform-origin:450px 230px;
}
.globe-grid-lon{
  animation-direction:reverse;
  animation-duration:55s;
}
@keyframes globeSpin{
  from{transform:rotate(0deg);}
  to{transform:rotate(360deg);}
}

/* Flight arc draw-on animation */
.arc{
  stroke-dashoffset:800;
  animation:drawArc 3s ease forwards;
}
.arc-1{animation-delay:.6s;}
.arc-2{animation-delay:1.1s;}
.arc-3{animation-delay:1.6s;}
.arc-4{animation-delay:.9s;}
@keyframes drawArc{
  to{stroke-dashoffset:0;}
}

/* Pulse rings on location dots */
.pin-ring{
  animation:pinPulse 2.2s ease-out infinite;
  transform-origin:inherit;
}
.pin-ring-1{animation-delay:0s;}
.pin-ring-2{animation-delay:.7s;}
.pin-ring-3{animation-delay:1.4s;}
.pin-ring-4{animation-delay:.35s;}
.pin-ring-5{animation-delay:1.1s;}
@keyframes pinPulse{
  0%{r:8;opacity:.7;}
  60%{r:22;opacity:.1;}
  100%{r:24;opacity:0;}
}

/* ── Airplane elements ── */
.ici-plane{
  position:absolute;
  display:block;
  pointer-events:none;
  will-change:transform;
  filter:drop-shadow(0 2px 8px rgba(201,162,93,.4));
}
/* Plane 1: London → Korea arc, main route */
.ici-plane-1{
  top:28%;left:0;
  animation:planeArc1 10s ease-in-out infinite;
  animation-delay:0s;
}
@keyframes planeArc1{
  0%  {transform:translate(  0vw,  0px) rotate(-22deg); opacity:0;}
  5%  {opacity:1;}
  50% {transform:translate( 38vw,-90px) rotate(-18deg); opacity:1;}
  95% {opacity:1;}
  100%{transform:translate( 78vw,  0px) rotate(-12deg); opacity:0;}
}
/* Plane 2: reverse direction, smaller */
.ici-plane-2{
  top:45%;left:0;
  animation:planeArc2 14s ease-in-out infinite;
  animation-delay:3.5s;
}
@keyframes planeArc2{
  0%  {transform:translate( 80vw, 10px) rotate(160deg); opacity:0;}
  5%  {opacity:1;}
  50% {transform:translate( 42vw,-65px) rotate(162deg); opacity:1;}
  95% {opacity:1;}
  100%{transform:translate(  2vw, 10px) rotate(165deg); opacity:0;}
}
/* Plane 3: short hop Middle East → Korea */
.ici-plane-3{
  top:38%;left:0;
  animation:planeArc3 9s ease-in-out infinite;
  animation-delay:6s;
}
@keyframes planeArc3{
  0%  {transform:translate( 52vw, 20px) rotate(-25deg); opacity:0;}
  5%  {opacity:.85;}
  50% {transform:translate( 64vw,-38px) rotate(-20deg); opacity:.9;}
  95% {opacity:.8;}
  100%{transform:translate( 76vw, 12px) rotate(-15deg); opacity:0;}
}
/* Plane 4: Europe hop */
.ici-plane-4{
  top:30%;left:0;
  animation:planeArc4 11s ease-in-out infinite;
  animation-delay:8s;
}
@keyframes planeArc4{
  0%  {transform:translate( 26vw, 5px) rotate(-20deg); opacity:0;}
  5%  {opacity:.7;}
  50% {transform:translate( 35vw,-28px) rotate(-18deg); opacity:.8;}
  95% {opacity:.7;}
  100%{transform:translate( 44vw,  5px) rotate(-15deg); opacity:0;}
}

/* Meteor / shooting star particles */
.globe-meteor{
  position:absolute;
  width:80px;height:1.5px;
  background:linear-gradient(90deg,rgba(201,162,93,.8),transparent);
  border-radius:2px;
  pointer-events:none;
  opacity:0;
}
.globe-meteor-1{top:22%;animation:shootStar 4.5s ease-in-out infinite 0s;}
.globe-meteor-2{top:55%;animation:shootStar 5s   ease-in-out infinite 2s;}
.globe-meteor-3{top:38%;animation:shootStar 6s   ease-in-out infinite 4s;}
@keyframes shootStar{
  0%  {left:10%;opacity:0;transform:translateX(0)  rotate(-8deg);}
  10% {opacity:.9;}
  100%{left:90%;opacity:0;transform:translateX(60px) rotate(-8deg);}
}

/* ── Location cards below globe ── */
.ici-globe-locations{
  display:flex;flex-wrap:wrap;gap:14px;
  justify-content:center;
  padding:24px 0 0;
  position:relative;z-index:2;
}
.ici-globe-loc-item{
  display:flex;flex-direction:column;align-items:center;gap:4px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  padding:14px 22px;
  min-width:140px;
  transition:background .22s,border-color .22s,transform .22s;
  cursor:default;
}
.ici-globe-loc-item:hover{
  background:rgba(201,162,93,.1);
  border-color:rgba(201,162,93,.35);
  transform:translateY(-3px);
}
.ici-globe-loc-item .loc-flag{font-size:22px;line-height:1;}
.ici-globe-loc-item strong{
  color:#fff;font-size:13.5px;font-weight:700;
  letter-spacing:-.03em;
}
.ici-globe-loc-item small{color:#8eacc8;font-size:11.5px;}

/* Mobile */
@media(max-width:680px){
  .ici-globe-stage{height:280px;}
  .ici-globe-head h2{font-size:22px;}
  .ici-globe-locations{gap:10px;}
  .ici-globe-loc-item{min-width:100px;padding:11px 14px;}
  .ici-globe-loc-item strong{font-size:12px;}
}

/* ═══════════════════════════════════════
   v51 — Intro Copy Card + Sales Points Redesign
   ═══════════════════════════════════════ */

/* ── Intro copy: elevated card ── */
.ici-intro-copy{
  background:linear-gradient(155deg,#fffdf8 0%,#faf8f3 100%) !important;
  border:none !important;
  border-top:0 !important;
  border-left:0 !important;
  border-radius:0 20px 20px 0 !important;
  padding:40px 44px 40px 42px !important;
  box-shadow:
    0 2px 0 0 #c9a25d,
    0 12px 48px rgba(11,42,81,.09),
    inset 0 0 0 1px rgba(201,162,93,.15) !important;
  position:relative !important;
  overflow:hidden !important;
  transition:box-shadow .3s ease,transform .3s ease !important;
}
.ici-intro-copy:hover{
  box-shadow:
    0 2px 0 0 #a67c3a,
    0 20px 60px rgba(11,42,81,.13),
    inset 0 0 0 1px rgba(201,162,93,.28) !important;
  transform:translateY(-3px) !important;
  border-left-color:transparent !important;
}
/* gold top bar shimmer */
.ici-intro-copy::before{
  content:'';
  position:absolute;top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#c9a25d 0%,#e8c879 50%,rgba(201,162,93,.2) 100%);
  z-index:1;
}
/* decorative quote */
.ici-intro-copy::after{
  content:'\201C';
  position:absolute;top:-28px;right:18px;
  font-size:160px;line-height:1;
  font-family:Georgia,serif;
  color:rgba(201,162,93,.07);
  pointer-events:none;user-select:none;
}
.ici-intro-copy p{
  color:#2d4460 !important;
  font-size:17px !important;
  line-height:1.92 !important;
  word-break:keep-all !important;
}
.ici-intro-copy p:first-of-type{
  font-size:17.5px !important;
  color:#182e4a !important;
  font-weight:500 !important;
}
/* CTA button */
.ici-intro-copy .ici-text-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  margin-top:30px !important;
  padding:11px 22px !important;
  color:#0b2a51 !important;
  font-size:13.5px !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
  background:#fff !important;
  border:1.5px solid rgba(11,42,81,.2) !important;
  border-radius:9px !important;
  box-shadow:0 2px 8px rgba(11,42,81,.06) !important;
  transition:background .22s,border-color .22s,color .22s,transform .18s,box-shadow .22s !important;
}
.ici-intro-copy .ici-text-link::after{display:none !important;}
.ici-intro-copy .ici-text-link:hover{
  background:#0b2a51 !important;
  color:#fff !important;
  border-color:#0b2a51 !important;
  transform:translateY(-2px) !important;
  box-shadow:0 8px 22px rgba(11,42,81,.22) !important;
}
.ici-intro-copy .ici-text-link:hover span{
  color:#e3c07a !important;
  transform:translateX(4px) !important;
}

/* ── Notice sales points: card redesign ── */
.ici-notice-sales-points{
  background:linear-gradient(155deg,#040f20 0%,#0a1f3a 50%,#051324 100%) !important;
  padding:32px !important;
  gap:22px !important;
}
/* gold top line */
.ici-notice-sales-points::after{
  display:none !important;
}
.ici-notice-sales-points::before{
  content:'';
  position:absolute;top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#c9a25d,#e8c879 50%,rgba(201,162,93,.1));
  z-index:3;
}
.ici-notice-sales-heading{
  border-bottom:1px solid rgba(255,255,255,.1) !important;
  padding-bottom:18px !important;
}
.ici-notice-sales-heading p{
  color:#c9a25d !important;
  letter-spacing:.2em !important;
  font-size:10.5px !important;
}
.ici-notice-sales-heading h3{
  font-size:clamp(22px,2.2vw,32px) !important;
  line-height:1.25 !important;
  margin-top:8px !important;
}
/* card grid */
.ici-notice-sales-points ol{
  gap:11px !important;
}
.ici-notice-sales-points li{
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.09) !important;
  background:rgba(255,255,255,.05) !important;
  padding:15px 16px 14px 20px !important;
  position:relative !important;
  overflow:hidden !important;
  transition:background .22s,border-color .22s,transform .22s !important;
}
/* left gold accent bar */
.ici-notice-sales-points li::before{
  content:'';
  position:absolute;top:10%;left:0;bottom:10%;
  width:3px;
  background:linear-gradient(180deg,#c9a25d,rgba(201,162,93,.25));
  border-radius:0 3px 3px 0;
  transition:opacity .22s;
}
.ici-notice-sales-points li:hover{
  background:rgba(201,162,93,.1) !important;
  border-color:rgba(201,162,93,.38) !important;
  transform:translateY(-2px) !important;
}
/* number badge */
.ici-notice-sales-points li span{
  display:inline-flex !important;
  align-items:center;justify-content:center;
  width:24px;height:24px;
  background:rgba(201,162,93,.15) !important;
  border:1px solid rgba(201,162,93,.3) !important;
  border-radius:7px !important;
  color:#c9a25d !important;
  font-size:10.5px !important;
  font-weight:900 !important;
  font-family:Georgia,serif !important;
  margin-bottom:9px !important;
}
.ici-notice-sales-points li strong{
  color:#fff !important;
  font-size:14.5px !important;
  letter-spacing:-.03em !important;
  display:block !important;
}
.ici-notice-sales-points li small{
  color:#b0c4da !important;
  font-size:11.5px !important;
  line-height:1.45 !important;
  display:block !important;
  margin-top:5px !important;
}

@media(max-width:760px){
  .ici-intro-copy{
    border-radius:12px !important;
    padding:28px 24px !important;
  }
}

/* ═══════════════════════════════════════
   v52 — Layout Swap: intro copy LEFT, notice image RIGHT
   ═══════════════════════════════════════ */

/* ── Intro section: copy card moves to LEFT, heading to RIGHT ── */
.ici-intro-grid{
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) !important;
}
.ici-intro-copy{
  order:-1 !important;
  /* rounded left corners now (was right) */
  border-radius:20px 0 0 20px !important;
}
/* heading sits right — shift it down slightly to align with card text */
.ici-intro-grid .ici-section-heading{
  padding-top:6px !important;
}

/* ── Notice section: revert to original (사진 LEFT, 글 RIGHT) ── */
.ici-notice-layout{
  grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr) !important;
}
.ici-notice-visual{ order:0 !important; }
.ici-notice-content{ order:0 !important; }

/* ── Intro section intro grid: revert v52 swap (no longer used — new .ici-intro-layout) ── */
.ici-intro-grid{ grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr) !important; }
.ici-intro-copy{ order:0 !important; border-radius:0 20px 20px 0 !important; }
.ici-intro-grid .ici-section-heading{ padding-top:0 !important; }

/* ═══════════════════════════════════════
   v53 — Intro section photo layout (글 LEFT · 사진 RIGHT)
   ═══════════════════════════════════════ */

.ici-intro-section{
  padding:88px 0 !important;
  background:#f4f6f9 !important;
  border-top:1px solid #e7ebf0 !important;
  border-bottom:1px solid #e7ebf0 !important;
}
.ici-intro-layout{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
  overflow:hidden;
  border:1px solid #d9e1e9;
  background:#fff;
  box-shadow:0 18px 42px rgba(16,47,87,.07);
  min-height:460px;
}

/* 텍스트 패널 */
.ici-intro-text{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:62px 58px;
}
.ici-intro-text .ici-overline-dark{
  display:block;
  margin-bottom:14px;
}
.ici-intro-text h2{
  margin:0 0 26px;
  color:#0b2a51;
  font-size:clamp(30px,3.3vw,50px);
  line-height:1.18;
  letter-spacing:-.06em;
  word-break:keep-all;
}
.ici-intro-text p{
  color:#3e5369;
  font-size:17px;
  line-height:1.9;
  margin:0 0 14px;
  word-break:keep-all;
}
/* CTA 버튼 */
.ici-intro-cta{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  margin-top:12px !important;
  padding:12px 24px !important;
  color:#0b2a51 !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:.015em !important;
  background:#fff !important;
  border:1.5px solid rgba(11,42,81,.2) !important;
  border-radius:9px !important;
  box-shadow:0 2px 8px rgba(11,42,81,.06) !important;
  transition:background .22s,border-color .22s,color .22s,transform .18s,box-shadow .22s !important;
  align-self:flex-start !important;
}
.ici-intro-cta::after{ display:none !important; }
.ici-intro-cta:hover{
  background:#0b2a51 !important;
  color:#fff !important;
  border-color:#0b2a51 !important;
  transform:translateY(-2px) !important;
  box-shadow:0 8px 22px rgba(11,42,81,.2) !important;
}
.ici-intro-cta:hover span{ color:#e3c07a !important; transform:translateX(5px) !important; }

/* 사진 패널 */
.ici-intro-visual{
  position:relative;
  overflow:hidden;
  background:#0d2d55;
  min-height:400px;
}
.ici-intro-visual img{
  width:100%;height:100%;
  position:absolute;inset:0;
  object-fit:cover;object-position:center top;
  transition:transform .6s ease;
}
.ici-intro-section:hover .ici-intro-visual img{
  transform:scale(1.05);
}
.ici-intro-visual::after{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(5,22,43,.06) 0%,rgba(5,22,43,.72) 100%);
}
.ici-intro-visual-badge{
  position:absolute;z-index:1;
  left:30px;right:24px;bottom:30px;
  color:#fff;
}
.ici-intro-visual-badge span{
  display:block;
  color:#e7c884;
  font-size:10.5px;font-weight:900;
  letter-spacing:.18em;
  margin-bottom:10px;
  text-transform:uppercase;
}
.ici-intro-visual-badge strong{
  display:block;
  font-size:clamp(22px,2.2vw,30px);
  line-height:1.28;
  letter-spacing:-.05em;
}

/* 모바일 */
@media(max-width:980px){
  .ici-intro-layout{
    grid-template-columns:1fr;
  }
  .ici-intro-visual{ min-height:260px; }
}
@media(max-width:760px){
  .ici-intro-section{ padding:58px 0 !important; }
  .ici-intro-text{ padding:36px 24px; }
  .ici-intro-text h2{ font-size:28px; margin-bottom:18px; }
  .ici-intro-text p{ font-size:15.5px; }
  .ici-intro-visual{ min-height:220px; }
}

/* ═══════════════════════════════════════════════════════
   v54 — 전체 레이아웃 감사·정리
   Container · 섹션 패딩 · Gap · 정렬 통일
   ═══════════════════════════════════════════════════════ */

/* ── 1. Container: 모든 이전 정의 무효화, 1280px 통일 ── */
.container{
  width:min(1280px, calc(100% - 48px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.site-header .container{
  width:min(1380px, calc(100% - 48px)) !important;
}

/* ── 2. 섹션 패딩 통일 (96px) ── */
.ici-authority-hero-inner{
  padding-top:96px !important;
  padding-bottom:96px !important;
}
.ici-notice-featured{  padding:96px 0 !important; }
.ici-intro-section{    padding:96px 0 !important; }
.ici-services-section{ padding:96px 0 !important; }
.ici-strength-section{ padding:96px 0 !important; }
.ici-contact-cta{      padding:96px 0 !important; }
.ici-globe-section{    padding:96px 0 72px !important; }

/* ── 3. 갭 정상화: 10vw → 적당한 값 ── */
.ici-strength-grid{
  gap:clamp(48px, 5.5vw, 88px) !important;
}
.ici-intro-grid{
  gap:clamp(48px, 5.5vw, 88px) !important;
}

/* ── 4. Notice layout: 고정 360px minmax 제거 ── */
.ici-notice-layout{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr) !important;
}
.ici-notice-visual{
  min-height:440px !important;
}

/* ── 5. Hero 내부 최대 폭 ── */
.ici-authority-copy{
  max-width:680px !important;
}

/* ── 6. Services grid: 3col 유지, 카드 최소폭 제거 ── */
.ici-services-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

/* ── 7. Section-heading 최대 폭 제한 ── */
.ici-section-heading-center{
  max-width:700px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.ici-section-heading-center > p:last-child{
  max-width:580px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* ── 8. Stats strip: container 안에서 full-width 유지 ── */
.ici-stats-inner{
  width:100% !important;
}

/* ── 9. Notice content padding ── */
.ici-notice-content{
  padding:50px 54px !important;
}

/* ── 10. Intro layout: 적절한 비율 ── */
.ici-intro-layout{
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) !important;
  min-height:480px !important;
}
.ici-intro-text{
  padding:64px 58px !important;
}

/* ── 11. Globe stage: 컨테이너 안으로 ── */
.ici-globe-stage{
  max-width:860px !important;
  margin:20px auto 0 !important;
}

/* ── 12. Sub-hero (서브페이지): 일관성 ── */
.sub-hero.simple{
  padding:80px 0 64px !important;
}
.sub-hero h1{
  font-size:clamp(32px,4.5vw,52px) !important;
}
.sub-hero p{
  font-size:17px !important;
  max-width:640px !important;
  line-height:1.75 !important;
}

/* ── 13. About page ici-global-card ── */
.ici-global-card{
  max-width:900px !important;
  margin:0 auto !important;
}

/* ── 14. Footer 정렬 ── */
.footer-grid{
  grid-template-columns:1.4fr .9fr .7fr !important;
  gap:40px !important;
}
.footer-grid > div:first-child p{
  max-width:320px !important;
}

/* ── 15. 반응형 정리 ── */
@media(max-width:1120px){
  .ici-notice-content{ padding:40px 38px !important; }
  .ici-intro-text{ padding:48px 44px !important; }
  .ici-services-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:980px){
  .ici-notice-layout{ grid-template-columns:1fr !important; }
  .ici-notice-visual{ min-height:300px !important; }
  .ici-intro-layout{ grid-template-columns:1fr !important; }
  .ici-intro-visual{ min-height:280px !important; }
  .ici-strength-grid{ grid-template-columns:1fr !important; gap:36px !important; }
}
@media(max-width:760px){
  .container{ width:calc(100% - 32px) !important; }
  .site-header .container{ width:calc(100% - 32px) !important; }
  .ici-notice-featured,
  .ici-intro-section,
  .ici-services-section,
  .ici-strength-section,
  .ici-contact-cta,
  .ici-globe-section{ padding:64px 0 !important; }
  .ici-authority-hero-inner{ padding-top:72px !important; padding-bottom:72px !important; }
  .ici-notice-content{ padding:28px 22px !important; }
  .ici-intro-text{ padding:32px 22px !important; }
  .ici-intro-text h2{ font-size:26px !important; }
  .ici-services-grid{ grid-template-columns:1fr !important; }
  .ici-notice-visual{ min-height:220px !important; }
  .footer-grid{ grid-template-columns:1fr !important; gap:28px !important; }
}

/* ── 공지사항 메타 한 줄 정렬 픽스 ── */
/* 태그 + 날짜가 128px 안에서 줄바꿈되는 문제 → 세로 스택으로 해결 */
.ici-notice-featured .ici-notice-item{
  grid-template-columns:auto 1fr 28px !important;
  gap:20px !important;
  align-items:center !important;
}
.ici-notice-featured .ici-notice-meta{
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:5px !important;
  min-width:0 !important;
  flex-shrink:0 !important;
}
.ici-notice-featured .ici-notice-meta b{
  white-space:nowrap !important;
  font-size:11px !important;
  padding:3px 8px !important;
  border-radius:4px !important;
}
/* 날짜 텍스트 (span 또는 직접 텍스트) */
.ici-notice-featured .ici-notice-meta > span,
.ici-notice-featured .ici-notice-meta > time{
  white-space:nowrap !important;
  font-size:11px !important;
  color:#8898aa !important;
  display:block !important;
}
/* 제목 줄바꿈 방지 */
.ici-notice-featured .ici-notice-item strong{
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:15.5px !important;
  display:block !important;
  min-width:0 !important;
}

/* ═══════════════════════════════════════
   v55 — Sub-hero full-background 레이아웃
   전문심사위원단·교육안내 히어로 풀배경
   ═══════════════════════════════════════ */

.sub-hero-full{
  position:relative;
  min-height:560px;
  overflow:hidden;
  background:#071628;
  color:#fff;
  display:flex;
  align-items:center;
}

/* 배경 이미지 */
.sub-hero-bg{
  position:absolute;
  inset:0;
  z-index:0;
}
.sub-hero-bg img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}

/* 다크 그라디언트 오버레이 */
.sub-hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(
      105deg,
      rgba(5,18,38,.93) 0%,
      rgba(7,26,52,.82) 42%,
      rgba(7,26,52,.55) 68%,
      rgba(7,26,52,.22) 100%
    );
}

/* 텍스트 콘텐츠 */
.sub-hero-copy{
  position:relative;
  z-index:2;
  padding:108px 0 !important;
  max-width:1280px;
}
.sub-hero-copy .kicker-gold{
  display:inline-flex;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(201,162,93,.18);
  border:1px solid rgba(201,162,93,.42);
  color:#e3c07a;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  margin-bottom:22px;
}
.sub-hero-copy h1{
  margin:0 0 20px;
  color:#fff !important;
  font-size:clamp(36px,5vw,62px) !important;
  line-height:1.15 !important;
  letter-spacing:-.06em !important;
  word-break:keep-all;
  max-width:680px;
}
.sub-hero-copy p{
  color:rgba(200,218,238,.9) !important;
  font-size:17.5px !important;
  line-height:1.78 !important;
  max-width:520px;
  word-break:keep-all;
}

/* 미세 텍스처 패턴 */
.sub-hero-full::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:1;
  background-image:
    radial-gradient(circle at 72% 45%, rgba(201,162,93,.08) 0%, transparent 55%);
  pointer-events:none;
}

/* 반응형 */
@media(max-width:760px){
  .sub-hero-full{ min-height:420px; }
  .sub-hero-copy{ padding:76px 0 !important; }
  .sub-hero-copy h1{ font-size:clamp(30px,8vw,44px) !important; }
  .sub-hero-copy p{ font-size:15.5px !important; }
  .sub-hero-overlay{
    background:linear-gradient(
      180deg,
      rgba(5,18,38,.88) 0%,
      rgba(7,26,52,.78) 60%,
      rgba(7,26,52,.6) 100%
    );
  }
}

/* ╔══════════════════════════════════════════════════════╗
   ║  v57  심사위원 — 스펙 강조 레이아웃                  ║
   ║  사진 → 아바타 축소 / ISO 자격 · 경력 전면 부각      ║
   ╚══════════════════════════════════════════════════════╝ */

/* ── 대표 심사위원 카드 재설계 ── */
.au-lead{
  display:grid !important;
  grid-template-columns:1fr 1.15fr !important;
  gap:0 !important;
  padding:0 !important;
  border-radius:20px !important;
  overflow:hidden !important;
  border:1px solid rgba(201,162,93,.25) !important;
  box-shadow:0 24px 64px rgba(16,47,87,.1) !important;
}

/* 왼쪽: 사진 + 기본정보 */
.au-lead-left{
  display:flex;
  flex-direction:column;
  padding:44px 40px;
  background:#fff;
  border-right:1px solid rgba(16,47,87,.08);
}
.au-lead-avatar{
  width:88px;height:88px;
  border-radius:50%;
  overflow:hidden;
  border:3px solid rgba(201,162,93,.4);
  flex-shrink:0;
  margin-bottom:18px;
  box-shadow:0 8px 22px rgba(16,47,87,.12);
}
.au-lead-avatar img{
  width:100%;height:100%;
  object-fit:cover;object-position:top center;
  display:block;
}
.au-lead-id .au-kicker{ margin-bottom:6px; }
.au-lead-name{
  font-size:clamp(28px,2.8vw,40px) !important;
  color:#0b2a51 !important;
  letter-spacing:-.07em !important;
  line-height:1.1 !important;
  margin:0 0 18px !important;
}
.au-lead-desc{
  font-size:15px !important;
  color:#4a5e75 !important;
  line-height:1.8 !important;
  margin:0 0 18px !important;
  word-break:keep-all;
}
.au-career{
  margin:0 0 26px !important;
}
.au-career li{
  font-size:14px !important;
  color:#5a7090 !important;
}
.au-lead-btn{
  align-self:flex-start !important;
  margin-top:auto !important;
  font-size:14px !important;
  padding:12px 22px !important;
}

/* 오른쪽: ISO 자격 강조 패널 */
.au-lead-spec{
  padding:40px 44px;
  background:linear-gradient(150deg,#07192f 0%,#0d2a4d 100%);
  display:flex;
  flex-direction:column;
}
.au-spec-label{
  font-size:10.5px !important;
  font-weight:900 !important;
  letter-spacing:.18em !important;
  color:#c9a25d !important;
  text-transform:uppercase;
  margin:0 0 14px !important;
}
.au-tags-lead{
  margin-bottom:28px !important;
}
.au-tags-lead span{
  font-size:13px !important;
  font-weight:900 !important;
  padding:6px 12px !important;
  background:rgba(255,255,255,.09) !important;
  border:1px solid rgba(201,162,93,.3) !important;
  color:#e8c87a !important;
  border-radius:6px !important;
}
.au-tags-lead span:hover{
  background:rgba(201,162,93,.22) !important;
  border-color:rgba(201,162,93,.6) !important;
}

/* 규격별 하이라이트 카드 그리드 */
.au-lead-spec-highlight{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin-top:auto;
}
.au-lead-spec-highlight > div{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  padding:12px 10px;
  text-align:center;
}
.au-lead-spec-highlight span{
  display:block;
  font-size:10px;
  color:#7da5c8;
  font-weight:700;
  letter-spacing:.04em;
  margin-bottom:5px;
}
.au-lead-spec-highlight strong{
  display:block;
  font-size:13px;
  color:#fff;
  font-weight:900;
  letter-spacing:-.02em;
}

/* ── 그리드 카드 재설계 ── */
.au-card{
  flex-direction:column !important;
  border-radius:16px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid #dce4ee !important;
  box-shadow:0 6px 22px rgba(16,47,87,.055) !important;
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease !important;
}
.au-card:hover{
  transform:translateY(-6px) !important;
  box-shadow:0 24px 52px rgba(16,47,87,.11) !important;
  border-color:rgba(201,162,93,.35) !important;
}

/* 카드 헤더: 아바타 + 이름 가로 배치 */
.au-card-head{
  display:flex;
  align-items:center;
  gap:14px;
  padding:20px 20px 16px;
  border-bottom:1px solid #edf1f7;
  background:linear-gradient(135deg,#f8fafc,#f3f7fb);
}
.au-card-avatar{
  width:58px;height:58px;
  flex-shrink:0;
  border-radius:50%;
  overflow:hidden;
  border:2px solid rgba(201,162,93,.35);
  box-shadow:0 4px 12px rgba(16,47,87,.1);
}
.au-card-avatar img{
  width:100%;height:100%;
  object-fit:cover;object-position:top center;
  display:block;
}
.au-card-head .au-kicker{
  font-size:10px !important;
  letter-spacing:.12em !important;
  margin-bottom:4px !important;
  color:#9a7432 !important;
}
.au-card-head .au-name{
  font-size:20px !important;
  color:#0b2a51 !important;
  letter-spacing:-.05em !important;
  line-height:1.15 !important;
  margin:0 !important;
}

/* 카드 바디: 스펙이 전면 */
.au-card-body{
  padding:18px 20px 22px !important;
  display:flex;
  flex-direction:column;
  flex:1;
  background:#fff;
}
.au-card-spec{
  font-size:14px !important;
  font-weight:800 !important;
  color:#1a3a5c !important;
  line-height:1.45 !important;
  margin:0 0 14px !important;
  word-break:keep-all !important;
}
.au-card-body .au-spec-label{
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.14em !important;
  color:#9a7432 !important;
  margin:0 0 8px !important;
  text-transform:uppercase;
}
.au-card-body .au-tags{
  margin-bottom:0 !important;
  gap:5px !important;
}
.au-card-body .au-tags span{
  font-size:11.5px !important;
  font-weight:900 !important;
  padding:4px 10px !important;
  background:#eef3fa !important;
  border:1px solid rgba(26,79,138,.18) !important;
  color:#1a4a7e !important;
  border-radius:5px !important;
  transition:background .18s,color .18s !important;
}
.au-card-body .au-tags span:hover{
  background:#1a4a7e !important;
  color:#fff !important;
}

/* 카드 프로필 버튼 */
.au-card-detail-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-top:16px;
  padding:0;
  border:0;
  background:none;
  color:#0b2a51;
  font:inherit;
  font-size:13px;
  font-weight:900;
  letter-spacing:-.01em;
  cursor:pointer;
  transition:color .18s ease,gap .18s ease;
}
.au-card-detail-btn:hover{
  color:#c9a25d;
  gap:10px;
}

/* 기존 au-card-img, au-card-overlay-btn 숨기기 */
.au-card-img{ display:none !important; }
.au-card-overlay-btn{ display:none !important; }

/* ── 반응형 ── */
@media(max-width:980px){
  .au-lead{ grid-template-columns:1fr !important; }
  .au-lead-spec{ border-top:1px solid rgba(255,255,255,.08); }
  .au-lead-spec-highlight{ grid-template-columns:repeat(4,1fr) !important; }
}
@media(max-width:760px){
  .au-lead-left{ padding:32px 26px; }
  .au-lead-spec{ padding:28px 26px; }
  .au-lead-spec-highlight{ grid-template-columns:repeat(2,1fr) !important; }
  .au-card-head{ padding:16px; }
  .au-card-body{ padding:14px 16px 18px !important; }
  .au-card-avatar{ width:50px;height:50px; }
  .au-card-head .au-name{ font-size:18px !important; }
}

/* ── 메인 히어로 세로 20% 확장 (680px → 820px) ── */
.ici-authority-hero{
  min-height:820px !important;
}
.ici-authority-hero-inner{
  min-height:820px !important;
  padding-top:116px !important;
  padding-bottom:116px !important;
}
@media(max-width:1120px){
  .ici-authority-hero,
  .ici-authority-hero-inner{ min-height:700px !important; }
  .ici-authority-hero-inner{ padding-top:96px !important; padding-bottom:96px !important; }
}
@media(max-width:760px){
  .ici-authority-hero,
  .ici-authority-hero-inner{ min-height:540px !important; }
  .ici-authority-hero-inner{ padding-top:80px !important; padding-bottom:80px !important; }
}

/* ╔══════════════════════════════════════════════════════╗
   ║  v56  최종 디자인 폴리싱                              ║
   ║  타이포그래피 · 색감 · 줄바꿈 · 시인성 통합 정리     ║
   ╚══════════════════════════════════════════════════════╝ */

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   01. 글로벌 렌더링 & 기반 타이포
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
html{
  -webkit-text-size-adjust:100%;
}
body{
  -webkit-font-smoothing:antialiased !important;
  -moz-osx-font-smoothing:grayscale !important;
  font-size:16px !important;
  line-height:1.75 !important;
  color:#1e3349 !important;
}
h1,h2,h3,h4{
  word-break:keep-all !important;
}
p{
  word-break:keep-all !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   02. 헤더 & 내비
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.site-header{
  background:rgba(255,255,255,.97) !important;
  border-bottom:1px solid rgba(223,231,241,.8) !important;
}
.header-inner{ height:70px !important; }
.nav > a, .nav-parent{
  font-size:14.5px !important;
  font-weight:800 !important;
  color:#2e4360 !important;
  letter-spacing:-.01em !important;
}
.nav > a.active, .nav > a:hover,
.nav-parent.active, .nav-dropdown.active .nav-parent{
  color:#0b2a51 !important;
}
.header-phone{
  font-size:14.5px !important;
  letter-spacing:.02em !important;
  color:#0b2a51 !important;
}
.btn.small{
  font-size:13.5px !important;
  padding:10px 18px !important;
  border-radius:8px !important;
  letter-spacing:-.01em !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   03. 히어로 섹션
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-authority-copy h1{
  font-size:clamp(40px,5vw,70px) !important;
  line-height:1.11 !important;
  letter-spacing:-.07em !important;
}
.ici-authority-copy h1 strong{
  color:#e8c87a !important;
}
.ici-authority-lead{
  font-size:clamp(16px,1.35vw,19px) !important;
  line-height:1.88 !important;
  color:rgba(215,232,248,.92) !important;
  max-width:600px !important;
}
.ici-overline{
  font-size:11px !important;
  letter-spacing:.2em !important;
  color:#d8b96a !important;
  font-weight:900 !important;
}
.ici-overline-dark{
  color:#9a7432 !important;
  letter-spacing:.16em !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   04. 스탯 스트립
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-stats-strip{
  background:linear-gradient(135deg,#050f1e 0%,#091d39 100%) !important;
  border-bottom:1px solid rgba(201,162,93,.22) !important;
}
.ici-stat-item{ padding:34px 20px !important; }
.ici-stat-num{
  font-size:48px !important;
  color:#e8c87a !important;
  letter-spacing:-.04em !important;
  line-height:1 !important;
}
.ici-stat-num small{
  font-size:.42em !important;
  color:#c9a25d !important;
  vertical-align:super !important;
  line-height:1 !important;
}
.ici-stat-label{
  margin-top:10px !important;
  font-size:12.5px !important;
  color:rgba(195,215,236,.72) !important;
  letter-spacing:.01em !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   05. 공지사항 메인 섹션
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-notice-layout{
  border-radius:0 !important;
  border:1px solid #d0dae6 !important;
  box-shadow:0 20px 56px rgba(16,47,87,.08) !important;
}
.ici-notice-content{ padding:50px 54px !important; }
.ici-notice-heading h2{
  font-size:clamp(26px,2.8vw,38px) !important;
  letter-spacing:-.07em !important;
  color:#0b2a51 !important;
}
.ici-notice-heading p:last-child{
  font-size:15px !important;
  line-height:1.7 !important;
  color:#62748a !important;
  margin-top:10px !important;
}
.ici-notice-item strong{
  font-size:16px !important;
  letter-spacing:-.03em !important;
  color:#162e4a !important;
}
.ici-notice-meta b{
  font-size:10.5px !important;
  letter-spacing:.01em !important;
}
/* 판매 포인트 heading */
.ici-notice-sales-heading h3{
  font-size:clamp(20px,2vw,28px) !important;
  line-height:1.22 !important;
  letter-spacing:-.06em !important;
  color:#fff !important;
}
.ici-notice-sales-heading p{
  font-size:10px !important;
  letter-spacing:.22em !important;
}
.ici-notice-sales-points li strong{
  font-size:14px !important;
  letter-spacing:-.02em !important;
}
.ici-notice-sales-points li small{
  font-size:11.5px !important;
  color:#a2b8ce !important;
  line-height:1.5 !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   06. 인트로 섹션 (표준의 가치를)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-intro-section{
  padding:96px 0 !important;
  background:#fff !important;
  border-top:none !important;
  border-bottom:none !important;
}
.ici-intro-layout{
  border:1px solid #dde5ef !important;
  box-shadow:0 20px 56px rgba(16,47,87,.07) !important;
  min-height:480px !important;
}
.ici-intro-text{
  padding:64px 60px !important;
}
.ici-intro-text h2{
  font-size:clamp(28px,3.2vw,46px) !important;
  line-height:1.2 !important;
  letter-spacing:-.07em !important;
  color:#0b2a51 !important;
  margin-bottom:24px !important;
}
.ici-intro-text p{
  font-size:16.5px !important;
  line-height:1.92 !important;
  color:#445868 !important;
  margin-bottom:12px !important;
}
.ici-intro-cta{
  margin-top:20px !important;
  padding:13px 26px !important;
  font-size:14.5px !important;
  border-radius:8px !important;
  letter-spacing:-.01em !important;
}
.ici-intro-visual-badge{
  left:28px !important; bottom:28px !important;
}
.ici-intro-visual-badge span{
  font-size:10px !important;
  letter-spacing:.2em !important;
  color:#e0c07a !important;
  margin-bottom:8px !important;
}
.ici-intro-visual-badge strong{
  font-size:17px !important;
  line-height:1.38 !important;
  letter-spacing:-.04em !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   07. 서비스 섹션
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-services-section{
  padding:96px 0 !important;
  background:#f4f6f9 !important;
  border-top:1px solid #e8ecf2 !important;
  border-bottom:1px solid #e8ecf2 !important;
}
.ici-section-heading-center h2{
  font-size:clamp(26px,3vw,42px) !important;
  letter-spacing:-.07em !important;
  color:#0b2a51 !important;
}
.ici-section-heading-center > p:last-child{
  font-size:16.5px !important;
  color:#566a80 !important;
  line-height:1.78 !important;
}
.ici-service-card{
  padding:34px 30px !important;
  min-height:240px !important;
}
.ici-service-card h3{
  font-size:20px !important;
  letter-spacing:-.045em !important;
  color:#0d2a50 !important;
}
.ici-service-card p{
  font-size:14.5px !important;
  line-height:1.72 !important;
  color:#5a7090 !important;
}
.ici-service-card > span{
  font-size:12.5px !important;
  color:#a87d38 !important;
  margin-bottom:32px !important;
}
.ici-service-card:hover h3{ color:#fff !important; }
.ici-service-card:hover p{ color:#c0d8ee !important; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   08. 강점 섹션
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-strength-section{
  padding:104px 0 !important;
  background:linear-gradient(135deg,#06192f 0%,#0a2444 100%) !important;
}
.ici-strength-copy h2{
  font-size:clamp(30px,3.5vw,52px) !important;
  line-height:1.15 !important;
  letter-spacing:-.07em !important;
  color:#fff !important;
}
.ici-strength-copy > p{
  font-size:16.5px !important;
  line-height:1.9 !important;
  color:#b0c5da !important;
  margin-top:22px !important;
}
.ici-strength-list h3{
  font-size:19.5px !important;
  letter-spacing:-.04em !important;
  color:#fff !important;
  line-height:1.25 !important;
}
.ici-strength-list p{
  font-size:15px !important;
  line-height:1.75 !important;
  color:#98b0c6 !important;
  margin-top:8px !important;
}
.ici-strength-list span{
  color:#c8a254 !important;
  font-size:16px !important;
}
.ici-strength-list article{
  padding:26px 0 !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   09. CTA 섹션
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-contact-cta{
  padding:96px 0 !important;
  background:linear-gradient(135deg,#071526 0%,#0c2848 100%) !important;
}
.ici-contact-cta h2{
  font-size:clamp(26px,3.3vw,46px) !important;
  line-height:1.18 !important;
  letter-spacing:-.07em !important;
  color:#fff !important;
}
.ici-contact-cta p:last-child{
  font-size:16.5px !important;
  line-height:1.82 !important;
  color:#c0d3e6 !important;
  margin-top:14px !important;
}
.ici-telephone{
  font-size:22px !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
}
.ici-telephone small{
  font-size:11px !important;
  letter-spacing:.1em !important;
  color:#c9a25d !important;
  margin-bottom:3px !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   10. 서브히어로 (sub-hero-full) 시인성
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.sub-hero-copy h1{
  text-shadow:0 2px 24px rgba(0,0,0,.35) !important;
  letter-spacing:-.07em !important;
}
.sub-hero-copy p{
  text-shadow:0 1px 14px rgba(0,0,0,.28) !important;
  font-size:17px !important;
  line-height:1.82 !important;
}
.kicker-gold{
  font-size:11px !important;
  letter-spacing:.16em !important;
  padding:7px 16px !important;
  border-radius:999px !important;
}
/* simple sub-hero (텍스트만) */
.sub-hero.simple{
  background:linear-gradient(135deg,#f6f9fc 0%,#eef3f8 100%) !important;
  padding:80px 0 60px !important;
}
.sub-hero.simple h1{
  font-size:clamp(30px,4.2vw,50px) !important;
  letter-spacing:-.07em !important;
  color:#0b2a51 !important;
}
.sub-hero.simple p{
  font-size:17px !important;
  line-height:1.8 !important;
  color:#52677f !important;
  margin-top:14px !important;
}
.sub-hero.simple .kicker{
  color:#7a5e28 !important;
  background:linear-gradient(135deg,#f5ede0,#faf4eb) !important;
  border:1px solid rgba(201,162,93,.3) !important;
  font-size:11.5px !important;
  letter-spacing:.1em !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   11. ISO 카드 / 그리드
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.iso-card-body h3{
  font-size:19.5px !important;
  letter-spacing:-.045em !important;
  color:#0c2a50 !important;
  line-height:1.25 !important;
}
.iso-card-body p{
  font-size:14.5px !important;
  line-height:1.68 !important;
  color:#55708a !important;
  min-height:0 !important;
}
.iso-card-body b{
  font-size:12.5px !important;
  color:#8a6628 !important;
  letter-spacing:.05em !important;
  margin-bottom:8px !important;
}
.iso-card-body em{
  font-size:13.5px !important;
  color:#7a5c2c !important;
  margin-top:14px !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   12. 신뢰 스트립
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.trust-mark{
  padding:22px 20px !important;
}
.trust-mark b{
  font-size:15px !important;
  letter-spacing:-.03em !important;
  color:#0b2a51 !important;
}
.trust-mark p{
  font-size:13.5px !important;
  line-height:1.65 !important;
  color:#5a728a !important;
}
.mark-icon{
  font-size:18px !important;
  min-width:40px !important;
  height:40px !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   13. 버튼 최종 정리
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ici-button{
  border-radius:6px !important;
  font-size:14.5px !important;
  letter-spacing:-.01em !important;
}
.ici-button-gold{
  background:linear-gradient(135deg,#cfa957 0%,#b89043 100%) !important;
  color:#0a2236 !important;
  font-weight:900 !important;
  box-shadow:0 12px 28px rgba(0,0,0,.24) !important;
  padding:15px 28px !important;
}
.ici-button-gold:hover{
  background:linear-gradient(135deg,#dfbd72 0%,#c9a254 100%) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.3) !important;
  transform:translateY(-2px) !important;
}
.ici-button-navy{
  background:linear-gradient(135deg,#0a2848 0%,#18487a 100%) !important;
  color:#fff !important;
  padding:15px 28px !important;
}
.ici-button-navy:hover{
  background:linear-gradient(135deg,#0e3259,#1f5891) !important;
  transform:translateY(-2px) !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   14. 섹션 제목 공통 (section-head)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.section-head h2{
  font-size:clamp(24px,2.8vw,38px) !important;
  letter-spacing:-.065em !important;
  color:#0b2a51 !important;
  line-height:1.22 !important;
}
.section-head p{
  font-size:16px !important;
  line-height:1.78 !important;
  color:#54697e !important;
  margin-top:12px !important;
}
.section-head span{
  font-size:11px !important;
  letter-spacing:.12em !important;
  color:#9a7432 !important;
  font-weight:900 !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   15. 공지사항 / 게시판
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.notice-board-card h2{
  font-size:20px !important;
  letter-spacing:-.045em !important;
  color:#0b2a51 !important;
}
.notice-board-card p{
  font-size:14.5px !important;
  line-height:1.65 !important;
  color:#607080 !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   16. 푸터
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.footer{
  background:#070f1d !important;
  padding:60px 0 0 !important;
}
.footer h3{
  font-size:16.5px !important;
  letter-spacing:-.03em !important;
  margin-bottom:14px !important;
  color:#fff !important;
}
.footer h4{
  font-size:11px !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:#c9a25d !important;
  margin-bottom:16px !important;
}
.footer p, .footer a{
  font-size:14px !important;
  line-height:1.95 !important;
  color:#8ba0b6 !important;
}
.footer a:hover{ color:#e0c07a !important; }
.copyright{
  font-size:12.5px !important;
  color:#485f74 !important;
  padding:20px 0 !important;
  margin-top:40px !important;
  border-top:1px solid rgba(255,255,255,.07) !important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   17. 반응형 최종 보정
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media(max-width:980px){
  .ici-notice-content{ padding:38px 36px !important; }
  .ici-intro-text{ padding:50px 44px !important; }
}
@media(max-width:760px){
  .ici-authority-copy h1{ font-size:clamp(34px,10vw,46px) !important; }
  .ici-authority-lead{ font-size:15.5px !important; line-height:1.82 !important; }
  .ici-stat-num{ font-size:38px !important; }
  .ici-stat-label{ font-size:12px !important; }
  .ici-notice-content{ padding:28px 22px !important; }
  .ici-intro-text{ padding:38px 28px !important; }
  .ici-intro-text h2{ font-size:28px !important; }
  .ici-intro-text p{ font-size:15.5px !important; line-height:1.82 !important; }
  .ici-section-heading-center h2{ font-size:26px !important; }
  .ici-strength-copy h2{ font-size:28px !important; }
  .ici-contact-cta h2{ font-size:26px !important; }
  .ici-contact-cta p:last-child{ font-size:15.5px !important; }
  .sub-hero-copy h1{ font-size:clamp(28px,8vw,38px) !important; }
  .sub-hero-copy p{ font-size:15.5px !important; }
  .section-head h2{ font-size:26px !important; }
  .footer h3{ font-size:15.5px !important; }
}

