/* katiatandon.com — premium layer (v38)
   Loaded AFTER each page's inline <style>. Visual layer only: no content, URLs or schema.
   Linked on: homepage, FAQ (en/ru/cs), existential therapy (en/ru/cs).
   NOTE: _headers caches *.css as immutable for a year. To change this file, rename it
   (premium.v39.css, ...) and update the <link> on those pages. */

:root{
  --ink:#1a1a1a;
  --ink-soft:#3f3f3f;
  --ink-muted:#6b6862;
  --bg:#faf8f4;
  --bg-alt:#f3eee5;
  --bg-warm:#f3eee5;
  --border:#e4ddd0;
  --gold:#7c6438;
  --gold-light:#a98550;
  --radius-card:22px;
  --radius-pill:999px;
  --section-y:clamp(5.5rem,11vw,9.5rem);
  --gutter:clamp(1.5rem,5vw,3rem);
}

html{-webkit-text-size-adjust:100%}
body{
  background:var(--bg);
  font-size:1.0625rem;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}

/* ---------- Eyebrows: quiet sentence-case notes, not tracked caps ---------- */
.eyebrow,.hero-eyebrow,.c-eyebrow,.t-label,.about-eyebrow,.biz-eyebrow,.problem-tag{
  text-transform:none;
  letter-spacing:.01em;
  font-size:.95rem;
  font-weight:500;
  margin-bottom:1.1rem;
}
.hero-eyebrow::before,.hero-eyebrow::after{display:none}
.hero-eyebrow{gap:0}

/* ---------- Headings ---------- */
h2,.about-h,.c-h,.cta-band h2,.biz-h{
  font-weight:400;
  letter-spacing:-.012em;
  line-height:1.1;
}
h2{
  font-size:clamp(2.2rem,4.6vw,3.6rem);
  margin-bottom:clamp(2.5rem,5vw,4rem);
  max-width:20ch;
}
.about-h,.c-h{font-size:clamp(2.2rem,4.6vw,3.4rem)}
h3{letter-spacing:-.005em}

/* ---------- Section rhythm ---------- */
.section{padding:var(--section-y) var(--gutter)}
.section-inner{max-width:1040px}
.testimonials{padding:var(--section-y) var(--gutter)}
.contact-strip{padding:var(--section-y) var(--gutter)}
.coverage{padding:var(--section-y) var(--gutter)}
.choose{padding:0 var(--gutter) var(--section-y)}
.about-strip{padding:var(--section-y) var(--gutter)}
.problem-bg,.quals-bg,.explain-bg{border-top:0;border-bottom:0}

/* Homepage only: centred section heads (the homepage nav is .top-nav) */
.top-nav ~ main .section-inner > .eyebrow,
.top-nav ~ main .section-inner > h2,
.top-nav ~ main .section-inner > .choose-intro{text-align:center}
.top-nav ~ main .section-inner > h2{margin-left:auto;margin-right:auto}

/* ---------- Buttons: pills, sentence case ---------- */
.btn-primary,.btn-secondary,.btn,.btn-ghost,.btn-gold,.btn-white,.btn-outline-white,
.form-btn,.biz-btn-en,.biz-btn-cs,.dual-cta-form button,.top-nav-link.cta,.gnav-link.cta{
  border-radius:var(--radius-pill);
  text-transform:none;
  letter-spacing:.005em;
  font-size:1rem;
  font-weight:500;
}
.btn-primary,.btn,.btn-gold,.form-btn{padding:.95rem 2.1rem}
.btn-secondary,.btn-ghost{padding:.95rem 2.1rem;background:transparent;border:1px solid var(--gold);color:var(--gold)}
.btn-secondary:hover,.btn-ghost:hover{background:var(--gold);color:#fff}
.btn-primary,.btn,.btn-gold,.form-btn{box-shadow:none}
.top-nav-link.cta,.gnav-link.cta{padding:.45rem 1.05rem;font-size:.85rem}
.top-nav-link,.gnav-link{border-radius:var(--radius-pill)}

:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}

