/* Cuarenta efectos adicionales. Cada selector depende de su propio interruptor. */

/* ECG y pulso (10). */
body.drfx-ecg-hero-glow .dr-wave{display:block;opacity:.86;filter:drop-shadow(0 0 5px #c6006080)}
body.drfx-ecg-hero-shift .dr-wave{display:block;animation:drfx-extra-shift 7s ease-in-out infinite}
body.drfx-ecg-intro-line .dr-intro{overflow:hidden}
body.drfx-ecg-intro-line .dr-intro:after{content:"";position:absolute;left:0;right:0;bottom:0;height:18px;background:url('../images/ecg-line.svg') repeat-x 0 center/360px 45px;opacity:.22;pointer-events:none;animation:drfx-extra-ecg-flow 18s linear infinite}
body.drfx-ecg-resource-marker .dr-resource-icon{display:inline-block;transform-origin:center;animation:drfx-extra-beat 2.8s ease-in-out infinite}
body.drfx-ecg-card-edge .dr-card{background-image:url('../images/ecg-line.svg');background-repeat:repeat-x;background-position:top center;background-size:360px 24px}
body.drfx-ecg-footer-line .dr-footer{position:relative}
body.drfx-ecg-footer-line .dr-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:30px;background:url('../images/ecg-line.svg') repeat-x 0 center/360px 45px;opacity:.42;pointer-events:none;animation:drfx-extra-ecg-flow 20s linear infinite}
body.drfx-ecg-section-rule .dr-section .dr-section-title:after{animation:drfx-extra-rule 3.4s ease-in-out infinite}
body.drfx-ecg-book-cover .dr-book-art{outline:2px solid #c6006022;outline-offset:2px;animation:drfx-extra-outline 3.2s ease-in-out infinite}
body.drfx-ecg-page-hero .dr-page-hero{background-image:url('../images/ecg-line.svg'),linear-gradient(100deg,#eaf4ff,#fff 62%,#fcecf5);background-repeat:repeat-x,no-repeat;background-size:720px 90px,cover;background-position:0 center,center;animation:drfx-extra-page-ecg 22s linear infinite}
body.drfx-ecg-detail .dr-detail-art:after{content:"";position:absolute;left:0;right:0;bottom:0;height:48px;background:url('../images/ecg-line.svg') repeat-x 0 center/360px 45px;opacity:.3;pointer-events:none}

/* Portada y presentación (10). */
body.drfx-hero-breathe .dr-hero-photo{transform-origin:right center;animation:drfx-extra-photo 12s ease-in-out infinite}
body.drfx-hero-bluewash .dr-hero{background:linear-gradient(100deg,#fff 0%,#fff 39%,#e7f1fc 64%,#fcebf4 100%);background-size:180% 100%;animation:drfx-extra-background 16s ease-in-out infinite}
body.drfx-hero-grid .dr-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(#c6006022 1px,transparent 1px),linear-gradient(90deg,#c6006022 1px,transparent 1px);background-size:28px 28px;opacity:.16;pointer-events:none}
body.drfx-ribbon-drift .dr-ribbon{background-size:200% 100%;animation:drfx-extra-background 15s ease-in-out infinite}
body.drfx-eyebrow-fade .dr-eyebrow{animation:drfx-extra-fade 5s ease-in-out infinite}
body.drfx-hero-title-shimmer .dr-hero-title{background:linear-gradient(105deg,#092354 25%,#32629d 48%,#092354 68%);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;animation:drfx-extra-background 10s ease-in-out infinite}
body.drfx-hero-arrow .dr-hero .dr-arrow{display:inline-block;transition:transform .25s ease}
body.drfx-hero-arrow .dr-hero .dr-button:hover .dr-arrow,body.drfx-hero-arrow .dr-hero .dr-button:focus-visible .dr-arrow{transform:translateX(4px)}
body.drfx-intro-shadow .dr-intro{animation:drfx-extra-shadow 6s ease-in-out infinite}
body.drfx-photo-focus .dr-hero-photo:before{animation:drfx-extra-photo-focus 7s ease-in-out infinite}
body.drfx-hero-separator .dr-hero:before{content:"";position:absolute;z-index:2;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#c6006080,transparent);background-size:200% 100%;animation:drfx-extra-background 8s ease-in-out infinite;pointer-events:none}

/* Tarjetas y libros (10). */
body.drfx-cards-border .dr-card{transition:border-color .25s ease,transform .28s ease,box-shadow .28s ease}
body.drfx-cards-border .dr-card:hover,body.drfx-cards-border .dr-card:focus-within{border-color:#c6006077}
body.drfx-cards-highlight .dr-card:hover,body.drfx-cards-highlight .dr-card:focus-within{outline:2px solid #c600603d;outline-offset:-4px}
body.drfx-card-image-light .dr-card:hover .dr-featured,body.drfx-card-image-light .dr-card:focus-within .dr-featured{filter:brightness(1.07)}
body.drfx-card-image-pan .dr-card-art .dr-featured{transition:object-position .4s ease}
body.drfx-card-image-pan .dr-card:hover .dr-card-art .dr-featured,body.drfx-card-image-pan .dr-card:focus-within .dr-card-art .dr-featured{object-position:63% center}
body.drfx-card-title-line .dr-card-title:after{content:"";display:block;width:0;height:2px;margin:5px auto 0;background:#c60060;transition:width .28s ease}
body.drfx-card-title-line .dr-card:hover .dr-card-title:after,body.drfx-card-title-line .dr-card:focus-within .dr-card-title:after{width:38px}
body.drfx-course-card-dot .dr-card:not(.dr-book-card) .dr-card-title:before{content:"";display:inline-block;width:6px;height:6px;margin:0 6px 3px 0;border-radius:50%;background:#c60060;box-shadow:0 0 0 3px #c600601c}
body.drfx-book-cover-glow .dr-book-art{transition:filter .3s ease}
body.drfx-book-cover-glow .dr-book-card:hover .dr-book-art,body.drfx-book-cover-glow .dr-book-card:focus-within .dr-book-art{filter:drop-shadow(0 5px 6px #09235455)}
body.drfx-book-cover-tilt .dr-book-art{transition:transform .3s ease}
body.drfx-book-cover-tilt .dr-book-card:hover .dr-book-art,body.drfx-book-cover-tilt .dr-book-card:focus-within .dr-book-art{transform:rotate(-2deg)}
body.drfx-card-button-arrow .dr-card .dr-arrow{display:inline-block;transition:transform .25s ease}
body.drfx-card-button-arrow .dr-card .dr-button:hover .dr-arrow,body.drfx-card-button-arrow .dr-card .dr-button:focus-visible .dr-arrow{transform:translateX(4px)}
body.drfx-card-image-color .dr-card:hover .dr-featured,body.drfx-card-image-color .dr-card:focus-within .dr-featured{filter:saturate(1.2)}
body.drfx-card-image-light.drfx-card-image-color .dr-card:hover .dr-featured,body.drfx-card-image-light.drfx-card-image-color .dr-card:focus-within .dr-featured{filter:brightness(1.07) saturate(1.2)}

/* Navegación y contacto (10). */
body.drfx-nav-underline-flow .dr-nav a{background-image:linear-gradient(#c60060,#c60060);background-repeat:no-repeat;background-position:center bottom;background-size:0 2px;transition:background-size .28s ease}
body.drfx-nav-underline-flow .dr-nav a:hover,body.drfx-nav-underline-flow .dr-nav a:focus-visible{background-size:72% 2px}
body.drfx-nav-active-pulse .dr-nav a[aria-current=page]{animation:drfx-extra-nav-pulse 4s ease-in-out infinite}
body.drfx-logo-lift .dr-brand{transition:transform .25s ease}
body.drfx-logo-lift .dr-brand:hover,body.drfx-logo-lift .dr-brand:focus-visible{transform:translateY(-2px)}
body.drfx-link-arrow .dr-more a{display:inline-block;transition:transform .25s ease}
body.drfx-link-arrow .dr-more a:hover,body.drfx-link-arrow .dr-more a:focus-visible{transform:translateY(-2px)}
body.drfx-resource-row-shift .dr-resource-list a{transition:transform .25s ease}
body.drfx-resource-row-shift .dr-resource-list a:hover,body.drfx-resource-row-shift .dr-resource-list a:focus-visible{transform:translateX(4px)}
body.drfx-resource-line .dr-resource-list li{transition:background-color .25s ease}
body.drfx-resource-line .dr-resource-list li:hover,body.drfx-resource-line .dr-resource-list li:focus-within{background:#ffffffa8}
body.drfx-free-glow .dr-free{background:linear-gradient(105deg,#eaf3ff,#fff7fb,#e9f3fe);background-size:190% 100%;animation:drfx-extra-background 14s ease-in-out infinite}
body.drfx-form-focus .dr-footer input:focus-visible,body.drfx-form-focus .dr-footer textarea:focus-visible{outline:2px solid #f48fc0;outline-offset:1px;box-shadow:0 0 0 4px #c600602b}
body.drfx-social-lift .dr-social-links a{transition:transform .25s ease,background-color .25s ease}
body.drfx-social-lift .dr-social-links a:hover,body.drfx-social-lift .dr-social-links a:focus-visible{transform:translateY(-3px)}
body.drfx-footer-ambient .dr-footer{background:linear-gradient(120deg,#092354,#123d78,#092354);background-size:190% 100%;animation:drfx-extra-background 20s ease-in-out infinite}

@keyframes drfx-extra-shift{0%,100%{transform:translateX(0)}50%{transform:translateX(10px)}}
@keyframes drfx-extra-ecg-flow{to{background-position:360px center}}
@keyframes drfx-extra-beat{0%,16%,40%,100%{transform:scale(1)}23%{transform:scale(1.2)}31%{transform:scale(1.06)}}
@keyframes drfx-extra-rule{0%,100%{width:47px}35%{width:68px}55%{width:52px}}
@keyframes drfx-extra-outline{0%,100%{outline-color:#c6006022}35%{outline-color:#c6006070}}
@keyframes drfx-extra-page-ecg{to{background-position:720px center,center}}
@keyframes drfx-extra-photo{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
@keyframes drfx-extra-background{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes drfx-extra-fade{0%,100%{opacity:1}50%{opacity:.72}}
@keyframes drfx-extra-shadow{0%,100%{box-shadow:0 9px 24px #18355a17}50%{box-shadow:0 12px 28px #18355a30}}
@keyframes drfx-extra-photo-focus{0%,100%{opacity:1}50%{opacity:.75}}
@keyframes drfx-extra-nav-pulse{0%,100%{box-shadow:inset 0 -2px 0 #c6006000}50%{box-shadow:inset 0 -2px 0 #c6006080}}

@media(max-width:650px){body.drfx-hero-breathe .dr-hero-photo{transform-origin:center top}}
@media(prefers-reduced-motion:reduce){
 body[class*="drfx-"] *,body[class*="drfx-"] *::before,body[class*="drfx-"] *::after{animation:none!important;transition:none!important}
 body.drfx-ecg-hero-shift .dr-wave,body.drfx-hero-breathe .dr-hero-photo,body.drfx-logo-lift .dr-brand:hover,body.drfx-link-arrow .dr-more a:hover,body.drfx-resource-row-shift .dr-resource-list a:hover,body.drfx-social-lift .dr-social-links a:hover,body.drfx-book-cover-tilt .dr-book-art,body.drfx-hero-arrow .dr-arrow,body.drfx-card-button-arrow .dr-arrow,body.drfx-ecg-resource-marker .dr-resource-icon{transform:none!important}
 body.drfx-card-image-pan .dr-card-art .dr-featured{object-position:center}
}
