/*
 Theme Name: Astra Child
 Template: astra
 Text Domain: astra-child
 Version: 1.0.0
*/

/* ==========================================================================
   0) TOKENS GLOBALE (site-wide) - MOBILE FIRST
   - IMPORTANT: aici setăm o singură sursă de adevăr pentru CTA.
   - Cerință nouă: butonul "Programează o sesiune" să aibă EXACT culoarea
     background-ului din poză: #804300 (rgb 128,67,0).
   ========================================================================== */

:root{
  /* radius comun */
  --cf-radius: .5rem;

  /* culori primare (lab, ca în design) */
  --cf-primary: lab(35.4284% 30.8212 47.0104);
  --cf-primary-foreground: lab(97.7005% .135839 1.90167);

  /* echivalente hex/rgb pentru elemente WP */
  --cf-primary-hex: #7A4A12;
  --cf-primary-hover-hex: #6B3F0F;

  /* accent/bej folosit în UI */
  --cf-accent-hex: #F1E3C7;
  --cf-accent-hover-hex: #EFE7DB;

  /* border discret */
  --cf-border-hex: #E2D7C9;
  --cf-border: rgba(122,74,18,.18);

  /* shadow standard */
  --cf-shadow-lg: 0 10px 20px rgba(0,0,0,.08);

  /* focus ring (wp safe) */
  --cf-focus-ring: 2px solid rgba(122,74,18,.25);

  /* Mobile menu (tablet included) */
  --cf-mobile-menu-bg: #f7f6f2;
  --cf-mobile-menu-text: #1c1610;
  --cf-mobile-menu-link: #1c1610;
  --cf-mobile-menu-link-active: #7A4A12;

  /* =========================================================
     CTA UNIC (site-wide)
     - asta controlează: CTA din header + CTA din meniul mobil (li.cf-cta)
     - cerință: aceeași culoare pe mobile + desktop
     ========================================================= */
  --cf-cta-bg: #804300;        /* exact ca background-ul din poză */
  --cf-cta-bg-hover: #6f3a00;  /* hover mai închis (aproape) */
  --cf-cta-text: #ffffff;
}



/* fallback dacă nu suportă lab() (păstrează exact paleta) */
@supports not (color: lab(0% 0 0)){
  :root{
    --cf-primary:#7a4a12;
    --cf-primary-foreground:#f7f6f2;
    --cf-border: rgba(122,74,18,.18);

    --cf-mobile-menu-bg:#f7f6f2;
    --cf-mobile-menu-text:#1c1610;
    --cf-mobile-menu-link:#1c1610;
    --cf-mobile-menu-link-active:#7a4a12;
  }
}

/* ==========================================================================
   1) CF v0 - GLOBAL TOKENS + UTILITARE (scoped) - MOBILE FIRST
   - Folosește în pagină: <div class="cf-v0"> ... </div>
   ========================================================================== */

.cf-v0{
  /* fonts */
  --font-sans:"Inter","Inter Fallback",system-ui,sans-serif;
  --font-serif:"Playfair Display","Playfair Display Fallback",Georgia,serif;

  /* layout tokens */
  --radius:.5rem;
  --spacing:.25rem;

  /* culori EXACT din design (lab) */
  --background: lab(97.7005% .135839 1.90167);
  --foreground: lab(12.9043% 4.59094 6.11705);

  --card: lab(100% 0 0);
  --card-foreground: lab(12.9043% 4.59094 6.11705);

  --primary: lab(35.4284% 30.8212 47.0104);
  --primary-foreground: lab(97.7005% .135839 1.90167);

  --muted-foreground: lab(41.9119% 4.44703 5.98142);
  --accent: lab(90.8584% 1.52743 15.5418);

  --border: lab(88.4762% .642657 7.67484);
  --ring: lab(35.4284% 30.8212 47.0104);

  font-family:var(--font-sans);
  color:var(--foreground);
  -webkit-font-smoothing:antialiased;
}

