/* ================================================
   HomeEase — Ultra-Modern UI 2025
   Design: Dark luxury + electric accents + glass
   Fonts: Syne (display) + Outfit (body)
   ================================================ */

@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=Outfit:wght@300;400;500;600;700&display=swap');

/* ── Design Tokens ── */
:root {
  --bg-base:      #080b14;
  --bg-surface:   #0d1220;
  --bg-raised:    #121827;
  --bg-overlay:   #1a2236;

  --accent-1:     #6ee7b7;
  --accent-2:     #38bdf8;
  --accent-3:     #f472b6;

  --grad-primary: linear-gradient(135deg, #6ee7b7 0%, #38bdf8 100%);
  --grad-pink:    linear-gradient(135deg, #f472b6 0%, #a855f7 100%);
  --grad-warm:    linear-gradient(135deg, #fb923c 0%, #f472b6 100%);

  --text-primary:   #f0f4ff;
  --text-secondary: #8a97b5;
  --text-muted:     #4a5470;
  --text-inv:       #080b14;

  --border:       rgba(255,255,255,0.06);
  --border-mint:  rgba(110,231,183,0.25);
  --glass:        rgba(255,255,255,0.04);
  --glass-hover:  rgba(255,255,255,0.07);

  --r-xs: 8px; --r-sm: 14px; --r-md: 20px;
  --r-lg: 28px; --r-xl: 40px;

  --shadow-card:  0 8px 32px rgba(0,0,0,0.45);
  --shadow-float: 0 24px 64px rgba(0,0,0,0.65);

  --font-d: 'Syne', sans-serif;
  --font-b: 'Outfit', sans-serif;
  --ease:   cubic-bezier(0.4,0,0.2,1);
  --spring: cubic-bezier(0.34,1.56,0.64,1);
  --t:      0.3s;
}

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-b);background:var(--bg-base);color:var(--text-primary);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
ul{list-style:none}
img{max-width:100%;display:block}

/* ── Typography ── */
h1,h2,h3,h4{font-family:var(--font-d);font-weight:700;line-height:1.1;letter-spacing:-0.03em}
h1{font-size:clamp(2.8rem,7vw,5.5rem)}
h2{font-size:clamp(2rem,4vw,3.4rem)}
h3{font-size:clamp(1.3rem,2vw,1.7rem)}
h4{font-size:1.1rem}
p{font-size:1rem;color:var(--text-secondary)}

/* ── Utilities ── */
.container{max-width:1240px;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem);position:relative;z-index:1}
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-b);font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-1);margin-bottom:1rem}
.eyebrow::before{content:'';width:20px;height:2px;background:var(--grad-primary);border-radius:2px}
.grad-text{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.section-title{margin-bottom:.75rem}
.section-desc{font-size:1.05rem;color:var(--text-secondary);max-width:520px}

/* ──────────────────────
   HEADER
────────────────────── */
header{position:sticky;top:0;z-index:100;background:rgba(8,11,20,.88);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--border)}
nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.logo{font-family:var(--font-d);font-size:1.6rem;font-weight:800;letter-spacing:-.04em;color:var(--text-primary)}
.logo span{background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.nav-links{display:flex;align-items:center;gap:.2rem}
.nav-links a{font-size:.88rem;font-weight:500;color:var(--text-secondary);padding:.45rem .9rem;border-radius:var(--r-xs);transition:color var(--t) var(--ease),background var(--t) var(--ease)}
.nav-links a:hover{color:var(--text-primary);background:var(--glass)}
.nav-links a.active{color:var(--accent-1)}
.nav-cta{background:var(--grad-primary)!important;color:var(--text-inv)!important;font-weight:700!important;padding:.55rem 1.4rem!important;border-radius:var(--r-xs)!important;box-shadow:0 4px 20px rgba(110,231,183,.3);transition:transform var(--t) var(--spring),box-shadow var(--t) var(--ease)!important}
.nav-cta:hover{transform:translateY(-2px) scale(1.02)!important;box-shadow:0 8px 30px rgba(110,231,183,.45)!important;background:var(--grad-primary)!important}
.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--text-secondary);border-radius:2px;transition:var(--t) var(--ease)}