/* ---------- Homepage hero ---------- */
.top-nav ~ main .hero{padding:clamp(8rem,16vh,11rem) var(--gutter) clamp(5rem,10vh,8rem)}
.top-nav ~ main .hero::before{background:radial-gradient(ellipse 70% 50% at 50% 0%,rgba(138,111,62,.06) 0%,transparent 70%)}
.hero-name{
  font-size:clamp(3.6rem,10vw,8rem);
  font-weight:300;
  letter-spacing:.015em;
  margin-bottom:1.25rem;
}
.hero-title{
  font-size:clamp(1.35rem,2.8vw,2rem);
  letter-spacing:.005em;
  margin-bottom:1.75rem;
  max-width:40ch;
}
.hero-lang-notice{
  border:0;background:none;padding:0;
  font-size:.95rem;color:var(--ink-muted);
  margin-bottom:0;
}
.hero-divider{display:none}
.hero-intro{
  max-width:36rem;
  font-size:1.2rem;
  line-height:1.75;
  margin:clamp(3rem,6vw,4.5rem) auto clamp(3rem,6vw,4.5rem);
}
.hero-stats{gap:clamp(2rem,6vw,4.5rem);margin-bottom:clamp(3rem,6vw,4.5rem)}
.stat-n{font-size:2.4rem;font-weight:400;color:var(--ink)}
.stat-l{text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:400;display:block;margin-top:.4rem}
.hero-cta-group{gap:.9rem;margin-bottom:1.5rem}
.hero-note{font-size:.9rem}

/* ---------- Open layouts: homepage problems / solutions (no boxes, no emoji, no fake numbering) ---------- */
.problems-grid,.solutions-grid{
  gap:clamp(2.5rem,4vw,3.5rem) clamp(2rem,5vw,4.5rem);
  margin-bottom:0;
}
.prob,.sol{
  background:none;border:0;border-radius:0;padding:0;overflow:visible;
}
.prob::after{display:none}
.prob-icon,.sol-n{display:none}
.prob h3,.sol h3{
  font-family:'Cormorant Garamond',serif;
  font-size:1.6rem;font-weight:500;line-height:1.2;
  margin-bottom:.6rem;
}
.prob p,.sol p{font-size:1.02rem;line-height:1.7}
.problem-bg{background:var(--bg-alt)}

/* ---------- Qualifications: typographic grid, no emoji tiles ---------- */
.qual-item div[style*="height:52px"]{display:none!important}
.qual-item a[style*="flex-direction:column"]{align-items:center}
.quals-grid{grid-template-columns:repeat(3,1fr)!important;gap:clamp(2rem,4vw,3.25rem) clamp(1.5rem,3vw,2.5rem)}
.qual-item{background:none;border:0;border-radius:0;padding:0;text-align:left}
.qual-icon{display:none}
.qual-title{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:500;line-height:1.25;margin-bottom:.35rem}
.qual-sub{font-size:.95rem;line-height:1.55}
.qual-item a[style*="flex-direction:column"]{align-items:flex-start!important}

