:root{--ink:#26352d;--forest:#2f493c;--moss:#70826a;--sand:#e5d8c5;--cream:#f6f1e8;--paper:#fbf9f4;--clay:#bb7d5b;--line:#26352d28}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}em{font-family:Georgia,serif;font-weight:400}main{overflow:hidden}.site-header{height:94px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;position:absolute;inset:0 0 auto;z-index:10;border-bottom:1px solid #ffffff40;color:#fff}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid;border-radius:50%;font:italic 22px Georgia}.brand strong,.brand small{display:block}.brand strong{font:500 20px/1 Georgia}.brand small{text-transform:uppercase;letter-spacing:.25em;font-size:8px;margin-top:5px}.site-header nav{display:flex;gap:2.3vw;font-size:13px}.header-cta{border:1px solid #ffffffaa;border-radius:99px;padding:11px 18px;font-size:12px;display:flex;gap:14px}.hero{min-height:820px;height:100vh;display:grid;grid-template-columns:56% 44%;background:var(--forest);color:#fff;position:relative}.hero-copy{padding:180px 7vw 90px;display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.26em;font-size:10px;font-weight:600;margin-bottom:26px}.hero h1{font:400 clamp(62px,7.2vw,116px)/.86 Georgia;letter-spacing:-.045em;margin-bottom:34px}.hero h1 em{color:#d9c4a7}.hero-lead{max-width:580px;color:#ffffffb8;font:19px/1.7 Georgia}.hero-actions{display:flex;align-items:center;gap:34px;margin:22px 0 54px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border-radius:99px;padding:15px 22px;font-size:12px}.button.primary{background:var(--sand);color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:16px;border-bottom:1px solid;padding:0 0 7px;font-size:12px}.centres-quick{display:flex;border-top:1px solid #ffffff30;max-width:650px}.centres-quick a{flex:1;display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:10px;padding:21px 18px 4px 0;font-size:12px}.centres-quick a+a{border-left:1px solid #ffffff30;padding-left:24px}.centres-quick span{opacity:.5;font-size:9px}.hero-art{position:relative;background:linear-gradient(155deg,#d0c4aa,#a8b39d 45%,#81957d);overflow:hidden}.hero-art:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 25%,#ffffff66,transparent 28%)}.sun{position:absolute;width:32vw;height:32vw;right:-9vw;top:12%;border-radius:50%;background:#f6f1e87a}.arch{position:absolute;border:1px solid #ffffff99;border-bottom:0;border-radius:50% 50% 0 0}.arch-one{width:23vw;height:44vw;bottom:-6vw;left:7vw}.arch-two{width:14vw;height:31vw;bottom:-2vw;left:11.5vw}.silk{position:absolute;background:#f6f1e8c7;transform-origin:top}.silk-one{width:4vw;height:85%;left:42%;top:-8%;transform:rotate(11deg);clip-path:polygon(0 0,100% 0,78% 100%,35% 86%)}.silk-two{width:3vw;height:70%;left:59%;top:-5%;transform:rotate(-13deg);clip-path:polygon(10% 0,100% 0,65% 100%,0 85%)}.hero-art p{position:absolute;z-index:2;bottom:70px;right:3vw;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.3em;font-size:9px}.scroll-note{position:absolute;bottom:28px;left:7vw;font-size:9px;text-transform:uppercase;letter-spacing:.18em;opacity:.6}.section{padding:120px 7vw}.intro{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw;align-items:end}.intro h2,.section-heading h2,.therapy h2,.lucia h2{font:400 clamp(44px,5vw,74px)/1.03 Georgia;letter-spacing:-.035em}.intro-copy p{font:21px/1.7 Georgia;margin-bottom:34px}.intro-copy strong{font-weight:400;color:var(--clay)}.section-heading{text-align:center;max-width:760px;margin:0 auto 60px}.section-heading h2{font-size:clamp(40px,4.4vw,64px)}.elements{background:var(--cream)}.element-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.element-card{min-height:500px;padding:38px;background:var(--paper);display:flex;flex-direction:column}.number{font-size:9px;opacity:.5}.symbol{font:80px/1 Georgia;margin:50px 0 35px;color:var(--moss)}.element-card>p:not(.description){text-transform:uppercase;letter-spacing:.16em;font-size:9px}.element-card h3{font:400 31px Georgia;margin:8px 0 24px}.description{line-height:1.7;font-size:14px;opacity:.75}.element-card a{font-size:11px;margin-top:auto;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px}.earth{background:#eef0e8}.water{background:#e9efed}.centres{background:var(--forest);color:#fff}.section-heading.light>p:last-child{color:#ffffff99}.centre-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.centre-grid article{background:#385546}.centre-visual{height:330px;display:grid;place-items:center;overflow:hidden;position:relative}.centre-visual:before,.centre-visual:after{content:"";position:absolute}.centre-visual:before{width:280px;height:280px;border-radius:50%;background:#ffffff29}.centre-visual:after{width:180px;height:280px;border:1px solid #ffffff99;border-radius:90px 90px 0 0;bottom:-30px}.centre-visual span{font:italic 48px Georgia;z-index:2}.puig{background:linear-gradient(145deg,#c3af91,#849b81)}.algemesi{background:linear-gradient(145deg,#ab8066,#c7b798)}.centre-info{padding:34px}.centre-info>p:first-child{text-transform:uppercase;font-size:8px;letter-spacing:.2em;opacity:.6}.centre-info h3{font:400 29px Georgia}.centre-info>p{font-size:13px;opacity:.75}.button.pale{border:1px solid #ffffff59;margin-top:18px}.therapy{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:10vw}.therapy h2{font-size:clamp(40px,4.3vw,66px)}.therapy>div:last-child>p:not(.eyebrow){max-width:660px;font:19px/1.7 Georgia}.therapy .small-copy{font:12px "Segoe UI"!important;opacity:.65}.therapy-orbit{height:430px;border:1px solid var(--line);border-radius:50%;position:relative;display:grid;place-items:center}.therapy-orbit:before,.therapy-orbit:after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%}.therapy-orbit:before{width:70%;height:70%}.therapy-orbit:after{width:40%;height:40%}.therapy-orbit span{position:absolute;text-transform:uppercase;letter-spacing:.15em;font-size:9px}.therapy-orbit span:first-child{top:9%;left:47%}.therapy-orbit span:nth-child(2){bottom:14%;left:14%}.therapy-orbit span:nth-child(3){bottom:14%;right:10%}.therapy-orbit div{font:italic 44px Georgia;color:var(--clay)}.lucia{background:#e5dfd2;display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;align-items:center}.portrait{height:600px;background:linear-gradient(145deg,#9aaa90,#d1bba0);position:relative;display:grid;place-items:center}.portrait:before{content:"";position:absolute;width:70%;height:85%;border:1px solid #ffffffaa;border-radius:50% 50% 4px 4px}.portrait-inner{width:170px;height:170px;background:#ffffff40;border-radius:50%;display:grid;place-items:center;font:italic 48px Georgia;color:#fff;z-index:2}.portrait>span{position:absolute;bottom:25px;left:25px;color:#fff;font:italic 20px Georgia}.lucia>div:last-child>p:not(.eyebrow){font:18px/1.7 Georgia}.lucia blockquote{margin:32px 0;font:italic 24px/1.5 Georgia;border-left:1px solid var(--clay);padding-left:26px}.contact{text-align:center;background:var(--clay);color:#fff}.contact h2{font:400 clamp(52px,7vw,100px)/1 Georgia}.contact>p:not(.eyebrow){font:18px/1.7 Georgia;max-width:620px;margin:0 auto 35px}.contact-actions{display:flex;justify-content:center;align-items:center;gap:30px}.button.cream{background:var(--cream);color:var(--ink)}.contact-actions>a:last-child{font-size:11px;border-bottom:1px solid #ffffff99;padding-bottom:5px}footer{padding:50px 7vw;display:flex;justify-content:space-between;align-items:center;background:#1f3028;color:#fff}footer p{font-size:9px;letter-spacing:.12em;text-transform:uppercase;margin:0;opacity:.6}.whatsapp-float{position:fixed;z-index:20;right:22px;bottom:22px;background:#f3eee3;color:var(--forest);box-shadow:0 12px 35px #0000002e;border-radius:99px;padding:12px 17px;display:flex;gap:9px;font-size:11px}.reveal{animation:reveal .8s ease-out both}@keyframes reveal{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(max-width:900px){.site-header{height:76px}.site-header nav{display:none}.hero{grid-template-columns:1fr;min-height:900px;height:auto}.hero-copy{padding:145px 7vw 60px;min-height:670px}.hero-art{height:330px}.sun{width:65vw;height:65vw}.arch-one{width:42vw;height:75vw}.arch-two{width:24vw;height:52vw}.silk-one{width:8vw}.silk-two{width:6vw}.hero-art p{bottom:30px}.scroll-note{display:none}.intro,.therapy,.lucia{grid-template-columns:1fr}.element-grid,.centre-grid{grid-template-columns:1fr}.element-card{min-height:420px}.therapy-orbit{max-width:430px;width:100%;margin:auto}.lucia .portrait{height:500px}.contact-actions{flex-direction:column}footer{gap:28px;flex-wrap:wrap}}
@media(max-width:560px){.header-cta{font-size:10px;padding:10px 13px}.hero-copy{padding-top:125px}.hero h1{font-size:58px}.hero-lead{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column}.centres-quick{flex-direction:column}.centres-quick a+a{border-left:0;border-top:1px solid #ffffff30;padding-left:0}.section{padding:88px 6vw}.intro{gap:40px}.intro h2,.section-heading h2,.therapy h2,.lucia h2{font-size:42px}.centre-visual{height:250px}.therapy-orbit{height:330px}.portrait{height:430px!important}footer{align-items:flex-start;flex-direction:column}.whatsapp-float b{display:none}.whatsapp-float{width:47px;height:47px;display:grid;place-items:center;padding:0;font-size:16px}}

/* Retrato de Lucía: composición orgánica y luminosa */
.portrait{background:#c8b69f;overflow:hidden;border-radius:48% 48% 18px 18px}
.portrait:before{inset:22px;width:auto;height:auto;border-radius:48% 48% 10px 10px;z-index:2;pointer-events:none}
.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,#26352d99 100%);z-index:1;pointer-events:none}
.portrait-photo{width:100%;height:100%;object-fit:cover;object-position:center 36%;filter:saturate(.88) contrast(.98) brightness(1.03)}
.portrait>span{bottom:34px;left:42px;font-size:23px;z-index:3;text-shadow:0 2px 16px #0008}

/* Aire y Tierra completos dentro de su marco */
.photo-air img,.photo-earth img{width:88%;height:88%;object-fit:contain;object-position:center}
@media(max-width:560px){.photo-air img,.photo-earth img{width:92%;height:92%}}

/* Ajuste definitivo: fotografías completas, sin fondos ampliados que simulen recorte */
.element-photo.photo-air,.element-photo.photo-earth{background-image:none!important}
.element-photo.photo-air{background:linear-gradient(145deg,#d9d0c0,#8fa08f)}
.element-photo.photo-earth{background:linear-gradient(145deg,#eee5d7,#c8b79f)}
.element-photo.photo-air img,.element-photo.photo-earth img{width:94%;height:90%;object-fit:contain!important;object-position:center!important;transform:none!important}
.portrait{padding:18px;background:linear-gradient(145deg,#b8a68f,#d9cbb8)}
.portrait-photo{width:100%;height:100%;object-fit:contain!important;object-position:center!important;border-radius:18px;filter:saturate(.9) contrast(.98) brightness(1.03);background:#c7baa7}
.portrait:before{inset:18px}
@media(max-width:560px){.element-photo.photo-air img,.element-photo.photo-earth img{width:96%;height:92%}.portrait{padding:12px}.portrait:before{inset:12px}}

/* Galería múltiple de MetaYoga Aire */
.gallery-stage{position:relative;background:linear-gradient(145deg,#26352d,#486657)}
.gallery-stage>img{display:block;width:100%;height:min(62vh,620px);object-fit:contain;object-position:center}
.gallery-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:48px;height:48px;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(31,48,40,.68);color:#fff;font:34px/1 Georgia;cursor:pointer;backdrop-filter:blur(8px)}
.gallery-arrow.previous{left:18px}.gallery-arrow.next{right:18px}
.gallery-thumbs{display:flex;gap:9px;padding:12px 18px;overflow-x:auto;background:#e9e3d8}
.gallery-thumbs button{flex:0 0 88px;height:58px;padding:3px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer}
.gallery-thumbs button.active{border-color:var(--fuchsia);background:#fff}
.gallery-thumbs img{display:block;width:100%;height:100%;object-fit:cover;border-radius:3px}
@media(max-width:560px){.gallery-stage>img{height:48vh}.gallery-arrow{width:40px;height:40px;font-size:28px}.gallery-arrow.previous{left:9px}.gallery-arrow.next{right:9px}.gallery-thumbs button{flex-basis:72px;height:50px}}

/* Identidad Chaitanya: logo original y acento fucsia */
:root{--clay:#a20a59;--fuchsia:#a20a59}
.brand-logo{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.82);box-shadow:0 4px 18px rgba(0,0,0,.12)}
.footer-brand .brand-logo{width:48px;height:48px}
.hero h1 em{color:#f3b3d2}.hero-art{background:linear-gradient(155deg,#f0dbe6 0%,#a8b39d 45%,#81957d 100%)}
.hero-art:before{content:"";position:absolute;inset:auto -16% -18% 30%;height:52%;background:#a20a59;border-radius:50% 50% 0 0;opacity:.78;transform:rotate(-11deg);z-index:1}
.hero-person{position:absolute;z-index:3;inset:0 auto 0 50%;height:96%;width:auto;max-width:none;transform:translateX(-48%);object-fit:contain;object-position:center bottom;filter:drop-shadow(0 20px 30px rgba(31,48,40,.24))}
.hero-art p{z-index:4}.algemesi{background:linear-gradient(145deg,#a20a59,#c691ad 58%,#a8b39d)}
.contact{background:linear-gradient(135deg,#88064a,#b7146c)}
.whatsapp-float span{color:var(--fuchsia)}
@media(max-width:900px){.brand-logo{width:46px;height:46px}.hero-person{height:118%;left:54%;bottom:-20%;top:auto}.hero-art:before{height:62%;bottom:-38%}}
@media(max-width:560px){.brand-logo{width:42px;height:42px}.brand strong{font-size:17px}.hero-person{height:112%;left:57%}}

/* Fotografías reales integradas en portada */
.hero-art:after{z-index:2;background:radial-gradient(circle at 74% 22%,rgba(255,255,255,.42),transparent 28%),linear-gradient(90deg,rgba(168,179,157,.42),transparent 24%,transparent 78%,rgba(129,149,125,.18))}
.hero-person{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 91%,transparent 100%),linear-gradient(to bottom,#000 0%,#000 86%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 91%,transparent 100%),linear-gradient(to bottom,#000 0%,#000 86%,transparent 100%);mask-composite:intersect;filter:sepia(.06) saturate(.88) contrast(.96) drop-shadow(0 24px 34px rgba(31,48,40,.2))}
.element-card{overflow:hidden}.element-photo{height:230px;margin:22px -18px 24px;display:grid;place-items:center;overflow:hidden;position:relative;border-radius:50% 50% 4px 4px}.element-photo:after{content:"";position:absolute;inset:0;box-shadow:inset 0 -34px 32px -28px rgba(38,53,45,.25)}.element-photo img{width:100%;height:100%;object-fit:contain}.photo-air{background:#26352d}.photo-air img{object-fit:cover;object-position:center 45%;mix-blend-mode:screen;filter:saturate(.75) contrast(.92)}.photo-earth{background:#eef0e8}.photo-earth img,.photo-water img{mix-blend-mode:multiply;filter:saturate(.72) contrast(.92)}.photo-water{background:#e3efec}.symbol{position:absolute;right:28px;top:248px;margin:0;font-size:54px;z-index:2}.element-card>p:not(.description){margin-top:4px}
@media(max-width:900px){.element-photo{height:290px}.symbol{top:308px}}
@media(max-width:560px){.element-photo{height:240px}.symbol{top:258px}.hero-person{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 88%,transparent 100%)}}
.element-card{position:relative}

/* Escenas de grupo: fotografía completa dentro de marcos orgánicos */
.element-photo{height:270px;margin:22px -18px 0;border-radius:150px 150px 18px 18px;background:var(--sand);isolation:isolate;box-shadow:0 18px 42px rgba(38,53,45,.12)}
.element-photo img,.photo-air img,.photo-earth img,.photo-water img{width:100%;height:100%;object-fit:cover;object-position:center;mix-blend-mode:normal;filter:saturate(.82) contrast(.94) brightness(.96);transform:scale(1.01)}
.element-photo:before{content:"";position:absolute;inset:0;z-index:1;border:1px solid rgba(255,255,255,.42);border-radius:inherit;pointer-events:none}
.element-photo:after{z-index:1;box-shadow:none;background:linear-gradient(180deg,transparent 48%,rgba(31,48,40,.56) 100%)}
.photo-air:after{background:linear-gradient(180deg,rgba(47,73,60,.04) 35%,rgba(38,53,45,.68) 100%)}
.photo-earth:after{background:linear-gradient(180deg,rgba(229,216,197,.02) 38%,rgba(93,87,65,.52) 100%)}
.photo-water:after{background:linear-gradient(180deg,rgba(63,126,133,.02) 38%,rgba(27,79,88,.62) 100%)}
.photo-air img{object-position:62% 52%}.photo-earth img{object-position:center 54%}.photo-water img{object-position:center 58%}
.symbol{position:relative;right:auto;top:auto;width:72px;height:72px;margin:-42px 6px 24px auto;border-radius:50%;display:grid;place-items:center;background:var(--paper);box-shadow:0 10px 26px rgba(38,53,45,.14);font-size:44px;line-height:1;color:var(--fuchsia);z-index:3}
.earth .symbol{background:#eef0e8}.water .symbol{background:#e9efed}.element-card>p:not(.description){margin-top:0}
@media(max-width:900px){.element-photo{height:330px}.symbol{top:auto}}
@media(max-width:560px){.element-photo{height:250px;margin-left:-12px;margin-right:-12px;border-radius:120px 120px 16px 16px}.symbol{top:auto;width:64px;height:64px;margin-top:-36px;font-size:38px}}

/* Portada fotográfica integrada */
.hero{background-color:var(--forest);background-image:linear-gradient(90deg,#2f493c 0%,rgba(47,73,60,.98) 38%,rgba(47,73,60,.76) 54%,rgba(47,73,60,.06) 76%),url('/hero-grupo-mediterraneo-v5.png');background-size:cover;background-position:center}
.hero-copy{position:relative;z-index:3;text-shadow:0 1px 18px rgba(31,48,40,.12)}
.hero-art.hero-composed{background:transparent;overflow:visible}
.hero-art.hero-composed:before{display:none}
.hero-art.hero-composed:after{z-index:1;background:linear-gradient(90deg,rgba(47,73,60,.14),transparent 30%),linear-gradient(180deg,rgba(255,255,255,.1),transparent 30%,rgba(31,48,40,.12))}
.hero-art.hero-composed p{z-index:2;text-shadow:0 1px 12px rgba(31,48,40,.35)}
@media(max-width:900px){.hero{background-image:none}.hero-copy{background:var(--forest)}.hero-art.hero-composed{height:430px;background-image:linear-gradient(180deg,rgba(47,73,60,.12),transparent 28%,rgba(31,48,40,.14)),url('/hero-grupo-mediterraneo-v5.png');background-size:cover;background-position:center}.hero-art.hero-composed:after{display:none}}
@media(max-width:560px){.hero-art.hero-composed{height:360px;background-position:54% center}}

/* Galería de clases reales */
button.element-photo{width:auto;padding:0;border:0;cursor:pointer;font:inherit;color:inherit;text-align:inherit}
.photo-hint{position:absolute;z-index:2;left:18px;right:18px;bottom:16px;display:flex;align-items:center;justify-content:space-between;color:#fff;text-transform:uppercase;letter-spacing:.16em;font-size:8px;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.photo-hint b{width:30px;height:30px;border:1px solid rgba(255,255,255,.72);border-radius:50%;display:grid;place-items:center;font-size:16px;font-weight:300;transition:.25s ease}
.element-photo:hover .photo-hint b,.element-photo:focus-visible .photo-hint b{background:#fff;color:var(--forest);transform:rotate(90deg)}
.element-photo:focus-visible{outline:3px solid var(--fuchsia);outline-offset:4px}
.gallery-backdrop{position:fixed;z-index:100;inset:0;padding:4vw;background:rgba(24,37,31,.82);backdrop-filter:blur(12px);display:grid;place-items:center;animation:gallery-in .25s ease both}
.gallery-modal{position:relative;width:min(1050px,94vw);max-height:90vh;background:var(--paper);box-shadow:0 30px 90px rgba(0,0,0,.42);overflow:auto;border-radius:170px 170px 22px 22px;animation:gallery-modal-in .3s ease both}
.gallery-modal>img{display:block;width:100%;height:min(62vh,620px);object-fit:cover;object-position:center}
.gallery-caption{padding:24px 34px 30px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:5px 28px}
.gallery-caption p{grid-column:1;margin:0;text-transform:uppercase;letter-spacing:.16em;font-size:8px;opacity:.6}.gallery-caption h3{grid-column:1;margin:0;font:400 32px Georgia}.gallery-caption button{grid-column:2;grid-row:1/3;border:1px solid var(--line);border-radius:99px;background:transparent;padding:12px 18px;color:var(--ink);cursor:pointer;font-size:10px}
.gallery-close{position:absolute;z-index:2;right:22px;top:22px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(251,249,244,.9);color:var(--ink);font:300 28px/1 Arial;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.16)}
@keyframes gallery-in{from{opacity:0}to{opacity:1}}@keyframes gallery-modal-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:560px){.gallery-backdrop{padding:14px}.gallery-modal{width:100%;border-radius:90px 90px 18px 18px}.gallery-modal>img{height:56vh}.gallery-caption{padding:20px;grid-template-columns:1fr}.gallery-caption button{grid-column:1;grid-row:auto;margin-top:12px}.gallery-caption h3{font-size:27px}.gallery-close{right:14px;top:14px}}

/* Encuadre completo de las fotografías */
.element-photo{background-size:cover;background-position:center}
.photo-air{background-image:linear-gradient(rgba(31,48,40,.34),rgba(31,48,40,.5)),url('/hero-composicion-v3.png')}
.photo-earth{background-image:linear-gradient(rgba(229,216,197,.32),rgba(93,87,65,.34)),url('/metayoga-tierra-elegante-v2.png')}
.photo-water{background-image:linear-gradient(rgba(27,79,88,.16),rgba(27,79,88,.34)),url('/metayoga-agua-mediterranea-v3.png')}
.element-photo:before{z-index:0;background:rgba(246,241,232,.08);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.45)}
.element-photo img,.photo-air img,.photo-earth img,.photo-water img{position:relative;z-index:1;object-fit:contain;object-position:center;transform:none;filter:saturate(.94) contrast(.98) drop-shadow(0 10px 28px rgba(31,48,40,.18))}
.element-photo:after{z-index:2;background:linear-gradient(180deg,transparent 66%,rgba(31,48,40,.5) 100%)}
.photo-hint{z-index:3}
.gallery-modal>img{object-fit:contain;background:linear-gradient(145deg,#26352d,#486657)}

/* Imagen de armonía para Terapias */
.therapy-visual{height:560px;position:relative;overflow:hidden;border-radius:260px 260px 24px 24px;box-shadow:0 28px 70px rgba(38,53,45,.16);background:var(--sand)}
.therapy-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(31,48,40,.68));pointer-events:none}
.therapy-visual img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(.96)}
.therapy-values{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;display:flex;justify-content:space-between;gap:12px;color:#fff;text-transform:uppercase;letter-spacing:.16em;font-size:8px}
.therapy-values span+span:before{content:"·";margin-right:18px;opacity:.6}
@media(max-width:900px){.therapy-visual{height:520px;max-width:620px;width:100%;margin:auto}}
@media(max-width:560px){.therapy-visual{height:430px;border-radius:180px 180px 18px 18px}.therapy-values{left:18px;right:18px;bottom:20px;font-size:7px;letter-spacing:.1em}.therapy-values span+span:before{margin-right:7px}}

/* Encuadre elevado: cuerpo completo y rótulo en una franja separada */
.element-photo.photo-air,
.element-photo.photo-earth,
.element-photo.photo-water{
  padding:10px 10px 42px;
  align-items:start;
}
.element-photo.photo-air img,
.element-photo.photo-earth img,
.element-photo.photo-water img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center top!important;
  transform:translateY(-4px)!important;
}
.photo-hint{bottom:8px}
@media(max-width:560px){
  .element-photo.photo-air,
  .element-photo.photo-earth,
  .element-photo.photo-water{padding:8px 8px 40px}
  .element-photo.photo-air img,
  .element-photo.photo-earth img,
  .element-photo.photo-water img{transform:translateY(-3px)!important}
}

/* Retrato de Lucía completo dentro del marco */
.portrait-photo{
  width:82%!important;
  height:88%!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:42% 42% 16px 16px;
  box-shadow:0 18px 42px rgba(38,53,45,.16);
}
@media(max-width:560px){
  .portrait-photo{
    width:86%!important;
    height:88%!important;
  }
}

/* Marco interior independiente: nunca recorta las composiciones MetaYoga */
.element-photo.photo-air,
.element-photo.photo-earth,
.element-photo.photo-water{
  padding:0!important;
}
.element-photo.photo-air img,
.element-photo.photo-earth img,
.element-photo.photo-water img{
  position:absolute!important;
  inset:10px 10px 48px!important;
  width:auto!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
@media(max-width:560px){
  .element-photo.photo-air img,
  .element-photo.photo-earth img,
  .element-photo.photo-water img{
    inset:8px 8px 44px!important;
  }
}

/* Corrección: área fotográfica amplia y visible con la persona completa */
.element-photo.photo-air,
.element-photo.photo-earth,
.element-photo.photo-water{
  height:390px!important;
  min-height:390px;
}
.element-photo.photo-air img,
.element-photo.photo-earth img,
.element-photo.photo-water img{
  position:absolute!important;
  top:10px!important;
  right:auto!important;
  bottom:auto!important;
  left:10px!important;
  width:calc(100% - 20px)!important;
  height:calc(100% - 66px)!important;
  max-width:calc(100% - 20px)!important;
  max-height:calc(100% - 66px)!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center center!important;
  opacity:1!important;
  visibility:visible!important;
}
@media(max-width:900px){
  .element-photo.photo-air,
  .element-photo.photo-earth,
  .element-photo.photo-water{
    height:360px!important;
    min-height:360px;
  }
}
@media(max-width:560px){
  .element-photo.photo-air,
  .element-photo.photo-earth,
  .element-photo.photo-water{
    height:320px!important;
    min-height:320px;
  }
  .element-photo.photo-air img,
  .element-photo.photo-earth img,
  .element-photo.photo-water img{
    top:8px!important;
    left:8px!important;
    width:calc(100% - 16px)!important;
    height:calc(100% - 58px)!important;
    max-width:calc(100% - 16px)!important;
    max-height:calc(100% - 58px)!important;
  }
}

/* Tarifas de los centros */
.centre-info{display:flex;flex-direction:column;align-items:stretch}
.tariffs{margin:24px 0 0;border-top:1px solid rgba(255,255,255,.24)}
.tariffs-heading{padding:18px 0 10px;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:#fff}
.tariffs-heading small{font-size:8px;opacity:.55}
.tariffs-heading.secondary{margin-top:8px;border-top:1px solid rgba(255,255,255,.16)}
.tariff-row{min-height:43px;padding:10px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:rgba(255,255,255,.78)}
.tariff-row strong{font:400 18px Georgia;color:#fff;white-space:nowrap}
.tariff-row.featured{margin:5px -12px;padding:11px 12px;border:1px solid rgba(255,255,255,.38);border-radius:10px;background:rgba(255,255,255,.09);color:#fff}
.family-discount{margin:16px 0 0!important;font-size:11px!important;color:rgba(255,255,255,.78);opacity:1!important}
.centre-info .button{align-self:flex-start}
.trial-info{padding:85px 7vw 95px;text-align:center;background:var(--sand);color:var(--ink)}
.trial-info h2{margin-bottom:20px;font:400 clamp(38px,4.2vw,62px)/1.05 Georgia;letter-spacing:-.035em}
.trial-info>p:not(.eyebrow){max-width:760px;margin:0 auto 30px;font:18px/1.7 Georgia}
.trial-info .button{margin:auto;background:var(--forest);color:#fff}
.rhythmic{display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:center;background:linear-gradient(135deg,#fbf7f0 0%,#f4e9e7 100%)}
.rhythmic-gallery{min-height:650px;display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:12px;position:relative}
.rhythmic-gallery:before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:#e695bb38;left:-70px;top:-55px;z-index:0}
.rhythmic-gallery img{width:100%;height:100%;min-height:0;display:block;object-fit:cover;position:relative;z-index:1;border-radius:9px;box-shadow:0 18px 48px rgba(38,53,45,.14)}
.rhythmic-gallery .rhythmic-main{grid-row:1/3;object-position:center}
.rhythmic-gallery img:nth-child(2){object-position:center 46%}
.rhythmic-gallery img:nth-child(3){object-position:center 56%}
.rhythmic-copy h2{font:400 clamp(42px,4.6vw,70px)/1.02 Georgia;letter-spacing:-.035em;margin-bottom:28px}
.rhythmic-copy h2 em{color:var(--fuchsia)}
.rhythmic-lead{font:20px/1.65 Georgia;color:var(--forest)}
.rhythmic-copy>p:not(.eyebrow):not(.rhythmic-lead){font-size:14px;line-height:1.7;color:rgba(38,53,45,.76)}
.rhythmic-values{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}
.rhythmic-values span{padding:9px 13px;border:1px solid rgba(145,17,90,.2);border-radius:99px;color:var(--fuchsia);font-size:9px;text-transform:uppercase;letter-spacing:.12em;background:#fff8}
.rhythmic-status{margin:25px 0 28px;padding:18px 20px;border-left:3px solid var(--fuchsia);background:#fff9}
.rhythmic-status strong{display:block;color:var(--forest);font:19px Georgia;margin-bottom:5px}
.rhythmic-copy .button{background:var(--forest);color:#fff}
@media(max-width:900px){.rhythmic{grid-template-columns:1fr;gap:55px}.rhythmic-gallery{min-height:570px;max-width:700px;width:100%;margin:auto}}
@media(max-width:560px){.rhythmic-gallery{min-height:0;height:auto;grid-template-columns:1fr 1fr;grid-template-rows:390px 170px;gap:8px}.rhythmic-gallery .rhythmic-main{grid-column:1/3;grid-row:auto}.rhythmic-gallery img:nth-child(2),.rhythmic-gallery img:nth-child(3){min-height:170px}.rhythmic-copy h2{font-size:42px}.rhythmic-lead{font-size:18px}.rhythmic-copy .button{width:100%}}
.schedule{margin:24px 0 2px;border-top:1px solid rgba(255,255,255,.24)}
.schedule-title{padding:18px 0 12px;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:#fff}
.schedule-title small{font-size:8px;opacity:.55}
.schedule-day{padding:15px 0;border-top:1px solid rgba(255,255,255,.12)}
.schedule-day h4{margin:0 0 10px;font:400 18px Georgia;color:#fff}
.schedule-day>div{display:grid;gap:7px}
.schedule-day span{font-size:12px;color:rgba(255,255,255,.78)}
.schedule-day b{display:inline-block;min-width:48px;color:#fff;font-weight:600}
@media(max-width:560px){
  .centre-info{padding:28px 22px}
  .tariff-row{font-size:11px}
  .tariff-row strong{font-size:17px}
  .trial-info{padding:70px 6vw 78px}
  .trial-info>p:not(.eyebrow){font-size:16px}
}

/* Jerarquía cromática para horarios y tarifas */
.schedule-title,
.tariffs-heading{
  color:#ffb8d8;
  font-weight:700;
}
.schedule-title small,
.tariffs-heading small{
  color:#f0dfc7;
  opacity:1;
}
.schedule-day h4{
  color:#f3d6a7;
  font-weight:600;
}
.schedule-day span{
  color:#f7f2e9;
}
.schedule-day b{
  color:#ffb8d8;
  letter-spacing:.03em;
}
.tariff-row{
  color:#f7f2e9;
}
.tariff-row strong{
  color:#f3d6a7;
  font-weight:600;
}
.tariff-row.featured{
  border-color:rgba(255,184,216,.72);
  background:rgba(162,10,89,.24);
}
.tariff-row.featured span{
  color:#fff;
  font-weight:600;
}
.tariff-row.featured strong{
  color:#ffc5df;
}
.family-discount{
  color:#f3d6a7!important;
}

/* Direcciones y accesos directos a Google */
.locations-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:26px}
.centre-location{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:26px 28px;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:rgba(255,255,255,.07);box-shadow:0 16px 38px rgba(20,34,27,.13)}
.centre-location>span{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:#ffb8d8;color:var(--forest);font:28px/1 Georgia}
.centre-location small{display:block;margin:1px 0 8px;color:#ffb8d8;text-transform:uppercase;letter-spacing:.16em;font-size:8px;font-weight:700}
.centre-location strong{display:block;color:#fff;font:400 20px/1.25 Georgia}
.centre-location p{margin:7px 0 17px;color:#f7f2e9;font-size:12px;line-height:1.5}
.centre-location nav{display:flex;flex-wrap:wrap;gap:10px}
.centre-location nav a{display:inline-flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 14px;border:1px solid rgba(255,255,255,.3);border-radius:99px;color:#fff;font-size:10px;transition:.2s ease}
.centre-location nav a:hover,.centre-location nav a:focus-visible{background:#ffb8d8;border-color:#ffb8d8;color:var(--forest)}
@media(max-width:900px){.locations-grid{grid-template-columns:1fr}}
@media(max-width:560px){.centre-location{grid-template-columns:42px 1fr;padding:22px 18px;gap:14px}.centre-location>span{width:42px;height:42px;font-size:24px}.centre-location nav{align-items:stretch;flex-direction:column}.centre-location nav a{width:100%}}

/* Terapias: acompañamiento y herramientas */
.therapy-intro{margin-top:22px!important;padding-left:20px;border-left:2px solid var(--fuchsia);font:15px/1.7 "Segoe UI"!important;color:var(--ink)}
.therapy-tools{background:var(--cream);padding-top:105px}
.therapy-tools .section-heading>p:last-child{max-width:680px;margin:0 auto;font:17px/1.65 Georgia;color:rgba(38,53,45,.74)}
.therapy-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.therapy-grid article{min-height:220px;padding:28px 24px;background:var(--paper);display:flex;flex-direction:column}
.therapy-grid article:nth-child(3n+2){background:#eef0e8}
.therapy-grid article:nth-child(3n){background:#f0e7df}
.therapy-grid span{color:var(--fuchsia);font-size:9px;letter-spacing:.14em}
.therapy-grid h3{margin:28px 0 13px;font:400 22px/1.15 Georgia;color:var(--forest)}
.therapy-grid p{margin:auto 0 0;font-size:12px;line-height:1.65;color:rgba(38,53,45,.7)}
.therapy-contact{margin-top:32px;padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--forest);color:#fff;border-radius:14px}
.therapy-contact p{margin:0;font:16px/1.55 Georgia}
.therapy-contact .button{flex:0 0 auto;background:#ffb8d8;color:var(--forest)}
@media(max-width:1100px){.therapy-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.therapy-grid{grid-template-columns:repeat(2,1fr)}.therapy-contact{align-items:flex-start;flex-direction:column}}
@media(max-width:480px){.therapy-grid{grid-template-columns:1fr}.therapy-grid article{min-height:175px}.therapy-tools{padding-top:78px}.therapy-contact{padding:24px 20px}.therapy-contact .button{width:100%}}

/* Sobre Lucía: recorrido sencillo y humano */
.lucia>div:last-child>p:not(.eyebrow){margin-bottom:15px}
.lucia-story{background:var(--paper)}
.lucia-path{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.lucia-path article{min-height:275px;padding:30px 27px;background:var(--cream);display:flex;flex-direction:column}
.lucia-path article:nth-child(even){background:#eef0e8}
.lucia-path span{color:var(--fuchsia);font-size:9px;letter-spacing:.14em}
.lucia-path h3{margin:48px 0 18px;font:400 25px/1.12 Georgia;color:var(--forest)}
.lucia-path p{margin:auto 0 0;font-size:13px;line-height:1.7;color:rgba(38,53,45,.72)}
.lucia-metayoga{margin-top:34px;padding:45px 48px;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;background:var(--forest);color:#fff;border-radius:18px}
.lucia-metayoga h3{margin:0;font:400 clamp(34px,4vw,56px)/1.04 Georgia}
.lucia-metayoga>div:last-child>p{font:16px/1.7 Georgia;color:rgba(255,255,255,.78)}
.lucia-metayoga>div:last-child>p:first-child{color:#fff}
.lucia-metayoga .button{margin-top:10px;background:#ffb8d8;color:var(--forest)}
@media(max-width:950px){.lucia-path{grid-template-columns:repeat(2,1fr)}.lucia-metayoga{grid-template-columns:1fr;gap:32px}}
@media(max-width:520px){.lucia-path{grid-template-columns:1fr}.lucia-path article{min-height:220px}.lucia-metayoga{padding:34px 24px}.lucia-metayoga .button{width:100%}}

/* Lorena Navarro · clases de Algemesí */
.algemesi-teacher{margin-top:34px;padding:38px;display:grid;grid-template-columns:minmax(260px,.72fr) 1.28fr;gap:5vw;align-items:center;background:#f2eadf;color:var(--ink);border-radius:24px;box-shadow:0 20px 52px rgba(20,34,27,.14)}
.teacher-photo{height:480px;position:relative;overflow:hidden;border-radius:180px 180px 18px 18px;background:#d7c6b2}
.teacher-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(180deg,transparent,rgba(31,48,40,.7))}
.teacher-photo img{width:100%;height:100%;object-fit:cover;object-position:34% center;filter:saturate(.82) contrast(.96) brightness(1.02)}
.teacher-photo span{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:8px}
.teacher-copy .eyebrow{margin-bottom:16px;color:var(--fuchsia)}
.teacher-copy h3{margin:0 0 9px;font:400 clamp(38px,4.2vw,60px)/1 Georgia;color:var(--forest)}
.teacher-role{margin-bottom:25px!important;color:var(--fuchsia)!important;text-transform:uppercase;letter-spacing:.1em;font-size:10px!important;font-weight:700}
.teacher-copy>p:not(.eyebrow):not(.teacher-role):not(.teacher-schedule){font:15px/1.7 Georgia;color:rgba(38,53,45,.76)}
.teacher-copy blockquote{margin:26px 0;padding-left:22px;border-left:2px solid var(--fuchsia);font:italic 19px/1.55 Georgia;color:var(--forest)}
.teacher-schedule{display:inline-block;margin:2px 0 0!important;padding:12px 16px;border-radius:10px;background:var(--forest);color:#fff;font-size:11px!important}
@media(max-width:900px){.algemesi-teacher{grid-template-columns:1fr}.teacher-photo{height:520px;max-width:520px;width:100%;margin:auto}}
@media(max-width:560px){.algemesi-teacher{padding:20px}.teacher-photo{height:400px}.teacher-copy blockquote{font-size:17px}}

/* Nuestros colaboradores */
.collaborators{background:#edf0e9}
.collaborators .section-heading>p:last-child{max-width:680px;margin:0 auto;font:17px/1.65 Georgia;color:rgba(38,53,45,.72)}
.collaborators-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.collaborator-card{min-width:0;background:var(--paper);border-radius:180px 180px 18px 18px;overflow:hidden;box-shadow:0 22px 55px rgba(38,53,45,.11);transition:transform .25s ease,box-shadow .25s ease}
.collaborator-card:hover{transform:translateY(-6px);box-shadow:0 28px 68px rgba(38,53,45,.16)}
.collaborator-image{height:430px;overflow:hidden;background:#d8cdbb;position:relative}
.collaborator-image:after{content:"";position:absolute;inset:62% 0 0;background:linear-gradient(180deg,transparent,rgba(31,48,40,.18));pointer-events:none}
.collaborator-image img{width:100%;height:100%;display:block;object-fit:cover}
.collaborator-card:nth-child(1) .collaborator-image img{object-position:34% center;filter:saturate(.82) contrast(.96) brightness(1.02)}
.collaborator-toni,.collaborator-natalia{padding:12px;background:linear-gradient(145deg,#e8dfd2,#f5efe7)}
.collaborator-natalia img{content:url('/natalia-roig-presentacion-ritmica-v2.png');object-fit:contain;object-position:center;border-radius:150px 150px 8px 8px;filter:saturate(.92) contrast(.99)}
.collaborator-toni img{object-fit:contain;object-position:center;border-radius:150px 150px 8px 8px;filter:saturate(.88) contrast(.98) brightness(1.03)}
.collaborator-copy{min-height:365px;padding:30px 31px 34px;display:flex;flex-direction:column}
.collaborator-copy>p:first-child{margin-bottom:10px;color:var(--fuchsia);text-transform:uppercase;letter-spacing:.15em;font-size:8px;font-weight:700}
.collaborator-copy h3{margin-bottom:18px;font:400 29px/1.05 Georgia;color:var(--forest)}
.collaborator-copy>p{font-size:13px;line-height:1.7;color:rgba(38,53,45,.72)}
.collaborator-role{margin:-7px 0 18px!important;color:var(--forest)!important;font:italic 15px/1.45 Georgia!important}
.collaborator-place{margin:auto 0 0!important;padding-top:18px;border-top:1px solid var(--line);color:var(--forest)!important;font-size:11px!important}
.collaborator-place strong{color:var(--fuchsia)}
.collaborator-gallery{display:grid;gap:6px;margin:18px -10px -10px;padding-top:16px;border-top:1px solid var(--line)}
.collaborator-gallery.two{grid-template-columns:1fr 1fr}
.collaborator-gallery.three{grid-template-columns:repeat(3,1fr)}
.collaborator-gallery img{width:100%;height:112px;display:block;object-fit:contain;object-position:center;padding:4px;background:#eee7dc;border-radius:8px;filter:saturate(.88) contrast(.98)}
.collaborators-contact{width:max-content;margin:42px auto 0}
@media(max-width:900px){.site-header nav{gap:1.5vw;font-size:11px}.collaborators-grid{grid-template-columns:1fr 1fr}.collaborator-card:last-child{grid-column:1/3;max-width:520px;width:100%;margin:auto}}
@media(max-width:620px){.collaborators-grid{grid-template-columns:1fr}.collaborator-card:last-child{grid-column:auto}.collaborator-card{max-width:460px;width:100%;margin:auto}.collaborator-image{height:400px}.collaborator-copy{min-height:0}.collaborators-contact{width:100%;justify-content:space-between}}

/* Fotografías reales del centro reformado */
.puig-space{margin-top:56px}.puig-space h3{font:400 clamp(26px,3vw,38px) Georgia}.puig-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.puig-photos img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:8px}.puig-photos span{display:block;margin-top:12px;font-size:14px;line-height:1.5}.virtual-tour{margin-top:48px;max-width:900px}.virtual-tour>p{line-height:1.7}.virtual-tour video{display:block;width:100%;aspect-ratio:848/480;background:#18271f;object-fit:contain;border-radius:10px;margin-bottom:18px}.portrait-photo{filter:none}@media(max-width:600px){.puig-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}}