/* fallback dacă nu suportă lab() (doar pentru .cf-v0) */
@supports not (color: lab(0% 0 0)){
  .cf-v0{
    --background:#f7f6f2;
    --foreground:#1c1610;

    --card:#ffffff;
    --card-foreground:#1c1610;

    --primary:#7a4a12;
    --primary-foreground:#f7f6f2;

    --muted-foreground:#6b6258;
    --accent:#efe7db;

    --border:#e2d7c9;
    --ring:#7a4a12;
  }
}

/* ==========================================================================
   1.1) reset local (Elementor/Astra)
   ========================================================================== */

.cf-v0,
.cf-v0 *{ box-sizing:border-box; }

.cf-v0 h1,
.cf-v0 h2,
.cf-v0 h3,
.cf-v0 p{ margin:0; }

/* IMPORTANT: nu “omorâm” link-urile global */
.cf-v0 a{ color:inherit; }

/* ==========================================================================
   1.2) token -> clase
   ========================================================================== */

.cf-v0 .bg-background{ background-color:var(--background); }
.cf-v0 .bg-card{ background-color:var(--card); }
.cf-v0 .text-foreground{ color:var(--foreground); }
.cf-v0 .text-muted-foreground{ color:var(--muted-foreground); }
.cf-v0 .text-primary{ color:var(--primary); }
.cf-v0 .bg-primary{ background-color:var(--primary); }
.cf-v0 .text-primary-foreground{ color:var(--primary-foreground); }
.cf-v0 .bg-accent{ background-color:var(--accent); }
.cf-v0 .border-border{ border-color:var(--border); }

/* ==========================================================================
   1.3) layout utilitare
   ========================================================================== */

.cf-v0 .relative{ position:relative; }
.cf-v0 .absolute{ position:absolute; }
.cf-v0 .inset-0{ inset:0; }
.cf-v0 .z-10{ z-index:10; }
.cf-v0 .-z-10{ z-index:-10; }
.cf-v0 .overflow-hidden{ overflow:hidden; }

.cf-v0 .flex{ display:flex; }
.cf-v0 .inline-flex{ display:inline-flex; }
.cf-v0 .grid{ display:grid; }
.cf-v0 .items-center{ align-items:center; }
.cf-v0 .justify-center{ justify-content:center; }
.cf-v0 .justify-start{ justify-content:flex-start; }
.cf-v0 .flex-col{ flex-direction:column; }
.cf-v0 .flex-wrap{ flex-wrap:wrap; }

.cf-v0 .gap-2{ gap:.5rem; }
.cf-v0 .gap-4{ gap:1rem; }
.cf-v0 .gap-6{ gap:1.5rem; }
.cf-v0 .gap-8{ gap:2rem; }
.cf-v0 .gap-12{ gap:3rem; }

.cf-v0 .mx-auto{ margin-left:auto; margin-right:auto; }
.cf-v0 .max-w-7xl{ max-width:80rem; }
.cf-v0 .max-w-4xl{ max-width:56rem; }
.cf-v0 .max-w-3xl{ max-width:48rem; }
.cf-v0 .max-w-xl{ max-width:36rem; }

.cf-v0 .px-4{ padding-left:1rem; padding-right:1rem; }
.cf-v0 .py-20{ padding-top:5rem; padding-bottom:5rem; }
.cf-v0 .py-12{ padding-top:3rem; padding-bottom:3rem; }
.cf-v0 .pt-20{ padding-top:calc(var(--spacing) * 20); }
.cf-v0 .p-6{ padding:1.5rem; }
.cf-v0 .p-8{ padding:2rem; }

.cf-v0 .min-h-screen{ min-height:100vh; }

.cf-v0 .text-center{ text-align:center; }
.cf-v0 .tracking-wide{ letter-spacing:.025em; }
.cf-v0 .uppercase{ text-transform:uppercase; }

.cf-v0 .font-medium{ font-weight:500; }
.cf-v0 .font-semibold{ font-weight:600; }
.cf-v0 .font-bold{ font-weight:700; }
.cf-v0 .font-serif{ font-family:var(--font-serif); }

.cf-v0 .leading-tight{ line-height:1.25; }
.cf-v0 .leading-relaxed{ line-height:1.625; }

.cf-v0 .text-balance{ text-wrap:balance; }
@supports not (text-wrap: balance){
  .cf-v0 .text-balance{ max-width:32ch; }
}