/* ---------- Cards that stay cards: soft, large radius, no borders ---------- */
.market-card,.t-card,.explain-card,.hero-panel,.testimonial,.dual-cta-grid,.byline,.byline-bottom,.byline-top{
  border-radius:var(--radius-card);
}
.markets{
  gap:1.25rem;background:none;border:0;max-width:1100px;
}
.market-card{
  border:0;border-radius:var(--radius-card);
  padding:clamp(2rem,3vw,2.75rem);
  box-shadow:0 0 0 1px rgba(26,26,26,.04);
}
.market-card::after{display:none}
.market-card:hover{background:#fff;box-shadow:0 10px 40px -18px rgba(26,26,26,.25)}
.market-lang,.market-cta{text-transform:none;letter-spacing:.01em;font-size:.9rem}
.market-name{font-size:1.65rem}
.market-desc{font-size:.98rem}
.market-tag{border-radius:var(--radius-pill);font-size:.78rem;padding:.25rem .75rem}
.t-grid{gap:1.25rem}
.t-card{border:0;padding:clamp(1.75rem,3vw,2.5rem);box-shadow:0 0 0 1px rgba(26,26,26,.04)}
.t-card::before{display:none}
.t-text{font-size:1rem;line-height:1.75}
.t-author{font-size:.9rem;letter-spacing:0}
.t-label{text-align:center}

/* ---------- About strip (dark) — the one confident block ---------- */
.about-strip-inner{gap:clamp(3rem,7vw,6rem);max-width:1040px}
.about-img{border:0;border-radius:var(--radius-card);overflow:hidden;background:none}
.about-img img{border-radius:var(--radius-card)}
.about-content p{font-size:1.05rem;line-height:1.8}
.cred-item{border-radius:var(--radius-pill);font-size:.85rem;padding:.4rem 1rem}

/* ---------- Homepage mid-page bands ---------- */
.biz-band{padding:clamp(3.5rem,7vw,5.5rem) var(--gutter)}
.biz-h{font-size:clamp(1.9rem,3.2vw,2.5rem)}
.biz-p{font-size:1rem}
.biz-band-ctas{flex-wrap:wrap}
.cta-band{
  background:var(--bg);
  padding:clamp(4rem,8vw,6.5rem) var(--gutter) 0;
}
.cta-band h2{
  color:var(--ink);
  max-width:18ch;margin:0 auto 1.25rem;
}
.cta-band p{color:var(--ink-soft);font-size:1.1rem;max-width:34rem}
.btn-white{background:var(--gold);color:#fff}
.btn-white:hover{background:var(--gold-light);opacity:1}
.btn-outline-white{border:1px solid var(--gold);color:var(--gold)}
.btn-outline-white:hover{background:var(--gold);color:#fff}

/* centred h2 inside centred bands */
.coverage h2,.cta-band h2{margin-left:auto;margin-right:auto}
.coverage h2{margin-bottom:1.5rem}

/* ---------- Contact form ---------- */
.contact-strip-inner{max-width:600px}
.c-sub{font-size:1.05rem}
.contact-strip input,.contact-strip textarea,.contact-strip select,
.dual-cta-form input,.dual-cta-form textarea{
  border-radius:14px;
  border:1px solid var(--border);
  background:#fff;
  padding:.95rem 1.1rem;
  font-size:1rem;
}
.contact-strip input:focus,.contact-strip textarea:focus,
.dual-cta-form input:focus,.dual-cta-form textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(124,100,56,.15)}

/* ---------- Footer ---------- */
footer{padding:3.5rem var(--gutter);font-size:.85rem}

/* ---------- FAQ: hairline accordion instead of stacked boxes ---------- */
.faq-item{
  background:none;border:0;border-radius:0;
  border-bottom:1px solid var(--border);
  margin-bottom:0;overflow:visible;
}
.faq-q{
  padding:1.5rem 0;
  font-family:'DM Sans',sans-serif;
  font-weight:500;font-size:1.12rem;line-height:1.4;
}
.faq-q::after{font-size:1.6rem;font-weight:300;color:var(--gold)}
.faq-a{padding:0;font-size:1.02rem;line-height:1.8;max-width:62ch;transition:max-height .35s ease,padding .35s ease}
.faq-item.open .faq-a{padding:0 0 1.75rem;max-height:1600px}
.cat-heading{
  font-size:clamp(1.9rem,3.4vw,2.5rem);
  font-weight:400;letter-spacing:-.01em;line-height:1.15;
  color:var(--ink);
  border-top:0;
  margin:clamp(4.5rem,9vw,7rem) 0 .75rem;
  padding-top:0;
}
.cat-heading:first-of-type{margin-top:0}
.section .cat-heading + p{margin-bottom:1.5rem}
.byline{padding:2rem 2.25rem;border:0;background:var(--bg-alt);margin:clamp(4rem,8vw,6rem) 0 3rem}
.cta-box{border-radius:var(--radius-card);padding:clamp(2.5rem,5vw,4rem);margin-top:clamp(3rem,6vw,5rem)}
.cta-box h2{font-size:clamp(1.8rem,3vw,2.4rem);color:#fff;max-width:none}
.cta-box .btn-white{background:#fff;color:var(--gold)}
.cta-box .btn-white:hover{background:var(--gold-pale)}
.dual-cta{margin-top:clamp(3rem,6vw,5rem)}
.dual-cta-grid{overflow:hidden;border:0}
.dual-cta-email .btn-white{background:#fff;color:var(--gold)}

/* FAQ page: section is the question list itself, not a padded band */
.section:has(> .cat-heading){max-width:820px;margin:0 auto;padding:0 var(--gutter) clamp(4rem,8vw,6rem)}
/* FAQ + existential hero */
.gnav ~ .hero{padding-top:clamp(4.5rem,9vw,7.5rem)}
.hero-sub{margin-bottom:0}
.gnav ~ .hero:has(.hero-sub){padding-bottom:clamp(3.5rem,7vw,6rem)}
.hero-sub{font-size:1.12rem;line-height:1.75;max-width:34rem;margin:0 auto}
h1{font-weight:500;letter-spacing:-.015em;line-height:1.1}
h1:has(+ .hero-sub){font-weight:400;font-size:clamp(2.6rem,6vw,4.5rem);margin-bottom:1.5rem}

/* ---------- Existential therapy page ---------- */
.hero-panel{border:0;padding:clamp(2rem,3.5vw,3rem);box-shadow:0 0 0 1px rgba(26,26,26,.04),0 24px 60px -34px rgba(26,26,26,.3)}
.hero-panel::before{display:none}
.hero-panel h3{font-size:1.6rem;font-weight:500}
.frankl-quote{font-size:1.35rem;border-left:0;padding-left:0}
.frankl-attr{padding-left:0}
.hero-lead{font-size:1.15rem;max-width:34rem}
.problem{
  background:none;border:0;border-radius:0;padding:0;overflow:visible;
}
.problem::after{display:none}
.problems{gap:clamp(2.5rem,4vw,3.5rem) clamp(2rem,5vw,4.5rem)}
.problem-tag{color:var(--gold)}
.problem h3{font-family:'Cormorant Garamond',serif;font-size:1.65rem;font-weight:500;line-height:1.2;margin-bottom:.6rem}
.problem p{font-size:1.02rem}
.explain-bg{background:var(--bg-warm)}
.explain-grid{gap:1.25rem}
.explain-card{border:0;padding:clamp(2rem,3.5vw,3rem);box-shadow:0 0 0 1px rgba(26,26,26,.04)}
.explain-card h3{font-size:1.8rem;font-weight:500}
.explain-card p{font-size:1.02rem}
.method-tag{border-radius:var(--radius-pill);border:1px solid var(--border);background:transparent;font-size:.85rem;padding:.35rem .9rem}
.solutions{gap:clamp(2.5rem,4vw,3.5rem) clamp(2rem,5vw,4.5rem)}
.testimonial{border:0;box-shadow:0 0 0 1px rgba(26,26,26,.04)}
.testimonial::before{display:none}
.testimonial p,.testimonial cite{padding-left:0}
.about-layout{gap:clamp(3rem,7vw,6rem)}
.about-img-box{border:0;border-radius:var(--radius-card);overflow:hidden}
.about-text p{font-size:1.05rem}
.creds li{font-size:.98rem}
.contact-bg label{text-transform:none;letter-spacing:.005em;font-size:.9rem}
.contact-bg input,.contact-bg textarea,.contact-bg select{border-radius:14px}
.onsite-note{border-radius:16px}

/* ---------- Blog-style byline blocks reused on these pages ---------- */
.byline-bottom,.byline-top{border-radius:var(--radius-card)}

/* ---------- Mobile ---------- */
@media(max-width:900px){
  .quals-grid{grid-template-columns:repeat(2,1fr)!important}
  .hero-name{letter-spacing:.01em}
  h2{max-width:none}
}
@media(max-width:700px){
  /* Homepage nav: logo + language on row one, links scroll on row two (was overflowing at 390px) */
  .top-nav{flex-wrap:wrap;height:auto;padding:.55rem 1rem .4rem;row-gap:.1rem}
  .top-nav-right{display:contents}
  .nav-logo{order:1}
  .lang-switcher{order:2;margin-left:auto}
  .top-nav-links{order:3;flex:0 0 100%;display:flex;overflow-x:auto;scrollbar-width:none;gap:.1rem;margin:0 -.25rem}
  .top-nav-links::-webkit-scrollbar{display:none}
  .top-nav-link{font-size:.82rem;padding:.4rem .7rem;flex-shrink:0}
  .top-nav-link.cta{margin-left:.2rem}
  .top-nav ~ main .hero{padding-top:9rem}
  .hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:2rem 1rem}
  .biz-band-inner{flex-wrap:nowrap;align-items:stretch;gap:2rem}
  .biz-band-inner>div{min-width:0;max-width:100%}
  .biz-band-ctas{flex-direction:column;width:100%}
  .biz-btn-en,.biz-btn-cs{white-space:normal}
  .faq-q{font-size:1.05rem}
  .dual-cta-grid{border-radius:var(--radius-card)}
}
@media(min-width:701px){
  .top-nav-links{display:contents}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;scroll-behavior:auto!important}
}