/* ──────────────────────
   BUTTONS
────────────────────── */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-b);font-size:.9rem;font-weight:600;padding:.8rem 1.9rem;border-radius:var(--r-xs);cursor:pointer;border:none;transition:transform var(--t) var(--spring),box-shadow var(--t) var(--ease);position:relative;overflow:hidden;letter-spacing:.01em}
.btn::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,0);transition:background var(--t) var(--ease)}
.btn:hover::after{background:rgba(255,255,255,.08)}
.btn-primary{background:var(--grad-primary);color:var(--text-inv);box-shadow:0 4px 20px rgba(110,231,183,.3)}
.btn-primary:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 12px 40px rgba(110,231,183,.45)}
.btn-ghost{background:var(--glass);color:var(--text-primary);border:1px solid var(--border)}
.btn-ghost:hover{background:var(--glass-hover);border-color:rgba(255,255,255,.12);transform:translateY(-2px)}
.btn-outline-mint{background:transparent;color:var(--accent-1);border:1.5px solid var(--border-mint)}
.btn-outline-mint:hover{background:rgba(110,231,183,.08);transform:translateY(-2px)}
.btn-pink{background:var(--grad-pink);color:#fff;box-shadow:0 4px 20px rgba(244,114,182,.3)}
.btn-pink:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(244,114,182,.45)}
.btn-blue{background:linear-gradient(135deg,#38bdf8,#818cf8);color:#fff;box-shadow:0 4px 20px rgba(56,189,248,.3)}
.btn-blue:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(56,189,248,.45)}

/* ──────────────────────
   HERO
────────────────────── */
.hero{min-height:calc(100vh - 62px);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding:5rem 0;position:relative;overflow:hidden}
.hero-orb-1{position:absolute;top:-20%;left:-10%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(110,231,183,.07) 0%,transparent 70%);pointer-events:none;z-index:0}
.hero-orb-2{position:absolute;bottom:-10%;right:-5%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(56,189,248,.06) 0%,transparent 70%);pointer-events:none;z-index:0}
.hero-content{position:relative;z-index:1}
.hero-badge{display:inline-flex;align-items:center;gap:.6rem;background:rgba(110,231,183,.08);border:1px solid rgba(110,231,183,.2);color:var(--accent-1);padding:.4rem 1rem;border-radius:50px;font-size:.76rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:2rem}
.badge-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-1);animation:blink 2s infinite}
@keyframes blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}
.hero h1{margin-bottom:1.5rem}
.hero>div>p{font-size:1.1rem;line-height:1.8;margin-bottom:2.5rem;max-width:460px}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap}
.hero-proof{display:flex;align-items:center;gap:1.5rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}
.proof-item{text-align:center}
.proof-num{font-family:var(--font-d);font-size:1.5rem;font-weight:800;background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.proof-lbl{font-size:.72rem;color:var(--text-muted);margin-top:.15rem;font-weight:500}
.proof-div{width:1px;height:36px;background:var(--border)}

/* Hero visual */
.hero-visual{position:relative;z-index:1}
.hv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.hcard{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-md);padding:1.5rem;transition:transform var(--t) var(--spring),border-color var(--t) var(--ease),box-shadow var(--t) var(--ease);position:relative;overflow:hidden;cursor:default}
.hcard::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;opacity:0;transition:opacity var(--t) var(--ease)}
.hcard:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.1);box-shadow:var(--shadow-card)}
.hcard:hover::before{opacity:1}
.hcard.mint::before{background:var(--grad-primary)}
.hcard.blue::before{background:linear-gradient(90deg,#38bdf8,#818cf8)}
.hcard.pink::before{background:var(--grad-pink)}
.hcard-icon{font-size:1.75rem;margin-bottom:.75rem}
.hcard h4{font-family:var(--font-d);font-size:1rem;margin-bottom:.25rem;color:var(--text-primary)}
.hcard p{font-size:.78rem;color:var(--text-muted);line-height:1.5}
.hcard-wide{grid-column:span 2;display:flex;align-items:center;gap:1.25rem;background:linear-gradient(135deg,rgba(110,231,183,.07) 0%,rgba(56,189,248,.04) 100%);border-color:var(--border-mint)}
.hcard-wide:hover{border-color:rgba(110,231,183,.35)}
.hcard-wide .hcard-icon{font-size:2.2rem;flex-shrink:0}
.hcard-wide h4{font-size:1.1rem}
.hcard-wide p{font-size:.85rem}

/* ──────────────────────
   STATS BAR
────────────────────── */
.stats-bar{padding:3rem 0;background:var(--bg-surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center}
.stat-num{font-family:var(--font-d);font-size:2.75rem;font-weight:800;background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.3rem}
.stat-lbl{font-size:.8rem;color:var(--text-muted);font-weight:500;letter-spacing:.05em}

/* ──────────────────────
   SERVICE CARDS (HOME)
────────────────────── */
.services-home{padding:7rem 0}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1rem}
.svc-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:2.5rem 2rem;text-align:center;transition:transform var(--t) var(--spring),border-color var(--t) var(--ease),box-shadow var(--t) var(--ease);cursor:default;display:flex;flex-direction:column;align-items:center;position:relative;overflow:hidden}
.svc-card::after{content:'';position:absolute;bottom:-80px;left:50%;transform:translateX(-50%);width:220px;height:220px;border-radius:50%;opacity:0;transition:opacity var(--t) var(--ease)}
.svc-card.mint::after{background:radial-gradient(circle,rgba(110,231,183,.1) 0%,transparent 70%)}
.svc-card.blue::after{background:radial-gradient(circle,rgba(56,189,248,.1) 0%,transparent 70%)}
.svc-card.pink::after{background:radial-gradient(circle,rgba(244,114,182,.1) 0%,transparent 70%)}
.svc-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-float)}
.svc-card:hover::after{opacity:1}
.svc-card.mint:hover{border-color:rgba(110,231,183,.3);box-shadow:0 20px 60px rgba(110,231,183,.07),var(--shadow-float)}
.svc-card.blue:hover{border-color:rgba(56,189,248,.3);box-shadow:0 20px 60px rgba(56,189,248,.07),var(--shadow-float)}
.svc-card.pink:hover{border-color:rgba(244,114,182,.3);box-shadow:0 20px 60px rgba(244,114,182,.07),var(--shadow-float)}
.svc-icon{width:72px;height:72px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;font-size:1.9rem;margin-bottom:1.5rem;flex-shrink:0}
.svc-icon.mint{background:rgba(110,231,183,.1);box-shadow:0 0 0 8px rgba(110,231,183,.05)}
.svc-icon.blue{background:rgba(56,189,248,.1);box-shadow:0 0 0 8px rgba(56,189,248,.05)}
.svc-icon.pink{background:rgba(244,114,182,.1);box-shadow:0 0 0 8px rgba(244,114,182,.05)}
.svc-card h3{margin-bottom:.75rem;font-size:1.4rem}
.svc-card p{font-size:.9rem;line-height:1.7;margin-bottom:2rem}
.svc-card .btn{margin-top:auto}

