@font-face{font-family:Inter;src:url('../assets/inter-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--ink:#202423;--paper:#fff;--accent:#294d3c;--soft:#f0f3ef;--line:#dce0dc;--muted:#59615e;--display:Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Inter,Arial,sans-serif;letter-spacing:0}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}svg{width:20px;height:20px;flex:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;line-height:1.08;overflow-wrap:break-word}h1,h2{font-family:var(--display)}h1{font-size:84px;margin-bottom:24px}h2{font-size:48px;margin-bottom:24px}h3{font-size:24px;margin-bottom:15px}p{margin-bottom:20px}small,.small{font-size:13px}button{border:0}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:white}[hidden]{display:none!important}
.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:92px}.section-small{padding-block:52px}.soft{background:var(--soft)}.dark{background:var(--ink);color:white}.accent{background:var(--accent);color:white}.eyebrow{text-transform:uppercase;font:500 12px/1.5 Inter,Arial,sans-serif;letter-spacing:0;margin-bottom:22px}.muted{color:var(--muted)}.lead{font-size:21px;line-height:1.55;max-width:680px}.text-column{max-width:650px}.center{text-align:center}.center .lead{margin-inline:auto}.row{display:flex;align-items:center;justify-content:space-between;gap:24px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.wide-gap{gap:64px}.actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:28px}.center .actions{justify-content:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:50px;padding:13px 24px;background:var(--ink);color:white;border:1px solid var(--ink);font-size:14px;font-weight:600;line-height:1.4;text-align:center;transition:background .2s,transform .2s;border-radius:2px}.button:hover{transform:translateY(-2px);background:var(--accent);border-color:var(--accent)}.button-light{background:#fff;color:#222;border-color:#fff}.button-outline{background:transparent;color:inherit;border-color:currentColor}.button-outline:hover{color:white}.text-link{border-bottom:1px solid currentColor;padding-bottom:4px;font-size:14px}.pill{display:inline-block;padding:4px 10px;background:var(--soft);font-size:12px;color:var(--ink)}.skip{position:fixed;left:16px;top:-100px;background:white;padding:14px;z-index:20}.skip:focus{top:12px}
.concept-bar{background:#171919;color:white;font-size:12px;line-height:1.4;padding:10px 24px;display:flex;justify-content:space-between;gap:16px}.concept-bar a{border-bottom:1px solid #969696;white-space:nowrap}.site-nav{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.wordmark{font:36px/1 var(--display);white-space:nowrap}.nav-links{display:flex;align-items:center;gap:30px;font-size:14px}.nav-links a:not(.button){padding:12px 0;border-bottom:1px solid transparent}.nav-links a[aria-current=page],.nav-links a:hover{border-color:var(--accent)}.nav-toggle{display:none;background:transparent;padding:12px;border:1px solid var(--line);color:inherit}.nav-toggle svg{display:block}.site-header{background:var(--paper);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}
.hero{position:relative;min-height:580px;height:calc(86svh - 130px);max-height:820px;isolation:isolate;display:flex;align-items:center;overflow:hidden;color:white}.hero>img{position:absolute;inset:0;z-index:-2}.hero:after{content:'';position:absolute;inset:0;background:rgba(0,0,0,.3);z-index:-1}.hero .wrap{padding-block:64px}.hero h1{max-width:850px}.hero .lead{max-width:530px;font-size:19px}.hero-footer{position:absolute;bottom:22px;left:0;right:0;font-size:12px}.hero-footer .wrap{padding:0;display:flex;justify-content:space-between;gap:18px}.page-intro{padding:68px 0 54px}.page-intro h1{font-size:68px}.page-intro .lead{margin-bottom:0}.section-title{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:42px}.section-title h2{margin-bottom:0}.section-title p{max-width:370px;margin:0}.photo{aspect-ratio:4/3;overflow:hidden;background:var(--soft)}.photo.tall{aspect-ratio:4/5}.photo.wide{aspect-ratio:16/7}.photo img{transition:transform .6s}.photo:hover img{transform:scale(1.025)}.photo figcaption{font-size:12px}.media-caption{display:flex;justify-content:space-between;font-size:13px;padding-top:15px;gap:20px}.rule-list{margin:0;padding:0;list-style:none}.rule-list li{padding:23px 0;border-top:1px solid var(--line);display:flex;align-items:flex-start;gap:22px}.rule-list .number{font-size:13px;min-width:35px;color:var(--muted)}.rule-list h3{font-size:23px;margin-bottom:8px}.rule-list p{margin:0;color:var(--muted)}.feature{padding-top:25px;border-top:1px solid var(--line)}.feature>svg{width:28px;height:28px;margin-bottom:25px;color:var(--accent)}.feature p{color:var(--muted);margin-bottom:0}.stat{font-size:54px;font-family:var(--display);display:block;line-height:1.2;margin-bottom:8px}.feature h3{font-family:var(--display)}.cta-band h2{margin:0}.cta-band p{margin:14px 0 0;max-width:600px}.site-footer{padding-block:54px 28px;border-top:1px solid var(--line)}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:45px}.footer-top p{max-width:300px;font-size:14px;margin:18px 0 0;color:var(--muted)}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:14px}.footer-links strong{margin-bottom:6px}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}
.filters{display:flex;gap:4px;flex-wrap:wrap;margin:25px 0 34px}.filters button{padding:11px 20px;background:transparent;color:var(--ink);border:1px solid var(--line);font-size:14px}.filters button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.project-row{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;align-items:center;border-top:1px solid var(--line);padding:48px 0}.project-row h2{font-size:40px}.project-row dl{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid var(--line);padding-top:20px;margin-bottom:24px}.project-row dt{font-size:12px;color:var(--muted)}.project-row dd{margin:5px 0 0;font-size:14px}.details{border-top:1px solid var(--line)}.details details{border-bottom:1px solid var(--line);padding:22px 0}.details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px;font-weight:500}.details summary::-webkit-details-marker{display:none}.details summary:after{content:'+';font-size:24px;font-weight:300;line-height:1}.details details[open] summary:after{content:'−'}.details details p{margin:18px 0 0;color:var(--muted)}.details .curriculum{padding-left:22px;margin-bottom:0;color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.form{padding:34px;background:var(--soft);border-radius:4px}.form h2{font-size:34px}.form label,.form legend{display:block;font-size:14px;font-weight:500}.form input:not([type=radio]):not([type=checkbox]),.form select,.form textarea{display:block;width:100%;min-width:0;margin:8px 0 20px;padding:13px 14px;border:1px solid #b8c0ba;border-radius:2px;background:white;color:#202423;min-height:50px}.form input[type=checkbox],.form input[type=radio]{accent-color:var(--accent)}.form textarea{resize:vertical;min-height:110px}.form .grid-2{gap:18px}.form .button{width:100%}.form .fine-print{font-size:12px;margin:16px 0 0;color:var(--muted)}.form fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}.form legend{padding:0;margin-bottom:12px}.radio-row{display:flex;gap:12px;flex-wrap:wrap}.radio-row label{display:flex;gap:8px;align-items:center;font-weight:400;border:1px solid #bac1bc;padding:10px 14px;background:#fff}.radio-row label:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.radio-row input{margin:0}.total{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:17px 0;margin:8px 0 22px;font-size:15px}.total strong{font-size:24px}.form .check-label{display:flex;gap:10px;align-items:flex-start;font-weight:400;margin:0 0 20px}.check-label input{margin-top:7px;flex:none}.result-dialog{width:min(540px,calc(100% - 32px));max-height:85svh;border:0;padding:40px;border-radius:6px;color:var(--ink);box-shadow:0 25px 120px #0004}.result-dialog::backdrop{background:#0009}.result-dialog h2{font-size:36px;padding-right:30px}.result-dialog .close{position:absolute;top:14px;right:14px;padding:9px;background:var(--soft);color:var(--ink);display:flex}.result-dialog ul{list-style:none;margin:24px 0;padding:0;border-top:1px solid var(--line)}.result-dialog li{padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;overflow-wrap:anywhere}.result-dialog li strong{display:block;font-size:12px;color:var(--muted);font-weight:400}.result-dialog .button{width:100%}.result-dialog .small{color:var(--muted)}
/* Each concept keeps its own composition and typographic character. */
.espacios{--accent:#345546;--soft:#f0f2ee}.espacios .hero{align-items:flex-end}.espacios .hero .wrap{padding-bottom:78px}.espacios .hero h1{font-size:102px}.espacios .wordmark{font-style:italic}.espacios .hero>img{object-position:center 60%}.espacios .section-statement{font-family:var(--display);font-size:45px;line-height:1.3;max-width:950px}.espacios .project-row:nth-of-type(even) .photo{order:2}.espacios .project-row:nth-of-type(even)>div:last-child{order:1}
.bruma{--accent:#006b78;--soft:#eef5f5;--ink:#143237;--muted:#506970;--line:#d5e1e1}.bruma .wordmark{font-family:Inter,sans-serif;font-size:25px;font-weight:500}.bruma .hero{text-align:center}.bruma .hero h1{font-size:112px;max-width:none}.bruma .hero .lead{margin-inline:auto}.bruma .hero .actions{justify-content:center}.bruma .hero:after{background:#062a3452}.bruma .section-title h2{font-style:italic}.bruma .amenity{display:flex;align-items:center;gap:12px;font-size:14px}.bruma .room{padding-bottom:26px;border-bottom:1px solid var(--line)}.room .room-head{display:flex;justify-content:space-between;gap:20px;margin:24px 0 12px}.room .room-head h3{font-family:var(--display);font-size:30px;margin:0}.room .room-head p{font-size:14px;margin:0;white-space:nowrap}.room .amenities{display:flex;gap:20px;flex-wrap:wrap;padding:0;list-style:none;font-size:13px}.room p{color:var(--muted)}.bruma .experience-row{display:grid;grid-template-columns:100px 1fr 1fr;gap:40px;border-top:1px solid var(--line);padding:35px 0}.experience-row>span{font-family:var(--display);font-size:38px}.experience-row h3{font-family:var(--display);font-size:32px}.experience-row p{margin:0}.bruma .stay-note{border-left:2px solid var(--accent);padding-left:24px;margin-top:30px}
.savia{--accent:#b62f37;--soft:#f4f5ef;--ink:#243b2d;--muted:#59675c;--line:#d6ddd4}.savia .wordmark{font-family:Georgia,serif;font-size:44px;font-weight:bold}.savia .hero:after{background:#10201670}.savia .hero{text-align:center}.savia .hero h1{font-size:130px;max-width:none}.savia .hero .lead{margin-inline:auto}.savia .hero .actions{justify-content:center}.savia .hero .eyebrow{margin-bottom:5px}.savia .ribbon{background:var(--ink);color:#fff;text-align:center;padding:18px;font-size:14px}.savia .dish-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:60px}.dish{border-bottom:1px solid var(--line);padding:26px 0}.dish .dish-heading{display:flex;justify-content:space-between;gap:20px;align-items:start}.dish h3{font:25px/1.2 var(--display);margin:0}.dish p{font-size:14px;color:var(--muted);margin:12px 0}.dish small{color:var(--accent)}.savia .quote{font:43px/1.35 var(--display);max-width:880px;margin-inline:auto}.savia .origin-letter{font-size:20px;line-height:1.8;max-width:680px;margin:auto}.savia .origin-letter p:first-child:first-letter{font:78px/1 var(--display);float:left;margin:8px 14px 0 0}
.onda{--accent:#4e6520;--soft:#f0f3e9;--ink:#20251b;--line:#dce1d3;--display:Inter,Arial,sans-serif}.onda .wordmark{font-weight:800;font-size:36px}.onda .hero{color:#20251b;background:#d4ed42}.onda .hero:after{display:none}.onda .hero>img{object-position:67% center}.onda .hero h1{font-size:88px;font-weight:750;max-width:480px}.onda .hero .lead{max-width:390px}.onda h2{font-weight:650}.onda .specs{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.onda .specs>div{border-top:1px solid #778147;padding-top:24px}.onda .specs strong{font-size:46px;line-height:1.15;font-weight:600;display:block}.onda .specs p{font-size:14px;margin:10px 0 0}.onda .product-poster{aspect-ratio:1;background:#deed81}.onda .product-poster img{object-fit:cover}.onda .lime{background:#d8ed8e}.onda .price{font-size:45px;font-weight:650;margin:15px 0}.onda .product-list{list-style:none;padding:0;margin:26px 0}.onda .product-list li{border-bottom:1px solid var(--line);padding:13px 0;display:flex;gap:14px}.swatch{width:24px;height:24px;display:inline-block;border:1px solid #647b1b;background:#c6e036;border-radius:50%;vertical-align:middle;margin-right:8px}
.pulso{--accent:#bd2033;--ink:#282022;--soft:#f7f0f1;--line:#e3d8db;--muted:#6c5e61;--display:Inter,Arial,sans-serif}.pulso .wordmark{font-weight:850;font-size:33px}.pulso .hero{color:#242021}.pulso .hero:after{background:#ffffff14}.pulso .hero h1{font-weight:850;font-size:98px}.pulso .hero .lead{max-width:400px}.pulso h2{font-weight:700}.pulso .movement-strip{background:var(--accent);color:white;display:flex;justify-content:space-evenly;gap:24px;padding:23px;font-size:15px;font-weight:600}.pulso .class-number{font-size:64px;color:var(--accent);font-weight:750;display:block;margin-bottom:25px;line-height:1}.pulso .schedule{width:100%;border-collapse:collapse;font-size:14px}.schedule th,.schedule td{text-align:left;padding:20px;border-bottom:1px solid var(--line)}.schedule th{background:var(--soft);font-size:13px;font-weight:500}.schedule td:first-child{font-weight:600}.table-scroll{overflow:auto}.pulso .plan{border-top:3px solid var(--ink);padding:28px 0}.pulso .plan .price{font-size:45px;font-weight:650;line-height:1.2}.pulso .plan .price small{font-size:14px;font-weight:400}.pulso .plan ul{padding-left:20px;font-size:15px}.pulso .plan li{margin-bottom:10px}.pulso .plan.featured{border-color:var(--accent)}.pulso .plan.featured .button{background:var(--accent);border-color:var(--accent)}
.foco{--accent:#a31561;--soft:#f6f1f5;--ink:#202024;--line:#e1d9df;--muted:#69606a;--display:Inter,Arial,sans-serif}.foco .wordmark{font-size:32px;font-weight:800}.foco .wordmark span{color:var(--accent)}.foco h2{font-weight:650}.foco .hero{color:var(--ink)}.foco .hero:after{display:none}.foco .hero>img{object-position:center}.foco .hero h1{font-size:82px;font-weight:750;max-width:510px}.foco .hero .lead{max-width:395px}.foco .course-meta{display:flex;flex-wrap:wrap;gap:25px;border-bottom:1px solid var(--line);padding-block:27px;font-size:14px}.foco .course-meta span{display:flex;align-items:center;gap:10px}.foco .syllabus{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px}.foco .module-head{display:flex;gap:25px;align-items:center}.foco .module-head span{font-size:12px;color:var(--muted)}.foco .module-head strong{font-size:18px;font-weight:500}.foco .project-outcome{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}.foco .project-outcome .photo{aspect-ratio:1.4;background:#fff}.foco .price{font-size:54px;font-weight:650;line-height:1.1}.foco .course-details{display:flex;gap:16px;flex-wrap:wrap;font-size:13px}.foco .course-details span{padding:7px 12px;border:1px solid var(--line)}
@media(min-width:1600px){.hero{height:730px}.wrap{width:min(1360px,calc(100% - 120px))}.onda .hero>img{object-fit:contain;object-position:right;background:#e7edce}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.split,.contact-layout{gap:45px}.nav-links{gap:19px}.hero h1{font-size:74px}.espacios .hero h1{font-size:88px}.bruma .hero h1{font-size:96px}.savia .hero h1{font-size:108px}.onda .hero h1,.pulso .hero h1{font-size:76px}.foco .hero h1{font-size:68px;max-width:420px}.foco .hero .lead{max-width:330px}.project-row{gap:40px}.grid-3{gap:24px}.foco .syllabus{gap:40px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.section{padding-block:65px}.site-nav{min-height:80px}.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 12px 18px #0001;flex-direction:column;align-items:stretch;gap:5px}.nav-links.is-open{display:flex}.nav-links a{padding:14px!important}.concept-bar{padding:10px 20px}.hero{min-height:560px;height:calc(88svh - 110px);max-height:700px}.hero .wrap{padding-block:45px}.hero h1,.espacios .hero h1{font-size:68px}.hero .lead{font-size:18px}.hero-footer{bottom:18px}.hero-footer .wrap{padding:0}.hero-footer span:last-child{display:none}h2{font-size:38px}.lead{font-size:19px}.page-intro h1{font-size:54px}.grid-3{grid-template-columns:1fr}.split,.contact-layout,.foco .syllabus,.foco .project-outcome{grid-template-columns:1fr;gap:40px}.grid-2{gap:24px}.section-title{display:block}.section-title p{margin-top:22px}.row.cta-row{align-items:flex-start;flex-direction:column}.footer-top{grid-template-columns:1fr 1fr;gap:32px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}.project-row{grid-template-columns:1fr;gap:30px}.espacios .project-row:nth-of-type(even) .photo,.espacios .project-row:nth-of-type(even)>div:last-child{order:initial}.espacios .section-statement{font-size:34px}.bruma .experience-row{grid-template-columns:50px 1fr;gap:20px}.experience-row>p{grid-column:2}.bruma .hero h1{font-size:90px}.savia .hero h1{font-size:100px}.savia .dish-grid{column-gap:30px}.savia .quote{font-size:34px}.onda .hero>img{object-position:58% center}.onda .hero h1{font-size:70px;max-width:320px}.onda .hero .lead{max-width:300px}.onda .specs{grid-template-columns:1fr 1fr}.pulso .hero h1{font-size:74px}.pulso .hero .lead{max-width:310px}.pulso .movement-strip{font-size:12px;gap:20px}.foco .hero h1{font-size:60px;max-width:365px}.foco .hero .lead{max-width:315px}.foco .project-outcome .photo{aspect-ratio:1.5}.form{padding:28px}}
@media(max-width:560px){.concept-bar{font-size:11px;gap:10px}.concept-bar span{max-width:195px}.wordmark{font-size:30px}.site-nav{min-height:73px}.hero{min-height:560px;max-height:680px}.hero h1,.espacios .hero h1{font-size:57px}.hero .lead{font-size:17px}.hero .button{padding-inline:20px}.hero .wrap{padding-bottom:55px}.hero-footer .wrap{padding:0}.eyebrow{margin-bottom:17px}.espacios .hero .wrap{padding-bottom:70px}.espacios .hero>img{object-position:58% center}.espacios .hero:after{background:#0005}.section{padding-block:54px}h2{font-size:34px}.page-intro{padding:45px 0}.page-intro h1{font-size:46px}.section-title{margin-bottom:30px}.grid-2,.savia .dish-grid{grid-template-columns:1fr}.feature{padding-top:23px}.grid-3{gap:34px}.photo.wide{aspect-ratio:4/3}.form{padding:23px}.form h2{font-size:29px}.form .grid-2{gap:0}.form .radio-row{gap:8px}.radio-row label{padding:9px 10px;font-size:13px}.form .total{align-items:center}.footer-top{gap:28px}.result-dialog{padding:30px 24px}.result-dialog h2{font-size:30px}.bruma .hero h1{font-size:78px}.bruma .hero>img{object-position:60% center}.bruma .room-head{flex-direction:column;gap:10px}.bruma .experience-row h3{font-size:27px}.savia .hero h1{font-size:91px}.savia .ribbon{font-size:12px}.savia .hero>img{object-position:56% center}.savia .origin-letter{font-size:18px}.savia .quote{font-size:31px}.onda .hero{min-height:660px;align-items:flex-start;background:#e9edce}.onda .hero>img{height:57%;top:auto;bottom:0;object-position:center;object-fit:cover}.onda .hero .wrap{padding-top:34px}.onda .hero h1{font-size:57px;margin-bottom:14px}.onda .hero .lead{max-width:290px;font-size:16px;margin-bottom:0}.onda .hero .actions{margin-top:20px}.onda .hero-footer{display:none}.onda .specs{gap:26px}.onda .specs strong{font-size:34px}.onda .price{font-size:38px}.pulso .hero{align-items:flex-start;min-height:650px;background:#f1efeb}.pulso .hero>img{height:62%;top:auto;bottom:0;object-position:center 50%}.pulso .hero:after{display:none}.pulso .hero .wrap{padding-top:30px}.pulso .hero h1{font-size:61px;margin-bottom:12px}.pulso .hero .eyebrow{margin-bottom:10px}.pulso .hero .lead{font-size:16px;max-width:285px;margin-bottom:0}.pulso .hero .actions{margin-top:18px}.pulso .hero-footer{display:none}.pulso .movement-strip{justify-content:space-between;padding:16px 20px;gap:12px}.pulso .movement-strip span:last-child{display:none}.schedule th,.schedule td{padding:16px 12px}.foco .hero{align-items:flex-start;min-height:685px;background:#fff}.foco .hero>img{height:52%;top:auto;bottom:0;object-position:85% center}.foco .hero .wrap{padding-top:35px}.foco .hero h1{font-size:53px;max-width:330px;margin-bottom:15px}.foco .hero .lead{font-size:16px;max-width:330px;margin-bottom:0}.foco .hero .actions{margin-top:20px}.foco .hero-footer{display:none}.foco .module-head{gap:15px}.foco .module-head strong{font-size:16px}.foco .course-meta{gap:15px;font-size:13px}.foco .price{font-size:45px}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.hero h1,.espacios .hero h1{font-size:49px}.hero{min-height:580px}.bruma .hero h1{font-size:67px}.savia .hero h1{font-size:79px}.onda .hero h1{font-size:50px}.pulso .hero h1{font-size:53px}.foco .hero h1{font-size:46px}.concept-bar{padding-inline:16px}.concept-bar span{max-width:155px}.button{padding-inline:18px}.filters button{padding-inline:14px}.form{padding:19px}.project-row dl{grid-template-columns:1fr 1fr}.savia .dish h3{font-size:23px}}
.hero .hero-footer .wrap{padding:0}.pulso .hero{color:#fff}.pulso .hero>img{object-position:center top}.pulso .hero:after{background:#00000018}.pulso .hero-footer{color:#242021}.pulso .hero .button{background:white;border-color:white;color:#242021}.espacios .project-row:nth-of-type(2) .photo img{transform:scale(1.45);transform-origin:left bottom}.espacios .project-row:nth-of-type(3) .photo img{transform:scale(1.5);transform-origin:68% 35%}
@media(min-width:561px){.onda .hero{background:#e6f9e7}.onda .hero>img{width:72%;left:28%;object-fit:contain;object-position:right center}.onda .hero h1{max-width:530px}.onda .hero .lead{max-width:345px}.foco .hero h1{font-size:74px;max-width:540px}.foco .hero>img{object-fit:contain;object-position:right center}}
@media(min-width:561px) and (max-width:1100px){.onda .hero>img{width:75%;left:25%}.onda .hero h1{font-size:64px;max-width:420px}.onda .hero .lead{max-width:290px}.foco .hero h1{font-size:61px;max-width:420px}.foco .hero>img{width:100%;height:80%;top:20%}.foco .hero .lead{max-width:290px}}
@media(max-width:560px){.pulso .hero{color:#242021}.pulso .hero .button{color:white;background:#282022;border-color:#282022}.pulso .hero>img{object-fit:cover;object-position:center 20%}.onda .hero{background:#e6f9e7}.onda .hero>img{object-fit:contain}.foco .hero>img{object-fit:contain;object-position:right center}}
@media(max-width:560px) and (max-height:740px){.hero{min-height:490px;height:calc(100svh - 155px)}.onda .hero,.pulso .hero,.foco .hero{min-height:0;height:calc(100svh - 155px)}.onda .hero>img{height:43%;object-position:85% center}.pulso .hero>img{height:46%;object-fit:contain;object-position:right top;background:#af3c36}.foco .hero>img{height:36%;object-position:right bottom}.onda .hero .wrap,.pulso .hero .wrap,.foco .hero .wrap{padding-top:20px}.foco .hero h1{font-size:43px}.foco .hero .lead{font-size:15px}.foco .hero .eyebrow{font-size:11px;margin-bottom:12px}.foco .hero .actions{margin-top:15px}.onda .hero h1{font-size:47px}.pulso .hero h1{font-size:51px}.hero .eyebrow{font-size:11px}.espacios .hero .wrap{padding-bottom:70px}.hero .hero-footer .wrap{padding:0}}
.pulso .hero-footer{color:white}.pulso .hero .hero-footer span{background:#282022;padding:3px 8px}.pulso .hero .hero-footer .wrap{align-items:center}
+
/* A persistent Rumi exit and a distinct editorial rhythm for the six concepts. */
.concept-bar{padding:0;background:#2457ff;color:#fff}
.concept-bar-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;font-weight:600;line-height:1.4}
.concept-bar-inner span:last-child{text-align:right}
.site-header{box-shadow:0 4px 24px #1118270a}
.site-nav{gap:22px;min-height:86px}
.nav-links{gap:19px;margin-left:auto}
.nav-actions{display:flex;align-items:center;gap:9px;flex:none}
.return-rumi{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 15px;border:1px solid #b8c8ff;border-radius:3px;color:#1645d0;background:#f1f4ff;font-size:13px;font-weight:650;line-height:1.3;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.return-rumi svg{width:17px;height:17px}
.return-rumi:hover{background:#2457ff;color:white;border-color:#2457ff}
.return-short{display:none}
.nav-toggle{width:44px;height:44px;align-items:center;justify-content:center;border-radius:3px}
.footer-return{display:inline-flex!important;align-items:center;gap:9px;color:#2457ff;font-weight:600}
.footer-return svg{width:17px;height:17px}
.site-footer{background:var(--soft)}
.footer-top{gap:36px}
.footer-top>div:first-child p{font-size:15px}
.page-intro{width:100%;max-width:none;background:var(--soft);padding:66px 0 68px}
.page-intro-inner{display:grid;grid-template-columns:180px minmax(0,1fr);gap:36px;align-items:start}
.page-intro .eyebrow{padding-top:14px;color:var(--accent)}
.page-intro h1{font-size:72px;max-width:950px;margin:0 0 23px}
.page-intro .lead{max-width:640px;font-size:19px;margin:0}
.page-intro+.section-small{padding-top:54px}
.media-caption a,.media-caption span:last-child{font-weight:600}
.photo{position:relative}
.photo img{transition:transform .5s}
a:hover>.photo img{transform:scale(1.025)}
.button{transition:background .2s,transform .2s,box-shadow .2s}
.button:hover{box-shadow:0 7px 19px #11182718}
.espacios .section-statement{max-width:1050px;line-height:1.16;font-size:53px}
.espacios .project-row{gap:72px;padding-block:63px}
.espacios .project-row .photo{aspect-ratio:1.15}
.espacios .project-row h2{font-size:44px}
.espacios .project-row:nth-of-type(even) .photo{order:0}
.espacios .project-row:nth-of-type(even)>div:last-child{order:0}
.espacios .project-row:nth-of-type(odd) .photo{order:2}
.espacios .project-row:nth-of-type(odd)>div:last-child{order:1}
.espacios .project-row .photo img{transform:none}
.bruma .room-teasers{align-items:stretch}
.bruma .room-teaser{background:white;border:1px solid var(--line);border-radius:3px;overflow:hidden}
.bruma .room-teaser .photo{aspect-ratio:1.32}
.bruma .room-teaser-copy{padding:24px}
.bruma .room-teaser-copy .eyebrow{color:var(--accent);margin:0 0 14px}
.bruma .room-teaser h3{font-family:var(--display);font-size:31px;line-height:1.15;margin:0 0 11px}
.bruma .room-teaser p{font-size:14px;color:var(--muted);min-height:69px;margin:0}
.bruma .room-teaser .media-caption{border-top:1px solid var(--line);padding-top:16px;margin-top:18px;align-items:center}
.bruma .room-teaser .media-caption a{border-bottom:1px solid var(--accent);color:var(--accent)}
.bruma .room-grid{align-items:start;row-gap:55px}
.bruma .room-grid .room{scroll-margin-top:120px}
.bruma .room-grid .photo{aspect-ratio:1.42}
.bruma .room-grid .room>.button{margin-top:26px}
.bruma .room-inclusions{padding:34px;background:var(--soft);border:0}
.bruma .room-inclusions h2{font-size:42px}
.bruma .booking-photo{aspect-ratio:1.3}
.bruma .booking-caption{margin:12px 0 24px}
.bruma .experience-row{border-color:var(--line)}
.bruma .experience-row>span{color:var(--accent)}
.savia .menu-opening{background:var(--soft);padding:36px 0}
.savia .menu-opening-grid{display:grid;grid-template-columns:.85fr 1fr;gap:65px;align-items:center}
.savia .menu-opening h1{font-size:78px;line-height:1.03;margin:16px 0 24px}
.savia .menu-opening .lead{font-size:19px;max-width:500px;margin:0}
.savia .menu-opening .photo{aspect-ratio:1.65}
.savia .dish-grid{gap:0 48px}
.savia .dish{padding:28px 0 30px}
.savia .dish h3{font-size:28px}
.savia .dish-heading>span{font-size:16px;font-weight:600;white-space:nowrap}
.savia .contact-layout .photo{aspect-ratio:1.4;margin:28px 0}
.onda .specs>div{padding-block:24px;border-top:2px solid #647b1b}
.onda .specs strong{font-size:52px}
.onda .product-poster{border-radius:3px;overflow:hidden}
.onda .product-list li{padding:20px 0}
.onda .product-list li svg{color:var(--accent)}
.pulso #clases .grid-3{gap:14px}
.pulso #clases .feature{display:flex;flex-direction:column;min-height:315px;padding:25px;background:var(--soft);border:0}
.pulso #clases .feature:nth-child(2){background:var(--accent);color:white}
.pulso #clases .feature:nth-child(2) .class-number,.pulso #clases .feature:nth-child(2) p{color:white}
.pulso #clases .feature p{flex:1}
.pulso #clases .class-number{font-size:74px;margin-bottom:24px}
.pulso #clases .media-caption{border-top:1px solid currentColor}
.pulso .plan{background:var(--soft);padding:25px;border:1px solid var(--line);border-top:4px solid var(--ink);border-radius:3px}
.pulso .plan.featured{background:#fff}
.pulso .plan .button{width:100%}
.pulso .schedule tbody tr:hover{background:#fff}
.foco .course-meta{border-bottom:0;gap:14px;padding-block:20px}
.foco .course-meta span{padding:10px 13px;background:var(--soft);border-left:2px solid var(--accent)}
.foco .syllabus{gap:70px}
.foco .syllabus .details{border:0}
.foco .syllabus details{background:#fff;border:1px solid var(--line);margin-bottom:7px;padding:17px 20px}
.foco .syllabus details[open]{border-color:#c88dae}
.foco .module-head span{color:var(--accent);font-weight:700;white-space:nowrap}
.foco .dark .stat{color:#e68bbd}
.foco .project-outcome .photo{border:1px solid var(--line)}
@media(max-width:1040px){
  .nav-toggle{display:flex}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 32px 28px;box-shadow:0 18px 26px #0002;flex-direction:column;align-items:stretch;gap:2px;margin:0}
  .nav-links.is-open{display:flex}
  .nav-links a{padding:12px!important}
  .page-intro-inner{grid-template-columns:140px minmax(0,1fr)}
  .page-intro h1{font-size:62px}
  .savia .menu-opening-grid{gap:36px}
  .savia .menu-opening h1{font-size:65px}
}
@media(max-width:800px){
  .nav-links{padding-inline:20px}
  .site-nav{min-height:78px}
  .page-intro{padding:48px 0 49px}
  .page-intro-inner{display:block}
  .page-intro .eyebrow{padding:0}
  .page-intro h1{font-size:52px}
  .page-intro .lead{font-size:17px}
  .espacios .project-row{gap:25px;padding-block:40px}
  .espacios .project-row .photo,.espacios .project-row>div:last-child{order:initial!important}
  .espacios .section-statement{font-size:38px}
  .bruma .room-teaser p{min-height:0}
  .savia .menu-opening-grid{grid-template-columns:1fr;gap:24px}
  .savia .menu-opening h1{font-size:54px}
  .savia .menu-opening .photo{aspect-ratio:2.2}
  .pulso #clases .feature{min-height:0}
  .foco .syllabus{gap:34px}
}
@media(max-width:560px){
  .concept-bar-inner{min-height:32px;font-size:10px}
  .concept-bar-inner span:last-child{display:none}
  .site-nav{gap:12px;min-height:72px}
  .return-long{display:none}
  .return-short{display:inline}
  .return-rumi{min-height:42px;padding:9px 11px;font-size:12px}
  .return-rumi svg{width:15px;height:15px}
  .nav-actions{gap:6px}
  .nav-toggle{width:42px;height:42px;padding:9px}
  .page-intro{padding:41px 0 43px}
  .page-intro h1{font-size:43px}
  .page-intro .lead{font-size:16px}
  .savia .menu-opening{padding-block:33px}
  .savia .menu-opening h1{font-size:48px}
  .savia .menu-opening .photo{aspect-ratio:2.3}
  .savia .dish{padding-block:23px}
  .savia .dish h3{font-size:25px}
  .bruma .room-teaser-copy{padding:20px}
  .bruma .room-teaser .media-caption{flex-wrap:wrap;gap:8px}
  .bruma .room-grid{row-gap:35px}
  .bruma .room-inclusions{padding:24px}
  .espacios .section-statement{font-size:33px}
  .pulso #clases .class-number{font-size:64px}
  .foco .course-meta{gap:8px}
  .foco .course-meta span{font-size:12px;padding:8px 10px}
}
@media(max-width:360px){
  .wordmark{font-size:27px}
  .bruma .wordmark{font-size:21px}
  .savia .wordmark{font-size:37px}
  .return-rumi{padding-inline:9px;gap:5px}
  .page-intro h1{font-size:38px}
}
.wordmark{display:inline-flex;align-items:center;gap:10px}
.identity-mark{width:30px;height:30px;flex:none;color:var(--accent)}
.bruma .identity-mark,.pulso .identity-mark{color:var(--ink)}
.foco .wordmark>span{color:var(--ink)}
.foco .wordmark>span span{color:var(--accent)}
.brand-values{background:var(--soft);border-bottom:1px solid var(--line)}
.brand-values .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.brand-values span{display:flex;align-items:center;gap:16px;min-height:76px;font-size:14px;font-weight:500;border-right:1px solid var(--line)}
.brand-values span:last-child{border-right:0}
.brand-values b{font-size:12px;font-weight:650;color:var(--accent)}
.offer-strip{background:var(--ink);color:#fff}
.offer-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:84px}
.offer-strip-inner>div{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.offer-strip .eyebrow{margin:0;color:#ffffffb8;font-size:11px}
.offer-strip strong{font-size:29px;line-height:1.2;white-space:nowrap}
.offer-strip-inner>div>span:last-child{font-size:14px;color:#ffffffc9}
.offer-strip a{display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid currentColor;padding-block:8px;font-size:14px;font-weight:600;white-space:nowrap}
.offer-strip a svg{width:17px;height:17px}
.onda .offer-strip{background:#303a1e}.pulso .offer-strip{background:#2c2023}.foco .offer-strip{background:#2d2630}
.signature-menu{background:#244335;color:#fff}
.signature-menu-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}
.signature-menu h2{max-width:430px}.signature-menu p:not(.eyebrow){max-width:410px;color:#e1eee5}
.signature-menu .button{margin-top:12px}
.signature-dishes{border-top:1px solid #ffffff66}
.signature-dishes>div{display:grid;grid-template-columns:1fr auto;gap:4px 20px;padding:19px 0;border-bottom:1px solid #ffffff66}
.signature-dishes span{grid-column:1/-1;font-size:11px;color:#d8e9da}
.signature-dishes strong{font-family:var(--display);font-size:25px;font-weight:400}
.signature-dishes b{font-size:15px;font-weight:500;align-self:center}
.signature-dishes small{display:block;margin-top:15px;color:#d8e9da;font-size:11px}
.product-lifestyle{background:#e8efe2}
.lifestyle-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
.lifestyle-grid .photo{aspect-ratio:1.45}
.lifestyle-grid h2{font-size:49px;max-width:480px}
.lifestyle-grid p:not(.eyebrow){max-width:430px;color:#485542}
.lifestyle-points{display:flex;flex-wrap:wrap;gap:8px;margin:27px 0}
.lifestyle-points span{border:1px solid #a4b498;padding:8px 11px;font-size:12px}
.lifestyle-grid .text-link{display:inline-flex;align-items:center;gap:8px}
.lifestyle-grid .text-link svg{width:16px;height:16px}
.training-scene{position:relative;display:flex;align-items:center;min-height:500px;isolation:isolate;overflow:hidden;color:#fff}
.training-scene>img{position:absolute;inset:0;z-index:-2;object-position:center 45%}
.training-scene:after{content:'';position:absolute;inset:0;z-index:-1;background:#1c1819a8}
.training-scene .wrap{padding-block:70px}
.training-scene h2{max-width:580px;font-size:54px}
.training-scene p:not(.eyebrow){max-width:450px}
.training-scene .button{margin-top:12px}
@media(min-width:801px){.section{padding-block:78px}.section-small{padding-block:42px}}
@media(max-width:800px){.signature-menu-inner,.lifestyle-grid{grid-template-columns:1fr;gap:36px}.signature-menu-inner{gap:38px}.lifestyle-grid .photo{aspect-ratio:1.7}.training-scene{min-height:430px}.training-scene h2{font-size:43px}}
@media(max-width:560px){.identity-mark{width:23px;height:23px}.wordmark{gap:7px}.espacios .wordmark{font-size:29px}.foco .wordmark{font-size:27px}.brand-values .wrap{grid-template-columns:1fr;gap:0}.brand-values span{min-height:46px;border-right:0;border-bottom:1px solid var(--line);font-size:13px}.brand-values span:last-child{border-bottom:0}.offer-strip-inner{align-items:flex-start;gap:12px;padding-block:18px;flex-direction:column}.offer-strip-inner>div{gap:6px 14px}.offer-strip .eyebrow{width:100%}.offer-strip strong{font-size:25px}.offer-strip-inner>div>span:last-child{font-size:12px}.offer-strip a{font-size:13px;padding-block:4px}.onda .specs strong{font-size:38px}.signature-menu-inner{gap:28px}.signature-menu h2{font-size:39px}.signature-dishes strong{font-size:22px}.lifestyle-grid .photo{aspect-ratio:1.15}.lifestyle-grid h2{font-size:38px}.training-scene{min-height:460px}.training-scene h2{font-size:39px}}
.fx-reveal{opacity:1;transform:translate3d(0,14px,0);transition:transform .55s cubic-bezier(.2,.7,.2,1);transition-delay:var(--fx-delay,0ms)}
.fx-reveal.fx-visible{opacity:1;transform:none}
@keyframes fx-enter{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}
@keyframes fx-image-enter{from{opacity:.8;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:no-preference){
  .hero .eyebrow,.hero h1,.hero .lead,.hero .actions,.page-intro .eyebrow,.page-intro h1,.page-intro .lead{animation:fx-enter .7s both cubic-bezier(.2,.7,.2,1)}
  .hero h1,.page-intro h1{animation-delay:70ms}.hero .lead,.page-intro .lead{animation-delay:150ms}.hero .actions{animation-delay:230ms}
  .hero>img{animation:fx-image-enter 1.1s both cubic-bezier(.2,.7,.2,1)}
  .photo img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
  .photo:hover img{transform:scale(1.045)}
  .return-rumi svg,.footer-return svg{transition:transform .25s ease}
  .return-rumi:hover svg,.footer-return:hover svg{transform:translateX(-3px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.fx-reveal{opacity:1!important;transform:none!important}}
