/* ====================================================================
   SMOT PROJECT — overrides on top of pilates-boutique base
   Dark all-black with deep magenta / deep purple accents.
   Lu Bellotti — trauma-informed somatic coach (Rome).
   ==================================================================== */

:root{
  /* Override base palette → all-black + deep magenta-purple accents */
  --color-primary:#0A0A0C;
  --color-primary-2:#121214;
  --color-primary-3:#1B1B1E;

  --color-accent:#B5359C;        /* deep magenta */
  --color-accent-2:#D24FB8;      /* hover lighter magenta */

  --color-purple:#7B1FA2;        /* deep purple band */
  --color-purple-dark:#4A0E66;

  --color-bg:#0A0A0C;             /* studio (was light) → now dark */
  --color-bg-alt:#121214;

  --color-border-light:rgba(255,255,255,.12);
}

html, body{
  background:#0A0A0C !important;
  color:#fff;
}

/* All H tags pull magenta accent for ".accent" spans */
.accent{color:var(--color-accent) !important}
.eyebrow{color:var(--color-accent) !important}
.eyebrow.on-light{color:var(--color-accent) !important}
.eyebrow.on-dark{color:var(--color-accent) !important}

/* Body always shows white text now */
body{color:#fff;}

/* ----- NAV — keep dark, magenta hover ----- */
.nav{background:rgba(10,10,12,.85) !important;backdrop-filter:blur(10px)}
.nav-links a{color:#fff !important}
.nav-links a.active,
.nav-links a:hover{color:var(--color-accent) !important}
.nav-links a.active::after,
.nav-links a:hover::after{background:var(--color-accent) !important}
.nav-giris{color:#fff !important;border-color:rgba(255,255,255,.4) !important}
.nav-giris:hover{border-color:var(--color-accent) !important;color:var(--color-accent) !important}
.logo-mark,.logo-text{color:#fff !important}
.logo-subline{color:rgba(255,255,255,.55) !important}
body.light-nav .nav{background:rgba(10,10,12,.85) !important;border-bottom:1px solid rgba(255,255,255,.08) !important}
body.light-nav .logo-mark,
body.light-nav .logo-text,
body.light-nav .nav-links a,
body.light-nav .nav-giris{color:#fff !important}

/* Logo IMG support (hide text when image present) */
.logo-wrap [data-logo-image]{max-height:46px;width:auto;display:block}
.logo-wrap [data-logo-image][src=""],
.logo-wrap [data-logo-image]:not([src]){display:none !important}
.logo-wrap [data-logo-image]:not([src=""]) ~ .logo-text-group{display:none}
.logo-wrap [data-logo-image]:not([src=""]) ~ .logo-mark{display:none}
footer .logo-wrap [data-logo-image]{max-height:64px}

/* ----- BTN — gold ghost → magenta ghost ----- */
.btn-ghost:hover{border-color:var(--color-accent) !important;color:var(--color-accent) !important}
.btn-ghost.on-light{color:#fff;border-color:rgba(255,255,255,.5)}
.btn-ghost.on-light:hover{color:var(--color-accent);border-color:var(--color-accent);background:transparent}
.btn-solid{background:var(--color-accent) !important;color:#fff !important;border-color:var(--color-accent) !important}
.btn-solid:hover{background:var(--color-accent-2) !important;border-color:var(--color-accent-2) !important;color:#fff !important}

.link-underline{color:#fff !important;border-bottom-color:var(--color-accent) !important}
.link-underline:hover{color:var(--color-accent) !important}
.link-underline.on-light{color:#fff !important}
.link-underline.on-purple{color:#fff !important}

/* ----- HERO — slightly stronger overlay so workshop photo doesn't fight text ----- */
.hero-bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,10,12,.45) 0%,rgba(10,10,12,.3) 40%,rgba(10,10,12,.9) 100%);
}
.hero-content h1 .accent{color:var(--color-accent)}
.hero-logo-mark img{display:block;margin:0 auto 24px}

/* ----- SILHOUETTE — frame the portrait against black ----- */
.silhouette-section{background:#0A0A0C !important;padding:80px 0}
.silhouette-frame{max-width:780px;margin:0 auto;padding:0 24px;text-align:center}
.silhouette-frame img{
  width:100%;max-height:560px;object-fit:cover;
  border:1px solid rgba(255,255,255,.08);
  filter:grayscale(.15) contrast(1.04);
}
.silhouette-caption{
  margin-top:24px;
  font-family:var(--font-display);
  font-size:clamp(1.1rem,1.6vw,1.55rem);
  letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.75);
}

/* ----- STUDIO (light section) — turn dark ----- */
.studio-section,.studio-dark{
  background:#0A0A0C !important;color:#fff !important;
}
.studio-content p{color:rgba(255,255,255,.78) !important}
.studio-divider{background:var(--color-accent) !important;height:2px}
.studio-visual{position:relative}
.studio-visual img{filter:grayscale(.1) contrast(1.05)}
.studio-visual .caption{
  position:absolute;left:0;bottom:0;
  background:var(--color-accent);color:#fff;
  padding:10px 18px;font-family:var(--font-body);
  font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
}

/* ----- ONLINE — deep purple band ----- */
.online-section{
  background:linear-gradient(135deg,#4A0E66 0%,#7B1FA2 60%,#B5359C 100%) !important;
}
.online-section .eyebrow{color:rgba(255,255,255,.8) !important}

/* ----- PROGRAMS (sidebar tabs) — magenta active ----- */
.programs-section{background:#0A0A0C !important;color:#fff !important}
.programs-sidebar{border-right:1px solid rgba(255,255,255,.08)}
.programs-label{color:rgba(255,255,255,.55) !important}
.programs-list .program-item{
  color:rgba(255,255,255,.7) !important;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.programs-list .program-item.active,
.programs-list .program-item:hover{
  color:var(--color-accent) !important;
  border-bottom-color:var(--color-accent) !important;
}
.programs-ders-detayi{color:rgba(255,255,255,.4) !important}
.program-panel h2,
.program-panel p{color:#fff !important}
.program-panel p{color:rgba(255,255,255,.78) !important;font-size:1.02rem;line-height:1.75}
.program-panel-image img{border:1px solid rgba(255,255,255,.08)}

/* ----- SNAKE CTA SECTION ----- */
.snake-cta-section{
  position:relative;
  background:#0A0A0C;
  padding:140px 24px;
  overflow:hidden;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.snake-cta-band{
  background:radial-gradient(ellipse at center,rgba(181,53,156,.18) 0%,#0A0A0C 60%);
}
.snake-cta-inner{
  max-width:1080px;margin:0 auto;
  position:relative;text-align:center;
  display:flex;align-items:center;justify-content:center;gap:36px;
}
.snake-cta-content{position:relative;z-index:2;max-width:620px}
.snake-cta-content h2{color:#fff;font-size:clamp(2.4rem,5vw,4rem);margin-bottom:18px}
.snake-cta-content p{
  color:rgba(255,255,255,.85);
  font-size:1.15rem;line-height:1.7;
  margin-bottom:28px;font-style:italic;
}
.snake-cta-content .eyebrow{margin-bottom:14px}
.snake-deco{flex:0 0 auto;width:180px;opacity:.5;filter:hue-rotate(280deg) saturate(1.4) brightness(1.3)}
.snake-deco img{width:100%;height:auto;display:block}
.snake-deco-left img{transform:scaleX(-1)}
.snake-deco-bg-left,
.snake-deco-bg-right{
  position:absolute;width:520px;top:50%;opacity:.07;pointer-events:none;
  filter:invert(.4) hue-rotate(280deg) saturate(2.5);
}
.snake-deco-bg-left{left:-160px;transform:translateY(-50%) scaleX(-1)}
.snake-deco-bg-right{right:-160px;transform:translateY(-50%)}

@media(max-width:880px){
  .snake-cta-inner{flex-direction:column;gap:14px}
  .snake-deco{width:120px;opacity:.4}
  .snake-deco-bg-left,.snake-deco-bg-right{width:340px;opacity:.05}
  .snake-deco-bg-left{left:-100px}
  .snake-deco-bg-right{right:-100px}
}

/* ----- LIFESTYLE → WORKSHOPS GALLERY (dark, magenta hover) ----- */
.lifestyle-section{background:#0A0A0C !important;color:#fff !important}
.lifestyle-section .watermark,
.lifestyle-section[data-watermark]::before{
  color:transparent;-webkit-text-stroke-color:rgba(181,53,156,.18);
}
.lifestyle-head h2{color:#fff !important}
.lifestyle-head p{color:rgba(255,255,255,.7) !important}
.lifestyle-item{position:relative;overflow:hidden}
.lifestyle-item img{filter:grayscale(.12) contrast(1.05);transition:transform .5s ease,filter .5s ease}
.lifestyle-item:hover img{transform:scale(1.04);filter:none}
.lifestyle-item .caption{
  background:rgba(10,10,12,.85);color:#fff !important;
  border-top:2px solid var(--color-accent);
}
.lifestyle-cta{text-align:center;margin-top:48px}

/* ----- THREE C's ----- */
.three-c-section{
  background:#0A0A0C;padding:100px 24px;text-align:center;
}
.three-c-light{
  background:linear-gradient(180deg,#0A0A0C 0%,#15040F 100%);
}
.three-c-inner{max-width:1180px;margin:0 auto}
.three-c-inner > h2{color:#fff;margin-bottom:14px}
.three-c-lead,.three-c-inner > p{color:rgba(255,255,255,.7);max-width:640px;margin:0 auto 56px;font-size:1.1rem}
.three-c-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:28px;
  margin-top:42px;
}
.three-c-card{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  padding:42px 32px;
  text-align:center;
  transition:border-color .3s ease,background .3s ease,transform .3s ease;
}
.three-c-card:hover{
  border-color:var(--color-accent);
  background:rgba(181,53,156,.06);
  transform:translateY(-4px);
}
.three-c-icon{
  width:64px;height:64px;
  border:1px solid var(--color-accent);
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 22px;color:var(--color-accent);font-size:1.5rem;
  border-radius:50%;
}
.three-c-card h3{color:#fff;font-size:1.4rem;margin-bottom:12px;letter-spacing:.12em}
.three-c-card p{color:rgba(255,255,255,.72);line-height:1.7;font-size:.98rem}

/* ----- INSTAGRAM section (white bg in base) — invert to dark ----- */
.instagram-section{background:#0A0A0C !important;color:#fff !important}
.instagram-section .eyebrow.on-light{color:var(--color-accent) !important}
.instagram-head h2{color:#fff !important}
.instagram-handle{color:rgba(255,255,255,.7) !important}
.instagram-item{position:relative;overflow:hidden;display:block}
.instagram-item img{filter:grayscale(.05);transition:transform .4s ease,filter .4s ease}
.instagram-item:hover img{transform:scale(1.05);filter:none}
.instagram-item::after{
  content:"\f16d";font-family:"Font Awesome 6 Brands";
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:1.8rem;background:rgba(10,10,12,.55);opacity:0;
  transition:opacity .3s ease;
}
.instagram-item:hover::after{opacity:1}

/* ----- TESTIMONIAL CAROUSEL (multi, horizontal scroll) ----- */
.testimonial-section{
  background:#0A0A0C !important;
  padding:100px 0 80px;
  position:relative;
}
.testimonial-head{text-align:center;max-width:920px;margin:0 auto 56px;padding:0 24px}
.testimonial-head h2{color:#fff;margin-bottom:8px}
.testimonial-track{
  display:flex;gap:28px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  padding:18px 48px 36px;
  scroll-padding:48px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;scrollbar-color:var(--color-accent) #1b1b1e;
}
.testimonial-track::-webkit-scrollbar{height:8px}
.testimonial-track::-webkit-scrollbar-track{background:#1b1b1e}
.testimonial-track::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:4px}
.testimonial-card{
  flex:0 0 min(560px,86vw);
  scroll-snap-align:center;
  background:linear-gradient(160deg,rgba(181,53,156,.10),rgba(255,255,255,.02));
  border:1px solid rgba(181,53,156,.25);
  padding:42px 36px;
  position:relative;
  text-align:left;
}
.testimonial-card .testimonial-quote{
  color:var(--color-accent);font-size:2rem;margin-bottom:18px;display:block;
}
.testimonial-card p{
  color:rgba(255,255,255,.92);
  font-size:1.05rem;line-height:1.75;
  font-style:italic;margin-bottom:28px;
}
.testimonial-card .author{
  display:block;color:#fff;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;font-size:.85rem;
  margin-bottom:4px;
}
.testimonial-card .role{
  color:rgba(255,255,255,.55);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;
}
.testimonial-hint{
  text-align:center;color:rgba(255,255,255,.4);
  font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;margin-top:6px;
}

/* ----- CONTACT GRID — dark with magenta-hover ----- */
.contact-section{background:#0A0A0C !important;color:#fff !important}
.contact-head h2{color:#fff !important}
.contact-head p{color:rgba(255,255,255,.7) !important}
.contact-card{
  background:rgba(255,255,255,.03) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  color:#fff !important;
  transition:border-color .3s ease,background .3s ease,transform .3s ease;
}
.contact-card:hover{
  border-color:var(--color-accent) !important;
  background:rgba(181,53,156,.06) !important;
  transform:translateY(-4px);
}
.contact-card .c-ico i{color:var(--color-accent) !important}
.contact-card h3{color:#fff !important}
.contact-card .value{color:rgba(255,255,255,.85) !important}
.contact-card .sub{color:rgba(255,255,255,.5) !important}

/* ----- PAGE HERO (inner pages) — keep dark with subtle magenta ----- */
.page-hero{
  background:linear-gradient(180deg,#0A0A0C 0%,#15040F 100%);
  position:relative;overflow:hidden;
  padding:130px 0 90px;
}
.page-hero h1{color:#fff;font-size:clamp(2.4rem,5.5vw,4.6rem)}
.page-hero p{color:rgba(255,255,255,.78);font-size:1.1rem;max-width:680px;margin-top:16px}
.page-hero[data-watermark]::before{
  content:attr(data-watermark);
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  font-family:var(--font-display);
  font-size:clamp(7rem,18vw,20rem);font-weight:500;
  color:transparent;-webkit-text-stroke:1px rgba(181,53,156,.10);
  letter-spacing:.05em;text-transform:uppercase;
  pointer-events:none;line-height:.9;white-space:nowrap;
}
.page-hero-snake{padding:170px 0 130px}
.page-hero-snake .snake-deco-bg-left,
.page-hero-snake .snake-deco-bg-right{opacity:.06}
.workshops-page-hero{padding:0;height:480px;display:flex;align-items:flex-end}
.workshops-page-hero .container{position:relative;z-index:2;padding-bottom:60px}
.workshops-page-hero .page-hero-bg{
  position:absolute;inset:0;z-index:0;
}
.workshops-page-hero .page-hero-bg img{
  width:100%;height:100%;object-fit:cover;
  filter:grayscale(.2) contrast(1.05) brightness(.55);
}
.workshops-page-hero::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(10,10,12,.4) 0%,rgba(10,10,12,.85) 100%);
}

/* ----- SESSIONS PAGE — intro split ----- */
.sessions-intro-section{background:#0A0A0C;padding:100px 24px}
.sessions-intro-inner{max-width:1280px;margin:0 auto}
.sessions-intro-grid{
  display:grid;grid-template-columns:1.2fr .9fr;gap:80px;align-items:center;
}
.sessions-intro-text h2{color:#fff;margin-bottom:24px}
.sessions-intro-text p{color:rgba(255,255,255,.82);font-size:1.05rem;line-height:1.85;margin-bottom:20px}
.sessions-intro-visual{position:relative}
.sessions-intro-visual img{
  width:100%;height:auto;
  border:1px solid rgba(255,255,255,.08);
  filter:grayscale(.2) contrast(1.06);
}
.sessions-intro-caption{
  margin-top:16px;color:rgba(255,255,255,.55);
  font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;
}
@media(max-width:880px){
  .sessions-intro-grid{grid-template-columns:1fr;gap:48px}
}

/* ----- WHO FOR (sessions page) ----- */
.who-for-section{
  background:linear-gradient(180deg,#0A0A0C 0%,#15040F 100%);
  padding:100px 24px;
}
.who-for-inner{max-width:1180px;margin:0 auto;text-align:center}
.who-for-inner h2{color:#fff;margin-bottom:18px}
.who-for-lead{color:rgba(255,255,255,.78);font-size:1.1rem;max-width:760px;margin:0 auto 52px;line-height:1.75}
.who-for-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;text-align:left;
}
.who-for-card{
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.08);
  padding:36px 28px;
  transition:border-color .3s ease,background .3s ease,transform .3s ease;
}
.who-for-card:hover{border-color:var(--color-accent);background:rgba(181,53,156,.05);transform:translateY(-4px)}
.who-for-icon{
  width:48px;height:48px;
  background:rgba(181,53,156,.1);
  border:1px solid var(--color-accent);
  display:flex;align-items:center;justify-content:center;
  color:var(--color-accent);font-size:1.1rem;margin-bottom:20px;
}
.who-for-card h3{color:#fff;font-size:1.15rem;margin-bottom:10px}
.who-for-card p{color:rgba(255,255,255,.72);font-size:.95rem;line-height:1.7}

/* ----- HOW IT WORKS (sessions) ----- */
.how-it-works-section{background:#0A0A0C;padding:100px 24px}
.how-it-works-inner{max-width:1080px;margin:0 auto}
.how-it-works-inner h2{color:#fff;margin-bottom:48px;text-align:center}
.how-it-works-steps{
  list-style:none;padding:0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;
  counter-reset:none;
}
.how-it-works-steps li{
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.08);
  border-left:3px solid var(--color-accent);
  padding:32px 28px;position:relative;
}
.how-it-works-steps .step-num{
  display:block;
  font-family:var(--font-display);
  font-size:2.2rem;color:var(--color-accent);
  margin-bottom:14px;letter-spacing:.08em;
}
.how-it-works-steps h3{color:#fff;font-size:1.1rem;margin-bottom:10px}
.how-it-works-steps p{color:rgba(255,255,255,.72);font-size:.95rem;line-height:1.7}

/* ----- DISCLAIMER (sessions) ----- */
.disclaimer-section{
  background:linear-gradient(180deg,#15040F 0%,#0A0A0C 100%);
  padding:100px 24px;
}
.disclaimer-inner{max-width:1180px;margin:0 auto}
.disclaimer-inner > h2{color:#fff;text-align:center;margin-bottom:48px}
.disclaimer-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.disclaimer-card{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  padding:42px 36px;
}
.disclaimer-card-warn{
  border-color:rgba(181,53,156,.4);
  background:rgba(181,53,156,.06);
}
.disclaimer-card h3{
  color:var(--color-accent);font-size:1rem;letter-spacing:.18em;
  margin-bottom:20px;padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.disclaimer-card p{color:rgba(255,255,255,.78);font-size:.98rem;line-height:1.8;margin-bottom:14px}
.disclaimer-card p:last-child{margin-bottom:0}
@media(max-width:880px){
  .disclaimer-grid{grid-template-columns:1fr}
}

/* ----- CROSS-LINK ----- */
.cross-link-section{background:#0A0A0C;padding:80px 24px;border-top:1px solid rgba(255,255,255,.05)}
.cross-link-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:32px}
.cross-link-card{
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.08);
  padding:42px 36px;
  transition:border-color .3s ease,background .3s ease,transform .3s ease;
}
.cross-link-card:hover{border-color:var(--color-accent);background:rgba(181,53,156,.04);transform:translateY(-4px)}
.cross-link-card h3{color:#fff;font-size:1.4rem;margin-bottom:14px}
.cross-link-card p{color:rgba(255,255,255,.72);font-size:.98rem;line-height:1.7;margin-bottom:18px}
@media(max-width:880px){
  .cross-link-inner{grid-template-columns:1fr}
}

/* ----- WORKSHOP INTRO ----- */
.workshop-intro-section{background:#0A0A0C;padding:100px 24px}
.workshop-intro-inner{max-width:1280px;margin:0 auto}
.workshop-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.workshop-intro-text h2{color:#fff;margin-bottom:24px}
.workshop-intro-text p{color:rgba(255,255,255,.82);font-size:1.05rem;line-height:1.85;margin-bottom:18px}
.workshop-intro-visual img{
  width:100%;height:auto;
  border:1px solid rgba(255,255,255,.08);
  filter:grayscale(.15) contrast(1.05);
}
@media(max-width:880px){
  .workshop-intro-grid{grid-template-columns:1fr;gap:48px}
}

/* ----- WORKSHOP GALLERY ----- */
.workshop-gallery-section{background:#0A0A0C;padding:100px 24px}
.workshop-gallery-inner{max-width:1280px;margin:0 auto}
.workshop-gallery-head{text-align:center;margin-bottom:56px}
.workshop-gallery-head h2{color:#fff;margin-bottom:14px}
.workshop-gallery-head p{color:rgba(255,255,255,.72);max-width:640px;margin:0 auto;font-size:1.05rem}
.workshop-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-auto-rows:280px;
  gap:18px;
}
.workshop-gallery-item{
  margin:0;position:relative;overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
}
.workshop-gallery-item img{
  width:100%;height:100%;object-fit:cover;
  filter:grayscale(.12) contrast(1.05);
  transition:transform .5s ease,filter .5s ease;
}
.workshop-gallery-item:hover img{transform:scale(1.05);filter:none}
.workshop-gallery-item figcaption{
  position:absolute;left:0;right:0;bottom:0;
  background:linear-gradient(180deg,transparent,rgba(10,10,12,.9));
  color:#fff;padding:18px 18px 14px;font-size:.74rem;
  letter-spacing:.18em;text-transform:uppercase;
  border-top:1px solid var(--color-accent);
}
.workshop-gallery-tall{grid-row:span 2}
@media(max-width:880px){
  .workshop-gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px}
  .workshop-gallery-tall{grid-row:span 1}
}
@media(max-width:560px){
  .workshop-gallery-grid{grid-template-columns:1fr;grid-auto-rows:220px}
}

/* ----- WHAT TO EXPECT (workshops) ----- */
.what-to-expect-section{background:linear-gradient(180deg,#0A0A0C 0%,#15040F 100%);padding:100px 24px}
.what-to-expect-inner{max-width:1180px;margin:0 auto}
.what-to-expect-inner h2{color:#fff;text-align:center;margin-bottom:48px}
.expect-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.expect-card{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  padding:32px 28px;
  transition:border-color .3s ease,background .3s ease,transform .3s ease;
}
.expect-card:hover{border-color:var(--color-accent);background:rgba(181,53,156,.05);transform:translateY(-4px)}
.expect-num{
  display:inline-block;font-family:var(--font-display);
  color:var(--color-accent);letter-spacing:.18em;
  font-size:.85rem;margin-bottom:18px;text-transform:uppercase;
}
.expect-card h3{color:#fff;font-size:1.15rem;margin-bottom:10px}
.expect-card p{color:rgba(255,255,255,.72);font-size:.95rem;line-height:1.7}

/* ----- CONTACT FAQ (contact page) ----- */
.contact-faq-section{background:#0A0A0C;padding:100px 24px}
.contact-faq-inner{max-width:1180px;margin:0 auto}
.contact-faq-inner h2{color:#fff;text-align:center;margin-bottom:48px}
.contact-faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.contact-faq-card{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  padding:32px 28px;
}
.contact-faq-card h3{color:#fff;font-size:1.15rem;margin-bottom:12px}
.contact-faq-card p{color:rgba(255,255,255,.74);font-size:.95rem;line-height:1.7}

/* ----- FOOTER — already dark; tweak accents ----- */
footer{background:#0A0A0C !important;color:#fff !important;border-top:1px solid rgba(255,255,255,.08) !important}
footer .logo-text,footer .logo-subline,footer h4,footer ul li{color:#fff}
footer .logo-subline{color:rgba(255,255,255,.55)}
footer ul li a:hover{color:var(--color-accent)}
footer h4{color:var(--color-accent) !important;letter-spacing:.2em}
.social-row a:hover{color:var(--color-accent)}
.footer-bottom{background:#000 !important;color:rgba(255,255,255,.55) !important;border-top:1px solid rgba(255,255,255,.05)}

/* Hide empty social links (those with no URL) */
.social-row a[href=""],
.social-row a[href="#"],
.social-row a:not([href]){display:none !important}

/* WhatsApp float — keep green pop */
.wa-float{background:#25D366;color:#fff}

/* ----- MOBILE FIXES ----- */
html{overflow-x:hidden}
body{overflow-x:hidden}

@media(max-width:880px){
  .nav-toggle{display:inline-flex !important;color:#fff}
  .nav-links{display:none}
  .nav-links.open{
    display:flex;flex-direction:column;
    position:absolute;top:100%;left:0;right:0;
    background:#0A0A0C;padding:26px;gap:22px;
    border-bottom:1px solid var(--color-accent);
  }
  .nav-giris{display:none}
  .hero-content h1{font-size:clamp(2.4rem,9vw,3.4rem)}
  .hero-content{padding:0 24px}
  .hero-ctas{flex-direction:column;align-items:flex-start;gap:14px}
  .studio-grid{grid-template-columns:1fr !important;gap:48px !important}
  .programs-section .programs-inner{grid-template-columns:1fr !important;display:block !important}
  .programs-sidebar{border-right:none !important;border-bottom:1px solid rgba(255,255,255,.08)}
  .lifestyle-grid{grid-template-columns:1fr !important}
  .instagram-grid{grid-template-columns:repeat(2,1fr) !important}
  .contact-grid{grid-template-columns:1fr !important}
  .footer-cols{grid-template-columns:1fr !important;gap:36px !important}
  .testimonial-card{flex-basis:84vw}
  .three-c-grid,.who-for-grid,.expect-grid,.contact-faq-grid{grid-template-columns:1fr !important}
  .silhouette-frame img{max-height:380px}
  .three-c-card,.who-for-card,.expect-card,.contact-faq-card{padding:28px 22px}
  .snake-cta-section{padding:80px 18px}
}

/* Touch target safety for buttons/links */
.btn{min-height:44px}
.nav-links a{padding:14px 0;min-height:44px;display:inline-flex;align-items:center}

/* Smot logo IMG on nav/footer — neutralize white SMOT text version (intake png) which already has black bg so blends */
.nav .logo-wrap img[src*="logo-smot"],
footer .logo-wrap img[src*="logo-smot"]{
  background:transparent;
  mix-blend-mode:screen;
}

/* ----- LANG PICKER (EN / IT / ES) ----- */
.lang-picker{
  display:inline-flex;gap:2px;margin-left:14px;
  border:1px solid rgba(255,255,255,.16);border-radius:6px;overflow:hidden;
}
.lang-picker a,.lang-picker button{text-decoration:none;display:inline-block;
  background:transparent;border:0;color:rgba(255,255,255,.55);
  font-family:var(--font-display);font-size:11px;font-weight:600;
  letter-spacing:.08em;padding:5px 9px;cursor:pointer;
  transition:background .15s,color .15s;
}
.lang-picker a:hover:not(.active),.lang-picker button:hover:not(.active){color:#fff;background:rgba(255,255,255,.06)}
.lang-picker a.active,.lang-picker button.active{background:var(--color-accent,#B5359C);color:#fff}
@media(max-width:880px){
  .lang-picker{margin-left:auto;margin-right:10px}
  .lang-picker a,.lang-picker button{text-decoration:none;display:inline-block;padding:4px 7px;font-size:10px}
}

/* ─── Layout fixes added 2026-05-18 / refreshed 2026-05-20 ─── */

/* Side serpent logos — transparent PNG (Lu sent 2026-05-20). Bumped
   size + opacity per "make them bigger". No scaleX mirror — Lu didn't
   want the "turned around" version. Master rule above (.snake-deco)
   gets these properties overridden here. */
.snake-deco{display:flex;flex:0 0 auto;width:260px;opacity:.85;filter:none}
.snake-deco img{width:100%;height:auto;display:block}
.snake-deco-left img{transform:none}

@media(max-width:880px){
  .snake-deco{width:160px;opacity:.75}
}

/* Nav/footer logo: transparent PNG, bigger per Lu's revision. */
.nav .logo-wrap img[src*="logo-smot"]{height:54px;width:auto;display:block}
footer .logo-wrap img[src*="logo-smot"]{height:44px;width:auto;display:block}
@media(max-width:880px){
  .nav .logo-wrap img[src*="logo-smot"]{height:42px}
}

/* Picker on mobile must leave room for the absolutely-positioned
   .nav-toggle (right:30px, width ~37px). */
@media(max-width:1000px){
  .lang-picker{margin-left:auto;margin-right:80px;flex-shrink:0}
  .lang-picker a,.lang-picker button{padding:4px 7px;font-size:10px}
}

/* Long hero/snake CTA buttons wrap on narrow screens. */
@media(max-width:560px){
  .btn{white-space:normal;text-align:center;line-height:1.3;padding:13px 18px;font-size:.74rem;letter-spacing:.16em}
}
