.home-header{ background:var(--bg-main); border-bottom:1px solid #ebe6dc99; width:100%; position:relative}
.home-header__container{ max-width:var(--container-max); justify-content:space-between; align-items:center; margin:0 auto; padding:1.25rem 1.5rem; display:flex}
.home-header__brand{ color:var(--text-dark); align-items:center; gap:.75rem; text-decoration:none; display:flex}
.home-header__logo-icon{ color:#7a4b38; flex-shrink:0; width:26px; height:26px; transition:color .2s,transform .2s}
.home-header__brand:hover .home-header__logo-icon{ color:var(--color-terracotta,#9c4528); transform:rotate(-6deg)scale(1.08)}
.home-header__logo-text{ font-family:var(--font-serif); letter-spacing:-.01em; font-size:1.35rem; font-weight:700}
.home-header__logo-accent{ color:#7a4b38; transition:color .2s}
.home-header__brand:hover .home-header__logo-accent{ color:var(--color-terracotta,#9c4528)}
.home-header__nav{ align-items:center; gap:2.25rem; display:flex}
.home-header__nav-list{ align-items:center; gap:2rem; margin:0; padding:0; list-style:none; display:flex}
.home-header__nav-link{ font-family:var(--font-sans); color:var(--text-dark); font-size:.95rem; font-weight:500; text-decoration:none; transition:color .2s}
.home-header__nav-link:hover{ color:var(--color-terracotta)}
.home-header__cta{ background-color:var(--color-terracotta); color:#fff; font-family:var(--font-sans); border-radius:var(--radius-sm); justify-content:center; align-items:center; padding:.65rem 1.4rem; font-size:.9rem; font-weight:600; text-decoration:none; transition:background-color .2s,transform .15s; display:inline-flex}
.home-header__cta:hover{ background-color:var(--color-terracotta-hover); transform:translateY(-1px)}
.home-header__cta-desktop{ display:inline}
.home-header__cta-mobile{ display:none}
@media (max-width:900px){ .home-header__container{ gap:1rem}
.home-header__nav{ gap:1rem}
.home-header__nav-list{ display:none}
}
@media (max-width:768px){ .home-header__container{ gap:.75rem; padding:.85rem 1rem}
.home-header__brand{ gap:.5rem; min-width:0}
.home-header__logo-icon{ width:22px; height:22px}
.home-header__logo-text{ font-size:clamp(.95rem, 3.8vw, 1.12rem)}
.home-header__nav-list{ display:none}
.home-header__cta{ display:inline-flex; white-space:nowrap; flex-shrink:0; padding:.48rem .95rem; font-size:.82rem; font-weight:700; letter-spacing:.02em}
.home-header__cta-desktop{ display:none}
.home-header__cta-mobile{ display:inline}
.logo-tld{ display:none}
}
.home-footer{ background-color:var(--bg-main); border-top:1px solid var(--border-subtle); padding:4.5rem 1.5rem 2.5rem}
.home-footer__container{ max-width:var(--container-max); margin:0 auto}
.home-footer__grid{ grid-template-columns:1.3fr 1fr 1fr .8fr; gap:3rem; margin-bottom:3.5rem; display:grid}
.home-footer__brand-col{ flex-direction:column; display:flex}
.home-footer__logo{ color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:1.25rem; text-decoration:none; display:flex}
.home-footer__logo-icon{ color:#7a4b38; flex-shrink:0; width:28px; height:28px}
.home-footer__logo-text{ font-family:var(--font-serif); color:var(--text-dark); font-size:1.4rem; font-weight:700}
.home-footer__logo-accent{ color:#7a4b38}
.home-footer__tagline{ font-family:var(--font-sans); color:var(--text-muted); max-width:340px; margin-bottom:1.75rem; font-size:.95rem; line-height:1.6}
.home-footer__col-title{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:1.25rem; font-size:1.15rem; font-weight:700}
.home-footer__links-list{ flex-direction:column; gap:.75rem; margin:0; padding:0; list-style:none; display:flex}
.home-footer__link{ font-family:var(--font-sans); color:var(--text-muted); font-size:.92rem; text-decoration:none; transition:color .2s}
.home-footer__link:hover{ color:var(--color-terracotta)}
.home-footer__bottom-bar{ border-top:1px solid var(--border-subtle); text-align:center; padding-top:2rem}
.home-footer__bottom-text{ font-family:var(--font-sans); letter-spacing:.2em; text-transform:uppercase; color:var(--text-muted); font-size:.8rem; font-weight:700}
@media (width<=960px){ .home-footer__grid{ grid-template-columns:1fr 1fr}
}
@media (width<=600px){ .home-footer__grid{ grid-template-columns:1fr}
}
.home-hero{ background-color:var(--bg-main); padding:3.5rem 1.5rem 4.5rem; position:relative; overflow:hidden}
.home-hero__container{ max-width:var(--container-max); grid-template-columns:1.1fr .9fr; align-items:center; gap:3.5rem; margin:0 auto; display:grid}
.home-hero__content{ flex-direction:column; display:flex}
.home-hero__eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:1.5rem; font-size:.78rem; font-weight:700; display:inline-flex}
.home-hero__eyebrow:before{ content:""; background-color:var(--text-dark); width:28px; height:2px; display:inline-block}
.home-hero__title{ font-family:var(--font-serif); letter-spacing:-.025em; color:var(--text-dark); margin-bottom:1.75rem; font-size:clamp(2.6rem,4.4vw,3.8rem); font-weight:800; line-height:1.06}
.home-hero__description{ font-family:var(--font-sans); color:var(--text-muted); max-width:540px; margin-bottom:2.25rem; font-size:1.05rem; line-height:1.65}
.home-hero__actions{ flex-wrap:wrap; align-items:center; gap:2rem; margin-bottom:2.75rem; display:flex}
.home-hero__btn-primary{ background-color:var(--color-terracotta); color:#fff; font-family:var(--font-sans); border-radius:var(--radius-sm); align-items:center; gap:.6rem; padding:.9rem 1.8rem; font-size:.98rem; font-weight:600; text-decoration:none; transition:background-color .2s,transform .15s; display:inline-flex; box-shadow:0 4px 14px #9c452840}
.home-hero__btn-primary:hover{ background-color:var(--color-terracotta-hover); transform:translateY(-2px)}
.home-hero__link-secondary{ font-family:var(--font-sans); color:var(--text-dark); text-underline-offset:4px; font-size:.98rem; font-weight:600; text-decoration:underline; transition:color .2s}
.home-hero__link-secondary:hover{ color:var(--color-terracotta)}
.home-hero__sub-box{ border-top:1px solid var(--border-subtle); margin-bottom:1.75rem; padding-top:1.5rem}
.home-hero__sub-eyebrow{ font-family:var(--font-sans); letter-spacing:.18em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.6rem; margin-bottom:.75rem; font-size:.74rem; font-weight:700; display:inline-flex}
.home-hero__sub-eyebrow:before{ content:""; background-color:var(--text-dark); width:20px; height:2px; display:inline-block}
.home-hero__sub-description{ font-family:var(--font-sans); color:var(--text-muted); max-width:500px; font-size:.95rem; line-height:1.6}
.home-hero__handwritten{ align-items:center; gap:1.25rem; margin-top:.5rem; display:flex}
.home-hero__leaf-svg{ color:#586b52; flex-shrink:0; width:44px; height:44px}
.home-hero__quote{ font-family:var(--font-script); font-weight:600; color:#7a4b38; font-size:1.65rem; line-height:1.15}
.home-hero__visual{ justify-content:center; display:flex; position:relative}
.home-hero__visual-wrapper{ width:100%; max-width:510px; box-shadow:none; background:0 0; border:none; position:relative}
.home-hero__img{ object-fit:cover; width:100%; height:auto; display:block}
.home-hero__tagline-script{ font-family:var(--font-script); font-weight:600; color:#1f1916; text-align:right; z-index:2; pointer-events:none; border-radius:var(--radius-sm); backdrop-filter:blur(4px); background:#ffffffd9; padding:.25rem .6rem; font-size:1.45rem; line-height:1.1; position:absolute; top:1.5rem; right:1.75rem}
@media (width<=960px){ .home-hero__container{ flex-direction:column; gap:0; display:flex}
.home-hero__content{ display:contents}
.home-hero__eyebrow{ order:1}
.home-hero__title{ order:2}
.home-hero__description{ order:3; margin-bottom:1.75rem}
.home-hero__actions{ order:4; margin-bottom:2rem}
.home-hero__visual{ order:5; width:100%; margin-bottom:2.5rem}
.home-hero__visual-wrapper{ max-width:100%}
.home-hero__sub-box{ order:6}
.home-hero__handwritten{ order:7}
}
.home-situaciones{ background-color:var(--bg-main); border-top:1px solid var(--border-subtle); padding:5rem 1.5rem}
.home-situaciones__container{ max-width:var(--container-max); margin:0 auto}
.home-situaciones__header{ justify-content:space-between; align-items:center; gap:2rem; margin-bottom:3.5rem; display:flex}
.home-situaciones__title-box{ max-width:660px}
.home-situaciones__eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:1.25rem; font-size:.78rem; font-weight:700; display:inline-flex}
.home-situaciones__eyebrow:before{ content:""; background-color:var(--text-dark); width:28px; height:2px; display:inline-block}
.home-situaciones__title{ font-family:var(--font-serif); letter-spacing:-.025em; color:var(--text-dark); margin-bottom:1.25rem; font-size:clamp(2.3rem,3.8vw,3.2rem); font-weight:800; line-height:1.12}
.home-situaciones__subtitle{ font-family:var(--font-sans); color:var(--text-muted); font-size:1.05rem; line-height:1.6}
.home-situaciones__header-aside{ flex-shrink:0; align-items:center; gap:1.5rem; display:flex}
.home-situaciones__header-cup{ object-fit:cover; border:2px solid #fff; border-radius:50%; width:90px; height:90px; box-shadow:0 8px 20px #2d1e141a}
.home-situaciones__quote-script{ font-family:var(--font-script); font-weight:600; color:var(--text-muted); text-align:right; max-width:200px; font-size:1.45rem; line-height:1.2}
.home-situaciones__grid{ grid-template-columns:repeat(3,1fr); gap:2rem; margin-bottom:3.5rem; display:grid}
.home-situaciones__card{ border:1px solid var(--border-subtle); border-radius:var(--radius-md); background:#fff; flex-direction:column; padding:2.25rem 2rem 0; transition:transform .2s,box-shadow .2s; display:flex; overflow:hidden; box-shadow:0 4px 18px #2d1e1408}
.home-situaciones__card:hover{ transform:translateY(-3px); box-shadow:0 10px 28px #2d1e140f}
.home-situaciones__badge{ width:48px; height:48px; color:var(--text-dark); background:#ede8de; border-radius:50%; justify-content:center; align-items:center; margin-bottom:1.5rem; display:flex}
.home-situaciones__badge svg{ width:24px; height:24px}
.home-situaciones__tag{ font-family:var(--font-sans); letter-spacing:.15em; text-transform:uppercase; color:var(--color-badge-brown); margin-bottom:.85rem; font-size:.74rem; font-weight:700}
.home-situaciones__card-title{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:1rem; font-size:1.35rem; font-weight:700; line-height:1.25}
.home-situaciones__card-desc{ font-family:var(--font-sans); color:var(--text-muted); flex-grow:1; margin-bottom:1.75rem; font-size:.95rem; line-height:1.6}
.home-situaciones__card-actions{ flex-direction:column; gap:.85rem; margin-bottom:1.75rem; display:flex}
.home-situaciones__btn{ background-color:var(--color-terracotta); color:#fff; font-family:var(--font-sans); border-radius:var(--radius-sm); text-align:center; justify-content:center; align-items:center; gap:.5rem; padding:.8rem 1.4rem; font-size:.92rem; font-weight:600; text-decoration:none; transition:background-color .2s; display:inline-flex}
.home-situaciones__btn:hover{ background-color:var(--color-terracotta-hover)}
.home-situaciones__link{ font-family:var(--font-sans); color:var(--text-dark); text-underline-offset:3px; align-items:center; gap:.35rem; font-size:.92rem; font-weight:600; text-decoration:underline; display:inline-flex}
.home-situaciones__link:hover{ color:var(--color-terracotta)}
.home-situaciones__card-media{ border-top:1px solid var(--border-subtle); background:#f4efeb; height:190px; margin:0 -2rem; overflow:hidden}
.home-situaciones__card-img{ object-fit:cover; width:100%; height:100%; transition:transform .3s; display:block}
.home-situaciones__card:hover .home-situaciones__card-img{ transform:scale(1.03)}
.home-situaciones__footer-bar{ border-top:1px solid var(--border-subtle); flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1.5rem; padding-top:2rem; display:flex}
.home-situaciones__footer-quote{ align-items:center; gap:1rem; display:flex}
.home-situaciones__leaf-svg{ color:#586b52; flex-shrink:0; width:38px; height:38px}
.home-situaciones__quote-text{ font-family:var(--font-script); font-weight:600; color:#7a4b38; font-size:1.45rem}
.home-situaciones__footer-tagline{ font-family:var(--font-sans); letter-spacing:.18em; text-transform:uppercase; color:var(--text-muted); border-bottom:1px solid var(--text-muted); padding-bottom:2px; font-size:.74rem; font-weight:700}
@media (width<=960px){ .home-situaciones__grid{ grid-template-columns:1fr}
.home-situaciones__header{ flex-direction:column; align-items:flex-start}
.home-situaciones__header-aside{ align-self:flex-start}
.home-situaciones__quote-script{ text-align:left}
}
.home-guias{ background-color:var(--bg-main); border-top:1px solid var(--border-subtle); padding:5rem 1.5rem}
.home-guias__container{ max-width:var(--container-max); margin:0 auto}
.home-guias__header{ justify-content:space-between; align-items:center; gap:2rem; margin-bottom:3.5rem; display:flex}
.home-guias__title-box{ max-width:660px}
.home-guias__eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:1.25rem; font-size:.78rem; font-weight:700; display:inline-flex}
.home-guias__eyebrow:before{ content:""; background-color:var(--text-dark); width:28px; height:2px; display:inline-block}
.home-guias__title{ font-family:var(--font-serif); letter-spacing:-.025em; color:var(--text-dark); margin-bottom:1.25rem; font-size:clamp(2.3rem,3.8vw,3.2rem); font-weight:800; line-height:1.12}
.home-guias__subtitle{ font-family:var(--font-sans); color:var(--text-muted); font-size:1.05rem; line-height:1.6}
.home-guias__header-aside{ flex-shrink:0; align-items:center; gap:1.5rem; display:flex}
.home-guias__header-cup{ object-fit:cover; border:2px solid #fff; border-radius:50%; width:84px; height:84px; box-shadow:0 6px 18px #2d1e141a}
.home-guias__quote-script{ font-family:var(--font-script); font-weight:600; color:var(--text-muted); text-align:right; max-width:200px; font-size:1.45rem; line-height:1.2}
.home-guias__featured{ border:1px solid var(--border-subtle); border-radius:var(--radius-md); background:#fff; grid-template-columns:1.1fr .9fr; margin-bottom:2rem; display:grid; overflow:hidden; box-shadow:0 4px 20px #2d1e140a}
.home-guias__featured-content{ flex-direction:column; justify-content:center; padding:3.5rem 3rem; display:flex}
.home-guias__featured-tag{ font-family:var(--font-sans); letter-spacing:.15em; text-transform:uppercase; color:var(--color-badge-brown); margin-bottom:1rem; font-size:.74rem; font-weight:700}
.home-guias__featured-title{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:1.25rem; font-size:clamp(2rem,3vw,2.6rem); font-weight:800; line-height:1.15}
.home-guias__featured-desc{ font-family:var(--font-sans); color:var(--text-muted); margin-bottom:2.25rem; font-size:1.02rem; line-height:1.65}
.home-guias__btn-featured{ background-color:var(--color-terracotta); color:#fff; font-family:var(--font-sans); border-radius:var(--radius-sm); align-self:flex-start; align-items:center; gap:.5rem; padding:.9rem 1.75rem; font-size:.95rem; font-weight:600; text-decoration:none; transition:background-color .2s; display:inline-flex}
.home-guias__btn-featured:hover{ background-color:var(--color-terracotta-hover)}
.home-guias__featured-media{ background:#e8e0d2; min-height:340px; position:relative; overflow:hidden}
.home-guias__featured-img{ object-fit:cover; width:100%; height:100%; transition:transform .35s; display:block}
.home-guias__featured:hover .home-guias__featured-img{ transform:scale(1.02)}
.home-guias__medium-row{ grid-template-columns:1fr 1fr; gap:2rem; margin-bottom:2rem; display:grid}
.home-guias__card{ border:1px solid var(--border-subtle); border-radius:var(--radius-md); background:#fff; flex-direction:column; transition:transform .2s,box-shadow .2s; display:flex; overflow:hidden; box-shadow:0 4px 18px #2d1e1408}
.home-guias__card:hover{ transform:translateY(-3px); box-shadow:0 10px 28px #2d1e140f}
.home-guias__card-media{ background-color:#ede8de; height:175px; position:relative; overflow:hidden}
.home-guias__card-img{ object-fit:cover; width:100%; height:100%; transition:transform .35s; display:block}
.home-guias__card:hover .home-guias__card-img{ transform:scale(1.03)}
.home-guias__card-media--1{ background:#f4efeb; border-bottom:1px dashed #d6cfbe}
.home-guias__card-media--2{ background:#eae5dc; border-bottom:1px solid #d6cfbe}
.home-guias__card-body{ flex-direction:column; flex-grow:1; padding:2.25rem 2rem; display:flex}
.home-guias__card-title{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:.85rem; font-size:1.4rem; font-weight:700; line-height:1.25}
.home-guias__card-desc{ font-family:var(--font-sans); color:var(--text-muted); flex-grow:1; margin-bottom:1.5rem; font-size:.95rem; line-height:1.6}
.home-guias__card-link{ font-family:var(--font-sans); color:var(--color-terracotta); text-underline-offset:3px; align-self:flex-start; font-size:.92rem; font-weight:600; text-decoration:underline}
.home-guias__card-link:hover{ color:var(--color-terracotta-hover)}
.home-guias__compact-row{ grid-template-columns:repeat(3,1fr); gap:2rem; margin-bottom:3.5rem; display:grid}
.home-guias__compact-card{ border:1px solid var(--border-subtle); border-radius:var(--radius-md); background:#fff; flex-direction:column; display:flex; overflow:hidden; box-shadow:0 4px 18px #2d1e1408}
.home-guias__compact-media{ background-color:#ede8de; height:155px; position:relative; overflow:hidden}
.home-guias__compact-img{ object-fit:cover; width:100%; height:100%; transition:transform .35s; display:block}
.home-guias__compact-card:hover .home-guias__compact-img{ transform:scale(1.03)}
.home-guias__compact-body{ flex-direction:column; flex-grow:1; padding:1.75rem 1.5rem; display:flex}
.home-guias__compact-title{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:.75rem; font-size:1.25rem; font-weight:700; line-height:1.3}
.home-guias__compact-desc{ font-family:var(--font-sans); color:var(--text-muted); flex-grow:1; margin-bottom:1.25rem; font-size:.92rem; line-height:1.55}
.home-guias__footer{ border-top:1px solid var(--border-subtle); justify-content:flex-end; align-items:center; gap:.75rem; padding-top:1.5rem; display:flex}
.home-guias__footer-leaf{ color:#586b52; width:38px; height:38px}
.home-guias__footer-script{ font-family:var(--font-script); font-weight:600; color:#7a4b38; font-size:1.55rem}
@media (width<=960px){ .home-guias__featured,.home-guias__medium-row,.home-guias__compact-row{ grid-template-columns:1fr}
.home-guias__header{ flex-direction:column; align-items:flex-start}
}
.home-cadena{ background-color:var(--bg-main); border-top:1px solid var(--border-subtle); padding:5rem 1.5rem}
.home-cadena__container{ max-width:var(--container-max); margin:0 auto}
.home-cadena__header{ justify-content:space-between; align-items:center; gap:2rem; margin-bottom:3.5rem; display:flex}
.home-cadena__title-box{ max-width:660px}
.home-cadena__eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:1.25rem; font-size:.78rem; font-weight:700; display:inline-flex}
.home-cadena__eyebrow:before{ content:""; background-color:var(--text-dark); width:28px; height:2px; display:inline-block}
.home-cadena__title{ font-family:var(--font-serif); letter-spacing:-.025em; color:var(--text-dark); margin-bottom:1.25rem; font-size:clamp(2.3rem,3.8vw,3.2rem); font-weight:800; line-height:1.12}
.home-cadena__desc{ font-family:var(--font-sans); color:var(--text-muted); font-size:1.05rem; line-height:1.68}
.home-cadena__header-aside{ flex-shrink:0; justify-content:center; align-items:center; width:100%; max-width:410px; display:flex}
.home-cadena__header-cup{ object-fit:contain; filter:drop-shadow(0 12px 26px #2d1e141f); width:100%; max-width:420px; height:auto; display:block}
.home-cadena__flow-wrapper{ margin-bottom:3.5rem; position:relative}
.home-cadena__flow{ justify-content:space-between; align-items:flex-start; gap:1rem; margin-bottom:2.5rem; display:flex}
.home-cadena__flow--row2{ justify-content:space-around; max-width:78%; margin:0 auto 3rem}
.home-cadena__step{ text-align:center; flex-direction:column; flex:1; align-items:center; padding:0 .5rem; display:flex; position:relative}
.home-cadena__step-num{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:.5rem; font-size:1.05rem; font-weight:700}
.home-cadena__step-badge{ width:64px; height:64px; color:var(--text-dark); border:1px solid var(--border-subtle); background:#eae5dc; border-radius:50%; justify-content:center; align-items:center; margin-bottom:1.25rem; display:flex; position:relative; box-shadow:0 4px 14px #2d1e140d}
.home-cadena__step-badge svg{ width:28px; height:28px}
.home-cadena__arrow-connector{ color:#c2b9a5; pointer-events:none; width:24px; height:24px; position:absolute; top:50%; right:-32px; transform:translateY(-50%)}
.home-cadena__step-name{ font-family:var(--font-sans); letter-spacing:.14em; text-transform:uppercase; color:var(--text-dark); margin-bottom:.6rem; font-size:.8rem; font-weight:800}
.home-cadena__step-q{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:.6rem; font-size:1.02rem; font-weight:700; line-height:1.35}
.home-cadena__step-exp{ font-family:var(--font-sans); color:var(--text-muted); font-size:.88rem; line-height:1.5}
.home-cadena__footer{ border-top:1px solid var(--border-subtle); flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1.5rem; padding-top:2rem; display:flex}
.home-cadena__footer-left{ align-items:center; gap:.85rem; display:flex}
.home-cadena__leaf-svg{ color:#586b52; width:36px; height:36px}
.home-cadena__script-left{ font-family:var(--font-script); font-weight:600; color:#7a4b38; font-size:1.45rem}
.home-cadena__btn{ background-color:var(--color-terracotta); color:#fff; font-family:var(--font-sans); border-radius:var(--radius-sm); align-items:center; gap:.5rem; padding:.95rem 2rem; font-size:1rem; font-weight:600; text-decoration:none; transition:background-color .2s,transform .15s; display:inline-flex; box-shadow:0 4px 14px #9c452840}
.home-cadena__btn:hover{ background-color:var(--color-terracotta-hover); transform:translateY(-2px)}
.home-cadena__script-right{ font-family:var(--font-script); font-weight:600; color:var(--text-muted); font-size:1.45rem}
@media (width<=960px){ .home-cadena__flow,.home-cadena__flow--row2{ flex-direction:column; align-items:center; max-width:100%}
.home-cadena__arrow-connector{ display:none}
.home-cadena__header{ flex-direction:column; align-items:flex-start}
.home-cadena__footer{ text-align:center; flex-direction:column}
}
.home-curso{ background-color:var(--bg-main); border-top:1px solid var(--border-subtle); padding:5rem 1.5rem}
.home-curso__container{ max-width:var(--container-max); margin:0 auto}
.home-curso__header{ justify-content:space-between; align-items:center; gap:2rem; margin-bottom:3.5rem; display:flex}
.home-curso__title-box{ max-width:660px}
.home-curso__eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:.5rem; font-size:.78rem; font-weight:700; display:inline-flex}
.home-curso__eyebrow:before{ content:""; background-color:var(--text-dark); width:28px; height:2px; display:inline-block}
.home-curso__sub-eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--color-badge-brown); margin-bottom:1.25rem; font-size:.74rem; font-weight:700; display:block}
.home-curso__title{ font-family:var(--font-serif); letter-spacing:-.025em; color:var(--text-dark); margin-bottom:1.25rem; font-size:clamp(2.3rem,3.8vw,3.2rem); font-weight:800; line-height:1.12}
.home-curso__desc{ font-family:var(--font-sans); color:var(--text-muted); font-size:1.05rem; line-height:1.68}
.home-curso__header-aside{ flex-shrink:0; justify-content:center; align-items:center; width:100%; max-width:380px; display:flex}
.home-curso__header-img{ aspect-ratio:4/3; object-fit:contain; width:100%; max-width:380px; height:auto; box-shadow:none; background:0 0; border:none; display:block}
.home-curso__grid{ grid-template-columns:1fr 1fr; align-items:center; gap:3.5rem; display:grid}
.home-curso__card{ border:1px solid var(--border-subtle); border-radius:var(--radius-md); background:#fff; padding:3.25rem 2.75rem; box-shadow:0 6px 24px #2d1e140a}
.home-curso__card-tag{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--color-badge-brown); margin-bottom:.85rem; font-size:.74rem; font-weight:700; display:block}
.home-curso__card-title{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:1.25rem; font-size:clamp(1.8rem,2.6vw,2.3rem); font-weight:800; line-height:1.2}
.home-curso__card-subtitle{ font-family:var(--font-sans); color:var(--text-muted); margin-bottom:2rem; font-size:1.02rem; line-height:1.6}
.home-curso__features-title{ font-family:var(--font-sans); letter-spacing:.14em; text-transform:uppercase; color:var(--text-dark); margin-bottom:1.25rem; font-size:.82rem; font-weight:700}
.home-curso__features-list{ flex-direction:column; gap:.9rem; margin:0 0 2rem; padding:0; list-style:none; display:flex}
.home-curso__feature-item{ font-family:var(--font-sans); color:var(--text-dark); align-items:center; gap:.95rem; font-size:.98rem; display:flex}
.home-curso__feature-icon{ width:34px; height:34px; color:var(--color-badge-brown); background:#f4ece3; border-radius:50%; flex-shrink:0; justify-content:center; align-items:center; display:flex}
.home-curso__feature-icon svg{ width:17px; height:17px}
.home-curso__disclaimer{ font-family:var(--font-sans); color:var(--text-light); border-top:1px solid var(--border-subtle); margin-bottom:2rem; padding-top:1.35rem; font-size:.86rem; line-height:1.55}
.home-curso__btn{ background-color:var(--color-terracotta); color:#fff; font-family:var(--font-sans); border-radius:var(--radius-sm); align-items:center; gap:.5rem; padding:.95rem 1.85rem; font-size:1rem; font-weight:600; text-decoration:none; transition:background-color .2s,transform .15s; display:inline-flex; box-shadow:0 4px 14px #9c452840}
.home-curso__btn:hover{ background-color:var(--color-terracotta-hover); transform:translateY(-2px)}
.home-curso__media{ justify-content:center; display:flex; position:relative}
.home-curso__media-wrapper{ border-radius:var(--radius-md); border:1px solid var(--border-subtle); background:#fff; width:100%; max-width:510px; position:relative; overflow:hidden; box-shadow:0 16px 36px #2d1e1414}
.home-curso__img{ object-fit:cover; width:100%; height:auto; display:block}
@media (width<=960px){ .home-curso__grid{ grid-template-columns:1fr}
.home-curso__header{ flex-direction:column; align-items:flex-start}
.home-curso__header-aside{ align-self:center; max-width:320px}
}
.home-preguntas{ background-color:var(--bg-main); border-top:1px solid var(--border-subtle); padding:5rem 1.5rem}
.home-preguntas__container{ max-width:var(--container-max); margin:0 auto}
.home-preguntas__header{ justify-content:space-between; align-items:center; gap:2rem; margin-bottom:3.5rem; display:flex}
.home-preguntas__title-box{ max-width:660px}
.home-preguntas__eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:1.25rem; font-size:.78rem; font-weight:700; display:inline-flex}
.home-preguntas__eyebrow:before{ content:""; background-color:var(--text-dark); width:28px; height:2px; display:inline-block}
.home-preguntas__title{ font-family:var(--font-serif); letter-spacing:-.025em; color:var(--text-dark); margin-bottom:1.25rem; font-size:clamp(2.3rem,3.8vw,3.2rem); font-weight:800; line-height:1.12}
.home-preguntas__subtitle{ font-family:var(--font-sans); color:var(--text-muted); font-size:1.05rem; line-height:1.6}
.home-preguntas__header-aside{ flex-shrink:0; align-items:center; gap:1.5rem; display:flex}
.home-preguntas__header-cup{ object-fit:cover; border:2px solid #fff; border-radius:50%; width:84px; height:84px; box-shadow:0 6px 18px #2d1e141a}
.home-preguntas__quote-script{ font-family:var(--font-script); font-weight:600; color:var(--text-muted); text-align:right; max-width:200px; font-size:1.45rem; line-height:1.2}
.home-preguntas__grid-top{ grid-template-columns:repeat(3,1fr); gap:2rem; margin-bottom:2rem; display:grid}
.home-preguntas__grid-bottom{ grid-template-columns:repeat(2,1fr); gap:2rem; max-width:72%; margin:0 auto 3.5rem; display:grid}
.home-preguntas__card{ border:1px solid var(--border-subtle); border-radius:var(--radius-md); text-align:center; background:#fff; flex-direction:column; align-items:center; padding:2.75rem 2.25rem; transition:transform .2s,box-shadow .2s; display:flex; box-shadow:0 4px 18px #2d1e1408}
.home-preguntas__card:hover{ transform:translateY(-3px); box-shadow:0 10px 24px #2d1e140f}
.home-preguntas__card-top{ justify-content:center; align-items:center; gap:1.5rem; width:100%; margin-bottom:1.75rem; display:flex}
.home-preguntas__num-box{ flex-direction:column; align-items:center; display:flex}
.home-preguntas__num{ font-family:var(--font-serif); color:var(--text-dark); font-size:1.75rem; font-weight:800; line-height:1}
.home-preguntas__num-line{ background-color:var(--text-dark); width:20px; height:2px; margin-top:4px}
.home-preguntas__badge{ width:56px; height:56px; color:var(--text-dark); background:#eae5dc; border-radius:50%; justify-content:center; align-items:center; display:flex}
.home-preguntas__badge svg{ width:26px; height:26px}
.home-preguntas__card-title{ font-family:var(--font-sans); letter-spacing:.14em; text-transform:uppercase; color:var(--text-dark); margin-bottom:1.15rem; font-size:.76rem; font-weight:800}
.home-preguntas__card-q{ font-family:var(--font-serif); color:var(--text-dark); flex-grow:1; margin-bottom:1.5rem; font-size:1.2rem; font-weight:700; line-height:1.35}
.home-preguntas__card-divider{ background-color:var(--border-subtle); width:32px; height:2px; margin-top:auto}
.home-preguntas__footer{ border-top:1px solid var(--border-subtle); flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1.5rem; padding-top:2rem; display:flex}
.home-preguntas__footer-left{ align-items:center; gap:.85rem; display:flex}
.home-preguntas__leaf-svg{ color:#586b52; width:36px; height:36px}
.home-preguntas__footer-quote{ font-family:var(--font-script); font-weight:600; color:#7a4b38; font-size:1.45rem}
.home-preguntas__footer-tagline{ font-family:var(--font-sans); letter-spacing:.18em; text-transform:uppercase; color:var(--text-muted); border-bottom:1px solid var(--text-muted); padding-bottom:2px; font-size:.74rem; font-weight:700}
@media (width<=960px){ .home-preguntas__grid-top,.home-preguntas__grid-bottom{ grid-template-columns:1fr; max-width:100%}
.home-preguntas__header{ flex-direction:column; align-items:flex-start}
}
.home-cierre{ background-color:var(--bg-main); border-top:1px solid var(--border-subtle); padding:5rem 1.5rem 2rem}
.home-cierre__container{ max-width:var(--container-max); margin:0 auto}
.home-cierre__header{ text-align:center; max-width:760px; margin:0 auto 3.5rem}
.home-cierre__eyebrow{ font-family:var(--font-sans); letter-spacing:.16em; text-transform:uppercase; color:var(--text-dark); align-items:center; gap:.75rem; margin-bottom:1.25rem; font-size:.78rem; font-weight:700; display:inline-flex}
.home-cierre__eyebrow:before{ content:""; background-color:var(--text-dark); width:28px; height:2px; display:inline-block}
.home-cierre__title{ font-family:var(--font-serif); letter-spacing:-.025em; color:var(--text-dark); font-size:clamp(2.3rem,3.8vw,3.2rem); font-weight:800; line-height:1.12}
.home-cierre__grid{ grid-template-columns:repeat(3,1fr); gap:2rem; margin-bottom:4rem; display:grid}
.home-cierre__card{ border:1px solid var(--border-subtle); border-radius:var(--radius-md); text-align:center; background:#fff; flex-direction:column; align-items:center; padding:3rem 2.25rem 2.5rem; transition:transform .2s,box-shadow .2s; display:flex; box-shadow:0 4px 18px #2d1e1408}
.home-cierre__card:hover{ transform:translateY(-3px); box-shadow:0 10px 24px #2d1e140f}
.home-cierre__card-badge{ width:58px; height:58px; color:var(--text-dark); background:#eae5dc; border-radius:50%; justify-content:center; align-items:center; margin-bottom:1.75rem; display:flex; box-shadow:0 4px 12px #2d1e140a}
.home-cierre__card-badge svg{ width:26px; height:26px}
.home-cierre__card-q{ font-family:var(--font-serif); color:var(--text-dark); margin-bottom:1rem; font-size:1.35rem; font-weight:800; line-height:1.25}
.home-cierre__card-desc{ font-family:var(--font-sans); color:var(--text-muted); flex-grow:1; margin-bottom:2rem; font-size:.95rem; line-height:1.55}
.home-cierre__btn{ background-color:var(--color-terracotta); color:#fff; width:100%; font-family:var(--font-sans); border-radius:var(--radius-sm); text-align:center; justify-content:center; align-items:center; gap:.5rem; padding:.9rem 1.4rem; font-size:.95rem; font-weight:600; text-decoration:none; transition:background-color .2s; display:inline-flex}
.home-cierre__btn:hover{ background-color:var(--color-terracotta-hover)}
.home-cierre__composition{ border-radius:var(--radius-md); border:1px solid var(--border-subtle); width:100%; margin-bottom:2.5rem; overflow:hidden; box-shadow:0 10px 28px #2d1e140d}
.home-cierre__composition-img{ object-fit:cover; width:100%; height:auto; display:block}
@media (width<=960px){ .home-cierre__grid{ grid-template-columns:1fr}
}
:root{ --bg-main:#f9f7f2; --bg-card:#fff; --bg-card-subtle:#f5f2ea; --bg-badge:#efece3; --bg-dark-accent:#873e24; --bg-dark-espresso:#1e1714; --text-dark:#1f1916; --text-muted:#5c554f; --text-light:#7a726b; --text-on-dark:#fbf9f5; --color-terracotta:#9c4528; --color-terracotta-hover:#83351a; --color-olive:#4e6049; --color-olive-bg:#edf3ed; --color-badge-brown:#8d5438; --color-badge-brown-bg:#f4ece3; --border-subtle:#ebe6dc; --border-card:#e3ded4; --serif:"Fraunces", Georgia, serif; --sans:"Plus Jakarta Sans", "Segoe UI", Arial, sans-serif; --hand:"Caveat", "Segoe Print", "Bradley Hand", cursive; --font-serif:var(--serif); --font-sans:var(--sans); --font-script:var(--hand); --container-max:1140px; --radius-sm:8px; --radius-md:14px; --radius-lg:20px; --radius-full:9999px; --shadow-subtle:0 4px 20px #2d1e140a; --shadow-card:0 10px 30px #2d1e140f; --shadow-floating:0 20px 40px #2d1e141f}
*,:before,:after{ box-sizing:border-box; margin:0; padding:0}
html{ font-family:var(--font-sans); background-color:var(--bg-main); color:var(--text-dark); scroll-behavior:smooth; -webkit-font-smoothing:antialiased}
body{ background-color:var(--bg-main); min-height:100vh; line-height:1.6}
img{ max-width:100%; height:auto; display:block}
a{ color:inherit; text-decoration:none}
button{ cursor:pointer; background:0 0; border:none; font-family:inherit}

/* Mobile performance: stable hero layout and no paint-heavy footer transitions. */
@media (max-width:640px){
.home-hero__description{ font-family:"Segoe UI",Arial,sans-serif}
.home-hero__visual-wrapper{ aspect-ratio:338/600}
.home-hero__tagline-script{ -webkit-backdrop-filter:none; backdrop-filter:none; background:#fffffff2}
.home-footer__link{ transition:none}
}
