/* SCENTCEPT store — brand rules: Inter sans, #000/#fff, #e0e0e0 hairline,
   no radius, labels 11px/0.15em uppercase. Acne/Margiela minimal. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700;900&display=swap');

:root { --line:#e0e0e0; --ink:#000; --bg:#fff; --mut:#8a8a8a; }
* { margin:0; padding:0; box-sizing:border-box; border-radius:0 !important; }
html { -webkit-text-size-adjust:100%; }
body {
  font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;
  color:var(--ink); background:var(--bg); font-size:13px; line-height:1.5;
  letter-spacing:.01em; -webkit-font-smoothing:antialiased;
}
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
::selection { background:#000; color:#fff; }
h1,h2,h3,h4 { font-weight:400; letter-spacing:-.01em; }
button { font-family:inherit; cursor:pointer; background:none; border:none; color:inherit; }

.lbl, .hdr-nav a, .hdr-util a, .hdr-bar, h4, .crumb, .card-name, .card-price,
.pdp-code, .pdp-material span, .btn-add, .sc-btn, .subs a, .grid-head a,
.auth-or, .ftr .ftr-cols h4 {
  font-size:11px; letter-spacing:.15em; text-transform:uppercase;
}

/* ---------- Header ---------- */
.hdr-bar {
  text-align:center; padding:7px 12px; border-bottom:1px solid var(--line);
  color:#000; background:#fff; font-size:10px; letter-spacing:.15em;
}
.hdr {
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  padding:18px 28px; border-bottom:1px solid var(--line);
  position:sticky; top:0; background:#fff; z-index:50;
}
.hdr-nav { display:none; }   /* 아크네식: 인라인 상단 네비 제거, 전 화면 햄버거만 사용 */
.hdr-nav a, .hdr-util a { position:relative; }
.hdr-nav a:hover, .hdr-util a:hover { opacity:.55; }
.hdr-logo { font-weight:900; font-size:22px; letter-spacing:-.02em; text-align:center; }
.hdr-util { display:flex; gap:20px; justify-content:flex-end; }
.cart-count { font-size:11px; }

/* ---------- Hero ---------- */
.hero { position:relative; width:100%; aspect-ratio:3/2; background:#111 center/cover no-repeat; overflow:hidden; }
/* 영상이 로딩 중이거나 자동재생이 막혀도(카톡 인앱·모바일 데이터 등) 포스터가 보이도록 배경에 깔아둔다.
   이게 없으면 영상 실패 시 밝은 배경 + 흰 헤더 글씨라 화면이 비어 보인다. (2026-09-23) */
body[data-page="home"] .hero { background-image:url('../images/hero.jpg'); }
.hero img, .hero video, .hero .hero-media { width:100%; height:100%; object-fit:cover; object-position:center; display:block; background:transparent; }
.hero-slide { position:absolute; inset:0; opacity:0; animation:heroFade 24s infinite; }
@keyframes heroFade { 0%{opacity:0} 3%{opacity:1} 25%{opacity:1} 28%{opacity:0} 100%{opacity:0} }
.hero-logo { display:block; font-weight:900; font-size:clamp(10px,.8vw,12px); letter-spacing:-.02em; margin-bottom:10px; }
.hero-tag {
  position:absolute; left:0; right:0; bottom:5%; text-align:center;
  font-size:11px; letter-spacing:.3em; color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.55);
}

