
:root{--navy:#102f4b;--navy2:#173f60;--blue:#17699f;--ink:#18344d;--muted:#4f6476;--line:#d3e0e9;--pale:#eef4f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'Malgun Gothic','Apple SD Gothic Neo',Arial,sans-serif;line-height:1.7;background:white}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}img{max-width:100%;display:block}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}.top{background:#fff;border-bottom:1px solid #dce5ed}.nav{min-height:94px;display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:58px;height:70px;object-fit:contain}.brand strong{font-size:23px;letter-spacing:-.8px;color:var(--navy);display:block;line-height:1.25}.brand small{font-size:9px;font-weight:800;letter-spacing:1.8px;color:var(--blue);display:block}nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:750}nav a{padding:10px 0;border-bottom:3px solid transparent}nav a.active{border-bottom-color:var(--blue);color:var(--blue)}.eyebrow{display:block;color:#b5d5eb;letter-spacing:2.2px;font-size:11px;font-weight:800}.eyebrow.blue{color:var(--blue)}h1,h2,h3{line-height:1.35;letter-spacing:-.8px}h2{font-size:clamp(25px,2.8vw,31px);margin:12px 0 16px;color:var(--navy)}.hero{background:linear-gradient(115deg,#102e49 0%,#173f60 78%,#205477);color:white;overflow:hidden}.hero-layout{min-height:455px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding:52px 0}.hero h1{font-size:clamp(32px,4vw,48px);margin:18px 0 20px;letter-spacing:-1.8px}.hero p{font-size:15px;color:#d7e7f2;max-width:470px}.hero-visual{position:relative;min-width:0}.hero-visual:before{content:'';position:absolute;inset:-14px 18px 14px -14px;border:1px solid #79b4d877;pointer-events:none}.hero-visual img{width:100%;height:310px;object-fit:cover;object-position:center 43%;filter:contrast(1.07)}.image-tag{position:absolute;bottom:0;right:0;background:#0c2c48e8;color:#e5f1fa;padding:9px 16px;font-size:10px;letter-spacing:1.7px;font-weight:800}.button{display:inline-block;padding:12px 20px;margin-top:20px;font-size:13px;font-weight:800;transition:.2s}.button.light{border:1px solid #b8d4e5;color:white}.button.light:hover{background:white;color:var(--navy)}.button.dark{background:var(--navy);color:white}.button.dark:hover{background:var(--blue);color:white}.section{padding:78px 0}.section-heading{margin-bottom:28px}.section-heading h2{margin-bottom:8px}.section-heading p{margin:0;color:var(--muted);font-size:14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{position:relative;display:block;background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue);padding:27px;min-height:215px;box-shadow:0 7px 25px #173b5b0b;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-5px);box-shadow:0 14px 30px #173b5b20}.card-icon{float:right;display:flex;justify-content:center;align-items:center;width:52px;height:52px;border-radius:12px;background:#e8f2f9;color:#155987;font-size:31px;font-weight:800}.card-num{font-size:10px;letter-spacing:1.5px;color:var(--blue);font-weight:800}.card h3{margin:29px 0 9px;font-size:22px;color:var(--navy)}.card h3 span{color:var(--blue)}.card p{font-size:13px;color:var(--muted);margin:0}.feature-band{background:var(--pale);padding:64px 0}.feature-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center}.feature-photo img{height:290px;width:100%;object-fit:cover}.feature-copy p{color:var(--muted)}.text-link{color:var(--blue);font-weight:800;font-size:14px}.contact-strip-inner{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.contact-strip p{color:var(--muted);font-size:14px}.contact-short{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.contact-short>a:first-child{font-size:26px;font-weight:800;color:var(--navy)}.contact-short span{font-size:13px;color:var(--muted)}.contact-short>a:nth-child(3){color:var(--blue)}.subhero{background:linear-gradient(105deg,#dce9f3,#eef4f8 80%);padding:67px 0;border-bottom:1px solid #cfdeea;position:relative;overflow:hidden}.subhero:after{content:'';position:absolute;width:220px;height:220px;right:8%;top:-125px;border:35px solid #2c77a21a;transform:rotate(45deg)}.subhero .eyebrow{color:#35769f}.subhero h1{font-size:clamp(32px,4vw,42px);color:var(--navy);margin:9px 0 12px}.subhero p{color:#465f73;margin:0}.company-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:center}.company-intro p{color:var(--muted)}figure{margin:0}.company-intro figure img{width:100%;height:280px;object-fit:cover}.company-intro figcaption{color:var(--muted);font-size:12px;margin-top:8px}.history-section{background:var(--pale)}.timeline{border-left:3px solid #a9c5d9;padding:5px 0 0 32px;margin:30px 0 0 8px;max-width:750px}.event{position:relative;display:grid;grid-template-columns:82px 1fr;gap:16px;margin:0 0 23px}.event:before{content:'';position:absolute;left:-41px;top:10px;width:13px;height:13px;border-radius:50%;background:var(--blue);border:3px solid var(--pale);box-shadow:0 0 0 1px #8aafc9}.event strong{color:var(--navy)}.event p{margin:0;color:#40576a}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:23px}.product{border:1px solid var(--line);background:#fff;box-shadow:0 6px 20px #12334f0b;overflow:hidden}.product-visual{height:184px;background:#e4eef6;overflow:hidden}.product-visual img{height:100%;width:100%;object-fit:cover;object-position:center 40%}.product-visual.symbol-visual{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e4eff7,#d5e6f2)}.product-visual svg{height:100%;width:100%;max-width:350px}.product-body{padding:24px 28px 28px;border-top:4px solid var(--blue)}.product-number{font-size:10px;letter-spacing:1.4px;color:var(--blue);font-weight:800}.product h3{color:var(--navy);font-size:22px;margin:7px 0 13px}.product ul{padding-left:20px;margin:0;font-size:14px;color:#435c70}.product li{margin-bottom:5px}.notice{margin-top:28px;padding:22px 25px;background:var(--pale);border-left:4px solid var(--blue)}.notice strong{color:var(--navy)}.notice p{font-size:14px;margin:5px 0 0}.notice a{color:var(--blue);font-weight:800}.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:25px}.panel{border:1px solid var(--line);border-top:4px solid var(--blue);padding:35px;box-shadow:0 6px 22px #12334f0b}.panel h2{margin:10px 0 27px}.facts{display:grid;grid-template-columns:90px 1fr;gap:19px 15px;margin:0}.facts dt{font-weight:800;color:var(--navy)}.facts dd{margin:0;color:#3c5569;overflow-wrap:anywhere}.facts dd a{color:var(--blue)}.large-hour{font-size:22px;font-weight:800;color:var(--navy)}.hours{padding:22px;background:#eaf2f8;border-left:4px solid var(--blue);margin:25px 0}.hours strong{color:var(--navy);font-size:18px}.hours p{color:var(--muted);font-size:13px;margin:5px 0 0}.muted{color:var(--muted);font-size:14px}.footer{background:#0e2a42;color:#e1eaf0;padding:32px 0;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:25px}.footer strong{font-size:18px}.footer p{margin:6px 0;color:#bcd0df}.footer a{color:#e1eaf0}@media(max-width:800px){.hero-layout{grid-template-columns:1fr;gap:30px}.hero-visual img{height:300px}.feature-grid,.company-intro,.contact-strip-inner{grid-template-columns:1fr;gap:26px}.cards{grid-template-columns:1fr}.card{min-height:170px}.card h3{margin-top:20px}.nav{gap:18px}nav{gap:16px}}@media(max-width:600px){.wrap{width:calc(100% - 34px)}.nav{flex-direction:column;align-items:flex-start;padding:13px 0}.brand img{height:55px;width:48px}.brand strong{font-size:20px}nav{gap:20px;flex-wrap:wrap;font-size:13px}.hero-layout{padding:43px 0}.hero-visual img{height:230px}.section{padding:48px 0}.feature-band{padding:48px 0}.product-grid,.contact-panel{grid-template-columns:1fr}.product-visual{height:170px}.panel{padding:24px}.footer-inner{flex-direction:column}.subhero{padding:45px 0}.event{grid-template-columns:62px 1fr;gap:12px}.timeline{padding-left:25px}.event:before{left:-34px}.company-intro figure img{height:220px}}

/* V4: photographs removed; unified vector illustration system. */
:root{--navy:#102f4b;--navy2:#173f60;--blue:#17699f;--line:#cbdde9;--pale:#edf4f8}
.hero{background:radial-gradient(circle at 80% 25%,#23567a 0%,#173f60 36%,#102e49 88%)}
.hero-layout{min-height:454px;gap:55px}
.hero-visual{width:100%;min-width:0}
.hero-visual:before{display:none}
.hero-graphic{position:relative;box-shadow:0 22px 50px #061d3259;background:linear-gradient(150deg,#1d5275,#143b59);border:1px solid #5588a78a;border-radius:6px;overflow:hidden}
.graphic-head,.graphic-footer{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;color:#c2e3f8;font:700 10px/1.5 Arial,sans-serif;letter-spacing:1.35px;background:#102f4b91}
.status-dot{display:inline-block;vertical-align:middle;background:#77bde9;width:7px;height:7px;border-radius:50%;margin-right:5px}
.graphic-dots{font-size:9px;letter-spacing:4px;color:#6faaca}
.graphic-footer{font-size:9px;color:#d2eaf8;gap:6px}
.hero-schematic{width:100%;height:auto;display:block;padding:14px 12px 4px}
.hero-graphic:after{content:'';position:absolute;right:-75px;bottom:-105px;width:210px;height:210px;border:1px solid #aad9f840;border-radius:50%;pointer-events:none}
.card-icon svg{width:28px;height:28px;display:block;color:#155987}
.card-icon{float:right}
.feature-grid{grid-template-columns:1fr 1fr;gap:75px}
.feature-illustration{height:270px;position:relative;background:linear-gradient(140deg,#dceaf4,#ecf5fa);border:1px solid #d0e0ec;overflow:hidden;display:grid;place-items:center}
.feature-core{width:64%;max-width:340px;z-index:2}.feature-core .icon-art{width:100%;height:auto;filter:drop-shadow(0 10px 15px #245d8925)}
.feature-orbit{position:absolute;border:1px solid #9bc0db;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.orbit-one{width:280px;height:280px}.orbit-two{width:405px;height:405px;opacity:.45}
.feature-label{position:absolute;z-index:3;display:inline-block;background:#fff;border:1px solid #bed6e6;color:#27628b;font:700 10px Arial,sans-serif;letter-spacing:1px;padding:8px 12px;box-shadow:0 4px 13px #0d3b5a12}
.tag-a{left:7%;top:16%}.tag-b{right:6%;top:24%}.tag-c{bottom:13%;left:12%}
.company-intro{grid-template-columns:1fr 1fr;gap:70px}
.company-illustration{position:relative;min-height:310px;background:linear-gradient(140deg,#e3f0f8,#cddfed);border:1px solid #bbd2e3;overflow:hidden;padding:25px}
.company-illustration:before{content:'';position:absolute;top:-93px;right:-85px;width:240px;height:240px;border:1px solid #7caacf;border-radius:50%;opacity:.55}
.intro-corner{font:800 11px Arial,sans-serif;letter-spacing:1.8px;color:#2c6d9c;position:relative;z-index:1}
.intro-visual{display:grid;place-items:center;height:186px;position:relative;z-index:2}.intro-visual svg{width:min(100%,360px);height:100%}
.intro-baseline{display:flex;align-items:flex-end;gap:18px;position:relative;z-index:2;border-top:1px solid #97b9d1;padding-top:10px}
.intro-baseline strong{font:800 48px/1 Arial,sans-serif;letter-spacing:-2px;color:#174d74}
.intro-baseline span{font:700 10px/1.55 Arial,sans-serif;letter-spacing:1.1px;color:#417799}
.product-visual{height:184px}
.product-visual.symbol-visual{position:relative;background:linear-gradient(130deg,#e8f3f9,#d6e8f3);border-bottom:1px solid #c4dbea}
.product-visual .icon-art{position:relative;z-index:1;width:100%;max-width:350px;height:100%;filter:drop-shadow(0px 4px 5px #36698b1b)}
.visual-corner{position:absolute;z-index:2;top:18px;left:23px;font:800 11px Arial,sans-serif;color:#5380a3;letter-spacing:2px}
.visual-deco{position:absolute;width:125px;height:125px;right:-50px;top:-72px;border:1px solid #9ec3dc;border-radius:50%}
.product-body{border-top:4px solid var(--blue)}
.panel{position:relative}.panel-icon{position:absolute;top:26px;right:30px;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#e8f2f9;color:#155987}.panel-icon svg{width:28px;height:28px}
@media(max-width:800px){.hero-layout{gap:32px}.feature-grid,.company-intro{grid-template-columns:1fr;gap:28px}.feature-illustration{height:250px}}
@media(max-width:600px){.hero-layout{gap:20px}.hero-visual{max-width:500px}.hero-graphic .graphic-head{font-size:8px;padding:8px 11px}.graphic-footer{font-size:7px;padding:8px 11px}.hero-schematic{padding:6px}.feature-illustration{height:220px}.company-illustration{min-height:270px;padding:20px}.intro-visual{height:153px}.intro-baseline strong{font-size:39px}.product-visual{height:170px}.panel-icon{top:21px;right:21px;width:40px;height:40px}.panel-icon svg{width:25px;height:25px}}


/* V5: Equalized contact/footer typography, tidy company overview without illustration. */
.company-profile{padding:84px 0 90px}
.company-intro{display:grid;grid-template-columns:1fr 1.08fr;align-items:start;gap:84px}
.company-intro-heading h2{font-size:clamp(28px,3vw,36px);line-height:1.38;margin:17px 0 0}
.company-intro-content{padding-top:23px}
.company-intro-content > p{font-size:16px;line-height:2;margin:0;color:#3d566a}
.company-keyfacts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:34px;padding-top:24px;border-top:2px solid #d8e7f1}
.company-keyfacts div{display:grid;gap:5px}
.company-keyfacts span{font-size:12px;font-weight:800;letter-spacing:.3px;color:#52738b}
.company-keyfacts strong{font-size:17px;line-height:1.45;color:var(--navy)}
.contact-strip{padding:72px 0 76px}
.contact-strip-inner{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.contact-strip-title h2{margin-top:13px}
.contact-strip-title p{margin:17px 0 0;font-size:15px;line-height:1.9;color:#425e73}
.contact-strip-title p strong{color:#234d6c;font-weight:700}
.contact-short{display:block;padding:0;min-width:0}
.contact-list{display:grid;gap:0;border-top:2px solid #d6e5ee}
.contact-line{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:baseline;gap:18px;padding:9px 0;border-bottom:1px solid #e4edf3;font-size:15px;line-height:1.6}
.contact-line > span:first-child{color:#536d80;font-size:14px;font-weight:700}
.contact-line > span:nth-child(2),.contact-line a{font-size:16px;font-weight:650;color:var(--navy);overflow-wrap:anywhere}
.contact-line a:hover{color:var(--blue)}
.contact-short .contact-more{font-size:13px;margin-top:19px;padding:11px 18px}
.footer{background:#102f4b;color:#e8f1f8;padding:54px 0 0;font-size:14px;line-height:1.75}
.footer-inner{display:grid;grid-template-columns:1.16fr 1.15fr 1fr;gap:46px;align-items:start}
.footer-kicker{display:block;font-size:11px;color:#a6cce5;letter-spacing:2px;font-weight:800;margin-bottom:5px}
.footer .footer-name{display:block;font-size:24px;color:#fff;line-height:1.5}
.footer-descriptor{font-size:14px;max-width:260px;line-height:1.85}
.footer .footer-block h2{color:#fff;margin:2px 0 16px;font-size:16px;letter-spacing:0;line-height:1.5;font-weight:800}
.footer-facts{display:grid;grid-template-columns:55px minmax(0,1fr);gap:11px 9px;margin:0;font-size:14px}
.footer-facts dt{color:#a9c8dc;font-weight:700;white-space:nowrap}
.footer-facts dd{margin:0;overflow-wrap:anywhere;color:#ecf4fa}
.footer-facts a{color:#ecf4fa}
.footer-facts a:hover{color:#9cd4f4}
.footer-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:38px;padding:18px 0;border-top:1px solid #ffffff2b;font-size:12px;color:#bed2e1;line-height:1.7}
.footer-separator{margin:0 5px;color:#729cb8}
@media(max-width:900px){.footer-inner{gap:26px;grid-template-columns:1fr 1.1fr}.footer-about{grid-column:1/-1}.contact-strip-inner{gap:30px}.company-intro{gap:40px}}
@media(max-width:650px){.contact-strip{padding:52px 0 55px}.contact-strip-inner{grid-template-columns:1fr;gap:28px}.contact-line{grid-template-columns:75px minmax(0,1fr);gap:12px}.contact-line > span:nth-child(2),.contact-line a{font-size:15px}.footer{padding-top:38px}.footer-inner{grid-template-columns:1fr;gap:26px}.footer-about{grid-column:auto}.footer .footer-block h2{margin-bottom:11px}.footer-bottom{margin-top:30px}.company-profile{padding:55px 0 60px}.company-intro{grid-template-columns:1fr;gap:12px}.company-intro-content{padding-top:0}.company-keyfacts{gap:10px}.company-keyfacts strong{font-size:15px}}

/* V5.1: Same V5 pages with compact navy footer only */
.footer.footer-compact{background:#102f4b;color:#f0f6fb;padding:18px 0 17px;font-size:13px;line-height:1.55;border-top:2px solid #224f73}
.footer-row{display:grid;grid-template-columns:184px minmax(0,1fr);column-gap:30px;align-items:center}
.footer-identity{padding:3px 24px 3px 0;border-right:1px solid #ffffff46;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.footer.footer-compact .footer-name{display:block;color:#fff;font-weight:800;font-size:23px;line-height:1.35;letter-spacing:.8px;white-space:nowrap}
.footer-english{display:block;font:700 10px/1.7 Arial,sans-serif;letter-spacing:1.4px;color:#bed6e8;margin-top:4px}
.footer-details{min-width:0}
.footer.footer-compact .footer-address{margin:0 0 2px;color:#fff;font-weight:700;font-size:14px;line-height:1.5}
.footer-detail-row{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:1px;line-height:1.7}
.footer-detail-row span{white-space:normal}
.footer-detail-row b{font-weight:750;color:#b8d4e8;margin-right:4px}
.footer.footer-compact a{color:#f0f6fb;text-underline-offset:3px}
.footer.footer-compact a:hover{color:#fff;text-decoration:underline}
.footer.footer-compact .footer-copyright{color:#b8cedf;margin:5px 0 0;font:12px/1.5 Arial,'Malgun Gothic',sans-serif}
@media(max-width:850px){.footer-row{grid-template-columns:145px minmax(0,1fr);column-gap:20px}.footer-identity{padding-right:16px}.footer.footer-compact .footer-name{font-size:20px}.footer-detail-row{gap:0 12px}}
@media(max-width:620px){.footer.footer-compact{padding:22px 0 21px}.footer-row{grid-template-columns:1fr;gap:11px}.footer-identity{border-right:0;border-bottom:1px solid #ffffff40;padding:0 0 10px}.footer.footer-compact .footer-name{font-size:22px}.footer-english{margin-top:0}.footer.footer-compact .footer-address{font-size:13px;margin-bottom:6px}.footer-detail-row{display:grid;grid-template-columns:1fr;gap:1px;font-size:12px}.footer.footer-compact .footer-copyright{margin-top:10px}}
