/**
 * City pages (templates/single-slt-city-v2.php), 29 Sep 2026. SEND / homepage design language, self-contained.
 * Buttons are scoped with two classes: Elementor's kit styles every <button> and a lone class loses to it.
 */
.cp-page{color:#384048;font-size:17px;background:#fff}
.cp-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.cp-center{text-align:center}
.cp-h2{font:700 28px/1.25 'Heebo',sans-serif;color:#00070e;margin:0 0 12px;text-align:center}
.cp-h3{font:700 21px/1.3 'Heebo',sans-serif;color:#00070e;margin:0 0 8px}
.cp-sub{text-align:center;font-size:15.5px;line-height:1.55;color:#5b6876;margin:0 auto 34px;max-width:620px}
.cp-page p{font-family:inherit}

/* Buttons */
.cp-page .cp-btn{display:inline-flex;align-items:center;justify-content:center;background:#0d7d3f;color:#fff;font:500 12px 'Heebo',sans-serif;letter-spacing:.125em;text-transform:uppercase;text-decoration:none;padding:14px 30px;border-radius:4px;transition:background .2s ease}
.cp-page .cp-btn:hover{background:#109e50;color:#fff}

/* Hero */
.cp-hero{background:linear-gradient(135deg,#0b2f52 0%,#124a80 62%,#1578cc 130%);color:#fff;padding:72px 0 70px;position:relative;overflow:hidden}
.cp-hero__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}
.cp-hero__h1{font:700 40px/1.12 'Heebo',sans-serif;color:#fff;margin:0 0 22px}
.cp-hero__intro p{font-size:17px;line-height:1.62;color:#dbe9f6;margin:0 0 16px}
.cp-search{margin-top:26px;max-width:520px}
.cp-page .cp-search__label{display:block;font:600 14px 'Heebo',sans-serif;color:#fff;margin:0 0 8px;letter-spacing:0;text-transform:none}
.cp-search__row{display:flex;gap:8px;background:#fff;border-radius:10px;padding:6px;box-shadow:0 12px 30px rgba(2,12,22,.25)}
.cp-page .cp-search__input{flex:1 1 auto;min-width:0;border:0;outline:0;background:transparent;font:400 16px 'Heebo',sans-serif;color:#00070e;padding:10px 12px;height:auto;margin:0;box-shadow:none}
.cp-page .cp-search__input:focus-visible{outline:2px solid #1578cc;outline-offset:2px;border-radius:6px}
.cp-page .cp-search__btn{flex:0 0 auto;background:#0d7d3f;color:#fff;border:0;border-radius:7px;font:500 12px 'Heebo',sans-serif;letter-spacing:.125em;text-transform:uppercase;padding:0 24px;min-height:44px;cursor:pointer;transition:background .2s ease}
.cp-page .cp-search__btn:hover{background:#109e50}
.cp-search__alt{display:inline-block;margin-top:14px;color:#cfe4f7;font-size:15px;text-decoration:underline;text-underline-offset:3px}
.cp-search__alt:hover{color:#fff}
.cp-search__alt svg,.cp-age__link svg{width:15px;height:15px;vertical-align:-2px;margin-left:4px}
.cp-trust{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px}
.cp-trust li{display:inline-flex;align-items:center;gap:7px;margin:0;padding:0;font:500 14px 'Heebo',sans-serif;color:#dbe9f6}
.cp-trust li::before{display:none}
.cp-trust svg{width:15px;height:15px;color:#7fd8a6;flex:0 0 auto}
.cp-hero__media{position:relative;min-width:0}
.cp-hero__accent{position:absolute;inset:0;transform:translate(20px,20px);border-radius:34px 34px 8px 34px;background:linear-gradient(135deg,rgba(21,120,204,.45),rgba(13,125,63,.38));z-index:0}
.cp-hero__dots{position:absolute;top:-22px;left:-24px;width:96px;height:96px;z-index:0;opacity:.5;background-image:radial-gradient(rgba(255,255,255,.7) 2px,transparent 2px);background-size:14px 14px}
.cp-hero__img{display:block;width:100%;height:auto;max-height:430px;object-fit:cover;border-radius:28px 28px 4px 28px;border:4px solid #fff;box-shadow:0 20px 50px rgba(2,12,22,.4);position:relative;z-index:1}
.cp-hero__pill{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;background:#fff;color:#0b2f52;font:600 13.5px 'Heebo',sans-serif;padding:9px 15px;border-radius:999px;box-shadow:0 8px 22px rgba(4,26,46,.18);white-space:nowrap}
.cp-hero__pill i{width:9px;height:9px;border-radius:50%;flex:0 0 auto}
.cp-hero__pill--a{top:26px;left:-30px;animation:cp-float 6s ease-in-out infinite}
.cp-hero__pill--a i{background:#0d7d3f}
.cp-hero__pill--b{top:46%;right:-34px;animation:cp-float 7s .5s ease-in-out infinite}
.cp-hero__pill--b i{background:#1578cc}
.cp-hero__pill--c{bottom:-16px;left:34%;animation:cp-float 6.6s .9s ease-in-out infinite}
.cp-hero__pill--c i{background:#e8a33d}
@keyframes cp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (prefers-reduced-motion:reduce){.cp-hero__pill{animation:none!important}}

/* Stats strip (homepage) */
.cp-stats{padding:46px 0;border-bottom:1px solid #e8ebef}
.cp-stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.cp-stat{text-align:center}
.cp-stat__value{display:block;font:700 42px/1.1 'Heebo',sans-serif;color:#00070e}
.cp-stat__label{display:block;margin:6px auto 0;font-size:14px;line-height:1.4;color:#505c66;max-width:200px}

/* Therapist cards */
.cp-list{padding:68px 0 72px;background:#f4f9fd}
.cp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cp-card{display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid #e3ebf2;border-radius:16px;padding:22px 22px 20px;box-shadow:0 4px 14px rgba(4,26,46,.06);transition:box-shadow .2s ease,transform .2s ease}
.cp-card:hover{box-shadow:0 14px 30px rgba(4,26,46,.12);transform:translateY(-3px)}
.cp-card__top{display:flex;align-items:center;gap:14px}
.cp-card__photo{flex:0 0 64px;width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid #e8f2fb}
.cp-card__photo--initials{display:flex;align-items:center;justify-content:center;font:700 20px 'Heebo',sans-serif;border:0}
.cp-card__who{min-width:0}
.cp-page .cp-card__name{font:700 17.5px/1.3 'Heebo',sans-serif;margin:0 0 6px;color:#00070e}
.cp-card__name a{color:#00070e;text-decoration:none}
.cp-card__name a:hover{color:#1578cc}
.cp-pill{display:inline-flex;align-items:center;gap:6px;font:600 12.5px 'Heebo',sans-serif;padding:4px 10px;border-radius:999px}
.cp-pill i{width:7px;height:7px;border-radius:50%}
.cp-pill--available{background:#E1F5EE;color:#0F6E56}.cp-pill--available i{background:#1D9E75}
.cp-pill--waitlist{background:#FFF3E0;color:#B24A00}.cp-pill--waitlist i{background:#F57C00}
.cp-pill--full{background:#FCE4EC;color:#B71C1C}.cp-pill--full i{background:#E53935}
.cp-page .cp-card__place,.cp-page .cp-card__ages{display:flex;align-items:flex-start;gap:8px;margin:0;font-size:14.5px;line-height:1.45;color:#384048}
.cp-card__place svg,.cp-card__ages svg{flex:0 0 16px;width:16px;height:16px;margin-top:2px;color:#1578cc}
.cp-card__miles{color:#6b7885}
.cp-page .cp-card__intro{margin:0;font-size:14.5px;line-height:1.55;color:#5b6876}
.cp-page .cp-card__btn{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;font:600 14px 'Heebo',sans-serif;color:#1578cc;text-decoration:none;border:1.5px solid #cfe1f3;border-radius:8px;padding:9px 16px;transition:background .2s ease,border-color .2s ease}
.cp-page .cp-card__btn:hover{background:#eaf3fc;border-color:#1578cc}
.cp-more{text-align:center;margin-top:34px}

/* Chips (linked) */
.cp-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.cp-chips--center{justify-content:center;max-width:980px;margin:0 auto}
.cp-chips li{margin:0;padding:0}
.cp-chips li::before{display:none}
.cp-page .cp-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #cfe1f3;color:#0b2f52;font:500 14px 'Heebo',sans-serif;padding:7px 14px;border-radius:999px;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease}
.cp-page .cp-chip:hover{background:#eaf3fc;border-color:#1578cc;color:#1578cc}
.cp-chip span{background:#eaf3fc;color:#1578cc;font-weight:700;font-size:12.5px;padding:1px 8px;border-radius:999px}

/* Support for children and adults */
.cp-help{padding:68px 0 72px;background:#fff}
.cp-ages{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:980px;margin:0 auto 46px}
.cp-page .cp-age{display:flex;gap:16px;align-items:flex-start;background:#f4f9fd;border:1px solid #e3ebf2;border-radius:16px;padding:24px;text-decoration:none;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}
.cp-page .cp-age:hover{box-shadow:0 14px 30px rgba(4,26,46,.10);transform:translateY(-3px);border-color:#cfe1f3}
.cp-age__icon{flex:0 0 46px;width:46px;height:46px;border-radius:12px;background:#1578cc;color:#fff;display:flex;align-items:center;justify-content:center}
.cp-age__icon svg{width:24px;height:24px}
.cp-age__body{display:flex;flex-direction:column;gap:6px}
.cp-age__title{font:700 18px 'Heebo',sans-serif;color:#00070e}
.cp-age__text{font-size:15px;line-height:1.55;color:#5b6876}
.cp-age__link{display:block;margin-top:4px;font:700 14.5px 'Heebo',sans-serif;color:#1578cc}
.cp-help .cp-h3{margin-bottom:16px}

/* How it works */
.cp-steps{padding:64px 0;background:#f4f9fd}
.cp-steps__list{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;counter-reset:cp-step}
.cp-step{margin:0;background:#fff;border:1px solid #e3ebf2;border-radius:16px;padding:26px 24px}
.cp-step::before{display:none}
.cp-step__icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#e1f5ee;color:#0d7d3f;margin-bottom:14px}
.cp-step__icon svg{width:21px;height:21px}
.cp-page .cp-step h3{font:700 18px 'Heebo',sans-serif;color:#00070e;margin:0 0 8px}
.cp-page .cp-step p{font-size:15px;line-height:1.55;color:#5b6876;margin:0}

/* Areas covered */
.cp-areas{padding:64px 0;background:#fff}

/* FAQ - chat bubbles (SEND page) */
.cp-faq{padding:64px 0;background:#f4f9fd}
.cp-chat{display:flex;flex-direction:column;gap:14px;max-width:760px;margin:30px auto 0}
.cp-chat__q,.cp-chat__a{width:fit-content;max-width:82%;padding:14px 20px;font-size:15.5px;line-height:1.55}
.cp-chat__q{background:#eef2f6;color:#00070e;font:600 15.5px 'Heebo',sans-serif;border-radius:18px 18px 18px 4px;cursor:pointer;list-style:none;transition:background .2s ease}
.cp-chat__q::-webkit-details-marker{display:none}
.cp-chat__q::after{content:"+";margin-left:10px;color:#1578cc;font-weight:700}
.cp-chat__item[open] .cp-chat__q::after{content:"\2212"}
.cp-chat__q:hover{background:#e3eff9}
.cp-chat__a{background:#1578cc;color:#fff;border-radius:18px 18px 4px 18px;margin:14px 0 6px auto}
.cp-chat__item[open] .cp-chat__a{animation:cp-chat-in .25s ease}
.cp-page .cp-chat__a p{margin:0;font-size:15.5px;line-height:1.55;color:#fff}
@keyframes cp-chat-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* Other cities */
.cp-cities{padding:56px 0;background:#fff}
.cp-cities__list{list-style:none;margin:18px auto 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:900px}
.cp-cities__list li{margin:0;padding:0}
.cp-cities__list li::before{display:none}
.cp-cities__list a{display:inline-block;padding:8px 16px;border:1.5px solid #cfe1f3;border-radius:999px;color:#0b2f52;font:500 14.5px 'Heebo',sans-serif;text-decoration:none;transition:background .2s ease,border-color .2s ease}
.cp-page .cp-cities__all{margin:20px 0 0;font-size:15px}
.cp-cities__all a{color:#1578cc;font-weight:600}
.cp-cities__list a:hover{background:#eaf3fc;border-color:#1578cc;color:#1578cc}

/* A to Z index (templates/area-index.php) */
.cp-hero--plain{padding:64px 0 60px}
.cp-hero--plain .cp-hero__intro{max-width:720px}
.cp-index{padding:56px 0 72px;background:#fff}
.cp-index__letters{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin:0 0 36px}
.cp-page .cp-index__letters a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 8px;border:1.5px solid #cfe1f3;border-radius:8px;color:#0b2f52;font:600 15px 'Heebo',sans-serif;text-decoration:none}
.cp-page .cp-index__letters a:hover{background:#eaf3fc;border-color:#1578cc;color:#1578cc}
.cp-index__groups{columns:3 280px;column-gap:40px}
.cp-index__group{break-inside:avoid;margin:0 0 26px;scroll-margin-top:110px}
.cp-page .cp-index__letter{font:700 22px 'Heebo',sans-serif;color:#1578cc;margin:0 0 8px;padding-bottom:6px;border-bottom:1px solid #e3ebf2}
.cp-index__group ul{list-style:none;margin:0;padding:0}
.cp-index__group li{margin:0;padding:5px 0}
.cp-index__group li::before{display:none}
.cp-index__group a{color:#0b2f52;font-size:15.5px;text-decoration:none}
.cp-index__group a:hover{color:#1578cc;text-decoration:underline}
.cp-index__more{margin-top:30px}
.cp-index__more a{color:#1578cc;font-weight:600}

/* Final CTA (SEND page) */
.cp-final{padding:88px 0 96px;background:linear-gradient(180deg,rgba(6,32,56,.80) 0%,rgba(6,32,56,.64) 100%),url('https://asltip.com/wp-content/uploads/01-0-16-1536x1024.jpg') center / cover no-repeat}
.cp-final__h2{font:700 30px 'Heebo',sans-serif;color:#fff;margin:0 0 10px}
.cp-page .cp-final__sub{font-size:17px;line-height:1.55;color:#dbe9f6;margin:0 auto;max-width:560px}
.cp-final__cta{margin-top:26px}

@media (max-width:1024px){
  .cp-grid{grid-template-columns:repeat(2,1fr)}
  .cp-stats__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .cp-hero{padding:56px 0 64px}
  .cp-hero__grid{grid-template-columns:1fr;gap:40px}
  .cp-hero__h1{font-size:31px}
  .cp-hero__media{max-width:460px;margin:0 auto;width:100%}
  .cp-hero__accent{transform:translate(12px,12px)}
  .cp-hero__pill--a{left:-8px}
  .cp-hero__pill--b{right:-8px}
  .cp-ages{grid-template-columns:1fr}
  .cp-steps__list{grid-template-columns:1fr;max-width:520px;margin-left:auto;margin-right:auto}
  .cp-chat__q,.cp-chat__a{max-width:92%}
  .cp-h2{font-size:25px}
  .cp-final__h2{font-size:26px}
}
@media (max-width:640px){
  .cp-grid{grid-template-columns:1fr}
  .cp-stats__grid{gap:24px 14px}
  .cp-stat__value{font-size:34px}
  .cp-hero__pill{font-size:12.5px;padding:8px 12px}
}