/* ──────────────────────
   HOW IT WORKS
────────────────────── */
.how-section{padding:7rem 0;background:var(--bg-surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:1rem;position:relative}
.how-line{position:absolute;top:27px;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,var(--border-mint),var(--border-mint),transparent);z-index:0}
.how-step{position:relative;z-index:1;text-align:center}
.step-circle{width:56px;height:56px;border-radius:50%;background:var(--grad-primary);color:var(--text-inv);display:flex;align-items:center;justify-content:center;font-family:var(--font-d);font-size:1.2rem;font-weight:800;margin:0 auto 1.5rem;box-shadow:0 8px 24px rgba(110,231,183,.35)}
.how-step h4{font-size:1.05rem;margin-bottom:.5rem}
.how-step p{font-size:.85rem}

/* ──────────────────────
   TESTIMONIALS
────────────────────── */
.testi-section{padding:7rem 0}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.testi-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-md);padding:2rem;transition:border-color var(--t) var(--ease),transform var(--t) var(--spring)}
.testi-card:hover{border-color:rgba(255,255,255,.1);transform:translateY(-4px)}
.testi-stars{color:#fbbf24;font-size:.9rem;letter-spacing:2px;margin-bottom:1rem}
.testi-card blockquote{font-size:.93rem;font-style:italic;color:var(--text-secondary);line-height:1.75;margin-bottom:1.5rem}
.testi-author{display:flex;align-items:center;gap:.75rem}
.testi-av{width:40px;height:40px;border-radius:50%;background:var(--grad-primary);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.testi-name{font-size:.88rem;font-weight:600;color:var(--text-primary)}
.testi-role{font-size:.73rem;color:var(--text-muted)}

/* ──────────────────────
   CTA SECTION
────────────────────── */
.cta-band{padding:6rem 0;background:var(--bg-raised);border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:800px;height:400px;border-radius:50%;background:radial-gradient(ellipse,rgba(110,231,183,.05) 0%,transparent 70%);pointer-events:none}
.cta-band h2{margin-bottom:1rem}
.cta-band p{margin-bottom:2.5rem}
.cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* ──────────────────────
   PAGE HERO
────────────────────── */
.page-hero{padding:5rem 0 4rem;background:var(--bg-surface);border-bottom:1px solid var(--border);text-align:center;position:relative;overflow:hidden}
.page-hero::after{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:600px;height:280px;background:radial-gradient(ellipse at top,rgba(110,231,183,.06) 0%,transparent 70%);pointer-events:none}
.page-hero h1{margin-bottom:1rem}

/* ──────────────────────
   SERVICES PAGE
────────────────────── */
.services-page{padding:5rem 0}
.cat-block{margin-bottom:5rem}
.cat-head{display:flex;align-items:center;gap:1.25rem;margin-bottom:2rem;padding:1.5rem 2rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-md)}
.cat-icon{width:52px;height:52px;border-radius:var(--r-xs);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
.cat-icon.mint{background:rgba(110,231,183,.1)}
.cat-icon.blue{background:rgba(56,189,248,.1)}
.cat-icon.pink{background:rgba(244,114,182,.1)}
.cat-head h2{font-size:2rem;flex:1}
.cat-head .cat-meta{font-size:.83rem;color:var(--text-muted);margin-top:.2rem}
.sub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.sub-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-md);padding:1.75rem;transition:transform var(--t) var(--spring),border-color var(--t) var(--ease),box-shadow var(--t) var(--ease);display:flex;flex-direction:column}
.sub-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-card)}
.sub-card.mint:hover{border-color:rgba(110,231,183,.25)}
.sub-card.blue:hover{border-color:rgba(56,189,248,.25)}
.sub-card.pink:hover{border-color:rgba(244,114,182,.25)}
.sub-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}
.sub-card h4{font-family:var(--font-d);font-size:1.1rem}
.sub-price{font-family:var(--font-d);font-size:1.35rem;font-weight:700}
.sub-price.mint{color:var(--accent-1)}
.sub-price.blue{color:var(--accent-2)}
.sub-price.pink{color:var(--accent-3)}
.sub-card p{font-size:.84rem;line-height:1.65;margin-bottom:1.25rem}
.sub-meta{display:flex;gap:1rem;font-size:.76rem;color:var(--text-muted);font-weight:500;margin-bottom:1.25rem}
.sub-meta .dur::before{content:'⏱ '}
.sub-meta .rat::before{content:'★ ';color:#fbbf24}
.sub-card .btn{margin-top:auto;font-size:.82rem;padding:.6rem 1.2rem}

/* ──────────────────────
   BOOKING PAGE
────────────────────── */
.booking-page{padding:5rem 0}
.booking-grid{display:grid;grid-template-columns:1fr 460px;gap:3.5rem;align-items:start}
.booking-left h2{margin-bottom:1rem}
.booking-left>p{margin-bottom:2rem;line-height:1.8}
.perks{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}
.perk{display:flex;align-items:flex-start;gap:1rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:1rem 1.25rem;transition:border-color var(--t) var(--ease)}
.perk:hover{border-color:rgba(110,231,183,.2)}
.perk-ico{width:36px;height:36px;border-radius:var(--r-xs);background:rgba(110,231,183,.1);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.perk strong{font-size:.87rem;color:var(--text-primary);display:block;margin-bottom:.1rem}
.perk span{font-size:.78rem;color:var(--text-muted)}
.bk-quote{background:var(--bg-surface);border:1px solid var(--border);border-left:3px solid var(--accent-1);border-radius:var(--r-sm);padding:1.5rem;margin-top:2rem}
.bk-quote blockquote{font-size:.88rem;font-style:italic;color:var(--text-secondary);margin-bottom:1rem;line-height:1.7}
.bk-quote-author{display:flex;align-items:center;gap:.7rem}
.bq-av{width:32px;height:32px;border-radius:50%;background:var(--grad-primary);display:flex;align-items:center;justify-content:center;font-size:.85rem}
.bq-name{font-size:.83rem;font-weight:600}
.bq-sub{font-size:.72rem;color:var(--text-muted)}

/* Form */
.form-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:2.5rem;box-shadow:var(--shadow-float);position:sticky;top:90px}
.form-card h3{font-size:1.6rem;margin-bottom:.3rem}
.form-sub{font-size:.8rem;color:var(--text-muted);margin-bottom:2rem}
.fg{margin-bottom:1.15rem}
.fg label{display:block;font-size:.72rem;font-weight:600;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.45rem}
.fg input,.fg select,.fg textarea{width:100%;font-family:var(--font-b);font-size:.95rem;color:var(--text-primary);background:var(--bg-overlay);border:1px solid var(--border);border-radius:var(--r-xs);padding:.8rem 1rem;outline:none;transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease);appearance:none;-webkit-appearance:none}
.fg select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236ee7b7' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}
.fg input:focus,.fg select:focus{border-color:rgba(110,231,183,.5);box-shadow:0 0 0 3px rgba(110,231,183,.08)}
.fg input::placeholder{color:var(--text-muted)}
.fg select option{background:var(--bg-overlay);color:var(--text-primary)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.eta-notice{background:rgba(110,231,183,.05);border:1px solid rgba(110,231,183,.15);border-radius:var(--r-xs);padding:1rem 1.25rem;margin:.25rem 0 1.5rem}
.eta-notice p{font-size:.78rem;color:var(--accent-1);line-height:1.6}
.eta-notice strong{font-weight:700}
.btn-submit{width:100%;justify-content:center;padding:1rem;font-size:1rem;border-radius:var(--r-xs)}
.form-legal{text-align:center;font-size:.72rem;color:var(--text-muted);margin-top:.75rem}
.form-legal a{color:var(--accent-1)}

/* ──────────────────────
   PROVIDERS PAGE
────────────────────── */
.providers-page{padding:5rem 0}
.filter-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:3rem}
.f-btn{font-family:var(--font-b);font-size:.82rem;font-weight:600;padding:.5rem 1.2rem;border-radius:50px;cursor:pointer;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);transition:all var(--t) var(--ease)}
.f-btn:hover,.f-btn.active{background:var(--grad-primary);border-color:transparent;color:var(--text-inv);box-shadow:0 4px 16px rgba(110,231,183,.3);transform:translateY(-2px)}
.prov-label{font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}
.prov-label::after{content:'';flex:1;height:1px;background:var(--border)}
.prov-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:3.5rem}
.prov-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:2rem;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform var(--t) var(--spring),border-color var(--t) var(--ease),box-shadow var(--t) var(--ease)}
.prov-card:hover{transform:translateY(-8px);border-color:rgba(255,255,255,.1);box-shadow:var(--shadow-float)}
.prov-av{width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.1rem;margin-bottom:1.25rem;position:relative;border:2px solid var(--border)}
.prov-av.mint{background:radial-gradient(135deg,rgba(110,231,183,.15),rgba(56,189,248,.08));box-shadow:0 0 0 8px rgba(110,231,183,.05)}
.prov-av.pink{background:radial-gradient(135deg,rgba(244,114,182,.15),rgba(168,85,247,.08));box-shadow:0 0 0 8px rgba(244,114,182,.05)}
.prov-av.blue{background:radial-gradient(135deg,rgba(56,189,248,.15),rgba(129,140,248,.08));box-shadow:0 0 0 8px rgba(56,189,248,.05)}
.v-badge{position:absolute;bottom:0;right:0;width:24px;height:24px;border-radius:50%;background:var(--grad-primary);border:2px solid var(--bg-surface);display:flex;align-items:center;justify-content:center;font-size:.62rem;color:var(--text-inv);font-weight:700}
.prov-name{font-family:var(--font-d);font-size:1.3rem;margin-bottom:.2rem}
.prov-exp{font-size:.76rem;color:var(--text-muted);font-weight:500;margin-bottom:1.25rem}
.primary-skill{display:inline-flex;align-items:center;gap:.4rem;background:var(--grad-primary);color:var(--text-inv);padding:.4rem 1rem;border-radius:50px;font-size:.76rem;font-weight:700;letter-spacing:.04em;margin-bottom:1.25rem;box-shadow:0 4px 16px rgba(110,231,183,.3)}
.primary-skill::before{content:'★'}
.primary-skill.pink{background:var(--grad-pink);box-shadow:0 4px 16px rgba(244,114,182,.3)}
.primary-skill.blue{background:linear-gradient(135deg,#38bdf8,#818cf8);box-shadow:0 4px 16px rgba(56,189,248,.3)}
.skill-tags{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;margin-bottom:1.25rem}
.stag{background:var(--bg-overlay);color:var(--text-secondary);font-size:.72rem;font-weight:500;padding:.28rem .7rem;border-radius:50px;border:1px solid var(--border)}
.prov-rating{display:flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-secondary)}
.stars{color:#fbbf24;letter-spacing:1px}
.prov-card .btn{width:100%;justify-content:center;font-size:.84rem;padding:.7rem 1rem;margin-top:auto}

.no-match{text-align:center;padding:3.5rem 2rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-xl);margin-top:2rem}
.no-match h2{margin-bottom:.75rem}
.no-match p{margin-bottom:2rem}

/* ──────────────────────
   FAQ
────────────────────── */
.faq-section{padding:5rem 0;background:var(--bg-surface);border-top:1px solid var(--border)}
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:1rem}
.faq-item{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--r-sm);padding:1.5rem;transition:border-color var(--t) var(--ease)}
.faq-item:hover{border-color:rgba(110,231,183,.2)}
.faq-item h4{font-size:1rem;margin-bottom:.5rem}
.faq-item p{font-size:.84rem}

