.elementor-kit-10{--e-global-color-primary:#2C4639;--e-global-color-secondary:#EFF3EF;--e-global-color-text:#34433B;--e-global-color-accent:#426353;--e-global-color-3750b47:#000000;--e-global-color-aa934cd:#FFFFFF;--e-global-typography-primary-font-family:"Lora";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Nunito";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Nunito";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Nunito";--e-global-typography-accent-font-weight:600;color:var( --e-global-color-text );}.elementor-kit-10 button,.elementor-kit-10 input[type="button"],.elementor-kit-10 input[type="submit"],.elementor-kit-10 .elementor-button{background-color:var( --e-global-color-primary );color:var( --e-global-color-aa934cd );border-style:none;border-radius:100px 100px 100px 100px;}.elementor-kit-10 button:hover,.elementor-kit-10 button:focus,.elementor-kit-10 input[type="button"]:hover,.elementor-kit-10 input[type="button"]:focus,.elementor-kit-10 input[type="submit"]:hover,.elementor-kit-10 input[type="submit"]:focus,.elementor-kit-10 .elementor-button:hover,.elementor-kit-10 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-aa934cd );border-style:none;border-radius:100px 100px 100px 100px;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-kit-10 a{color:var( --e-global-color-text );}.elementor-kit-10 input:not([type="button"]):not([type="submit"]),.elementor-kit-10 textarea,.elementor-kit-10 .elementor-field-textual{border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-primary );border-radius:12px 12px 12px 12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Yolanda Carrió Ayuso · generado por scripts/montar-prototipo.py — no editar a mano */

/* ============================================================
   FONT FACES — self-hosted variable fonts (OFL)
   Lora    — elegant transitional serif → display / headings
   Nunito  — warm rounded humanist sans → body / UI
   Both are variable (wght axis); ranges declared below.
   Paths are relative to THIS file (tokens/fonts.css).
   ============================================================ */

/* ---- Lora (serif) --------------------------------------- */
@font-face {
  font-family: "Lora";
  src: url("/wp-content/uploads/yolanda-web/fonts/lora.woff2") format("woff2");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lora";
  src: url("/wp-content/uploads/yolanda-web/fonts/lora-italic.woff2") format("woff2");
  font-weight: 400 700;
  font-style: italic;
  font-display: swap;
}

/* ---- Nunito (sans) -------------------------------------- */
@font-face {
  font-family: "Nunito";
  src: url("/wp-content/uploads/yolanda-web/fonts/nunito.woff2") format("woff2");
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Nunito";
  src: url("/wp-content/uploads/yolanda-web/fonts/nunito-italic.woff2") format("woff2");
  font-weight: 300 800;
  font-style: italic;
  font-display: swap;
}

/* ============================================================
   COLORS — Yolanda Carrió Ayuso · Psicoterapia
   A calm, botanical, mono-green palette on warm cream.
   Base greens are taken verbatim from the brand logo files:
     Verde bosque muy oscuro   #2C4639  (forest)
     Verde pino medio / oliva  #426353  (pine)
     Verde salvia apagado      #4A6B64  (sage)
   Warm cream base             #F5F3ED
   Everything else is a harmonic tint/shade derived from these.
   ============================================================ */

:root {
  /* ---- Forest green ramp (primary) -------------------------- */
  --green-50:  #EFF3EF;   /* softest wash — "verde muy suave"     */
  --green-100: #E3EAE3;   /* section tint, hairlines on cream     */
  --green-200: #C6D3C9;   /* soft borders                          */
  --green-300: #9DB3A6;   /* disabled text on light                */
  --green-400: #6E8B7E;   /* muted accents                         */
  --green-500: #4A6B64;   /* ★ brand SAGE (salvia apagado)         */
  --green-600: #426353;   /* ★ brand PINE (pino / oliva oscuro)    */
  --green-700: #375745;   /* hover for forest surfaces             */
  --green-800: #2C4639;   /* ★ brand FOREST (bosque muy oscuro)    */
  --green-900: #223629;   /* deepest — footer, CTA press           */

  /* ---- Warm cream / sand ramp (neutrals) -------------------- */
  --cream-50:  #FFFFFF;   /* pure paper                            */
  --cream-100: #FBFAF6;   /* barely-there warm white               */
  --cream-200: #F5F3ED;   /* ★ brand CREMA — the page base         */
  --cream-300: #EDE8DD;   /* deeper cream, cards on cream          */
  --cream-400: #E2DBCC;   /* warm divider on cream                 */

  /* ---- Ink (text) — warm green-charcoal, never pure black --- */
  --ink-900: #1F2D26;   /* strongest headings                      */
  --ink-700: #34433B;   /* body copy                               */
  --ink-500: #5E6E64;   /* muted / secondary                       */
  --ink-300: #8B988F;   /* captions, placeholders                  */

  /* =========================================================
     SEMANTIC ALIASES — reach for these in components
     ========================================================= */

  /* Surfaces (background layers) */
  --color-bg:            var(--cream-200);  /* the page             */
  --surface-paper:       var(--cream-50);   /* white blocks         */
  --surface-cream:       var(--cream-200);  /* warm blocks          */
  --surface-cream-deep:  var(--cream-300);  /* card on cream        */
  --surface-sage:        var(--green-50);   /* soft green block     */
  --surface-invert:      var(--green-800);  /* dark CTA / footer    */
  --surface-invert-deep: var(--green-900);

  /* Text */
  --text-heading:        var(--green-800);
  --text-body:           var(--ink-700);
  --text-muted:          var(--ink-500);
  --text-subtle:         var(--ink-300);
  --text-on-invert:      var(--cream-100);
  --text-on-invert-muted:#B7C6BB;
  --text-brand:          var(--green-600);

  /* Lines & borders — "borde fino en verde salvia" */
  --border-hairline:     var(--cream-400);  /* on cream             */
  --border-soft:         var(--green-100);
  --border-sage:         var(--green-200);  /* the signature card border */
  --border-strong:       var(--green-400);
  --border-on-invert:    rgba(255,255,255,0.16);

  /* Brand anchors (named, for direct reference) */
  --brand-forest: var(--green-800);
  --brand-pine:   var(--green-600);
  --brand-sage:   var(--green-500);
  --brand-cream:  var(--cream-200);

  /* Interaction */
  --cta-bg:          var(--green-800);
  --cta-bg-hover:    var(--green-700);
  --cta-bg-press:    var(--green-900);
  --cta-text:        var(--cream-100);
  --focus-ring:      rgba(74,107,100,0.45);   /* sage, 45%          */
  --selection-bg:    var(--green-100);

  /* Links */
  --link:            var(--green-700);
  --link-hover:      var(--green-900);

  /* Feedback (used sparingly — form validation only) */
  --danger:  #A6503F;   /* muted terracotta, stays in-family        */
  --success: var(--green-600);
}

/* ============================================================
   TYPOGRAPHY — Lora (serif display) + Nunito (sans body)
   Warm, calm, generous. Headings in Lora carry the elegance;
   Nunito keeps body text friendly and highly legible.
   Fluid sizes use clamp() so the one-page scales gracefully.
   NOTE: font SIZES are --fs-*; text COLORS live in colors.css
   as --text-* to keep the two concerns from colliding.
   ============================================================ */

:root {
  /* ---- Families ------------------------------------------- */
  --font-serif: "Lora", Georgia, "Times New Roman", serif;
  --font-sans:  "Nunito", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --font-display: var(--font-serif);   /* titles, section heads   */
  --font-body:    var(--font-sans);    /* paragraphs, UI          */

  /* ---- Weights ------------------------------- @kind font --- */
  --fw-light:    300;   /* @kind font */
  --fw-regular:  400;   /* @kind font */
  --fw-medium:   500;   /* @kind font */
  --fw-semibold: 600;   /* @kind font */
  --fw-bold:     700;   /* @kind font */

  /* ---- Fluid type scale (min → max across viewport) ------- */
  --fs-display: clamp(2.75rem, 1.7rem + 4.4vw, 4.5rem);    /* @kind spacing */
  --fs-h1:      clamp(2.1rem, 1.5rem + 2.6vw, 3.25rem);    /* @kind spacing */
  --fs-h2:      clamp(1.6rem, 1.25rem + 1.5vw, 2.25rem);   /* @kind spacing */
  --fs-h3:      clamp(1.25rem, 1.05rem + 0.8vw, 1.55rem);  /* @kind spacing */
  --fs-h4:      1.125rem;                                  /* @kind spacing */
  --fs-lead:    clamp(1.125rem, 1.02rem + 0.5vw, 1.375rem);/* @kind spacing */
  --fs-body:    1.0625rem;   /* @kind spacing */
  --fs-sm:      0.9375rem;   /* @kind spacing */
  --fs-xs:      0.8125rem;   /* @kind spacing */
  --fs-eyebrow: 0.78125rem;  /* @kind spacing */

  /* ---- Line heights -------------------------- @kind other -- */
  --leading-tight:   1.12;   /* @kind other */
  --leading-snug:    1.25;   /* @kind other */
  --leading-normal:  1.5;    /* @kind other */
  --leading-relaxed: 1.72;   /* @kind other */

  /* ---- Letter spacing ------------------------ @kind other -- */
  --tracking-tight:   -0.015em;  /* @kind other */
  --tracking-normal:  0;         /* @kind other */
  --tracking-wide:    0.02em;    /* @kind other */
  --tracking-eyebrow: 0.18em;    /* @kind other */
}

/* ============================================================
   SPACING & LAYOUT — lots of air. "Una pausa en medio del ruido."
   4px base grid; generous section rhythm; comfortable reading
   measures. The one-page should feel like it can breathe.
   ============================================================ */

:root {
  /* ---- Spacing scale (4px base) --------------------------- */
  --space-0:   0;
  --space-1:   0.25rem;   /*  4px */
  --space-2:   0.5rem;    /*  8px */
  --space-3:   0.75rem;   /* 12px */
  --space-4:   1rem;      /* 16px */
  --space-5:   1.5rem;    /* 24px */
  --space-6:   2rem;      /* 32px */
  --space-7:   2.5rem;    /* 40px */
  --space-8:   3rem;      /* 48px */
  --space-9:   4rem;      /* 64px */
  --space-10:  5rem;      /* 80px */
  --space-11:  6rem;      /* 96px */
  --space-12:  8rem;      /* 128px */

  /* ---- Section rhythm (vertical padding of page blocks) --- */
  --section-y:       clamp(4.5rem, 3rem + 6vw, 8.5rem);  /* @kind spacing */
  --section-y-tight: clamp(3rem, 2.2rem + 3vw, 5rem);    /* @kind spacing */

  /* ---- Content widths ------------------------------------- */
  --measure:        66ch;     /* @kind spacing */
  --measure-narrow: 44ch;     /* @kind spacing */
  --container:      1200px;   /* @kind spacing */
  --container-narrow: 780px;  /* @kind spacing */
  --container-wide: 1320px;   /* @kind spacing */
  --gutter:         clamp(1.25rem, 0.5rem + 3vw, 3rem);  /* @kind spacing */
}

/* ============================================================
   EFFECTS — radii, shadows, borders, motion.
   Brand cues: rounded (but not childish) corners, soft/minimal
   shadows, hairline sage borders, unhurried easing.
   ============================================================ */

:root {
  /* ---- Corner radii — "botones redondeados", gentle cards -- */
  --radius-xs:   6px;
  --radius-sm:   10px;
  --radius-md:   16px;    /* default card                          */
  --radius-lg:   22px;    /* large panels / imagery                */
  --radius-xl:   32px;
  --radius-pill: 999px;   /* buttons, chips, tags                  */

  /* ---- Shadows — "sombra mínima o inexistente" ------------- */
  /* Tinted with forest green so shadows read warm, never grey.  */
  --shadow-none: none;
  --shadow-xs:   0 1px 2px rgba(44, 70, 57, 0.05);
  --shadow-sm:   0 1px 2px rgba(44, 70, 57, 0.04),
                 0 4px 12px rgba(44, 70, 57, 0.05);
  --shadow-md:   0 2px 6px rgba(44, 70, 57, 0.05),
                 0 12px 30px rgba(44, 70, 57, 0.07);
  --shadow-lg:   0 10px 24px rgba(44, 70, 57, 0.08),
                 0 30px 60px rgba(44, 70, 57, 0.10);
  /* Focus ring for keyboard users */
  --ring: 0 0 0 3px var(--focus-ring);

  /* ---- Borders -------------------------------------------- */
  --border-width: 1px;   /* @kind spacing */
  --border-line:  1px solid var(--border-sage);   /* @kind other */
  --border-fine:  1px solid var(--border-soft);   /* @kind other */

  /* ---- Motion — calm, no bounce --------------------------- */
  --ease-out:   cubic-bezier(0.22, 1, 0.36, 1);   /* @kind other */
  --ease-in-out:cubic-bezier(0.65, 0, 0.35, 1);   /* @kind other */
  --dur-fast:   140ms;    /* @kind other */
  --dur-base:   240ms;    /* @kind other */
  --dur-slow:   420ms;    /* @kind other */
  --dur-reveal: 720ms;    /* @kind other */

  /* ---- Elevation z-index scale ---------------------------- */
  --z-base:    0;     /* @kind other */
  --z-raised:  10;    /* @kind other */
  --z-sticky:  100;   /* @kind other */
  --z-header:  200;   /* @kind other */
  --z-overlay: 900;   /* @kind other */
  --z-modal:   1000;  /* @kind other */
}

/* ============================================================
   BASE — element defaults that express the brand out of the box.
   Kept deliberately light so consumers can build freely on top.
   ============================================================ */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--color-bg);
  color: var(--text-body);
  font-family: var(--font-body);
  font-size: var(--fs-body);
  font-weight: var(--fw-regular);
  line-height: var(--leading-relaxed);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  font-optical-sizing: auto;
}

