@charset "utf-8";
:root{
  --ink:#0d1726;--ink-2:#243246;--muted:#6d7a8d;--line:rgba(17,37,63,.11);
  --paper:#ffffff;--canvas:#f4f7fb;--canvas-2:#edf3f8;
  --navy:#083b6e;--blue:#087fc2;--cyan:#46c5e9;--mint:#87e4d6;
  --grad:linear-gradient(135deg,#0b4b83 0%,#087fc2 48%,#39bfe4 100%);
  --grad-soft:linear-gradient(145deg,#eef8ff 0%,#f7fbff 48%,#edf8f7 100%);
  --shadow:0 24px 70px rgba(17,42,72,.12);--shadow-sm:0 12px 35px rgba(17,42,72,.08);
  --r-xl:32px;--r-lg:24px;--r-md:18px;--max:1240px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",Arial,sans-serif;line-height:1.65;letter-spacing:-.015em;word-break:keep-all;overflow-x:hidden}body:before{content:"";position:fixed;z-index:-2;inset:0;background:radial-gradient(circle at 8% 4%,rgba(68,196,232,.16),transparent 28%),radial-gradient(circle at 93% 16%,rgba(135,228,214,.16),transparent 24%),linear-gradient(#f7f9fc,#f3f6fa 55%,#eef3f8)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:9999;padding:11px 16px;border-radius:12px;background:#fff;box-shadow:var(--shadow-sm)}

/* Header */
.site-header{position:sticky;top:0;z-index:100;padding:14px 0;transition:.25s}.site-header:before{content:"";position:absolute;inset:0;background:rgba(244,247,251,.76);border-bottom:1px solid transparent;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:.25s}.site-header.scrolled:before{background:rgba(255,255,255,.9);border-color:var(--line);box-shadow:0 8px 30px rgba(17,42,72,.06)}.header-inner{position:relative;height:62px;display:flex;align-items:center;justify-content:space-between;gap:26px;padding:8px 10px 8px 20px;border:1px solid rgba(255,255,255,.8);border-radius:22px;background:rgba(255,255,255,.64);box-shadow:0 10px 35px rgba(30,62,96,.06)}.brand{display:flex;align-items:center;min-width:180px}.brand img{width:184px;height:auto}.nav{display:flex;align-items:center;gap:2px}.nav a{position:relative;padding:11px 14px;border-radius:14px;color:#33445a;font-size:14px;font-weight:750;transition:.2s}.nav a:hover,.nav a.active{color:var(--navy);background:#edf7fc}.nav a.active:after{content:"";position:absolute;left:50%;bottom:5px;width:4px;height:4px;border-radius:50%;background:var(--cyan);transform:translateX(-50%)}.nav a:last-child{margin-left:8px;padding:11px 18px;background:var(--ink);color:#fff}.nav a:last-child:hover,.nav a:last-child.active{background:var(--navy);color:#fff}.nav a:last-child:after{display:none}.mobile-toggle{display:none;position:relative;width:46px;height:46px;border:0;border-radius:15px;background:#edf4f8;color:transparent;cursor:pointer}.mobile-toggle:before,.mobile-toggle:after,.mobile-toggle span{content:"";position:absolute;left:13px;width:20px;height:2px;border-radius:5px;background:var(--ink);transition:.25s}.mobile-toggle:before{top:15px}.mobile-toggle span{top:22px}.mobile-toggle:after{top:29px}.mobile-toggle[aria-expanded="true"]:before{top:22px;transform:rotate(45deg)}.mobile-toggle[aria-expanded="true"] span{opacity:0}.mobile-toggle[aria-expanded="true"]:after{top:22px;transform:rotate(-45deg)}

/* Hero */
.hero{position:relative;padding:58px 0 96px;overflow:hidden}.hero:before{content:"";position:absolute;width:620px;height:620px;right:-130px;top:-150px;border-radius:50%;background:radial-gradient(circle,rgba(69,198,233,.22),rgba(69,198,233,0) 70%);filter:blur(2px)}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr);gap:54px;align-items:center}.hero-copy{padding:58px 0}.eyebrow,.kicker{display:inline-flex;align-items:center;gap:9px;margin:0 0 18px;color:var(--blue);font-size:12px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.eyebrow:before,.kicker:before{content:"";width:26px;height:2px;border-radius:3px;background:linear-gradient(90deg,var(--blue),var(--cyan))}.hero h1{max-width:680px;margin:0 0 24px;font-size:clamp(48px,5.6vw,78px);line-height:1.03;letter-spacing:-.065em;color:#0c1c30}.hero h1 em{display:block;font-style:normal;color:transparent;background:var(--grad);-webkit-background-clip:text;background-clip:text}.hero-copy>p:not(.eyebrow){max-width:620px;margin:0 0 34px;color:#526176;font-size:clamp(17px,1.6vw,21px)}.btn-row{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:0 22px;border:1px solid transparent;border-radius:16px;font-size:15px;font-weight:800;transition:.22s}.btn:after{content:"↗";font-size:14px;transition:.22s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--ink);color:#fff;box-shadow:0 14px 30px rgba(13,23,38,.18)}.btn-primary:hover{background:var(--navy)}.btn-ghost{background:rgba(255,255,255,.72);border-color:var(--line);color:var(--ink);box-shadow:0 8px 25px rgba(17,42,72,.06)}.btn-ghost:hover{background:#fff;border-color:rgba(8,127,194,.3)}.hero-visual{position:relative;min-height:520px;padding:14px}.hero-card{position:absolute;inset:18px 0 18px 28px;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:36px;background:#072b4a;box-shadow:0 35px 90px rgba(7,43,74,.26);transform:rotate(1.2deg)}.hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 45%,rgba(70,197,233,.12))}.hero-card img{width:100%;height:100%;object-fit:cover;object-position:center}.float-chip{position:absolute;z-index:2;padding:13px 17px;border:1px solid rgba(255,255,255,.88);border-radius:17px;background:rgba(255,255,255,.85);box-shadow:0 18px 45px rgba(17,42,72,.16);backdrop-filter:blur(16px);font-size:13px;font-weight:850;color:#17314a}.float-chip small{display:block;color:var(--muted);font-size:10px;letter-spacing:.08em}.chip-a{left:0;top:58px}.chip-b{right:-8px;bottom:62px}.hero-mini-grid{position:absolute;z-index:3;left:18px;right:20px;bottom:-32px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hero-mini{padding:16px 17px;border:1px solid rgba(255,255,255,.86);border-radius:18px;background:rgba(255,255,255,.9);box-shadow:0 14px 40px rgba(17,42,72,.1);backdrop-filter:blur(15px)}.hero-mini b{display:block;font-size:14px;color:var(--navy)}.hero-mini span{font-size:11px;color:var(--muted)}

/* Shared sections */
.section{position:relative;padding:104px 0}.section-soft{background:transparent}.section-soft:before{content:"";position:absolute;inset:24px max(18px,calc((100vw - 1320px)/2));border-radius:38px;background:rgba(255,255,255,.64);border:1px solid rgba(255,255,255,.78);box-shadow:var(--shadow-sm)}.section-soft>.container{position:relative}.section-head{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,.55fr);align-items:end;gap:36px;margin-bottom:42px}.section-head h2,.page-title h1{margin:0;color:#0f2137;letter-spacing:-.055em}.section-head h2{font-size:clamp(34px,4.2vw,54px);line-height:1.08}.section-head p{margin:0;color:var(--muted);font-size:16px}.kicker{margin-bottom:12px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{position:relative;overflow:hidden;min-width:0;border:1px solid rgba(255,255,255,.82);border-radius:var(--r-lg);background:rgba(255,255,255,.86);box-shadow:var(--shadow-sm);transition:transform .3s,box-shadow .3s,border-color .3s}.card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:rgba(70,197,233,.4)}.card-media{position:relative;height:230px;overflow:hidden;background:#eef3f7}.card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(8,59,110,.08))}.card-media img{width:100%;height:100%;object-fit:cover;object-position:center 35%;transition:transform .45s}.card:hover .card-media img{transform:scale(1.045)}.card-body{position:relative;padding:22px 23px 24px}.card-body h3{margin:8px 0 5px;color:#10253d;font-size:21px;line-height:1.3;letter-spacing:-.035em}.card-body p{margin:0;color:var(--muted);font-size:13px}.tag{display:inline-flex;align-items:center;min-height:26px;padding:3px 10px;border-radius:999px;background:#e9f7fc;color:#0874ad;font-size:11px;font-weight:850}.link-arrow{display:inline-flex;align-items:center;gap:7px;margin-top:18px;color:#17314a;font-size:13px;font-weight:850}.link-arrow:after{content:"→";transition:.2s}.card:hover .link-arrow:after,.link-arrow:hover:after{transform:translateX(4px)}
.home-products .cards .card:first-child{grid-column:span 2}.home-products .cards .card:first-child .card-media{height:280px}.home-products .cards .card:first-child .card-body{display:grid;grid-template-columns:1fr auto;align-items:end}.home-products .cards .card:first-child .tag{grid-column:1/-1;width:max-content}.home-products .cards .card:first-child .link-arrow{margin:0}
.bento{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:260px 260px;gap:20px}.bento-card{position:relative;overflow:hidden;padding:30px;border:1px solid rgba(255,255,255,.8);border-radius:var(--r-lg);background:rgba(255,255,255,.78);box-shadow:var(--shadow-sm)}.bento-card h3{position:relative;z-index:2;margin:5px 0 9px;font-size:25px;color:#10253d;letter-spacing:-.04em}.bento-card p{position:relative;z-index:2;margin:0;max-width:390px;color:var(--muted);font-size:14px}.bento-card .bento-no{position:absolute;right:22px;top:18px;color:rgba(8,127,194,.18);font-size:54px;font-weight:900}.bento-card.visual{grid-row:span 2;padding:0;background:#082d4d}.bento-card.visual img{width:100%;height:100%;object-fit:cover;opacity:.82}.bento-card.visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(5,28,49,.88))}.bento-card.visual .bento-copy{position:absolute;z-index:2;left:30px;right:30px;bottom:28px}.bento-card.visual h3{color:#fff}.bento-card.visual p{color:rgba(255,255,255,.72)}.bento-card.gradient{background:linear-gradient(145deg,#e6f8fd,#f1fbfa)}.bento-card.dark{background:#11273e;color:#fff}.bento-card.dark h3{color:#fff}.bento-card.dark p{color:#a9bbcb}.bento-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#e8f6fb;color:var(--blue);font-size:21px}.bento-card.dark .bento-icon{background:rgba(255,255,255,.1);color:#66d5ef}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;background:transparent;border:0}.stat{padding:28px 24px;text-align:left;border:1px solid rgba(255,255,255,.84);border-radius:20px;background:rgba(255,255,255,.78);box-shadow:var(--shadow-sm)}.stat b{display:block;margin-bottom:3px;color:#10253d;font-size:27px;letter-spacing:-.045em}.stat span{color:var(--muted);font-size:13px}.stat:before{content:"";display:block;width:36px;height:4px;margin-bottom:19px;border-radius:5px;background:linear-gradient(90deg,var(--blue),var(--cyan))}.cta{position:relative;overflow:hidden;padding:62px;border-radius:34px;background:linear-gradient(120deg,#0b2037,#083f6e 60%,#087fb1);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 30px 80px rgba(7,43,74,.24)}.cta:before{content:"";position:absolute;width:360px;height:360px;right:-80px;top:-180px;border-radius:50%;background:rgba(81,209,237,.18)}.cta> *{position:relative}.cta h2{margin:0 0 10px;font-size:clamp(31px,4vw,45px);letter-spacing:-.05em}.cta p{margin:0;color:rgba(255,255,255,.7)}.cta .btn-primary{background:#fff;color:#10253d}.cta .btn-primary:hover{background:#dff8ff}

/* Inner page hero */
.page-hero{position:relative;overflow:hidden;padding:68px 0 72px}.page-hero:before{content:"";position:absolute;inset:12px max(18px,calc((100vw - 1320px)/2));border-radius:34px;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(235,248,252,.78));border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-sm)}.page-hero:after{content:"";position:absolute;right:max(4%,calc((100vw - 1180px)/2));top:18px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(70,197,233,.19),transparent 68%)}.page-title{position:relative;z-index:2;padding:40px 40px}.page-title h1{font-size:clamp(44px,6vw,70px);line-height:1.05}.page-title p{max-width:650px;margin:16px 0 0;color:var(--muted);font-size:18px}.crumbs{display:flex;align-items:center;gap:9px;margin-bottom:24px;color:#8a96a6;font-size:12px;font-weight:700}.crumbs a:hover{color:var(--blue)}.crumbs span:last-child{color:var(--blue)}
.anchor-nav{position:sticky;top:92px;z-index:50;padding:5px 0}.anchor-nav .container{display:flex;gap:7px;overflow:auto;padding:10px;border:1px solid rgba(255,255,255,.8);border-radius:18px;background:rgba(255,255,255,.82);box-shadow:var(--shadow-sm);backdrop-filter:blur(18px)}.anchor-nav a{flex:0 0 auto;padding:9px 15px;border-radius:11px;color:#526176;font-size:13px;font-weight:800;transition:.2s}.anchor-nav a:hover,.anchor-nav a.current{background:#e8f6fb;color:var(--blue)}
.content-image-section{position:relative;padding:74px 0;scroll-margin-top:160px}.content-image-section+.content-image-section{padding-top:20px}.content-image-section .container{padding:30px;border:1px solid rgba(255,255,255,.84);border-radius:30px;background:rgba(255,255,255,.76);box-shadow:var(--shadow-sm)}.content-image-section h2{display:flex;align-items:center;gap:13px;margin:0 0 24px;color:#10253d;font-size:28px;letter-spacing:-.04em}.content-image-section h2:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 7px rgba(70,197,233,.13)}.legacy-image{width:min(100%,1000px);margin:auto;border:1px solid rgba(17,37,63,.07);border-radius:20px;background:#fff;box-shadow:0 14px 45px rgba(17,42,72,.08)}
.catalog-group+.catalog-group{margin-top:74px}.catalog-group h2{display:flex;align-items:center;gap:12px;margin:0 0 26px;color:#10253d;font-size:32px;letter-spacing:-.045em}.catalog-group h2:before{content:"";width:10px;height:30px;border-radius:8px;background:linear-gradient(var(--blue),var(--cyan))}.detail-wrap{width:min(1120px,calc(100% - 48px));margin:auto;padding:12px 0 110px}.detail-top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:34px 38px;border:1px solid rgba(255,255,255,.84);border-radius:28px 28px 0 0;background:rgba(255,255,255,.82);box-shadow:var(--shadow-sm)}.detail-top h1{margin:0;color:#10253d;font-size:clamp(37px,5vw,58px);line-height:1.05;letter-spacing:-.055em}.detail-top p{margin:9px 0 0;color:var(--muted)}.detail-img{width:100%;border:1px solid rgba(17,37,63,.08);border-top:0;border-radius:0 0 28px 28px;background:#fff;box-shadow:var(--shadow)}.back-link{display:inline-flex;align-items:center;gap:7px;margin-top:28px;padding:12px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.76);color:#17314a;font-size:13px;font-weight:850;transition:.2s}.back-link:before{content:"←"}.back-link:hover{transform:translateX(-3px);background:#fff}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-box{overflow:hidden;border:1px solid rgba(255,255,255,.82);border-radius:26px;background:rgba(255,255,255,.82);box-shadow:var(--shadow-sm)}.service-box h2{margin:0;padding:25px 27px;color:#10253d;font-size:23px}.service-box img{width:100%;height:auto}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px}.contact-panel,.map-placeholder{border:1px solid rgba(255,255,255,.84);border-radius:28px;background:rgba(255,255,255,.8);box-shadow:var(--shadow-sm)}.contact-panel{padding:38px}.contact-panel h2{margin:0 0 22px;color:#10253d;font-size:28px}.contact-list{display:grid;gap:0}.contact-item{padding:16px 0;border-bottom:1px solid var(--line)}.contact-item:last-child{border:0}.contact-item b{display:block;margin-bottom:5px;color:var(--blue);font-size:11px;letter-spacing:.1em}.contact-item a:hover{color:var(--blue)}.notice{margin:20px 0;padding:16px;border-radius:14px;background:#edf8fb;color:#486579;font-size:13px}.map-placeholder{position:relative;overflow:hidden;min-height:460px;display:grid;place-items:center;text-align:center;padding:34px;background:linear-gradient(145deg,#dff1f6,#f7fbfc)}.map-placeholder:before,.map-placeholder:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(8,127,194,.18)}.map-placeholder:before{width:320px;height:320px}.map-placeholder:after{width:190px;height:190px}.map-placeholder>div{position:relative;z-index:2;padding:30px;border-radius:20px;background:rgba(255,255,255,.76);backdrop-filter:blur(12px)}.map-placeholder strong{display:block;margin-bottom:8px;color:#10253d;font-size:28px}.map-placeholder p{color:var(--muted)}

/* Footer */
.site-footer{position:relative;margin:20px 18px 18px;padding:70px 0 28px;overflow:hidden;border-radius:36px;background:#0a1d31;color:#d7e2ec}.site-footer:before{content:"";position:absolute;width:480px;height:480px;right:-120px;top:-260px;border-radius:50%;background:rgba(48,183,218,.12)}.footer-top{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:70px}.footer-logo{width:188px;filter:brightness(0) invert(1);opacity:.94}.footer-info{margin-top:22px;color:#99adbe;font-size:13px}.footer-info p{margin:5px 0}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);align-content:start;gap:10px}.footer-links a{padding:8px 0;color:#b8c8d5;font-size:14px;font-weight:750}.footer-links a:hover{color:#67d7ef}.copyright{position:relative;margin-top:45px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);color:#71899c;font-size:11px;letter-spacing:.04em}.float-top{position:fixed;z-index:80;right:26px;bottom:26px;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.85);border-radius:17px;background:rgba(255,255,255,.88);color:var(--navy);box-shadow:var(--shadow-sm);backdrop-filter:blur(15px);opacity:0;pointer-events:none;transform:translateY(10px);transition:.22s}.float-top.show{opacity:1;pointer-events:auto;transform:none}

/* Install + 404 */
.install{max-width:980px;margin:40px auto 80px;padding:50px;border:1px solid rgba(255,255,255,.85);border-radius:30px;background:rgba(255,255,255,.78);box-shadow:var(--shadow-sm)}.install h1{color:#10253d;font-size:44px}.install h2{margin-top:45px;padding-bottom:10px;border-bottom:1px solid var(--line);color:#10253d}.install h3{color:var(--blue)}.install pre,.install code{font-family:Consolas,monospace}.install pre{padding:18px;border-radius:15px;background:#0e2237;color:#dce9f1;overflow:auto}.install .step{margin:22px 0;padding:6px 0 6px 20px;border-left:4px solid var(--cyan)}.install table{width:100%;border-collapse:collapse}.install th,.install td{padding:11px;border:1px solid var(--line);text-align:left}.install th{background:#edf5f9}.install .warn{padding:17px;border:1px solid #ebd08d;border-radius:14px;background:#fff8df}.error-page main .container{padding:110px 0!important}.error-page main h1{font-size:clamp(45px,8vw,80px)!important;color:#10253d!important;letter-spacing:-.06em}

/* Animation */
html.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}html.js [data-reveal].revealed{opacity:1;transform:none}.cards [data-reveal]:nth-child(2){transition-delay:.05s}.cards [data-reveal]:nth-child(3){transition-delay:.1s}.cards [data-reveal]:nth-child(4){transition-delay:.15s}.cards [data-reveal]:nth-child(5){transition-delay:.2s}.cards [data-reveal]:nth-child(6){transition-delay:.25s}

@media(max-width:1050px){.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero h1{font-size:clamp(43px,6vw,65px)}.cards{grid-template-columns:repeat(2,1fr)}.home-products .cards .card:first-child{grid-column:auto}.home-products .cards .card:first-child .card-media{height:230px}.home-products .cards .card:first-child .card-body{display:block}.home-products .cards .card:first-child .link-arrow{margin-top:18px}.bento{grid-template-columns:1fr 1fr;grid-template-rows:260px 240px 240px}.bento-card.visual{grid-row:span 2}.bento-card:last-child{grid-column:span 2}.section-head{grid-template-columns:1fr .7fr}}
@media(max-width:820px){.container{width:min(var(--max),calc(100% - 30px))}.site-header{padding:9px 0}.header-inner{height:58px;padding:6px 7px 6px 15px;border-radius:18px}.brand img{width:164px}.mobile-toggle{display:block}.nav{position:fixed;z-index:99;left:15px;right:15px;top:82px;display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:14px;border:1px solid rgba(255,255,255,.9);border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(17,42,72,.2);backdrop-filter:blur(20px);opacity:0;visibility:hidden;transform:translateY(-12px);transition:.24s}.nav.open{opacity:1;visibility:visible;transform:none}.nav a{padding:13px 15px;border-radius:13px}.nav a.active:after{display:none}.nav a:last-child{margin:5px 0 0;text-align:center}.hero{padding:35px 0 82px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:35px 0 4px}.hero-visual{min-height:430px}.hero-card{inset:10px 0 20px 0}.hero-mini-grid{left:8px;right:8px}.section{padding:78px 0}.section-head{display:block}.section-head p{margin-top:14px}.cards{grid-template-columns:repeat(2,1fr)}.bento{grid-template-columns:1fr 1fr;grid-template-rows:auto}.bento-card,.bento-card.visual{min-height:250px;grid-row:auto}.bento-card.visual{grid-column:span 2;height:420px}.bento-card:last-child{grid-column:span 2}.stats{grid-template-columns:repeat(2,1fr)}.cta{padding:45px;align-items:flex-start;flex-direction:column}.page-hero{padding:42px 0 52px}.page-title{padding:34px 24px}.anchor-nav{top:78px}.content-image-section{padding:52px 0}.content-image-section+.content-image-section{padding-top:8px}.content-image-section .container{padding:20px;border-radius:24px}.detail-wrap{width:calc(100% - 30px)}.detail-top{padding:28px 25px}.contact-grid,.service-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr;gap:35px}.site-footer{margin:12px;border-radius:28px}}
@media(max-width:560px){body{word-break:keep-all}.container{width:calc(100% - 24px)}.brand img{width:151px}.hero{padding-top:18px}.hero-copy{padding-top:25px}.hero h1{font-size:clamp(41px,12vw,58px)}.hero-copy>p:not(.eyebrow){font-size:16px}.btn{width:100%}.hero-visual{min-height:345px;margin-top:14px}.hero-card{border-radius:26px}.float-chip{display:none}.hero-mini-grid{bottom:-45px;gap:6px}.hero-mini{padding:12px 10px;border-radius:14px}.hero-mini b{font-size:11px}.hero-mini span{font-size:9px}.section{padding:66px 0}.section-soft:before{inset:10px 7px;border-radius:26px}.section-head h2{font-size:36px}.cards{grid-template-columns:1fr}.card-media,.home-products .cards .card:first-child .card-media{height:225px}.bento{grid-template-columns:1fr}.bento-card,.bento-card.visual,.bento-card:last-child{grid-column:auto;min-height:235px}.bento-card.visual{height:330px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:20px 16px}.stat b{font-size:22px}.cta{padding:34px 27px;border-radius:26px}.page-hero:before{inset:7px;border-radius:25px}.page-title{padding:30px 17px}.page-title h1{font-size:43px}.page-title p{font-size:15px}.anchor-nav .container{width:calc(100% - 16px)}.content-image-section .container{padding:13px}.content-image-section h2{padding:7px 6px 0;font-size:23px}.legacy-image{border-radius:14px}.detail-wrap{width:calc(100% - 20px)}.detail-top{display:block;padding:25px 19px}.detail-top .tag{margin-top:16px}.detail-top h1{font-size:39px}.detail-img{border-radius:0 0 20px 20px}.contact-panel{padding:27px 22px}.map-placeholder{min-height:380px}.site-footer{padding:52px 0 24px}.footer-links{grid-template-columns:repeat(2,1fr)}.install{margin:16px 10px;padding:25px 18px}.install h1{font-size:35px}.float-top{right:17px;bottom:17px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}html.js [data-reveal]{opacity:1!important;transform:none!important}}


/* Bilingual navigation and translated content */
.nav > a.nav-contact{margin-left:8px;padding:11px 18px;background:var(--ink);color:#fff}
.nav > a.nav-contact:hover,.nav > a.nav-contact.active{background:var(--navy);color:#fff}
.nav > a.nav-contact:after{display:none}
.lang-switch{display:flex;align-items:center;gap:2px;margin-left:8px;padding:3px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.82)}
.nav .lang-switch a,.nav .lang-switch a:last-child{min-width:35px;margin:0;padding:6px 8px;border-radius:9px;background:transparent;color:#65758a;font-size:11px;font-weight:850;line-height:1;text-align:center;letter-spacing:.04em}
.nav .lang-switch a:after{display:none}
.nav .lang-switch a:hover,.nav .lang-switch a.active{background:#0a1d31;color:#fff}
.modern-content{padding:clamp(27px,4vw,52px)}
.modern-content>h2{max-width:920px;margin:8px 0 18px;color:#10253d;font-size:clamp(30px,4vw,52px);line-height:1.12;letter-spacing:-.045em}
.modern-content>p{max-width:900px;color:var(--muted);font-size:16px}
.profile-points,.value-grid,.org-grid,.facility-cards,.quality-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.profile-points>div,.value-grid article,.org-grid article,.facility-cards article,.quality-flow article,.cert-grid article{padding:24px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#fff,#f4f8fb);box-shadow:0 12px 28px rgba(17,42,72,.055)}
.profile-points b,.profile-points span,.facility-cards b,.facility-cards strong,.cert-grid b,.cert-grid span{display:block}
.profile-points b,.value-grid h3,.org-grid h3,.facility-cards b,.quality-flow b{color:#10253d;font-size:18px}
.profile-points span,.value-grid p,.org-grid p,.facility-cards p,.quality-flow p{margin:7px 0 0;color:var(--muted);font-size:14px}
.value-grid article>span{display:inline-grid;width:34px;height:34px;place-items:center;border-radius:11px;background:#e8f6fb;color:var(--blue);font-size:11px;font-weight:900}
.value-grid h3{margin:18px 0 0}
.practice-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.practice-row b{padding:10px 14px;border-radius:999px;background:#0a1d31;color:#fff;font-size:12px;letter-spacing:.02em}
.timeline-modern{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:30px}
.timeline-modern article{position:relative;padding:24px 20px;border:1px solid var(--line);border-radius:20px;background:#fff}
.timeline-modern article:before{content:"";position:absolute;top:0;left:20px;width:42px;height:3px;border-radius:3px;background:var(--cyan)}
.timeline-modern b{color:var(--blue);font-size:23px}.timeline-modern h3{margin:10px 0 5px;color:#10253d;font-size:16px}.timeline-modern p{margin:0;color:var(--muted);font-size:13px}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}
.process-steps article{position:relative;min-height:118px;padding:22px;border:1px solid var(--line);border-radius:19px;background:#fff}
.process-steps span{display:block;color:var(--cyan);font-size:12px;font-weight:900}.process-steps b{display:block;margin-top:15px;color:#10253d;font-size:16px}
.org-grid{grid-template-columns:repeat(5,1fr)}
.quality-flow{grid-template-columns:repeat(4,1fr)}
.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.cert-grid b{color:var(--blue);font-size:24px}.cert-grid span{margin-top:7px;color:var(--muted);font-size:13px}
.facility-cards{grid-template-columns:repeat(4,1fr)}.facility-cards strong{margin-top:6px;color:var(--blue);font-size:13px}.equipment-strip{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.equipment-strip span{padding:8px 12px;border-radius:999px;background:#eaf4fa;color:#31526d;font-size:11px;font-weight:800}
.legacy-details{margin-top:28px;border:1px solid var(--line);border-radius:18px;background:#f5f8fb;overflow:hidden}.legacy-details summary{cursor:pointer;padding:17px 20px;color:#23415b;font-size:13px;font-weight:800;list-style:none}.legacy-details summary::-webkit-details-marker{display:none}.legacy-details summary:after{content:"+";float:right;color:var(--blue);font-size:18px}.legacy-details[open] summary:after{content:"−"}.legacy-details .legacy-image{width:100%;border-radius:0}
.detail-intro{display:flex;justify-content:space-between;gap:25px;margin:0 0 20px;padding:18px 24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,#eef8fd,#fff)}.detail-intro b{color:var(--blue);font-size:13px;text-transform:uppercase;letter-spacing:.04em}.detail-intro span{max-width:760px;color:#536579;font-size:14px;text-align:right}
html[lang="en"] body{letter-spacing:-.008em;word-break:normal}html[lang="en"] .page-title p,html[lang="en"] .hero-copy>p{max-width:700px}
@media(max-width:1120px){.header-inner{gap:12px}.brand{min-width:150px}.brand img{width:165px}.nav a{padding:10px 9px;font-size:13px}.nav > a.nav-contact{margin-left:3px;padding:10px 13px}.lang-switch{margin-left:3px}.timeline-modern{grid-template-columns:repeat(3,1fr)}.org-grid{grid-template-columns:repeat(3,1fr)}.facility-cards,.quality-flow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.nav > a.nav-contact{margin:5px 0 0;text-align:center}.lang-switch{width:100%;margin:7px 0 0;justify-content:center}.nav .lang-switch a{flex:1;padding:10px}.profile-points,.value-grid,.org-grid{grid-template-columns:1fr 1fr}.timeline-modern{grid-template-columns:1fr 1fr}.process-steps{grid-template-columns:1fr 1fr}.detail-intro{display:block}.detail-intro span{display:block;margin-top:7px;text-align:left}}
@media(max-width:560px){.modern-content{padding:24px 18px}.profile-points,.value-grid,.org-grid,.facility-cards,.quality-flow,.cert-grid,.timeline-modern,.process-steps{grid-template-columns:1fr}.detail-intro{margin:0 10px 16px;padding:16px 18px}.modern-content>h2{font-size:34px}}