/* ──────────────────────
   FOOTER
────────────────────── */
footer{background:var(--bg-surface);border-top:1px solid var(--border);padding:5rem 0 2rem}
.footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid var(--border)}
.footer-brand .logo{margin-bottom:1rem;display:block}
.footer-brand p{font-size:.87rem;line-height:1.75;color:var(--text-muted)}
.social-row{display:flex;gap:.6rem;margin-top:1.5rem}
.s-lnk{width:38px;height:38px;border-radius:var(--r-xs);background:var(--bg-overlay);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--text-muted);transition:all var(--t) var(--ease)}
.s-lnk:hover{background:rgba(110,231,183,.1);border-color:var(--border-mint);color:var(--accent-1);transform:translateY(-3px)}
.footer-col h5{font-family:var(--font-b);font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-1);margin-bottom:1.25rem}
.footer-col ul li{margin-bottom:.6rem}
.footer-col ul li a{font-size:.87rem;color:var(--text-muted);transition:color var(--t) var(--ease)}
.footer-col ul li a:hover{color:var(--text-primary)}
.f-contact p{font-size:.84rem;color:var(--text-muted);margin-bottom:.6rem;line-height:1.6}
.footer-bottom{padding-top:2rem;display:flex;align-items:center;justify-content:space-between;font-size:.76rem;color:var(--text-muted)}