/* Headings — Lora, calm and elegant */
:where(.yc-frag) :is(h1, h2, h3, h4, h5, h6) {
  margin: 0;
  font-family: var(--font-display);
  font-weight: var(--fw-medium);
  line-height: var(--leading-snug);
  letter-spacing: var(--tracking-tight);
  color: var(--text-heading);
  text-wrap: balance;
}

:where(.yc-frag) p { margin: 0; text-wrap: pretty; }

/* Links — always define default + hover from the palette */
:where(.yc-frag) a {
  color: var(--link);
  text-decoration-color: color-mix(in oklab, var(--link) 35%, transparent);
  text-underline-offset: 0.18em;
  transition: color var(--dur-fast) var(--ease-out),
              text-decoration-color var(--dur-fast) var(--ease-out);
}
:where(.yc-frag) a:hover { color: var(--link-hover); text-decoration-color: currentColor; }

/* Media */
:where(.yc-frag) :is(img, picture, svg, video) { display: block; max-width: 100%; }

/* Forms inherit the brand type */
:where(.yc-frag) :is(button, input, textarea, select) { font: inherit; color: inherit; }

/* Selection + focus */
::selection { background: var(--selection-bg); color: var(--green-900); }
:where(.yc-frag) :focus-visible { outline: none; box-shadow: var(--ring); border-radius: var(--radius-xs); }

