/* ═══ SHARED SUB-PAGE STYLES ═══ */
.page-hero{padding:10rem 10vw 6rem;position:relative;overflow:hidden;background:var(--bg-dark)}
.page-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 40% at 30% 30%,rgba(255,107,0,.06),transparent 70%);pointer-events:none}
.page-hero .tag{font-size:.7rem;font-weight:700;color:var(--fc-orange);text-transform:uppercase;letter-spacing:2px;margin-bottom:1rem}
.page-hero h1{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:700;color:#fff;letter-spacing:-.03em;line-height:1.1;margin-bottom:1.2rem}
.page-hero p{font-size:clamp(.95rem,1.3vw,1.15rem);color:var(--text-muted);max-width:600px;line-height:1.7}

.section{padding:8rem 10vw;position:relative}
.section-dark{background:#020204}
.section-alt{background:var(--bg-dark)}
.section .label{font-size:.7rem;font-weight:700;color:var(--fc-orange);text-transform:uppercase;letter-spacing:2px;margin-bottom:1rem}
.section h2{font-size:clamp(1.8rem,3.5vw,3rem);font-weight:700;color:#fff;letter-spacing:-.02em;line-height:1.15;margin-bottom:1rem}
.section .desc{font-size:1rem;color:var(--text-muted);max-width:560px;line-height:1.7;margin-bottom:3rem}

/* Cards */
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}
.card{padding:2.5rem;border-radius:16px;background:rgba(255,255,255,.015);border:1px solid rgba(255,255,255,.04);transition:all .4s}
.card:hover{border-color:rgba(255,107,0,.15);transform:translateY(-4px)}
.card .icon{width:48px;height:48px;border-radius:12px;background:rgba(255,107,0,.08);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}
.card .icon svg{width:22px;height:22px;stroke:var(--fc-orange);fill:none;stroke-width:1.5}
.card h3{font-size:1.2rem;font-weight:600;color:#fff;margin-bottom:.6rem}
.card p{font-size:.88rem;color:var(--text-muted);line-height:1.65}

/* Steps */
.steps-vertical{display:flex;flex-direction:column;gap:0;max-width:800px}
.vstep{display:grid;grid-template-columns:60px 1fr;gap:2rem;padding:2.5rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.vstep-num{font-size:2rem;font-weight:800;color:var(--fc-orange);font-family:'Inter',sans-serif}
.vstep h3{font-size:1.3rem;font-weight:600;color:#fff;margin-bottom:.5rem}
.vstep p{font-size:.9rem;color:var(--text-muted);line-height:1.65}

/* SVG Visual Blocks */
.visual-block{display:flex;align-items:center;justify-content:center;padding:4rem 0}
.visual-block svg{max-width:500px;width:100%;height:auto}

/* Stat Row */
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin:3rem 0}
.stat-item{text-align:center;padding:2rem 1rem;border-radius:12px;background:rgba(255,107,0,.03);border:1px solid rgba(255,107,0,.06)}
.stat-item .num{font-size:2rem;font-weight:800;color:var(--fc-orange);margin-bottom:.3rem}
.stat-item .lbl{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}

/* Contact Form */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:700px}
.form-group{display:flex;flex-direction:column;gap:.4rem}
.form-group.full{grid-column:1/-1}
.form-group label{font-size:.75rem;font-weight:600;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:1px}
.form-group input,.form-group textarea,.form-group select{padding:.9rem 1.2rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:10px;color:#fff;font-size:.9rem;font-family:'Inter',sans-serif;outline:none;transition:border .3s}
.form-group input:focus,.form-group textarea:focus{border-color:rgba(255,107,0,.3)}
.form-group textarea{resize:vertical;min-height:120px}
.form-submit{margin-top:1.5rem}
.btn-submit{display:inline-flex;align-items:center;gap:8px;padding:1rem 2.5rem;border-radius:100px;font-size:.95rem;font-weight:600;background:var(--fc-orange);color:#fff;border:none;cursor:pointer;transition:all .3s;box-shadow:0 0 30px rgba(255,107,0,.2)}
.btn-submit:hover{box-shadow:0 0 50px rgba(255,107,0,.35);transform:translateY(-2px)}

/* Two-col layout */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}

@media(max-width:900px){
    .page-hero{padding:7rem 6vw 4rem}.section{padding:5rem 6vw}
    .card-grid{grid-template-columns:1fr}.two-col{grid-template-columns:1fr;gap:2rem}
    .form-grid{grid-template-columns:1fr}.stat-row{grid-template-columns:repeat(2,1fr)}
}
