/* Conversion-focused home sections and the FANZA LP (2026-10). Builds on the pink palette in pink-theme.css / content.css. */

/* Shared */
.public-site .pr-chip{display:inline-block;background:#c52d70;color:#fff;font-family:Arial,sans-serif;font-size:10px;font-weight:800;letter-spacing:.08em;border-radius:4px;padding:1px 6px;margin-right:8px;vertical-align:1px}
.public-site .badge-text{display:block;color:#c52d70;font-size:15px;margin-bottom:2px}
.public-site .compare-highlight td{background:#fff8fb}
.public-site .compare-highlight td span{display:block;font-size:12px;color:#6f5c69}
.public-site .compare-table tbody th{position:sticky;left:0;z-index:1}
.public-site .compare-table thead th:first-child{position:sticky;left:0;z-index:2}
.public-site .choose-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Home: first view */
.home-hero{background:radial-gradient(ellipse at 85% 0%,#fbe0eb 0,transparent 50%),linear-gradient(130deg,#fff2f7 0%,#fff9fb 60%,#f3f2fd 100%);border-bottom:1px solid #f5e4ed;padding:30px 0 26px}
.home-hero-head{max-width:760px}
.hero-meta{font-size:12px;color:#856c7b;margin:0 0 8px}
.home-hero h1{font-size:36px;line-height:1.45;letter-spacing:-.03em;margin:0 0 8px}
.home-hero h1 span{color:#df397d}
.hero-lead{font-size:14px;line-height:1.85;color:#6f5c69;margin:0 0 20px}
.pick-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pick-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #efdee7;border-radius:20px;padding:16px 18px 14px;box-shadow:0 10px 28px #94516f14}
.pick-card:first-child{border:2px solid #e57498;box-shadow:0 12px 32px #c52d7022}
.pick-card-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.pick-card-head img{width:72px;height:48px;object-fit:cover;border-radius:10px;flex-shrink:0}
.pick-card-head h2{font-size:17px;line-height:1.4;margin:0}
.pick-card-head h2 a:hover{color:#c52d70}
.pick-card-head p{font-size:11px;line-height:1.5;color:#89747f;margin:2px 0 0}
.pick-rank{position:absolute;top:-10px;left:14px;background:#c52d70;color:#fff;font-family:Arial,sans-serif;font-weight:800;font-size:11px;letter-spacing:.06em;border-radius:12px;padding:2px 10px}
.accent-violet .pick-rank{background:#7d5bd0}
.pick-badge{background:#fff0f6;border-radius:12px;padding:8px 12px;margin:0 0 10px;font-size:19px;font-weight:800;line-height:1.35;color:#b12360}
.accent-violet .pick-badge{background:#f4f0fd;color:#5f3fb5}
.pick-badge small{display:block;font-size:10px;font-weight:700;letter-spacing:.06em;color:#9a7d8c}
.pick-prices{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px}
.pick-prices div{border:1px dashed #efdee7;border-radius:10px;padding:6px 9px}
.pick-prices dt{font-size:10px;font-weight:700;color:#9a7d8c}
.pick-prices dd{margin:0;font-size:12px;line-height:1.5;color:#463742}
.pick-card .cta-button{width:100%;min-height:52px;font-size:15px;margin-top:auto}
.pick-card .cta-sub{display:block;text-align:center;margin-top:8px;font-size:11px}
.hero-note{margin-top:14px}

/* Home: body */
.home-body{padding-bottom:20px}
.public-site .home-section{padding-top:44px}
.goal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.goal-tile{display:flex;flex-direction:column;background:#fff;border:1px solid #efdee7;border-radius:18px;padding:16px;box-shadow:0 5px 20px #8f607809}
.goal-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#fff0f6;color:#cf397c;font-size:18px;margin-bottom:8px}
.goal-tile strong{font-size:15px;color:#463742}
.goal-tile p{font-size:12px;line-height:1.75;color:#7e6e79;margin:4px 0 12px}
.goal-link{margin-top:auto;display:block;text-align:center;border:1px solid #e9c5d4;border-radius:22px;padding:8px 10px;font-size:13px;font-weight:700;color:#c52d70;background:#fffafc}
.goal-link:hover{background:#c52d70;color:#fff;border-color:#c52d70}
.claim-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.claim-card{display:flex;flex-direction:column;background:linear-gradient(155deg,#fff9fb,#fbe9f1);border:1px solid #f1dce6;border-radius:20px;padding:18px}
.claim-card.accent-violet{background:linear-gradient(155deg,#fdf9ff,#efe8f9)}
.claim-card h3{font-size:16px;margin:0}
.claim-badge{font-size:18px;font-weight:800;color:#b12360;margin:2px 0 10px}
.accent-violet .claim-badge{color:#5f3fb5}
.claim-steps{list-style:none;counter-reset:claim;margin:0 0 14px;padding:0}
.claim-steps li{counter-increment:claim;position:relative;padding:0 0 8px 30px;font-size:13px;line-height:1.7;color:#5d4654}
.claim-steps li:before{content:counter(claim);position:absolute;left:0;top:1px;width:21px;height:21px;border-radius:50%;background:#fff;color:#c52d70;font-family:Arial,sans-serif;font-weight:800;font-size:12px;display:grid;place-items:center}
.claim-card .cta-button{margin-top:auto;width:100%}
.public-site .latest-3 .article-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.public-site .home-body .feature-row{grid-template-columns:40% 1fr}
.public-site .home-body .purpose-section,.public-site .home-body .faq-section{padding-top:44px}
.final-cta{margin-top:50px;background:linear-gradient(130deg,#fff0f6,#faf4ff);border-top:1px solid #f3e1ea;padding:42px 0 46px;text-align:center}
.final-cta h2{font-size:24px;line-height:1.6;margin:4px 0 22px}
.final-cta-row{display:grid;grid-template-columns:repeat(2,minmax(0,340px));justify-content:center;gap:16px}
.final-cta-card{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #efdee7;border-radius:20px;padding:18px;box-shadow:0 10px 28px #94516f14}
.final-cta-card small{font-size:12px;color:#89747f}
.final-cta-card strong{font-size:20px;color:#b12360}
.final-cta-card.accent-violet strong{color:#5f3fb5}
.final-cta-card .cta-button{margin-top:8px}

/* Fixed bottom CTA (phones; LP also on desktop) */
/* Fixed bottom CTA: same on every page and width — floating buttons with shadow only */
.sticky-cta{position:fixed;left:50%;right:auto;bottom:0;transform:translateX(-50%);z-index:50;display:flex;gap:10px;width:min(560px,100%);padding:0 12px calc(14px + env(safe-area-inset-bottom));background:none;border:0;box-shadow:none;pointer-events:none}
.sticky-cta[hidden]{display:none!important}
.sticky-cta-button{pointer-events:auto;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60px;border-radius:30px;background:linear-gradient(110deg,#b3135a 0%,#e2336f 55%,#f0638f 100%);color:#fff;font-weight:800;font-size:17px;line-height:1.3;text-align:center;box-shadow:0 10px 28px #3a0a2a66,0 3px 8px #00000033}
.sticky-cta-button.accent-violet{background:linear-gradient(110deg,#6f4cc4,#9a63c8)}
.sticky-cta-button small{font-size:12px;font-weight:700;opacity:.95}
.sticky-cta-button:hover{color:#fff}
body.has-sticky-cta{padding-bottom:90px}
.lp-page .sticky-cta{width:min(460px,100%)}

/* LP */
.lp-page main{display:block}
.lp-wrap{width:min(1040px,calc(100% - 48px));margin:0 auto}
.lp-header{width:min(1040px,calc(100% - 48px));margin:0 auto;height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.lp-header .brand{font-size:22px}
.lp-header-note{font-size:11px;color:#856c7b}
.lp-hero{background:radial-gradient(ellipse at 80% 10%,#fbe0eb 0,transparent 50%),linear-gradient(130deg,#fff2f7 0%,#fff9fb 62%,#f3f2fd 100%);border-top:1px solid #f5e4ed;border-bottom:1px solid #f5e4ed;padding:34px 0 38px}
.lp-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center}
.lp-eyebrow{display:inline-block;font-size:12px;font-weight:700;color:#c52d70;background:#fff;border:1px solid #f0cfdd;border-radius:20px;padding:3px 12px;margin:0 0 12px}
.lp-hero h1{font-size:38px;line-height:1.45;letter-spacing:-.035em;margin:0 0 12px}
.lp-hero h1 span{color:#df397d;background:linear-gradient(transparent 68%,#fcd3e3 68%)}
.lp-lead{font-size:15px;line-height:1.9;color:#5d4654;margin:0 0 14px}
.lp-lead strong{color:#b12360}
.lp-chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 18px;padding:0}
.lp-chips li{font-size:12px;font-weight:700;color:#6c3b52;background:#fff;border:1px solid #f0cfdd;border-radius:20px;padding:4px 11px}
.lp-chips li:before{content:'✓ ';color:#c52d70}
.lp-cta-block{margin-bottom:10px}
.lp-microcopy{font-size:13px;font-weight:700;color:#c52d70;margin:0 0 6px;text-align:center}
.lp-cta-block .lp-microcopy{text-align:left;padding-left:24px}
.public-site .cta-button.lp-cta{min-height:66px;padding:0 34px;font-size:17px;border-radius:34px;box-shadow:0 10px 26px #c52d7040}
.lp-cta-block .lp-cta{width:min(440px,100%)}
.lp-cta-note{font-size:11px;color:#8a7883;margin:8px 0 0}
.lp-hero-visual{position:relative}
.lp-hero-visual img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:24px;box-shadow:0 18px 40px #9e668233}
.lp-value-card{position:absolute;left:-22px;bottom:-24px;width:min(300px,80%);background:#fff;border:1px solid #f0dbe5;border-radius:18px;padding:14px 16px;box-shadow:0 14px 34px #9e668229}
.lp-value-card p{font-size:13px;font-weight:800;color:#6c3b52;margin:0 0 6px}
.lp-value-card p small{font-size:10px;color:#9a7d8c;font-weight:600}
.lp-value-card ul{list-style:none;margin:0;padding:0}
.lp-value-card li{display:flex;justify-content:space-between;border-top:1px dashed #efdee7;padding:5px 0;font-size:13px;color:#5d4654}
.lp-value-card b{color:#b12360}
.lp-section{padding:52px 0}
.lp-tinted{background:#fff6fa;border-top:1px solid #f6e6ee;border-bottom:1px solid #f6e6ee}
.lp-h2{font-size:27px;line-height:1.5;margin:4px 0 24px}
.lp-reasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lp-reasons>div{background:#fff;border:1px solid #efdee7;border-radius:20px;padding:20px;box-shadow:0 5px 20px #8f607809}
.lp-num{font-family:Arial,sans-serif;font-weight:800;font-size:26px;color:#e57498}
.lp-reasons strong{display:block;font-size:16px;line-height:1.6;margin:4px 0 6px}
.lp-reasons p{font-size:13px;line-height:1.9;color:#6f5c69;margin:0}
.lp-price-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:center}
.lp-price-table td b{color:#b12360}
.lp-price-side p{font-size:14px;line-height:1.9;color:#5d4654;margin:0 0 16px}
.lp-price-side strong{display:block;color:#c52d70;margin-bottom:4px}
.lp-price-side .lp-cta{width:100%}
.lp-steps{list-style:none;margin:0 0 26px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lp-steps li{position:relative;background:linear-gradient(155deg,#fff9fb,#fbe6ef);border:1px solid #f1dce6;border-radius:20px;padding:20px}
.lp-step-no{display:inline-block;font-family:Arial,sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;color:#fff;background:#c52d70;border-radius:12px;padding:2px 10px}
.lp-steps strong{display:block;font-size:16px;line-height:1.6;margin:10px 0 6px}
.lp-steps p{font-size:13px;line-height:1.9;color:#6f5c69;margin:0}
.lp-cta-center{text-align:center}
.lp-cta-center .lp-cta{width:min(460px,100%)}
.lp-review{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.lp-review>div{background:#fff;border:1px solid #efdee7;border-radius:20px;padding:20px}
.lp-review h3{font-size:16px;margin:0 0 10px}
.lp-good h3{color:#c52d70}
.lp-caution h3{color:#7d5f6f}
.lp-review ul{margin:0;padding-left:1.2em;font-size:14px;line-height:1.9;color:#5d4654}
.lp-review li{margin-bottom:6px}
.lp-fit{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.lp-fit p{margin:0;font-size:14px;line-height:1.85;color:#5d4654;background:#fff;border:1px dashed #e9c5d4;border-radius:16px;padding:14px 16px}
.lp-fit strong{display:block;font-size:12px;color:#c52d70}
.lp-branch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.lp-branch a{display:block;background:#fff;border:1px solid #efdee7;border-radius:18px;padding:14px 18px;box-shadow:0 5px 20px #8f607809}
.lp-branch a:hover{border-color:#e57498}
.lp-branch small{display:block;font-size:11px;color:#89747f}
.lp-branch strong{display:block;font-size:16px}
.lp-branch span{font-size:13px;font-weight:700;color:#c52d70}
.lp-final{padding:54px 0 60px;text-align:center;background:linear-gradient(130deg,#fde3ee,#f6effe)}
.lp-final-badge{display:inline-block;background:#c52d70;color:#fff;font-weight:800;font-size:14px;border-radius:20px;padding:4px 16px;margin:0 0 12px}
.lp-final h2{font-size:28px;line-height:1.55;margin:0 0 12px}
.lp-final>div>p{font-size:14px;color:#6f5c69}
.lp-final .lp-cta{width:min(480px,100%)}
.lp-footer{text-align:center;padding:26px 16px 30px;background:#fff2f7;border-top:1px solid #efdbe5;font-size:12px;color:#777}
.lp-footer a{margin:0 10px;color:#6c3b52;text-decoration:underline}
.lp-footer p{margin:10px 0 0;font-size:11px}

@media(max-width:1000px){
.pick-cards{grid-template-columns:1fr 1fr 1fr;gap:12px}.pick-card{padding:14px}.pick-card-head img{display:none}.pick-badge{font-size:16px}
.lp-hero-grid{grid-template-columns:1fr 1fr;gap:24px}.lp-hero h1{font-size:31px}
}
@media(max-width:700px){
.home-hero{padding:20px 0 18px}.hero-meta{font-size:11px}.home-hero h1{font-size:26px}.hero-lead{font-size:13px;margin-bottom:16px}
.pick-cards{grid-template-columns:1fr;gap:16px}.pick-card{padding:14px 14px 12px}.pick-card-head img{display:block;width:64px;height:42px}.pick-badge{font-size:17px;padding:7px 11px}.pick-prices{margin-bottom:10px}
.public-site .home-section{padding-top:34px}
.goal-grid{grid-template-columns:1fr;gap:8px}.goal-tile{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;column-gap:10px;padding:10px 12px}.goal-icon{width:32px;height:32px;font-size:16px;margin:0}.goal-tile strong{font-size:14px;line-height:1.5}.goal-tile p{display:none}.goal-link{margin:0;padding:7px 12px;font-size:12px;white-space:nowrap}
.claim-grid{grid-template-columns:1fr;gap:12px}
.public-site .latest-3 .article-grid{grid-template-columns:1fr}
.public-site .home-body .feature-row{grid-template-columns:1fr}
.final-cta{padding:32px 0 36px}.final-cta h2{font-size:19px}.final-cta-row{grid-template-columns:1fr}
.public-site .choose-grid{grid-template-columns:1fr}
.public-site .compare-table{min-width:640px}
.lp-wrap,.lp-header{width:calc(100% - 32px)}.lp-header{height:56px}.lp-header .brand{font-size:19px}.lp-header .brand-mark{width:26px;height:26px;font-size:20px}.lp-header-note{font-size:10px}
.lp-hero{padding:20px 0 28px}.lp-hero-grid{grid-template-columns:1fr;gap:16px}.lp-hero-visual img{display:none}.lp-value-card{position:static;width:auto;box-shadow:0 8px 22px #9e66821f}
.lp-hero h1{font-size:24px;line-height:1.5}.lp-lead{font-size:14px}.lp-chips li{font-size:11px}
.lp-cta-block .lp-microcopy{text-align:center;padding-left:0}.lp-cta-block .lp-cta,.public-site .cta-button.lp-cta{width:100%;min-height:62px;font-size:16px;padding:0 18px}
.lp-cta-note{text-align:center}.lp-hero-copy>.cta-sub{display:block;text-align:center;margin-top:6px}
.lp-section{padding:38px 0}.lp-h2{font-size:22px;margin-bottom:18px}
.lp-reasons,.lp-steps,.lp-review,.lp-fit,.lp-branch{grid-template-columns:1fr;gap:12px}
.lp-price-grid{grid-template-columns:1fr;gap:16px}
.lp-final{padding:38px 0 44px}.lp-final h2{font-size:22px}
}
@media(max-width:700px){.sticky-cta{gap:8px;padding:0 10px calc(10px + env(safe-area-inset-bottom))}.sticky-cta-button{min-height:56px;font-size:15px}.sticky-cta-button small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.goal-link{transition:none}}
