:root{--rose:#F9EAE9;--beige:#F1E7DC;--taupe:#DCC9B5;--sage:#BBC9B1;--gray:#DADADA;--ink:#272829;--wine:#7C4558;--gold:#C58A37;--green:#536E68;--paper:#FEFBF7;--line:rgba(124,69,88,.18);--serif:'Italiana',Georgia,serif;--sans:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.section-pad{padding:110px clamp(24px,6vw,96px)}.eyebrow{margin:0 0 24px;color:var(--gold);font-size:.82rem;font-weight:500;letter-spacing:.16em}.site-header{height:112px;padding:0 clamp(24px,4vw,72px);display:flex;align-items:center;justify-content:space-between;position:absolute;inset:0 0 auto;z-index:10}.brand{display:flex;align-items:center;font:2.1rem var(--serif);letter-spacing:.23em}.enso-o{width:35px;height:35px;border:1px solid var(--gold);border-radius:50%;margin:0 5px 0 -1px;position:relative;display:inline-block}.enso-o:before,.enso-o:after,.enso-o i{content:"";position:absolute;border:1px solid var(--gold);border-radius:50%}.enso-o:before{inset:6px}.enso-o:after{inset:11px}.enso-o i{inset:15px;background:var(--gold)}nav{display:flex;align-items:center;gap:44px;font-size:.95rem;font-weight:400}nav a:not(.nav-cta):after,.text-link:after{content:"";display:block;width:0;height:1px;background:var(--gold);transition:.3s}nav a:hover:after,.text-link:hover:after{width:100%}.nav-cta{padding:12px 30px;border:1px solid var(--gold);border-radius:4px}.menu-toggle{display:none;border:0;background:none}.hero{min-height:100vh;padding-top:160px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:5vw;position:relative;overflow:hidden;background:radial-gradient(circle at 70% 45%,rgba(249,234,233,.55),transparent 33%),linear-gradient(120deg,#fffdfa,#fdf8f1)}.hero-copy{max-width:670px}.hero h1{font:clamp(4rem,7vw,7rem)/.92 var(--serif);letter-spacing:.025em;margin:0 0 30px}.hero h1 br+*{color:var(--wine)}.hero h2{font-size:clamp(1.4rem,2vw,2rem);font-weight:400;color:var(--green);margin:0 0 12px}.hero-lead{max-width:560px;font-size:1.1rem}.hero-actions{display:flex;align-items:center;gap:42px;margin-top:42px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:17px 28px;border-radius:5px;border:0;cursor:pointer;font-weight:400}.btn-primary{background:var(--wine);color:white;box-shadow:0 12px 35px rgba(124,69,88,.15)}.btn svg{width:18px}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--green);font-weight:400}.hero-art{min-height:650px;position:relative}.portal-lines,.portal-arch{position:absolute;inset:7% 9% 12%;border:1px solid rgba(197,138,55,.65);border-radius:50% 50% 0 0}.portal-lines{inset:4% 14% 10% 3%;box-shadow:15px 0 0 -14px var(--gold),30px 0 0 -29px var(--gold),45px 0 0 -44px var(--gold),60px 0 0 -59px var(--gold),75px 0 0 -74px var(--gold),90px 0 0 -89px var(--gold),105px 0 0 -104px var(--gold)}.portal-arch{inset:19% 12% 10% 23%;border-width:0 42px 0 0;border-color:rgba(185,129,108,.7);background:linear-gradient(150deg,transparent 55%,rgba(187,201,177,.75) 56%)}.portal-sun{position:absolute;width:220px;height:220px;left:0;bottom:13%;background:rgba(220,201,181,.65);border-radius:50%}.portal-ground{position:absolute;right:0;bottom:4%;width:80%;height:32%;border:1px solid var(--gold);border-radius:55% 45% 0 0;transform:rotate(-10deg)}.body-line{position:absolute;right:28%;top:24%;width:120px;height:320px;border-right:1px solid var(--gold);border-radius:0 90% 45% 0;transform:rotate(5deg)}.ensomar-seal{position:absolute;right:30%;bottom:22%;text-align:center;color:var(--gold);letter-spacing:.12em}.seal-spiral{display:block;font:5rem/1 var(--serif)}.stage-ribbon{grid-column:2;position:absolute;right:6vw;bottom:7%;display:flex;gap:14px;padding:17px 26px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.68);color:var(--green);font-size:.82rem;backdrop-filter:blur(10px)}.stage-ribbon b{color:var(--gold)}.manifesto{text-align:center;padding:38px;border-top:1px solid rgba(197,138,55,.4)}.manifesto .eyebrow{margin-bottom:5px}.manifesto p:last-child{font-size:1.2rem}.intro{display:grid;grid-template-columns:80px 1fr 1fr;gap:5vw;background:var(--rose)}.section-number{font:3rem var(--serif);color:rgba(124,69,88,.3)}.intro h2,.section-heading h2,.body-copy h2,.about h2,.faq h2,.contact h2{font:clamp(2.8rem,5vw,5.2rem)/1.06 var(--serif);margin:0}.intro-copy{font-size:1.08rem}.intro blockquote{margin:42px 0 0;padding-left:24px;border-left:1px solid var(--wine);font:1.45rem/1.5 var(--serif);color:var(--wine)}.body-speaks{display:grid;grid-template-columns:.8fr 1.2fr 1fr;gap:6vw;align-items:center}.organic-mark{height:520px;border-radius:50% 50% 45% 55%;background:linear-gradient(145deg,var(--beige),var(--taupe));position:relative}.organic-mark:before{content:"";position:absolute;inset:12%;border:1px solid rgba(124,69,88,.35);border-radius:48% 52% 46% 54%}.organic-mark span{position:absolute;inset:25% 35%;border-right:2px solid rgba(124,69,88,.45);border-radius:50%}.body-copy p:last-child{margin-top:30px}.signals{display:flex;flex-wrap:wrap;gap:10px}.signals span{padding:10px 16px;border:1px solid var(--line);border-radius:30px;background:#fff}.help{background:#f5f2ed}.section-heading{max-width:850px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:65px}.service-card{background:#f5f2ed;padding:42px;min-height:260px}.service-card svg{color:var(--wine);width:30px;height:30px}.service-card h3{font:1.6rem var(--serif);margin:28px 0 10px}.method{display:grid;grid-template-columns:1fr 1.3fr;gap:9vw}.method-heading{position:sticky;top:80px;align-self:start}.method-heading h2{font:clamp(5rem,10vw,9rem)/1 var(--serif);letter-spacing:.14em;margin:0}.inline-o{color:var(--gold);display:inline-block;transform:rotate(-8deg)}.method-heading p:last-child{max-width:500px}.method-step{display:flex;gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.letter{font:3rem var(--serif);color:var(--wine);width:55px}.method-step h3{font:1.55rem var(--serif);margin:4px 0}.method-step p{margin:0}.big-o{min-height:720px;background:var(--green);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.big-o-rings{width:430px;height:430px;border:1px solid rgba(249,234,233,.35);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 26px transparent,0 0 0 27px rgba(249,234,233,.25),0 0 0 53px transparent,0 0 0 54px rgba(249,234,233,.18),0 0 0 80px transparent,0 0 0 81px rgba(249,234,233,.12)}.big-o-center{font:16rem/1 var(--serif);color:var(--rose);position:relative}.big-o-center small{display:block;font:500 .65rem var(--sans);letter-spacing:.35em;margin-top:-20px}.big-o>p{font:1.5rem var(--serif);margin-top:60px}.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:var(--beige)}.about-visual{height:650px;position:relative}.portrait-placeholder{height:100%;background:linear-gradient(145deg,var(--taupe),var(--rose));display:grid;place-items:center;color:rgba(124,69,88,.55)}.portrait-placeholder svg{width:120px;height:120px;stroke-width:.7}.portrait-placeholder span{position:absolute;bottom:25px;font-size:.8rem}.about-badge{position:absolute;right:-40px;bottom:40px;background:var(--wine);color:white;padding:25px 35px;font:1.3rem/1.5 var(--serif)}.about-copy p{max-width:650px}.modalities{background:#fff}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px}.program-grid article{padding:48px;border:1px solid var(--line)}.program-grid article+article{border-left:0}.program-grid .featured{background:var(--rose)}.program-grid span{font:3.5rem var(--serif);color:var(--taupe)}.program-grid h3{font:1.7rem var(--serif)}.mode-note{text-align:center;margin-top:35px}.mode-note svg{width:17px;vertical-align:middle;color:var(--wine)}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:#f7f5f1}.accordion details{border-top:1px solid var(--line);padding:22px 0}.accordion details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:1.08rem;font-weight:400;list-style:none}.accordion summary svg{width:19px}.accordion details[open] summary svg{transform:rotate(45deg)}.accordion p{max-width:700px;color:#555}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--rose)}.contact-copy p{max-width:600px}.whatsapp-link{display:inline-flex;align-items:center;gap:10px;margin-top:25px;color:var(--green);font-weight:500}.contact-form{background:#fff;padding:42px;border-radius:4px;box-shadow:0 25px 70px rgba(124,69,88,.08)}label{display:block;font-size:.8rem;font-weight:500;letter-spacing:.04em;margin-bottom:20px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #cabdb2;background:transparent;padding:12px 2px;color:var(--ink);outline:0;border-radius:0}input:focus,select:focus,textarea:focus{border-color:var(--wine)}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form .btn{width:100%;margin-top:8px}.contact-form small{display:block;text-align:center;margin-top:16px;color:#777}.hp{position:absolute!important;left:-9999px!important}.alert{padding:13px;margin-bottom:20px;border-radius:4px}.alert.success{background:#e4efe1;color:#355038}.alert.error{background:#f7e2e5;color:#7c3343}footer{padding:65px clamp(24px,6vw,96px) 30px;background:#262c2a;color:#e9e4dc;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:start}.footer-brand{font:2rem/1 var(--serif);letter-spacing:.08em}.footer-brand span{font-size:1rem}footer a{margin-right:15px}footer small{grid-column:1/3;color:#a9aaa7;max-width:900px}.nubocore{text-align:right;color:var(--taupe);font-size:.8rem}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){nav{gap:20px}.hero{grid-template-columns:1fr;padding-top:140px}.hero-copy{z-index:2}.hero-art{position:absolute;right:-20%;top:15%;width:65%;opacity:.42}.stage-ribbon{grid-column:1;left:6vw;right:auto}.intro,.body-speaks,.method,.about,.faq,.contact{grid-template-columns:1fr}.section-number{display:none}.organic-mark{height:300px}.method-heading{position:static}.program-grid{grid-template-columns:1fr}.program-grid article+article{border-left:1px solid var(--line);border-top:0}.about-badge{right:20px}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.section-pad{padding:78px 22px}.site-header{height:88px;padding:0 22px}.brand{font-size:1.55rem}.enso-o{width:28px;height:28px}.menu-toggle{display:block;z-index:2}.menu-toggle svg{width:28px}nav{display:none;position:absolute;top:0;left:0;right:0;background:var(--paper);padding:100px 28px 35px;flex-direction:column;align-items:stretch;box-shadow:0 20px 40px rgba(0,0,0,.08)}nav.open{display:flex}.hero{min-height:860px;padding-top:130px;align-items:start}.hero h1{font-size:3.7rem}.hero-art{top:460px;right:-20%;width:110%;min-height:400px}.stage-ribbon{left:22px;right:22px;bottom:25px;overflow:auto;white-space:nowrap}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.service-grid{grid-template-columns:1fr}.big-o{min-height:590px}.big-o-rings{width:250px;height:250px}.big-o-center{font-size:9rem}.about-visual{height:480px}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr}footer small{grid-column:1}.nubocore{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* ENSOMAR v1.3 — acceso flotante a WhatsApp */
.whatsapp-bubble{position:fixed;right:clamp(18px,2.5vw,38px);bottom:clamp(18px,2.5vw,38px);z-index:30;display:flex;align-items:center;gap:12px;padding:11px 12px 11px 19px;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:linear-gradient(135deg,#46645d,#607f75);color:#fff;box-shadow:0 16px 38px rgba(55,79,72,.3);font-size:.82rem;font-weight:500;letter-spacing:.035em;transition:transform .25s ease,box-shadow .25s ease}
.whatsapp-bubble:before{content:"";position:absolute;inset:-5px;border:1px solid rgba(197,138,55,.4);border-radius:inherit;pointer-events:none}
.whatsapp-bubble svg{width:25px;height:25px;stroke-width:1.7}
.whatsapp-bubble:hover,.whatsapp-bubble:focus-visible{transform:translateY(-3px);box-shadow:0 20px 46px rgba(55,79,72,.38);outline:none}
@media(max-width:760px){.whatsapp-bubble{right:18px;bottom:18px;width:58px;height:58px;padding:0;justify-content:center}.whatsapp-bubble span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.whatsapp-bubble svg{width:27px;height:27px}}

/* ENSOMAR v1.2 — presentación editorial del mapa del método */
.method-map{position:relative;display:grid;grid-template-columns:minmax(280px,.66fr) minmax(560px,1.34fr);gap:clamp(48px,7vw,120px);align-items:start;background:linear-gradient(135deg,#f6eee8 0%,#fbf8f3 54%,#eef1e9 100%);overflow:hidden}
.method-map:before{content:"";position:absolute;width:520px;height:520px;left:-310px;top:11%;border:1px solid rgba(197,138,55,.25);border-radius:50%;box-shadow:0 0 0 38px transparent,0 0 0 39px rgba(197,138,55,.14),0 0 0 78px transparent,0 0 0 79px rgba(197,138,55,.09)}
.method-map-copy{position:sticky;top:100px;padding-top:38px;z-index:1}
.method-map-copy h2{font:clamp(3rem,5vw,5.35rem)/1.02 var(--serif);margin:0 0 30px;color:var(--ink)}
.method-map-copy>p:not(.eyebrow):not(.method-map-note){max-width:500px;font-size:1.06rem;color:#4d514e}
.method-map-note{display:flex;align-items:center;gap:20px;max-width:460px;margin-top:42px;padding-top:25px;border-top:1px solid rgba(124,69,88,.2);color:var(--green)}
.method-map-note span{display:grid;place-items:center;flex:0 0 56px;width:56px;height:56px;border:1px solid var(--gold);border-radius:50%;font:2rem var(--serif);color:var(--wine);background:rgba(255,255,255,.44)}
.method-map-art{width:min(100%,880px);margin:0 auto;position:relative}
.method-map-art:before{content:"ENSOMAR";position:absolute;right:-34px;top:80px;writing-mode:vertical-rl;font:500 .63rem var(--sans);letter-spacing:.42em;color:rgba(124,69,88,.55)}
.method-map-frame{position:relative;padding:clamp(10px,1.5vw,18px);border:1px solid rgba(197,138,55,.36);background:rgba(255,253,249,.73);box-shadow:0 34px 90px rgba(81,63,49,.13);backdrop-filter:blur(10px)}
.method-map-frame:before,.method-map-frame:after{content:"";position:absolute;width:42px;height:42px;border-color:var(--gold);pointer-events:none}
.method-map-frame:before{left:-7px;top:-7px;border-left:1px solid;border-top:1px solid}
.method-map-frame:after{right:-7px;bottom:-7px;border-right:1px solid;border-bottom:1px solid}
.method-map-frame img{display:block;width:100%;height:auto;background:#fbf8f3}
.method-map-art figcaption{display:flex;align-items:center;gap:16px;margin-top:24px;color:var(--green);font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.method-map-art figcaption:before{content:"";width:58px;height:1px;background:var(--gold)}

@media(max-width:1000px){.method-map{grid-template-columns:1fr}.method-map-copy{position:static;padding-top:0;max-width:720px}.method-map-art{width:min(100%,780px)}}
@media(max-width:760px){.method-map{gap:40px}.method-map-copy h2{font-size:clamp(2.8rem,13vw,4rem)}.method-map-art:before{display:none}.method-map-frame{padding:7px;box-shadow:0 20px 55px rgba(81,63,49,.12)}.method-map-art figcaption{font-size:.62rem;letter-spacing:.1em;gap:10px}.method-map-art figcaption:before{width:30px}}

/* ENSOMAR v1.1 — refinamiento del hero y símbolo de marca */
.brand .enso-o{width:38px;height:38px;margin:0 4px 0 -3px;display:block;flex:0 0 auto;border:0;border-radius:0}
.brand .enso-o:before,.brand .enso-o:after,.brand .enso-o i{display:none}
.hero{min-height:100vh;padding:155px max(5vw,calc((100vw - 1600px)/2)) 108px;grid-template-columns:minmax(510px,1.08fr) minmax(480px,.92fr);gap:clamp(35px,4vw,72px)}
.hero-copy{max-width:720px;position:relative;z-index:2}
.hero h1{font-size:clamp(4rem,5.35vw,6.3rem);line-height:.98;letter-spacing:.018em;white-space:nowrap}
.hero h1 br+*{color:var(--ink)}
.hero-art{height:min(67vh,690px);min-height:540px;display:flex;align-items:center;justify-content:center}
.hero-art>img{display:block;width:min(100%,650px);height:100%;object-fit:contain;object-position:center}
.hero-art>.portal-lines,.hero-art>.portal-arch,.hero-art>.portal-sun,.hero-art>.portal-ground,.hero-art>.body-line,.hero-art>.ensomar-seal{display:none}
.stage-ribbon{right:max(5vw,calc((100vw - 1600px)/2));bottom:5.5%;width:min(42vw,690px);justify-content:center;gap:12px;padding:16px 22px;box-shadow:0 16px 44px rgba(76,55,43,.05)}
.method-heading h2{font-size:clamp(4.5rem,8vw,8rem);letter-spacing:.1em}
.method-wordmark{display:flex;align-items:center}
.method-wordmark img{width:.8em;height:.8em;margin:0 .02em 0 -.05em}
.big-o-center{font-size:0}
.big-o-center img{display:block;width:270px;height:270px;filter:brightness(0) saturate(100%) invert(94%) sepia(12%) saturate(467%) hue-rotate(303deg) brightness(104%) contrast(95%)}
.big-o-center small{margin-top:-24px;color:var(--rose)}

@media(max-width:1100px){
  .hero{grid-template-columns:1fr;padding-top:140px}
  .hero h1{white-space:normal}
  .hero-art{position:absolute;right:-8%;top:15%;width:58%;height:min(67vh,690px);min-height:540px;opacity:.32}
  .stage-ribbon{left:6vw;right:6vw;width:auto}
}
@media(max-width:760px){
  .brand .enso-o{width:30px;height:30px}
  .hero{min-height:900px;padding-top:130px}
  .hero h1{font-size:clamp(3.15rem,16vw,4rem);line-height:.98}
  .hero-art{top:470px;right:-9%;width:95%;height:390px;min-height:0;opacity:.48}
  .stage-ribbon{left:22px;right:22px;bottom:24px;width:auto;justify-content:flex-start}
  .big-o-center img{width:165px;height:165px}
  .big-o-center small{margin-top:-13px}
}

/* ENSOMAR v1.5 — retrato editorial de Esthefani */
.portrait-frame{height:100%;padding:10px;background:rgba(255,255,255,.45);border:1px solid rgba(197,138,55,.42);box-shadow:0 28px 70px rgba(81,63,49,.16);position:relative;overflow:hidden}
.portrait-frame:before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.58);z-index:1;pointer-events:none}
.portrait-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%}
.about-badge{box-shadow:0 18px 42px rgba(81,43,58,.2);z-index:2}
@media(max-width:760px){.portrait-frame{padding:7px}.portrait-frame:before{inset:15px}.portrait-frame img{object-position:center 40%}}

/* ENSOMAR v1.6 — redes sociales administrables */
.contact-socials{margin-top:38px;padding-top:28px;border-top:1px solid rgba(124,69,88,.18)}
.contact-socials>span{display:block;margin-bottom:15px;color:var(--wine);font-size:.72rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase}
.social-links{display:flex;flex-wrap:wrap;gap:11px}
.social-links a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 16px;border:1px solid rgba(124,69,88,.22);border-radius:999px;background:rgba(255,255,255,.42);color:var(--green);font-size:.84rem;font-weight:500;transition:transform .22s ease,border-color .22s ease,background .22s ease}
.social-links a:hover,.social-links a:focus-visible{transform:translateY(-2px);border-color:var(--gold);background:#fff;outline:none}
.social-links svg{width:17px;height:17px;stroke-width:1.7}
.footer-connect{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.footer-email{margin:0;color:#e9e4dc}
.footer-socials{display:flex;gap:10px}
.footer-socials a{display:grid;place-items:center;width:42px;height:42px;margin:0;border:1px solid rgba(220,201,181,.32);border-radius:50%;color:var(--taupe);transition:background .22s ease,color .22s ease,transform .22s ease}
.footer-socials a:hover,.footer-socials a:focus-visible{background:var(--taupe);color:#262c2a;transform:translateY(-2px);outline:none}
.footer-socials svg{width:18px;height:18px;stroke-width:1.7}
@media(max-width:760px){.social-links{gap:8px}.social-links a{padding:9px 13px}.footer-connect{gap:15px}}

/* ENSOMAR v1.7 — paleta oficial y experiencias individuales */
:root{--rose-logo:#D6A9A8;--rose:#F9EAE9;--beige:#CDBBB6;--purple:#6967CB;--gray:#ACB6B6;--white:#FFFFFF;--paper:#FFFCFA;--line:rgba(101,82,86,.16)}
body{background:var(--paper)}
.eyebrow{color:#9B696A}
.nav-cta{border-color:var(--rose-logo);background:rgba(255,255,255,.42)}
.btn-primary{background:linear-gradient(135deg,#8B575D,#6F4652);box-shadow:0 14px 36px rgba(111,70,82,.17)}
.intro{background:linear-gradient(130deg,var(--rose),#fff 145%)}
.help{background:#F7F4F2}.service-card{background:#F7F4F2}
.program-grid .featured{background:var(--rose)}
.contact{background:linear-gradient(135deg,var(--rose),#fff 125%)}
.individual-sessions{position:relative;background:#fff;overflow:hidden}
.individual-sessions:before{content:"";position:absolute;width:490px;height:490px;right:-275px;top:-210px;border:1px solid rgba(105,103,203,.12);border-radius:50%;box-shadow:0 0 0 34px transparent,0 0 0 35px rgba(214,169,168,.18),0 0 0 70px transparent,0 0 0 71px rgba(105,103,203,.08)}
.individual-heading{position:relative;z-index:1;display:grid;grid-template-columns:minmax(310px,1.08fr) minmax(280px,.72fr);gap:8vw;align-items:end;max-width:1240px;margin:0 auto 68px}
.individual-heading .eyebrow{grid-column:1/-1;margin-bottom:-4px}
.individual-heading h2{font:clamp(3.2rem,5.5vw,5.8rem)/1.02 var(--serif);margin:0;max-width:820px}
.individual-heading>p:last-child{margin:0 0 8px;max-width:520px;font-size:1.05rem;color:#565152}
.experience-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:28px;max-width:1420px;margin:auto}
.experience-card{position:relative;display:grid;grid-template-columns:minmax(235px,.82fr) minmax(300px,1.18fr);min-height:500px;border:1px solid rgba(205,187,182,.65);background:#fff;box-shadow:0 28px 80px rgba(83,63,67,.08);overflow:hidden}
.experience-card:first-child{grid-column:1/-1;min-height:445px;grid-template-columns:1.05fr .95fr}
.experience-card:nth-child(2){grid-column:1/7}.experience-card:nth-child(3){grid-column:7/-1}
.experience-visual{min-height:100%;background:var(--rose);overflow:hidden}
.experience-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.experience-card:hover .experience-visual img{transform:scale(1.025)}
.experience-content{position:relative;padding:clamp(34px,4vw,58px);display:flex;flex-direction:column;align-items:flex-start}
.experience-kicker{margin:0 0 24px!important;color:var(--purple)!important;font-size:.68rem!important;font-weight:600;letter-spacing:.16em}
.experience-content h3{font:clamp(2.35rem,3.3vw,4rem)/1 var(--serif);margin:0 0 22px;color:#352F31}
.experience-content>p:not(.experience-kicker){margin:0 0 22px;color:#5D5758}
.experience-content ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;margin:0 0 28px;padding:22px 0 0;border-top:1px solid var(--line);list-style:none;width:100%;font-size:.78rem;color:#615A5C}
.experience-content li{position:relative;padding-left:15px}.experience-content li:before{content:"";position:absolute;left:0;top:.68em;width:5px;height:5px;border-radius:50%;background:var(--rose-logo)}
.experience-content a{display:inline-flex;align-items:center;gap:10px;margin-top:auto;padding-top:20px;color:#6E4C51;font-size:.82rem;font-weight:600;letter-spacing:.04em;border-bottom:1px solid var(--rose-logo)}
.experience-content a svg{width:16px}
.hypnosis-card .experience-visual{background:linear-gradient(145deg,var(--rose),#fff)}
.massage-card,.elemental-card{grid-template-columns:1fr}.massage-card .experience-visual,.elemental-card .experience-visual{height:310px;min-height:0}
.massage-card .experience-content,.elemental-card .experience-content{min-height:520px}
.complementary-strip{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;max-width:1420px;margin:28px auto 0;padding:34px 38px;background:linear-gradient(105deg,rgba(249,234,233,.86),rgba(205,187,182,.27));border:1px solid rgba(214,169,168,.42)}
.complementary-mark{display:grid;place-items:center;width:62px;height:62px;border:1px solid rgba(105,103,203,.34);border-radius:50%;color:var(--purple);background:#fff}.complementary-mark svg{width:24px}
.complementary-strip .eyebrow{margin:0 0 6px;font-size:.65rem}.complementary-strip h3{font:2rem var(--serif);margin:0 0 5px}.complementary-strip p:last-child{margin:0;max-width:900px;color:#5D5758}
.btn-soft{white-space:nowrap;border:1px solid rgba(105,103,203,.36);color:#4D4BA5;background:rgba(255,255,255,.6)}
.contact-form select{cursor:pointer}
.contact-form select:has(option:checked:not([value=""])){border-color:var(--purple)}
.whatsapp-bubble{background:linear-gradient(135deg,#6967CB,#5654B7);box-shadow:0 16px 38px rgba(105,103,203,.28)}
.whatsapp-bubble:hover,.whatsapp-bubble:focus-visible{box-shadow:0 20px 46px rgba(105,103,203,.38)}

@media(max-width:1100px){
  .individual-heading{grid-template-columns:1fr;gap:22px}
  .experience-card,.experience-card:first-child{grid-template-columns:1fr;min-height:0}
  .experience-card .experience-visual{height:350px;min-height:0}
  .experience-card:first-child .experience-visual{height:430px}
  .experience-content{min-height:440px}
  .experience-card:first-child .experience-content{min-height:370px}
}
@media(max-width:800px){
  .experience-grid{display:block}.experience-card{margin-bottom:22px}
  .experience-card .experience-visual,.experience-card:first-child .experience-visual{height:clamp(260px,69vw,390px)}
  .experience-content,.massage-card .experience-content,.elemental-card .experience-content,.experience-card:first-child .experience-content{min-height:0}
  .experience-content ul{grid-template-columns:1fr}
  .experience-content a{margin-top:16px}
  .complementary-strip{grid-template-columns:auto 1fr;padding:28px 24px}.complementary-strip .btn{grid-column:1/-1;width:100%}
}
@media(max-width:520px){.individual-heading{margin-bottom:42px}.individual-heading h2{font-size:2.8rem}.experience-content{padding:30px 25px}.experience-kicker{font-size:.61rem!important}.complementary-mark{width:52px;height:52px}.complementary-strip{gap:18px}.complementary-strip h3{font-size:1.65rem}}

/* ENSOMAR v1.8 — comunicación inclusiva, abundancia e ilustraciones refinadas */
.abundance-card{grid-column:1/-1;display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:34px;min-height:220px;padding:44px 52px;background:linear-gradient(110deg,#fff 0%,rgba(249,234,233,.82) 55%,rgba(105,103,203,.08) 100%);border-top:1px solid rgba(214,169,168,.45);border-bottom:1px solid rgba(105,103,203,.16);position:relative;overflow:hidden}
.abundance-card:after{content:"";position:absolute;right:-90px;top:-120px;width:290px;height:290px;border:1px solid rgba(105,103,203,.13);border-radius:50%;box-shadow:0 0 0 25px transparent,0 0 0 26px rgba(214,169,168,.16),0 0 0 52px transparent,0 0 0 53px rgba(105,103,203,.07)}
.abundance-card>svg{width:54px;height:54px;padding:13px;border:1px solid rgba(105,103,203,.3);border-radius:50%;color:var(--purple);background:rgba(255,255,255,.8);z-index:1}
.abundance-card>div{position:relative;z-index:1;max-width:1040px}.abundance-card h3{margin:8px 0 10px;font-size:clamp(1.9rem,3vw,2.8rem)}.abundance-card p{max-width:920px;margin:0;color:#575153}
.service-label{color:var(--purple);font-size:.66rem;font-weight:600;letter-spacing:.16em}.abundance-card a{display:inline-flex;align-items:center;gap:9px;margin-top:20px;color:#6E4C51;font-size:.8rem;font-weight:600;border-bottom:1px solid var(--rose-logo)}.abundance-card a svg{width:15px}
@media(max-width:760px){.abundance-card{grid-template-columns:1fr;gap:20px;padding:36px 28px}.abundance-card>svg{width:50px;height:50px}.service-label{line-height:1.5}.body-copy h2 br{display:none}}

/* ENSOMAR v1.9 — colección premium de limpiezas energéticas */
.cleansing-suite{position:relative;max-width:1420px;margin:80px auto 0;padding:clamp(42px,5vw,76px);background:linear-gradient(145deg,#393235 0%,#252728 100%);color:#fff;overflow:hidden;box-shadow:0 34px 90px rgba(50,40,43,.16)}
.cleansing-suite:before{content:"";position:absolute;right:-150px;top:-220px;width:520px;height:520px;border:1px solid rgba(214,169,168,.18);border-radius:50%;box-shadow:0 0 0 35px transparent,0 0 0 36px rgba(249,234,233,.1),0 0 0 72px transparent,0 0 0 73px rgba(105,103,203,.12)}
.cleansing-heading{position:relative;z-index:1;display:grid;grid-template-columns:minmax(320px,1.12fr) minmax(270px,.88fr);gap:clamp(35px,7vw,100px);align-items:end;margin-bottom:52px}
.cleansing-heading .eyebrow{margin-bottom:14px;color:var(--rose-logo)}
.cleansing-heading h2{font:clamp(3rem,5vw,5.3rem)/1.02 var(--serif);margin:0;max-width:760px}
.cleansing-heading>p{max-width:560px;margin:0 0 7px;color:rgba(255,255,255,.72);font-size:1.02rem}
.cleansing-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(255,255,255,.14)}
.cleansing-card{display:flex;flex-direction:column;padding:clamp(30px,3.4vw,48px);background:rgba(255,255,255,.045);min-width:0}
.cleansing-card+.cleansing-card{border-left:1px solid rgba(255,255,255,.14)}
.cleansing-card:nth-child(2){background:linear-gradient(155deg,rgba(214,169,168,.15),rgba(255,255,255,.04))}
.cleansing-card:nth-child(3){background:linear-gradient(155deg,rgba(105,103,203,.18),rgba(255,255,255,.035))}
.cleansing-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;color:var(--rose-logo)}
.cleansing-card-top span{font:2.35rem var(--serif);color:rgba(255,255,255,.28)}
.cleansing-card-top svg{width:30px;height:30px;stroke-width:1.35}
.cleansing-card h3{font:clamp(1.8rem,2.5vw,2.75rem)/1.08 var(--serif);margin:0 0 18px}
.cleansing-card>p{min-height:104px;margin:0;color:rgba(255,255,255,.68)}
.cleansing-card ul{margin:28px 0 34px;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.12);list-style:none;color:rgba(255,255,255,.78);font-size:.78rem}
.cleansing-card li{position:relative;padding:7px 0 7px 18px}
.cleansing-card li:before{content:"";position:absolute;left:0;top:1.12em;width:5px;height:5px;border-radius:50%;background:var(--rose-logo)}
.cleansing-card a{display:inline-flex;align-items:center;gap:10px;margin-top:auto;padding-top:8px;color:#fff;font-size:.78rem;font-weight:500;letter-spacing:.035em}
.cleansing-card a svg{width:15px;color:var(--rose-logo)}
.cleansing-card a:hover{color:var(--rose-logo)}
@media(max-width:1050px){.cleansing-heading{grid-template-columns:1fr}.cleansing-grid{grid-template-columns:1fr}.cleansing-card+.cleansing-card{border-left:0;border-top:1px solid rgba(255,255,255,.14)}.cleansing-card>p{min-height:0}.cleansing-card ul{columns:2;column-gap:32px}}
@media(max-width:620px){.cleansing-suite{margin-top:52px;padding:38px 24px}.cleansing-heading{margin-bottom:34px}.cleansing-heading h2{font-size:2.75rem}.cleansing-card{padding:30px 24px}.cleansing-card ul{columns:1}.cleansing-card h3{font-size:2rem}}

/* ENSOMAR v1.10 — teléfonos públicos visibles en contacto */
.contact-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:34px;max-width:620px}
.contact-channel{display:flex;align-items:center;gap:14px;min-width:0;padding:16px 17px;border:1px solid rgba(214,169,168,.48);border-radius:12px;background:rgba(255,255,255,.58);box-shadow:0 12px 34px rgba(83,63,67,.045);transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}
.contact-channel:hover,.contact-channel:focus-visible{transform:translateY(-2px);border-color:rgba(105,103,203,.38);background:#fff;box-shadow:0 16px 38px rgba(83,63,67,.08);outline:none}
.contact-channel-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border:1px solid rgba(105,103,203,.24);border-radius:50%;background:linear-gradient(145deg,#fff,var(--rose));color:var(--purple)}
.contact-channel-icon svg{width:18px;height:18px;stroke-width:1.65}
.contact-channel>span:last-child{display:flex;min-width:0;flex-direction:column;line-height:1.25}
.contact-channel small{margin-bottom:5px;color:#8A6668;font-size:.64rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.contact-channel strong{overflow-wrap:anywhere;color:#393335;font-size:.95rem;font-weight:500;letter-spacing:.01em}
.contact-channels+.whatsapp-link{margin-top:20px}
@media(max-width:680px){.contact-channels{grid-template-columns:1fr}.contact-channel{padding:14px 15px}}
