/* 마인드랩 지문적성검사 — 2026-10-31 개편 디자인 (.fx)
   공개 /fingerprint·/fingerprint/apply·/fingerprint/sample/*, 앱 안 /tools/fingerprint가 함께 쓴다.
   글자 크기는 --fs·--lh 변수로 정한다. 앱 공통 CSS가 p·li·label 등에 !important 크기를 걸기 때문에,
   맨 아래 "앱 안 덮어쓰기"에서 그 요소들이 이 변수를 따르게 한다. */
.fx,.fx-topbar,.fx-footer,.fx-sticky{
 --ink:#15222c;--ink-2:#34434f;--muted:#66727d;--line:#e7dfd4;--line-2:#d9cfc1;
 --ivory:#faf6f0;--paper:#fff;--tint:#f4eee5;--teal:#174f52;--teal-2:#206a6c;--teal-soft:#e3efee;
 --coral:#df6c55;--coral-2:#c9563f;--coral-soft:#fbe7e0;--gold:#a8813f;
 --night:#111c24;--night-2:#1b2a34;
 --radius:22px;--shadow:0 1px 2px rgb(21 34 44/.06),0 12px 32px -12px rgb(21 34 44/.18);
 --font:"MindLab Noto Sans KR","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
 font-family:var(--font);color:var(--ink);-webkit-font-smoothing:antialiased;word-break:keep-all;overflow-wrap:break-word
}
.fx{--fs:17px;--lh:1.75;font-size:var(--fs);line-height:var(--lh);background:var(--ivory);display:block;position:relative;overflow:hidden}
.fx *,.fx *::before,.fx *::after,.fx-topbar *,.fx-footer *,.fx-sticky,.fx-sticky *{box-sizing:border-box}
.fx img{max-width:100%;height:auto;display:block}
:where(.fx) a{color:inherit}
.fx h1,.fx h2,.fx h3,.fx p,.fx ol,.fx ul,.fx figure,.fx blockquote,.fx dl{margin:0}
.fx ol,.fx ul{padding:0;list-style:none}
.fx em{font-style:normal;color:var(--coral)}
.fx-body{margin:0;background:var(--ivory)}
.fx-wrap{width:min(1180px,100%);margin:0 auto;padding:0 32px;position:relative}
.fx-narrow{width:min(860px,100%)}
.fx-center{text-align:center}

