/* ═══ 메인 풀블리드 레이어 (index 전용) ═══════════════════════
   FS-WEB-2026-0811-13 · imgtool/apply.mjs 가 프로토타입에서 자동 생성.
   직접 수정하지 말고 _proto_full.html 을 고친 뒤 다시 생성할 것.

   · 모든 클래스에 h- 접두어를 붙여 style.css 와 이름이 겹치지 않는다
   · 전부 .hv2 안에 갇혀 있어 나머지 10개 페이지에 영향이 없다
   · body.home 일 때만 980px 제한이 풀린다 */

body.home .page{max-width:none;}
body.home .util .in,
body.home .gnb .in,
body.home footer .in{padding-left:clamp(20px,4.4vw,72px);padding-right:clamp(20px,4.4vw,72px);}

.hv2{display:block}
.hv2 img{display:block;width:100%;height:100%;object-fit:cover}
.hv2 a{text-decoration:none;color:inherit}
.hv2 p{margin:0;max-width:none}
.hv2 h1,.hv2 h2,.hv2 h3{margin:0}


.hv2{
  --brand:#0A6B47; --cta:#0B8154; --deep:#1E3A31; --up:#2E5A4E;
  --wash:#D8ECE2; --gold:#B07C36; --canvas:#F4F3F0; --pg:#fff;
  --ink:rgba(0,0,0,.87); --ink2:rgba(0,0,0,.58); --ink3:#8A857E;
  --line:#E2DED8;
  --sans:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Malgun Gothic",sans-serif;
  --pad:clamp(20px,4.4vw,72px);
}
.hv2 *{box-sizing:border-box}

.hv2{background:var(--pg);color:var(--ink);font-family:var(--sans);
     font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased;
     letter-spacing:-.01em;overflow-x:hidden}
h1,h2,h3{margin:0;letter-spacing:-.03em;text-wrap:balance;word-break:keep-all}
p{margin:0}
img{display:block;width:100%;height:100%;object-fit:cover}
a{text-decoration:none;color:inherit}

/* ── 상단 유틸 + 내비 ───────────────────────────────── */
.hv2 .util{background:#14201B;color:#fff;font-size:12.5px;
      padding:9px var(--pad);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.hv2 .util b{font-weight:700}.util span{opacity:.7}
.hv2 .gnb{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line);
     display:flex;align-items:center;gap:4px;padding:0 var(--pad)}
.hv2 .gnb .bd{font-size:16px;font-weight:800;padding:15px 22px 15px 0;margin-right:8px;
         border-right:1px solid var(--line);white-space:nowrap;flex:none}
.hv2 .gnb a.nv{font-size:13.5px;font-weight:600;color:var(--ink2);padding:15px 14px;
          border-bottom:2px solid transparent;white-space:nowrap}
.hv2 .gnb a.nv:hover{color:var(--cta);border-bottom-color:var(--cta)}
.hv2 .gnb a.go{margin-left:auto;background:var(--cta);color:#fff;font-weight:700;
          font-size:13.5px;padding:9px 20px;border-radius:50px;
          white-space:nowrap;flex:none}
.hv2 .gnb a.nv{flex:none}

/* ── 히어로 : 50/50 풀블리드 ────────────────────────── */
.hv2 .h-hero{display:grid;grid-template-columns:47fr 53fr;min-height:min(86vh,740px)}
.hv2 .h-hero .h-tx{background:var(--deep);color:#fff;display:flex;flex-direction:column;
          justify-content:center;padding:clamp(36px,5vw,76px) var(--pad)}
