/* Shared styles for feature landing pages */
.fp-hero{padding:90px 0 40px;text-align:center;position:relative;overflow:hidden}
.fp-hero::before{content:"";position:absolute;top:-15%;right:-10%;width:55%;height:80%;background:radial-gradient(circle,rgba(255,106,26,.12),transparent 60%);pointer-events:none}
.fp-hero h1{font-family:"Playfair Display",serif;font-size:clamp(40px,6vw,72px);line-height:1.05;margin:20px 0 16px;letter-spacing:-.02em}
.fp-hero h1 em{font-style:italic;background:linear-gradient(135deg,var(--brand),var(--brand2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.fp-hero .lead{max-width:640px;margin:18px auto 28px;font-size:clamp(16px,2vw,19px);color:var(--muted);line-height:1.7}
.fp-hero .btns{justify-content:center}

.fp-section{padding:70px 0;border-top:1px solid var(--line)}
.fp-section h2{font-family:"Playfair Display",serif;font-size:clamp(30px,4.5vw,46px);margin-bottom:14px;letter-spacing:-.02em}
.fp-section p.lead{max-width:680px;margin-bottom:36px;color:var(--muted);font-size:17px;line-height:1.7}

.fp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.fp-card{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
.fp-card h3{font-size:20px;margin-bottom:10px;color:var(--text)}
.fp-card p{color:var(--muted);font-size:14px;line-height:1.7}
.fp-card .num{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:rgba(255,106,26,.12);color:var(--brand2);font-weight:800;font-family:"JetBrains Mono",monospace;font-size:13px;margin-bottom:14px}

.fp-steps{counter-reset:st}
.fp-steps .fp-card{counter-increment:st;position:relative}
.fp-steps .fp-card::before{content:"0" counter(st);position:absolute;top:18px;right:22px;font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.08em;color:var(--soft)}

.fp-cta{padding:72px 32px;text-align:center;background:linear-gradient(135deg,rgba(255,106,26,.06),rgba(255,159,31,.02));border:1px solid rgba(255,106,26,.2);border-radius:var(--radius);margin:60px 0}
.fp-cta h2{font-size:clamp(28px,4vw,40px);margin-bottom:12px;font-family:"Playfair Display",serif}
.fp-cta p{color:var(--muted);font-size:16px;line-height:1.7;max-width:560px;margin:0 auto 26px}

.fp-faq{max-width:820px;margin:0 auto}
.fp-faq details{border-bottom:1px solid var(--line);padding:20px 0}
.fp-faq summary{font-size:17px;font-weight:700;cursor:pointer;list-style:none;padding-right:32px;position:relative;color:var(--text)}
.fp-faq summary::-webkit-details-marker{display:none}
.fp-faq summary::after{content:"+";position:absolute;right:0;top:-4px;font-size:24px;font-weight:400;color:var(--brand2);transition:.2s}
.fp-faq details[open] summary::after{transform:rotate(45deg)}
.fp-faq p{color:var(--muted);font-size:15px;line-height:1.8;margin-top:12px}

.fp-related{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:36px}
.fp-related a{display:block;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:14px;color:var(--text);text-decoration:none;transition:.2s}
.fp-related a:hover{border-color:var(--brand2);transform:translateY(-2px)}
.fp-related .r-kicker{display:block;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;color:var(--brand2);margin-bottom:8px;text-transform:uppercase}
.fp-related .r-title{font-weight:700;font-size:15px;margin-bottom:6px}
.fp-related .r-desc{font-size:13px;color:var(--muted);line-height:1.6}
