:root{--ink:#252c28;--forest:#29352f;--paper:#f3efe7;--paper2:#ebe4d9;--cream:#faf7f1;--taupe:#9a8772;--line:#d7cfc2;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7}a{color:inherit}.site-header{height:92px;display:flex;align-items:center;gap:28px;padding:0 clamp(22px,5vw,78px);border-bottom:1px solid rgba(37,44,40,.15);background:rgba(243,239,231,.96);backdrop-filter:blur(12px);position:sticky;top:0;z-index:30}.brand{font:400 25px/1 var(--serif);text-decoration:none;letter-spacing:-.02em;margin-right:auto}.brand span{font-style:italic}.brand small{display:block;font:9px/1.5 var(--sans);letter-spacing:.13em;text-transform:uppercase;margin-top:5px;color:#6d716e}.site-header nav{display:flex;align-items:center;gap:clamp(13px,1.6vw,26px)}.site-header nav a,.header-cta{font-size:12px;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;white-space:nowrap}.site-header nav a{padding:34px 0 30px;border-bottom:1px solid transparent}.site-header nav a:hover{border-color:var(--ink)}.header-cta{border:1px solid var(--ink);padding:10px 17px}.menu-toggle{display:none;border:0;background:none;font-size:25px;color:var(--ink)}.kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin:0 0 25px;color:#625f59}.home-hero{min-height:calc(100vh - 92px);display:flex;flex-direction:column;justify-content:center;padding:8vh clamp(24px,8vw,135px) 35px;background:radial-gradient(circle at 80% 15%,rgba(255,255,255,.62),transparent 32%),linear-gradient(135deg,#efe9df 0%,#f8f5ef 52%,#e9e1d5 100%)}.hero-inner{max-width:1100px}.home-hero h1,.inner-hero h1{font:400 clamp(48px,6.5vw,100px)/.98 var(--serif);letter-spacing:-.045em;margin:0;max-width:1050px}.hero-lead{font:400 clamp(18px,2vw,23px)/1.6 var(--serif);max-width:750px;margin:32px 0}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.btn{display:inline-block;background:var(--forest);color:#fff;text-decoration:none;padding:14px 24px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--forest);transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.outline{background:transparent;color:var(--ink)}.btn.light{background:var(--cream);color:var(--forest);border-color:var(--cream)}.text-link{font-size:13px;text-decoration:none;border-bottom:1px solid #91877b;padding-bottom:4px}.text-link span{padding-left:8px}.motto{margin-top:auto;padding-top:60px;font:italic 17px var(--serif);letter-spacing:.05em}.motto i{font-style:normal;color:var(--taupe);padding:0 9px}.split-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(50px,9vw,150px);padding:clamp(80px,10vw,155px) clamp(24px,8vw,135px);border-bottom:1px solid var(--line)}.split-section h2,.section-heading h2,.closing h2{font:400 clamp(39px,4.8vw,70px)/1.06 var(--serif);letter-spacing:-.035em;margin:0}.split-section>div:last-child>p:first-of-type{font-size:20px}.diamond-section{padding:clamp(80px,10vw,150px) clamp(24px,7vw,115px);background:var(--cream)}.section-heading{max-width:900px;margin-bottom:70px}.section-heading>p:last-child{font:20px/1.7 var(--serif);max-width:700px}.facets{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.facet{padding:35px 28px 42px;min-height:270px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.facet span,.path-grid span{font:italic 13px var(--serif);color:var(--taupe)}.facet h3,.path-grid h3{font:400 27px/1.15 var(--serif);margin:35px 0 16px}.facet p{font-size:14px;color:#575c59}.center-link{text-align:center;margin-top:50px}.paths-section{padding:clamp(80px,10vw,150px) clamp(24px,7vw,115px)}.path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.path-grid>a{background:var(--paper);padding:38px 30px;text-decoration:none;min-height:330px;display:flex;flex-direction:column}.path-grid p{font-size:14px}.path-grid b{margin-top:auto;font-size:12px;font-weight:normal;text-transform:uppercase;letter-spacing:.08em}.rosa-section{background:var(--paper2);align-items:center}.portrait-placeholder{aspect-ratio:4/5;max-width:520px;background:linear-gradient(145deg,#c9b9a7,#e8dfd4);display:grid;place-items:center;position:relative;overflow:hidden}.portrait-placeholder:before{content:'';width:62%;aspect-ratio:1;border:1px solid rgba(255,255,255,.6);border-radius:50%;position:absolute}.portrait-placeholder span{font:italic clamp(55px,8vw,110px) var(--serif);color:rgba(255,255,255,.78)}blockquote{font:italic 25px/1.5 var(--serif);margin:35px 0;padding-left:25px;border-left:1px solid var(--taupe)}.closing{padding:clamp(90px,12vw,180px) clamp(24px,12vw,200px);background:var(--forest);color:#f4efe7;text-align:center}.closing .kicker{color:#c9c0b5}.closing h2{max-width:1000px;margin:0 auto 45px}.inner-hero{padding:clamp(85px,10vw,145px) clamp(24px,8vw,135px);background:linear-gradient(135deg,#eee7dc,#f8f5ef);border-bottom:1px solid var(--line)}.inner-hero>div{max-width:1100px}.page-content{max-width:1050px;margin:auto;padding:80px clamp(24px,6vw,80px) 130px}.page-content h2{font:400 42px/1.15 var(--serif);margin-top:65px}.page-content h3{font:400 29px var(--serif)}.page-content p{max-width:780px}.empty-content{padding:50px;border:1px solid var(--line);text-align:center}.site-footer{display:grid;grid-template-columns:1.5fr .7fr .7fr 1.2fr;gap:50px;padding:75px clamp(24px,7vw,115px) 30px;background:#202a25;color:#f2eee7}.site-footer strong{font:400 31px var(--serif)}.site-footer p{font-size:14px;max-width:330px;color:#d5d2cb}.site-footer h4{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#aaa9a4;margin:0 0 20px}.site-footer a{display:block;text-decoration:none;font-size:13px;margin:8px 0;color:#e7e3dc}.footer-quote p{font:italic 19px/1.5 var(--serif);color:#f2eee7}.footer-quote small{color:#aaa9a4}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:25px;margin-top:20px;font-size:11px;letter-spacing:.08em;color:#aaa9a4}@media(max-width:1100px){.site-header nav{gap:13px}.site-header nav a{font-size:10px}.facets,.path-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.site-header{height:78px;padding:0 22px}.brand small{display:none}.header-cta{display:none}.menu-toggle{display:block;order:3}.site-header nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--paper);padding:20px 24px 30px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.site-header nav a{font-size:13px;padding:8px 0}.home-hero{min-height:calc(92vh - 78px);padding-top:70px}.split-section{grid-template-columns:1fr;gap:45px}.facets,.path-grid{grid-template-columns:1fr}.facet{min-height:auto}.path-grid>a{min-height:250px}.site-footer{grid-template-columns:1fr 1fr}.footer-brand,.footer-quote{grid-column:1/-1}}@media(max-width:520px){.home-hero h1,.inner-hero h1{font-size:46px}.hero-lead{font-size:18px}.motto{font-size:14px}.split-section h2,.section-heading h2,.closing h2{font-size:38px}.site-footer{grid-template-columns:1fr}.site-footer>*{grid-column:1!important}}
.portrait-real{aspect-ratio:4/5;max-width:520px;overflow:hidden}.portrait-real img{width:100%;height:100%;object-fit:cover;display:block}
.inner-sections{background:var(--paper)}.content-section{max-width:1180px;margin:auto;padding:80px clamp(24px,6vw,80px);border-bottom:1px solid var(--line)}.content-section.has-image{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.section-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.section-copy h2{font:400 clamp(34px,4vw,56px)/1.1 var(--serif);letter-spacing:-.03em;margin:0 0 25px}.section-copy p{max-width:760px}@media(max-width:800px){.content-section.has-image{grid-template-columns:1fr;gap:35px}}

/* === CultivaSynergy front refinement: Diamond + desktop navigation === */
.diamond-section{
  background:#75695d;
  color:#f7f2e9;
}
.diamond-section .kicker{
  color:#ddd2c5;
}
.diamond-section .section-heading>p:last-child{
  color:#f0e9df;
}
.diamond-section .facets{
  border-color:rgba(255,255,255,.22);
}
.diamond-section .facet{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.22);
  transition:background .2s ease,transform .2s ease;
}
.diamond-section .facet:hover{
  background:rgba(255,255,255,.085);
}
.diamond-section .facet span{
  color:#d9c7b3;
}
.diamond-section .facet p{
  color:#e7dfd5;
}
.diamond-section .btn.outline{
  color:#f7f2e9;
  border-color:rgba(255,255,255,.72);
}
.diamond-section .btn.outline:hover{
  background:#f7f2e9;
  color:#403a34;
  border-color:#f7f2e9;
}

/* Keep the full desktop navigation inside the viewport. */
@media (max-width:1320px) and (min-width:1081px){
  .site-header{
    gap:16px;
    padding-left:clamp(18px,2.5vw,34px);
    padding-right:clamp(18px,2.5vw,34px);
  }
  .brand{font-size:22px}
  .brand small{display:none}
  .site-header nav{gap:clamp(8px,1vw,14px)}
  .site-header nav a,.header-cta{
    font-size:10px;
    letter-spacing:.055em;
  }
  .header-cta{padding:9px 12px}
}

/* The original 850px breakpoint was too late for seven navigation links. */
@media (max-width:1080px){
  .site-header{height:78px;padding:0 22px}
  .brand small{display:none}
  .header-cta{display:none}
  .menu-toggle{display:block;order:3}
  .site-header nav{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:78px;
    background:var(--paper);
    padding:20px 24px 30px;
    border-bottom:1px solid var(--line);
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    max-height:calc(100vh - 78px);
    overflow-y:auto;
  }
  .site-header nav.open{display:flex}
  .site-header nav a{
    width:100%;
    font-size:13px;
    padding:9px 0;
  }
}


/* === Cierre completo · El Diamante de la Percepción Consciente === */
.diamond-body-note{
  max-width:1025px;
  margin:72px auto 0;
  padding:38px clamp(24px,5vw,62px);
  border:1px solid rgba(201,157,70,.42);
  text-align:center;
}
.diamond-body-note h3{
  margin:0 0 18px;
  color:#d9aa58;
  font:400 clamp(25px,2.4vw,32px)/1.2 var(--serif);
  letter-spacing:-.02em;
}
.diamond-body-note p{
  max-width:880px;
  margin:0 auto;
  color:#ded4c6;
  font-size:17px;
  line-height:1.85;
}
.diamond-closing{
  max-width:1040px;
  margin:52px auto 0;
  text-align:center;
}
.diamond-closing h3{
  margin:0 0 24px;
  color:#fffaf2;
  font:italic 400 clamp(34px,4vw,48px)/1.18 var(--serif);
  letter-spacing:-.025em;
}
.diamond-closing p{
  max-width:960px;
  margin:0 auto;
  color:#d8cdbc;
  font-size:18px;
  line-height:1.9;
}
.diamond-explore{
  display:inline-block;
  margin-top:56px;
  padding:18px 42px;
  border:1px solid rgba(201,157,70,.52);
  color:#d9aa58;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:12px;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.diamond-explore span{padding-left:8px}
.diamond-explore:hover{
  background:#d9aa58;
  border-color:#d9aa58;
  color:#28231e;
}
@media(max-width:700px){
  .diamond-body-note{
    margin-top:48px;
    padding:30px 22px;
  }
  .diamond-body-note p,
  .diamond-closing p{
    font-size:16px;
    line-height:1.75;
  }
  .diamond-closing{margin-top:42px}
  .diamond-explore{
    width:100%;
    max-width:340px;
    padding:16px 20px;
    margin-top:38px;
  }
}


/* Fondo definitivo del bloque Diamante */
.diamond-section{background:#1e1b14;}


/* ==========================================================
   CABECERA DEFINITIVA · LOGO + MENÚ RESPONSIVE
   ========================================================== */
.diamond-section{background:#1e1b14;}

/* Marca: lema exactamente debajo y en una sola línea */
.site-header .brand{
  display:inline-block;
  flex:0 0 auto;
  width:max-content;
  margin-right:auto;
  white-space:nowrap;
}
.site-header .brand small{
  display:block;
  width:100%;
  margin-top:7px;
  font:9px/1.2 var(--sans);
  letter-spacing:.115em;
  word-spacing:.08em;
  text-align:justify;
  text-align-last:justify;
  white-space:nowrap;
  color:#6d716e;
}

/* Escritorio ancho */
.site-header{
  width:100%;
  max-width:100vw;
}
.site-header nav{
  min-width:0;
}
.header-cta{
  flex:0 0 auto;
}

/* Compactar antes de pasar a hamburguesa */
@media (max-width:1540px) and (min-width:1281px){
  .site-header{
    gap:13px;
    padding-left:clamp(18px,2vw,32px);
    padding-right:clamp(18px,2vw,32px);
  }
  .site-header .brand{font-size:21px}
  .site-header .brand small{
    display:block;
    font-size:8px;
    letter-spacing:.085em;
  }
  .site-header nav{gap:clamp(7px,.75vw,11px)}
  .site-header nav a,.header-cta{
    font-size:10px;
    letter-spacing:.04em;
  }
  .header-cta{padding:9px 10px}
}

/* El menú completo ya no se fuerza donde no cabe */
@media (max-width:1280px){
  .site-header{
    height:78px;
    padding:0 22px;
    gap:16px;
  }
  .site-header .brand{
    margin-right:auto;
    font-size:23px;
  }
  .site-header .brand small{
    display:block;
    font-size:8px;
    letter-spacing:.08em;
    margin-top:5px;
  }
  .header-cta{display:none!important}
  .menu-toggle{
    display:block!important;
    order:3;
    flex:0 0 auto;
    cursor:pointer;
    padding:8px;
  }
  .site-header nav{
    display:none!important;
    position:absolute;
    left:0;
    right:0;
    top:78px;
    width:100%;
    background:var(--paper);
    padding:18px 24px 28px;
    border-bottom:1px solid var(--line);
    box-shadow:0 14px 25px rgba(37,44,40,.08);
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    max-height:calc(100vh - 78px);
    overflow-y:auto;
  }
  .site-header nav.open{display:flex!important}
  .site-header nav a{
    width:100%;
    font-size:13px;
    padding:10px 0;
    border-bottom:1px solid rgba(37,44,40,.08);
  }
  .site-header nav a:last-child{border-bottom:0}
  .site-header nav .mobile-contact{
    display:block;
    width:auto;
    margin-top:14px;
    padding:11px 18px;
    border:1px solid var(--ink);
  }
}
@media (min-width:1281px){
  .site-header nav .mobile-contact{display:none}
}

/* Móvil pequeño: conservar lema sin romperlo */
@media(max-width:520px){
  .site-header .brand{font-size:20px}
  .site-header .brand small{
    display:block;
    font-size:7px;
    letter-spacing:.055em;
  }
}


/* === Footer · enlaces legales === */
.site-footer .copyright{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}
.footer-legal{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:0;
  flex-wrap:wrap;
}
.site-footer .footer-legal a{
  display:inline-block;
  margin:0;
  font-size:11px;
  letter-spacing:.04em;
  color:#aaa9a4;
  text-decoration:none;
  white-space:nowrap;
}
.site-footer .footer-legal a:hover{
  color:#f2eee7;
}
.site-footer .footer-legal a:not(:last-child)::after{
  content:"·";
  display:inline-block;
  margin:0 9px;
  color:#777a76;
}
@media(max-width:700px){
  .site-footer .copyright{
    display:block;
    text-align:left;
  }
  .footer-legal{
    justify-content:flex-start;
    margin-top:14px;
    row-gap:8px;
  }
}


/* ==========================================================
   HOME HERO · DIAMANTE ORIGINAL COMO FONDO
   ========================================================== */
.home-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#f3efe7;
}
.home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background-image:url("../images/diamante-hero.webp");
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
  filter:blur(3px);
  transform:scale(1.018);
  opacity:.48;
}
.home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg,
      rgba(248,245,238,.94) 0%,
      rgba(248,245,238,.86) 39%,
      rgba(248,245,238,.64) 66%,
      rgba(248,245,238,.50) 100%);
  pointer-events:none;
}
.home-hero .hero-inner,
.home-hero .motto{
  position:relative;
  z-index:1;
}
@media(max-width:850px){
  .home-hero::before{
    background-position:center center;
    opacity:.38;
    filter:blur(3px);
  }
  .home-hero::after{
    background:rgba(248,245,238,.82);
  }
}


/* === Ajuste tipográfico H1 / H2 === */
.home-hero h1,
.inner-hero h1{
  font-size:clamp(42px,5.3vw,82px);
  line-height:1.02;
}
.split-section h2,
.section-heading h2,
.closing h2{
  font-size:clamp(34px,4vw,58px);
  line-height:1.08;
}
@media(max-width:520px){
  .home-hero h1,
  .inner-hero h1{
    font-size:40px;
  }
  .split-section h2,
  .section-heading h2,
  .closing h2{
    font-size:34px;
  }
}