/* ==========================================================================
   1.4) tipografie utilitară
   ========================================================================== */

.cf-v0 .text-xs{ font-size:.75rem; line-height:calc(1 / .75); }

.cf-v0 .text-base{ font-size:1rem; line-height:calc(1.5 / 1); }
.cf-v0 .text-lg{ font-size:1.125rem; line-height:calc(1.75 / 1.125); }

.cf-v0 .text-xl{ font-size:1.25rem; line-height:calc(1.75 / 1.25); }
.cf-v0 .text-3xl{ font-size:1.875rem; line-height:calc(2.25 / 1.875); }
.cf-v0 .text-4xl{ font-size:2.25rem; line-height:calc(2.5 / 2.25); }
.cf-v0 .text-5xl{ font-size:3rem; line-height:1; }
.cf-v0 .text-6xl{ font-size:3.75rem; line-height:1; }
.cf-v0 .text-7xl{ font-size:4.5rem; line-height:1; }

.cf-v0 .mb-3{ margin-bottom:.75rem; }
.cf-v0 .mb-4{ margin-bottom:1rem; }
.cf-v0 .mb-16{ margin-bottom:4rem; }
.cf-v0 .mt-1{ margin-top:.25rem; }
.cf-v0 .mt-2{ margin-top:.5rem; }
.cf-v0 .mt-4{ margin-top:1rem; }
.cf-v0 .mt-6{ margin-top:1.5rem; }
.cf-v0 .mt-8{ margin-top:2rem; }
.cf-v0 .mt-10{ margin-top:2.5rem; }

/* ==========================================================================
   Mobile: 18px body text in .cf-v0 (no HTML changes)
   ========================================================================== */
@media (max-width: 639px){
  /* majoritatea paragrafelor tale sunt text-base / text-sm */
  .cf-v0 .text-base,
  .cf-v0 .text-sm{
    font-size: 18px !important;
    line-height: 1.7 !important; /* confortabil la 20px */
  }

  /* opțional: dacă ai paragrafe cu text-lg și vrei să fie tot 20px pe mobil */
  .cf-v0 p.text-lg{
    font-size: 18px !important;
    line-height: 1.7 !important;
  }

  /* spațiu între paragrafe (în cf-v0 ai margin:0 pe p) */
  .cf-v0 p + p{
    margin-top: 14px;
  }
}



/* fallback pentru browsere fără color-mix */
@supports not (color: color-mix(in oklab, #000 10%, #fff)){
  @media (max-width: 639px){
    .cf-v0 .text-muted-foreground{
      color: rgba(28,22,16,.78);
    }
  }
}


/* ==========================================================================
   1.5) borders / radius / shadow
   ========================================================================== */

.cf-v0 .border{ border:1px solid var(--border); }
.cf-v0 .border-2{ border:2px solid var(--border); }

.cf-v0 .rounded-md{ border-radius:var(--radius); }
.cf-v0 .rounded-lg{ border-radius:.75rem; }
.cf-v0 .rounded-xl{ border-radius:1rem; }
.cf-v0 .rounded-2xl{ border-radius:1rem; }

.cf-v0 .shadow-lg{ box-shadow:0 10px 20px rgba(0,0,0,.08); }

/* ==========================================================================
   1.6) media / aspect
   ========================================================================== */

.cf-v0 .w-full{ width:100%; }
.cf-v0 .h-full{ height:100%; }
.cf-v0 .object-cover{ object-fit:cover; display:block; }

.cf-v0 .aspect-\[4\/5\]{ aspect-ratio:4/5; }
.cf-v0 .aspect-square{ aspect-ratio:1/1; }

/* ==========================================================================
   1.7) decor (modern)
   ========================================================================== */

.cf-v0 .bg-primary\/10{ background-color:color-mix(in oklab, var(--primary) 10%, transparent); }
.cf-v0 .border-primary\/20{ border-color:color-mix(in oklab, var(--primary) 20%, transparent); }

.cf-v0 .w-32{ width:8rem; }
.cf-v0 .h-32{ height:8rem; }
.cf-v0 .w-24{ width:6rem; }
.cf-v0 .h-24{ height:6rem; }
.cf-v0 .w-12{ width:3rem; }
.cf-v0 .h-12{ height:3rem; }
.cf-v0 .w-2{ width:.5rem; }
.cf-v0 .h-2{ height:.5rem; }

.cf-v0 .w-48{ width:12rem; }
.cf-v0 .h-48{ height:12rem; }

.cf-v0 .-bottom-6{ bottom:-1.5rem; }
.cf-v0 .-left-6{ left:-1.5rem; }
.cf-v0 .-top-6{ top:-1.5rem; }
.cf-v0 .-right-6{ right:-1.5rem; }

/* ==========================================================================
   1.8) butoane (doar în .cf-v0)
   - NU le legăm de CTA din Astra (header/menu), ca să nu afectăm Elementor.
   ========================================================================== */

.cf-v0 a.cf-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  height:2.5rem;
  padding:0 2rem;
  border-radius:var(--radius);
  font:inherit;
  font-weight:600;
  background:var(--primary);
  color:var(--primary-foreground);
  border:1px solid transparent;
  text-decoration:none;
}
.cf-v0 a.cf-btn:hover{ background: var(--cf-primary-hover-hex); }