/* Respect reduced motion everywhere */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}

/* ---- Página ---- */
    html { scroll-behavior: smooth; }
    body { margin: 0; background: var(--surface-cream); }
    x-import { display: block; }
    section[id] { scroll-margin-top: 96px; }
    .yc-navlink[data-active="true"]{ color: var(--brand-pine) !important; }
    .yc-navlink[data-active="true"]::after{ right: 0; }
    .yc-cards > *, .yc-cards .ycds-card{ height:100%; }
    .yc-hero-fade{ position:absolute; left:0; right:0; bottom:0; height:58px; pointer-events:none; opacity:1; transition:opacity .4s var(--ease-out); background:linear-gradient(to bottom, rgba(245,243,237,0) 0%, var(--surface-cream) 82%); }
    #yc-hero-more{ max-height:92px; }
    #yc-hero-more[data-open="true"]{ max-height:660px; }
    #yc-hero-more[data-open="true"] .yc-hero-fade{ opacity:0; }
    .yc-hero-toggle[aria-expanded="true"] .yc-hero-chev{ transform:rotate(180deg); }
    .yc-hero-toggle:focus-visible{ outline:3px solid var(--ring); outline-offset:2px; }
    #yc-header[data-scrolled="true"]{ box-shadow: 0 1px 0 rgba(44,70,57,.06), 0 6px 20px -18px rgba(44,70,57,.45); }
    :where(.yc-frag) a { color: var(--link); text-decoration: none; }
    :where(.yc-frag) a:hover { color: var(--link-hover); }
    ::selection { background: var(--green-100); color: var(--green-900); }
    html[data-yc-js] [data-reveal]{ opacity:0; transform:translateY(22px); transition:opacity .8s var(--ease-out), transform .8s var(--ease-out); }
    html[data-yc-js] [data-reveal][data-shown]{ opacity:1; transform:none; }
    @media (prefers-reduced-motion: reduce){ html[data-yc-js] [data-reveal]{ opacity:1 !important; transform:none !important; transition:none !important; } }
    @media print{ [data-reveal]{ opacity:1 !important; transform:none !important; } }
    .yc-navlink{ position:relative; }
    .yc-navlink::after{ content:""; position:absolute; left:0; right:100%; bottom:-4px; height:1.5px; background:var(--brand-pine); transition:right .24s var(--ease-out); }
    .yc-navlink:hover::after{ right:0; }
    @media (max-width: 1024px){
      .yc-hero{ grid-template-columns:1fr !important; }
      .yc-hero-media{ max-width:460px !important; margin:8px auto 0 !important; height:auto !important; }
      .yc-hero-media figure{ height:auto !important; min-height:0 !important; aspect-ratio:4 / 4.6; }
      .yc-2col{ grid-template-columns:1fr !important; }
      .yc-2col-rev .yc-media{ order:-1; }
      .yc-media{ height:auto !important; min-height:0 !important; aspect-ratio:4 / 4.2; }
      .yc-feelings{ grid-auto-flow:row !important; grid-template-columns:1fr !important; grid-template-rows:auto !important; }
      .yc-topics{ grid-template-columns:1fr !important; }
      .yc-blog-grid{ grid-template-columns:1fr 1fr !important; }
      .yc-desktop-nav{ display:none !important; }
      .yc-burger{ display:inline-flex !important; }
      .yc-blog-head{ grid-template-columns:1fr !important; }
      .yc-servicios-lead{ text-align:left !important; }
    }
    @media (max-width: 767px){
      .yc-form-2{ grid-template-columns:1fr !important; }
      .yc-blog-grid{ grid-template-columns:1fr !important; }
      .yc-footer-grid{ grid-template-columns:1fr 1fr !important; }
      .yc-audience{ grid-template-columns:1fr !important; }
      .yc-cta-row{ flex-direction:column; align-items:stretch !important; }
      .yc-srow{ flex-wrap:wrap; gap:10px !important; }
      .yc-srow > span:nth-child(2){ width:auto !important; }
    }
  
/* ---- Escudo frente al kit de Elementor y al tema Hello (en el prototipo no cambia nada) ----
   Especificidad pensada: gana a `.elementor-kit-N a` (0,1,1) y al reset del tema, y pierde
   contra las clases del diseño (0,4,0). */
#yc-root{background:var(--surface-cream)}
.yc-frag{color:var(--text-body);font-family:var(--font-body);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--leading-relaxed)}
.yc-frag.yc-frag a{color:var(--link)}
.yc-frag.yc-frag a:hover{color:var(--link-hover)}
.yc-frag.yc-frag label{line-height:inherit;vertical-align:baseline}
:where(.yc-frag) img{height:auto}

/* ---- Estados que en el diseño llevaba React (hover, pulsado, foco, marcado) ---- */
.ycds-button--primary:hover{background:var(--cta-bg-hover)!important;box-shadow:var(--shadow-md)!important}
.ycds-button--primary:active{background:var(--cta-bg-press)!important}
.ycds-button--secondary:hover,.ycds-button--secondary:active{background:var(--green-50)!important;border-color:var(--green-400)!important}
.ycds-button--ghost:hover,.ycds-button--ghost:active{background:var(--green-50)!important}
.ycds-button--light:hover{box-shadow:var(--shadow-md)!important}
.ycds-button:active{transform:translateY(1px)!important}
#contacto .ycds-button--light{background:var(--cream-50);border-color:var(--cream-50);color:var(--green-800)}
.ycds-input:focus,.ycds-textarea:focus{border-color:var(--brand-pine)!important;box-shadow:0 0 0 3px var(--focus-ring)!important}
.ycds-radio:hover{border-color:var(--green-300)!important}
.ycds-radio:has(input:checked){background:var(--green-50)!important;border-color:var(--brand-pine)!important;color:var(--green-800)!important}
.ycds-radio:has(input:focus-visible){box-shadow:var(--ring)}
.ycds-radio input:checked+span{border-color:var(--brand-pine)!important}
.ycds-radio input:checked+span>span{transform:scale(1)!important}

/* ---- Firma de la agencia en el pie: mismo tono que el resto de la franja ---- */
.yc-frag.yc-frag .yc-firma a{color:inherit;text-decoration:underline;text-underline-offset:.18em;text-decoration-color:rgba(183,198,187,.45)}
.yc-frag.yc-frag .yc-firma a:hover{color:var(--text-on-invert)}