/* ──────────────────────
   ANIMATIONS
────────────────────── */
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.anim-1{animation:fadeUp .65s var(--ease) both}
.anim-2{animation:fadeUp .65s .1s var(--ease) both}
.anim-3{animation:fadeUp .65s .2s var(--ease) both}
.anim-4{animation:fadeUp .65s .3s var(--ease) both}

/* ──────────────────────
   RESPONSIVE
────────────────────── */
@media(max-width:1024px){
  .hero{grid-template-columns:1fr;min-height:auto;padding:4rem 0}
  .hero-visual{display:none}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .svc-grid{grid-template-columns:1fr 1fr}
  .how-grid{grid-template-columns:repeat(2,1fr)}
  .how-line{display:none}
  .testi-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .booking-grid{grid-template-columns:1fr}
  .form-card{position:static}
  .prov-grid{grid-template-columns:repeat(2,1fr)}
  .sub-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .nav-links{display:none;flex-direction:column;gap:.25rem}
  .nav-toggle{display:flex}
  nav{flex-wrap:wrap;position:relative}
  #nav-chk:checked~.nav-links{display:flex;position:absolute;top:100%;left:0;right:0;background:rgba(13,18,32,.98);backdrop-filter:blur(20px);padding:1.25rem;border-bottom:1px solid var(--border);box-shadow:var(--shadow-float);z-index:99}
  .svc-grid{grid-template-columns:1fr}
  .sub-grid{grid-template-columns:1fr}
  .testi-grid{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr}
  .prov-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:2rem}
  .footer-bottom{flex-direction:column;gap:.5rem;text-align:center}
  .form-row{grid-template-columns:1fr}
  .cat-head{flex-wrap:wrap}
  .cat-head .btn{width:100%;justify-content:center;margin-top:.75rem}
  .how-grid{grid-template-columns:1fr}
  .hero>div>p{max-width:100%}
}
@media(max-width:480px){
  .stats-grid{grid-template-columns:1fr 1fr}
  .hero-btns{flex-direction:column}
  .hero-btns .btn{width:100%;justify-content:center}
  .cta-btns{flex-direction:column;align-items:center}
  .form-card{padding:1.5rem}
  .hero-proof{gap:1rem}
}