.cf-v0 a.cf-btn.cf-btn-ghost{
  background:transparent;
  color:var(--foreground);
  border:1px solid var(--border);
  text-decoration:none;
}
.cf-v0 a.cf-btn.cf-btn-ghost:hover{ background:var(--accent); }

.cf-v0 .ml-2{ margin-left:.5rem; }
.cf-v0 .w-4{ width:1rem; }
.cf-v0 .h-4{ height:1rem; }



/* ==========================================================================
   1.9) utilitare lipsă
   ========================================================================== */

.cf-v0 .order-1{ order:1; }
.cf-v0 .order-2{ order:2; }
.cf-v0 .space-y-4 > * + *{ margin-top:1rem; }

/* ==========================================================================
   1.10) RESPONSIVE - MOBILE FIRST
   ========================================================================== */

@media (min-width:640px){
  .cf-v0 .sm\:px-6{ padding-left:1.5rem; padding-right:1.5rem; }
  .cf-v0 .sm\:py-32{ padding-top:8rem; padding-bottom:8rem; }
  .cf-v0 .sm\:text-base{ font-size:1rem; line-height:calc(1.5 / 1); }
  .cf-v0 .sm\:text-lg{ font-size:1.125rem; line-height:calc(1.75 / 1.125); }
  .cf-v0 .sm\:text-4xl{ font-size:2.25rem; line-height:calc(2.5 / 2.25); }
  .cf-v0 .sm\:text-5xl{ font-size:3rem; line-height:1; }
  .cf-v0 .sm\:mb-6{ margin-bottom:1.5rem; }
  .cf-v0 .sm\:mt-8{ margin-top:2rem; }
  .cf-v0 .sm\:mt-10{ margin-top:2.5rem; }
  .cf-v0 .sm\:flex-row{ flex-direction:row; }
  .cf-v0 .sm\:p-8{ padding:2rem; }
  .cf-v0 .sm\:grid-cols-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }

  .cf-v0 .sm\:w-48{ width:12rem; }
  .cf-v0 .sm\:h-48{ height:12rem; }
}

@media (min-width:1024px){
  .cf-v0 .lg\:px-8{ padding-left:2rem; padding-right:2rem; }
  .cf-v0 .lg\:py-32{ padding-top:8rem; padding-bottom:8rem; }
  .cf-v0 .lg\:grid-cols-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cf-v0 .lg\:grid-cols-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .cf-v0 .lg\:gap-20{ gap:5rem; }
  .cf-v0 .lg\:text-left{ text-align:left; }
  .cf-v0 .lg\:justify-start{ justify-content:flex-start; }
  .cf-v0 .lg\:mx-0{ margin-left:0; margin-right:0; }
  .cf-v0 .lg\:text-5xl{ font-size:3rem; line-height:1; }
  .cf-v0 .lg\:text-6xl{ font-size:3.75rem; line-height:1; }

  .cf-v0 .lg\:order-1{ order:1; }
  .cf-v0 .lg\:order-2{ order:2; }
}

@media (min-width:1280px){
  .cf-v0 .xl\:text-7xl{ font-size:4.5rem; line-height:1; }
}