/* ---- Menú móvil ---- */
.yc-burger>span{display:contents}
.yc-burger .yc-ico-close,.yc-burger[aria-expanded="true"] .yc-ico-menu{display:none}
.yc-burger[aria-expanded="true"] .yc-ico-close{display:contents}
#yc-mobile-nav[hidden]{display:none!important}
@media (min-width:1025px){#yc-mobile-nav{display:none!important}}

/* ---- El diseño desbordaba 19 px en móvil (etiqueta larga de Servicios y tarjetas de Contacto) ---- */
@media (max-width:767px){.ycds-tag{white-space:normal!important}.yc-2col>*{min-width:0}}

/* ---- Estilos en línea del diseño, pasados a clase ---- */
/* estados de hover del runtime */
.yc-h0:hover{color: var(--brand-pine) !important;}
.yc-h1:hover{color: var(--green-900) !important;}
.yc-h2:hover{opacity: 1 !important;}
/* estilos en línea del diseño, pasados a clase */
.yc-s1.yc-s1.yc-s1.yc-s1{position: sticky; top: 0px; z-index: 200; background: var(--cream-100); border-bottom: 1px solid var(--border-hairline); transition: box-shadow .28s var(--ease-out);}
.yc-s2.yc-s2.yc-s2.yc-s2{max-width: var(--container-wide); margin: 0px auto; padding: 13px var(--gutter); display: flex; align-items: center; justify-content: space-between; gap: 24px;}
.yc-s3.yc-s3.yc-s3.yc-s3{display: flex; align-items: center; gap: 10px;}
.yc-s4.yc-s4.yc-s4.yc-s4{height: 56px; width: auto; flex: 0 0 auto;}
.yc-s5.yc-s5.yc-s5.yc-s5{display: flex; flex-direction: column; gap: 2px;}
.yc-s6.yc-s6.yc-s6.yc-s6{font-family: var(--font-display); font-weight: 500; font-size: 1.12rem; line-height: 1.15; color: var(--text-heading); white-space: nowrap;}
.yc-s7.yc-s7.yc-s7.yc-s7{font-family: var(--font-body); font-size: 0.68rem; font-weight: 600; letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-brand); white-space: nowrap;}
.yc-s8.yc-s8.yc-s8.yc-s8{display: flex; align-items: center; gap: 28px;}
.yc-s9.yc-s9.yc-s9.yc-s9{font-family: var(--font-body); font-size: 0.95rem; font-weight: 600; color: var(--text-body);}
.yc-s10.yc-s10.yc-s10.yc-s10{display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem; padding: 0.5rem 1rem; font-family: var(--font-body); font-size: 0.9375rem; font-weight: 600; line-height: 1.1; letter-spacing: 0.005em; text-decoration: none; white-space: nowrap; border: 1px solid transparent; border-radius: var(--radius-pill); cursor: pointer; opacity: 1; transform: translateY(0px); transition: background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out); background: var(--cta-bg); color: var(--cta-text); box-shadow: var(--shadow-sm);}
.yc-s11.yc-s11.yc-s11.yc-s11{all: unset; cursor: pointer; display: none; width: 44px; height: 44px; align-items: center; justify-content: center; color: var(--text-heading); border-radius: var(--radius-sm);}
.yc-s12.yc-s12.yc-s12.yc-s12{stroke: currentcolor;}
.yc-s13.yc-s13.yc-s13.yc-s13{padding: 6px var(--gutter) 22px; background: var(--cream-100); border-bottom: 1px solid var(--border-hairline); display: flex; flex-direction: column; gap: 2px;}
.yc-s14.yc-s14.yc-s14.yc-s14{font-family: var(--font-body); font-weight: 600; color: var(--text-body); padding: 13px 2px; border-bottom: 1px solid var(--border-hairline);}
.yc-s15.yc-s15.yc-s15.yc-s15{font-family: var(--font-body); font-weight: 600; color: var(--text-body); padding: 13px 2px;}
.yc-s16.yc-s16.yc-s16.yc-s16{margin-top: 14px;}
.yc-s17.yc-s17.yc-s17.yc-s17{display: flex; width: 100%; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.75rem 1.5rem; font-family: var(--font-body); font-size: 1.0625rem; font-weight: 600; line-height: 1.1; letter-spacing: 0.005em; text-decoration: none; white-space: nowrap; border: 1px solid transparent; border-radius: var(--radius-pill); cursor: pointer; opacity: 1; transform: translateY(0px); transition: background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out); background: var(--cta-bg); color: var(--cta-text); box-shadow: var(--shadow-sm);}
.yc-s18.yc-s18.yc-s18.yc-s18{background: var(--surface-cream); position: relative; overflow: hidden;}
.yc-s19.yc-s19.yc-s19.yc-s19{max-width: var(--container-wide); margin: 0px auto; padding: clamp(40px, 2vw + 34px, 84px) var(--gutter) clamp(52px, 3vw + 34px, 92px); display: grid; grid-template-columns: 1.04fr 0.96fr; gap: clamp(32px, 4vw, 76px); align-items: stretch; position: relative;}
.yc-s20.yc-s20.yc-s20.yc-s20{display: flex; flex-direction: column; gap: 20px; max-width: 37rem;}
.yc-s21.yc-s21.yc-s21.yc-s21{margin: 0px; font-family: var(--font-display); font-weight: 500; font-size: var(--fs-display); line-height: var(--leading-tight); letter-spacing: var(--tracking-tight); color: var(--text-heading); text-wrap: balance;}
.yc-s22.yc-s22.yc-s22.yc-s22{font-style: italic; color: var(--brand-pine);}
.yc-s23.yc-s23.yc-s23.yc-s23{margin: 0px; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-body); max-width: 46ch;}
.yc-s24.yc-s24.yc-s24.yc-s24{position: relative; display: flex; flex-direction: column; gap: 16px; overflow: hidden;}
.yc-s25.yc-s25.yc-s25.yc-s25{margin: 0px; font-size: var(--fs-body); line-height: var(--leading-relaxed); color: var(--text-muted); max-width: 52ch;}
.yc-s26.yc-s26.yc-s26.yc-s26{all: unset; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; font-family: var(--font-body); font-size: var(--fs-sm); font-weight: 700; letter-spacing: 0.01em; color: var(--brand-pine); padding: 6px 2px; border-radius: var(--radius-sm);}
.yc-s27.yc-s27.yc-s27.yc-s27{stroke: currentcolor; transition: transform .4s var(--ease-out);}
.yc-s28.yc-s28.yc-s28.yc-s28{display: flex; flex-wrap: nowrap; align-items: center; gap: 12px; margin-top: 6px; white-space: nowrap;}
.yc-s29.yc-s29.yc-s29.yc-s29{display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.75rem 1.5rem; font-family: var(--font-body); font-size: 1.0625rem; font-weight: 600; line-height: 1.1; letter-spacing: 0.005em; text-decoration: none; white-space: nowrap; border: 1px solid transparent; border-radius: var(--radius-pill); cursor: pointer; opacity: 1; transform: translateY(0px); transition: background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out); background: var(--cta-bg); color: var(--cta-text); box-shadow: var(--shadow-sm);}
.yc-s30.yc-s30.yc-s30.yc-s30{display: block; flex: 0 0 auto;}
.yc-s31.yc-s31.yc-s31.yc-s31{display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.75rem 1.5rem; font-family: var(--font-body); font-size: 1.0625rem; font-weight: 600; line-height: 1.1; letter-spacing: 0.005em; text-decoration: none; white-space: nowrap; border-width: 1px; border-style: solid; border-color: var(--border-sage); border-image: none; border-radius: var(--radius-pill); cursor: pointer; opacity: 1; transform: translateY(0px); transition: background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out); background: transparent; color: var(--brand-forest); box-shadow: none;}
.yc-s32.yc-s32.yc-s32.yc-s32{display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin-top: 8px; color: var(--text-subtle); font-size: var(--fs-sm);}
.yc-s33.yc-s33.yc-s33.yc-s33{display: inline-flex; align-items: center; gap: 7px;}
.yc-s34.yc-s34.yc-s34.yc-s34{stroke: var(--brand-sage);}
.yc-s35.yc-s35.yc-s35.yc-s35{opacity: 0.4;}
.yc-s36.yc-s36.yc-s36.yc-s36{position: relative; width: 100%; max-width: 540px; height: 100%; margin-left: auto;}
.yc-s37.yc-s37.yc-s37.yc-s37{position: absolute; right: -5%; top: -6%; width: 74%; height: 58%; background: var(--green-50); border-radius: var(--radius-xl); opacity: var(--yc-organic,1);}
.yc-s38.yc-s38.yc-s38.yc-s38{position: absolute; left: -9%; bottom: -6%; height: 88%; width: auto; opacity: var(--yc-organic,1); pointer-events: none;}
.yc-s39.yc-s39.yc-s39.yc-s39{stroke: var(--brand-sage); fill: none; opacity: 0.55;}
.yc-s40.yc-s40.yc-s40.yc-s40{position: relative; margin: 0px; border-radius: 230px 230px var(--radius-lg) var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-lg); width: 100%; height: 100%; min-height: 540px;}
.yc-s41.yc-s41.yc-s41.yc-s41{width: 100%; height: 100%; object-fit: cover; object-position: 62% 18%;}
.yc-s42.yc-s42.yc-s42.yc-s42{background: var(--surface-sage);}
.yc-s43.yc-s43.yc-s43.yc-s43{max-width: var(--container); margin: 0px auto; padding: var(--section-y) var(--gutter);}
.yc-s44.yc-s44.yc-s44.yc-s44{margin-bottom: clamp(30px, 3vw, 48px);}
.yc-s45.yc-s45.yc-s45.yc-s45{display: flex; flex-direction: column; gap: 0.9rem; align-items: flex-start; text-align: left;}
.yc-s46.yc-s46.yc-s46.yc-s46{display: inline-flex; align-items: center; gap: 0.55rem; margin: 0px; font-family: var(--font-body); font-size: var(--fs-eyebrow); font-weight: 600; letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-brand);}
.yc-s47.yc-s47.yc-s47.yc-s47{margin: 0px; font-family: var(--font-display); font-weight: 500; font-size: var(--fs-h1); line-height: var(--leading-snug); letter-spacing: var(--tracking-tight); color: var(--text-heading); max-width: 42ch; text-wrap: balance;}
.yc-s48.yc-s48.yc-s48.yc-s48{display: flex; flex-direction: column; gap: 12px; margin-top: 18px; max-width: 82ch;}
.yc-s49.yc-s49.yc-s49.yc-s49{margin: 0px; font-size: var(--fs-body); line-height: var(--leading-normal); color: var(--text-body);}
.yc-s50.yc-s50.yc-s50.yc-s50{margin: 0px; font-size: var(--fs-body); line-height: var(--leading-normal); color: var(--text-muted);}
.yc-s51.yc-s51.yc-s51.yc-s51{display: grid; grid-template-columns: 1fr 1fr; gap: 22px; align-items: stretch;}
.yc-s52.yc-s52.yc-s52.yc-s52{display: block; padding: 2.5rem; border-radius: var(--radius-lg); text-decoration: none; box-shadow: var(--shadow-none); transform: translateY(0px); transition: transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out); background: var(--surface-paper); color: var(--text-body); border: 1px solid var(--border-sage);}
.yc-s53.yc-s53.yc-s53.yc-s53{display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: var(--radius-pill); background: var(--green-50); color: var(--brand-pine); margin-bottom: 1.15rem;}
.yc-s54.yc-s54.yc-s54.yc-s54{margin: 0px 0px 0.5rem; font-family: var(--font-display); font-weight: 500; font-size: var(--fs-h3); line-height: var(--leading-snug); color: var(--text-heading);}
.yc-s55.yc-s55.yc-s55.yc-s55{font-size: var(--fs-body); line-height: var(--leading-relaxed); color: var(--text-muted);}
.yc-s56.yc-s56.yc-s56.yc-s56{margin: 0px 0px 12px;}
.yc-s57.yc-s57.yc-s57.yc-s57{margin: 0px 0px 10px; font-family: var(--font-display); font-style: italic; color: var(--text-heading); font-size: 1.12rem; line-height: 1.5;}
.yc-s58.yc-s58.yc-s58.yc-s58{margin: 0px;}
.yc-s59.yc-s59.yc-s59.yc-s59{background: var(--surface-paper);}
.yc-s60.yc-s60.yc-s60.yc-s60{display: grid; grid-template-columns: 1.02fr 0.98fr; gap: clamp(24px, 4vw, 64px); align-items: end; margin-bottom: 40px;}
.yc-s61.yc-s61.yc-s61.yc-s61{margin: 0px; text-align: right; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-muted);}
.yc-s62.yc-s62.yc-s62.yc-s62{display: block; padding: 2.5rem; border-radius: var(--radius-lg); text-decoration: none; box-shadow: var(--shadow-none); transform: translateY(0px); transition: transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out); background: var(--surface-sage); color: var(--text-body); border: 1px solid var(--green-100);}
.yc-s63.yc-s63.yc-s63.yc-s63{display: flex; flex-wrap: wrap; gap: 10px;}
.yc-s64.yc-s64.yc-s64.yc-s64{display: inline-flex; align-items: center; gap: 0.4rem; padding: 0.32rem 0.8rem; font-family: var(--font-body); font-size: 0.8125rem; font-weight: 600; line-height: 1.3; letter-spacing: 0.01em; border-radius: var(--radius-pill); text-decoration: none; white-space: nowrap; transition: background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out); background: transparent; color: var(--brand-pine); border: 1px solid var(--border-sage);}
.yc-s65.yc-s65.yc-s65.yc-s65{margin: clamp(40px, 3.5vw, 60px) 0px 20px; display: flex; align-items: center; gap: 14px;}
.yc-s66.yc-s66.yc-s66.yc-s66{display: inline-flex; align-items: center; gap: 10px; margin: 0px; font-family: var(--font-body); font-size: var(--fs-eyebrow); font-weight: 600; letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-brand); flex: 0 0 auto;}
.yc-s67.yc-s67.yc-s67.yc-s67{stroke: var(--text-brand);}
.yc-s68.yc-s68.yc-s68.yc-s68{flex: 1 1 0%; height: 1px; background: var(--border-sage);}
.yc-s69.yc-s69.yc-s69.yc-s69{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;}
.yc-s70.yc-s70.yc-s70.yc-s70{display: grid; grid-template-columns: 0.82fr 1.18fr; gap: clamp(28px, 3vw, 56px); align-items: start;}
.yc-s71.yc-s71.yc-s71.yc-s71{display: grid; grid-template-columns: 1fr 1fr; gap: 14px;}
.yc-s72.yc-s72.yc-s72.yc-s72{display: flex; gap: 13px; align-items: flex-start; padding: 20px; background: var(--surface-cream); border: 1px solid var(--border-hairline); border-radius: var(--radius-md);}
.yc-s73.yc-s73.yc-s73.yc-s73{stroke: var(--brand-pine); flex: 0 0 auto; margin-top: 2px;}
.yc-s74.yc-s74.yc-s74.yc-s74{font-size: var(--fs-body); line-height: var(--leading-normal); color: var(--text-body);}
.yc-s75.yc-s75.yc-s75.yc-s75{margin: 20px 0px 0px; max-width: 62ch; font-size: var(--fs-sm); line-height: var(--leading-relaxed); color: var(--text-subtle);}
.yc-s76.yc-s76.yc-s76.yc-s76{display: grid; grid-template-columns: 1.05fr 0.95fr; gap: clamp(24px, 4vw, 64px); align-items: end; margin-bottom: clamp(32px, 3vw, 52px);}
.yc-s77.yc-s77.yc-s77.yc-s77{margin: 0px; max-width: 46ch; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-muted);}
.yc-s78.yc-s78.yc-s78.yc-s78{list-style: none; margin: 0px; padding: 0px; display: grid; grid-auto-flow: column; grid-template-rows: repeat(3, auto); grid-template-columns: 1fr 1fr; gap: 12px clamp(24px, 3vw, 48px);}
.yc-s79.yc-s79.yc-s79.yc-s79{display: inline-flex; gap: 10px; align-items: center; padding: 11px 18px 11px 15px; background: var(--cream-50); border: 1px solid var(--border-sage); border-radius: var(--radius-pill);}
.yc-s80.yc-s80.yc-s80.yc-s80{stroke: var(--brand-sage); flex: 0 0 auto;}
.yc-s81.yc-s81.yc-s81.yc-s81{font-size: var(--fs-body); line-height: var(--leading-relaxed); color: var(--text-body);}
.yc-s82.yc-s82.yc-s82.yc-s82{margin-top: clamp(36px, 3vw, 56px); padding-left: clamp(20px, 2vw, 30px); border-left: 2px solid var(--border-sage);}
.yc-s83.yc-s83.yc-s83.yc-s83{margin: 0px; font-family: var(--font-display); font-style: italic; font-size: var(--fs-h3); line-height: 1.5; color: var(--text-heading);}
.yc-s84.yc-s84.yc-s84.yc-s84{background: var(--surface-cream);}
.yc-s85.yc-s85.yc-s85.yc-s85{display: grid; grid-template-columns: 0.95fr 1.05fr; gap: clamp(28px, 4vw, 64px); align-items: stretch;}
.yc-s86.yc-s86.yc-s86.yc-s86{margin: 0px; border-radius: var(--radius-lg) var(--radius-lg) 180px 180px; overflow: hidden; box-shadow: var(--shadow-md); height: 100%; min-height: 440px;}
.yc-s87.yc-s87.yc-s87.yc-s87{width: 100%; height: 100%; object-fit: cover; object-position: 40% 40%;}
.yc-s88.yc-s88.yc-s88.yc-s88{margin-top: 22px; display: flex; flex-direction: column; gap: 16px; max-width: 52ch;}
.yc-s89.yc-s89.yc-s89.yc-s89{margin: 0px; font-size: var(--fs-body); line-height: var(--leading-relaxed); color: var(--text-muted);}
.yc-s90.yc-s90.yc-s90.yc-s90{list-style: none; margin: 24px 0px 0px; padding: 0px; display: flex; flex-direction: column; gap: 11px;}
.yc-s91.yc-s91.yc-s91.yc-s91{display: flex; align-items: center; gap: 11px; font-size: var(--fs-sm); line-height: var(--leading-normal); color: var(--text-body);}
.yc-s92.yc-s92.yc-s92.yc-s92{stroke: var(--brand-pine); flex: 0 0 auto;}
.yc-s93.yc-s93.yc-s93.yc-s93{margin: 26px 0px; padding-left: 20px; border-left: 2px solid var(--border-sage);}
.yc-s94.yc-s94.yc-s94.yc-s94{margin: 0px; display: flex; flex-direction: column; gap: 1rem; align-items: flex-start; text-align: left;}
.yc-s95.yc-s95.yc-s95.yc-s95{display: block; flex: 0 0 auto; opacity: 0.9;}
.yc-s96.yc-s96.yc-s96.yc-s96{margin: 0px; font-family: var(--font-display); font-style: italic; font-weight: 400; font-size: clamp(1.35rem, 1.05rem + 1vw, 1.8rem); line-height: 1.36; letter-spacing: -0.005em; color: var(--text-heading); max-width: 24ch; text-wrap: balance;}
.yc-s97.yc-s97.yc-s97.yc-s97{background: var(--surface-invert); position: relative; overflow: hidden;}
.yc-s98.yc-s98.yc-s98.yc-s98{position: absolute; right: clamp(16px, 4vw, 72px); bottom: -18px; width: min(42vw, 470px); opacity: var(--yc-organic,1); filter: brightness(0) invert(1); pointer-events: none; mix-blend-mode: soft-light;}
.yc-s99.yc-s99.yc-s99.yc-s99{max-width: var(--container-narrow); margin: 0px auto; padding: clamp(64px, 5vw + 40px, 120px) var(--gutter); position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 28px;}
.yc-s100.yc-s100.yc-s100.yc-s100{display: inline-flex; align-items: center; gap: 10px; margin: 0px; font-family: var(--font-body); font-size: var(--fs-eyebrow); font-weight: 600; letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--brand-sage);}
.yc-s101.yc-s101.yc-s101.yc-s101{margin: 0px; max-width: 58ch; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-on-invert-muted);}
.yc-s102.yc-s102.yc-s102.yc-s102{margin: 8px 0px; max-width: none; font-family: var(--font-display); font-style: italic; font-weight: 400; font-size: clamp(1.9rem, 1.2rem + 2.3vw, 2.9rem); line-height: 1.28; letter-spacing: -0.01em; color: var(--cream-50);}
.yc-s103.yc-s103.yc-s103.yc-s103{margin: 0px; max-width: 56ch; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-on-invert-muted);}
.yc-s104.yc-s104.yc-s104.yc-s104{font-style: italic; color: var(--cream-50);}
.yc-s105.yc-s105.yc-s105.yc-s105{display: grid; grid-template-columns: 0.9fr 1.1fr; gap: clamp(28px, 4vw, 60px); align-items: start;}
.yc-s106.yc-s106.yc-s106.yc-s106{margin: 0px; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-muted); max-width: 46ch;}
.yc-s107.yc-s107.yc-s107.yc-s107{margin: 22px 0px 0px; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-body);}
.yc-s108.yc-s108.yc-s108.yc-s108{list-style: none; margin: 0px; padding: 0px; display: flex; flex-direction: column;}
.yc-s109.yc-s109.yc-s109.yc-s109{display: flex; gap: 15px; align-items: flex-start; padding: 15px 0px; border-bottom: 1px solid var(--border-hairline);}
.yc-s110.yc-s110.yc-s110.yc-s110{stroke: var(--brand-sage); flex: 0 0 auto; margin-top: 2px;}
.yc-s111.yc-s111.yc-s111.yc-s111{font-size: var(--fs-lead); line-height: var(--leading-snug); color: var(--text-heading);}
.yc-s112.yc-s112.yc-s112.yc-s112{display: flex; gap: 15px; align-items: flex-start; padding: 15px 0px;}
.yc-s113.yc-s113.yc-s113.yc-s113{display: grid; grid-template-columns: 0.8fr 1.2fr; gap: clamp(28px, 4vw, 56px); align-items: center;}
.yc-s114.yc-s114.yc-s114.yc-s114{height: 24px;}
.yc-s115.yc-s115.yc-s115.yc-s115{display: block; padding: 2.5rem; border-radius: var(--radius-lg); text-decoration: none; box-shadow: var(--shadow-none); transform: translateY(0px); transition: transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out); background: var(--surface-cream); color: var(--text-body); border: 1px solid var(--border-hairline);}
.yc-s116.yc-s116.yc-s116.yc-s116{display: flex; flex-direction: column;}
.yc-s117.yc-s117.yc-s117.yc-s117{display: flex; align-items: center; gap: 16px; padding: 16px 0px; border-bottom: 1px solid var(--border-hairline);}
.yc-s118.yc-s118.yc-s118.yc-s118{display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: var(--radius-pill); background: var(--surface-paper); flex: 0 0 auto;}
.yc-s119.yc-s119.yc-s119.yc-s119{stroke: var(--brand-pine);}
.yc-s120.yc-s120.yc-s120.yc-s120{font-size: var(--fs-sm); color: var(--text-muted); width: 9.5rem; flex: 0 0 auto;}
.yc-s121.yc-s121.yc-s121.yc-s121{font-size: var(--fs-lead); font-weight: 600; color: var(--text-heading); font-family: var(--font-display);}
.yc-s122.yc-s122.yc-s122.yc-s122{display: flex; align-items: center; gap: 16px; padding: 16px 0px;}
.yc-s123.yc-s123.yc-s123.yc-s123{max-width: var(--container-narrow); margin: 0px auto; padding: var(--section-y-tight) var(--gutter); text-align: center; display: flex; flex-direction: column; align-items: center; gap: 22px;}
.yc-s124.yc-s124.yc-s124.yc-s124{margin: 0px; font-family: var(--font-display); font-weight: 500; font-size: var(--fs-h1); line-height: var(--leading-snug); color: var(--text-heading); max-width: 22ch;}
.yc-s125.yc-s125.yc-s125.yc-s125{margin: 0px; max-width: 54ch; font-size: var(--fs-lead); line-height: var(--leading-relaxed); color: var(--text-muted);}
.yc-s126.yc-s126.yc-s126.yc-s126{margin: 2px 0px 6px; font-family: var(--font-display); font-style: italic; font-size: var(--fs-h3); color: var(--text-heading);}
.yc-s127.yc-s127.yc-s127.yc-s127{display: inline-flex; align-items: center; justify-content: center; gap: 0.6rem; padding: 0.95rem 2rem; font-family: var(--font-body); font-size: 1.125rem; font-weight: 600; line-height: 1.1; letter-spacing: 0.005em; text-decoration: none; white-space: nowrap; border: 1px solid transparent; border-radius: var(--radius-pill); cursor: pointer; opacity: 1; transform: translateY(0px); transition: background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out); background: var(--cta-bg); color: var(--cta-text); box-shadow: var(--shadow-sm);}
.yc-s128.yc-s128.yc-s128.yc-s128{display: grid; grid-template-columns: 0.82fr 1.18fr; gap: 20px; align-items: stretch;}
.yc-s129.yc-s129.yc-s129.yc-s129{display: block; padding: 2.5rem; border-radius: var(--radius-lg); text-decoration: none; box-shadow: var(--shadow-none); transform: translateY(0px); transition: transform var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out); background: var(--surface-invert); color: var(--text-on-invert); border: 1px solid transparent;}
.yc-s130.yc-s130.yc-s130.yc-s130{display: flex; flex-direction: column; gap: 16px; height: 100%;}
.yc-s131.yc-s131.yc-s131.yc-s131{display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: var(--radius-pill); background: rgba(255, 255, 255, 0.1);}
.yc-s132.yc-s132.yc-s132.yc-s132{stroke: var(--cream-50);}
.yc-s133.yc-s133.yc-s133.yc-s133{margin: 0px; font-family: var(--font-display); font-weight: 500; font-size: var(--fs-h2); color: var(--cream-50);}
.yc-s134.yc-s134.yc-s134.yc-s134{margin: 0px; font-size: var(--fs-body); line-height: var(--leading-relaxed); color: var(--text-on-invert-muted);}
.yc-s135.yc-s135.yc-s135.yc-s135{display: flex; align-items: center; gap: 8px; font-size: var(--fs-sm); color: var(--brand-sage); margin-top: 2px;}
.yc-s136.yc-s136.yc-s136.yc-s136{margin-top: auto; padding-top: 8px;}
.yc-s137.yc-s137.yc-s137.yc-s137{display: flex; flex-direction: column; gap: 18px;}
.yc-s138.yc-s138.yc-s138.yc-s138{margin: 0px; font-size: var(--fs-sm); line-height: var(--leading-relaxed); color: var(--text-muted);}
.yc-s139.yc-s139.yc-s139.yc-s139{display: grid; grid-template-columns: 1fr 1fr; gap: 16px;}
.yc-s140.yc-s140.yc-s140.yc-s140{display: flex; flex-direction: column; gap: 0.4rem;}
.yc-s141.yc-s141.yc-s141.yc-s141{font-family: var(--font-body); font-size: var(--fs-sm); font-weight: 600; color: var(--text-heading);}
.yc-s142.yc-s142.yc-s142.yc-s142{font-size: var(--fs-xs); color: var(--text-subtle); margin-top: -0.1rem;}
.yc-s143.yc-s143.yc-s143.yc-s143{width: 100%; padding: 0.72rem 0.95rem; font-family: var(--font-body); font-size: var(--fs-body); color: var(--text-body); background: var(--surface-paper); border: 1px solid var(--border-sage); border-radius: var(--radius-sm); outline: none; box-shadow: none; transition: border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);}
.yc-s144.yc-s144.yc-s144.yc-s144{width: 100%; padding: 0.72rem 0.95rem; font-family: var(--font-body); font-size: var(--fs-body); line-height: var(--leading-normal); color: var(--text-body); background: var(--surface-paper); border: 1px solid var(--border-sage); border-radius: var(--radius-sm); outline: none; resize: vertical; min-height: 5.5rem; box-shadow: none; transition: border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);}
.yc-s145.yc-s145.yc-s145.yc-s145{display: flex; gap: 10px; flex-wrap: wrap;}
.yc-s146.yc-s146.yc-s146.yc-s146{display: inline-flex; align-items: center; gap: 0.6rem; padding: 0.6rem 1rem; border-radius: var(--radius-pill); cursor: pointer; user-select: none; background: var(--surface-paper); border: 1px solid var(--border-sage); color: var(--text-body); font-family: var(--font-body); font-size: var(--fs-sm); font-weight: 600; transition: background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);}
.yc-s147.yc-s147.yc-s147.yc-s147{position: absolute; opacity: 0; width: 1px; height: 1px;}
.yc-s148.yc-s148.yc-s148.yc-s148{width: 1.05rem; height: 1.05rem; border-radius: 50%; border: 2px solid var(--border-strong); display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;}
.yc-s149.yc-s149.yc-s149.yc-s149{width: 0.5rem; height: 0.5rem; border-radius: 50%; background: var(--brand-pine); transform: scale(0); transition: transform var(--dur-fast) var(--ease-out);}
.yc-s150.yc-s150.yc-s150.yc-s150{display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 2px;}
.yc-s151.yc-s151.yc-s151.yc-s151{margin: 4px 0px 0px; font-size: var(--fs-xs); line-height: var(--leading-normal); color: var(--text-subtle);}
.yc-s152.yc-s152.yc-s152.yc-s152{color: var(--text-muted); font-weight: 700;}
.yc-s153.yc-s153.yc-s153.yc-s153{background: var(--surface-invert-deep); color: var(--cream-100);}
.yc-s154.yc-s154.yc-s154.yc-s154{max-width: var(--container-wide); margin: 0px auto; padding: clamp(44px, 3vw + 30px, 68px) var(--gutter) 30px;}
.yc-s155.yc-s155.yc-s155.yc-s155{display: grid; grid-template-columns: 1.7fr 1fr 1fr 1fr; gap: 40px;}
.yc-s156.yc-s156.yc-s156.yc-s156{max-width: 27rem;}
.yc-s157.yc-s157.yc-s157.yc-s157{height: 62px; width: auto; filter: brightness(0) invert(1); opacity: 0.9; margin-bottom: 16px;}
.yc-s158.yc-s158.yc-s158.yc-s158{font-family: var(--font-display); font-size: 1.25rem; color: var(--cream-50); margin-bottom: 8px;}
.yc-s159.yc-s159.yc-s159.yc-s159{margin: 0px; font-size: 0.95rem; line-height: var(--leading-relaxed); color: var(--text-on-invert-muted);}
.yc-s160.yc-s160.yc-s160.yc-s160{display: flex; flex-direction: column; gap: 11px;}
.yc-s161.yc-s161.yc-s161.yc-s161{font-size: var(--fs-eyebrow); letter-spacing: var(--tracking-eyebrow); text-transform: uppercase; color: var(--text-on-invert-muted); margin-bottom: 3px;}
.yc-s162.yc-s162.yc-s162.yc-s162{color: var(--cream-100); font-size: 0.95rem; opacity: 0.85;}
.yc-s163.yc-s163.yc-s163.yc-s163{display: flex; align-items: center; gap: 8px; font-size: 0.95rem; color: var(--cream-100); opacity: 0.85;}
.yc-s164.yc-s164.yc-s164.yc-s164{margin-top: 44px; padding-top: 22px; border-top: 1px solid var(--border-on-invert); display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; align-items: center;}
.yc-s165.yc-s165.yc-s165.yc-s165{font-size: 0.85rem; color: var(--text-on-invert-muted);}