.hv2 .h-eyebrow{display:inline-block;align-self:flex-start;border:1px solid rgba(255,255,255,.38);
         border-radius:50px;padding:6px 15px;font-size:12.5px;font-weight:700;
         letter-spacing:.02em;color:#CFE7DA;margin-bottom:24px}
.hv2 .h-hero h1{font-size:clamp(31px,3.6vw,54px);line-height:1.24;font-weight:800}
.hv2 .h-hero h1 em{font-style:normal;color:#6FD6A8}
.hv2 .h-hero .h-ld{margin-top:22px;font-size:16px;line-height:1.8;color:rgba(255,255,255,.78);max-width:30em}
.hv2 .h-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.hv2 .h-btn{border-radius:50px;padding:14px 30px;font-size:15px;font-weight:700;
     background:#57CC9A;color:#06231A;transition:transform .12s}
.hv2 .h-btn:active{transform:scale(.95)}
.hv2 .h-btn.h-gh{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.45)}
.hv2 .h-hero figure{margin:0;min-height:340px}
.hv2 .h-hero figure img{object-position:center 32%}

/* ── 지표 스트립 ────────────────────────────────────── */
.hv2 .h-strip{display:grid;grid-template-columns:repeat(5,1fr);background:var(--brand);color:#fff}
.hv2 .h-strip div{padding:26px var(--pad);text-align:center;border-left:1px solid rgba(255,255,255,.16)}
.hv2 .h-strip div:first-child{border-left:0}
.hv2 .h-strip .h-v{display:block;font-size:clamp(21px,2.1vw,29px);font-weight:800;letter-spacing:-.03em}
.hv2 .h-strip .h-k{display:block;font-size:12.5px;color:rgba(255,255,255,.72);margin-top:4px}

/* ── 50/50 스플릿 밴드 ──────────────────────────────── */
.hv2 .h-sp{display:grid;grid-template-columns:1fr 1fr;min-height:min(66vh,560px)}
.hv2 .h-sp figure{margin:0;min-height:320px}
.hv2 .h-sp figure img{object-position:center 40%}
.hv2 .h-sp .h-tx{display:flex;flex-direction:column;justify-content:center;
        padding:clamp(38px,5.2vw,84px) var(--pad)}
.hv2 .h-sp .h-tx .h-no{font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--gold);margin-bottom:16px}
.hv2 .h-sp .h-tx h2{font-size:clamp(25px,2.7vw,40px);line-height:1.3;font-weight:800}
.hv2 .h-sp .h-tx p{margin-top:20px;font-size:15.5px;line-height:1.85;color:var(--ink2);max-width:34em}
.hv2 .h-sp .h-tx ul{margin:26px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.hv2 .h-sp .h-tx li{font-size:14.5px;padding-left:22px;position:relative;color:var(--ink2)}
.hv2 .h-sp .h-tx li::before{content:"";position:absolute;left:2px;top:11px;width:7px;height:7px;
                   border-radius:50%;background:var(--cta)}
.hv2 .h-sp.h-wash .h-tx{background:var(--wash)}
.hv2 .h-sp.h-wash .h-tx .h-no{color:var(--brand)}
.hv2 .h-sp.h-cream .h-tx{background:var(--canvas)}
.hv2 .h-sp.dark .h-tx{background:var(--deep);color:#fff}
.hv2 .h-sp.dark .h-tx h2{color:#fff}
.hv2 .h-sp.dark .h-tx p,.hv2 .h-sp.dark .h-tx li{color:rgba(255,255,255,.76)}
.hv2 .h-sp.dark .h-tx li::before{background:#57CC9A}

/* ── 100vw 감성 스트립 (2컷 · 텍스트 없음) ──────────── */
.hv2 .strip3{display:grid;grid-template-columns:repeat(2,1fr);gap:0;
        height:min(74vh,640px);overflow:hidden}
.hv2 .strip3 figure{margin:0;overflow:hidden}
.hv2 .strip3 img{object-position:center 42%;transition:transform .5s ease}
.hv2 .strip3 figure:hover img{transform:scale(1.03)}

/* ── 하이키 선언 밴드 (밝은 사진 + 어두운 글씨) ─────── */
.hv2 .h-say2{position:relative;overflow:hidden;display:flex;align-items:center;
      min-height:min(80vh,680px);padding:clamp(48px,6vw,88px) var(--pad)}
.hv2 .h-say2 img{position:absolute;inset:0;object-position:center 42%}
.hv2 .h-say2 .h-ov{position:absolute;inset:0;background:rgba(250,248,244,.34)}
.hv2 .h-say2 .h-c{position:relative;max-width:min(46%,560px)}
.hv2 .h-say2 .h-no{display:block;font-size:11.5px;letter-spacing:.16em;font-weight:800;
          color:var(--brand);margin-bottom:16px}
.hv2 .h-say2 h2{font-size:clamp(26px,3vw,44px);line-height:1.34;font-weight:800;
         color:var(--deep);margin:0;text-shadow:0 1px 14px rgba(255,255,255,.85)}
.hv2 .h-say2 h2 em{font-style:normal;color:var(--brand)}
.hv2 .h-say2 p{margin:20px 0 0;font-size:15.5px;line-height:1.85;color:rgba(0,0,0,.78);
        text-shadow:0 1px 12px rgba(255,255,255,.9)}
.hv2 .h-say2 .h-lk{display:inline-block;margin-top:26px;font-size:14px;font-weight:700;
          color:var(--cta);border-bottom:1.5px solid rgba(11,129,84,.45);padding-bottom:3px}
.hv2 .h-say2 .h-en{margin-top:14px;font-size:13.5px;font-style:italic;letter-spacing:.01em;
          color:var(--up);text-shadow:0 1px 12px rgba(255,255,255,.9)}

/* ── 딥그린 선언 밴드 ───────────────────────────────── */
.hv2 .h-say{position:relative;overflow:hidden;background:var(--deep);color:#fff;
     padding:clamp(64px,7.5vw,116px) var(--pad);text-align:center}
.hv2 .h-say img{position:absolute;inset:0;object-position:center 66%}
.hv2 .h-say .h-ov{position:absolute;inset:0;background:rgba(18,32,26,.70)}
.hv2 .h-say .h-c{position:relative}
.hv2 .h-say h2{font-size:clamp(24px,2.8vw,40px);line-height:1.36;font-weight:800;max-width:22em;margin:0 auto}
.hv2 .h-say h2 em{font-style:normal;color:#6FD6A8}
.hv2 .h-say p{margin:20px auto 0;font-size:15.5px;color:rgba(255,255,255,.72);max-width:44em}
.hv2 .h-say .h-lk{display:inline-block;margin-top:28px;font-size:14px;font-weight:700;color:#57CC9A;
         border-bottom:1.5px solid rgba(87,204,154,.5);padding-bottom:3px}
.hv2 .h-say .h-en{margin:14px auto 0;font-size:13.5px;font-style:italic;letter-spacing:.01em;
         color:rgba(143,201,174,.9)}

/* ── 메뉴 그리드 ────────────────────────────────────── */
.hv2 .h-zone{padding:clamp(56px,6vw,96px) var(--pad);background:#fff}
.hv2 .h-zt{font-size:clamp(23px,2.4vw,34px);font-weight:800;color:var(--brand);letter-spacing:-.03em}
.hv2 .h-zs{margin-top:10px;font-size:15px;color:var(--ink2)}
.hv2 .h-menu{margin:38px calc(var(--pad)*-1) 0;display:grid;grid-template-columns:repeat(3,1fr);
      gap:1px;background:var(--line);border-top:1px solid var(--line);
      border-bottom:1px solid var(--line)}
.hv2 .h-menu a{background:#fff;padding:32px 30px 28px;display:flex;flex-direction:column;
        transition:background .15s}
.hv2 .h-menu a:hover{background:#FBFAF8}
.hv2 .h-menu .h-mn{font-size:11.5px;font-weight:800;letter-spacing:.16em;color:var(--ink3)}
.hv2 .h-menu h3{margin-top:12px;font-size:19px;font-weight:800}
.hv2 .h-menu p{margin-top:12px;font-size:14px;line-height:1.75;color:var(--ink2);flex:1}
.hv2 .h-menu .h-ar{margin-top:22px;font-size:13.5px;font-weight:700;color:var(--cta)}

/* ── CTA · 푸터 ─────────────────────────────────────── */
.hv2 .h-cta{background:var(--deep);color:#fff;padding:clamp(44px,5vw,70px) var(--pad);
     display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}
.hv2 .h-cta h3{font-size:clamp(21px,2.2vw,30px);font-weight:800}
.hv2 .h-cta p{margin-top:9px;font-size:15px;color:rgba(255,255,255,.74)}
.hv2 .h-disc{background:var(--canvas);color:var(--ink3);font-size:12.5px;line-height:1.7;
      padding:18px var(--pad);border-bottom:1px solid var(--line)}
footer{background:#14201B;color:#B9B4AD;padding:44px var(--pad) 52px;font-size:13px;line-height:1.9}
footer .fl{font-size:16px;font-weight:800;color:#fff;margin-bottom:12px}

@media (max-width:900px){
  .hv2 .h-hero,.hv2 .h-sp{grid-template-columns:1fr}
  .hv2 .h-hero figure,.hv2 .h-sp figure{min-height:260px;max-height:340px}
  .hv2 .h-strip{grid-template-columns:repeat(2,1fr)}
  .hv2 .h-strip div{border-left:1px solid rgba(255,255,255,.16);border-top:1px solid rgba(255,255,255,.16);padding:18px 12px}
  .hv2 .h-strip div:last-child{grid-column:1/-1}
  .hv2 .gnb a.go{margin-left:14px;flex:none;white-space:nowrap}
  .hv2 .h-menu{grid-template-columns:1fr}
  .hv2 .strip3{height:230px}
  .hv2 .h-say2{min-height:0;padding:56px var(--pad)}
  .hv2 .h-say2 .h-c{max-width:none}
  .hv2 .h-say2 .h-ov{background:rgba(255,255,255,.62)}
  .hv2 .gnb{overflow-x:auto}
}