/* ---------- Grid + cards ---------- */
.grid-head, .shop-head { display:flex; align-items:baseline; justify-content:space-between; padding:34px 28px 16px; }
.cat-block { border-top:1px solid var(--line); }
.shop-head + .cat-block { border-top:none; }
.grid-head h2, .shop-head h1 { font-size:15px; letter-spacing:.05em; }
.grid {
  display:grid; grid-template-columns:repeat(4,1fr);
  border-top:none; border-left:none;
}
.card { border:none; display:block; }
.card-img { position:relative; aspect-ratio:3/4; background:#f4f3f0; overflow:hidden; }
.card-img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 22%; }
.card-hover { opacity:0; transition:opacity .35s ease; }
@media (hover:hover) and (pointer:fine) { .card:hover .card-hover { opacity:1; } }   /* 터치 기기: 탭 시 :hover 고착으로 제품컷이 안 돌아오던 문제 → 마우스 기기만 스왑 */
.card-meta { display:flex; justify-content:space-between; gap:10px; padding:12px 14px 16px; }
.card-name { max-width:70%; }
.was { color:var(--mut); text-decoration:line-through; margin-right:6px; }
.now { color:#000; }
.empty { padding:60px 28px; color:var(--mut); }

/* ---------- Shop head ---------- */
.shop-head { flex-direction:column; align-items:flex-start; gap:12px; padding-bottom:8px; }
.crumb { color:var(--mut); }
.subs { display:flex; gap:8px; flex-wrap:wrap; }
.subs a { border:1px solid var(--line); padding:8px 14px; }
.subs a:hover { background:#000; color:#fff; }
.subs a.active { background:#000; color:#fff; }

/* ---------- PDP ---------- */
/* 아크네식 PDP — 대형 이미지 세로 스택 + sticky 정보, 순백 배경·헤어라인만 */
.pdp { display:grid; grid-template-columns:1.15fr .85fr; align-items:start; border-top:1px solid var(--line); }
.pdp > .pdp-gal-wrap, .pdp > .pdp-info { min-width:0; }
.pdp-gal-wrap { position:relative; }
.pdp-count { display:none; }
.pdp-gallery { display:flex; flex-direction:column; gap:0; background:none; border-right:none; }
.pdp-shot { border:none; padding:0; margin:0; background:#f4f3f0; cursor:zoom-in; display:block; width:100%; font-size:0; }
.pdp-shot img { display:block; width:100%; height:auto; max-width:100%; }
.pdp-shot.pdp-video { cursor:default; background:#111; }
.pdp-shot.pdp-video video { display:block; width:100%; height:auto; max-width:100%; }
.pdp-info { padding:64px 56px; position:sticky; top:80px; align-self:start; }
/* 확대뷰 — 밝은 전체화면, 전 컷 세로 스크롤 */
.zoom { position:fixed; inset:0; z-index:100; background:#f4f3f0; overflow-y:auto; overscroll-behavior:contain; }
.zoom-scroll { display:flex; flex-direction:column; align-items:center; gap:0; padding:56px 0 80px; cursor:zoom-out; }
.zoom-scroll img { display:block; width:min(760px,92vw); height:auto; object-fit:contain; }
.zoom-x { position:fixed; top:18px; right:24px; z-index:2; background:none; border:none; color:#111; font-size:30px; line-height:1; cursor:pointer; }
/* Editorial home band */
.editorial { text-align:center; padding:64px 24px 40px; border-bottom:1px solid var(--line); }
.editorial-lead { font-size:26px; letter-spacing:.01em; margin-bottom:14px; }
.editorial-body { color:#444; line-height:1.9; font-size:13px; }
.split { display:grid; grid-template-columns:1fr 1fr; }
.split-cell { position:relative; display:block; aspect-ratio:3/4; background:#f4f3f0; overflow:hidden; }
.split-cell + .split-cell { border-left:none; }
.split-cell img { width:100%; height:100%; object-fit:cover; object-position:center 20%; }
.split-cap { position:absolute; left:20px; bottom:18px; font-size:13px; letter-spacing:.02em; }
.split-cap span { display:block; font-size:10px; letter-spacing:.14em; color:var(--mut); margin-bottom:4px; }
.pdp-code { color:var(--mut); }
.pdp-info h1 { font-size:26px; margin:10px 0 14px; }
.pdp-price { font-size:16px; margin-bottom:22px; }
.pdp-desc { max-width:42ch; margin-bottom:24px; }
.pdp-crumb { color:var(--mut); font-size:11px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:14px; }
.pdp-details { border-top:1px solid var(--line); padding:16px 0 4px; margin-bottom:4px; }
.pdp-details span { display:block; color:var(--mut); font-size:11px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:10px; }
.pdp-details ul { list-style:none; padding:0; margin:0; max-width:44ch; }
.pdp-details li { position:relative; padding-left:14px; margin-bottom:7px; font-size:13.5px; line-height:1.5; color:#333; }
.pdp-details li::before { content:''; position:absolute; left:0; top:9px; width:4px; height:4px; border-radius:50%; background:var(--mut); }
.pdp-material { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:16px 0; margin-bottom:24px; color:#333; }
.pdp-material span { display:block; color:var(--mut); margin-bottom:6px; }
.pdp-sizes { display:flex; gap:8px; margin-bottom:22px; }
.pdp-sizes button { border:1px solid var(--line); width:46px; height:46px; font-size:11px; letter-spacing:.08em; }
.pdp-sizes button.on { background:#000; color:#fff; border-color:#000; }
.pdp-sizes button.soldout { color:var(--line); border-style:dashed; text-decoration:line-through; cursor:not-allowed; }
.btn-add { width:100%; background:#000; color:#fff; height:52px; letter-spacing:.15em; }
.btn-add:disabled { background:#999; cursor:not-allowed; }
.btn-add:hover { opacity:.85; }
.pdp-note { color:var(--mut); margin-top:16px; font-size:11px; }

/* ---------- Cart ---------- */
.cart { max-width:900px; margin:0 auto; padding:40px 28px 80px; }
.cart h1 { font-size:22px; margin-bottom:24px; }
.cart-list { border-top:1px solid var(--line); }
.cart-row { display:grid; grid-template-columns:80px 1fr auto auto 30px; gap:16px; align-items:center; padding:16px 0; border-bottom:1px solid var(--line); }
.cart-row img { width:80px; aspect-ratio:3/4; object-fit:cover; background:#fafafa; }
.cart-d { display:flex; flex-direction:column; gap:4px; }
.cart-n { font-size:13px; }
.cart-s { font-size:11px; letter-spacing:.1em; color:var(--mut); text-transform:uppercase; }
.cart-q { display:flex; align-items:center; gap:12px; border:1px solid var(--line); padding:6px 12px; }
.cart-q button { font-size:16px; line-height:1; }
.cart-x { color:var(--mut); font-size:18px; }
.cart-foot { margin-top:24px; }
.cart-total { display:flex; justify-content:space-between; padding:16px 0; border-bottom:1px solid var(--line); margin-bottom:20px; font-size:15px; }
.cart-note { color:var(--mut); text-align:center; margin-top:14px; font-size:11px; letter-spacing:.1em; }

/* ---------- Auth ---------- */
.auth { max-width:400px; margin:0 auto; padding:56px 28px 90px; text-align:center; }
.auth h1 { font-size:22px; margin-bottom:8px; }
.auth-sub, .auth-hi { color:var(--mut); margin-bottom:28px; }
.sc-list { display:flex; flex-direction:column; gap:10px; }
.sc-btn { height:50px; border:1px solid var(--line); font-size:12px; letter-spacing:.05em; text-transform:none; }
.sc-btn:hover { opacity:.85; }
.sc-google { background:#fff; color:#000; }
.sc-apple { background:#000; color:#fff; border-color:#000; }
.auth-or { color:var(--mut); margin:22px 0; position:relative; }
.auth-form { display:flex; flex-direction:column; gap:10px; }
.auth-form input { border:1px solid var(--line); height:48px; padding:0 14px; font-family:inherit; font-size:12px; letter-spacing:.05em; }
.auth-form input:focus { outline:none; border-color:#000; }
.auth-fine { color:var(--mut); font-size:10px; letter-spacing:.03em; margin-top:20px; line-height:1.6; }

/* ---------- PDP price extra ---------- */
.pdp-price .was { color:var(--mut); text-decoration:line-through; margin-right:8px; }
.pdp-off { font-size:10px; letter-spacing:.12em; text-transform:uppercase; border:1px solid #000; padding:3px 7px; margin-left:6px; vertical-align:middle; }

/* ---------- Checkout ---------- */
.checkout { max-width:960px; margin:0 auto; padding:40px 28px 80px; }
.checkout h1 { font-size:22px; margin-bottom:24px; }
.co-grid { display:grid; grid-template-columns:1.3fr 1fr; gap:32px; }
.co-form h3, .co-summary h3 { font-size:12px; letter-spacing:.12em; text-transform:uppercase; margin:8px 0 12px; }
.co-form input { width:100%; border:1px solid var(--line); height:46px; padding:0 14px; margin-bottom:10px; font-family:inherit; font-size:12px; letter-spacing:.03em; }
.co-form input:focus { outline:none; border-color:#000; }
.co-methods { display:flex; flex-direction:column; gap:8px; margin-bottom:20px; }
.co-methods label { display:flex; gap:8px; align-items:center; border:1px solid var(--line); padding:12px 14px; font-size:12px; }
.co-agree { display:flex; gap:8px; align-items:flex-start; font-size:11px; line-height:1.6; color:#444; }
.co-agree a { text-decoration:underline; }
.co-summary { border:1px solid var(--line); padding:24px; align-self:start; }
.co-lines { border-bottom:1px solid var(--line); padding-bottom:12px; margin-bottom:12px; }
.co-line { display:flex; justify-content:space-between; gap:12px; padding:6px 0; font-size:12px; }
.co-total { border-top:1px solid var(--line); margin-top:8px; padding-top:12px; font-size:14px; }
.co-summary .btn-add { margin-top:16px; }

/* ---------- Policy ---------- */
.policy { max-width:820px; margin:0 auto; padding:40px 28px 80px; }
.pol-tabs { display:flex; flex-wrap:wrap; gap:0; border:1px solid var(--line); border-bottom:none; }
.pol-tabs a { padding:12px 16px; font-size:11px; letter-spacing:.1em; text-transform:uppercase; border-right:1px solid var(--line); border-bottom:1px solid var(--line); flex:1; text-align:center; }
.pol-tabs a.on { background:#000; color:#fff; }
.pol-body { border:1px solid var(--line); border-top:none; padding:32px 28px; }
.pol-body h2 { font-size:18px; margin-bottom:18px; }
.pol-body h3 { font-size:13px; margin:20px 0 6px; }
.pol-body p { color:#333; margin-bottom:8px; line-height:1.7; }
.pol-tbl { width:100%; border-collapse:collapse; margin:6px 0; }
.pol-tbl th, .pol-tbl td { border:1px solid var(--line); padding:10px 12px; text-align:left; font-weight:400; font-size:12px; }
.pol-tbl th { width:180px; background:#fafafa; }
.pol-note { border-top:1px solid var(--line); margin-top:20px; padding-top:14px; font-size:11px; color:var(--mut); }
.pol-body code { background:#f2f2f2; padding:1px 5px; font-size:11px; }

/* ---------- Footer ---------- */
.ftr { border-top:1px solid var(--line); margin-top:60px; }
.ftr-cols { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; padding:48px 28px; border-bottom:1px solid var(--line); }
.ftr-cols h4 { margin-bottom:16px; color:#000; }
.ftr-cols a { display:block; color:#333; margin-bottom:8px; }
.ftr-cols a:hover { opacity:.55; }
.ftr-p { color:var(--mut); margin-bottom:14px; }
.ftr-news { display:flex; border:1px solid var(--line); }
.ftr-news input { flex:1; border:none; height:42px; padding:0 12px; font-family:inherit; font-size:12px; letter-spacing:.1em; }
.ftr-news input:focus { outline:none; }
.ftr-news button { width:46px; background:#000; color:#fff; }
.ftr-legal { padding:32px 28px 48px; color:var(--mut); }
.ftr-logo { font-weight:900; font-size:20px; letter-spacing:-.02em; color:#000; margin-bottom:14px; }
.ftr-legal p { font-size:11px; line-height:1.9; letter-spacing:.02em; }
.ftr-copy { margin-top:14px; }

/* ---------- Responsive ---------- */
@media (max-width:900px) {
  /* 헤더: 메뉴가 로고 칸을 침범하지 않도록 2행(로고·유틸 / 메뉴) */
  .hdr { grid-template-columns:auto 1fr; padding:14px 20px 12px; }
  .hdr-logo { grid-column:1; grid-row:1; text-align:left; }
  .hdr-util { grid-column:2; grid-row:1; }
  .hdr-nav { grid-column:1 / -1; grid-row:2; flex-wrap:wrap; gap:14px 18px; padding-top:12px; }
  .grid { grid-template-columns:repeat(2,1fr); }
  .pdp { grid-template-columns:1fr; }
  /* PDP 갤러리: 모바일은 가로 스와이프 슬라이더(scroll-snap) + 카운터 (2026-09-10) */
  .pdp-gallery { border-right:none; flex-direction:row; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
  .pdp-gallery::-webkit-scrollbar { display:none; }
  .pdp-shot { flex:0 0 100%; scroll-snap-align:start; scroll-snap-stop:always; }
  .pdp-shot img, .pdp-shot.pdp-video video { width:100%; aspect-ratio:3/4; height:auto; object-fit:cover; }
  .pdp-shot.pdp-video video { object-fit:contain; background:#111; }   /* 9:16 영상은 3:4 슬롯 안에 잘림 없이(2026-09-10) */
  .pdp-count { display:block; position:absolute; right:14px; bottom:12px; font-size:10px; letter-spacing:.14em; color:#000; background:rgba(255,255,255,.72); padding:4px 8px; pointer-events:none; }
  .pdp-info { position:static; padding:34px 22px 12px; }
  .ftr-cols { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:640px) {
  .hdr { display:flex; justify-content:flex-end; align-items:center; padding:15px 16px; }
  .hdr-nav { display:none; }
  .hdr-logo { position:absolute; left:50%; transform:translateX(-50%); font-size:19px; }
  .hdr-util { gap:14px; }
  .hdr-util a { font-size:10px; }
  .subs { display:none; }                          /* 모바일: 서브카테고리 칩 숨김(2026-09-10) */
  /* 히어로 영상 1920×1280(3:2). 세로 박스 강제 시 좌우 크롭 → 비율 유지(2026-09-10) */
  .split { grid-template-columns:1fr; }           /* 모바일: WOMEN/MEN 타일 위아래 전면 폭 */
  .grid-head, .shop-head { padding:24px 16px 12px; }
  .cart-row { grid-template-columns:64px 1fr auto; grid-row-gap:8px; }
  .cart-row .cart-p { grid-column:2/4; }
  .cart-x { grid-column:3; grid-row:1; }
}

/* 이미지 이음새 서브픽셀 흰 선 제거 (2026-09-10): 그리드 열 너비가 소수점이면
   안티앨리어싱으로 1px 미만 흰 선이 비침 → 이미지를 1px 넘치게 그려 덮는다. 컨테이너 overflow:hidden. */
.card-img img, .split-cell img { width:calc(100% + 1px); height:calc(100% + 1px); max-width:none; }
.card-img, .split-cell { background:#e8e6e2; }
.pdp-shot { overflow:hidden; }
.pdp-shot img { width:calc(100% + 1px); max-width:none; margin-bottom:-1px; }

/* ---------- 모바일 햄버거 메뉴 (2026-09-10) ---------- */
/* ---------- 햄버거 + 왼쪽 드로어 (전 화면 = 아크네 스튜디오식) ---------- */
.hdr-burger { display:flex; width:36px; height:36px; margin-left:-8px; flex-direction:column; justify-content:center; gap:5px; background:none; border:none; padding:0 8px; cursor:pointer; }
.hdr-burger span { display:block; height:1.5px; background:#000; }
.mnav { position:fixed; inset:0 auto 0 0; width:min(420px,86vw); z-index:100; background:#fff; padding:64px 32px 40px; overflow:auto;
        transform:translateX(-100%); transition:transform .28s ease; box-shadow:0 0 40px rgba(0,0,0,.18); }
body.mnav-open .mnav { transform:none; }
body.mnav-open::before { content:''; position:fixed; inset:0; z-index:99; background:rgba(0,0,0,.4); }   /* 백드롭 */
/* 홈은 #site-header가 absolute z-60이라 그 안의 .mnav가 그 층에 갇힌다 → 백드롭(99)이 드로어를 덮어 회색이 됨.
   드로어 열렸을 때만 헤더 층을 백드롭 위로 올려 메뉴가 원래 흰색 그대로 보이게 한다. (2026-09-23) */
body.mnav-open #site-header { position:relative; z-index:101; }
body[data-page="home"].mnav-open #site-header { position:absolute; z-index:101; }
body.mnav-open { overflow:hidden; }
.mnav h4 { font-size:10px; letter-spacing:.15em; color:var(--mut); margin:26px 0 12px; }
.mnav a { display:block; font-size:16px; padding:8px 0; color:#000; }
.mnav-x { position:absolute; top:14px; right:16px; font-size:30px; line-height:1; background:none; border:none; color:#000; cursor:pointer; }
/* 카테고리 아코디언 (<details> 네이티브) */
.mnav-grp { border-top:1px solid var(--line); }
.mnav-grp summary { list-style:none; cursor:pointer; font-size:16px; font-weight:600; padding:12px 0; display:flex; justify-content:space-between; align-items:center; }
.mnav-grp summary::-webkit-details-marker { display:none; }
.mnav-grp summary::after { content:'+'; font-weight:400; font-size:18px; }
.mnav-grp[open] summary::after { content:'\2013'; }
.mnav-sub { padding:0 0 10px 12px; }
.mnav-sub a { font-size:14px; color:var(--mut); padding:6px 0; }
.mnav-top { font-size:16px; font-weight:600; padding:12px 0; border-top:1px solid var(--line); }
@media (max-width:640px) {
  .hdr { justify-content:space-between; }
  .mnav { width:100%; box-shadow:none; }   /* 모바일은 풀폭 */
  body.mnav-open::before { display:none; }
  .ftr-shop, .ftr-help { display:none; }    /* 푸터 SHOP/HELP는 햄버거로 이동 */
}

/* 히어로 자동재생 차단 시 재생 표시 (JS가 .hero-tap 부여) */
.hero-tap::after { content:''; position:absolute; left:50%; top:50%; width:56px; height:56px; margin:-28px 0 0 -28px; border-radius:50% !important;
  background:rgba(0,0,0,.35) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M8 5v14l11-7z'/%3E%3C/svg%3E") center/26px no-repeat;
  pointer-events:none; }

/* ---------- 모바일 홈: 섹션 하나가 화면을 꽉 채우고 하나씩 스냅으로 넘어감 (2026-09-10) ---------- */
@media (max-width:640px) {
  body[data-page="home"] { --hdrh:96px; }                       /* JS가 실제 헤더 높이로 덮어씀 */
  html:has(body[data-page="home"]) { scroll-snap-type:y mandatory; }
  /* 첫 화면 = 헤더 + 히어로가 정확히 한 화면, 이후 타일은 각각 한 화면 전체(헤더는 스크롤되어 사라짐) */
  body[data-page="home"] .hero { height:calc(100svh - var(--hdrh)); min-height:0; aspect-ratio:auto; scroll-snap-align:end;
    background:#000 url('../images/hero-v.jpg') center/cover no-repeat; }   /* 모바일 세로 포스터 fallback */
  body[data-page="home"] .hero video { object-fit:cover; }       /* 모바일은 세로본(hero-v.mp4)이라 여백 없이 채움 */
  body[data-page="home"] .hero-tag { display:none; }              /* 영상 위 태그라인 제거 */
  .hdr-bar { display:none; }                                       /* 상단 태그라인 바 제거 → 헤더 일체화 */
  body[data-page="home"] .split-cell { height:100svh; aspect-ratio:auto; scroll-snap-align:start; }
  body[data-page="home"] .ftr { scroll-snap-align:start; margin-top:0; }
}

/* ---------- 푸터: 화이트 대신 영상 배경 (2026-09-10) ---------- */
.ftr { position:relative; overflow:hidden; background:#000; color:#ddd; }
.ftr-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 30%; z-index:0; }
.ftr::before { content:''; position:absolute; inset:0; background:rgba(0,0,0,.45); z-index:1; }   /* 텍스트 가독용 어둡게 */
.ftr > .ftr-cols, .ftr > .ftr-legal { position:relative; z-index:2; }
.ftr .ftr-cols h4, .ftr-logo { color:#fff; }
.ftr .ftr-cols a, .ftr-legal, .ftr-legal a, .ftr-p { color:#e6e6e6; }
.ftr-cols { border-bottom-color:rgba(255,255,255,.25); }
.ftr-news { border-color:rgba(255,255,255,.5); background:rgba(0,0,0,.35); }
.ftr-news input { background:transparent; color:#fff; }
.ftr-news input::placeholder { color:#bbb; }
.ftr-news button { background:#fff; color:#000; }
@media (max-width:640px) {
  body[data-page="home"] .ftr { min-height:100svh; display:flex; flex-direction:column; justify-content:flex-end; }   /* 마지막 슬라이드도 한 화면 */
}

/* ---------- 홈 헤더: 화이트 제거, 영상 위 투명 오버레이 (2026-09-10) ---------- */
body[data-page="home"] #site-header { position:absolute; top:0; left:0; right:0; z-index:60; }
body[data-page="home"] .hdr-bar { display:none; }
body[data-page="home"] .hdr { background:transparent; border-bottom:none; color:#fff; }
body[data-page="home"] .hdr a, body[data-page="home"] .hdr-logo { color:#fff; text-shadow:0 1px 6px rgba(0,0,0,.35); }
body[data-page="home"] .hdr-burger span { background:#fff; }
@media (max-width:640px) {
  body[data-page="home"] .hero { height:100svh; scroll-snap-align:start; }   /* 헤더가 영상 위에 겹치므로 첫 화면 전체 = 영상 */
}