/* ==== Piezas del kit de la agencia con la marca de Yolanda (se añade tras el CSS del diseño) ==== */

/* ---- Complianz: sus .elementor-kit-10es de color no aceptan valores por código; se pisan sus variables ----
   Aceptar y Denegar idénticos (criterio AEPD); Preferencias en contorno. */
html:root{
  --cmplz_banner_background_color:#FBFAF6;
  --cmplz_banner_border_color:#E2DBCC;
  --cmplz_banner_border_width:1px 1px 1px 1px;
  --cmplz_banner_border_radius:16px 16px 16px 16px;
  --cmplz_text_color:#34433B;
  --cmplz_hyperlink_color:#375745;
  --cmplz_button_accept_background_color:#2C4639;
  --cmplz_button_accept_border_color:#2C4639;
  --cmplz_button_accept_text_color:#FBFAF6;
  --cmplz_button_deny_background_color:#2C4639;
  --cmplz_button_deny_border_color:#2C4639;
  --cmplz_button_deny_text_color:#FBFAF6;
  --cmplz_button_settings_background_color:#FFFFFF;
  --cmplz_button_settings_border_color:#C6D3C9;
  --cmplz_button_settings_text_color:#2C4639;
  --cmplz_slider_active_color:#426353;
  --cmplz_slider_inactive_color:#C6D3C9;
  --cmplz_slider_bullet_color:#FFFFFF;
  --cmplz_category_header_always_active_color:#426353;
}
.cmplz-cookiebanner,#cmplz-manage-consent .cmplz-manage-consent{font-family:"Nunito",ui-sans-serif,system-ui,sans-serif}
.cmplz-cookiebanner .cmplz-title{font-family:"Lora",Georgia,serif;font-weight:500;color:#2C4639}
.cmplz-cookiebanner .cmplz-btn{font-weight:600}
.cmplz-cookiebanner .cmplz-btn:hover{filter:brightness(1.12)}
.cmplz-cookiebanner .cmplz-logo img{max-height:56px;width:auto}
/* Complianz cachea el banner sin el logo del sitio aunque lo tenga configurado: el símbolo va por CSS */
.cmplz-cookiebanner .cmplz-logo:empty{display:block;width:44px;height:44px;background:url("/wp-content/uploads/2026/09/yolanda-carrio-icono-300x300.png") center/contain no-repeat}

/* ---- WhatsApp Chat MPP: tipografías de marca y sin rebote en el botón flotante ---- */
.wcp-global-wrapper,.wcp-global-wrapper input,.wcp-global-wrapper select,.wcp-global-wrapper textarea,.wcp-global-wrapper button{font-family:"Nunito",ui-sans-serif,system-ui,sans-serif}
.wcp-global-wrapper #wcpMainTitle{font-family:"Lora",Georgia,serif;font-weight:500}
#wcpTrigger.wcp-float{background-color:#2C4639!important;transition:transform .24s cubic-bezier(.22,1,.36,1),background-color .24s!important}
#wcpTrigger.wcp-float:hover{background-color:#375745!important}
#wcpTrigger.wcp-float:hover{transform:translateY(-2px)!important}
/* Mientras el banner de cookies está abierto, el botón flotante tapaba «Ver preferencias» en móvil */
body:has(.cmplz-cookiebanner.cmplz-show) .wcp-global-wrapper{display:none}

/* ---- Páginas del tema (legales, blog): encabezados en Lora como el diseño; la portada y los
   fragmentos del diseño (.yc-frag) quedan fuera ---- */
:is(h1,h2,h3,h4,h5,h6):not(.yc-frag *):not(.elementor-heading-title){font-family:"Lora",Georgia,serif;font-weight:500;color:#2C4639;letter-spacing:-.01em}

/* ---- Cabecera del Theme Builder fija con CSS: el «sticky» de Elementor clona el elemento y
   duplica los id del menú (el JS del diseño agarraba la copia) ---- */
/* El «CSS adicional» del blueprint (wp-custom-css) pone html,body{overflow-x:hidden!important}: eso
   los vuelve contenedores de scroll y anula cualquier sticky. `clip` recorta igual sin crear
   contenedor; `html:root`/`body[class]` ganan por especificidad aunque aquel vaya después. */
html:root,body[class]{overflow-x:clip!important}
.elementor-location-header{position:sticky;top:0;z-index:200}
body.admin-bar .elementor-location-header{top:32px}
@media (max-width:782px){body.admin-bar .elementor-location-header{top:46px}}/* End custom CSS */