.elementor-kit-2{--e-global-color-primary:#2E6D5E;--e-global-color-secondary:#173F35;--e-global-color-text:#23211B;--e-global-color-accent:#FEB32E;--e-global-color-cream:#FFFCF7;--e-global-color-paper:#FBF7EF;--e-global-color-sand:#F4EEE2;--e-global-color-line:#E8E1D2;--e-global-color-sage:#E4EFE8;--e-global-color-green600:#37826F;--e-global-color-green950:#0F2C25;--e-global-color-inksoft:#615C50;--e-global-color-inkmute:#8F8A7A;--e-global-typography-primary-font-family:"Newsreader";--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.04em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1em;background-color:#FFFCF7;color:#23211B;font-family:"Manrope", Sans-serif;font-size:17px;font-weight:400;line-height:1.7em;}.elementor-kit-2 button,.elementor-kit-2 input[type="button"],.elementor-kit-2 input[type="submit"],.elementor-kit-2 .elementor-button{background-color:#FEB32E;font-family:"Manrope", Sans-serif;font-size:15px;font-weight:600;line-height:1em;color:#241d08;border-radius:8px 8px 8px 8px;padding:16px 28px 16px 28px;}.elementor-kit-2 button:hover,.elementor-kit-2 button:focus,.elementor-kit-2 input[type="button"]:hover,.elementor-kit-2 input[type="button"]:focus,.elementor-kit-2 input[type="submit"]:hover,.elementor-kit-2 input[type="submit"]:focus,.elementor-kit-2 .elementor-button:hover,.elementor-kit-2 .elementor-button:focus{background-color:#FFC252;color:#241d08;}.elementor-kit-2 e-page-transition{background-color:#FFBC7D;}.elementor-kit-2 a{color:#2E6D5E;}.elementor-kit-2 a:hover{color:#489F88;}.elementor-kit-2 h1{color:#173F35;font-family:"Newsreader", Sans-serif;font-size:clamp(48px,7.6vw,108px);font-weight:400;line-height:0.97em;letter-spacing:-0.02em;}.elementor-kit-2 h2{color:#173F35;font-family:"Newsreader", Sans-serif;font-size:clamp(32px,4.6vw,60px);font-weight:400;line-height:1.04em;letter-spacing:-0.02em;}.elementor-kit-2 h3{color:#173F35;font-family:"Newsreader", Sans-serif;font-size:clamp(22px,2.4vw,30px);font-weight:400;line-height:1.12em;letter-spacing:-0.02em;}.elementor-kit-2 h4{color:#173F35;font-family:"Newsreader", Sans-serif;font-size:clamp(19px,2vw,24px);font-weight:400;line-height:1.2em;letter-spacing:-0.02em;}.elementor-kit-2 h5{color:#173F35;font-family:"Newsreader", Sans-serif;font-size:18px;font-weight:400;line-height:1.3em;letter-spacing:-0.02em;}.elementor-kit-2 h6{color:#173F35;font-family:"Newsreader", Sans-serif;font-size:16px;font-weight:400;line-height:1.3em;letter-spacing:-0.02em;}.elementor-kit-2 input:not([type="button"]):not([type="submit"]),.elementor-kit-2 textarea,.elementor-kit-2 .elementor-field-textual{font-family:"Manrope", Sans-serif;font-size:15px;font-weight:400;line-height:1.4em;color:#23211B;background-color:#ffffff;border-radius:8px 8px 8px 8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Pilates Qi — sistema de diseño (Elementor Site Settings > Custom CSS) ===== */
:root{--cream:#FFFCF7;--paper:#FBF7EF;--sand:#F4EEE2;--line:#E8E1D2;--green:#2E6D5E;--green-600:#37826F;--green-900:#173F35;--green-950:#0F2C25;--amber:#FEB32E;--amber-hi:#FFC252;--ink:#23211B;--ink-soft:#615C50;--ink-mute:#8F8A7A;--serif:'Newsreader',Georgia,serif;--sans:'Manrope',system-ui,sans-serif;--r-sm:8px;--r-md:14px;--r-lg:20px;--ease:cubic-bezier(.2,.6,.2,1)}
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;overflow-x:clip}
::selection{background:#FEB32E;color:#222}
.elementor-heading-title{text-wrap:balance}
.e-con{--e-con-grid-outline:none}

/* eyebrow / kicker */
.qi-eyebrow .elementor-heading-title{display:inline-flex;align-items:center;gap:13px}
.qi-eyebrow .elementor-heading-title::before{content:"";width:30px;height:1px;background:currentColor;opacity:.55;flex:0 0 auto}
.qi-eyebrow--c .elementor-heading-title::after{content:"";width:30px;height:1px;background:currentColor;opacity:.55;flex:0 0 auto}
.qi-kicker .elementor-heading-title{display:inline-flex;align-items:center;gap:16px;text-shadow:0 1px 10px rgba(0,0,0,.4)}
.qi-kicker .elementor-heading-title::before{content:"";width:46px;height:2px;background:var(--amber);border-radius:2px}
.qi-phero-kicker .elementor-heading-title{display:inline-flex;align-items:center;gap:13px}
.qi-phero-kicker .elementor-heading-title::after{content:"";width:34px;height:1px;background:currentColor;opacity:.5}

/* headings / prose */
.qi-prose{max-width:60ch}
.qi-prose.elementor-widget-text-editor[class*=" qi-"]{margin-inline:auto}
.qi-statement .elementor-heading-title em{font-style:italic;font-weight:440;color:var(--green)}
.qi-statement--l .elementor-heading-title em{color:var(--amber)}
.qi-mquestion em{font-style:italic;color:var(--green-900)}
.qi-mquestion--l em{color:var(--amber)}
.qi-h2 .elementor-heading-title{letter-spacing:-.02em}

/* buttons */
.qi-btn .elementor-button{position:relative;overflow:hidden;transition:transform .2s var(--ease),box-shadow .3s var(--ease),background .2s,border-color .25s,color .2s}
.qi-btn .elementor-button:hover{transform:translateY(-2px)}
.qi-btn .elementor-button:active{transform:translateY(1px) scale(.99)}
.qi-btn-amber .elementor-button{box-shadow:0 16px 34px -16px rgba(254,179,46,.75)}
.qi-btn-ghostl .elementor-button{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);text-shadow:0 1px 8px rgba(0,0,0,.4)}
.qi-btn-amber .elementor-button::before,.qi-btn-green .elementor-button::before,.qi-btn-wa .elementor-button::before,.qi-btn-ghostl .elementor-button::before{content:"";position:absolute;top:-6px;bottom:-6px;left:-45%;width:38%;background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.48) 50%,rgba(255,255,255,0) 100%);transform:skewX(-18deg);pointer-events:none;opacity:0}
@media (prefers-reduced-motion:no-preference){
  .qi-btn .elementor-button:hover::before{opacity:1;animation:qi-sheen .85s var(--ease)}
  @keyframes qi-sheen{from{left:-45%}to{left:125%}}
}
.qi-btn-wa .elementor-button-content-wrapper{gap:.5em}
.qi-tlink .elementor-heading-title a{display:inline-flex;align-items:center;gap:.5em;color:inherit;transition:gap .3s var(--ease)}
.qi-tlink .elementor-heading-title a:hover{gap:.9em}
.qi-rel-c{transition:letter-spacing .3s var(--ease)}

