/* ===================================================================
   위캔두잇 (We Can Do It / Let's Do It) — DB 수집 랜딩 1차시안
   순수 정적 퍼블 (카페24 LAMP). 폼/어드민 백엔드는 결제 후 연동.
   레이아웃 전략: 콘텐츠 컬럼 max 480px + container-query(cqw) 단위
     → 데스크탑 1:1, 모바일 자동 비례축소 (모바일 우선 충족)
     1cqw = 컬럼폭의 1% = 데스크탑 4.8px
=================================================================== */
:root{
  --navy:#2d4173;        /* 헤드라인/포인트 네이비 */
  --navy-dark:#243760;   /* 다크패널 */
  --blue:#1a2cf0;        /* 무료체험 버튼 */
  --ink:#2d4173;
  --sub:#8089a0;         /* 부제 */
  --body:#5b6478;        /* 본문 */
  --bg:#f0f0f0;          /* 콘텐츠 컬럼 배경 */
  --line:#d8dbe3;
  --yellow:#ffd02e;
  --red:#e8344a;
  --card:#fff;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  background:#fff;                 /* 데스크탑 좌우 여백(흰색) */
  font-family:'Pretendard','Apple SD Gothic Neo','Malgun Gothic',sans-serif;
  color:var(--body);
  line-height:1.5;
  word-break:keep-all;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}

.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

/* ===== 콘텐츠 컬럼 (시안 중앙 모바일 캔버스 = 480px) ===== */
.page{
  max-width:480px;
  margin:0 auto;
  background:var(--bg);
  container-type:inline-size;   /* cqw 기준 컨테이너 */
  overflow:hidden;
  position:relative;
}
.sec{padding:9.8cqw 6cqw}        /* 섹션 기본 여백 */
.center{text-align:center}

