/* ================================================================
   INNER PAGES
   ================================================================ */

/* --- ABOUT --- */
.text-block p{font-size:1rem;line-height:1.8;color:#444;margin-bottom:.75rem}
.section-title{font-size:1.5rem;font-weight:800;margin-bottom:1rem;position:relative;padding-bottom:.65rem}
.section-title::after{content:'';position:absolute;bottom:0;left:0;width:50px;height:3px;background:linear-gradient(135deg,var(--green),var(--green-dark));border-radius:2px}

/* --- PROCESS --- */
.steps{position:relative;max-width:700px;margin:0 auto}
.steps::before{content:'';position:absolute;left:24px;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,var(--green),var(--green-dark));border-radius:2px}
@media(min-width:768px){.steps::before{left:34px}}
.step{display:flex;align-items:flex-start;gap:1.25rem;margin-bottom:2.5rem;position:relative}
.step-num{flex-shrink:0;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;font-size:1.2rem;font-weight:900;display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 4px 15px rgba(34,197,94,.3)}
@media(min-width:768px){.step-num{width:70px;height:70px;font-size:1.5rem}}
.step-body{flex:1;padding-top:.35rem}
.step-body h3{font-size:1.25rem;font-weight:800;margin-bottom:.5rem}
.step-body p{font-size:.95rem;color:var(--text2);line-height:1.7}

/* --- CONTACT --- */
.contact-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;margin-bottom:3rem}
@media(min-width:768px){.contact-grid{grid-template-columns:1.4fr 1fr}}
.info-sidebar{background:var(--light-bg);padding:2rem;border-radius:12px}
.info-item{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem}
.info-item svg{flex-shrink:0;margin-top:3px;stroke:var(--green-dark);width:20px;height:20px;fill:none;stroke-width:2}
.info-item strong{display:block;font-size:.85rem;margin-bottom:.1rem}
.info-item p{font-size:.85rem;color:var(--text-muted);margin:0}

