/* ONEPOL - bilingual maintenance page / 2026-10-14 */
:root {
  --ink:#182b3c;
  --muted:#677e93;
  --line:#e4ebf2;
  --blue:#4e87f8;
  --pale:#f3f7fb;
  font-family:'Noto Sans KR','Malgun Gothic','Apple SD Gothic Neo',Arial,sans-serif;
  color:var(--ink);
}
*,:before,:after{box-sizing:border-box}
html{min-width:320px;background:var(--pale)}
body{margin:0;min-width:320px;line-height:1.5;-webkit-font-smoothing:antialiased;background:linear-gradient(125deg,#f4f8fc 0%,#f9fbfe 50%,#eaf4f8 100%)}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
p{margin:0}
.layout-width{width:min(calc(100% - 44px),1460px);margin-inline:auto}
.page-shell{position:relative;isolation:isolate;min-height:100svh;display:grid;grid-template-rows:1fr auto;overflow:hidden}
.ambient{position:absolute;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(10px)}
.ambient-one{width:380px;height:380px;top:-160px;left:-110px;background:rgba(84,145,245,.1);animation:orbMove 14s ease-in-out infinite alternate}
.ambient-two{width:350px;height:350px;bottom:-150px;right:-100px;background:rgba(76,197,202,.11);animation:orbMove 17s ease-in-out infinite alternate-reverse}
.maintenance{display:flex;justify-content:center;align-items:center;padding-block:clamp(10px,2.5vh,27px)}
.panel{width:100%;border:1px solid #fff;border-radius:30px;background:rgba(255,255,255,.9);box-shadow:0 24px 70px rgba(43,71,100,.10);overflow:hidden}
.panel-inner{display:grid;grid-template-columns:minmax(0,1.09fr) minmax(0,.91fr);align-items:stretch;gap:clamp(22px,2.6vw,40px);padding:clamp(20px,2.4vw,36px)}
.copy-col{min-width:0;display:flex;flex-direction:column;justify-content:center}
.notice-head{display:flex;align-items:center;gap:10px;min-height:26px}
.small-mark{width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px #eaf1ff;flex:none}
.notice-kicker{font:800 10px/1.4 Arial,sans-serif;letter-spacing:.145em;color:#7590aa;white-space:nowrap}
.kicker-divider{padding:0 5px;color:#adbac8}
.status-chip{margin-left:auto;display:flex;align-items:center;gap:7px;border:1px solid #daebe9;border-radius:999px;background:#f0faf6;color:#318d77;padding:5px 11px;font-size:10px;font-weight:700;white-space:nowrap}
.status-dot{height:6px;width:6px;border-radius:50%;background:#52bfa4;animation:pulse 2.6s ease-in-out infinite}
.title-block{margin-top:clamp(14px,2vh,22px)}
h1{margin:0;font-size:clamp(36px,3.24vw,56px);letter-spacing:-.085em;line-height:1.18;font-weight:800;word-break:keep-all}
h1 span{color:var(--blue);background:linear-gradient(transparent 77%,rgba(78,135,248,.12) 77%)}
.english-head{margin-top:13px;font:700 clamp(16px,1.24vw,20px)/1.4 Arial,sans-serif;color:#456b98;letter-spacing:-.025em}
.company-intro{display:flex;gap:16px;margin-top:clamp(21px,3vh,33px)}
.section-rule{flex:0 0 3px;border-radius:8px;background:linear-gradient(#86b9ff,#d7eeff)}
.intro-body{min-width:0}
.intro-ko{font-size:clamp(12.5px,.94vw,14.5px);line-height:1.75;word-break:keep-all;color:#556e84}
.intro-en{margin-top:11px;font:400 clamp(11px,.82vw,13px)/1.55 Arial,sans-serif;letter-spacing:0;color:#8798a9}
.message-box{display:flex;gap:13px;margin-top:clamp(18px,2.5vh,27px);padding:16px 18px;background:linear-gradient(115deg,#f8fbff,#fff);border:1px solid #e3ebf5;border-radius:17px}
.message-icon{width:34px;height:34px;flex:none;display:grid;place-items:center;color:var(--blue);background:#eaf2ff;border-radius:11px}
.message-copy{min-width:0}
.message-copy strong{display:flex;align-items:center;gap:12px;font-size:14px;letter-spacing:-.015em}
.message-en-label{font:800 9px Arial,sans-serif;letter-spacing:.15em;color:#91a6ba}
.message-copy p{color:#687f92;font-size:12px;line-height:1.6;margin-top:5px;word-break:keep-all}
.message-copy .message-en{color:#94a5b5;font:400 11px/1.5 Arial,sans-serif;margin-top:5px}
.meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:clamp(14px,2.3vh,24px)}
.meta-card{min-width:0;min-height:90px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 7px 16px rgba(26,56,83,.045);padding:13px 14px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.meta-card:hover{transform:translateY(-3px);box-shadow:0 13px 25px rgba(36,71,111,.1);border-color:#ccdffc}
.meta-label{display:flex;flex-wrap:wrap;align-items:center;gap:7px;color:#688098;font:800 10px/1.3 Arial,sans-serif;letter-spacing:.12em}
.meta-label span{color:#adbac6;font:500 10px/1.2 'Malgun Gothic','Apple SD Gothic Neo',sans-serif;letter-spacing:0}
.meta-card strong,.meta-card a{display:block;margin-top:8px;font:700 clamp(13px,1vw,16px)/1.25 Arial,'Malgun Gothic',sans-serif;color:#273a4b;overflow-wrap:anywhere;letter-spacing:-.025em}
.meta-card a:hover{color:var(--blue)}
.meta-card small{display:block;margin-top:5px;font-size:10.5px;color:#8ca0b0;line-height:1.35}
/* Grid item must stretch; explicit width prevents previous zero-width image problem. */
.visual-col{width:100%;min-width:0;align-self:stretch;display:grid}
.visual-card{position:relative;width:100%;height:100%;min-height:490px;overflow:hidden;border-radius:24px;background:#dfeaf3;box-shadow:0 17px 38px rgba(38,80,128,.13);isolation:isolate}
.factory-photo{position:absolute;inset:-2%;width:104%;height:104%;max-width:none;object-fit:cover;object-position:center center;animation:imageDrift 19s ease-in-out infinite alternate}
.visual-tint{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(22,56,84,.13),rgba(14,50,88,.02) 46%,rgba(18,43,69,.43) 100%)}
.scan-line{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgba(255,255,255,.18) 50%,transparent 100%);transform:translateY(-100%);animation:scan 8s ease-in-out infinite}
.circle-detail{position:absolute;top:-85px;right:-88px;z-index:2;width:260px;height:260px;border-radius:50%;border:1px solid rgba(255,255,255,.28);box-shadow:0 0 0 26px rgba(255,255,255,.06),0 0 0 54px rgba(255,255,255,.035);pointer-events:none}
.visual-topline{position:absolute;z-index:3;top:21px;left:21px;right:21px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.visual-tag{color:#405d78;background:rgba(255,255,255,.92);box-shadow:0 6px 20px rgba(27,65,107,.09);border-radius:999px;padding:11px 16px;font:800 10px/1 Arial,sans-serif;letter-spacing:.16em;white-space:nowrap}
.visual-top-en{font:700 9px/1.5 Arial,sans-serif;letter-spacing:.15em;color:rgba(255,255,255,.9);text-shadow:0 1px 8px rgba(2,36,66,.7)}
.visual-footer{position:absolute;z-index:3;bottom:22px;left:22px;right:22px}
.visual-bottom-card{display:flex;align-items:center;gap:13px;padding:16px;background:rgba(255,255,255,.94);box-shadow:0 18px 38px rgba(8,36,59,.12);border-radius:17px;backdrop-filter:blur(8px)}
.visual-symbol{flex:0 0 40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#ebf3ff;color:var(--blue)}
.visual-card-text strong{display:block;font:700 clamp(12px,.94vw,14px)/1.3 Arial,sans-serif;color:#21364a}
.visual-card-text span{display:block;margin-top:5px;font-size:11.5px;color:#6d8195}
.visual-card-text small{display:block;margin-top:3px;font:400 10.5px/1.4 Arial,sans-serif;color:#9baaba}
.page-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-bottom:15px;min-height:44px;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.055em;color:#91a4b5}
@media (min-width:1061px) and (max-height:800px){
 .maintenance{padding-block:7px}
 .panel-inner{padding:19px 25px;gap:26px}
 .title-block{margin-top:12px}h1{font-size:clamp(34px,3.1vw,46px);line-height:1.16}
 .english-head{margin-top:7px;font-size:16px}
 .company-intro{margin-top:15px;gap:12px}.intro-ko{font-size:13px;line-height:1.65}.intro-en{font-size:12px;line-height:1.5;margin-top:8px}
 .message-box{margin-top:13px;padding:12px 14px}.message-copy p{font-size:12px;line-height:1.5;margin-top:3px}.message-copy .message-en{font-size:11.5px;line-height:1.45}
 .meta-grid{margin-top:13px}.meta-card{padding:10px 12px;min-height:75px}.meta-card strong,.meta-card a{font-size:13px;margin-top:6px}.meta-card small{font-size:10px}
 .visual-card{min-height:450px}.page-footer{padding-bottom:5px;min-height:32px}
}
@media (max-width:1060px){
 .panel-inner{grid-template-columns:1fr;gap:22px}.visual-card{height:auto;min-height:340px;aspect-ratio:1.55}.visual-col{display:block}
 .copy-col{justify-content:flex-start}.meta-card{min-height:85px}
}
@media (max-width:600px){
 .layout-width{width:calc(100% - 22px)}.maintenance{padding-block:11px}
 .panel{border-radius:22px}.panel-inner{padding:19px 15px;gap:20px}
 .notice-kicker{font-size:9px;letter-spacing:.09em}.status-chip{font-size:9px;padding:4px 8px}
 h1{font-size:clamp(28px,7.3vw,39px);line-height:1.25;letter-spacing:-.07em}
 .english-head{font-size:15px;margin-top:11px}
 .company-intro{margin-top:22px;gap:12px}.intro-ko{font-size:12.5px;line-height:1.7}.intro-en{font-size:11.5px}
 .message-box{padding:12px 11px;gap:10px;margin-top:19px}.message-icon{width:29px;height:29px}
 .meta-grid{grid-template-columns:1fr;gap:9px;margin-top:15px}.meta-card{min-height:0;padding:12px 14px}
 .meta-card strong,.meta-card a{margin-top:4px}.meta-card small{margin-top:3px}
 .visual-card{aspect-ratio:4/3;min-height:300px;border-radius:18px}
 .visual-topline{top:13px;left:13px;right:13px}.visual-tag{padding:9px 11px;font-size:9px}.visual-top-en{font-size:8px}
 .visual-footer{left:12px;right:12px;bottom:12px}.visual-bottom-card{padding:12px;border-radius:13px;gap:10px}
 .visual-symbol{flex-basis:33px;height:33px}.visual-card-text strong{font-size:12px}.visual-card-text span{font-size:10.5px}
 .visual-card-text small{font-size:9.5px}
 .page-footer{flex-direction:column;align-items:flex-start;gap:3px;font-size:9px;padding-bottom:14px}
}
@media (prefers-reduced-motion:no-preference){
 .panel{animation:appear .9s both}.copy-col{animation:appear .85s .09s both}.visual-col{animation:appear .85s .18s both}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{50%{opacity:.45;box-shadow:0 0 0 6px rgba(82,191,164,.10)}}
@keyframes imageDrift{from{transform:scale(1.01) translate(-.4%,-.4%)}to{transform:scale(1.055) translate(.45%,.45%)}}
@keyframes scan{0%,30%{transform:translateY(-110%)}60%,100%{transform:translateY(110%)}}
@keyframes orbMove{to{transform:translate(25px,22px)}}

/* =======================================================
   ONEPOL / 중앙 콘텐츠 패널 세로 확장
   아래 부분만 style.css 맨 끝에 추가해도 적용됩니다.
   1061px 이상 PC에서 적용, 태블릿/모바일은 기존 반응형 유지.
   ======================================================= */
@media (min-width: 1061px) {
  .panel-inner {
    /* 1080px 모니터에서는 최대 780px, 낮은 모니터는 가용 높이에 맞춰 자동 조절 */
    min-height: min(780px, calc(100svh - 104px));
    /* 글 내용과 패널 상하 테두리 사이 여백을 늘림 */
    padding-top: clamp(34px, 4.2vh, 54px);
    padding-bottom: clamp(34px, 4.2vh, 54px);
  }

  .copy-col {
    justify-content: center;
  }

  /* 오른쪽 공장 사진이 늘어난 패널 높이를 함께 채우도록 유지 */
  .visual-col {
    align-self: stretch;
  }

  .visual-card {
    height: 100%;
  }
}

@media (min-width: 1061px) and (max-height: 800px) {
  .panel-inner {
    /* 1366×768 / 1280×720 등에서 세로 잘림 방지 */
    padding-top: 22px;
    padding-bottom: 22px;
  }
}