/* 공통 글자 */
.fx-eyebrow{--fs:12px;--lh:1.4;font-size:var(--fs);line-height:var(--lh);font-weight:700;letter-spacing:.22em;color:#c4533b;text-transform:uppercase;margin-bottom:14px!important}
.fx-head{max-width:760px;margin:0 0 48px}
.fx-head h2{font-size:clamp(30px,4.2vw,46px);line-height:1.28;font-weight:800;letter-spacing:-.025em;color:var(--ink)}
.fx-head .fx-lead,.fx-lead{--fs:18px;--lh:1.8;font-size:var(--fs);line-height:var(--lh);color:var(--ink-2);margin-top:18px}
.fx-head.is-light h2{color:#fff}.fx-head.is-light .fx-lead{color:#c9d3da}.fx-head.is-light .fx-eyebrow{color:#f0a28f}
.fx-note{--fs:14px;--lh:1.7;font-size:var(--fs);line-height:var(--lh);color:var(--muted);margin-top:16px}
.fx-section{padding:112px 0;position:relative}
.fx-tint{background:var(--tint)}
.fx-dark{background:radial-gradient(1200px 500px at 85% 0%,#22404a 0%,transparent 60%),var(--night);color:#e7edf1}

/* 버튼 */
.fx-btn{--fs:16px;--lh:1.3;font-size:var(--fs);line-height:var(--lh);font-family:var(--font);display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 28px;border-radius:999px;border:1px solid transparent;font-weight:700;text-decoration:none;cursor:pointer;transition:background-color .18s,box-shadow .18s,border-color .18s,color .18s;white-space:nowrap}
.fx-btn-primary{background:var(--coral);color:#fff;box-shadow:0 10px 24px -10px rgb(223 108 85/.75)}
.fx-btn-primary:hover{background:var(--coral-2);box-shadow:0 14px 28px -10px rgb(201 86 63/.8)}
.fx-btn-dark{background:var(--teal);color:#fff}.fx-btn-dark:hover{background:var(--teal-2)}
.fx-btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}.fx-btn-ghost:hover{background:#fff;border-color:var(--ink)}
.fx-btn-block{display:flex;width:100%}
.fx-btn:disabled{opacity:.6;cursor:wait}
.fx-arrow{display:inline-block;transition:transform .18s}
.fx-link{--fs:16px;font-size:var(--fs);font-weight:700;color:var(--teal);text-decoration:none;display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid currentColor;padding-bottom:2px}
.fx-actions{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-top:32px}
.fx-back{--fs:14px;font-size:var(--fs);color:var(--muted);text-decoration:none;font-weight:600;display:table;margin-bottom:22px}
.fx-back:hover{color:var(--ink)}

/* 상단 바 */
.fx-topbar{position:sticky;top:0;z-index:50;background:rgb(250 246 240/.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid rgb(21 34 44/.07)}
.fx-topbar-inner{width:min(1180px,100%);margin:0 auto;padding:0 32px;height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.fx-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.fx-brand span{display:flex;flex-direction:column;line-height:1.1}
.fx-brand b{font-size:17px;letter-spacing:.14em;font-weight:800}
.fx-brand small{font-size:11px;letter-spacing:.12em;color:var(--muted);margin-top:4px}
.fx-brand.is-light{color:#fff}.fx-brand.is-light small{color:#9fb0bb}
/* 2026-11-01 로고 통일: 사이트 전체와 같은 남색 왕관 M + MIND LAB(남색). 아래 줄은 지문적성연구소(양옆 가는 선).
   어두운 꼬리말에서는 로고가 묻히지 않게 흰 판 위에 올린다. */
.fx-brand b{font-size:19px;letter-spacing:.06em;color:#14295c}
.fx-brand span{gap:4px;white-space:nowrap}
.fx-brand small{display:flex;align-items:center;gap:6px;margin-top:0;font-size:10.5px;font-weight:700;letter-spacing:.18em;color:#2f4f86}
.fx-brand small i{flex:1 1 10px;min-width:8px;height:1px;background:#3d73a5}
.fx-brand img{height:44px;width:auto}
.fx-brand.is-light{background:#fff;padding:10px 18px 10px 12px;border-radius:14px;box-shadow:0 6px 18px -10px rgb(0 0 0/.5)}
.fx-brand.is-light img{height:50px}
.fx-brand.is-light b{color:#14295c}
.fx-brand.is-light small{color:#2f4f86}
.fx-brand-gold{display:inline-flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none}
.fx-brand-gold img{width:127px;height:auto}
.fx-brand-gold small{font-size:12px;letter-spacing:.24em;color:#d6b56a}
.fx-nav{display:flex;align-items:center;gap:6px}
.fx-nav a{font-size:15px;font-weight:600;color:var(--ink-2);text-decoration:none;padding:10px 14px;border-radius:999px}
.fx-nav a:hover{background:rgb(21 34 44/.06);color:var(--ink)}
.fx-nav .fx-nav-cta{background:var(--ink);color:#fff;padding:10px 18px}
.fx-nav .fx-nav-cta:hover{background:var(--teal);color:#fff}
.fx-ribbon{margin:0;background:var(--ink);color:#f4ede4;text-align:center;font-size:13.5px;line-height:1.5;padding:9px 16px;letter-spacing:.01em}
.fx-ribbon b{display:inline-block;margin-left:8px;padding:1px 10px;border-radius:999px;background:var(--coral);color:#fff;font-size:12px}

/* 첫 화면 */
.fx-hero{padding:88px 0 0;background:radial-gradient(900px 520px at 78% 30%,#fbe2d8 0%,rgb(251 226 216/0) 65%),radial-gradient(700px 420px at 0% 100%,#e6efe9 0%,rgb(230 239 233/0) 70%),var(--ivory);position:relative}
.fx-hero-ridges{position:absolute;inset:-20% -10% auto auto;width:900px;height:900px;pointer-events:none;opacity:.55}
.fx-hero-ridges i{position:absolute;inset:0;margin:auto;border:1px solid rgb(223 108 85/.18);border-radius:50%}
.fx-hero-ridges i:nth-child(1){width:18%;height:22%}.fx-hero-ridges i:nth-child(2){width:31%;height:36%}.fx-hero-ridges i:nth-child(3){width:44%;height:50%}.fx-hero-ridges i:nth-child(4){width:57%;height:64%}.fx-hero-ridges i:nth-child(5){width:70%;height:78%}.fx-hero-ridges i:nth-child(6){width:83%;height:92%}.fx-hero-ridges i:nth-child(7){width:96%;height:106%}
.fx-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}
.fx-badge{display:inline-flex;align-items:center;gap:10px;padding:6px 16px 6px 6px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);--fs:14px;--lh:1.4;font-size:var(--fs);line-height:var(--lh);font-weight:600;color:var(--ink-2)}
.fx-dday{display:inline-block;white-space:nowrap;flex:none;background:var(--coral);color:#fff;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:800;letter-spacing:.04em}
.fx-hero h1,.fx-apply h1,.fx-choose h1{margin-top:26px;font-size:18px;font-weight:700;letter-spacing:.08em;color:var(--teal)}
.fx-h1-main{display:block;margin-top:14px;font-size:clamp(40px,5.8vw,72px);line-height:1.14;letter-spacing:-.035em;font-weight:800;color:var(--ink)}
.fx-hero-lead{--fs:19px;--lh:1.8;font-size:var(--fs);line-height:var(--lh);color:var(--ink-2);margin-top:26px!important;max-width:560px}
.fx-hero-lead b{color:var(--ink)}
.fx-hero-points{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:26px!important}
.fx-hero-points li{--fs:14.5px;font-size:var(--fs);display:flex;align-items:center;gap:7px;color:var(--ink-2)}
.fx-hero-points svg,.fx-offer li svg,.fx-gets svg{color:var(--teal);flex:none}
.fx-hero-art{position:relative;aspect-ratio:1/1;max-width:520px;width:100%;justify-self:center}
.fx-specimen{position:absolute;inset:8%;border-radius:50%;background:#fff;box-shadow:0 40px 80px -30px rgb(150 70 50/.35),inset 0 0 0 1px rgb(21 34 44/.05);display:grid;place-items:center}
.fx-specimen-ring{position:absolute;border-radius:50%;border:1px dashed rgb(23 79 82/.25)}
.fx-specimen-ring.r1{inset:-6%}.fx-specimen-ring.r2{inset:-14%;border-style:solid;border-color:rgb(223 108 85/.15)}
.fx-specimen-img{width:68%;aspect-ratio:1/1;border-radius:50%;overflow:hidden}
.fx-specimen-img img{width:100%;height:100%;object-fit:cover}
.fx-float{position:absolute;display:flex;align-items:center;gap:10px;padding:8px 16px 8px 8px;background:#fff;border-radius:18px;box-shadow:var(--shadow);border:1px solid var(--line)}
.fx-float img{width:46px;height:46px;border-radius:12px;background:#fff}
.fx-float span{display:flex;flex-direction:column;font-size:12px;line-height:1.35;color:var(--muted)}
.fx-float b{font-size:15px;color:var(--ink)}
.fx-float.f1{left:-4%;top:14%}.fx-float.f2{right:-6%;top:42%}.fx-float.f3{left:4%;bottom:6%}
.fx-hero-count{position:absolute;right:2%;bottom:4%;background:var(--ink);color:#fff;border-radius:18px;padding:14px 20px;box-shadow:var(--shadow);text-align:left}
.fx-hero-count small{display:block;font-size:11px;letter-spacing:.08em;color:#f0a28f}
.fx-hero-count b{font-size:22px;letter-spacing:-.01em}
.fx-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:72px!important;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transform:translateY(50%);position:relative;z-index:2}
.fx-stats li{padding:26px 28px;display:flex;flex-direction:column;gap:4px}
.fx-stats li+li{border-left:1px solid var(--line)}
.fx-stats b{font-size:30px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
.fx-stats li:first-child b{color:var(--coral)}
.fx-stats span{--fs:14px;font-size:var(--fs);color:var(--muted)}
.fx-hero+[data-fp-live-anchor],.fx-hero+.fpk-live-status{margin-top:0}
.fx-overview>.fx-hero+*{padding-top:80px}
#fxWorry{padding-top:96px}

/* 신청 현황 (fingerprint-live-status.mjs가 넣는 영역) */
#app .fx .fpk-live-status,.fx .fpk-live-status{background:transparent;border:0;padding-top:96px}
#app .fx .fpk-live-inner{max-width:1180px;padding:0 32px;grid-template-columns:1fr 1.5fr}
#app .fx .fpk-live-title>span{color:var(--coral);letter-spacing:.2em;font-weight:700}
#app .fx .fpk-live-title h2{font-size:24px!important;color:var(--ink)}
#app .fx .fpk-live-numbers>div{background:#fff;border-color:var(--line);border-radius:18px;box-shadow:var(--shadow)}
#app .fx .fpk-live-numbers strong{color:var(--ink)}
.fx-apply #app .fx .fpk-live-status,#app .fx-apply .fpk-live-status{padding-top:24px}
#app .fx-apply .fpk-live-inner{padding:0;grid-template-columns:1fr}
#app .fx-apply .fpk-live-numbers{grid-template-columns:repeat(3,1fr)}
#app .fx-apply .fpk-live-numbers strong{font-size:24px}
#app .fx-apply .fpk-live-title h2{font-size:18px!important}

/* 고민 */
.fx-worries{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fx-worries li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px 32px;position:relative;box-shadow:0 1px 0 rgb(21 34 44/.03)}
.fx-worry-no{position:absolute;right:24px;top:22px;font-size:13px;font-weight:800;color:var(--line-2);letter-spacing:.08em}
.fx-worries small{--fs:13px;font-size:var(--fs);font-weight:700;color:var(--teal);letter-spacing:.04em}
.fx-worries p{--fs:20px;--lh:1.6;font-size:var(--fs);line-height:var(--lh);font-weight:700;margin-top:12px!important;color:var(--ink)}

/* 엄지 체험 */
.fx-try .fx-head{margin-left:auto;margin-right:auto;text-align:center}
.fx-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.fx-thumb{font-family:var(--font);text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:var(--radius);padding:22px 22px 26px;cursor:pointer;color:var(--ink);display:flex;flex-direction:column;gap:4px;transition:border-color .18s,box-shadow .18s}
.fx-thumb:hover{border-color:var(--line-2);box-shadow:var(--shadow)}
.fx-thumb[aria-pressed=true]{border-color:var(--coral);box-shadow:0 0 0 4px var(--coral-soft),var(--shadow)}
.fx-thumb-img{display:block;border-radius:16px;overflow:hidden;background:#fff;aspect-ratio:1/1;margin-bottom:14px}
.fx-thumb-img img{width:100%;height:100%;object-fit:cover}
.fx-thumb small{font-size:12px;font-weight:800;letter-spacing:.2em;color:var(--coral)}
.fx-thumb b{font-size:24px;font-weight:800}
.fx-thumb-desc{--fs:15px;font-size:var(--fs);line-height:1.65;color:var(--muted)}
.fx-thumb-result{margin-top:22px}
.fx-thumb-panel{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:var(--ink);color:#e7edf1;border-radius:var(--radius);padding:32px 36px}
.fx-thumb-panel h3{font-size:24px;color:#fff;margin:4px 0 8px}
.fx-thumb-panel .fx-note{color:#a9b6bf}
.fx-thumb-placeholder{--fs:15px;font-size:var(--fs);text-align:center;color:var(--muted);padding:22px;border:1.5px dashed var(--line-2);border-radius:var(--radius)}

/* 왜 지문인가 */
.fx-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:8px!important}
.fx-timeline::before{content:"";position:absolute;left:0;right:0;top:27px;height:1px;background:linear-gradient(90deg,rgb(255 255 255/.08),rgb(240 162 143/.6),rgb(255 255 255/.08))}
.fx-timeline li{padding:0 24px 0 0;position:relative}
.fx-timeline b{display:inline-grid;place-items:center;min-width:56px;height:56px;padding:0 14px;border-radius:999px;background:var(--night-2);border:1px solid rgb(255 255 255/.14);color:#fff;font-size:17px;font-weight:800;position:relative}
.fx-timeline li.is-now b{background:var(--coral);border-color:var(--coral)}
.fx-timeline strong{display:block;margin-top:22px;font-size:20px;color:#fff}
.fx-timeline span{display:block;margin-top:6px;font-size:15px;line-height:1.65;color:#a9b6bf}
.fx-history{margin-top:72px!important;padding-top:40px;border-top:1px solid rgb(255 255 255/.1);display:grid;grid-template-columns:.9fr 1.1fr;gap:40px}
.fx-history-title{--fs:22px;font-size:var(--fs);font-weight:800;color:#fff;line-height:1.5}
.fx-history-title span{display:block;margin-top:10px;font-size:15px;font-weight:400;line-height:1.75;color:#a9b6bf}
.fx-history ol{display:grid;gap:14px}
.fx-history li{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:baseline;--fs:16px;font-size:var(--fs);color:#d4dde3}
.fx-history li b{color:#f0a28f;font-size:18px}

/* 10가지 유형 */
.fx-families{display:grid;grid-template-columns:2fr 2fr 6fr;gap:18px;margin-bottom:18px!important}
.fx-families li{display:flex;flex-direction:column;gap:2px;padding:14px 18px;border-radius:16px;border-top:3px solid var(--fam);background:#fff;--fs:14px;font-size:var(--fs)}
.fx-families b{font-size:14px;letter-spacing:.06em;font-weight:800;color:var(--ink)}
.fx-families span{font-size:13.5px;color:var(--muted)}
.fam-arch{--fam:#c99a52}.fam-loop{--fam:#df6c55}.fam-whorl{--fam:#206a6c}
.fx-types{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.fx-type-fam{position:absolute;right:16px;top:14px;z-index:1;font-size:11.5px;font-weight:700;color:color-mix(in srgb,var(--fam) 68%,#1b1b1b);background:#fff;padding:2px 9px;border-radius:999px;border:1px solid var(--fam)}
.fx-type{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px 22px;position:relative;height:100%;transition:box-shadow .2s,border-color .2s}
.fx-type:hover{box-shadow:var(--shadow);border-color:var(--line-2)}
.fx-type-no{position:absolute;left:18px;top:16px;font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--ink);z-index:1}
.fx-type-img{aspect-ratio:1/1;border-radius:14px;overflow:hidden;background:#fff;margin-bottom:14px}
.fx-type-img img{width:100%;height:100%;object-fit:cover}
.fx-type figcaption{display:flex;flex-direction:column;gap:3px}
.fx-type figcaption b{font-size:21px;font-weight:800}
.fx-type-nick{font-size:14px;font-weight:700;color:var(--teal)}
.fx-type-shape{font-size:13.5px;color:var(--muted)}

/* 보고서 */
.fx-tabs{display:inline-flex;padding:5px;background:#fff;border:1px solid var(--line);border-radius:999px;margin-bottom:34px;gap:4px}
.fx-tabs button{font-family:var(--font);--fs:15px;font-size:var(--fs);font-weight:700;border:0;background:transparent;color:var(--muted);padding:12px 26px;border-radius:999px;cursor:pointer}
.fx-tabs button[aria-selected=true]{background:var(--ink);color:#fff}
.fx-report{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.fx-book{position:relative;aspect-ratio:3/4;max-width:380px;width:100%;justify-self:center;filter:drop-shadow(0 30px 40px rgb(21 34 44/.22))}
.fx-book-spine{position:absolute;left:0;top:0;bottom:0;width:16px;background:linear-gradient(90deg,rgb(0 0 0/.25),rgb(0 0 0/0));border-radius:6px 0 0 6px;z-index:1}
.fx-book-face{position:absolute;inset:0;border-radius:6px 16px 16px 6px;padding:34px 30px;display:flex;flex-direction:column;background:linear-gradient(160deg,#fff 0%,#fbf3ec 100%);border:1px solid var(--line)}
.fx-book.adult .fx-book-face{background:linear-gradient(160deg,#1c3a3c 0%,#122729 100%);border-color:#0f2223;color:#fff}
.fx-book-brand{font-size:13px;font-weight:800;letter-spacing:.2em;display:flex;justify-content:space-between}
.fx-book-brand span{font-size:10px;letter-spacing:.16em;color:var(--coral)}
.fx-book-kind{margin-top:auto!important;font-size:13px;color:var(--muted)}
.fx-book.adult .fx-book-kind{color:#9fb7b8}
.fx-book-title{margin-top:8px!important;font-size:26px;line-height:1.35;font-weight:800;letter-spacing:-.02em}
.fx-book-mark{width:96px;height:96px;border-radius:50%;overflow:hidden;margin:26px 0 auto;background:#fff;box-shadow:0 0 0 6px rgb(223 108 85/.12)}
.fx-book-foot{font-size:11px;letter-spacing:.06em;color:var(--muted);margin-top:22px!important}
.fx-book.adult .fx-book-foot{color:#9fb7b8}
.fx-report-copy h3{font-size:30px;line-height:1.35;font-weight:800;letter-spacing:-.02em;margin-bottom:12px}
.fx-report-copy>p{color:var(--ink-2)}
.fx-chapters{margin-top:26px!important;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fx-chapters li{display:flex;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.fx-chapters li>span{font-size:13px;font-weight:800;color:var(--coral);padding-top:3px}
.fx-chapters b{display:block;font-size:16px}
.fx-chapters small{display:block;font-size:13.5px;line-height:1.6;color:var(--muted);margin-top:2px}
.fx-report blockquote{--fs:18px;font-size:var(--fs);margin-top:24px!important;padding:18px 22px;border-left:3px solid var(--coral);background:#fff;border-radius:0 14px 14px 0;color:var(--ink);font-weight:600}

/* 진행 과정·원칙 */
.fx-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s}
.fx-steps li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px 30px;display:flex;flex-direction:column;gap:8px}
.fx-step-no{width:44px;height:44px;border-radius:14px;background:var(--teal-soft);color:var(--teal);display:grid;place-items:center;font-weight:800;font-size:18px}
.fx-step-meta{--fs:12.5px;font-size:var(--fs);font-weight:700;letter-spacing:.06em;color:var(--coral);margin-top:10px!important}
.fx-steps b{font-size:20px}
.fx-steps li>span:last-child{font-size:15px;line-height:1.7;color:var(--muted)}
.fx-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.fx-principles>div{border-radius:var(--radius);padding:28px;background:var(--ink);color:#d4dde3}
.fx-principles b{display:block;font-size:19px;color:#fff;margin-bottom:8px}
.fx-principles p{--fs:15px;--lh:1.75;font-size:var(--fs);color:#a9b6bf}

/* 기간 한정 혜택 */
.fx-offer-section{background:linear-gradient(180deg,var(--ivory) 0%,#f6ebe2 100%)}
.fx-offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.fx-offer-copy .fx-head{margin-bottom:32px}
.fx-countdown{display:inline-flex;flex-direction:column;gap:4px;padding:22px 28px;border-radius:var(--radius);background:var(--ink);color:#fff;box-shadow:var(--shadow)}
.fx-countdown span{font-size:12px;font-weight:700;letter-spacing:.16em;color:#f0a28f}
.fx-countdown b{font-size:clamp(28px,3.4vw,40px);font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.fx-countdown small{font-size:13px;color:#a9b6bf}
.fx-offer{background:#fff;border-radius:28px;padding:40px;box-shadow:0 40px 80px -40px rgb(150 70 50/.45);border:1px solid var(--line);position:relative}
.fx-offer::before{content:"기간 한정";position:absolute;top:-14px;right:32px;background:var(--coral);color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;padding:6px 14px;border-radius:999px}
.fx-offer h3{font-size:22px;font-weight:800}
.fx-price{display:flex;align-items:baseline;gap:12px;margin:12px 0 22px!important;padding-bottom:22px;border-bottom:1px solid var(--line)}
.fx-price strong{font-size:56px;font-weight:800;letter-spacing:-.03em;color:var(--coral);line-height:1}
.fx-price span{--fs:14px;font-size:var(--fs);color:var(--muted)}
.fx-offer ul,.fx-gets{display:grid;gap:10px}
.fx-offer li,.fx-gets li{--fs:16px;font-size:var(--fs);display:flex;gap:10px;align-items:flex-start;color:var(--ink-2)}
.fx-count{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0 0;padding:14px 18px;border:1px solid var(--line);border-radius:16px;--fs:15px;font-size:var(--fs);font-weight:600}
.fx select,.fx input:not([type=checkbox]){font-family:var(--font);--fs:16px;font-size:var(--fs);color:var(--ink);background:#fff;border:1.5px solid var(--line-2);border-radius:12px;padding:12px 14px;min-height:50px;width:100%;transition:border-color .15s,box-shadow .15s}
.fx-count select{width:auto;min-width:96px}
.fx select:focus,.fx input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 4px var(--teal-soft)}
.fx-total{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin:14px 0 22px;padding:16px 18px;border-radius:16px;background:var(--coral-soft)}
.fx-total span{--fs:14px;font-size:var(--fs);color:var(--ink-2)}
.fx-total b{font-size:26px;color:var(--coral-2)}
.fx-total small{flex-basis:100%;font-size:13px;color:var(--ink-2)}

/* 자주 묻는 질문 */
.fx-faq{display:grid;gap:12px}
.fx-faq details{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.fx-faq summary{--fs:18px;--lh:1.5;font-size:var(--fs);line-height:var(--lh);font-weight:700;padding:22px 64px 22px 26px;cursor:pointer;list-style:none;position:relative}
.fx-faq summary::-webkit-details-marker{display:none}
.fx-faq summary i{position:absolute;right:24px;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--tint)}
.fx-faq summary i::before,.fx-faq summary i::after{content:"";position:absolute;left:6px;right:6px;top:10px;height:2px;background:var(--ink);transition:transform .2s}
.fx-faq summary i::after{transform:rotate(90deg)}
.fx-faq details[open] summary i::after{transform:rotate(0)}
.fx-faq details p{--fs:16px;--lh:1.85;font-size:var(--fs);padding:0 26px 24px;color:var(--ink-2)}
.fx-sources{margin-top:28px;--fs:15px;font-size:var(--fs)}
.fx-sources summary{cursor:pointer;font-weight:700;color:var(--teal)}
.fx-sources p{--fs:14.5px;font-size:var(--fs);margin-top:12px!important}
.fx-sources a{font-weight:700;color:var(--ink);display:block}
.fx-sources span{color:var(--muted)}

/* 마지막 초대 */
.fx-final{position:relative;overflow:hidden;background:radial-gradient(800px 400px at 50% 120%,#3a2a28 0%,transparent 70%),var(--night);color:#fff;text-align:center;padding:120px 0}
.fx-final .fx-hero-ridges{inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);opacity:.6}
.fx-final .fx-hero-ridges i{border-color:rgb(240 162 143/.14)}
.fx-final h2{font-size:clamp(30px,4.4vw,50px);line-height:1.3;font-weight:800;letter-spacing:-.025em;color:#fff}
.fx-final h2 em{color:#f0a28f}
.fx-final p{--fs:17px;font-size:var(--fs);color:#c9d3da;margin:22px auto 34px!important;max-width:560px}
.fx-final .fx-eyebrow{color:#f0a28f}
.fx-final .fx-final-sub{--fs:14px;font-size:var(--fs);margin:18px auto 0!important;color:#8fa0ab}

/* 운영자 */
.fx-owner{background:var(--ink);color:#fff}
.fx-owner .fx-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-top:10px;padding-bottom:10px;font-size:14px}
.fx-owner span{font-weight:800;color:#f0a28f;letter-spacing:.06em}
.fx-owner button,.fx-owner a{font-family:var(--font);--fs:14px;font-size:var(--fs);background:rgb(255 255 255/.08);color:#fff;border:1px solid rgb(255 255 255/.18);border-radius:999px;padding:6px 14px;text-decoration:none;cursor:pointer}
.fx-operator{padding-top:40px;padding-bottom:60px}
.fx-operator summary{cursor:pointer;font-weight:700;color:var(--teal)}
.fx-operator-tools{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.fx .fpk-inbox-row{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 22px;margin-top:12px}
.fx .fpk-inbox-row h3{font-size:18px}
.fx .fpk-inbox-row dl{display:grid;grid-template-columns:90px 1fr;gap:4px 12px;margin:10px 0}
.fx .fpk-inbox-row dt{color:var(--muted);font-size:14px}
.fx .fpk-inbox-row button{font-family:var(--font);background:none;border:0;color:var(--teal);font-weight:700;cursor:pointer;padding:6px 0}

/* 하단 고정 신청 바 (공개 안내 페이지) */
.fx-sticky{position:fixed;left:50%;bottom:20px;z-index:60;transform:translate(-50%,140%);display:flex;align-items:center;gap:22px;padding:10px 10px 10px 24px;background:rgb(21 34 44/.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;border-radius:999px;box-shadow:0 20px 40px -12px rgb(0 0 0/.4);transition:transform .35s cubic-bezier(.2,.8,.2,1);width:max-content;max-width:calc(100% - 24px)}
.fx-sticky.is-visible{transform:translate(-50%,0)}
.fx-sticky div{display:flex;flex-direction:column;line-height:1.3}
.fx-sticky b{font-size:15px;color:#f0a28f}
.fx-sticky span{font-size:12.5px;color:#c9d3da}
.fx-sticky a{display:inline-flex;align-items:center;gap:8px;background:var(--coral);color:#fff;text-decoration:none;font-weight:700;font-size:15px;padding:12px 22px;border-radius:999px;white-space:nowrap}

/* 꼬리말 */
.fx-footer{background:var(--night);color:#9fb0bb;padding:56px 0 110px}
.fx-footer-inner{width:min(1180px,100%);margin:0 auto;padding:0 32px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;align-items:center}
.fx-footer nav{display:flex;flex-wrap:wrap;gap:6px 20px}
.fx-footer nav a{color:#d4dde3;text-decoration:none;font-size:14px}
.fx-footer nav a:hover{color:#fff}
.fx-footer small{flex-basis:100%;font-size:12.5px;color:#6f8290;border-top:1px solid rgb(255 255 255/.08);padding-top:20px}

/* 신청서 */
.fx-apply{min-height:100vh;padding:72px 0 120px;background:radial-gradient(900px 520px at 90% 0%,#fbe2d8 0%,rgb(251 226 216/0) 65%),var(--ivory)}
.fx-apply-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:start}
.fx-apply-head{position:sticky;top:120px}
.fx-apply h1{font-size:clamp(34px,4.6vw,56px);line-height:1.18;letter-spacing:-.03em;font-weight:800;color:var(--ink);margin-top:22px}
.fx-apply h1 em{display:inline}
.fx-gets{margin-top:30px!important}
.fx-mini-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px!important}
.fx-mini-steps li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.fx-mini-steps span{font-size:12px;font-weight:800;color:var(--coral)}
.fx-mini-steps b{font-size:16px}
.fx-mini-steps small{font-size:13px;color:var(--muted)}
.fx-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px!important;--fs:15px;font-size:var(--fs)}
.fx-links a{color:var(--teal);font-weight:700;text-decoration:none}
.fx-form-card{background:#fff;border-radius:28px;padding:40px;box-shadow:0 40px 80px -40px rgb(21 34 44/.35);border:1px solid var(--line)}
.fx-form-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.fx-form-top h2{font-size:26px;font-weight:800}
.fx-form-top .fx-eyebrow{margin-bottom:6px!important}
.fx-free-badge{display:flex;flex-direction:column;align-items:flex-end;background:var(--coral-soft);border-radius:16px;padding:10px 16px;line-height:1.2}
.fx-free-badge span{font-size:12px;color:var(--ink-2)}
.fx-free-badge b{font-size:24px;color:var(--coral-2)}
.fx-form-sub{--fs:15px;font-size:var(--fs);color:var(--muted);margin:6px 0 24px!important}
.fx-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fx-fields.is-three{grid-template-columns:repeat(3,1fr)}
.fx-fields label{--fs:14px;--lh:1.5;font-size:var(--fs);line-height:var(--lh);font-weight:700;color:var(--ink-2);display:flex;flex-direction:column;gap:8px}
.fx-fields .is-wide{grid-column:1/-1}
.fx-optional{--fs:13px;font-size:var(--fs);color:var(--muted);margin:26px 0 12px!important;display:flex;align-items:center;gap:12px}
.fx-optional::after{content:"";flex:1;height:1px;background:var(--line)}
.fx-benefit{--fs:14px;font-size:var(--fs);color:var(--teal);font-weight:600;margin-top:14px!important}
.fx-honey{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.fx-consent{margin:24px 0;padding:18px 20px;border-radius:16px;background:var(--tint)}
.fx-consent>label{display:flex;gap:12px;align-items:center;--fs:16px;font-size:var(--fs);font-weight:700;cursor:pointer}
.fx-consent input[type=checkbox]{width:22px;height:22px;accent-color:var(--teal);flex:none}
.fx-consent details{margin-top:10px}
.fx-consent summary{--fs:14px;font-size:var(--fs);color:var(--teal);font-weight:700;cursor:pointer}
.fx-consent details p{--fs:13.5px;--lh:1.75;font-size:var(--fs);line-height:var(--lh);color:var(--ink-2);margin-top:8px!important}
.fx-consent details a{--fs:13.5px;font-size:var(--fs);color:var(--teal)}
.fx-submit{margin-top:4px;min-height:60px;--fs:17px}
.fx-form-status{--fs:15px;font-size:var(--fs);color:var(--coral-2);font-weight:600;margin-top:12px!important;min-height:1em}
.fx-form-note{--fs:13px;--lh:1.7;font-size:var(--fs);line-height:var(--lh);color:var(--muted);margin-top:10px!important}
.fx-preview-note{--fs:14px;font-size:var(--fs);background:#fff6d8;border-radius:12px;padding:10px 14px;margin-bottom:18px!important}
.fx-success{text-align:center;padding:12px 0}
.fx-success-mark{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#fff;font-size:30px;font-weight:800}
.fx-success h2{font-size:28px;line-height:1.35;font-weight:800;margin-bottom:12px}
.fx-success>p{color:var(--ink-2)}
.fx-success dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;text-align:left;background:var(--tint);border-radius:16px;padding:18px 22px;margin:20px 0}
.fx-success dt{color:var(--muted);--fs:14px;font-size:var(--fs)}
.fx-success dd{margin:0;font-weight:700}
.fx .fpx-share-box{background:var(--ivory);border:1px solid var(--line);border-radius:18px;padding:22px;margin:20px 0}
.fx .fpx-share-box b{display:block;font-size:18px;margin-bottom:6px}
.fx .fpx-share-box p{--fs:15px;font-size:var(--fs);color:var(--ink-2);margin-bottom:14px!important}
.fx .fpx-share-status{--fs:14px;font-size:var(--fs);color:var(--teal);margin-top:10px!important}

/* 매장 안내 */
.fx-store{margin-top:28px;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 32px;box-shadow:var(--shadow)}
.fx-store-pin{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:var(--coral-soft);color:var(--coral-2)}
.fx-store .fx-eyebrow{margin-bottom:4px!important}
.fx-store h3{font-size:22px;font-weight:800}
.fx-store-addr{margin-top:6px!important;display:flex;flex-direction:column;gap:2px}
.fx-store-addr b{--fs:18px;font-size:var(--fs);color:var(--ink)}
.fx-store-addr span{--fs:14.5px;font-size:var(--fs);color:var(--muted)}
.fx-store .fx-note{margin-top:6px}
.fx-store-actions{display:flex;flex-direction:column;gap:10px}
.fx-apply-store{--fs:14.5px;--lh:1.7;font-size:var(--fs);line-height:var(--lh);margin-top:22px!important;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);color:var(--ink-2)}
.fx-apply-store b{color:var(--coral-2);margin-right:8px}
.fx-apply-store a{color:var(--teal);font-weight:700;text-decoration:none;margin-left:4px}
.fx-footer-addr{flex-basis:100%;font-style:normal;font-size:13.5px;color:#c9d3da}
@media (max-width:1000px){.fx-store{grid-template-columns:auto 1fr}.fx-store-actions{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}}
@media (max-width:720px){.fx-store{grid-template-columns:1fr;padding:24px 20px}.fx-store-actions .fx-btn{flex:1 1 100%}}

/* 고객용 개인정보 처리 안내 */
.fx-privacy{padding:72px 0 120px;min-height:70vh}
.fx-privacy h1{font-size:clamp(30px,4vw,44px);font-weight:800;letter-spacing:-.02em;color:var(--ink)}
.fx-legal{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:36px 40px}
.fx-legal h2{font-size:20px;font-weight:800;margin:28px 0 10px}
.fx-legal h2:first-of-type{margin-top:22px}
.fx-legal p{--fs:15.5px;--lh:1.85;font-size:var(--fs);line-height:var(--lh);color:var(--ink-2);margin-top:10px}
.fx-legal a{color:var(--teal);font-weight:700}
.fx-legal button{font-family:var(--font);--fs:15px;font-size:var(--fs);min-height:46px;padding:10px 18px;border:1px solid var(--line-2);border-radius:999px;background:var(--tint);color:var(--ink);cursor:pointer;margin-right:10px}
@media (max-width:720px){.fx-legal{padding:24px 20px}}

/* 샘플 고르기 */
.fx-choose{padding:96px 0 140px;min-height:70vh}
.fx-choose h1{font-size:clamp(34px,4.6vw,54px);line-height:1.2;letter-spacing:-.03em;font-weight:800;color:var(--ink)}
.fx-choose-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:860px}
.fx-choose-card{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;text-decoration:none;color:var(--ink);transition:box-shadow .2s}
.fx-choose-card:hover{box-shadow:var(--shadow)}
.fx-choose-card img{width:96px;height:96px;border-radius:50%;margin-bottom:12px}
.fx-choose-card small{font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--coral)}
.fx-choose-card b{font-size:24px}
.fx-choose-card span{font-size:15px;color:var(--muted)}
.fx-choose-card em{margin-top:14px;font-weight:700;color:var(--teal)}

/* 보고서 샘플 문서 */
.fps-document{background:#ece6dd;padding-bottom:80px}
.fps-toolbar{background:var(--ivory);border-bottom:1px solid var(--line)}
.fps-toolbar-inner{width:min(1180px,100%);margin:0 auto;padding:36px 32px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.fps-toolbar .fx-back{margin-bottom:12px}
.fps-toolbar .fx-eyebrow{margin-bottom:6px!important}
.fps-toolbar h1{font-size:clamp(26px,3.4vw,36px);font-weight:800;letter-spacing:-.02em}
.fps-toolbar-inner>div>p:not(.fx-eyebrow){--fs:14.5px;font-size:var(--fs);color:var(--muted);margin-top:6px!important}
.fps-switch{display:inline-flex;gap:4px;margin-top:16px;padding:4px;background:#fff;border:1px solid var(--line);border-radius:999px}
.fps-switch a{--fs:14px;font-size:var(--fs);font-weight:700;text-decoration:none;color:var(--muted);padding:8px 18px;border-radius:999px}
.fps-switch a[aria-current=page]{background:var(--ink);color:#fff}
.fps-tools{display:flex;flex-wrap:wrap;gap:10px}
.fps-stack{display:grid;gap:36px;justify-items:center;padding:48px 16px 0}
.fps-sheet{width:min(794px,100%);aspect-ratio:210/297;background:#fff;border-radius:6px;box-shadow:0 30px 60px -30px rgb(21 34 44/.4),0 0 0 1px rgb(21 34 44/.05);padding:56px 60px 70px;position:relative;display:flex;flex-direction:column;overflow:hidden;--fs:14.5px;--lh:1.8;font-size:var(--fs);line-height:var(--lh)}
.fps-sheet>footer{position:absolute;left:60px;right:60px;bottom:28px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}
.fps-cover{background:linear-gradient(165deg,#fff 0%,#fbf2ea 60%,#f6e2d7 100%);justify-content:space-between}
.is-adult .fps-cover{background:linear-gradient(165deg,#1c3a3c 0%,#122729 100%);color:#fff}
.is-adult .fps-cover>footer{color:#9fb7b8;border-color:rgb(255 255 255/.12)}
.fps-cover-brand{display:flex;justify-content:space-between;align-items:center}
.fps-cover-brand .fp-brand{display:flex;align-items:center;gap:10px}
.fps-cover-brand .fp-brand img,.fps-cover-brand .fp-brand svg{max-height:40px;width:auto}
.fps-cover-brand .fp-brand-wordmark{display:flex;flex-direction:column;line-height:1.25}
.fps-cover-brand .fp-brand-wordmark span{font-size:14px;font-weight:800;letter-spacing:.18em}
.fps-cover-brand .fp-brand-wordmark b{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.04em}
.is-adult .fps-cover-brand .fp-brand-wordmark b{color:#9fb7b8}
.fps-cover-edition{font-size:11px;font-weight:800;letter-spacing:.2em;color:var(--coral)}
.fps-cover-title{margin-top:auto}
.fps-cover-kicker{font-size:14px;color:var(--muted)}
.is-adult .fps-cover-kicker{color:#9fb7b8}
.fps-cover-name{margin-top:28px!important;font-size:18px;font-weight:700;color:var(--teal)}
.is-adult .fps-cover-name{color:#f0a28f}
.fps-cover-title h2{font-size:clamp(34px,5.4vw,52px);line-height:1.2;font-weight:800;letter-spacing:-.03em;margin-top:6px}
.fps-cover-rule{display:block;width:64px;height:3px;background:var(--coral);margin-top:26px}
.fps-cover-detail{display:flex;align-items:center;gap:18px;margin-top:36px}
.fps-cover-pattern{width:88px;height:88px;border-radius:50%;background:#fff;box-shadow:0 0 0 6px rgb(223 108 85/.12)}
.fps-cover-label{font-size:13px;line-height:1.6;color:var(--muted)}
.is-adult .fps-cover-label{color:#9fb7b8}
.fps-cover-bottom{margin-top:36px;padding:16px 18px;border-radius:12px;background:rgb(255 255 255/.7);font-size:12.5px;line-height:1.6;color:var(--ink-2)}
.is-adult .fps-cover-bottom{background:rgb(255 255 255/.08);color:#c9d6d6}
.fps-cover-bottom b{display:block;font-size:13px}
.fps-band{display:flex;gap:16px;align-items:center;padding-bottom:18px;margin-bottom:22px;border-bottom:2px solid var(--ink)}
.fps-band>span{font-size:30px;font-weight:800;color:var(--coral);letter-spacing:-.02em}
.fps-band small{display:block;font-size:10.5px;letter-spacing:.2em;color:var(--muted)}
.fps-band h2{font-size:22px;font-weight:800;letter-spacing:-.01em}
.fps-summary strong{display:block;font-size:20px;line-height:1.5;font-weight:800}
.fps-summary p{margin-top:8px!important;color:var(--ink-2)}
.fps-toc-title{margin:24px 0 10px!important;font-size:15px;font-weight:800;color:var(--teal)}
.fps-toc{display:grid;gap:6px}
.fps-toc li{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.fps-toc b{font-size:13px;color:var(--coral)}
.fps-toc strong{font-size:14.5px}
.fps-toc p{--fs:12.5px;--lh:1.6;font-size:var(--fs);line-height:var(--lh);color:var(--muted)}
.fps-reading{margin-top:auto;padding:14px 16px;border-radius:12px;background:var(--tint);--fs:13px;--lh:1.7;font-size:var(--fs);line-height:var(--lh)}
.fps-reading b{display:block;margin-bottom:4px}
.fps-chapter{padding:4px 0 16px}
.fps-chapter+.fps-chapter{border-top:1px dashed var(--line-2);padding-top:18px}
.fps-chapter h3{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:800}
.fps-chapter h3 span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--teal);color:#fff;font-size:13px}
.fps-chapter-purpose{--fs:13px;font-size:var(--fs);color:var(--muted);margin:4px 0 10px!important}
.fps-chapter h4{font-size:15.5px;font-weight:800;margin:0 0 6px;color:var(--teal)}
.fps-chapter>p:not(.fps-chapter-purpose){color:var(--ink-2)}
.fps-chapter blockquote{margin:10px 0!important;padding:10px 14px;border-left:3px solid var(--coral);background:#fdf5f1;border-radius:0 10px 10px 0;font-weight:600;--fs:14px;font-size:var(--fs)}
.fps-note-line{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:baseline;--fs:12.5px;--lh:1.6;font-size:var(--fs);line-height:var(--lh);color:var(--muted)}
.fps-note-line b{color:var(--ink)}
.fps-week{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fps-week h3{grid-column:1/-1;font-size:15px;font-weight:800;color:var(--teal)}
.fps-week>div{border:1px solid var(--line);border-radius:10px;padding:10px 12px;min-height:64px;display:flex;flex-direction:column}
.fps-week b{font-size:13px}.fps-week span{font-size:12px;color:var(--muted)}
.fps-scope{margin-top:auto!important;--fs:11.5px;--lh:1.6;font-size:var(--fs);line-height:var(--lh);color:var(--muted)}
.fps-end{text-align:center;padding:72px 24px 24px}
.fps-end h2{font-size:clamp(26px,3.4vw,36px);line-height:1.35;font-weight:800;letter-spacing:-.02em}
.fps-end .fx-actions{justify-content:center}

/* 나타나는 움직임 */
@media (prefers-reduced-motion:no-preference){
 .fx .about-reveal-ready:not(.is-visible){opacity:0;transform:translateY(18px)}
 .fx .about-reveal-ready{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
 .fx-specimen-ring.r1{animation:fxSpin 60s linear infinite}
 .fx-float.f1{animation:fxBob 6s ease-in-out infinite}.fx-float.f2{animation:fxBob 7s ease-in-out -2s infinite}.fx-float.f3{animation:fxBob 6.5s ease-in-out -4s infinite}
 .fx-btn:hover .fx-arrow{transform:translateX(3px)}
}
@keyframes fxSpin{to{transform:rotate(360deg)}}
@keyframes fxBob{50%{transform:translateY(-8px)}}

/* 반응형 */
@media (max-width:1000px){
 .fx-hero-grid,.fx-report,.fx-offer-grid,.fx-apply-grid,.fx-history{grid-template-columns:1fr}
 .fx-hero-art{max-width:440px;margin-top:8px}
 .fx-steps{grid-template-columns:1fr 1fr}
 .fx-worries{grid-template-columns:1fr 1fr}
 .fx-types{grid-template-columns:repeat(3,1fr)}
 .fx-families{grid-template-columns:1fr}
 .fx-apply-head{position:static}
 .fx-book{max-width:300px}
 .fx-stats{grid-template-columns:1fr 1fr;transform:translateY(40%)}
 .fx-stats li:nth-child(3){border-left:0}
 .fx-stats li:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:720px){
 .fx-wrap,.fx-topbar-inner,.fx-footer-inner,.fps-toolbar-inner{padding-left:20px;padding-right:20px}
 .fx-nav a:not(.fx-nav-cta){display:none}
 .fx-topbar-inner{height:64px}
 .fx-ribbon{font-size:12px;padding:7px 12px}
 .fx-ribbon .fx-ribbon-long{display:none}
 .fx-families{grid-template-columns:repeat(3,auto);gap:8px;justify-content:start}
 .fx-families li{padding:8px 12px;border-top-width:2px;border-radius:12px}
 .fx-families span{display:none}
 .fx-families b{font-size:12.5px;letter-spacing:.02em}
 .fx-hero-art{max-width:340px}
 .fx-float.f1{left:0}.fx-float.f2{right:0}
 .fx-section{padding:80px 0}
 #fxWorry{padding-top:72px}
 .fx-head{margin-bottom:34px}
 .fx-hero{padding-top:48px}
 .fx-hero-lead{--fs:17px}
 .fx-actions .fx-btn{flex:1 1 100%}
 .fx-float{padding:6px 12px 6px 6px}.fx-float img{width:38px;height:38px}.fx-float b{font-size:13px}
 .fx-float.f2{right:-2%}
 .fx-hero-count{padding:10px 14px}.fx-hero-count b{font-size:18px}
 .fx-stats li{padding:18px}
 .fx-stats b{font-size:24px}
 .fx-worries,.fx-thumbs,.fx-steps,.fx-principles,.fx-chapters,.fx-choose-grid,.fx-mini-steps{grid-template-columns:1fr}
 .fx-thumbs{gap:12px}
 .fx-thumb{display:grid;grid-template-columns:96px 1fr;column-gap:16px;padding:14px}
 .fx-thumb-img{grid-row:span 3;margin:0}
 .fx-thumb-desc{grid-column:2}
 .fx-thumb-panel{grid-template-columns:1fr;padding:26px 22px}
 .fx-timeline{grid-template-columns:1fr;gap:26px}
 .fx-timeline::before{left:27px;right:auto;top:0;bottom:0;width:1px;height:auto;background:linear-gradient(180deg,rgb(255 255 255/.08),rgb(240 162 143/.6),rgb(255 255 255/.08))}
 .fx-timeline li{display:grid;grid-template-columns:56px 1fr;column-gap:18px;padding:0}
 .fx-timeline b{grid-row:span 2}
 .fx-timeline strong{margin-top:4px}
 .fx-types{grid-template-columns:1fr 1fr;gap:12px}
 .fx-type{padding:12px 12px 16px}
 .fx-type figcaption b{font-size:18px}
 .fx-offer,.fx-form-card{padding:28px 22px;border-radius:24px}
 .fx-price strong{font-size:46px}
 .fx-fields,.fx-fields.is-three{grid-template-columns:1fr}
 .fx-faq summary{--fs:16.5px;padding:18px 54px 18px 20px}
 .fx-faq details p{padding:0 20px 20px}
 .fx-final{padding:90px 0}
 .fx-sticky{bottom:12px;gap:12px;padding-left:18px}
 .fx-sticky span{display:none}
 .fps-sheet{aspect-ratio:auto;min-height:0;padding:32px 24px 64px}
 .fps-sheet>footer{left:24px;right:24px}
 .fps-week{grid-template-columns:1fr}
 #app .fx .fpk-live-inner{padding:0 20px}
}

/* 인쇄: 보고서 샘플만 깔끔하게 */
@media print{
 .fx-topbar,.fx-footer,.fx-sticky,.fps-toolbar,.fps-end{display:none!important}
 .fps-document{background:#fff;padding:0}
 .fps-stack{padding:0;gap:0}
 .fps-sheet{box-shadow:none;border-radius:0;width:100%;break-after:page}
}

/* 버튼 글자색은 링크·앱 공통 규칙보다 항상 우선한다 (어두운 버튼 위 어두운 글씨 방지) */
#app .fx-btn.fx-btn-primary,#app .fx-btn.fx-btn-dark,.fx .fx-btn.fx-btn-primary,.fx .fx-btn.fx-btn-dark,#app .fx-sticky a,#app .fx-nav .fx-nav-cta{color:#fff!important}
#app .fx-btn.fx-btn-ghost,.fx .fx-btn.fx-btn-ghost{color:var(--ink)!important}
.fx-final .fx-btn.fx-btn-ghost,.fx-thumb-panel .fx-btn.fx-btn-ghost{color:#fff!important}

/* 앱 안 덮어쓰기: 앱 공통 CSS의 !important 글자 크기·애니메이션 규칙보다 우선하게 한다. */
#app#app .fx :is(p,li,dd,dt,blockquote,label,input,select,textarea,summary,td,th,button,a){font-size:var(--fs,inherit)!important;line-height:var(--lh,inherit)!important}
#app#app .fx :is(h1,h2,h3,h4){font-family:var(--font)!important}
#app#app .fx .fx-btn{min-height:56px!important;white-space:nowrap}

[hidden]{display:none!important}