/* ==========================================================================
   2) BLOG widget skin (scoped)
   ========================================================================== */

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7){
  display:grid;
  gap:1.5rem;
  grid-template-columns:1fr;
}

@media (min-width:640px){
  .cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7){
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (min-width:1024px){
  .cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7){
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:2rem;
  }
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_box{
  background:var(--background);
  border:1px solid var(--border);
  border-radius:.75rem;
  overflow:hidden;
  transition: box-shadow .15s ease, transform .15s ease;
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_box:hover{
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_image{
  aspect-ratio:16 / 10;
  overflow:hidden;
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1);
  transition:transform .3s ease;
  display:block;
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_box:hover .ue_post_blocks_image img{
  transform:scale(1.05);
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_content{
  padding:1.5rem;
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_title a{
  font-family:var(--font-serif);
  font-weight:600;
  color:var(--foreground);
  text-decoration:none;
  display:block;
  margin-top:.5rem;
  margin-bottom:.75rem;
  font-size:1.25rem;
  line-height:1.35;
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_box:hover .ue_post_blocks_title a{
  color:var(--primary);
}

.cf-v0 .cf-blog-widget :is(.cf-blog-grid, #uc_post_blocks_elementor_c2609b7) .ue_post_blocks_text{
  color:var(--muted-foreground);
  font-size:.875rem;
  line-height:1.625;
}

/* ==========================================================================
   3) CTA buttons dark (scoped, WP safe)
   ========================================================================== */

.cf-v0 a.cf-btn-dark,
.cf-v0 button.cf-btn-dark{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  width:100%;
  height:2.75rem;
  padding:0 2rem;
  border-radius:var(--radius);
  font:inherit;
  font-weight:600;
  line-height:1;
  background:var(--primary-foreground);
  color:var(--primary);
  border:1px solid transparent;
  text-decoration:none;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
}

.cf-v0 a.cf-btn-dark:hover,
.cf-v0 button.cf-btn-dark:hover{
  background: rgba(247,246,242,.92);
}

.cf-v0 a.cf-btn-dark-ghost,
.cf-v0 button.cf-btn-dark-ghost{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  width:100%;
  height:2.75rem;
  padding:0 2rem;
  border-radius:var(--radius);
  font:inherit;
  font-weight:600;
  line-height:1;
  background:transparent;
  color:var(--primary-foreground);
  border:1px solid color-mix(in oklab, var(--primary-foreground) 30%, transparent);
  text-decoration:none;
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
}

.cf-v0 a.cf-btn-dark-ghost:hover,
.cf-v0 button.cf-btn-dark-ghost:hover{
  background: rgba(247,246,242,.10);
}

/* ==========================================================================
   4) fallback pentru color-mix() (mobile browsers)
   ========================================================================== */

@supports not (background-color: color-mix(in oklab, #000 10%, transparent)){
  .cf-v0 .bg-primary\/10{ background-color: rgba(122,74,18,.10); }
  .cf-v0 .border-primary\/20{ border-color: rgba(122,74,18,.20); }

  .cf-v0 a.cf-btn-dark-ghost,
  .cf-v0 button.cf-btn-dark-ghost{
    border-color: rgba(247,246,242,.30);
  }
}

/* ==========================================================================
   5) SECȚIUNE SPECIFICĂ: #recenzii (scoped)
   ========================================================================== */

.cf-v0 #recenzii{ background: var(--cf-accent-hex); }
.cf-v0 #recenzii .elementor-widget-image-carousel{ margin-top:24px; }

/* ==========================================================================
   6) ASTRA: scroll-to-top (site palette)
   ========================================================================== */

/* FIX: Astra "scroll to top" - culoare constantă pe desktop + mobil */
#ast-scroll-top.ast-scroll-top-icon,
#ast-scroll-top{
  background-color: var(--cf-accent-hex) !important;
  border: 1px solid var(--cf-border-hex) !important;
  box-shadow: var(--cf-shadow-lg) !important;
  color: var(--cf-primary-hex) !important; /* controlăm săgeata prin currentColor */
  opacity: 1 !important;
  filter: none !important;
}

#ast-scroll-top:hover,
#ast-scroll-top:focus{
  background-color: var(--cf-accent-hover-hex) !important;
  color: var(--cf-primary-hex) !important;
}

#ast-scroll-top .ast-arrow-svg{
  fill: currentColor !important;
}

#ast-scroll-top .ast-arrow-svg path{
  fill: currentColor !important;
}


/* ==========================================================================
   7) ASTRA: MENIU MOBILE/TABLET - fundal + culori linkuri
   - fără JS / fără clase speciale (mai rezistent la update-uri)
   ========================================================================== */

.ast-header-break-point .main-header-bar-navigation,
.ast-header-break-point #ast-mobile-site-navigation,
.ast-header-break-point .main-header-bar-navigation .main-navigation{
  background: var(--cf-mobile-menu-bg);
}

.ast-header-break-point #ast-hf-mobile-menu,
.ast-header-break-point ul#ast-hf-mobile-menu.main-header-menu,
.ast-header-break-point .main-header-menu.ast-nav-menu{
  background: var(--cf-mobile-menu-bg);
  color: var(--cf-mobile-menu-text);
}

.ast-header-break-point #ast-hf-mobile-menu a.menu-link{
  background: transparent;
  color: var(--cf-mobile-menu-link);
  text-decoration: none;
}

/* active/current */
.ast-header-break-point #ast-hf-mobile-menu .current-menu-item > a.menu-link,
.ast-header-break-point #ast-hf-mobile-menu .current_page_item > a.menu-link,
.ast-header-break-point #ast-hf-mobile-menu a.menu-link[aria-current="page"]{
  color: var(--cf-mobile-menu-link-active);
}

/* hover/focus */
.ast-header-break-point #ast-hf-mobile-menu a.menu-link:hover{ color: var(--cf-primary-hover-hex); }
.ast-header-break-point #ast-hf-mobile-menu a.menu-link:focus{
  color: var(--cf-primary-hover-hex);
  outline: var(--cf-focus-ring);
  outline-offset: 2px;
}

