@font-face{font-family:Cinzel;src:url('assets/Cinzel.ttf') format('truetype');font-weight:400 900;font-display:swap}
:root{--bg:#fff;--purple:#663776;--mauve:#cca9d5;--gold:#cba55f;--muted:#57325f}body{background:#fff;color:#51305b;font-size:22px}header{position:relative;height:auto;display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:20px 4% 18px;background:white;border-bottom:2px solid #cba55f}.brand{gap:24px;max-width:900px}.brand img{width:140px;height:140px;object-fit:contain;filter:brightness(0) saturate(100%) invert(24%) sepia(23%) saturate(1544%) hue-rotate(238deg) brightness(91%) contrast(90%)}.brand span{font:600 clamp(28px,4vw,55px)/1.15 Cinzel,Georgia,serif;color:#663776;letter-spacing:.4px}.menu{display:none!important}header nav,header nav.open{position:static;display:flex;flex-wrap:wrap;justify-content:stretch;align-items:stretch;gap:10px;padding:0;background:white;border:0}header nav a,header nav a[aria-current=page],header nav .nav-cta{flex:1 1 auto;display:flex;align-items:center;justify-content:center;text-align:center;background:#663776;color:#fff;border:2px solid #663776;border-radius:10px;padding:12px 16px;font:22px/1.35 Georgia,serif;min-height:58px}header nav a[aria-current=page]{background:#4f245d;border-color:#cba55f}header nav a:hover{background:#824c92;color:white}h1,h2,h3{font-family:Cinzel,Georgia,serif;color:#663776;font-weight:500}h1{font-size:clamp(34px,4.7vw,70px);line-height:1.3;letter-spacing:0}h2{font-size:clamp(30px,3.5vw,47px)}h3{font-size:28px}em{font-style:normal;color:#663776}.hero{display:flex;justify-content:center;text-align:center;min-height:600px;padding:65px 6% 95px;background:radial-gradient(ellipse at 5% 100%,#ddbee7 0,transparent 43%),radial-gradient(ellipse at 100% 95%,#e2c9e9 0,transparent 44%),#f4eaf5}.hero-copy{max-width:1250px;margin:auto}.hero h1{margin-bottom:24px}.hero .lead{font-size:clamp(24px,2.6vw,38px);color:#57325f;max-width:1100px;margin:0 auto 30px;line-height:1.5}.actions{align-items:center;gap:22px}.button{background:#663776;color:#fff!important;font-size:26px;padding:17px 38px;border-radius:40px}.button:hover{background:#4f245d}.small,.eyebrow,.text-link,.section-top>p,.topic-grid p,.service-copy p,.filters button,.outline,.gallery span,summary,details p,.modalities,footer,.quote span,.help-method p,.image-note{font-size:22px}.eyebrow{letter-spacing:1px;color:#663776}.hero .small{color:#57325f}.hero-number{display:none}.section{padding:70px 6%}.intro,.contact{background:#fff;color:#51305b}.situations{background:#f4eaf5}.reverse{background:#f4eaf5}.service-copy p,.topic-grid p,.section-top>p,.small{color:#57325f}.quote{background:#ead7ef}.help-method h3{color:#663776}.text-link{color:#663776}.page-return{background:#fff;padding:25px 6% 45px}.intro+.page-return,.contact+.page-return{background:#fff}.filters .active{background:#663776}.filters button,.outline{color:#663776;border-color:#a278af}.gallery button,.gallery img{background:#f4eaf5;color:#57325f}footer{background:#f4eaf5;color:#57325f;gap:25px}footer .brand img{width:90px;height:90px}footer .brand span{font-size:26px}.contact .button{font-size:24px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #865497;outline-offset:4px}
@media(max-width:700px){header{padding:15px 4%;gap:15px}.brand{gap:12px}.brand img{width:90px;height:100px}.brand span{font-size:28px}header nav a,header nav a[aria-current=page],header nav .nav-cta{font-size:20px;padding:10px 9px;flex:1 1 42%;min-height:52px}.hero{padding:40px 5% 55px;min-height:0}.hero h1{font-size:34px}.hero .lead{font-size:25px}.button{font-size:24px;padding:16px 25px}.section{padding:45px 6%}.small,.eyebrow,.text-link,.topic-grid p,.section-top>p,.service-copy p,.filters button,.gallery span,details p,footer,.help-method p{font-size:20px}.eyebrow{line-height:1.6}footer .brand span{font-size:24px}h2{font-size:32px}h3{font-size:26px}footer{align-items:flex-start}}
/* Navegación lateral discreta y persistente */
:root{--panel:210px}header{padding:22px 5%;margin-left:var(--panel);border-bottom:1px solid #e2d2e9;gap:0}header .brand img{width:110px;height:110px}header .brand span{font-size:clamp(28px,3.5vw,48px)}header nav,header nav.open{position:fixed;inset:0 auto 0 0;width:var(--panel);padding:30px 16px;background:#f4eaf5;border-right:1px solid #d9bfdf;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:12px;z-index:30;overflow-y:auto}header nav a,header nav a[aria-current=page],header nav .nav-cta{flex:0 0 auto;min-height:46px;font:20px/1.3 Georgia,serif;padding:10px 9px;border-radius:6px;background:#fff;color:#663776;border:1px solid #d8bfdf;box-shadow:none}header nav a[aria-current=page]{background:#e5cfea;color:#542460;border-color:#aa83b7}header nav a:hover{background:#ead8ef;color:#542460}main,footer{margin-left:var(--panel)}header .menu{display:none!important}.hero{padding-top:45px;min-height:580px}.hero h1{font-size:clamp(34px,4vw,58px)}footer .brand span{font-size:26px}
@media(max-width:1000px) and (min-width:701px){:root{--panel:180px}header nav,header nav.open{padding:22px 10px}header nav a{font-size:20px}.hero h1{font-size:40px}}
@media(max-width:700px){header{margin-left:0;padding:15px 5%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px}header .brand img{width:72px;height:80px}header .brand span{font-size:25px}header .brand{gap:9px}header .menu{display:block!important;border:1px solid #c8a8d2;border-radius:6px;background:#fff;color:#663776;padding:8px 12px;font-size:24px;flex-shrink:0}header nav{display:none!important}header nav.open{display:flex!important;inset:0 auto 0 0;width:min(78vw,270px);padding:75px 18px 25px;box-shadow:5px 0 25px #66377633;justify-content:flex-start}header nav a,header nav a[aria-current=page],header nav .nav-cta{font-size:20px;padding:12px 10px;min-height:48px}main,footer{margin-left:0}.hero{min-height:0;padding:35px 5% 50px}.hero h1{font-size:34px}.menu[aria-expanded=true]{position:relative;z-index:40}}

.page-photo{margin:0 auto 50px;padding:0 6%;max-width:1000px}.page-photo img{display:block;width:100%;max-height:480px;object-fit:cover;object-position:center;border-radius:16px}.hero+.page-photo{padding-top:35px}.practice-photo{margin:30px 0 45px}.practice-photo img{width:100%;height:330px;object-fit:cover;border-radius:15px}.practice-page{max-width:1200px}.practice-page h1{font-size:clamp(32px,4vw,52px)}.exercise{padding:35px 0;border-top:1px solid #d8bfdf}.exercise h2{font-size:32px}.exercise p,.exercise li{font-size:22px}.exercise li{padding:7px 0}@media(min-width:701px){.page-photo{margin-left:calc(var(--panel) + 6%);margin-right:6%;max-width:none}}@media(max-width:700px){.page-photo img{max-height:360px}.exercise p,.exercise li{font-size:20px}.practice-photo img{height:280px}}
/* Imágenes vinculadas al contenido, con bordes difusos */
.editorial-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:40px;align-items:center;padding:55px 6%}.editorial-layout>.section,.editorial-layout>.hero{padding:0;background:none;min-height:0}.editorial-layout>.hero{text-align:left}.editorial-layout .hero-copy{margin:0}.editorial-layout .actions{align-items:flex-start}.editorial-layout .hero h1{font-size:clamp(32px,3.3vw,48px)}.editorial-layout .hero .lead{font-size:28px;margin-left:0}.editorial-layout .page-photo{margin:0;padding:0;max-width:none}.editorial-layout .page-photo img,.service-image img,.practice-photo img{border-radius:0;border:0;background:transparent;object-fit:cover;-webkit-mask-image:radial-gradient(ellipse closest-side,#000 62%,transparent 100%);mask-image:radial-gradient(ellipse closest-side,#000 62%,transparent 100%)}.editorial-layout .page-photo img{width:100%;height:500px;max-height:none}.editorial-layout:has(.intro),.editorial-layout:has(.contact){background:#fff}.editorial-layout:has(.hero),.editorial-layout:has(.situations){background:#f4eaf5}.editorial-layout .intro-grid{display:block}.editorial-layout .contact{display:block}.editorial-layout .contact aside{margin-top:35px}.editorial-layout .section-top{display:block}.editorial-layout .topic-grid{grid-template-columns:1fr 1fr}.practice-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.practice-photo{margin:0}.practice-photo img{height:360px}.exercise .card-prompt{background:#f4eaf5;border-left:3px solid #b591c0;padding:18px 22px}.service-image img{max-height:650px}.service{background:#f4eaf5}@media(max-width:1050px){.editorial-layout{grid-template-columns:1fr;gap:15px}.editorial-layout .page-photo{grid-row:2}.editorial-layout .page-photo img{height:340px}.practice-intro{grid-template-columns:1fr}}@media(max-width:700px){.editorial-layout{padding:35px 6%;gap:10px}.editorial-layout .hero h1{font-size:32px}.editorial-layout .hero .lead{font-size:25px}.editorial-layout .page-photo img{height:300px}.editorial-layout .topic-grid{grid-template-columns:1fr}.practice-photo img{height:290px}}

footer{flex-wrap:wrap}.footer-contact{flex:1 1 100%;border-top:1px solid #d8bfdf;padding-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:12px 25px}.footer-contact p{margin:0;font-size:20px}@media(max-width:700px){.footer-contact{display:block}.footer-contact p{margin:12px 0}}

.footer-contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;padding-top:28px}.contact-item{display:flex;align-items:flex-start;gap:14px}.contact-icon{width:44px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#e8d6ee;color:#663776}.contact-icon svg{width:25px;height:25px}.contact-item strong,.contact-item p{font-size:20px;line-height:1.5}.contact-item p{margin:3px 0}.contact-item a{text-decoration:underline;text-underline-offset:4px}.page-modalities{font:20px/1.5 Georgia,serif;text-align:center;color:#663776;background:#f4eaf5;padding:13px 5%;margin:0;border-bottom:1px solid #e2d2e9}@media(max-width:700px){.footer-contact{grid-template-columns:1fr}.page-modalities{font-size:20px;padding:12px 6%}}

footer{align-items:center}.footer-contact.footer-organized{display:grid;grid-template-columns:1.15fr 1.3fr 1fr;align-items:start;gap:28px;padding:30px 0 8px}.footer-social{display:flex;flex-direction:column;align-items:center;text-align:center}.social-icons{display:flex;align-items:center;justify-content:center;gap:17px}.social-icons .contact-icon{width:46px;height:46px}.social-common{font-size:20px!important;overflow-wrap:anywhere;margin:13px 0 0!important;line-height:1.5}.footer-phone,.footer-location{align-items:flex-start}.footer-contact a,.footer-contact a:hover,.footer-contact a:focus{text-decoration:none;border:0;color:#663776}.footer-contact strong{display:block;margin-bottom:8px}.footer-contact p{margin:5px 0}@media(max-width:1100px){.footer-contact.footer-organized{grid-template-columns:1fr 1fr}.footer-social{grid-column:1/-1}}@media(max-width:700px){.footer-contact.footer-organized{grid-template-columns:1fr;gap:28px}.footer-social{grid-column:auto}.social-common{font-size:20px!important}.footer-contact .contact-item{justify-content:flex-start}}

.footer-phone a{display:inline-block;white-space:nowrap}

#enfoque h1{font-size:clamp(32px,3.3vw,48px);line-height:1.3}#enfoque p{font-size:22px;line-height:1.65}@media(max-width:700px){#enfoque p{font-size:20px}}

/* Botones de acción alineados con el margen izquierdo del contenido. */
main .actions{align-items:flex-start;justify-content:flex-start;text-align:left}main .button,main .outline{display:table;width:fit-content;max-width:100%;box-sizing:border-box;margin-left:0;margin-right:auto;align-self:flex-start;justify-self:start;text-align:left}main .practice-consult{text-align:left}

/* Una sola columna, incluso en ventanas de poca altura. */
header nav,header nav.open{flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;justify-content:safe center;overflow-x:hidden;overflow-y:auto}header nav a,header nav a[aria-current=page],header nav .nav-cta{width:100%;min-width:0;max-width:100%;box-sizing:border-box;margin-left:0;margin-right:0;flex-shrink:0;align-self:stretch}@media(max-width:700px){header nav.open{justify-content:flex-start}}

.event-tarot{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;background:#f5edf8;scroll-margin-top:25px}.event-copy{min-width:0}.event-copy h2{font-size:clamp(32px,3.4vw,48px);line-height:1.3}.event-copy p{font-size:22px;line-height:1.65}.event-copy .event-lead{font-size:25px;color:#663776}.event-art{margin:0;min-width:0}.event-art img{width:100%;height:auto;display:block;mask-image:radial-gradient(ellipse closest-side,#000 72%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse closest-side,#000 72%,transparent 100%)}.event-phone a{text-decoration:none;white-space:nowrap;color:inherit}.event-copy .button{font-size:22px;padding:16px 26px;margin-top:25px}@media(max-width:1000px){.event-tarot{grid-template-columns:1fr}.event-art{max-width:650px;margin:0 auto}}@media(max-width:700px){.event-copy p,.event-copy .button{font-size:20px}.event-copy .event-lead{font-size:23px}.event-tarot{gap:20px}}

.event-copy h1{font-size:clamp(32px,3.4vw,48px);line-height:1.3}.event-message{background:#f5edf8;padding-top:0;padding-bottom:40px}.event-message .button{font-size:22px}@media(max-width:700px){.event-message .button{font-size:20px}}

.primary-heading{font-size:clamp(30px,3.5vw,47px);line-height:1.15;letter-spacing:-1px}.skip-link{position:fixed;left:15px;top:-120px;z-index:100;background:#fff;color:#542460;padding:15px;font-size:20px}.skip-link:focus{top:10px}.site-map li{font-size:22px;margin:18px 0}.site-map a,.sitemap-link{color:#663776}.sitemap-link{font-size:20px}
/* Keep intrinsic image proportions while reserving loading space in HTML. */
.service-image img{height:auto}
.email-contact{background:#f5edf8}.email-contact>p,.email-contact form{max-width:900px}.email-contact p,.email-contact label,.contact-email-link{font-size:22px;line-height:1.6}.email-address,.contact-email-link a{color:#663776;overflow-wrap:anywhere;text-underline-offset:4px}.email-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.email-fields label{display:block;margin-bottom:8px;font-weight:bold}.email-fields input,.email-fields textarea{display:block;box-sizing:border-box;width:100%;min-width:0;padding:13px 15px;font:22px/1.5 Arial,sans-serif;color:#51305b;background:#fff;border:1px solid #9871a6;border-radius:7px}.email-fields textarea{resize:vertical;min-height:180px}.email-fields input:focus,.email-fields textarea:focus{outline:3px solid #865497;outline-offset:3px}.full-field{grid-column:1/-1}.email-help{margin:24px 0}.email-contact .button{border:0;cursor:pointer;font-size:22px}.email-status:empty{display:none}.email-status{padding:18px;border-left:3px solid #9871a6;background:#fff}.contact-email-link{margin-top:18px}@media(max-width:700px){.email-fields{grid-template-columns:1fr}.email-contact p,.email-contact label,.email-fields input,.email-fields textarea,.email-contact .button,.contact-email-link{font-size:20px}.full-field{grid-column:auto}}

.contact-welcome{grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr)}.contact-welcome .page-photo img{height:330px}.contact-welcome .button{margin-top:30px}.email-contact #email-heading{font-size:clamp(26px,3vw,36px);max-width:1000px;line-height:1.4}@media(max-width:1050px){.contact-welcome{grid-template-columns:1fr}.contact-welcome .page-photo img{height:250px}}

.contact-welcome .page-photo img{height:auto;max-height:none;object-fit:contain;mask-image:radial-gradient(ellipse farthest-side,#000 78%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse farthest-side,#000 78%,transparent 100%)}

.footer-contact.footer-organized{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}.footer-email a{overflow-wrap:anywhere;word-break:normal}.footer-email>div{min-width:0}@media(max-width:700px){.footer-contact.footer-organized{grid-template-columns:1fr;gap:28px}}

/* Serie fotográfica luminosa: bordes suaves sin ocultar los objetos. */
.editorial-layout .page-photo img,.service-image img,.practice-photo img,.event-art img{mask-image:radial-gradient(ellipse farthest-side,#000 78%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse farthest-side,#000 78%,transparent 100%)}