/* hero (home) */
.qi-hero > .elementor-background-overlay{background:linear-gradient(94deg,rgba(9,22,18,.72),rgba(9,22,18,.32) 40%,rgba(9,22,18,.02) 72%),linear-gradient(2deg,rgba(7,18,15,.86),rgba(7,18,15,.08) 48%,rgba(7,18,15,.2) 100%)!important;opacity:1!important}
.qi-hero .elementor-background-video-container{filter:saturate(.88) contrast(1.03) brightness(.96)}
.qi-hero .elementor-background-video-container video{object-fit:cover}
.qi-hero-title .elementor-heading-title{max-width:16ch}
.qi-hero-claim.elementor-widget{display:inline-flex;flex-wrap:wrap;max-width:100%;align-items:center;gap:8px 14px;padding:13px 22px 13px 19px;border-left:4px solid var(--amber);border-radius:0 var(--r-sm) var(--r-sm) 0;background:rgba(11,27,22,.36);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);text-shadow:0 1px 10px rgba(0,0,0,.4)}
.qi-hero-claim em{font-style:normal;color:var(--amber);font-weight:700}
.qi-hero-claim .sep,.qi-claim .sep{opacity:.45}
.qi-hero-claim p,.qi-claim p{margin:0}
.qi-hero-lede{max-width:46ch}
.qi-hero-meta.elementor-widget{padding-top:22px;border-top:1px solid rgba(255,252,247,.22);text-shadow:0 1px 8px rgba(0,0,0,.35)}
.qi-hero-meta span+span::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--amber);margin:0 24px;vertical-align:middle}
@media(max-width:760px){.qi-hero-meta span+span::before{margin:0 14px}}

/* phero */
.qi-claim.elementor-widget{display:inline-flex;flex-wrap:wrap;max-width:100%;align-items:center;gap:6px 12px;padding:12px 20px 12px 17px;border-left:4px solid var(--amber);background:var(--sand);border-radius:0 var(--r-sm) var(--r-sm) 0}
.qi-claim .sep{color:var(--amber)}
.qi-claim em{font-style:italic;color:var(--green)}
.qi-phero-lede{max-width:48ch}
.qi-phero-title .elementor-heading-title{text-wrap:balance}

/* stats */
.qi-stats .qi-stat{position:relative;padding:clamp(44px,5vw,68px) clamp(12px,1.6vw,24px);text-align:center}
.qi-stats .qi-stat+.qi-stat::before{content:"";position:absolute;left:0;top:clamp(30px,4vw,48px);bottom:clamp(30px,4vw,48px);width:1px;background:rgba(255,252,247,.16)}
.qi-stat .elementor-counter-number-wrapper{font-variant-numeric:tabular-nums}
.qi-stat .elementor-counter-number-wrapper{flex-wrap:wrap;justify-content:center;row-gap:18px}
.qi-stat .elementor-counter-number-wrapper::after{content:"";flex:0 0 100%;height:2px;background:linear-gradient(var(--amber),var(--amber)) center/30px 2px no-repeat}
.qi-stat .elementor-counter-title{margin-top:16px}
@media(max-width:1040px){.qi-stats .qi-stat:nth-child(4)::before{display:none}.qi-stats .qi-stat:nth-child(n+4){border-top:1px solid rgba(255,252,247,.16)}}
@media(max-width:767px){.qi-stats .qi-stat::before{display:none}.qi-stats .qi-stat:nth-child(n+3){border-top:1px solid rgba(255,252,247,.16)}}

/* bleed */
.qi-bleed > .elementor-background-overlay{background:linear-gradient(180deg,rgba(33,84,71,.42) 0%,rgba(20,54,45,.62) 55%,rgba(13,40,33,.74) 100%),radial-gradient(85% 75% at 50% 58%,transparent,rgba(13,40,33,.4))!important;opacity:1!important}
.qi-bleed-h .elementor-heading-title{text-shadow:0 2px 30px rgba(0,0,0,.6),0 1px 3px rgba(0,0,0,.55)}
.qi-bleed-p{text-shadow:0 1px 16px rgba(0,0,0,.6);max-width:60ch}