/* ==========================================================================
   8) Sticky header (1 culoare) - Astra
   - sticky permanent
   - NU schimbă culori la scroll
   - NOTE: păstrăm câteva !important doar unde Astra pune reguli mai tari.
   ========================================================================== */

:root{
  --cf-header-bg: #f7f6f2;
  --cf-header-text: #1c1610;
}

/* sticky */
#masthead{
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
}

/* fundal header */
#masthead .ast-primary-header-bar{
  background: var(--cf-header-bg) !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  box-shadow: 0 10px 20px rgba(0,0,0,.08) !important;
}

/* culori în header */
#masthead a,
#masthead .menu-link,
#masthead .menu-toggle,
#masthead .menu-toggle .ast-mobile-svg{
  color: var(--cf-header-text) !important;
  fill: currentColor !important;
}

/* padding confortabil pe mobil/tablet */
.ast-header-break-point #ast-mobile-header .ast-builder-grid-row{
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box !important;
}

/* ==========================================================================
   9) CTA UNIC (Astra): header button + mobile menu item (li.cf-cta)
   - asta rezolvă diferența de culoare: "Programează o sesiune"
   - folosim variabilele globale: --cf-cta-bg / --cf-cta-text
   ========================================================================== */

/* (opțional) ascunde linkul duplicat din Astra când butonul e setat ca “Button” */
.ast-builder-button-wrap > a.menu-link{ display:none !important; }

/* CTA din header (desktop) */
#masthead .ast-builder-button-wrap .ast-custom-button-link,
#masthead .ast-builder-button-wrap .ast-custom-button-link .ast-custom-button{
  background: var(--cf-cta-bg) !important;
  color: var(--cf-cta-text) !important;
  border-color: transparent !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

#masthead .ast-builder-button-wrap .ast-custom-button-link:hover,
#masthead .ast-builder-button-wrap .ast-custom-button-link:hover .ast-custom-button,
#masthead .ast-builder-button-wrap .ast-custom-button-link:focus,
#masthead .ast-builder-button-wrap .ast-custom-button-link:focus .ast-custom-button{
  background: var(--cf-cta-bg-hover) !important;
  color: var(--cf-cta-text) !important;
}

