/* A · 클린 카드 — 가운데 정렬, 흰 카드, 연노랑 두 톤 교차 */
/* 모바일 기준 화면 — 섹션 바탕은 화면 끝까지, 내용은 가운데 440px 폭 안에 */
.s{padding-left:max(20px,calc(50% - 220px));padding-right:max(20px,calc(50% - 220px));text-align:center}

/* 섹션마다 바탕색을 번갈아 써서 구분 */
.page>.s:nth-of-type(even){--sbg:#FFEBA0}
.lead,.body,.closing-line,.statement{text-align:center}
.checklist,.compare,.weeks,.bonus-grid,.plans,.pick,.faq{text-align:left}
.plan-badge{right:50%;transform:translateX(50%)}

/* 특별 혜택 — 대상이 좁아질수록 진하게 */
.bgroup-ch{box-shadow:inset 0 0 0 2px #FFE27A,var(--shadow)}
.bgroup-ch .bgroup-label{background:#FFE27A}
.pre-wrap{background:linear-gradient(160deg,#FFF1A6,#FFD43B);box-shadow:0 18px 40px rgba(230,170,0,.3)}
.pre-wrap .bgroup{box-shadow:0 4px 14px rgba(150,110,0,.1)}
.bgroup-pre{box-shadow:inset 0 0 0 2px #1F1F1F,0 4px 14px rgba(150,110,0,.1)!important}
.bgroup-pre .bgroup-label{background:var(--strong-bg);color:#FFD43B}

/* 옵션 — 가격이 올라갈수록 화려하게 */
.plans{gap:22px}
.plan-basic{--rb:linear-gradient(90deg,#FFE680,#FFD43B);--rb-fold:#C9A114;box-shadow:inset 0 0 0 1px #EFE3B6}
.plan-basic .btn{background:#FFF0B3}
.plan-challenge{--rb:linear-gradient(90deg,#FFC23D,#FF9F1C);--rb-fold:#B86E00;--pf-chip:#FFB020;--pf-line:#F3BD5A;--pf-bg:#FFF6E3;box-shadow:inset 0 0 0 2px #FFC23D,0 10px 26px rgba(200,130,0,.16)}
.plan-challenge .btn{background:linear-gradient(90deg,#FFC23D,#FF9F1C)}
.plan-premium{--rb:linear-gradient(90deg,#1F1F1F,#3A3A3A);--rb-ink:#FFD43B;--rb-fold:#000;--pf-chip:#1F1F1F;--pf-chip-ink:#FFD43B;--pf-line:rgba(0,0,0,.25);--pf-bg:rgba(255,255,255,.7);overflow:visible;background:linear-gradient(160deg,#FFF1A6 0%,#FFD43B 100%);box-shadow:0 18px 40px rgba(230,170,0,.35);--line:rgba(0,0,0,.12);--muted:#5A4A1A}
.plan-premium::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%) no-repeat;background-size:250% 100%;animation:shine 4.5s ease-in-out infinite;pointer-events:none}
.plan-premium>*:not(.plan-badge):not(.ribbon){position:relative;z-index:1}
.plan-premium .plan-list li::before{color:var(--ink)}
.plans-note{white-space:nowrap;font-size:min(3.3vw,14px);letter-spacing:-.03em}
@keyframes shine{0%{background-position:150% 0}60%,100%{background-position:-60% 0}}

/* 비교표 — 모두 가운데 정렬, 베이직 → 프리미엄으로 갈수록 진하게 */
.cmp-table th:first-child,.cmp-table td:first-child{padding-left:8px;text-align:center}
.cmp-table thead th:first-child{background:#FFF8DC}
.cmp-table tbody td:first-child,.cmp-table tfoot td:first-child{background:#FFFDF2}
.cmp-table thead th:nth-child(2){background:#FFF0B3}
.cmp-table thead th:nth-child(3){background:#FFE27A}
.cmp-table thead th:nth-child(4){background:#FFD43B}
.cmp-table tbody td:nth-child(2),.cmp-table tfoot td:nth-child(2){background:#FFF9E0}
.cmp-table tbody td:nth-child(3),.cmp-table tfoot td:nth-child(3){background:#FFF2C4}
.cmp-table tbody td:nth-child(4),.cmp-table tfoot td:nth-child(4){background:#FFEA99}
.cmp-table td:nth-child(4) .o{background:#1F1F1F;color:#FFD43B}
.cmp-table th:first-child,.cmp-table td:first-child{width:32%}
.cmp-table tfoot td:not(:first-child){padding-left:2px;padding-right:2px;font-size:min(3.6vw,13px);letter-spacing:-.03em}
.cmp-table tfoot td:first-child{font-size:13px;line-height:1.35}

/* 마무리 신청 버튼 — 얇고 길게 */
.btn-cta{display:block;width:min(100%,340px);margin:34px auto 0;padding:15px 20px;font-size:17px}
