/* ===== Chaitanya Healing – responsive layer (loaded last on every public page) =====
   The page stylesheets are scaled from a 1536px design with --u. Below 1000px --u is raised so text stays readable,
   then the specific components below are re-flowed for tablets and phones. */
html{overflow-x:clip}
img,video,svg,canvas{max-width:100%}
.nav,.hero,.section,.footer{max-width:100vw}

@media(max-width:1000px){
  :root{--u:1.3px}
  [data-page=psychotherapy],[data-page=book],[data-page=blog],[data-page=workshop],[data-page=courses]{--u:1.45px}
  /* header: keep the logo and burger tappable */
  .nav{padding:8px 4vw}
  .burger{min-width:44px;min-height:44px}
  .nav nav a{padding:12px 4px;font-size:14px}
  /* hero blocks: readable text over photos */
  .hero{background:#0f2d22}
  .hero>.bg-img{opacity:.55}
  .hero .hero-text{position:relative}
  /* home */
  .hero-icons{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 8px;margin-top:26px;font-size:12px}
  .founder{grid-template-columns:1fr}
  .founder-img{aspect-ratio:4/3;max-height:380px}
  .founder-text{padding:24px 6vw 0}
  .founder blockquote{border-left:0;border-top:1px solid #d8d2bd;margin:0 6vw 28px;padding:22px 0 0;font-size:20px}
}
@media(max-width:700px){
  :root{--u:1.4px}
  [data-page=psychotherapy],[data-page=book],[data-page=blog],[data-page=workshop],[data-page=courses]{--u:1.6px}
  body{font-size:15px}
  .section{padding:44px 5vw}
  h2{font-size:30px}
  .btn{padding:13px 24px;font-size:14px;min-height:44px}
  .btn.small{padding:10px 18px;font-size:13px}
  .btn-row{gap:10px}
  .btn-row .btn{flex:1 1 auto;text-align:center}
  .hero-icons{grid-template-columns:repeat(3,1fr);font-size:12px}
  .hero-icons i{font-size:24px}
  /* card grids */
  .cols-6{grid-template-columns:repeat(2,1fr);gap:12px}
  .cols-4{grid-template-columns:1fr 1fr;gap:12px}
  .cols-3{grid-template-columns:1fr}
  .card h3{font-size:19px}
  .card p{font-size:13px}
  .card-body>a:not(.btn){font-size:13px}
  .course h3{font-size:17px;overflow-wrap:anywhere}
  .course .card-body{padding:12px 12px 14px}
  .course .btn{padding:11px 10px;font-size:13px;border-radius:30px;line-height:1.2}
  .cols-4 .card:not(.course) .card-body{padding-left:14px}
  .cols-4 .card:not(.course) .card-body i{position:static;display:block;margin-bottom:6px}
  .card h3,.card p{overflow-wrap:anywhere}
  .stats{grid-template-columns:1fr 1fr;padding:24px 4vw}
  .stats div{border-right:0}
  .stats b,.stats i{font-size:30px}
  .stats span{font-size:13px;margin-top:-6px}
  .t-body blockquote{font-size:18px}
  .t-meta{flex-wrap:wrap}
  .t-meta em{white-space:normal;font-size:12px}
  .view-all{font-size:13px}
  /* footer */
  .footer{padding:32px 6vw 0;font-size:14px;gap:22px}
  .footer p{font-size:14px}
  .footer h5{font-size:15px;margin-bottom:8px}
  .footer .copy{font-size:12.5px}
  .footer a{display:inline-block;padding:3px 0}
}
@media(max-width:380px){
  .cols-6,.cols-4{grid-template-columns:1fr 1fr}
  .hero-icons{grid-template-columns:repeat(2,1fr)}
}

/* ---- overflow fixes found in the audit ---- */
@media(max-width:1000px){
  .s-strip ul,.c-strip ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .s-strip li,.c-strip li,.w-strip li{min-width:0;white-space:normal;justify-content:flex-start}
  .w-strip{height:auto}.w-strip ul{margin:0 5vw;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.w-strip li{border-right:0;font-size:calc(8.4 * var(--u,1px))}
  .w-tf>*,.w-tf .wt,.wt-wrap{min-width:0;max-width:100%}
  .wt-track figure{flex:0 0 min(78vw,300px)}
  .gl,.wt-track{max-width:100%}
  .k-wrap>*,.k-left,.k-right,.k-svc>*{min-width:0}
  .svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}
  .svc{min-width:0}.svc .sb{height:auto;min-height:calc(70 * var(--u,1px));padding-bottom:calc(30 * var(--u,1px))}
  .k-right{margin-left:5vw;margin-right:5vw}
}
@media(max-width:520px){
  .svc-grid{grid-template-columns:1fr!important}
  .steps,.p-strip,.psteps{grid-template-columns:1fr}
}
@media(max-width:700px){
  .modes{grid-template-columns:1fr}
  .mode{white-space:normal;height:auto;min-height:calc(49 * var(--u,1px));padding-top:8px;padding-bottom:8px}
  .sel{flex-wrap:wrap}.sel div{min-width:0}
}
@media(max-width:1000px){
  .accred{flex-direction:column;align-items:stretch;gap:18px}
  .accred-title{max-width:none;border:0;padding:0}
  .accred-title h4{font-size:15px}.accred-title p{font-size:13px}
  .accred .badge{display:flex;align-items:center;gap:12px;font-size:13px;text-align:left}
  .accred .badge i{font-size:26px;flex:0 0 34px;text-align:center}
  .cta-icons{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 10px;font-size:12px}
  .copy{flex-direction:column;gap:6px}
}
@media(min-width:560px) and (max-width:1000px){.accred{display:grid;grid-template-columns:repeat(2,1fr)}.accred-title{grid-column:1/-1}}
@media(min-width:701px) and (max-width:1000px){.cta-icons{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1000px){
  .leaf{display:none}
  .cx-card blockquote,.t-card blockquote{font-size:15.5px;line-height:1.5}
}