/* CTA din meniul mobil (li.cf-cta) */
.ast-header-break-point #ast-hf-mobile-menu li.cf-cta > a.menu-link,
.ast-mobile-popup-drawer #ast-hf-mobile-menu li.cf-cta > a.menu-link{
  background: var(--cf-cta-bg) !important;
  color: var(--cf-cta-text) !important;
  border-color: transparent !important;
  opacity: 1 !important;
  filter: none !important;
  text-decoration: none !important;
}

.ast-header-break-point #ast-hf-mobile-menu li.cf-cta > a.menu-link:hover,
.ast-header-break-point #ast-hf-mobile-menu li.cf-cta > a.menu-link:focus,
.ast-mobile-popup-drawer #ast-hf-mobile-menu li.cf-cta > a.menu-link:hover,
.ast-mobile-popup-drawer #ast-hf-mobile-menu li.cf-cta > a.menu-link:focus{
  background: var(--cf-cta-bg-hover) !important;
  color: var(--cf-cta-text) !important;
}

/* CTA sizing (ca înainte, dar într-un singur loc) */
.ast-header-break-point #ast-hf-mobile-menu li.cf-cta > a.menu-link,
.ast-mobile-popup-drawer #ast-hf-mobile-menu li.cf-cta > a.menu-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width: min(92%, 360px) !important;
  margin: 16px auto 0 !important;
  height: 44px !important;
  padding: 0 20px !important;
  border-radius: 10px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  line-height: 1 !important;
}

/* ========================================================= Sticky header (1 culoare) - Astra - sticky permanent - full width (edge-to-edge) - NU schimbă culori la scroll ========================================================= */ 
:root{ 
	/* setează aici culoarea unică a headerului */
	--cf-header-bg: #f7f6f2; --cf-header-text: #1c1610; }

/* header full width */ 
#masthead{ width: 100% !important; 
	max-width: 100% !important; 
	left: 0 !important; 
	right: 0 !important; 
	margin: 0 !important; 
	z-index: 99999 !important; } 

/* sticky (fără JS, fără clase) */ 
#masthead{ position: sticky !important; 
	top: 0 !important; } 

/* fundal unic */ 
#masthead .ast-primary-header-bar{ 
	background: var(--cf-header-bg) !important; 
	border-bottom: 1px solid rgba(0,0,0,.08) !important; 
	box-shadow: 0 10px 20px rgba(0,0,0,.08) !important; } 

/* culori unice pt linkuri + hamburger */ 
#masthead a, #masthead .menu-link, #masthead .menu-toggle, 
#masthead .menu-toggle .ast-mobile-svg{ 
	color: var(--cf-header-text) !important; 
	fill: currentColor !important; } 

/* padding confortabil pe mobil/tablet (logo nu e lipit) */ 
.ast-header-break-point #ast-mobile-header 
.ast-builder-grid-row{ padding-left: 16px !important; 
	padding-right: 16px !important; box-sizing: border-box !important; } 

/* CTA din meniul mobil: rămâne mereu corect (nu se “recolorează”) */ 
#masthead #ast-hf-mobile-menu li.cf-cta > a.menu-link{ 
	background: var(--cf-cta-bg) !important;
  color: var(--cf-cta-text) !important;
  border: 1px solid transparent !important;
  text-decoration:none !important;
  font-weight:600 !important;
 border-color: transparent !important; 
	opacity: 1 !important; 
	filter: none !important; } 
#masthead #ast-hf-mobile-menu li.cf-cta > a.menu-link:hover, 
#masthead #ast-hf-mobile-menu li.cf-cta > a.menu-link:focus{ 
	background: var(--cf-primary-hover-hex, #6B3F0F) !important; 
	color: var(--cf-primary-foreground, #f7f6f2) !important; } 

/* ========================================================= CTA unic: header button + mobile menu (drawer/popup) ========================================================= */ 

/* A) CTA din header (desktop) */ 
#masthead .ast-builder-button-wrap .ast-custom-button-link, 
#masthead .ast-builder-button-wrap .ast-custom-button-link .ast-custom-button{ 
	background: var(--primary) !important; 
	color: var(--primary-foreground) !important; 
	border-color: transparent !important; } 
#masthead .ast-builder-button-wrap .ast-custom-button-link:hover, 
#masthead .ast-builder-button-wrap .ast-custom-button-link:hover .ast-custom-button{ 
	background: var(--cf-cta-bg-hover) !important; 
	color: var(--cf-cta-text) !important; } 

