/* ---- html/5.html ---- */
:root{
  --r:#c0364e;--rd:#9e2c3f;--rp:#fdf0f2;
  --k:#111;--w:#fff;--g:#f7f7f7;
  --b:#e8e8e8;--t:#555;--lt:#666;--mx:1084px;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--w);color:var(--k);font-family:'PT Sans',sans-serif;font-size:15px;line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}

/* ── HEADER ── */
header{background:var(--w);border-bottom:1px solid var(--b);position:sticky;top:0;z-index:200}
.header-inner{max-width:var(--mx);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:13px 24px}
.logo{font-family:'PT Serif',serif;font-size:22px;font-weight:700;color:var(--k);letter-spacing:-.5px}
.logo-dot{color:var(--r)}
.header-nav{display:flex;align-items:center;gap:6px}
.hnav-link{font-size:13px;font-weight:700;color:var(--t);padding:7px 12px;border-radius:5px;transition:color .15s,background .15s;white-space:nowrap}
.hnav-link:hover{color:var(--k);background:var(--g)}
.hnav-btn{background:var(--r);color:#fff;padding:8px 20px;font-size:13px;font-weight:700;border-radius:5px;transition:background .15s}
.hnav-btn:hover{background:var(--rd)}
.arrow-anim{display:inline-block;animation:arrowPulse 1.4s ease-in-out infinite}
@keyframes arrowPulse{0%,100%{transform:translateX(0);opacity:1}50%{transform:translateX(5px);opacity:.6}}

/* ── BREADCRUMB ── */
.bc{border-bottom:1px solid var(--b)}
.bci{max-width:var(--mx);margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:6px;height:36px;font-size:12px;color:var(--lt)}
.bci a{color:var(--lt);transition:color .15s}.bci a:hover{color:var(--k)}
.bcs{color:var(--b);font-size:10px}
.bcc{color:var(--k);font-weight:700}

/* ── HERO ── */
.hero{background:var(--k);padding:60px 24px 56px;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 65% 80% at 75% 50%,rgba(192,54,78,.2) 0%,transparent 70%);pointer-events:none}
.hero-inner{max-width:var(--mx);margin:0 auto;display:grid;grid-template-columns:1fr 380px;gap:60px;align-items:center;position:relative;z-index:1}
.hero-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(192,54,78,.15);border:1px solid rgba(192,54,78,.3);border-radius:20px;padding:4px 14px;font-size:11px;font-weight:700;color:rgba(255,255,255,.65);letter-spacing:.4px;margin-bottom:18px}
.hero-badge::before{content:'●';font-size:7px;color:#6ee7a0;animation:blink 2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.hero h1{font-family:'PT Serif',serif;font-size:clamp(28px,4vw,46px);font-weight:700;color:#fff;line-height:1.1;letter-spacing:-.5px;margin-bottom:14px}
.hero h1 em{font-style:italic;color:#e8899a}
.hero-sub{font-size:16px;color:rgba(255,255,255,.55);line-height:1.8;margin-bottom:28px}
.hero-price-badge{display:inline-flex;align-items:baseline;gap:6px;margin-bottom:28px}
.hero-price-num{font-family:'PT Sans',sans-serif;font-size:40px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;line-height:1}
.hero-price-curr{font-size:20px;color:rgba(255,255,255,.5);font-weight:700}
.hero-price-label{font-size:14px;color:rgba(255,255,255,.4)}
.hero-guarantees{display:flex;flex-direction:column;gap:8px}
.hg{display:flex;align-items:center;gap:9px;font-size:14px;color:rgba(255,255,255,.65)}
.hg::before{content:'✓';color:#6ee7a0;font-weight:700;flex-shrink:0}

/* Price card in hero */
.hero-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:28px 24px}
.hc-title{font-family:'PT Serif',serif;font-size:16px;font-weight:700;color:#fff;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.hc-option{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.hc-option:last-of-type{border-bottom:none;margin-bottom:16px}
.hc-opt-name{font-size:14px;color:rgba(255,255,255,.7)}
.hc-opt-name span{display:block;font-size:11px;color:rgba(255,255,255,.35);margin-top:2px}
.hc-opt-price{font-family:'PT Sans',sans-serif;font-size:16px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap}
.hc-btn{display:block;background:var(--r);color:#fff;text-align:center;padding:13px;font-size:15px;font-weight:700;border-radius:6px;transition:background .15s;box-shadow:0 4px 18px rgba(192,54,78,.3)}
.hc-btn:hover{background:var(--rd)}
.hc-note{text-align:center;font-size:11px;color:rgba(255,255,255,.3);margin-top:8px}

/* ── NUMBERS ── */
.numbers{background:var(--g);border-bottom:1px solid var(--b)}
.numbers-inner{max-width:var(--mx);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--b)}
.num-item{background:var(--g);padding:24px 20px;text-align:center}
.num-val{font-family:'PT Sans',sans-serif;font-size:36px;font-weight:700;color:var(--k);line-height:1;font-variant-numeric:tabular-nums;margin-bottom:4px}
.num-val b{color:var(--r)}
.num-lbl{font-size:12px;color:var(--lt);text-transform:uppercase;letter-spacing:.7px;line-height:1.4}

/* ── SHARED ── */
.w{max-width:var(--mx);margin:0 auto;padding:0 24px}
.sec{padding:52px 0 0}
.sh{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--k);padding-bottom:10px;margin-bottom:28px}
.sh h2{font-family:'PT Serif',serif;font-size:22px;font-weight:700}
.sh-note{font-size:13px;color:var(--lt)}

/* ── FILTER BAR ── */
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.filter-btn{font-size:13px;font-weight:700;color:var(--t);padding:7px 16px;border:1px solid var(--b);border-radius:20px;cursor:pointer;background:var(--w);transition:all .15s;font-family:'PT Sans',sans-serif}
.filter-btn:hover,.filter-btn.on{background:var(--r);color:#fff;border-color:var(--r)}

/* ── PSYCHOLOGIST CARDS ── */
.catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

.psycard{border:1px solid var(--b);border-radius:12px;overflow:hidden;transition:box-shadow .2s,transform .2s;background:var(--w);display:flex;flex-direction:column}
.psycard:hover{box-shadow:0 10px 32px rgba(0,0,0,.09);transform:translateY(-4px)}

.psycard-top{padding:24px 22px 20px;flex:1}
.psycard-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px}
.psy-av{width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'PT Serif',serif;font-size:26px;font-weight:700;color:#fff;flex-shrink:0;border:2px solid rgba(255,255,255,.3)}
.psy-info{}
.psy-name{font-family:'PT Serif',serif;font-size:17px;font-weight:700;line-height:1.2;margin-bottom:3px}
.psy-role{font-size:12px;font-weight:700;color:var(--r);text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
.psy-exp{font-size:12px;color:var(--lt);display:flex;align-items:center;gap:4px}
.psy-stars{color:#f5a623;font-size:12px;letter-spacing:1px}

.psy-spec{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}
.spec-pill{font-size:11px;color:var(--t);padding:3px 10px;background:var(--g);border-radius:10px}

.psy-bio{font-size:13px;color:var(--t);line-height:1.7;margin-bottom:16px}

.psy-methods{margin-bottom:0}
.psy-methods-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--lt);margin-bottom:6px}
.psy-method-list{display:flex;flex-wrap:wrap;gap:5px}
.psy-method{font-size:11px;color:var(--r);padding:2px 9px;border:1px solid #f0c8d0;border-radius:3px;background:var(--rp)}

.psycard-bottom{border-top:1px solid var(--b);padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.psy-price{display:flex;flex-direction:column}
.psy-price-num{font-family:'PT Sans',sans-serif;font-size:22px;font-weight:700;color:var(--k);font-variant-numeric:tabular-nums;line-height:1}
.psy-price-label{font-size:11px;color:var(--lt);margin-top:2px}
.psy-book-btn{background:var(--r);color:#fff;padding:10px 20px;font-size:14px;font-weight:700;border-radius:5px;border:none;cursor:pointer;transition:background .15s;font-family:'PT Sans',sans-serif;white-space:nowrap}
.psy-book-btn:hover{background:var(--rd)}

/* ── HOW IT WORKS ── */
.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.how-step{padding:22px 18px;background:var(--g);border-radius:8px;border-top:3px solid var(--r);position:relative}
.how-n{font-family:'PT Sans',sans-serif;font-size:32px;font-weight:700;color:rgba(192,54,78,.15);line-height:1;margin-bottom:10px;font-variant-numeric:tabular-nums}
.how-title{font-size:14px;font-weight:700;margin-bottom:6px}
.how-desc{font-size:13px;color:var(--t);line-height:1.65}

/* ── FAQ ── */
.faq-wrap{max-width:720px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--b)}
.faq-item:first-child{border-top:1px solid var(--b)}
.faq-q{width:100%;text-align:left;padding:16px 0;font-size:15px;font-weight:700;color:var(--k);background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;font-family:'PT Sans',sans-serif}
.faq-q:hover{color:var(--r)}
.faq-arr{font-size:18px;color:var(--lt);transition:transform .2s;flex-shrink:0}
.faq-item.open .faq-arr{transform:rotate(180deg)}
.faq-a{display:none;padding-bottom:16px;font-size:14px;color:var(--t);line-height:1.75}
.faq-item.open .faq-a{display:block}

/* ── BOTTOM CTA ── */
.bottom-cta{background:var(--k);margin-top:60px;padding:60px 24px;text-align:center;position:relative;overflow:hidden}
.bottom-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 50% 50%,rgba(192,54,78,.18) 0%,transparent 70%);pointer-events:none}
.bottom-cta-inner{max-width:560px;margin:0 auto;position:relative;z-index:1}
.bottom-cta h2{font-family:'PT Serif',serif;font-size:36px;font-weight:700;color:#fff;line-height:1.15;margin-bottom:10px}
.bottom-cta h2 em{font-style:italic;color:#e8899a}
.bottom-cta p{font-size:15px;color:rgba(255,255,255,.45);line-height:1.7;margin-bottom:28px}
.bottom-cta-btn{display:inline-flex;align-items:center;gap:10px;background:var(--r);color:#fff;padding:15px 34px;font-size:16px;font-weight:700;border-radius:6px;transition:background .15s,transform .1s;box-shadow:0 6px 24px rgba(192,54,78,.35)}
.bottom-cta-btn:hover{background:var(--rd);transform:translateY(-2px)}
.bottom-cta-note{font-size:13px;color:rgba(255,255,255,.25);margin-top:12px}

/* BOOKING MODAL */
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:500;align-items:center;justify-content:center;padding:20px}
.modal-overlay.open{display:flex}
.modal{background:var(--w);border-radius:12px;width:100%;max-width:480px;overflow:hidden;animation:slideUp .25s ease}
@keyframes slideUp{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
.modal-head{background:var(--k);padding:22px 24px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;position:relative}
.modal-head::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 100% at 100% 100%,rgba(192,54,78,.25) 0%,transparent 70%);pointer-events:none}
.modal-title{font-family:'PT Serif',serif;font-size:20px;font-weight:700;color:#fff;position:relative;z-index:1}
.modal-subtitle{font-size:13px;color:rgba(255,255,255,.45);margin-top:3px;position:relative;z-index:1}
.modal-close{background:rgba(255,255,255,.1);border:none;color:#fff;width:32px;height:32px;border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;transition:background .15s}
.modal-close:hover{background:rgba(255,255,255,.2)}
.modal-body{padding:24px}
.modal-psy{display:flex;align-items:center;gap:12px;padding:14px;background:var(--g);border-radius:8px;margin-bottom:20px}
.modal-psy-av{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'PT Serif',serif;font-size:18px;font-weight:700;color:#fff;flex-shrink:0}
.modal-psy-name{font-size:15px;font-weight:700}
.modal-psy-role{font-size:12px;color:var(--lt)}
.modal-psy-price{margin-left:auto;font-family:'PT Sans',sans-serif;font-size:18px;font-weight:700;color:var(--k);font-variant-numeric:tabular-nums;white-space:nowrap}
.form-row{margin-bottom:14px}
.form-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--lt);margin-bottom:5px;display:block}
.form-input{width:100%;border:1px solid var(--b);border-radius:5px;padding:10px 13px;font-size:14px;font-family:'PT Sans',sans-serif;outline:none;transition:border-color .15s;background:var(--w)}
.form-input:focus{border-color:var(--r)}
.form-select{width:100%;border:1px solid var(--b);border-radius:5px;padding:10px 13px;font-size:14px;font-family:'PT Sans',sans-serif;outline:none;background:var(--w);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23aaa' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.form-select:focus{border-color:var(--r);outline:none}
.form-submit{display:block;width:100%;background:var(--r);color:#fff;border:none;padding:13px;font-size:15px;font-weight:700;border-radius:5px;cursor:pointer;font-family:'PT Sans',sans-serif;transition:background .15s;margin-top:4px}
.form-submit:hover{background:var(--rd)}
.form-note{font-size:11px;color:var(--lt);text-align:center;margin-top:8px;line-height:1.5}
.form-success{display:none;text-align:center;padding:16px 0 4px}
.form-success-icon{font-size:48px;margin-bottom:10px}
.form-success h3{font-family:'PT Serif',serif;font-size:20px;font-weight:700;margin-bottom:8px}
.form-success p{font-size:14px;color:var(--t);line-height:1.7}

/* FOOTER */
footer { background: var(--k); }
.footer-inner { max-width: var(--mx); margin: 0 auto; padding: 40px 24px 28px; }
.footer-top { display: grid; grid-template-columns: 240px 1fr; gap: 48px; margin-bottom: 32px; }
.f-logo { font-family: 'PT Serif', serif; font-size: 26px; font-weight: 900; color: #fff; display: block; margin-bottom: 10px; }
.f-logo-dot { color: var(--r); }
.f-desc { font-size: 14px; color: #888; line-height: 1.7; }
.f-nav { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.f-nav-col h4 { font-size: 11px; font-weight: 700; color: #fff; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 12px; }
.f-nav-col a { display: block; font-size: 14px; color: #999; padding: 3px 0; transition: color .12s; }
.f-nav-col a:hover { color: #fff; }
.footer-disclaimer { border-top: 1px solid #2a2a2a; padding: 20px 0; margin-bottom: 20px; display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.footer-disclaimer p { font-size: 12px; color: #666; line-height: 1.75; }
.footer-disclaimer strong { color: #999; }
.footer-bottom { border-top: 1px solid #2a2a2a; padding-top: 18px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.footer-bottom p { font-size: 13px; color: #555; }
.footer-bottom-links { display: flex; flex-wrap: wrap; gap: 16px; }
.footer-bottom-links a { font-size: 13px; color: #555; transition: color .12s; }
.footer-bottom-links a:hover { color: #aaa; }

@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr}
  .hero-card{display:none}
  .catalog{grid-template-columns:1fr 1fr}
  .how-grid{grid-template-columns:1fr 1fr}
  .numbers-inner{grid-template-columns:1fr 1fr}
  .footer-top{grid-template-columns:1fr}
  .footer-disclaimer{grid-template-columns:1fr}
}
@media(max-width:600px){
  .catalog{grid-template-columns:1fr}
  .how-grid{grid-template-columns:1fr}
  .filter-bar{gap:6px}
}