/* 타이포 (cqw) */
.h1{font-size:5.6cqw;font-weight:800;color:var(--ink);line-height:1.28;letter-spacing:-.02em}
.h2{font-size:4.7cqw;font-weight:800;color:var(--ink);line-height:1.3;letter-spacing:-.02em}
.sub{font-size:2.9cqw;font-weight:500;color:var(--sub);line-height:1.6;margin-top:2.4cqw}
.lead{font-size:2.7cqw;color:var(--body);line-height:1.7}
.b{font-weight:800}
.navy{color:var(--navy)}
.cap{font-size:1.9cqw;color:#9aa1b2;letter-spacing:.06em;margin-top:2.4cqw}

/* 점 구분선(디자인의 빨간 점선 → 옅은 구분) */
.divider{height:0;border-top:1px dashed #e2c3c7;margin:0 6cqw}

.top-offer{background:var(--navy-dark);color:#dfe4f1;text-align:center;padding:5cqw 6cqw 6cqw}
.offer-eyebrow{font-size:2cqw;color:var(--yellow);letter-spacing:.14em;font-weight:700}
.top-countdown{margin:2.2cqw 0 1.5cqw}
.offer-note{font-size:2cqw;color:#d7ddec;letter-spacing:.08em}
.top-event{background:#fff;padding-top:8cqw;padding-bottom:7cqw}
.we-logo{font-size:7cqw;font-weight:300;color:#283b6b;letter-spacing:.02em;line-height:1}
.we-logo span{font-weight:800}
.we-sub{display:inline-block;margin-top:2cqw;background:var(--navy);color:#fff;font-size:2.8cqw;font-weight:800;padding:1.2cqw 3cqw}
.event-title{font-size:3.5cqw;color:var(--navy);font-weight:800;margin:5cqw 0 4cqw}
.top-event img{width:83.5cqw;margin:0 auto}
.life-copy{padding-top:7cqw;padding-bottom:7cqw}
.life-copy h2{font-size:5.4cqw;line-height:1.25;font-weight:300;color:var(--navy);letter-spacing:-.02em}
.life-copy b{font-weight:800}

/* ===== 1. 인생 헤드 + before/after ===== */
.hero-life{padding-top:5cqw}
.compare{
  margin-top:5cqw;display:flex;align-items:center;justify-content:center;gap:2cqw;
}
.compare .arrow-nav{
  flex:0 0 auto;width:5.4cqw;height:5.4cqw;border-radius:50%;
  background:#fff;color:var(--navy);display:flex;align-items:center;justify-content:center;
  font-size:2.6cqw;box-shadow:0 .4cqw 1.2cqw rgba(0,0,0,.12);font-weight:700;
}
.compare .pair{flex:1;display:flex;gap:1.6cqw;align-items:center;justify-content:center}
.ba-card{position:relative;flex:1;border-radius:2cqw;overflow:hidden;box-shadow:0 .6cqw 2cqw rgba(0,0,0,.1)}
.ba-card img{width:100%;aspect-ratio:3/4;object-fit:cover}
.ba-tag{position:absolute;left:50%;bottom:6%;transform:translateX(-50%);
  background:rgba(45,65,115,.92);color:#fff;font-weight:800;font-size:2cqw;
  padding:.9cqw 3cqw;border-radius:5cqw;letter-spacing:.05em}
.ba-mid{flex:0 0 auto;color:var(--navy);font-size:3.4cqw;font-weight:800}

/* ===== 2. SINCE 2007 ===== */
.badge-since{
  display:inline-flex;align-items:center;gap:.8cqw;background:var(--navy);color:#fff;
  font-weight:800;font-size:2.2cqw;letter-spacing:.08em;padding:1.2cqw 3cqw;border-radius:1cqw;
  position:relative;margin-bottom:3.5cqw}
.badge-since::after{content:"";position:absolute;left:3cqw;bottom:-1.1cqw;
  border:1.2cqw solid transparent;border-top-color:var(--navy);border-bottom:0}

/* ===== 3. 미디어 ===== */
.media img{border-radius:2cqw;box-shadow:0 .6cqw 2cqw rgba(0,0,0,.08)}
.media .media-chosun{margin:0 auto 4cqw;max-width:80cqw}
.media .media-grid{margin:0 auto;max-width:90cqw}

/* ===== 4. 달인 씰 ===== */
.dalin{text-align:center}
.dalin .seal{width:46cqw;margin:4cqw auto;}
.dalin .lastchance{font-size:6.4cqw;font-weight:800;color:var(--navy);letter-spacing:-.02em}

/* ===== 5. 망가진 일상 + CEO 인용 ===== */
.ceo-quote{
  margin:6cqw -6cqw 0;background:var(--navy);border-radius:0;overflow:hidden;
  display:flex;align-items:stretch;box-shadow:0 1cqw 3cqw rgba(45,65,115,.25)}
.ceo-quote .photo{flex:0 0 48%;}
.ceo-quote .photo img{width:100%;height:100%;object-fit:cover;min-height:78cqw;object-position:left center}
.ceo-quote .txt{flex:1;padding:7cqw 5cqw;color:#fff;display:flex;flex-direction:column;justify-content:center}
.ceo-quote .name{font-weight:800;font-size:3cqw}
.ceo-quote .role{font-size:1.7cqw;color:#aeb8d6;letter-spacing:.12em;margin:.6cqw 0 3cqw}
.ceo-quote .saying{font-size:2.6cqw;line-height:1.7;color:#eef1f8}

/* ===== 6. 진짜 고민 + 3 heads ===== */
.heads{display:flex;gap:2cqw;justify-content:center;margin-top:5cqw}
.heads .head{flex:1;max-width:30cqw;border-radius:50%;overflow:hidden;background:#e6e8ee;aspect-ratio:1}
.heads .head img{width:100%;height:100%;object-fit:cover}

/* ===== 7. 체크리스트 ===== */
.checklist{display:flex;flex-direction:column;gap:2.2cqw;margin-top:1cqw}
.check{display:flex;align-items:center;gap:2.4cqw;background:#fff;border-radius:1.6cqw;
  padding:3cqw 3.4cqw;box-shadow:0 .3cqw 1cqw rgba(0,0,0,.04);font-size:2.5cqw;color:#4a5468}
.check .box{flex:0 0 auto;width:3.4cqw;height:3.4cqw;border-radius:.7cqw;background:var(--navy);
  color:#fff;display:flex;align-items:center;justify-content:center;font-size:2.2cqw;font-weight:800}
.check.off .box{background:#fff;border:.3cqw solid #c7ccd8;color:transparent}

/* ===== 9. 보이지않는 디테일 + wig demo ===== */
.detail .demo{margin-top:4cqw;display:flex;gap:2cqw;justify-content:center}
.detail .demo .ba-card{background:#eaf3d6}
.detail .demo .ba-card img{aspect-ratio:1;object-fit:contain}
.quote-line{font-size:3cqw;font-weight:800;color:var(--navy);margin-top:5cqw;text-align:center}

/* ===== 10. FAQ ===== */
.faq{display:flex;flex-direction:column;gap:6.6cqw}
.faq .q{font-size:3.9cqw;font-weight:800;color:var(--navy);text-align:center;letter-spacing:-.02em}
.faq .a{font-size:2.5cqw;color:var(--body);text-align:center;margin-top:1.6cqw}

/* ===== 11. 신청 폼 ===== */
.formsec{text-align:center;padding-top:78cqw;padding-bottom:28cqw}
.lock{width:28cqw;height:28cqw;margin:0 auto 6cqw;border-radius:50%;background:#fff;
  box-shadow:0 1cqw 3cqw rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center}
.lock svg{width:13cqw;height:13cqw;fill:var(--navy)}
#apply{max-width:72cqw;margin:7cqw auto 0;display:flex;flex-direction:column;gap:2.7cqw}
.field{width:100%;height:10.5cqw;border:0;border-radius:5cqw;background:#fff;
  box-shadow:0 .4cqw 1.4cqw rgba(0,0,0,.07);text-align:center;font-size:3cqw;color:var(--navy);
  font-weight:700;font-family:inherit}
.field::placeholder{color:var(--navy);opacity:.85;font-weight:700}
.agree{display:flex;align-items:center;justify-content:center;gap:1.6cqw;font-size:2cqw;color:#7b8398;margin:.5cqw 0}
.agree input{width:3cqw;height:3cqw;accent-color:var(--navy)}
.agree a{color:var(--navy);text-decoration:underline}
.btn-apply{width:100%;height:13cqw;border:0;border-radius:2cqw;background:var(--blue);
  color:#fff;font-size:4.4cqw;font-weight:800;letter-spacing:-.01em;cursor:pointer;
  box-shadow:0 1cqw 2.6cqw rgba(26,44,240,.35);font-family:inherit}
.seats{font-size:2.4cqw;color:var(--navy);font-weight:700;margin-top:2.6cqw}
.seats b{color:var(--red)}
.bizinfo{margin-top:8.5cqw;font-size:1.7cqw;color:#9aa1b2;line-height:1.9;text-align:center}
.bizinfo .pp{color:var(--navy);text-decoration:underline;font-weight:600}

/* ===== 12. 영상 ===== */
.video{padding-left:0;padding-right:0}
.video img{width:100%;border-radius:0}

/* ===== 13. 브랜드 ===== */
.brand{text-align:center}
.brand .pre{font-size:2.6cqw;color:var(--sub)}
.brand .logo{font-size:8cqw;font-weight:800;color:var(--navy);font-style:italic;letter-spacing:-.01em;margin:1cqw 0 5cqw;font-family:Georgia,'Times New Roman',serif}
.brand .h2{margin-bottom:2.4cqw}

/* ===== 14. 다크 CTA 패널 ===== */
.darkcta{background:var(--navy-dark);color:#dfe4f1;border-radius:0;padding:8cqw 6cqw 38cqw;text-align:center;position:relative}
.darkcta .applied-line{font-size:2cqw;color:#aeb8d6;letter-spacing:.04em}
.countdown{display:inline-flex;align-items:center;gap:2cqw;margin:3cqw 0 2cqw}
.countdown .lbl{background:var(--yellow);color:var(--navy-dark);font-weight:800;font-size:2.4cqw;padding:1cqw 2.6cqw;border-radius:1cqw}
.countdown .time{font-size:5.4cqw;font-weight:800;color:#fff;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.darkcta .note{font-size:2cqw;color:#aeb8d6}
.bft-card{background:#eef0f6;border-radius:2.4cqw;padding:4.5cqw 4cqw;margin:5cqw 0;text-align:left;
  display:flex;align-items:center;gap:3.5cqw}
.bft-card .ic{flex:0 0 auto;width:16cqw;height:16cqw;border-radius:50%;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center}
.bft-card .ic img{width:100%;height:100%;object-fit:cover}
.bft-card .ic svg{width:9cqw;height:9cqw;fill:var(--navy)}
.bft-card .bt{font-size:3.4cqw;font-weight:800;color:var(--navy);display:block;margin-bottom:1.4cqw}
.bft-card .bd{font-size:2.3cqw;color:#5b6478;line-height:1.6}
.darkcta .closing{font-size:2.8cqw;font-weight:700;color:#eef1f8;line-height:1.7;margin-top:5cqw}
.darkcta .closing b{color:var(--yellow)}
.event-go{position:absolute;right:6cqw;bottom:-5cqw;width:18cqw;height:18cqw;border-radius:50%;
  background:var(--yellow);color:var(--navy-dark);display:flex;align-items:center;justify-content:center;
  text-align:center;font-size:2.3cqw;font-weight:800;line-height:1.25;box-shadow:0 1cqw 3cqw rgba(0,0,0,.3);z-index:3}

/* ===== 토스트 티커 ===== */
.ticker{background:var(--blue);color:#fff;text-align:center;font-size:2.2cqw;padding:3cqw;font-weight:600}
.ticker b{font-weight:800}

/* ===== 하단 고정 CTA (시안 주석: 하단 신청 푸터 계속 따라다니게) ===== */
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;justify-content:center;
  pointer-events:none;transition:transform .32s ease, opacity .32s ease}
.sticky-cta.hide{transform:translateY(120%);opacity:0;pointer-events:none}
.sticky-cta .inner{width:100%;max-width:480px;background:var(--navy);display:flex;align-items:center;
  gap:3%;padding:2.6% 4%;pointer-events:auto;box-shadow:0 -2px 16px rgba(0,0,0,.2)}
.sticky-cta .txt{flex:1;color:#fff;font-weight:700;font-size:clamp(12px,3.4vw,18px);line-height:1.35}
.sticky-cta .txt small{display:block;color:#aeb8d6;font-weight:500;font-size:.78em}
.sticky-cta .go{flex:0 0 auto;background:var(--blue);color:#fff;font-weight:800;
  font-size:clamp(13px,3.6vw,19px);padding:.85em 1.4em;border-radius:10px;border:0;cursor:pointer;font-family:inherit}

/* 완료 팝업 (데모) */
.modal{position:fixed;inset:0;background:rgba(20,26,45,.6);display:none;align-items:center;justify-content:center;z-index:100;padding:24px}
.modal.on{display:flex}
.modal .box{background:#fff;border-radius:18px;max-width:420px;width:100%;padding:40px 28px;text-align:center}
.modal .box h3{color:var(--navy);font-size:22px;margin-bottom:12px}
.modal .box p{color:var(--body);font-size:15px;line-height:1.6}
.modal .box button{margin-top:22px;background:var(--navy);color:#fff;border:0;border-radius:10px;padding:12px 28px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit}

/* 본문이 sticky 바에 가리지 않도록 */
.page{padding-bottom:90px}
.sticky-cta{display:none}