/* B) CTA din meniul mobil (asta e în drawer/popup, NU în masthead) */ 
.ast-header-break-point #ast-hf-mobile-menu 
li.cf-cta > a.menu-link, .ast-mobile-popup-drawer 
#ast-hf-mobile-menu li.cf-cta > a.menu-link{ background: var(--primary) !important; 
	color: var(--primary-foreground) !important; 
	border-color: transparent !important; } .ast-header-break-point 
#ast-hf-mobile-menu li.cf-cta > a.menu-link:hover, 
.ast-header-break-point #ast-hf-mobile-menu li.cf-cta > a.menu-link:focus, 
.ast-mobile-popup-drawer #ast-hf-mobile-menu li.cf-cta > a.menu-link:hover, 
.ast-mobile-popup-drawer #ast-hf-mobile-menu li.cf-cta > a.menu-link:focus{ background: var(--cf-cta-bg-hover) !important; 
	color: var(--cf-cta-text) !important; }

/* imagini: fără tăiere pe mobil */
.cf-v0 .cf-media-frame{
  background: var(--card);
}

.cf-v0 img.cf-media{
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;   /* cheia: nu mai taie */
  max-height: 65vh;      /* opțional: să nu devină prea înaltă pe mobil */
}

/* pe desktop poți păstra look-ul “cover” */
@media (min-width:1024px){
  .cf-v0 .cf-media-frame{ aspect-ratio: 4 / 3; }
  .cf-v0 img.cf-media{
    height: 100%;
    object-fit: cover;
    max-height: none;
  }
	
/* ===== comment submit: same style on desktop + tablet + mobile ===== */
html body #respond form#ast-commentform p.form-submit input#submit.submit,
html body #comments form#ast-commentform p.form-submit input#submit.submit,
html body form#ast-commentform p.form-submit input#submit,
html body form#ast-commentform p.form-submit input.submit{
  background: var(--cf-cta-bg, #804300) !important;
  color: var(--cf-cta-text, #fff) !important;
  -webkit-text-fill-color: var(--cf-cta-text, #fff) !important;

  border: 1px solid transparent !important;
  border-radius: 10px !important;

  padding: 0 20px !important;
  min-height: 44px !important;

  font-weight: 600 !important;
  line-height: 1 !important;

  box-shadow: none !important;
  text-decoration: none !important;

  -webkit-appearance: none !important;
  appearance: none !important;
}

html body #respond form#ast-commentform p.form-submit input#submit.submit:hover,
html body #respond form#ast-commentform p.form-submit input#submit.submit:focus,
html body #comments form#ast-commentform p.form-submit input#submit.submit:hover,
html body #comments form#ast-commentform p.form-submit input#submit.submit:focus{
  background: var(--cf-cta-bg-hover, #6f3a00) !important;
  color: var(--cf-cta-text, #fff) !important;
  -webkit-text-fill-color: var(--cf-cta-text, #fff) !important;
  outline: none !important;
}

/* Astra breakpoint: uneori resetează input-urile aici */
@media (max-width: 921px){
  html body #respond form#ast-commentform p.form-submit input#submit.submit,
  html body #comments form#ast-commentform p.form-submit input#submit.submit{
    background: var(--cf-cta-bg, #804300) !important;
    color: var(--cf-cta-text, #fff) !important;
    -webkit-text-fill-color: var(--cf-cta-text, #fff) !important;
    width: 100% !important; /* opțional: full width pe mobil */
  }
}
	
/* Ascunde STRICT doar campul Website (URL) */
.single-post #commentform p.comment-form-url,
.single-post #respond p.comment-form-url {
  display: none !important;
}

/* Ca fallback (daca tema nu foloseste p.comment-form-url) */
.single-post #commentform input#url,
.single-post #respond input#url,
.single-post #commentform label[for="url"],
.single-post #respond label[for="url"] {
  display: none !important;
}