/* FAQ */
.faq{max-width:750px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--border)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.1rem 0;background:none;border:none;cursor:pointer;font-size:1rem;font-weight:600;font-family:var(--font);color:var(--text);text-align:left;transition:color .2s}
.faq-q:hover{color:var(--green-dark)}
.faq-icon{font-size:1.4rem;font-weight:300;transition:transform .3s;color:var(--green-dark)}
.faq-item.active .faq-icon{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-item.active .faq-a{max-height:200px}
.faq-a p{padding:0 0 1.1rem;font-size:.9rem;color:var(--text-muted);line-height:1.6}

/* --- GALLERY --- */
.gal-filters{display:flex;gap:.65rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}
.gf{padding:7px 18px;border:2px solid #ddd;border-radius:50px;background:#fff;font-weight:700;font-size:.8rem;cursor:pointer;font-family:var(--font);transition:all .2s}
.gf:hover,.gf.active{border-color:var(--green);background:#f0fdf4;color:var(--green-dark)}
.gal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
@media(min-width:768px){.gal-grid{grid-template-columns:repeat(3,1fr);gap:1rem}}
.gi{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;cursor:pointer;background:var(--light-bg)}
.gi img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.gi:hover img{transform:scale(1.05)}
.gi-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 50%);opacity:0;transition:opacity .3s;display:flex;align-items:flex-end;padding:1rem}
.gi:hover .gi-ov{opacity:1}
.gi-ov strong{color:#fff;font-size:.85rem;display:block}
.gi-ov span{color:rgba(255,255,255,.65);font-size:.7rem}
.gi-tag{position:absolute;top:8px;right:8px;padding:2px 8px;background:var(--green);color:#fff;font-size:.6rem;font-weight:700;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}

/* Lightbox */
.lb{display:none;position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:99999;align-items:center;justify-content:center;padding:1.5rem}
.lb.active{display:flex}
.lb img{max-width:92%;max-height:82vh;border-radius:8px}
.lb-close{position:absolute;top:1rem;right:1.5rem;color:#fff;font-size:2rem;cursor:pointer;background:none;border:none}
.lb-info{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);color:#fff;text-align:center}
.lb-info strong{display:block;font-size:1rem}
.lb-info span{font-size:.85rem;color:rgba(255,255,255,.55)}

/* --- REVIEWS --- */
.reviews-wrap{max-width:850px;margin:0 auto}
.rev-summary{text-align:center;padding:2rem;background:var(--light-bg);border-radius:14px;margin-bottom:2.5rem}
.rev-summary .stars{font-size:2rem;color:#f59e0b;letter-spacing:3px}
.rev-summary h3{font-size:1.2rem;font-weight:800;margin-top:.25rem}
.rev-summary p{color:var(--text-muted);font-size:.9rem}
.rev-card{display:grid;grid-template-columns:1fr;gap:1.5rem;padding:2rem;background:#fff;border:1px solid var(--border);border-radius:14px;margin-bottom:1.5rem;transition:all .3s}
@media(min-width:768px){.rev-card.has-img{grid-template-columns:1fr 1.3fr}}
.rev-card:hover{border-color:var(--green);box-shadow:0 8px 25px rgba(22,163,74,.06)}
.rev-img{border-radius:10px;overflow:hidden;background:var(--light-bg)}
.rev-img img{width:100%;height:100%;object-fit:cover;min-height:180px}
.rev-stars{color:#f59e0b;font-size:1.1rem;margin-bottom:.75rem;letter-spacing:2px}
.rev-text{font-size:.95rem;color:#444;line-height:1.7;font-style:italic;margin-bottom:1rem}
.rev-author{border-top:1px solid #eee;padding-top:.75rem}
.rev-name{font-weight:800;font-size:.95rem}
.rev-org{font-size:.8rem;color:var(--text-muted);margin-top:.1rem}
.rev-product{display:inline-block;margin-top:.4rem;padding:3px 10px;background:#f0fdf4;color:var(--green-dark);font-size:.7rem;font-weight:700;border-radius:4px}

/* --- QUOTE FORM --- */
.quote-section{padding:0 0 50px;background:var(--off-white)}
.quote-wrap{max-width:780px;margin:0 auto;padding:0 1.25rem}
@media(min-width:768px){.quote-wrap{padding:0}}

.prog-bar{max-width:680px;margin:2rem auto 2.5rem}
.prog-track{width:100%;height:4px;background:#e0e0e0;border-radius:2px;margin-bottom:.75rem}
.prog-fill{height:100%;background:linear-gradient(135deg,var(--green),var(--green-dark));border-radius:2px;transition:width .4s var(--ease);width:20%}
.prog-steps{display:flex;justify-content:space-between}
.ps{display:flex;flex-direction:column;align-items:center;gap:.3rem}
.ps-circle{width:28px;height:28px;border-radius:50%;border:2px solid #ddd;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#999;transition:all .3s}
.ps.active .ps-circle,.ps.done .ps-circle{background:linear-gradient(135deg,var(--green),var(--green-dark));border-color:var(--green);color:#fff}
.ps-label{font-size:.6rem;color:#999;font-weight:600;text-align:center}
.ps.active .ps-label{color:var(--green-dark)}

.fs{display:none;background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 16px rgba(0,0,0,.05)}
@media(min-width:768px){.fs{padding:2.5rem}}
.fs.active{display:block}
.fs-title{font-size:1.4rem;font-weight:800;margin-bottom:.3rem}
.fs-desc{color:var(--text-muted);margin-bottom:1.5rem;font-size:.9rem}

.sport-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}
@media(min-width:600px){.sport-grid{grid-template-columns:repeat(4,1fr)}}
.sc{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1.1rem .75rem;border:2px solid #e5e5e5;border-radius:10px;cursor:pointer;transition:all .2s;background:#fff}
.sc:hover{border-color:var(--green);background:#f0fdf4}
.sc.sel{border-color:var(--green);background:#f0fdf4;box-shadow:0 0 0 3px rgba(34,197,94,.15)}
.sc-emoji{font-size:2rem}
.sc span{font-weight:700;font-size:.8rem}

.qty-row{display:flex;align-items:center;max-width:180px;margin-bottom:.5rem}
.qty-b{width:40px;height:40px;border:1px solid #ddd;background:#fff;font-size:1.1rem;cursor:pointer;font-weight:700;transition:all .2s}
.qty-b.mi{border-radius:6px 0 0 6px}
.qty-b.pl{border-radius:0 6px 6px 0}
.qty-b:hover{background:#f0fdf4;border-color:var(--green)}
.qty-row input{width:60px;height:40px;border:1px solid #ddd;border-left:none;border-right:none;text-align:center;font-size:1rem;font-weight:700;font-family:var(--font)}
.qty-tiers{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.qt{font-size:.7rem;color:var(--text-muted);padding:3px 8px;background:var(--light-bg);border-radius:3px}
.qt.hl{background:#f0fdf4;color:var(--green-dark);font-weight:600}

.oc{display:flex;gap:.5rem;flex-wrap:wrap}
.oc-item{padding:.7rem 1rem;border:2px solid #e5e5e5;border-radius:6px;cursor:pointer;font-weight:600;font-size:.85rem;transition:all .2s}
.oc-item:hover{border-color:var(--green)}
.oc-item.sel{border-color:var(--green);background:#f0fdf4}
.og{margin-bottom:1.25rem}
.og>label{display:block;font-size:.85rem;font-weight:700;margin-bottom:.4rem}

.players-box{padding:1.25rem;background:var(--light-bg);border-radius:8px;margin-bottom:1.5rem}
.players-hdr{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}
.btn-auto{padding:6px 14px;background:var(--green);color:#fff;border:none;border-radius:5px;font-size:.75rem;font-weight:700;cursor:pointer;font-family:var(--font)}
.btn-auto:hover{background:var(--green-dark)}
.pf{display:flex;gap:.5rem;margin-bottom:.4rem;align-items:center}
.pf input{flex:1;padding:8px;border:1px solid #ddd;border-radius:5px;font-size:.85rem;font-family:var(--font)}
.pf input:first-child{flex:2}
.btn-rm{width:28px;height:28px;border-radius:50%;border:none;background:#fee2e2;color:#ef4444;cursor:pointer;font-size:.9rem}
.btn-add-p{padding:6px 14px;background:none;border:1px dashed #ccc;border-radius:5px;color:var(--text-muted);cursor:pointer;font-size:.8rem;font-family:var(--font);width:100%;margin-top:.35rem}
.btn-add-p:hover{border-color:var(--green);color:var(--green)}

.color-pickers{display:flex;gap:1.5rem;margin-bottom:1.25rem}
.cp{display:flex;align-items:center;gap:.5rem}
.cp span{font-size:.85rem;font-weight:600}
.cp input[type="color"]{width:44px;height:36px;border:1px solid #ddd;border-radius:5px;cursor:pointer}

.upload-zone{border:2px dashed #ddd;border-radius:8px;padding:1.5rem;text-align:center;cursor:pointer;transition:all .2s;position:relative}
.upload-zone:hover{border-color:var(--green);background:#f0fdf4}
.upload-zone p{color:var(--text-muted);font-size:.9rem}
.upload-zone input{position:absolute;inset:0;opacity:0;cursor:pointer}

.review-grid{display:grid;gap:1rem}
.rv-sec{padding:1rem;background:var(--light-bg);border-radius:8px}
.rv-sec h3{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:700;margin-bottom:.5rem}
.btn-edit{padding:3px 10px;background:none;border:1px solid #ddd;border-radius:3px;font-size:.7rem;cursor:pointer;color:var(--green-dark);font-weight:600;font-family:var(--font)}
.btn-edit:hover{background:#f0fdf4}
.rv-row{display:flex;justify-content:space-between;padding:.2rem 0;font-size:.85rem}
.rv-label{color:var(--text-muted)}
.rv-val{font-weight:600}

.btn-group{display:flex;justify-content:space-between;gap:.75rem;margin-top:1.5rem}
.btn-next,.btn-sub-q{padding:12px 30px;background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;border:none;border-radius:6px;font-size:.95rem;font-weight:800;cursor:pointer;font-family:var(--font);transition:all .3s;box-shadow:0 4px 12px rgba(34,197,94,.25)}
.btn-next:hover,.btn-sub-q:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(34,197,94,.45)}
.btn-back{padding:12px 30px;background:#fff;color:#333;border:1px solid #ddd;border-radius:6px;font-size:.95rem;font-weight:700;cursor:pointer;font-family:var(--font)}
.btn-back:hover{border-color:#999}

.success-msg{text-align:center;padding:3rem 1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 16px rgba(0,0,0,.05)}
.success-icon{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;font-size:2rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}
.success-msg h2{font-size:1.5rem;margin-bottom:.5rem}
.success-msg p{color:var(--text-muted);margin-bottom:1.5rem}