/* cards */
.qi-card{transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .3s var(--ease)}
.qi-rel:hover,.qi-tqc:hover,.qi-notecard:hover,.qi-plan:hover,.qi-cctr:hover,.qi-wshop:hover,.qi-job:hover{transform:translateY(-4px);box-shadow:0 22px 44px -28px rgba(23,63,53,.42)!important;border-color:#D8CFBC!important}
.qi-seal:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 36px 64px -28px rgba(23,63,53,.5)!important;border-color:#D8CFBC!important}
.qi-seal-emblem .elementor-icon{transition:background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease),transform .4s var(--ease);position:relative;border-color:rgba(46,109,94,.34)}
.qi-seal-emblem .elementor-icon::after{content:"";position:absolute;top:-4px;left:50%;transform:translateX(-50%);width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 3px #fff}
.qi-seal:hover .qi-seal-emblem .elementor-icon{background:var(--green);border-color:var(--green);color:var(--cream);transform:scale(1.08)}
.qi-seal:hover .qi-seal-emblem .elementor-icon svg{fill:var(--cream)}
.qi-rel-img img{width:100%;height:184px;object-fit:cover;transition:transform .6s var(--ease)}
.qi-rel:hover .qi-rel-img img{transform:scale(1.05)}
.qi-rel .qi-rel-img.elementor-widget{overflow:hidden}
.qi-rel .qi-rel-img img{display:block}
.qi-tqc-a span{color:var(--ink-mute);font-weight:500}
.qi-fycard{transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.qi-fycard:hover{transform:translateY(-4px)}
.qi-fycard-t .elementor-heading-title,.qi-fycard-over .elementor-heading-title{text-shadow:0 1px 12px rgba(0,0,0,.4)}
.qi-fycard-p{text-shadow:0 1px 8px rgba(0,0,0,.3)}
.qi-fycard-p p{margin:0}
.qi-program{transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .3s var(--ease)}
.qi-program:hover{transform:translateY(-6px);box-shadow:0 34px 62px -30px rgba(23,63,53,.46)!important;border-color:#D8CFBC!important}
.qi-program-media > .elementor-background-overlay{transition:opacity .55s var(--ease)}
.qi-program:hover .qi-program-media > .elementor-background-overlay{opacity:0!important}
.qi-program-num .elementor-heading-title{text-shadow:0 1px 10px rgba(0,0,0,.45)}
.qi-step{transition:border-color .3s var(--ease)}
.qi-step:hover{border-top-color:var(--amber)!important}
.qi-wcard{transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.qi-wcard:hover{transform:translateY(-5px);box-shadow:0 26px 50px -26px rgba(23,63,53,.45)!important}
.qi-plan-flag .elementor-heading-title{display:inline-block;background:var(--amber);color:#241d08;padding:6px 14px;border-radius:999px}
.qi-plan-flag{position:absolute;top:0;right:24px;transform:translateY(-50%);width:auto}
.qi-badge .elementor-heading-title{display:inline-block;background:var(--sand);color:var(--green);padding:6px 12px;border-radius:999px}
.qi-badge--amber .elementor-heading-title{background:var(--amber);color:#241d08}
.qi-badge--soft .elementor-heading-title{background:rgba(46,109,94,.1);color:var(--green);border:1px solid rgba(46,109,94,.18)}
.qi-feats .elementor-icon-list-icon{width:16px;height:16px;border-radius:50%;background:var(--sand);display:flex;align-items:center;justify-content:center;margin-top:3px}
.qi-feats .elementor-icon-list-icon svg{width:10px;height:10px}
.qi-feats--top .elementor-icon-list-items{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
.qi-price small{font-size:14px;font-family:var(--sans);color:var(--ink-mute);font-weight:500}
.qi-price--l small{display:block;margin-top:8px;color:rgba(255,252,247,.7)}

/* accordion */
.qi-acc .elementor-accordion .elementor-accordion-item{border-width:1px 0 0 0!important;border-color:var(--line)!important;border-style:solid!important}
.qi-acc .elementor-accordion .elementor-accordion-item:last-child{border-bottom-width:1px!important}
.qi-acc .elementor-tab-title{display:flex;align-items:center;gap:18px}
.qi-acc .elementor-tab-title .elementor-accordion-icon{order:2;margin-left:auto;opacity:.7;transition:transform .35s var(--ease),opacity .2s}
.qi-acc .elementor-tab-title.elementor-active .elementor-accordion-icon{opacity:1}
.qi-acc .elementor-accordion-title{flex:1;display:inline-flex;align-items:center;gap:18px}
.qi-acc-n{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--green);flex:0 0 auto}
.qi-acc .elementor-tab-content p{margin:0;max-width:52ch}
.qi-method-acc .elementor-tab-content{padding-left:38px!important}
.qi-method-img img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:opacity .4s var(--ease)}
@media(max-width:1024px){.qi-method-img img{aspect-ratio:16/10}}

/* spec / pills */
.qi-amenity .elementor-heading-title{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:11px 18px;transition:transform .3s var(--ease),border-color .3s var(--ease)}

.qi-amenity .elementor-heading-title:hover{border-color:var(--green-600);transform:translateY(-2px)}
.qi-extra .elementor-heading-title{display:inline-flex;align-items:center;gap:7px;background:rgba(46,109,94,.1);color:var(--green);padding:6px 12px;border-radius:999px}


/* equip */
.qi-equip-ph.elementor-widget{overflow:hidden;border-radius:var(--r-md)}
.qi-equip-ph img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .55s var(--ease)}
.qi-equip-item:hover .qi-equip-ph img{transform:scale(1.06)}

/* pgquote */
.qi-pgquote-ph img{aspect-ratio:4/5;object-fit:cover;width:100%;outline:1px solid rgba(255,252,247,.28);outline-offset:7px}
.qi-pgquote-mark .elementor-heading-title{opacity:.55;display:block}
.qi-pgquote-q p{margin:0}

/* video */
.qi-video.elementor-widget{border-radius:var(--r-md);overflow:hidden;box-shadow:0 40px 80px -40px rgba(0,0,0,.7);background:#0b1b16}
.qi-video .elementor-custom-embed-play svg{filter:drop-shadow(0 10px 30px rgba(0,0,0,.4))}

/* instagram */
.qi-igrid .instagram-media{min-width:0!important;width:100%!important;max-width:100%!important;margin:0 auto!important}
.qi-reel-why .elementor-heading-title{display:inline-block;background:rgba(46,109,94,.1);color:var(--green);padding:5px 13px;border-radius:999px}

/* forms */
.qi-form .elementor-field-group .elementor-field{padding:14px 16px!important}
.qi-form .elementor-field::placeholder{color:var(--ink-mute)}
.qi-form .elementor-field:focus{border-color:var(--green-600)!important;outline:none}
.qi-form--dark .elementor-field-group .elementor-field{background:rgba(255,252,247,.08)!important;border-color:rgba(255,252,247,.3)!important;color:var(--cream)!important}
.qi-form--dark .elementor-field::placeholder{color:rgba(255,252,247,.6)}
.qi-form--dark .elementor-field:focus{border-color:var(--amber)!important}
.qi-form .elementor-button{transition:transform .2s var(--ease),background .2s}
.qi-form .elementor-button:hover{transform:translateY(-2px)}

/* timetable */
.qi-ttb .elementor-heading-title{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:13px 8px;transition:border-color .2s var(--ease),color .2s var(--ease),background .2s var(--ease)}
.qi-ttb .elementor-heading-title:hover{border-color:var(--green-600);color:var(--green);background:var(--paper)}
.qi-ttday{border-top:1px solid var(--line);position:relative}
.qi-tt > .qi-ttday:first-child::before{content:"";position:absolute;top:-1px;left:0;width:64px;height:2px;border-radius:2px;background:var(--amber)}
.qi-zrow{border-bottom:1px solid rgba(255,252,247,.16)}
.qi-soon .elementor-heading-title{display:inline-flex;align-items:center;gap:10px;padding:9px 18px 9px 15px;border-radius:999px;background:rgba(255,252,247,.1);border:1px solid rgba(255,252,247,.28)}
.qi-soon .elementor-heading-title::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 0 rgba(254,179,46,.55);animation:qi-pulse 2.2s var(--ease) infinite}
@keyframes qi-pulse{0%{box-shadow:0 0 0 0 rgba(254,179,46,.55)}70%{box-shadow:0 0 0 8px rgba(254,179,46,0)}100%{box-shadow:0 0 0 0 rgba(254,179,46,0)}}

/* header */
.qi-header{backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15)}
.qi-header.elementor-sticky--effects{box-shadow:0 10px 30px -20px rgba(23,63,53,.25)}
.qi-nav .elementor-nav-menu--main .elementor-item{position:relative;padding-top:8px!important;padding-bottom:8px!important}
.qi-nav .elementor-nav-menu--main > li > .elementor-item::after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:2px;background:var(--amber);transform:scaleX(0);transform-origin:left center;transition:transform .28s var(--ease)}
.qi-nav .elementor-nav-menu--main > li:hover > .elementor-item::after,.qi-nav .elementor-nav-menu--main > li > .elementor-item.elementor-item-active::after{transform:scaleX(1)}
.qi-nav .elementor-nav-menu--main > li > .elementor-item.elementor-item-active::after{background:var(--green)}
.qi-nav .elementor-nav-menu--main .elementor-nav-menu--dropdown{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 24px 50px -24px rgba(23,63,53,.42);padding:8px;margin-top:10px;min-width:238px}
.qi-nav .elementor-nav-menu--main .elementor-nav-menu--dropdown a{border-radius:var(--r-sm)}
.qi-nav .elementor-nav-menu--main > li > .elementor-item .sub-arrow{opacity:.55;margin-left:4px}
.qi-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{border-radius:var(--r-md);border:1px solid var(--line);box-shadow:0 30px 60px -28px rgba(23,63,53,.5);overflow:hidden}
.qi-nav .elementor-menu-toggle{border:1px solid var(--line);border-radius:11px;background:#fff;width:44px;height:44px}
.qi-header .qi-btn .elementor-button{white-space:nowrap}
@media(max-width:1460px){.qi-nav .elementor-nav-menu--main .elementor-item{font-size:13px!important;padding-left:7px!important;padding-right:7px!important}.qi-header .qi-logo img{height:36px}.qi-header .qi-header-cta .elementor-button{padding:10px 14px!important;font-size:12.5px!important}}
.qi-nav{min-width:0}
.qi-header .e-con-inner{flex-wrap:nowrap!important}

/* footer */
.qi-ft h4{font-family:var(--sans);color:var(--cream);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 15px;font-weight:600}
.qi-ft ul{list-style:none;margin:0;padding:0;display:grid;gap:11px;font-size:13.5px;line-height:1.5}
.qi-ft li{margin:0}
.qi-ft a{color:rgba(255,252,247,.72);transition:color .2s var(--ease)}
.qi-ft a:hover{color:var(--cream)}
.qi-ft strong{color:var(--cream)}
.qi-ft-bar b{font-family:var(--serif);font-weight:400;font-style:italic;color:var(--amber);font-size:15px}
.qi-ft-bar p{margin:0}

/* whatsapp float */
.qi-wa-float{position:fixed!important;right:clamp(16px,3vw,26px);bottom:clamp(16px,3vw,26px);z-index:85;width:auto}
.qi-wa-float .elementor-button{border-radius:999px;padding:15px 18px;box-shadow:0 14px 34px -8px rgba(37,211,102,.55),0 4px 12px rgba(0,0,0,.2);position:relative;overflow:visible;transition:transform .28s var(--ease),box-shadow .28s var(--ease)}
.qi-wa-float .elementor-button:hover{transform:translateY(-3px) scale(1.05)}
.qi-wa-float .elementor-button-icon svg{width:26px;height:26px;fill:#fff}
@media (prefers-reduced-motion:no-preference){
  .qi-wa-float .elementor-button::after{content:"";position:absolute;inset:0;border-radius:999px;background:#25D366;z-index:-1;animation:qi-wapulse 2.6s var(--ease) infinite}
  @keyframes qi-wapulse{0%{transform:scale(1);opacity:.5}70%{transform:scale(1.7);opacity:0}100%{opacity:0}}
}

/* article (single post) */
.qi-article{max-width:720px;margin:0 auto;font-family:var(--sans)}
.qi-article h2{font-family:var(--serif);font-weight:470;font-size:clamp(24px,3vw,34px);line-height:1.16;color:var(--green-900);margin:clamp(36px,4.4vw,52px) 0 2px;letter-spacing:-.01em}
.qi-article h3{font-family:var(--serif);font-weight:500;font-size:clamp(20px,2.2vw,25px);line-height:1.2;color:var(--green-900);margin:clamp(30px,3.4vw,40px) 0 2px}
.qi-article p{font-size:clamp(16px,1.15vw,18px);line-height:1.78;color:var(--ink-soft);margin:18px 0 0}
.qi-article strong{color:var(--ink);font-weight:600}
.qi-article a{color:var(--green);font-weight:500;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(46,109,94,.4)}
.qi-article a:hover{text-decoration-color:var(--green)}
.qi-article ul{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:13px}
.qi-article li{position:relative;padding-left:26px;font-size:clamp(15.5px,1.1vw,17px);line-height:1.68;color:var(--ink-soft)}
.qi-article ul li::before{content:"";position:absolute;left:2px;top:10px;width:7px;height:7px;border-radius:50%;background:var(--amber)}
.qi-article blockquote.article__q{margin:clamp(32px,3.8vw,46px) 0;padding:clamp(24px,3vw,34px) clamp(26px,3vw,38px);background:#E4EFE8;border-left:4px solid var(--green);border-radius:0 var(--r-md) var(--r-md) 0;font-style:normal}
.qi-article .article__q p{margin:0;font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(19px,2.1vw,24px);line-height:1.46;color:var(--green-900)}
.qi-article .article__q cite{display:block;margin-top:15px;font-family:var(--sans);font-style:normal;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--green)}
.qi-article ol.refs{margin:22px 0 0;padding:0;list-style:none;counter-reset:r;display:grid;gap:11px}
.qi-article ol.refs li{position:relative;padding-left:34px;font-size:13px;line-height:1.55;color:var(--ink-mute)}
.qi-article ol.refs li::before{counter-increment:r;content:counter(r);position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--sand);color:var(--green);font-family:var(--sans);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center}
.qi-article sup.cite{color:var(--green);font-weight:700;font-size:.62em;vertical-align:super;line-height:0;margin-left:1px}
.qi-article a.qi-btn{display:inline-flex;align-items:center;justify-content:center;margin-top:30px;background:var(--amber);color:#241d08;font-weight:600;font-size:15px;line-height:1;padding:16px 28px;border-radius:var(--r-sm);text-decoration:none;box-shadow:0 16px 34px -16px rgba(254,179,46,.75);transition:transform .2s var(--ease),background .2s}
.qi-article a.qi-btn:hover{background:var(--amber-hi);transform:translateY(-2px)}

/* blog loop cards */
.qi-post-card{transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.qi-post-card:hover{transform:translateY(-4px);box-shadow:0 22px 44px -28px rgba(23,63,53,.42)!important}
.qi-post-ph img{width:100%;height:150px;object-fit:cover;transition:transform .6s var(--ease)}
.qi-post-card:hover .qi-post-ph img{transform:scale(1.05)}
.qi-post-ph.elementor-widget{overflow:hidden}
.qi-pcat .elementor-post-info__terms-list-item{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--green)!important;background:var(--sand);padding:5px 11px;border-radius:999px}
.qi-pcat .elementor-icon-list-icon{display:none}
.qi-pcat .elementor-icon-list-text{padding:0!important}
.e-filter .e-filter-item{font-family:var(--sans);font-weight:600;font-size:13.5px;color:var(--ink-soft);background:#fff;border:1px solid var(--line);border-radius:999px;padding:11px 20px;transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}
.e-filter .e-filter-item:hover{border-color:var(--green-600);color:var(--green)}
.e-filter .e-filter-item[aria-pressed=true],.e-filter .e-filter-item.e-active{background:var(--green);border-color:var(--green);color:#fff}
.qi-filter .e-filter{gap:10px;justify-content:center}

/* gallery (Pro) */
.qi-gal .e-gallery-item{border-radius:var(--r-md);overflow:hidden}
.qi-gal .elementor-gallery-item__title{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--amber)}
.qi-gal .elementor-gallery-item__description{font-family:var(--serif);font-style:italic;font-size:16px;line-height:1.35;color:var(--cream)}

/* generic filter (plans/videos) */
.qi-hidden{display:none!important}

/* misc */
.qi-noteb p{margin:0}
.qi-backed-logos img{height:78px;width:auto;object-fit:contain}
.qi-wcard-cap.elementor-widget{border-top:2px solid var(--amber)}
.qi-course-price small{display:block;margin-top:8px;font-family:var(--sans);font-size:14px;font-weight:500;color:rgba(255,252,247,.7)}
.qi-mq::before{content:"C";position:absolute;inset:0;z-index:0;overflow:hidden;display:flex;justify-content:flex-end;align-items:flex-start;padding-right:clamp(8px,4vw,64px);font-family:var(--serif);font-weight:400;font-size:clamp(260px,34vw,520px);line-height:.6;color:rgba(55,130,111,.17);pointer-events:none;background:radial-gradient(900px 520px at 88% 0%,rgba(55,130,111,.55),rgba(55,130,111,0) 62%),radial-gradient(700px 480px at 6% 110%,rgba(46,109,94,.45),rgba(46,109,94,0) 60%),linear-gradient(180deg,#123830 0%,var(--green-950) 100%)}
.qi-mq > *{position:relative;z-index:1}
.qi-mq-q em{font-style:italic;color:#D6E9E0}
.qi-mq-q strong{font-weight:500;color:var(--amber-hi)}
.qi-mq-q strong::before{content:"";display:inline-block;width:.55em;height:.055em;background:var(--amber);vertical-align:.32em;margin:0 .32em 0 .12em}
.qi-mq-fig img{aspect-ratio:4/5;object-fit:cover;width:100%;outline:1px solid rgba(255,252,247,.28);outline-offset:8px}
.qi-mq-eb .elementor-heading-title{display:inline-flex;align-items:center;gap:12px}
.qi-mq-eb .elementor-heading-title::before{content:"";width:28px;height:1px;background:var(--amber)}
.qi-lb-hidden{display:none}

/* header layout safety (no horizontal overflow) */
.qi-header .e-con-inner{flex-wrap:nowrap!important;align-items:center}
.qi-header .qi-logo{flex:0 1 auto;min-width:0}
.qi-header .qi-logo img{max-width:100%}
.qi-header .qi-nav{flex:1 1 auto;min-width:0}
.qi-header .qi-header-cta{flex:0 0 auto}
.qi-header .qi-header-cta .elementor-button{white-space:nowrap}
@media(max-width:1220px){.qi-header .qi-nav{flex:0 0 auto}}
@media(max-width:600px){
  .qi-header .qi-logo img{height:34px}
  .qi-header .qi-header-cta .elementor-button{padding:9px 13px!important;font-size:11.5px!important}
}
@media(max-width:380px){
  .qi-header .qi-header-cta .elementor-button{padding:8px 10px!important;font-size:11px!important}
}

/* nav: force horizontal menu below 1240 into burger (Elementor breakpoints unreliable here) */
.qi-nav .elementor-nav-menu--main{flex-wrap:nowrap}
@media(min-width:1241px){
  .qi-nav .elementor-menu-toggle{display:none!important}
  .qi-nav .elementor-nav-menu--main{display:flex!important}
}
@media(max-width:1240px){
  .qi-nav .elementor-nav-menu--main{display:none!important}
  .qi-nav .elementor-menu-toggle{display:flex!important}
}
.qi-nav .elementor-nav-menu--dropdown{border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 30px 60px -28px rgba(23,63,53,.5);overflow:hidden;background:var(--cream)!important;margin-top:8px}
.qi-nav .elementor-nav-menu--dropdown a{color:var(--ink)!important;font-family:var(--sans);font-weight:500}
.qi-nav .elementor-nav-menu--dropdown a:hover,.qi-nav .elementor-nav-menu--dropdown .elementor-item.highlighted{background:var(--paper)!important;color:var(--green)!important}
.qi-nav .elementor-nav-menu--dropdown .elementor-item{border:0!important}

/* responsive safety: cap fixed-width inner containers on tablet & below */
@media(max-width:1024px){ .e-con{max-width:100%!important} }
.qi-spec .qi-spec-item{min-width:0}
.qi-article img{max-width:100%;height:auto}

/* pgquote: never overflow on tablet */
.qi-pgquote{max-width:100%}
.qi-pgquote > .e-con{min-width:0}
@media(max-width:1024px){.qi-pgquote{flex-wrap:wrap!important}.qi-pgquote > .e-con{width:100%!important}.qi-pgquote .qi-pgquote-ph{margin:0 auto}}

/* hero video: always cover, never show poster strip below (independent of Elementor JS sizing) */
.qi-hero .elementor-background-video-container{position:absolute;inset:0;overflow:hidden;z-index:0}
.qi-hero .elementor-background-video-hosted{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;transform:none!important;object-fit:cover;object-position:center}
.qi-hero{background-size:cover;background-position:center}

/* header al hacer scroll: oculta el menú, muestra la frase/sección actual y el burger (como el original) */
.qi-header .qi-hd-tagline{display:none;white-space:nowrap;transition:opacity .25s var(--ease)}
.qi-header .qi-hd-tagline.is-fading{opacity:0}
.qi-header.is-scrolled .qi-hd-tagline{display:block}
.qi-header.is-scrolled .qi-nav .elementor-nav-menu--main{display:none!important}
.qi-header.is-scrolled .qi-nav .elementor-menu-toggle{display:flex!important}
.qi-header.is-scrolled .qi-nav{flex:0 0 auto}
@media(max-width:760px){.qi-header .qi-hd-tagline{display:none!important}}
/* dropdown del burger: ancho natural a la derecha, no a pantalla completa en escritorio */
@media(min-width:761px){.qi-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{left:auto!important;right:0!important;width:auto!important;min-width:260px;max-width:340px}}
.qi-hero-in{max-width:1240px;width:100%}
.qi-hero{background-size:cover;background-position:center}

/* header: título centrado absoluto; burger fijo junto al CTA a la derecha */
.qi-header > .e-con-inner > .e-con{position:relative}
.qi-header.is-scrolled .qi-hd-tagline{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0}
.qi-header.is-scrolled .qi-nav{margin-left:auto}
@media(max-width:1240px){.qi-header .qi-nav{margin-left:auto}}
.qi-header .qi-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{left:auto!important;right:0!important}
/* reproductor YouTube con autoplay al entrar en pantalla (Reformer en Casa) */
/* El alto de la caja lo define la portada, que va en el flujo normal (16:9).
   Con aspect-ratio el contenedor de Elementor colapsaba a 0 en movil y el boton
   de abajo se montaba encima del video. */
.qi-yt{position:relative;border-radius:var(--r-md);overflow:hidden;background:#0b1b16;box-shadow:0 40px 80px -40px rgba(0,0,0,.7)}
.qi-yt__player,.qi-yt__player iframe,.qi-yt > iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:1}
.qi-yt button.qi-yt__poster{position:relative;z-index:2;display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;transition:opacity .55s var(--ease)}
.qi-yt button.qi-yt__poster img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.qi-yt button.qi-yt__poster.is-hidden{opacity:0;pointer-events:none}
.qi-yt__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:78px;height:78px;border-radius:50%;background:rgba(254,179,46,.96);display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.4);transition:transform .3s var(--ease)}
.qi-yt button.qi-yt__poster:hover .qi-yt__play{transform:translate(-50%,-50%) scale(1.07)}
.qi-yt button.qi-yt__sound{position:absolute;left:16px;bottom:16px;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border:0;border-radius:999px;background:rgba(11,27,22,.74);backdrop-filter:blur(4px);color:var(--cream);font-family:var(--sans);font-size:12.5px;font-weight:600;cursor:pointer}
.qi-yt__sound:hover{background:rgba(11,27,22,.92)}
.qi-yt__sound[hidden]{display:none}

/* centros: tarjetas con la info bajo el nombre y mapa que cambia (como el original) */
.qi-centro-tab{cursor:pointer;transition:border-color .25s var(--ease),box-shadow .25s var(--ease),transform .2s var(--ease)}
.qi-centro-tab:hover{border-color:#D8CFBC!important;transform:translateY(-2px)}
.qi-centro-tab.is-active{border-color:var(--green)!important;box-shadow:0 12px 28px -18px rgba(23,63,53,.4)!important}
.qi-centro-map{min-height:360px}
.qi-centro-map iframe{min-height:360px;filter:saturate(.85) contrast(1.02)}
@media(max-width:860px){.qi-centro-map,.qi-centro-map iframe{min-height:300px}}


/* iconos SVG como máscara (Elementor filtra <svg> en los títulos) */
.qi-amenity .elementor-heading-title::before,.qi-extra .elementor-heading-title::before{content:"";flex:0 0 auto;background:currentColor;-webkit-mask:var(--qi-ic) center/contain no-repeat;mask:var(--qi-ic) center/contain no-repeat}
.qi-amenity .elementor-heading-title::before{width:17px;height:17px;background:var(--green)}
.qi-extra .elementor-heading-title::before{width:14px;height:14px}
.qi-amenity:not([class*="qi-ic--"]) .elementor-heading-title::before,.qi-extra:not([class*="qi-ic--"]) .elementor-heading-title::before{display:none}
.qi-ic--aire .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v18M4.5%207.5l15%209M19.5%207.5l-15%209%22%2F%3E%3C%2Fsvg%3E")}
.qi-ic--casilleros .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%225%22%20y%3D%223%22%20width%3D%2214%22%20height%3D%2218%22%20rx%3D%221.5%22%2F%3E%3Cpath%20d%3D%22M12%203v18M8.4%207h.5M8.4%2014h.5%22%2F%3E%3C%2Fsvg%3E")}
.qi-ic--cafe .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%208h13v5a4%204%200%200%201-4%204H8a4%204%200%200%201-4-4V8z%22%2F%3E%3Cpath%20d%3D%22M17%209h1.5a2.5%202.5%200%200%201%200%205H17%22%2F%3E%3Cpath%20d%3D%22M8%203v2M11%203v2M14%203v2%22%2F%3E%3C%2Fsvg%3E")}
.qi-ic--agua .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217%22%20height%3D%2217%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203s5.5%205.5%205.5%2010a5.5%205.5%200%200%201-11%200C6.5%208.5%2012%203%2012%203z%22%2F%3E%3C%2Fsvg%3E")}
.qi-ic--estacionamiento .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%223%22%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M9%2017V7h3.5a3%203%200%200%201%200%206H9%22%2F%3E%3C%2Fsvg%3E")}
.qi-ic--bicicletero .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%225.5%22%20cy%3D%2217.5%22%20r%3D%223.5%22%2F%3E%3Ccircle%20cx%3D%2218.5%22%20cy%3D%2217.5%22%20r%3D%223.5%22%2F%3E%3Cpath%20d%3D%22M15%2017.5%2012%209M9.5%2017.5%2012%209M12%209l2-3h2.2M8.5%209h5%22%2F%3E%3C%2Fsvg%3E")}
.qi-ic--reloj .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215%22%20height%3D%2215%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E")}
.qi-ic--pin .elementor-heading-title::before{--qi-ic:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215%22%20height%3D%2215%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012s-8-6-8-12a8%208%200%200%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E")}
/* mapa de centros: ocupa todo el alto de su columna */
.qi-centros2{align-items:stretch}
.qi-centro-map{display:flex!important;flex-direction:column!important;min-height:360px}
.qi-centro-map > .elementor-widget,.qi-centro-map .elementor-widget-google_maps{flex:1 1 auto;display:flex;width:100%;min-height:0}
.qi-centro-map .elementor-widget-container{flex:1 1 auto;display:flex;width:100%;min-height:0}
.qi-centro-map .elementor-custom-embed{flex:1 1 auto;width:100%;height:auto!important;min-height:0;display:block}
.qi-centro-map iframe{width:100%!important;height:100%!important;min-height:100%!important;display:block;border:0}
/* CTA full-bleed: zoom lento de la foto al pasar el puntero (::before lo usa Elementor para la superposición) */
.qi-bleed{overflow:hidden;isolation:isolate;background-image:none!important}
.qi-bleed::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--qi-bg);background-size:cover;background-position:center;filter:saturate(.78) contrast(1.03) brightness(.95);transform:scale(1.06);transition:transform 5s var(--ease)}
.qi-bleed:hover::after{transform:scale(1.12) translate(-2.5%,-2%)}
.qi-bleed::before,.qi-bleed > .elementor-background-overlay{z-index:1}
.qi-bleed > .e-con-inner,.qi-bleed > .elementor-element,.qi-bleed > .e-con{position:relative;z-index:2}
@media (prefers-reduced-motion:reduce){.qi-bleed::after{transition:none}.qi-bleed:hover::after{transform:scale(1.06)}}

/* reels de Instagram: aire bajo la etiqueta y recorte de las franjas negras */
.qi-reel-media{margin-top:26px}
/* La caja reserva su tamano final (9:16) desde el primer momento. Antes crecia de
   69 a 615 px cuando Instagram terminaba de cargar y toda la pagina de ahi hacia
   abajo (certificacion y notas del blog) daba un salto. */
/* El alto de cada reel lo fija qi.js en pixeles (ancho x 16/9) apenas carga la
   pagina. Elementor no propaga el alto de un hijo con aspect-ratio, y mientras
   Instagram dejaba su bloque original dentro del recuadro la pagina crecia unos
   430 px por reel y despues se encogia: eso eran los saltos de carga. */
.qi-reel-embed{position:relative;width:100%;border-radius:var(--r-md);overflow:hidden;background:#0b1b16}
/* Tope de ancho: sin el, en tablet y en horizontal la reja pasa a una sola
   columna y cada reel vertical llegaba a medir 1.700 px de alto. */
.e-con .qi-reel-media,.qi-reel-media{height:auto;width:100%;max-width:340px!important;margin-left:auto;margin-right:auto;min-height:min(604px,calc((100vw - 44px) * 1.7778))}
.qi-reel-embed > *{position:absolute!important;top:0;left:0;width:100%;margin:0!important}
.qi-reel-embed::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,252,247,.045) 8%,rgba(255,252,247,.11) 18%,rgba(255,252,247,.045) 33%);background-size:220% 100%;animation:qi-reel-carga 1.5s linear infinite;pointer-events:none}
.qi-reel-embed.is-cropped::after,.qi-reel-embed.qi-cargado::after{display:none}
@keyframes qi-reel-carga{to{background-position:-220% 0}}
@media(prefers-reduced-motion:reduce){.qi-reel-embed::after{animation:none}}

.qi-reel-embed.is-cropped iframe{position:absolute!important;margin:0!important;border:0!important;border-radius:0!important;min-width:0!important;max-width:none!important}
.qi-reel-embed .instagram-media{min-width:0!important;width:100%!important;max-width:100%!important;margin:0!important;box-shadow:none!important}

/* botones de filtro (Planes, Blog, Videos): píldora blanca que pasa a verde al elegirla */
.qi-filter-btn{cursor:pointer}
.qi-filter-btn .elementor-heading-title{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;
  background:#fff;color:var(--ink-soft)!important;border:1px solid var(--line);border-radius:999px;padding:11px 20px;line-height:1;
  transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .2s var(--ease)}
.qi-filter-btn:hover .elementor-heading-title{border-color:var(--green-600);color:var(--green)!important;transform:translateY(-1px)}
.qi-filter-btn.is-active .elementor-heading-title{background:var(--green);border-color:var(--green);color:#fff!important}
.qi-filter-btn.is-active:hover .elementor-heading-title{background:var(--green-600);border-color:var(--green-600);color:#fff!important}
/* sobre fondo verde (Videos) el inactivo va translúcido */
.qi-filterbar--light .qi-filter-btn .elementor-heading-title{background:rgba(255,252,247,.1);border-color:rgba(255,252,247,.3);color:rgba(255,252,247,.9)!important}
.qi-filterbar--light .qi-filter-btn:hover .elementor-heading-title{background:rgba(255,252,247,.2);border-color:var(--cream);color:var(--cream)!important}
.qi-filterbar--light .qi-filter-btn.is-active .elementor-heading-title{background:var(--amber);border-color:var(--amber);color:#241d08!important}
.qi-filterbar{gap:10px;row-gap:10px}

/* etiquetas de vacantes (Trabaja Qi) */
.qi-jobtag .elementor-heading-title{display:inline-flex;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:6px 12px;line-height:1.3;color:var(--ink-soft)!important}
/* textos sobre foto (Reformer en Casa) */
.qi-shadow .elementor-heading-title{text-shadow:0 2px 22px rgba(0,0,0,.55)}
.qi-shadow-p{text-shadow:0 1px 14px rgba(0,0,0,.5)}

/* planes: fila centrada (5 tarjetas y al filtrar) */
.qi-plans{display:flex!important;flex-wrap:wrap!important;--justify-content:center;justify-content:center!important;align-items:stretch!important;gap:24px!important}
.qi-plans > .e-con{width:calc(33.333% - 16px);max-width:400px}
@media(max-width:1024px){.qi-plans > .e-con{width:calc(50% - 12px)}}
@media(max-width:600px){.qi-plans > .e-con{width:100%;max-width:420px}}

/* equipamiento: tarjetas con descripción y etiquetas de lo que desarrolla */
.qi-equip{display:flex!important;flex-wrap:wrap!important;--justify-content:center;justify-content:center!important;align-items:stretch!important;gap:22px!important}
.qi-equip > .e-con{width:calc(33.333% - 15px);max-width:380px}
@media(max-width:1024px){.qi-equip > .e-con{width:calc(50% - 11px)}}
@media(max-width:600px){.qi-equip > .e-con{width:100%;max-width:420px}}
.qi-equip-item{transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .3s var(--ease)}
.qi-equip-item:hover{transform:translateY(-4px);box-shadow:0 22px 44px -28px rgba(23,63,53,.42)!important;border-color:#D8CFBC!important}
.qi-equip-ph img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .55s var(--ease)}
.qi-equip-item:hover .qi-equip-ph img{transform:scale(1.05)}
.qi-equip-ph{overflow:hidden}
.qi-eqchip .elementor-heading-title{display:inline-flex;align-items:center;background:rgba(46,109,94,.1);border:1px solid rgba(46,109,94,.18);border-radius:999px;padding:6px 12px;line-height:1.3;color:var(--green)!important}

/* foto de Joseph Pilates y enlace a su libro */
.qi-joseph img{object-position:center 30%}
.qi-booklink .elementor-heading-title a{color:var(--green-900);transition:color .2s var(--ease)}
.qi-booklink .elementor-heading-title a:hover{color:var(--green)}

/* portada del libro de Rodrigo */
.qi-book-cover img{width:100%;height:auto;display:block;border-radius:10px}

/* notas: me gusta, compartir y comentarios */
.qi-actions button.qi-like{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink-soft);font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s var(--ease)}
.qi-actions button.qi-like:hover{border-color:var(--green-600);color:var(--green);transform:translateY(-1px)}
.qi-actions button.qi-like[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff}
.qi-actions button.qi-like[aria-pressed="true"] svg{fill:currentColor}
.qi-like__n{font-variant-numeric:tabular-nums}
.qi-share .elementor-grid{gap:10px}
.qi-share .elementor-share-btn{border-radius:999px!important;width:44px;height:44px;min-height:44px;padding:0!important;align-self:center}
.qi-share .elementor-share-btn__icon{width:auto!important;height:auto!important;font-size:15px!important;line-height:1}
.qi-share .elementor-share-btn__icon svg{width:16px;height:16px}
.qi-comments .comment-respond{margin-top:8px}
.qi-comments .comment-reply-title,.qi-comments .comments-title{font-family:var(--serif);font-weight:470;font-size:clamp(20px,2.2vw,26px);color:var(--green-900)}
.qi-comments input[type=text],.qi-comments input[type=email],.qi-comments input[type=url],.qi-comments textarea{width:100%;font-family:var(--sans);font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 16px}
.qi-comments input:focus,.qi-comments textarea:focus{outline:none;border-color:var(--green-600)}
.qi-comments .submit{background:var(--amber);color:#241d08;border:0;border-radius:var(--r-sm);padding:14px 26px;font-family:var(--sans);font-weight:600;font-size:15px;cursor:pointer;transition:background .2s var(--ease),transform .2s var(--ease)}
.qi-comments .submit:hover{background:var(--amber-hi);transform:translateY(-2px)}
.qi-comments .comment-list{list-style:none;padding:0;margin:0 0 24px}
.qi-comments .comment-body{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:20px 22px;margin-bottom:14px}
.qi-comments .comment-author .fn{font-family:var(--serif);font-weight:500;color:var(--green-900);font-style:normal}
.qi-comments .comment-metadata{font-size:12.5px;color:var(--ink-mute)}

.qi-actions button.qi-copy{display:inline-flex;align-items:center;gap:8px;margin-left:10px;padding:9px 16px;border:1px solid var(--line,#e6e0d6);border-radius:999px;background:#fff;color:#4b5545;font:600 13px/1 'Manrope',system-ui,sans-serif;cursor:pointer;transition:background .22s,color .22s,border-color .22s}
.qi-actions button.qi-copy:hover{background:#2f5d3f;border-color:#2f5d3f;color:#fff}
.qi-actions button.qi-copy.is-done{background:#2f5d3f;border-color:#2f5d3f;color:#fff}
@media(max-width:480px){.qi-actions button.qi-copy{margin-left:0}}

.qi-ft-social .qi-social{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.qi-social__t{font:700 11px/1 'Manrope',system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,252,247,.52);margin-right:4px}
.qi-social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,252,247,.2);color:rgba(255,252,247,.8);transition:background .22s,color .22s,border-color .22s,transform .22s}
.qi-social a:hover{background:#d8a44a;border-color:#d8a44a;color:#14261a;transform:translateY(-2px)}

.qi-subnav{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:28px}
.qi-subnav a{display:inline-flex;align-items:center;padding:9px 18px;border-radius:999px;border:1px solid rgba(255,252,247,.3);color:rgba(255,252,247,.85);font:600 13px/1 'Manrope',system-ui,sans-serif;text-decoration:none;transition:background .22s,color .22s,border-color .22s}
.qi-subnav a:hover{background:rgba(255,252,247,.14);color:#fffcf7}
.qi-subnav a.is-on{background:#d8a44a;border-color:#d8a44a;color:#241d08}
@media(max-width:480px){.qi-subnav a{padding:8px 14px;font-size:12.5px}}

/* ---------- Movil: areas de toque comodas (minimo 44px) ---------- */
@media(max-width:767px){
  .elementor-button{min-height:44px}
  .elementor-widget-button .elementor-button,
  .elementor-button-wrapper .elementor-button{display:inline-flex;align-items:center;justify-content:center}
  .qi-tlink .elementor-heading-title a{min-height:44px;padding:2px 0}
  .qi-ft ul{display:flex;flex-direction:column;gap:2px}
  .qi-ft ul li a{display:inline-flex;align-items:center;min-height:40px}
  .qi-social a{width:44px;height:44px}
  .qi-subnav a{min-height:42px}
  .qi-like,.qi-actions button.qi-copy{min-height:44px}
  .qi-share .elementor-share-btn{min-width:44px}
  .qi-filterbar .elementor-heading-title{min-height:40px;display:inline-flex;align-items:center}
}

/* ---------- Movil: correcciones de composicion ---------- */
@media(max-width:767px){
  /* el claim del hero parte en dos lineas: el separador queda huerfano */
  .qi-hero-claim .sep,.qi-claim .sep{display:none}
  .qi-claim.elementor-widget{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
  /* mas contraste sobre el video del hero */
  .qi-hero-in .qi-hero-lede,.qi-hero-in .elementor-widget-text-editor{text-shadow:0 1px 14px rgba(9,22,18,.75)}
  .qi-hero-in .elementor-heading-title{text-shadow:0 2px 18px rgba(9,22,18,.6)}
  /* la quinta cifra queda sola en una reja de dos columnas */
  .qi-stats .qi-stat:nth-child(5):last-child{grid-column:1 / -1}
  /* la tarjeta "ver todos los workshops" no necesita alto de tarjeta con foto */
  .qi-wcard-all{min-height:132px!important}
}

@media(max-width:1024px){
  /* en vertical el banner recorta la foto por el centro y corta la cabeza */
  .qi-phero-media{background-position:center top!important;min-height:min(56vh,420px)!important}
}

.qi-canales{list-style:none;margin:0;padding:0}
.qi-canales li{margin:0}
.qi-canales li+li{border-top:1px solid var(--line)}
.qi-canales a{display:flex;align-items:center;min-height:46px;color:#2E6D5E;font-weight:500;text-decoration:none;transition:color .2s}
.qi-canales a:hover{color:var(--green-900)}

/* el video de fondo del hero no debe mostrar los controles nativos si el
   navegador no puede reproducirlo solo */
.elementor-background-video-container video::-webkit-media-controls,
.elementor-background-video-container video::-webkit-media-controls-enclosure,
.elementor-background-video-container video::-webkit-media-controls-panel{display:none!important;-webkit-appearance:none}
.elementor-background-video-container video{pointer-events:none}

/* El hero siempre muestra una imagen de fondo. En iPhone con ahorro de bateria
   el video no parte solo y antes quedaba un recuadro oscuro con los controles. */
.qi-hero{background-image:url(https://pilatesqi.cl/wp-content/uploads/img-hero-hero-poster.webp);background-size:cover;background-position:center center;background-repeat:no-repeat}
.qi-hero .elementor-background-video-container{pointer-events:none}
.qi-hero video{pointer-events:none}
.qi-hero video::-webkit-media-controls,.qi-hero video::-webkit-media-controls-enclosure,
.qi-hero video::-webkit-media-controls-panel,.qi-hero video::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none;opacity:0!important}

/* Red de seguridad de cabecera y pie. Estas reglas van por clase, no por
   identificador de Elementor, asi que siguen valiendo aunque el navegador tenga
   guardada una version antigua de la pagina: el logo nunca sale gigante ni el
   pie pierde su color. */
.qi-header .qi-logo img,.qi-header img{max-height:44px;width:auto;height:auto}
.qi-header{background-color:rgba(255,252,247,.86)}
.qi-footer{background-color:#0F2C25;color:rgba(255,252,247,.72)}
.qi-footer img{max-width:60px;height:auto}
.qi-footer .qi-ft ul{list-style:none;padding:0}
@media(max-width:767px){.qi-header .qi-logo img,.qi-header img{max-height:38px}}

/* Menu movil: el desplegable se ancla a la cabecera y ocupa todo el ancho.
   Elementor calculaba un desplazamiento negativo y el panel quedaba fuera de la
   pantalla: solo asomaba un recuadro en blanco. Importante: no se toca transform
   ni max-height, porque Elementor pliega el menu con scaleY(0) y max-height. */
@media(max-width:1240px){
  .qi-header .qi-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{
    position:fixed!important;left:0!important;right:0!important;
    width:100vw!important;max-width:100vw!important;min-width:0!important;
    margin:0!important;border-radius:0 0 var(--r-md) var(--r-md)!important}
  .qi-header .qi-nav .elementor-menu-toggle.elementor-active+.elementor-nav-menu__container{
    max-height:min(var(--menu-height),calc(100dvh - 90px))!important;
    overflow-y:auto!important;-webkit-overflow-scrolling:touch}
  .qi-header .qi-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container a.elementor-item{
    padding:14px 22px!important;font-size:16px!important;color:var(--ink)!important}
  .qi-header .qi-nav .elementor-nav-menu--dropdown .sub-menu a.elementor-item{padding-left:38px!important;font-size:15px!important}
}
}

/* Rebote elastico de iOS: al pasar del final de la pagina, Safari muestra el fondo
   del lienzo. Se pinta en dos mitades para que arriba siga crema (cabecera) y
   abajo verde (pie), y no aparezca un tramo crema despues del pie. */
html{background:linear-gradient(to bottom,#FFFCF7 0%,#FFFCF7 50%,#0F2C25 50%,#0F2C25 100%)}
body{background-color:#FFFCF7}/* End custom CSS */