.elementor-520 .elementor-element.elementor-element-vp_landing_navbar{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-2df9381{--display:flex;--min-height:0px;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-2df9381:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-2df9381 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4a415e5 );}.elementor-520 .elementor-element.elementor-element-fe0c51b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-73a8f4f8:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-73a8f4f8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://vickypateldance.com/wp-content/uploads/2026/08/bg_header_3_.png");background-position:bottom center;background-repeat:no-repeat;}.elementor-520 .elementor-element.elementor-element-73a8f4f8{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-73a8f4f8 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-element-populated, .elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-element-populated > .elementor-background-overlay, .elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-background-slideshow{border-radius:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-3c037de9{overflow:hidden;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-3c037de9, .elementor-520 .elementor-element.elementor-element-3c037de9 > .elementor-background-overlay{border-radius:0px 0px 0px 0px;}.elementor-bc-flex-widget .elementor-520 .elementor-element.elementor-element-56bacfa5.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-520 .elementor-element.elementor-element-56bacfa5.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-520 .elementor-element.elementor-element-56bacfa5 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-4f8dee5a:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-4f8dee5a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-520 .elementor-element.elementor-element-4f8dee5a{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-4f8dee5a > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-vp_app_showcase_col > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-8e9dd47:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-8e9dd47 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#06010c;}.elementor-520 .elementor-element.elementor-element-8e9dd47 > .elementor-background-overlay{background-color:transparent;background-image:radial-gradient(at center center, #0B0D1266 0%, #4862FF00 100%);opacity:1;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-8e9dd47{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-6fabedbe > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-1c2d6f00:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-1c2d6f00 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-4a415e5 );}.elementor-520 .elementor-element.elementor-element-1c2d6f00 > .elementor-background-overlay{background-color:transparent;background-image:radial-gradient(at center center, var( --e-global-color-accent ) 0%, var( --e-global-color-4a415e5 ) 75%);opacity:1;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-1c2d6f00{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:5em 0em 7em 0em;}.elementor-520 .elementor-element.elementor-element-4547f5eb > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-4faa1410 > .elementor-container{max-width:720px;}.elementor-520 .elementor-element.elementor-element-1eba5bba > .elementor-element-populated{padding:2em 2em 2em 2em;}.elementor-520 .elementor-element.elementor-element-2ccd2f4{text-align:center;}.elementor-520 .elementor-element.elementor-element-e0e22bb{margin:-40px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:center;font-size:36px;color:#FFC42E;}.elementor-520 .elementor-element.elementor-element-53b741ca > .elementor-background-overlay{background-color:var( --e-global-color-accent );opacity:0.5;}.elementor-520 .elementor-element.elementor-element-2dfebc8c:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:0px;}.elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated >  .elementor-background-overlay{opacity:0.5;}.elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated{border-style:solid;border-width:2px 2px 10px 2px;border-color:var( --e-global-color-434f39b );transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated, .elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated > .elementor-background-overlay, .elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-background-slideshow{border-radius:12px 12px 12px 12px;}.elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-22ba15e3 img{width:100%;height:200px;object-fit:cover;object-position:center center;opacity:0.95;transition-duration:1s;border-radius:10px 10px 0px 0px;}.elementor-520 .elementor-element.elementor-element-22ba15e3:hover img{opacity:0.7;}.elementor-520 .elementor-element.elementor-element-fcaa687{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + -12px) 10px;padding:0px 0px 0px 0px;text-align:center;font-size:15px;color:var( --e-global-color-secondary );}.elementor-520 .elementor-element.elementor-element-2738433{margin:5px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:-1px -1px -1px -1px;--e-icon-list-icon-size:6px;--icon-vertical-offset:0px;}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-item > a{font-weight:400;}.elementor-520 .elementor-element.elementor-element-2738433 .elementor-icon-list-text{color:var( --e-global-color-4d462f5 );transition:color 0.3s;}.elementor-520 .elementor-element.elementor-element-8ed61e4 .elementor-button{background-color:#FFC42E;font-weight:800;fill:#000000;color:#000000;border-style:solid;border-color:#000000;}.elementor-520 .elementor-element.elementor-element-8ed61e4{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 21px 21px 21px;}.elementor-520 .elementor-element.elementor-element-7bec5bf:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){--kit-widget-spacing:0px;}.elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated >  .elementor-background-overlay{opacity:0.5;}.elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated{border-style:solid;border-width:2px 2px 10px 2px;border-color:var( --e-global-color-434f39b );transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated, .elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated > .elementor-background-overlay, .elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-background-slideshow{border-radius:12px 12px 12px 12px;}.elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-92362e7 img{width:100%;height:200px;object-fit:cover;object-position:center center;opacity:0.95;transition-duration:1s;border-radius:10px 10px 0px 0px;}.elementor-520 .elementor-element.elementor-element-92362e7:hover img{opacity:0.7;}.elementor-520 .elementor-element.elementor-element-15ef514{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + -12px) 10px;padding:0px 0px 0px 0px;text-align:center;font-size:15px;color:var( --e-global-color-secondary );}.elementor-520 .elementor-element.elementor-element-c663fdf{margin:5px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:-1px -1px -1px -1px;--e-icon-list-icon-size:6px;--icon-vertical-offset:0px;}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(5px/2);}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(5px/2);}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(5px/2);}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-5px/2);}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-5px/2);}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-item > .elementor-icon-list-text, .elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-item > a{font-weight:400;}.elementor-520 .elementor-element.elementor-element-c663fdf .elementor-icon-list-text{color:var( --e-global-color-4d462f5 );transition:color 0.3s;}.elementor-520 .elementor-element.elementor-element-588bbc9 .elementor-button{background-color:#FFC42E;font-weight:800;fill:#000000;color:#000000;border-style:solid;border-color:#000000;}.elementor-520 .elementor-element.elementor-element-588bbc9{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 21px 21px 21px;}.elementor-520 .elementor-element.elementor-element-ef2ddc8{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:84px;--padding-bottom:84px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-ef2ddc8:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-ef2ddc8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(135deg, var( --e-global-color-1694c12 ) 0%, var( --e-global-color-aa31c09 ) 100%);}.elementor-520 .elementor-element.elementor-element-2434629{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:84px;--padding-bottom:84px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-2434629:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-2434629 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-520 .elementor-element.elementor-element-ffb40c5{--display:grid;--e-con-grid-template-columns:477.688px 646.312px;--e-con-grid-template-rows:597.109px;--gap:56px 56px;--row-gap:56px;--column-gap:56px;--grid-auto-flow:row;--align-items:center;--grid-justify-content:flex-start;--margin-top:0px;--margin-bottom:0px;--margin-left:auto;--margin-right:auto;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-8d0c252{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-520 .elementor-element.elementor-element-8d0c252 img{width:100%;height:597.109px;object-fit:cover;object-position:center center;border-radius:28px 28px 28px 28px;}.elementor-520 .elementor-element.elementor-element-4693851{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-911961e{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 24px) 0px;text-align:start;}.elementor-520 .elementor-element.elementor-element-911961e .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:34px;font-weight:900;line-height:1.25em;letter-spacing:0.36px;color:#1d002c;}.elementor-520 .elementor-element.elementor-element-a02249e{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;padding:0px 0px 0px 0px;text-align:start;font-family:"Inter", Sans-serif;font-size:16.5px;font-weight:400;text-transform:none;line-height:28.875px;color:var( --e-global-color-cfa1f76 );}.elementor-520 .elementor-element.elementor-element-1ea59d7{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;padding:0px 0px 0px 0px;text-align:start;font-family:"Inter", Sans-serif;font-size:16.5px;font-weight:400;text-transform:none;line-height:28.875px;color:var( --e-global-color-cfa1f76 );}.elementor-520 .elementor-element.elementor-element-5a3434d{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 22px) 0px;padding:0px 0px 0px 0px;text-align:start;font-family:"Inter", Sans-serif;font-size:16.5px;font-weight:400;text-transform:none;line-height:28.875px;color:var( --e-global-color-cfa1f76 );}.elementor-520 .elementor-element.elementor-element-8de9379{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:start;font-family:"Inter", Sans-serif;font-size:16.5px;font-weight:400;text-transform:none;line-height:28.875px;color:var( --e-global-color-cfa1f76 );}.elementor-520 .elementor-element.elementor-element-dbd50c3{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:84px;--padding-bottom:84px;--padding-left:84px;--padding-right:84px;}.elementor-520 .elementor-element.elementor-element-dbd50c3:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-dbd50c3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-520 .elementor-element.elementor-element-1f7db7c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:auto;--margin-right:auto;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-6aac197{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 44px) 0px;text-align:center;}.elementor-520 .elementor-element.elementor-element-6aac197 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:36px;font-weight:800;line-height:41px;letter-spacing:0.36px;color:#1d002c;}.elementor-520 .elementor-element.elementor-element-379c0a5{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:433px;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--grid-auto-flow:row;--justify-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:auto;--margin-right:auto;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-751d834{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;--border-radius:22px 22px 22px 22px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-dbaf4d9{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;}.elementor-520 .elementor-element.elementor-element-dbaf4d9.elementor-element{--align-self:stretch;}.elementor-520 .elementor-element.elementor-element-dbaf4d9 img{width:260px;height:325px;object-fit:cover;object-position:center center;border-radius:16px 16px 16px 16px;}.elementor-520 .elementor-element.elementor-element-90adf02{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 4px) 0px;padding:0px 0px 0px 0px;text-align:center;}.elementor-520 .elementor-element.elementor-element-90adf02 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:17px;font-weight:800;text-transform:none;line-height:19px;letter-spacing:0.34px;color:rgba(0,0,0,1);}.elementor-520 .elementor-element.elementor-element-82e0642{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 14px) 0px;padding:0px 0px 0px 0px;text-align:center;font-family:"Inter", Sans-serif;font-size:13.5px;font-weight:400;text-transform:none;line-height:24px;color:#6b5c76;}.elementor-520 .elementor-element.elementor-element-e65e98f{--display:flex;--min-height:32px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-5134933{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;border-radius:50% 50% 50% 50%;}.elementor-520 .elementor-element.elementor-element-5134933 .elementor-icon-wrapper{text-align:start;}.elementor-520 .elementor-element.elementor-element-5134933.elementor-view-stacked .elementor-icon{background-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-5134933.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-5134933.elementor-view-default .elementor-icon{color:rgb(91, 22, 168);border-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-5134933.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-5134933.elementor-view-default .elementor-icon svg{fill:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-5134933 .elementor-icon{font-size:16px;}.elementor-520 .elementor-element.elementor-element-5134933 .elementor-icon svg{height:16px;}.elementor-520 .elementor-element.elementor-element-e9f3e86{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;border-radius:50% 50% 50% 50%;}.elementor-520 .elementor-element.elementor-element-e9f3e86 .elementor-icon-wrapper{text-align:start;}.elementor-520 .elementor-element.elementor-element-e9f3e86.elementor-view-stacked .elementor-icon{background-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-e9f3e86.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-e9f3e86.elementor-view-default .elementor-icon{color:rgb(91, 22, 168);border-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-e9f3e86.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-e9f3e86.elementor-view-default .elementor-icon svg{fill:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-e9f3e86 .elementor-icon{font-size:16px;}.elementor-520 .elementor-element.elementor-element-e9f3e86 .elementor-icon svg{height:16px;}.elementor-520 .elementor-element.elementor-element-f98c728{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;border-radius:50% 50% 50% 50%;}.elementor-520 .elementor-element.elementor-element-f98c728 .elementor-icon-wrapper{text-align:start;}.elementor-520 .elementor-element.elementor-element-f98c728.elementor-view-stacked .elementor-icon{background-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-f98c728.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-f98c728.elementor-view-default .elementor-icon{color:rgb(91, 22, 168);border-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-f98c728.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-f98c728.elementor-view-default .elementor-icon svg{fill:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-f98c728 .elementor-icon{font-size:16px;}.elementor-520 .elementor-element.elementor-element-f98c728 .elementor-icon svg{height:16px;}.elementor-520 .elementor-element.elementor-element-ded44e3{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:none;--border-style:none;--border-radius:22px 22px 22px 22px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-2b0b471{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 16px) 0px;}.elementor-520 .elementor-element.elementor-element-2b0b471.elementor-element{--align-self:stretch;}.elementor-520 .elementor-element.elementor-element-2b0b471 img{width:260px;height:325px;object-fit:cover;object-position:center center;border-radius:16px 16px 16px 16px;}.elementor-520 .elementor-element.elementor-element-5fcb686{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 4px) 0px;padding:0px 0px 0px 0px;text-align:center;}.elementor-520 .elementor-element.elementor-element-5fcb686 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:17px;font-weight:800;text-transform:none;line-height:19px;letter-spacing:0.34px;color:rgba(0,0,0,1);}.elementor-520 .elementor-element.elementor-element-ac2c13e{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 14px) 0px;padding:0px 0px 0px 0px;text-align:center;font-family:"Inter", Sans-serif;font-size:13.5px;font-weight:400;text-transform:none;line-height:24px;color:#6b5c76;}.elementor-520 .elementor-element.elementor-element-9505dbb{--display:flex;--min-height:32px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-d66fe3d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;border-radius:50% 50% 50% 50%;}.elementor-520 .elementor-element.elementor-element-d66fe3d .elementor-icon-wrapper{text-align:start;}.elementor-520 .elementor-element.elementor-element-d66fe3d.elementor-view-stacked .elementor-icon{background-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-d66fe3d.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-d66fe3d.elementor-view-default .elementor-icon{color:rgb(91, 22, 168);border-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-d66fe3d.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-d66fe3d.elementor-view-default .elementor-icon svg{fill:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-d66fe3d .elementor-icon{font-size:16px;}.elementor-520 .elementor-element.elementor-element-d66fe3d .elementor-icon svg{height:16px;}.elementor-520 .elementor-element.elementor-element-165c0ed{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;border-radius:50% 50% 50% 50%;}.elementor-520 .elementor-element.elementor-element-165c0ed .elementor-icon-wrapper{text-align:start;}.elementor-520 .elementor-element.elementor-element-165c0ed.elementor-view-stacked .elementor-icon{background-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-165c0ed.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-165c0ed.elementor-view-default .elementor-icon{color:rgb(91, 22, 168);border-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-165c0ed.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-165c0ed.elementor-view-default .elementor-icon svg{fill:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-165c0ed .elementor-icon{font-size:16px;}.elementor-520 .elementor-element.elementor-element-165c0ed .elementor-icon svg{height:16px;}.elementor-520 .elementor-element.elementor-element-30483c4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;border-radius:50% 50% 50% 50%;}.elementor-520 .elementor-element.elementor-element-30483c4 .elementor-icon-wrapper{text-align:start;}.elementor-520 .elementor-element.elementor-element-30483c4.elementor-view-stacked .elementor-icon{background-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-30483c4.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-30483c4.elementor-view-default .elementor-icon{color:rgb(91, 22, 168);border-color:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-30483c4.elementor-view-framed .elementor-icon, .elementor-520 .elementor-element.elementor-element-30483c4.elementor-view-default .elementor-icon svg{fill:rgb(91, 22, 168);}.elementor-520 .elementor-element.elementor-element-30483c4 .elementor-icon{font-size:16px;}.elementor-520 .elementor-element.elementor-element-30483c4 .elementor-icon svg{height:16px;}.elementor-520 .elementor-element.elementor-element-105f891e:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-105f891e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://vickypateldance.com/wp-content/uploads/2026/08/Day-3-Dance-Like-Hritik.00_03_38_04.Still019.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-520 .elementor-element.elementor-element-105f891e > .elementor-background-overlay{background-color:transparent;background-image:linear-gradient(135deg, var( --e-global-color-cfa1f76 ) 0%, #1C1E2A1A 100%);opacity:1;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-105f891e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:7em 0em 7em 0em;}.elementor-520 .elementor-element.elementor-element-1f6429dc:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-520 .elementor-element.elementor-element-1f6429dc > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1C1E2ACC;background-image:url("https://vickypateldance.com/wp-content/uploads/2026/08/bg_header_4_.png");background-position:bottom right;background-repeat:no-repeat;}.elementor-520 .elementor-element.elementor-element-1f6429dc.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-520 .elementor-element.elementor-element-1f6429dc > .elementor-element-populated, .elementor-520 .elementor-element.elementor-element-1f6429dc > .elementor-element-populated > .elementor-background-overlay, .elementor-520 .elementor-element.elementor-element-1f6429dc > .elementor-background-slideshow{border-radius:10px 10px 10px 10px;}.elementor-520 .elementor-element.elementor-element-1f6429dc > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0% 45% 0% 0%;--e-column-margin-right:45%;--e-column-margin-left:0%;padding:4em 3em 3em 3em;}.elementor-520 .elementor-element.elementor-element-1f6429dc > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-520 .elementor-element.elementor-element-243f6dbe{width:var( --container-widget-width, 100px );max-width:100px;--container-widget-width:100px;--container-widget-flex-grow:0;top:-42px;}.elementor-520 .elementor-element.elementor-element-2d8b9354 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-520 .elementor-element.elementor-element-2e845f05{--divider-border-style:solid;--divider-color:var( --e-global-color-accent );--divider-border-width:1px;}.elementor-520 .elementor-element.elementor-element-2e845f05 .elementor-divider-separator{width:100%;}.elementor-520 .elementor-element.elementor-element-2e845f05 .elementor-divider{padding-block-start:7px;padding-block-end:7px;}.elementor-520 .elementor-element.elementor-element-1c7233e5 .swiper-pagination-bullet-active, .elementor-520 .elementor-element.elementor-element-1c7233e5 .swiper-pagination-progressbar-fill{background-color:var( --e-global-color-4a415e5 );}.elementor-520 .elementor-element.elementor-element-1c7233e5 .swiper-pagination-fraction{color:var( --e-global-color-4a415e5 );}.elementor-520 .elementor-element.elementor-element-1c7233e5.elementor-arrows-yes .elementor-main-swiper{width:calc( 100% - 40px );}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-main-swiper{width:100%;}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-main-swiper .swiper-slide{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-swiper-button{font-size:20px;}.elementor-520 .elementor-element.elementor-element-1c7233e5 .swiper-pagination-bullet:not(.swiper-pagination-bullet-active){background-color:var( --e-global-color-aa31c09 );opacity:var( --e-global-color-aa31c09 );}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-testimonial__text{color:var( --e-global-color-secondary );}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-testimonial__name{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-7044a64-font-family ), Sans-serif;font-size:var( --e-global-typography-7044a64-font-size );font-weight:var( --e-global-typography-7044a64-font-weight );line-height:var( --e-global-typography-7044a64-line-height );}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-testimonial__title{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-69c152f-font-family ), Sans-serif;font-size:var( --e-global-typography-69c152f-font-size );font-weight:var( --e-global-typography-69c152f-font-weight );line-height:var( --e-global-typography-69c152f-line-height );}body.elementor-page-520:not(.elementor-motion-effects-element-type-background), body.elementor-page-520 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0c0114;}@media(max-width:1024px){.elementor-520 .elementor-element.elementor-element-73a8f4f8{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-3c037de9{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-56bacfa5 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-4f8dee5a{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-8e9dd47{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-1c2d6f00{padding:3em 1em 3em 1em;}.elementor-520 .elementor-element.elementor-element-ef2ddc8{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-520 .elementor-element.elementor-element-2434629{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-520 .elementor-element.elementor-element-ffb40c5{--e-con-grid-template-columns:1;--e-con-grid-template-rows:1;--grid-auto-flow:row;}.elementor-520 .elementor-element.elementor-element-8d0c252 img{width:100%;}.elementor-520 .elementor-element.elementor-element-911961e .elementor-heading-title{font-size:28px;}.elementor-520 .elementor-element.elementor-element-dbd50c3{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-520 .elementor-element.elementor-element-379c0a5{--grid-auto-flow:row;}.elementor-520 .elementor-element.elementor-element-e65e98f{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-520 .elementor-element.elementor-element-9505dbb{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-520 .elementor-element.elementor-element-105f891e{padding:4em 1.5em 3em 1.5em;}.elementor-520 .elementor-element.elementor-element-243f6dbe{--container-widget-width:70px;--container-widget-flex-grow:0;width:var( --container-widget-width, 70px );max-width:70px;top:-35px;}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-testimonial__name{font-size:var( --e-global-typography-7044a64-font-size );line-height:var( --e-global-typography-7044a64-line-height );}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-testimonial__title{font-size:var( --e-global-typography-69c152f-font-size );line-height:var( --e-global-typography-69c152f-line-height );}}@media(max-width:767px){.elementor-520 .elementor-element.elementor-element-2df9381{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-73a8f4f8{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-element-populated, .elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-element-populated > .elementor-background-overlay, .elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-background-slideshow{border-radius:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-12e441fe > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-3c037de9{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-56bacfa5.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-520 .elementor-element.elementor-element-56bacfa5 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-4f8dee5a{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-8e9dd47{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-1c2d6f00{padding:2em 0em 2em 0em;}.elementor-520 .elementor-element.elementor-element-4faa1410{margin-top:-28px;margin-bottom:-28px;}.elementor-520 .elementor-element.elementor-element-e0e22bb{margin:-33px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-520 .elementor-element.elementor-element-2dfebc8c{width:100%;}.elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated{border-width:2px 2px 11px 2px;margin:15px 15px 15px 15px;--e-column-margin-right:15px;--e-column-margin-left:15px;}.elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated, .elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-element-populated > .elementor-background-overlay, .elementor-520 .elementor-element.elementor-element-2dfebc8c > .elementor-background-slideshow{border-radius:12px 12px 12px 12px;}.elementor-520 .elementor-element.elementor-element-22ba15e3{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-22ba15e3 img{height:150px;border-radius:6px 6px 6px 6px;}.elementor-520 .elementor-element.elementor-element-fcaa687{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-size:17px;}.elementor-520 .elementor-element.elementor-element-2738433{margin:-6px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-8ed61e4{margin:12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 10px 10px 10px;}.elementor-520 .elementor-element.elementor-element-8ed61e4 .elementor-button{font-size:16px;}.elementor-520 .elementor-element.elementor-element-7bec5bf{width:100%;}.elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated{border-width:2px 2px 11px 2px;margin:15px 15px 15px 15px;--e-column-margin-right:15px;--e-column-margin-left:15px;}.elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated, .elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-element-populated > .elementor-background-overlay, .elementor-520 .elementor-element.elementor-element-7bec5bf > .elementor-background-slideshow{border-radius:12px 12px 12px 12px;}.elementor-520 .elementor-element.elementor-element-92362e7{padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-92362e7 img{height:150px;border-radius:6px 6px 6px 6px;}.elementor-520 .elementor-element.elementor-element-15ef514{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-size:17px;}.elementor-520 .elementor-element.elementor-element-c663fdf{margin:-6px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-588bbc9{margin:12px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 10px 10px 10px;}.elementor-520 .elementor-element.elementor-element-588bbc9 .elementor-button{font-size:16px;}.elementor-520 .elementor-element.elementor-element-ef2ddc8{--width:100%;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:16px;--padding-right:16px;}.elementor-520 .elementor-element.elementor-element-2434629{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;--padding-top:40px;--padding-bottom:40px;--padding-left:16px;--padding-right:16px;}.elementor-520 .elementor-element.elementor-element-ffb40c5{--width:100%;--e-con-grid-template-columns:1;--e-con-grid-template-rows:1;--grid-auto-flow:row;--justify-items:center;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-8d0c252{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-520 .elementor-element.elementor-element-8d0c252 img{width:100%;max-width:100%;object-position:center center;}.elementor-520 .elementor-element.elementor-element-4693851{--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-911961e{padding:0px 0px 0px 0px;text-align:center;}.elementor-520 .elementor-element.elementor-element-911961e .elementor-heading-title{font-size:26px;}.elementor-520 .elementor-element.elementor-element-a02249e{margin:-5% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 0px 0px;text-align:start;}.elementor-520 .elementor-element.elementor-element-1ea59d7{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:start;}.elementor-520 .elementor-element.elementor-element-5a3434d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:start;}.elementor-520 .elementor-element.elementor-element-8de9379{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:start;}.elementor-520 .elementor-element.elementor-element-dbd50c3{--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:9px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:16px;--padding-right:16px;}.elementor-520 .elementor-element.elementor-element-1f7db7c{--width:100%;--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-520 .elementor-element.elementor-element-1f7db7c.e-con{--align-self:flex-start;}.elementor-520 .elementor-element.elementor-element-6aac197{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;}.elementor-520 .elementor-element.elementor-element-379c0a5{--width:100%;--e-con-grid-template-columns:1;--e-con-grid-template-rows:1;--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-520 .elementor-element.elementor-element-751d834{--width:100%;--flex-wrap:nowrap;--border-radius:22px 22px 22px 22px;--margin-top:0px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;}.elementor-520 .elementor-element.elementor-element-dbaf4d9.elementor-element{--align-self:center;}.elementor-520 .elementor-element.elementor-element-dbaf4d9{text-align:center;}.elementor-520 .elementor-element.elementor-element-dbaf4d9 img{width:280px;height:280px;}.elementor-520 .elementor-element.elementor-element-e65e98f{--width:100%;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:16px;--margin-left:0px;--margin-right:0px;}.elementor-520 .elementor-element.elementor-element-ded44e3{--width:100%;--flex-wrap:nowrap;--border-radius:22px 22px 22px 22px;--margin-top:0px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;}.elementor-520 .elementor-element.elementor-element-2b0b471 img{width:280px;height:280px;}.elementor-520 .elementor-element.elementor-element-9505dbb{--width:100%;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:16px;--margin-left:0px;--margin-right:0px;}.elementor-520 .elementor-element.elementor-element-105f891e:not(.elementor-motion-effects-element-type-background), .elementor-520 .elementor-element.elementor-element-105f891e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://vickypateldance.com/wp-content/uploads/2026/08/IMG_8440.jpg");}.elementor-520 .elementor-element.elementor-element-105f891e{padding:3.5em 1em 2.5em 1em;}.elementor-520 .elementor-element.elementor-element-1f6429dc > .elementor-element-populated{margin:0% 0% 0% 0%;--e-column-margin-right:0%;--e-column-margin-left:0%;padding:56px 21px 21px 21px;}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-testimonial__name{font-size:var( --e-global-typography-7044a64-font-size );line-height:var( --e-global-typography-7044a64-line-height );}.elementor-520 .elementor-element.elementor-element-1c7233e5 .elementor-testimonial__title{font-size:var( --e-global-typography-69c152f-font-size );line-height:var( --e-global-typography-69c152f-line-height );}}@media(min-width:768px){.elementor-520 .elementor-element.elementor-element-vp_app_showcase_col{width:100%;}.elementor-520 .elementor-element.elementor-element-ffb40c5{--width:100%;}.elementor-520 .elementor-element.elementor-element-1f7db7c{--width:100%;}.elementor-520 .elementor-element.elementor-element-379c0a5{--width:100%;}.elementor-520 .elementor-element.elementor-element-751d834{--width:350px;}.elementor-520 .elementor-element.elementor-element-e65e98f{--width:260px;}.elementor-520 .elementor-element.elementor-element-ded44e3{--width:350px;}.elementor-520 .elementor-element.elementor-element-9505dbb{--width:260px;}.elementor-520 .elementor-element.elementor-element-1f6429dc{width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-520 .elementor-element.elementor-element-2dfebc8c{width:50%;}.elementor-520 .elementor-element.elementor-element-7bec5bf{width:50%;}.elementor-520 .elementor-element.elementor-element-ffb40c5{--width:100%;}.elementor-520 .elementor-element.elementor-element-1f7db7c{--width:100%;}.elementor-520 .elementor-element.elementor-element-379c0a5{--width:100%;}.elementor-520 .elementor-element.elementor-element-751d834{--width:330px;}.elementor-520 .elementor-element.elementor-element-ded44e3{--width:330px;}}/* Start custom CSS for icon, class: .elementor-element-5134933 */.elementor-520 .elementor-element.elementor-element-5134933{height: 16px;}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-e9f3e86 */.elementor-520 .elementor-element.elementor-element-e9f3e86{height: 16px;}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-f98c728 */.elementor-520 .elementor-element.elementor-element-f98c728{height: 16px;}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-d66fe3d */.elementor-520 .elementor-element.elementor-element-d66fe3d{height: 16px;}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-165c0ed */.elementor-520 .elementor-element.elementor-element-165c0ed{height: 16px;}/* End custom CSS */
/* Start custom CSS for icon, class: .elementor-element-30483c4 */.elementor-520 .elementor-element.elementor-element-30483c4{height: 16px;}/* End custom CSS */
/* Start custom CSS *//* ==========================================================================
   VP APP DOWNLOAD SHOWCASE - FULL WIDTH DARK SEAMLESS DESIGN
   ========================================================================== */
.elementor-element-4f8dee5a,
section[data-id="4f8dee5a"],
#download-app { background: #ffffff !important; }

.vp-app-showcase-section {
    position: relative !important;
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 70px 20px 80px 20px !important;
    box-sizing: border-box !important;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif !important;
    color: #ffffff !important;
    overflow: hidden !important;
}

/* Ambient Neon Glow Orbs */
.vp-app-ambient-glow {
    position: absolute !important;
    border-radius: 50% !important;
    filter: blur(90px) !important;
    opacity: 0.35 !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

.vp-glow-cyan {
    top: 10% !important;
    left: 5% !important;
    width: 380px !important;
    height: 380px !important;
    background: radial-gradient(circle, #00f0ff 0%, rgba(0, 240, 255, 0) 70%) !important;
}

.vp-glow-magenta {
    bottom: 10% !important;
    right: 5% !important;
    width: 400px !important;
    height: 400px !important;
    background: radial-gradient(circle, #ff007f 0%, rgba(255, 0, 127, 0) 70%) !important;
}

.vp-app-container {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
}

/* Master Glassmorphic Frame */
.vp-app-master-frame {
    position: relative !important;
    background: linear-gradient(135deg, rgba(26, 4, 42, 0.95) 0%, rgba(14, 1, 24, 0.98) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.35) !important;
    border-radius: 32px !important;
    padding: 48px 44px !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.8), 0 0 50px rgba(217, 70, 239, 0.2) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Flowing Neon Border Beam */
.vp-beam-border {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent 0%, #00f0ff 30%, #d946ef 70%, transparent 100%) !important;
    animation: vpBeamFlow 4s infinite linear !important;
}

@keyframes vpBeamFlow {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

/* 2-Column Grid Layout */
.vp-app-grid {
    display: grid !important;
    grid-template-columns: 1.2fr 0.8fr !important;
    gap: 48px !important;
    align-items: center !important;
}

/* Left Content Column */
.vp-app-content-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.vp-app-pill-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 16px !important;
    border-radius: 30px !important;
    background: rgba(255, 196, 46, 0.12) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    margin-bottom: 20px !important;
}

.vp-app-headline {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: clamp(30px, 3.4vw, 46px) !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.5px !important;
    color: #ffffff !important;
    margin: 0 0 28px 0 !important;
    text-align: left !important;
}

.vp-gradient-text {
    background: linear-gradient(90deg, #00f0ff 0%, #d946ef 50%, #ffc42e 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

/* Store CTA Buttons */
.vp-app-cta-row {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
    width: 100%;
}

.vp-store-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 24px !important;
    border-radius: 16px !important;
    text-decoration: none !important;
    background: rgba(10, 1, 18, 0.9) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    font-family: inherit !important;
}

.vp-btn-playstore:hover {
    border-color: #00f0ff !important;
    box-shadow: 0 0 24px rgba(0, 240, 255, 0.45), 0 8px 25px rgba(0, 0, 0, 0.6) !important;
    transform: translateY(-2px) !important;
}

.vp-btn-appstore:hover {
    border-color: #ff007f !important;
    box-shadow: 0 0 24px rgba(255, 0, 127, 0.45), 0 8px 25px rgba(0, 0, 0, 0.6) !important;
    transform: translateY(-2px) !important;
}

.vp-btn-playstore .vp-store-icon {
    color: #00f0ff !important;
}

.vp-btn-appstore .vp-store-icon {
    color: #ffffff !important;
}

.vp-store-text {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-store-sub {
    font-size: 10px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.65) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.vp-store-main {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: 0.3px !important;
}

/* ==========================================================================
   Right Column: Clean Real Smartphone Mockup with Tight Laser Orbit
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px !important;
    background: transparent !important;
}

/* Floating Micro-Badges */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px !important;
    border-radius: 14px !important;
    background: rgba(20, 2, 32, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.75), 0 0 20px rgba(217, 70, 239, 0.35) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

.vp-float-badge-top {
    top: 20px !important;
    right: -25px !important;
    animation: vpFloatBadge1 3.5s infinite ease-in-out !important;
}

.vp-float-badge-bottom {
    bottom: 25px !important;
    left: -25px !important;
    animation: vpFloatBadge2 4s infinite ease-in-out !important;
}

@keyframes vpFloatBadge1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes vpFloatBadge2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(7px); }
}

.vp-fbadge-icon {
    font-size: 16px !important;
}

.vp-fbadge-pulse-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #00f0ff !important;
    box-shadow: 0 0 10px #00f0ff !important;
    animation: vpPulseDot 1.6s infinite !important;
}

@keyframes vpPulseDot {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.4); opacity: 0.6; }
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.2 !important;
}

.vp-fbadge-info strong {
    font-size: 12px !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Real Phone Mockup Wrapper */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 280px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    background: transparent !important;
}

/* SVG Laser Beam Orbiting Cleanly Around Phone Bezel */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
    background: transparent !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 20 80 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 10px #00f0ff) drop-shadow(0 0 20px #d946ef) drop-shadow(0 0 30px #ff007f) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 8 92 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 5px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% {
        stroke-dashoffset: 0;
    }
    100% {
        stroke-dashoffset: -100;
    }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 520px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 20px 45px rgba(0, 0, 0, 0.9)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
    background: transparent !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.02) !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 240px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 40px 12px !important;
    }

    .vp-app-master-frame {
        padding: 28px 18px !important;
        border-radius: 24px !important;
    }

    .vp-app-cta-row {
        flex-direction: column !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 220px !important;
    }

    .vp-float-badge-top {
        right: -10px !important;
        top: 10px !important;
        padding: 6px 10px !important;
    }

    .vp-float-badge-bottom {
        left: -10px !important;
        bottom: 20px !important;
        padding: 6px 10px !important;
    }
}

/* Hide global theme header exclusively on the Landing page */
body.page-id-520 header.elementor-location-header,
.elementor-520 header.elementor-location-header,
header.elementor-18 {
    display: none !important;
}

/* === Landing Page (Page 520) Global Scoped Rules === */
.elementor-520 {
    overflow-x: clip;
    max-width: 100vw;
}

.elementor-520 img,
.elementor-520 svg {
    max-width: 100%;
}

/* Hide legacy crude underscore text placeholders, empty containers, and old standalone image */
.elementor-520 .elementor-element-523adca,
.elementor-520 .elementor-element-5bcc664,
.elementor-520 .elementor-element-e0e22bb,
.elementor-520 .elementor-element-5a3434d,
.elementor-520 .elementor-element-2df9381,
.elementor-520 .vp-hide-standalone-banner {
    display: none !important;
}

/* ========================================================= */
/* ========================================================= */
/* === Sticky Header Custom Styling === */
/* ========================================================= */

.elementor-520 .elementor-element-vp_landing_navbar {
    position: sticky !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    padding: 0 !important;
    margin: 0 !important;
}

.vp-navbar-wrapper {
    width: 100% !important;
    background: rgba(23, 1, 35, 0.94) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-bottom: 1px solid rgba(159, 51, 208, 0.28) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45) !important;
}

.vp-nav-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 12px 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    box-sizing: border-box !important;
}

/* Brand */
.vp-nav-brand {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
    flex-shrink: 0 !important;
}

.vp-nav-logo {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 2px solid rgba(217, 70, 239, 0.6) !important;
    box-shadow: 0 0 14px rgba(217, 70, 239, 0.4) !important;
}

.vp-brand-text {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
}

.vp-brand-name {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    letter-spacing: 0.5px !important;
    line-height: 1.15 !important;
}

.vp-brand-sub {
    font-family: 'Poppins', sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    background: linear-gradient(90deg, #d946ef, #c084fc) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    letter-spacing: 0.8px !important;
    line-height: 1.2 !important;
}

/* Nav Menu Desktop */
.vp-nav-menu {
    display: flex !important;
    align-items: center !important;
    gap: 28px !important;
}

.vp-nav-link {
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.85) !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
    padding: 6px 0 !important;
}

.vp-nav-link:hover {
    color: #ffc42e !important;
}

/* Actions / Glowing CTA Button */
.vp-nav-actions {
    display: flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}

.vp-header-cta-btn {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 22px !important;
    border-radius: 30px !important;
    text-decoration: none !important;
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.3px !important;
    color: #140121 !important;
    background: linear-gradient(135deg, #ffe066 0%, #ffb300 45%, #ff3b80 100%) !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    box-shadow: 0 0 16px rgba(255, 179, 0, 0.65), 0 0 32px rgba(255, 59, 128, 0.4), 0 4px 14px rgba(0, 0, 0, 0.4) !important;
    animation: vpCtaGlowPulse 2.4s infinite ease-in-out !important;
    overflow: hidden !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
    white-space: nowrap !important;
    z-index: 1 !important;
}

.vp-header-cta-btn:hover {
    transform: translateY(-2px) scale(1.04) !important;
    box-shadow: 0 0 25px rgba(255, 179, 0, 0.9), 0 0 45px rgba(255, 59, 128, 0.7), 0 8px 22px rgba(0, 0, 0, 0.5) !important;
    color: #140121 !important;
}

.vp-cta-glow-pulse {
    position: absolute !important;
    inset: -3px !important;
    border-radius: 34px !important;
    background: linear-gradient(135deg, rgba(255, 224, 102, 0.85), rgba(255, 59, 128, 0.85)) !important;
    z-index: -1 !important;
    filter: blur(8px) !important;
    opacity: 0.75 !important;
    animation: vpAuraGlow 2.4s infinite alternate ease-in-out !important;
    pointer-events: none !important;
}

.vp-cta-shimmer {
    position: absolute !important;
    top: -60% !important;
    left: -120% !important;
    width: 60% !important;
    height: 220% !important;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 50%, rgba(255, 255, 255, 0) 100%) !important;
    transform: rotate(25deg) !important;
    animation: vpShimmerSweep 3s infinite ease-in-out !important;
    pointer-events: none !important;
}

.vp-cta-icon-box {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    animation: vpIconMicroBounce 1.8s infinite ease-in-out !important;
    line-height: 1 !important;
}

.vp-cta-icon {
    width: 15px !important;
    height: 15px !important;
    stroke: #140121 !important;
}

.vp-cta-label {
    display: inline-block !important;
    line-height: 1 !important;
}

/* Keyframes for Glow & Animations */
@keyframes vpCtaGlowPulse {
    0%, 100% {
        box-shadow: 0 0 14px rgba(255, 179, 0, 0.6), 0 0 28px rgba(255, 59, 128, 0.35), 0 4px 12px rgba(0, 0, 0, 0.35);
        transform: translateY(0) scale(1);
    }
    50% {
        box-shadow: 0 0 24px rgba(255, 179, 0, 0.95), 0 0 42px rgba(255, 59, 128, 0.75), 0 6px 18px rgba(0, 0, 0, 0.5);
        transform: translateY(-1px) scale(1.03);
    }
}

@keyframes vpAuraGlow {
    0% {
        opacity: 0.5;
        filter: blur(6px);
    }
    100% {
        opacity: 0.95;
        filter: blur(10px);
    }
}

@keyframes vpShimmerSweep {
    0%, 25% {
        left: -120%;
    }
    55%, 100% {
        left: 200%;
    }
}

@keyframes vpIconMicroBounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(2px);
    }
}

/* Responsive Navbar */
@media (max-width: 900px) {
    .vp-nav-menu {
        display: none !important;
    }
    .vp-mobile-toggle,
    .vp-mobile-menu {
        display: none !important;
    }
    .vp-header-cta-btn {
        display: inline-flex !important;
        padding: 8px 16px !important;
        font-size: 12.5px !important;
    }
}

@media (max-width: 480px) {
    .vp-nav-container {
        padding: 10px 14px !important;
        gap: 8px !important;
    }
    .vp-nav-logo {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
    }
    .vp-brand-name {
        font-size: 13.5px !important;
    }
    .vp-brand-sub {
        font-size: 9.5px !important;
    }
    .vp-header-cta-btn {
        padding: 7px 13px !important;
        font-size: 11.5px !important;
        gap: 5px !important;
        border-radius: 20px !important;
    }
    .vp-cta-icon {
        width: 13px !important;
        height: 13px !important;
    }
}

@media (max-width: 360px) {
    .vp-nav-container {
        padding: 8px 10px !important;
        gap: 6px !important;
    }
    .vp-nav-logo {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
    }
    .vp-brand-name {
        font-size: 12px !important;
    }
    .vp-brand-sub {
        font-size: 8.5px !important;
    }
    .vp-header-cta-btn {
        padding: 6px 11px !important;
        font-size: 11px !important;
    }
}

/* === Section 1: Modern Split 2-Column Hero Layout === */
/* ========================================================= */

.elementor-520 .elementor-element-73a8f4f8 {
    position: relative !important;
    overflow: hidden !important;
    background: radial-gradient(circle at 80% 20%, rgba(159, 51, 208, 0.25) 0%, rgba(32, 1, 54, 1) 70%) !important;
}

.elementor-520 .elementor-element-56bacfa5 {
    padding: 60px 24px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.vp-hero-split-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 48px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Left Hero Column */
.vp-hero-left {
    flex: 1 1 0 !important;
    max-width: 600px !important;
    text-align: left !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.vp-hero-left .vp-hero-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 50px !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    line-height: 1.08 !important;
    letter-spacing: -0.5px !important;
    text-transform: uppercase !important;
    margin: 0 0 18px 0 !important;
    text-align: left !important;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.4) !important;
}

.vp-hero-left .vp-gradient-text {
    background: linear-gradient(135deg, #d946ef 0%, #a855f7 50%, #c084fc 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    display: inline-block !important;
    filter: drop-shadow(0 4px 16px rgba(217, 70, 239, 0.35)) !important;
}

.vp-hero-left .vp-hero-subtitle {
    font-family: 'Inter', sans-serif !important;
    font-size: 17px !important;
    line-height: 1.6 !important;
    color: rgba(255, 255, 255, 0.9) !important;
    margin: 0 0 28px 0 !important;
    text-align: left !important;
}

.vp-hero-left .vp-hero-subtitle strong {
    color: #ffc42e !important;
    font-weight: 700 !important;
}

/* Buttons */
.vp-hero-btn-group {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 16px !important;
    margin-bottom: 30px !important;
    width: 100% !important;
}

.vp-btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 16px 34px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 15.5px !important;
    font-weight: 800 !important;
    color: #1d002c !important;
    background: linear-gradient(135deg, #ffc42e 0%, #f59e0b 100%) !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    box-shadow: 0 8px 24px rgba(255, 196, 46, 0.35) !important;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.3s ease !important;
}

.vp-btn-primary:hover {
    transform: translateY(-3px) scale(1.03) !important;
    box-shadow: 0 14px 34px rgba(255, 196, 46, 0.55) !important;
    color: #1d002c !important;
}

.vp-btn-secondary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px 34px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 15.5px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 2px solid rgba(255, 255, 255, 0.45) !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    backdrop-filter: blur(8px) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2) !important;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.3s ease, border-color 0.3s ease, background-color 0.3s ease !important;
}

.vp-btn-secondary:hover {
    background: rgba(159, 51, 208, 0.35) !important;
    border-color: #d946ef !important;
    color: #ffffff !important;
    transform: translateY(-3px) scale(1.03) !important;
    box-shadow: 0 12px 28px rgba(159, 51, 208, 0.45) !important;
}

/* Trust Bar */
.vp-hero-trust-bar {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
}

.trust-pill {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.85) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    padding: 6px 14px !important;
    border-radius: 20px !important;
}

.trust-pill i {
    color: #ffc42e !important;
}

/* Right Hero Column */
.vp-hero-right {
    flex: 0 0 500px !important;
    max-width: 520px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
}

.vp-hero-image-frame {
    position: relative !important;
    width: 100% !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    border: 1px solid rgba(217, 70, 239, 0.3) !important;
    box-shadow: 0 24px 60px rgba(159, 51, 208, 0.3), 0 8px 24px rgba(0, 0, 0, 0.5) !important;
    background: #180026 !important;
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.vp-hero-image-frame:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 30px 70px rgba(159, 51, 208, 0.4), 0 10px 30px rgba(0, 0, 0, 0.6) !important;
}

.vp-hero-img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: cover !important;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.vp-hero-image-frame:hover .vp-hero-img {
    transform: scale(1.03) !important;
}

.vp-hero-floating-badge {
    position: absolute !important;
    bottom: 18px !important;
    left: 18px !important;
    background: rgba(23, 1, 35, 0.88) !important;
    backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    border-radius: 16px !important;
    padding: 10px 16px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45) !important;
}

.vp-hero-floating-badge .badge-icon {
    color: #ffc42e !important;
    font-size: 26px !important;
    line-height: 1 !important;
}

.vp-hero-floating-badge .badge-text {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
}

.vp-hero-floating-badge .badge-text strong {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14px !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

.vp-hero-floating-badge .badge-text span {
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    color: #d946ef !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

/* Tablet & Mobile Breakpoints for Split Hero */
@media (max-width: 1024px) {
    .vp-hero-split-container {
        flex-direction: column-reverse !important;
        text-align: center !important;
        gap: 36px !important;
    }
    .vp-hero-left {
        align-items: center !important;
        text-align: center !important;
        max-width: 600px !important;
    }
    .vp-hero-left .vp-hero-title,
    .vp-hero-left .vp-hero-subtitle {
        text-align: center !important;
    }
    .vp-hero-btn-group,
    .vp-hero-trust-bar {
        justify-content: center !important;
    }
    .vp-hero-right {
        width: 100% !important;
        max-width: 480px !important;
        flex: 0 0 auto !important;
    }
}

@media (max-width: 767px) {
    .elementor-520 .elementor-element-56bacfa5 {
        padding: 30px 16px !important;
    }
    .vp-hero-left .vp-hero-title {
        font-size: 32px !important;
    }
    .vp-hero-left .vp-hero-subtitle {
        font-size: 15px !important;
    }
    .vp-hero-btn-group {
        flex-direction: column !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 320px !important;
    }
    .vp-btn-primary,
    .vp-btn-secondary {
        width: 100% !important;
        padding: 14px 24px !important;
        font-size: 14.5px !important;
    }
    .vp-hero-right {
        max-width: 340px !important;
    }
}

/* ========================================================= */
/* === Section Heading Accent Lines === */
/* ========================================================= */

/* 1. DOWNLOAD OUR APP */
.elementor-520 .elementor-element-703c96b {
    text-align: center !important;
    margin-bottom: 28px !important;
}
.elementor-520 .elementor-element-703c96b h2,
.elementor-520 .elementor-element-703c96b .elementor-heading-title {
    position: relative !important;
    display: inline-block !important;
    margin: 0 auto !important;
}
.elementor-520 .elementor-element-703c96b h2::after,
.elementor-520 .elementor-element-703c96b .elementor-heading-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: -10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 60px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background: linear-gradient(90deg, #9f33d0, #5b16a8) !important;
}

/* 2. WHY CHOOSE US ? */
.elementor-520 .elementor-element-8562ad9 {
    text-align: center !important;
    margin-bottom: 28px !important;
}
.elementor-520 .elementor-element-8562ad9 h2,
.elementor-520 .elementor-element-8562ad9 .elementor-heading-title {
    position: relative !important;
    display: inline-block !important;
    margin: 0 auto !important;
}
.elementor-520 .elementor-element-8562ad9 h2::after,
.elementor-520 .elementor-element-8562ad9 .elementor-heading-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: -10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 60px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background: linear-gradient(90deg, #d946ef, #a855f7) !important;
}

/* 3. POPULAR COURSES */
.elementor-520 .elementor-element-2ccd2f4 {
    text-align: center !important;
    margin-bottom: 32px !important;
}
.elementor-520 .elementor-element-2ccd2f4 h2,
.elementor-520 .elementor-element-2ccd2f4 .elementor-heading-title {
    position: relative !important;
    display: inline-block !important;
    margin: 0 auto !important;
}
.elementor-520 .elementor-element-2ccd2f4 h2::after,
.elementor-520 .elementor-element-2ccd2f4 .elementor-heading-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: -10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 60px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background: linear-gradient(90deg, #9f33d0, #5b16a8) !important;
}

/* 4. JOIN OUR BATCH */
.elementor-520 .elementor-element-39afc60 {
    text-align: center !important;
    margin-bottom: 40px !important;
}
.elementor-520 .elementor-element-39afc60 .elementor-heading-title {
    position: relative !important;
    display: inline-block !important;
}
.elementor-520 .elementor-element-39afc60 .elementor-heading-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: -10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 60px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background: linear-gradient(90deg, #d946ef, #a855f7) !important;
}

/* 5. ABOUT US */
.elementor-520 .elementor-element-911961e {
    margin-bottom: 28px !important;
}
.elementor-520 .elementor-element-911961e .elementor-heading-title {
    position: relative !important;
    display: inline-block !important;
}
.elementor-520 .elementor-element-911961e .elementor-heading-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: -10px !important;
    left: 0 !important;
    width: 60px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background: linear-gradient(90deg, #9f33d0, #5b16a8) !important;
}

@media (max-width: 1024px) {
    .elementor-520 .elementor-element-911961e {
        text-align: center !important;
    }
    .elementor-520 .elementor-element-911961e .elementor-heading-title::after {
        left: 50% !important;
        transform: translateX(-50%) !important;
    }
}

/* 6. OUR TEAM */
.elementor-520 .elementor-element-6aac197 {
    margin-bottom: 48px !important;
    text-align: center !important;
    width: 100% !important;
}
.elementor-520 .elementor-element-6aac197 .elementor-heading-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 38px !important;
    font-weight: 900 !important;
    color: #1d002c !important;
    letter-spacing: -0.5px !important;
    text-transform: uppercase !important;
    position: relative !important;
    display: inline-block !important;
}
.elementor-520 .elementor-element-6aac197 .elementor-heading-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: -10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 60px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background: linear-gradient(90deg, #9f33d0, #5b16a8) !important;
}

/* ========================================================= */
/* === Section 2: App Download Responsive === */
/* ========================================================= */
@media (max-width: 767px) {
    .elementor-520 .elementor-element-619ecb6 {
        max-width: 100% !important;
        width: 100% !important;
    }
    .elementor-520 .elementor-element-619ecb6 .e-con-inner {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 360px !important;
        margin: 0 auto !important;
    }
    .elementor-520 .elementor-element-0c3b885,
    .elementor-520 .elementor-element-e93cb84 {
        flex: 1 1 0 !important;
        max-width: 160px !important;
    }
    .elementor-520 .elementor-element-0c3b885 img,
    .elementor-520 .elementor-element-e93cb84 img {
        width: 100% !important;
        height: auto !important;
    }
}

/* ========================================================= */
/* === Section 3: Why Choose Us - 2 Upper & 2 Lower on Mobile === */
/* ========================================================= */
@media (max-width: 767px) {
    .elementor-520 .elementor-element-9a11147 {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        grid-template-rows: repeat(2, auto) !important;
        gap: 24px 16px !important;
        width: 100% !important;
        max-width: 400px !important;
        margin: 20px auto 10px auto !important;
        padding: 0 12px !important;
        box-sizing: border-box !important;
        align-items: start !important;
    }
    .elementor-520 .elementor-element-9a11147 .e-con-inner {
        display: contents !important;
    }
    .elementor-520 .elementor-element-67bbebb,
    .elementor-520 .elementor-element-3b54483,
    .elementor-520 .elementor-element-da69875,
    .elementor-520 .elementor-element-595bc65 {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 4px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    .elementor-520 .elementor-element-9a11147 .elementor-icon-box-wrapper {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 8px !important;
    }
    .elementor-520 .elementor-element-9a11147 .elementor-icon-box-icon {
        margin: 0 auto !important;
    }
    .elementor-520 .elementor-element-9a11147 .elementor-icon {
        width: 52px !important;
        height: 52px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
    }
    .elementor-520 .elementor-element-9a11147 .elementor-icon svg,
    .elementor-520 .elementor-element-9a11147 .elementor-icon i {
        font-size: 22px !important;
        width: 22px !important;
        height: 22px !important;
    }
    .elementor-520 .elementor-element-9a11147 .elementor-icon-box-content {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
    }
    .elementor-520 .elementor-element-9a11147 .elementor-icon-box-title,
    .elementor-520 .elementor-element-9a11147 .elementor-icon-box-title span {
        font-size: 22px !important;
        font-weight: 900 !important;
        line-height: 1.25 !important;
        margin: 2px 0 0 0 !important;
        text-align: center !important;
    }
    .elementor-520 .elementor-element-9a11147 .elementor-icon-box-description {
        font-size: 13px !important;
        line-height: 1.35 !important;
        margin: 3px 0 0 0 !important;
        text-align: center !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        color: rgba(255, 255, 255, 0.95) !important;
    }
}

/* ========================================================= */
/* === Section 4: Popular Courses Responsive === */
/* ========================================================= */
@media (max-width: 767px) {
    .elementor-520 .elementor-element-53b741ca .elementor-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        width: 100% !important;
    }
    .elementor-520 .elementor-element-2dfebc8c,
    .elementor-520 .elementor-element-7bec5bf {
        width: 100% !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* ========================================================= */
/* === Section 5: Join Our Batch Responsive === */
/* ========================================================= */
@media (max-width: 1024px) {
    .elementor-520 .elementor-element-b674d66 {
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
        width: 100% !important;
        max-width: 600px !important;
        margin: 0 auto !important;
    }
    .elementor-520 .elementor-element-7fd676d,
    .elementor-520 .elementor-element-f3755f8 {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: auto !important;
    }
    .elementor-520 .elementor-element-9a6c26f,
    .elementor-520 .elementor-element-9b5daec {
        width: 100% !important;
        max-width: 100% !important;
    }
    .elementor-520 .elementor-element-9a6c26f img,
    .elementor-520 .elementor-element-9b5daec img {
        width: 100% !important;
        height: 220px !important;
        object-fit: cover !important;
        border-radius: 16px 16px 0 0 !important;
    }
    .elementor-520 .elementor-element-80dd08f,
    .elementor-520 .elementor-element-e93ee3f {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 24px 20px !important;
        box-sizing: border-box !important;
    }
}

/* ========================================================= */
/* === Section 6: About Us Creative & Professional Highlight Cards === */
/* ========================================================= */

.elementor-520 .elementor-element-2434629 {
    background: #ffffff !important;
    padding: 90px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-520 .elementor-element-ffb40c5 {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 60px !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

/* Left Image Card */
.elementor-520 .elementor-element-8d0c252 {
    flex: 0 0 460px !important;
    max-width: 480px !important;
    background: #ffffff !important;
    border-radius: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 20px 50px rgba(91, 22, 168, 0.12), 0 4px 14px rgba(0, 0, 0, 0.04) !important;
    border: 1px solid rgba(159, 51, 208, 0.14) !important;
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.elementor-520 .elementor-element-8d0c252:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 28px 60px rgba(91, 22, 168, 0.18), 0 6px 18px rgba(159, 51, 208, 0.08) !important;
}

.elementor-520 .elementor-element-8d0c252 img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: cover !important;
    border-radius: 28px !important;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.elementor-520 .elementor-element-8d0c252:hover img {
    transform: scale(1.03) !important;
}

/* Right Content Area */
.elementor-520 .elementor-element-4693851 {
    flex: 1 1 0 !important;
    max-width: 640px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Heading */
.elementor-520 .elementor-element-911961e {
    margin-bottom: 24px !important;
    width: 100% !important;
}
.elementor-520 .elementor-element-911961e .elementor-heading-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 34px !important;
    font-weight: 900 !important;
    color: #1d002c !important;
    letter-spacing: -0.5px !important;
    line-height: 1.25 !important;
    position: relative !important;
    display: inline-block !important;
}

/* Lead Intro */
.elementor-520 .elementor-element-a02249e {
    width: 100% !important;
    margin-bottom: 18px !important;
}
.elementor-520 .about-hero-intro {
    font-family: 'Inter', sans-serif !important;
    font-size: 15.5px !important;
    line-height: 1.7 !important;
    color: #2e1a3d !important;
    margin: 0 !important;
}
.elementor-520 .about-hero-intro strong {
    color: #1d002c !important;
    font-weight: 700 !important;
}

/* 4 Key Points Highlights Grid */
.elementor-520 .elementor-element-1ea59d7 {
    width: 100% !important;
    margin-bottom: 20px !important;
}

.elementor-520 .about-highlights-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-520 .about-key-card {
    background: #ffffff !important;
    border: 1px solid rgba(159, 51, 208, 0.14) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 12px !important;
    box-shadow: 0 4px 16px rgba(91, 22, 168, 0.04) !important;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.3s ease, border-color 0.3s ease, background-color 0.3s ease !important;
    box-sizing: border-box !important;
}

.elementor-520 .about-key-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 26px rgba(91, 22, 168, 0.12) !important;
    border-color: rgba(159, 51, 208, 0.35) !important;
    background: #fbf7ff !important;
}

.elementor-520 .key-card-icon {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #f5e8ff 0%, #ede0ff 100%) !important;
    color: #7e22ce !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    box-shadow: 0 2px 8px rgba(159, 51, 208, 0.12) !important;
    margin-top: 2px !important;
}

.elementor-520 .key-card-body {
    flex: 1 1 0 !important;
    text-align: left !important;
}

.elementor-520 .key-card-body h4 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 800 !important;
    color: #1d002c !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.25 !important;
}

.elementor-520 .key-card-body p {
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    color: #524060 !important;
    margin: 0 !important;
}

.elementor-520 .key-card-body strong {
    color: #1d002c !important;
    font-weight: 600 !important;
}

/* Mission / Goal Callout Card */
.elementor-520 .elementor-element-8de9379 {
    width: 100% !important;
    margin-top: 0 !important;
}

.elementor-520 .about-mission-card {
    background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%) !important;
    border-left: 4px solid #9f33d0 !important;
    border-radius: 0 16px 16px 0 !important;
    padding: 16px 20px !important;
    box-shadow: 0 6px 20px rgba(159, 51, 208, 0.08) !important;
    border-top: 1px solid rgba(159, 51, 208, 0.1) !important;
    border-right: 1px solid rgba(159, 51, 208, 0.1) !important;
    border-bottom: 1px solid rgba(159, 51, 208, 0.1) !important;
}

.elementor-520 .about-mission-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    color: #7e22ce !important;
    background: rgba(159, 51, 208, 0.12) !important;
    padding: 3px 10px !important;
    border-radius: 12px !important;
    margin-bottom: 6px !important;
}

.elementor-520 .about-mission-text {
    font-family: 'Inter', sans-serif !important;
    font-size: 14.5px !important;
    line-height: 1.6 !important;
    color: #1d002c !important;
    margin: 0 !important;
}

/* Tablet & Mobile Breakpoints for About Us */
@media (max-width: 1024px) {
    .elementor-520 .elementor-element-2434629 {
        padding: 60px 20px !important;
    }
    .elementor-520 .elementor-element-ffb40c5 {
        flex-direction: column !important;
        align-items: center !important;
        gap: 36px !important;
    }
    .elementor-520 .elementor-element-8d0c252 {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 440px !important;
    }
    .elementor-520 .elementor-element-4693851 {
        width: 100% !important;
        max-width: 600px !important;
        align-items: center !important;
    }
    .elementor-520 .elementor-element-911961e {
        text-align: center !important;
    }
    .elementor-520 .about-hero-intro {
        text-align: center !important;
    }
    .elementor-520 .about-mission-card {
        text-align: left !important;
    }
}

@media (max-width: 767px) {
    .elementor-520 .elementor-element-2434629 {
        padding: 50px 16px !important;
    }
    .elementor-520 .elementor-element-8d0c252 {
        max-width: 340px !important;
        border-radius: 20px !important;
    }
    .elementor-520 .elementor-element-8d0c252 img {
        border-radius: 20px !important;
    }
    .elementor-520 .elementor-element-911961e .elementor-heading-title {
        font-size: 26px !important;
    }
    .elementor-520 .about-hero-intro {
        font-size: 14.5px !important;
        line-height: 1.65 !important;
    }
    .elementor-520 .about-highlights-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }
    .elementor-520 .about-key-card {
        padding: 12px 14px !important;
    }
    .elementor-520 .about-mission-card {
        padding: 14px 16px !important;
    }
    .elementor-520 .about-mission-text {
        font-size: 13.5px !important;
    }
}

/* ========================================================= */
/* === Section 7: Our Team Styling === */
/* ========================================================= */

.elementor-520 .elementor-element-dbd50c3 {
    background: linear-gradient(180deg, #ffffff 0%, #faf5ff 100%) !important;
    padding: 80px 24px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-520 .elementor-element-1f7db7c {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
}

.elementor-520 .elementor-element-379c0a5 {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 44px !important;
    max-width: 780px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

.elementor-520 .elementor-element-751d834,
.elementor-520 .elementor-element-ded44e3 {
    flex: 0 0 350px !important;
    width: 350px !important;
    max-width: 360px !important;
    height: auto !important;
    min-height: auto !important;
    background: #ffffff !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    border: 1px solid rgba(159, 51, 208, 0.14) !important;
    box-shadow: 0 12px 36px rgba(91, 22, 168, 0.08), 0 2px 6px rgba(0, 0, 0, 0.03) !important;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), border-color 0.4s ease !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.elementor-520 .elementor-element-751d834:hover,
.elementor-520 .elementor-element-ded44e3:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 24px 50px rgba(91, 22, 168, 0.16), 0 6px 16px rgba(159, 51, 208, 0.08) !important;
    border-color: rgba(159, 51, 208, 0.35) !important;
}

.elementor-520 .elementor-element-dbaf4d9,
.elementor-520 .elementor-element-2b0b471 {
    width: 100% !important;
    height: 380px !important;
    min-height: 380px !important;
    overflow: hidden !important;
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 23px 23px 0 0 !important;
    display: block !important;
}

.elementor-520 .elementor-element-dbaf4d9 img,
.elementor-520 .elementor-element-2b0b471 img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    border-radius: 23px 23px 0 0 !important;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
    display: block !important;
    box-shadow: none !important;
}

.elementor-520 .elementor-element-751d834:hover .elementor-element-dbaf4d9 img,
.elementor-520 .elementor-element-ded44e3:hover .elementor-element-2b0b471 img {
    transform: scale(1.05) !important;
}

.elementor-520 .elementor-element-90adf02,
.elementor-520 .elementor-element-5fcb686 {
    margin: 20px 0 6px 0 !important;
    padding: 0 16px !important;
    width: 100% !important;
    text-align: center !important;
}
.elementor-520 .elementor-element-90adf02 .elementor-heading-title,
.elementor-520 .elementor-element-5fcb686 .elementor-heading-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1d002c !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    text-transform: uppercase !important;
}

.elementor-520 .elementor-element-82e0642,
.elementor-520 .elementor-element-ac2c13e {
    margin: 0 0 18px 0 !important;
    padding: 0 16px !important;
    text-align: center !important;
    width: 100% !important;
}
.elementor-520 .elementor-element-82e0642 p,
.elementor-520 .elementor-element-ac2c13e p {
    margin: 0 !important;
    display: inline-block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #7e22ce !important;
    background: #fbf5ff !important;
    padding: 5px 16px !important;
    border-radius: 20px !important;
    border: 1px solid rgba(159, 51, 208, 0.18) !important;
}

.elementor-520 .elementor-element-e65e98f,
.elementor-520 .elementor-element-9505dbb {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
    width: 100% !important;
    min-height: auto !important;
}

.elementor-520 .elementor-element-e65e98f .elementor-widget-icon,
.elementor-520 .elementor-element-9505dbb .elementor-widget-icon {
    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-520 .elementor-element-e65e98f .elementor-icon,
.elementor-520 .elementor-element-9505dbb .elementor-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: #f7f0fc !important;
    border: 1px solid rgba(159, 51, 208, 0.16) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #7e22ce !important;
    font-size: 16px !important;
    transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
    padding: 0 !important;
    box-shadow: 0 2px 6px rgba(159, 51, 208, 0.08) !important;
}

.elementor-520 .elementor-element-e65e98f .elementor-icon:hover,
.elementor-520 .elementor-element-9505dbb .elementor-icon:hover {
    background: linear-gradient(135deg, #9f33d0 0%, #5b16a8 100%) !important;
    color: #ffffff !important;
    transform: translateY(-3px) scale(1.08) !important;
    box-shadow: 0 6px 16px rgba(91, 22, 168, 0.28) !important;
    border-color: transparent !important;
}

.elementor-520 .elementor-element-e65e98f .elementor-icon svg,
.elementor-520 .elementor-element-9505dbb .elementor-icon svg {
    width: 16px !important;
    height: 16px !important;
    fill: currentColor !important;
}

.elementor-520 .elementor-element-e65e98f .elementor-icon i,
.elementor-520 .elementor-element-9505dbb .elementor-icon i {
    font-size: 16px !important;
    color: inherit !important;
    line-height: 1 !important;
}

@media (max-width: 1024px) and (min-width: 768px) {
    .elementor-520 .elementor-element-379c0a5 {
        gap: 32px !important;
        max-width: 720px !important;
    }
    .elementor-520 .elementor-element-751d834,
    .elementor-520 .elementor-element-ded44e3 {
        flex: 0 0 320px !important;
        width: 320px !important;
    }
    .elementor-520 .elementor-element-dbaf4d9,
    .elementor-520 .elementor-element-2b0b471 {
        height: 350px !important;
        min-height: 350px !important;
    }
}

@media (max-width: 767px) {
    .elementor-520 .elementor-element-dbd50c3 {
        padding: 50px 16px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
    }
    .elementor-520 .elementor-element-1f7db7c {
        width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    .elementor-520 .elementor-element-6aac197 {
        margin-bottom: 32px !important;
        width: 100% !important;
    }
    .elementor-520 .elementor-element-6aac197 .elementor-heading-title {
        font-size: 28px !important;
    }
    .elementor-520 .elementor-element-379c0a5 {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 28px !important;
        width: 100% !important;
        max-width: 340px !important;
        margin: 0 auto !important;
        height: auto !important;
        min-height: auto !important;
    }
    .elementor-520 .elementor-element-751d834,
    .elementor-520 .elementor-element-ded44e3 {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 340px !important;
        height: auto !important;
        min-height: auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin: 0 auto 12px auto !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
    .elementor-520 .elementor-element-dbaf4d9,
    .elementor-520 .elementor-element-2b0b471 {
        width: 100% !important;
        height: 350px !important;
        min-height: 350px !important;
        flex: 0 0 350px !important;
        display: block !important;
    }
    .elementor-520 .elementor-element-dbaf4d9 img,
    .elementor-520 .elementor-element-2b0b471 img {
        width: 100% !important;
        height: 350px !important;
        min-height: 350px !important;
        display: block !important;
        object-fit: cover !important;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - REFERENCE STREETWEAR HERO SECTION (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Reference Hero Main Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 20px 20px 50px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
    z-index: 0;
    opacity: 0.45;
}
.vpr-glow-left {
    top: 10%;
    left: -5%;
    width: 320px;
    height: 320px;
    background: radial-gradient(circle, #ff007f 0%, rgba(255,0,127,0) 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, #7928ca 0%, rgba(121,40,202,0) 70%);
}
.vpr-glow-right {
    bottom: 5%;
    right: -5%;
    width: 350px;
    height: 350px;
    background: radial-gradient(circle, #00f0ff 0%, rgba(0,240,255,0) 70%);
}

/* Top Split Headline */
.vpr-split-header {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 25px;
    text-transform: uppercase;
    user-select: none;
}

.vpr-title-side {
    display: flex;
    gap: 14px;
    align-items: center;
    flex-shrink: 0;
}

.vpr-center-spacer {
    flex: 1;
    min-width: 320px;
}

.vpr-huge-text {
    font-size: clamp(32px, 5vw, 68px);
    font-weight: 900;
    letter-spacing: 2px;
    line-height: 1;
    color: #ffffff;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.6);
}

.vpr-huge-accent {
    background: linear-gradient(135deg, #ff007f 0%, #ff758c 50%, #ffb703 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 25px rgba(255, 0, 127, 0.45));
}

/* Main 3-Column Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: 1.15fr 1fr 1.15fr;
    gap: 30px;
    align-items: center;
}

/* Columns */
.vpr-col {
    display: flex;
    flex-direction: column;
    position: relative;
}

/* Left Column Styling */
.vpr-col-left {
    align-items: flex-start;
    gap: 18px;
    padding-right: 10px;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 18px;
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 50px;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    color: #00f0ff;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.15);
}

.vpr-pulsing-dot {
    width: 8px;
    height: 8px;
    background-color: #00f0ff;
    border-radius: 50%;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 1.8s infinite;
}

@keyframes vprPulse {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 240, 255, 0.7); }
    70% { transform: scale(1.2); box-shadow: 0 0 0 8px rgba(0, 240, 255, 0); }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(0, 240, 255, 0); }
}

.vpr-lead-headline {
    font-size: clamp(26px, 2.5vw, 36px);
    font-weight: 800;
    line-height: 1.25;
    margin: 0;
    color: #ffffff;
    letter-spacing: -0.5px;
}

.vpr-lead-subtext {
    font-size: 15px;
    line-height: 1.65;
    color: rgba(255, 255, 255, 0.82);
    margin: 0;
}

.vpr-lead-subtext strong {
    color: #ffb703;
    font-weight: 700;
}

/* Primary CTA Button */
.vpr-cta-wrapper {
    margin-top: 6px;
    width: 100%;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 15px 34px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 16px;
    font-weight: 700;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(255, 0, 127, 0.4);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.25);
}

.vpr-primary-btn:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 12px 35px rgba(255, 0, 127, 0.6);
    background: linear-gradient(135deg, #ff1a8c 0%, #8b35e0 100%);
    color: #ffffff !important;
}

.vpr-primary-btn i {
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover i {
    transform: translateX(5px);
}

/* Social Proof Card */
.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 18px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    width: fit-content;
    margin-top: 4px;
}

.vpr-stars {
    color: #ffb703;
    font-size: 18px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.65);
}

/* Center Column: Vicky Patel Showcase Card */
.vpr-col-center {
    align-items: center;
    justify-content: center;
}

.vpr-center-card-frame {
    position: relative;
    width: 100%;
    max-width: 380px;
    margin: 0 auto;
    border-radius: 28px;
    padding: 8px;
    background: linear-gradient(135deg, rgba(255, 0, 127, 0.6) 0%, rgba(121, 40, 202, 0.4) 50%, rgba(0, 240, 255, 0.5) 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.7), 0 0 40px rgba(121, 40, 202, 0.35);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.vpr-center-card-frame:hover {
    transform: translateY(-6px);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.8), 0 0 50px rgba(255, 0, 127, 0.45);
}

.vpr-card-backdrop {
    position: absolute;
    inset: 8px;
    background: radial-gradient(circle at 50% 30%, #3b0764 0%, #160029 70%, #0c0017 100%);
    border-radius: 22px;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    width: 100%;
    border-radius: 22px;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.vpr-hero-photo {
    width: 100%;
    height: auto;
    max-height: 480px;
    object-fit: cover;
    object-position: top center;
    display: block;
    border-radius: 22px;
    transition: transform 0.4s ease;
}

.vpr-center-card-frame:hover .vpr-hero-photo {
    transform: scale(1.03);
}

/* Floating Tag on Vicky's Card */
.vpr-floating-tag {
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 20px;
    background: rgba(18, 4, 32, 0.88);
    border: 1px solid rgba(255, 0, 127, 0.5);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6), 0 0 20px rgba(255, 0, 127, 0.3);
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #ffb703);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 14px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 14px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Right Column: Features & Batch Card */
.vpr-col-right {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-left: 10px;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 16px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.09);
    border-color: rgba(255, 0, 127, 0.4);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(121, 40, 202, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ff007f;
    font-size: 16px;
    flex-shrink: 0;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.25;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.65);
}

/* Floating Batch Card */
.vpr-batch-card {
    padding: 20px;
    background: linear-gradient(135deg, rgba(32, 10, 50, 0.9) 0%, rgba(18, 2, 29, 0.95) 100%);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.5), 0 0 25px rgba(0, 240, 255, 0.15);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 800;
    color: #00f0ff;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.vpr-ping {
    width: 8px;
    height: 8px;
    background: #00f0ff;
    border-radius: 50%;
    animation: vprPulse 1.5s infinite;
}

.vpr-batch-badge {
    font-size: 11px;
    font-weight: 700;
    padding: 3px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    color: #ffb703;
    border-radius: 50px;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0;
    line-height: 1.2;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.75);
    margin: 0;
    line-height: 1.4;
}

.vpr-batch-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 14px;
    font-weight: 700;
    border-radius: 10px;
    margin-top: 6px;
    transition: all 0.3s ease;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.25);
}

.vpr-batch-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.45);
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    color: #ffffff !important;
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1024px) {
    .vpr-split-header {
        justify-content: center;
        gap: 20px;
    }
    .vpr-center-spacer {
        display: none;
    }
    .vpr-hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
    .vpr-col-center {
        grid-column: span 2;
        order: -1;
        margin-bottom: 20px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
        padding-right: 0;
    }
    .vpr-col-right {
        padding-left: 0;
    }
    .vpr-social-proof-card {
        margin: 0 auto;
    }
}

@media (max-width: 767px) {
    .vp-reference-hero-container {
        padding: 10px 15px 40px 15px;
    }
    .vpr-split-header {
        flex-direction: column;
        gap: 6px;
        margin-bottom: 20px;
    }
    .vpr-title-side {
        gap: 8px;
    }
    .vpr-huge-text {
        font-size: 34px;
    }
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    .vpr-col-center {
        grid-column: span 1;
        order: 1;
        margin-bottom: 10px;
    }
    .vpr-col-left {
        order: 2;
        align-items: center;
        text-align: center;
    }
    .vpr-col-right {
        order: 3;
    }
    .vpr-lead-headline {
        font-size: 24px;
    }
    .vpr-lead-subtext {
        font-size: 14px;
    }
    .vpr-primary-btn {
        width: 100%;
        padding: 14px 20px;
        box-sizing: border-box;
    }
    .vpr-center-card-frame {
        max-width: 300px;
    }
    .vpr-hero-photo {
        max-height: 380px;
    }
    .vpr-floating-tag {
        padding: 8px 16px;
        bottom: -12px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - EXACT REFERENCE HERO LAYOUT (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-ref-hero-stage {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 30px 20px 60px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Background Brush Glows */
.vp-ref-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vp-ref-glow-left {
    top: 5%;
    left: 2%;
    width: 350px;
    height: 250px;
    background: radial-gradient(circle, rgba(255, 67, 101, 0.8) 0%, rgba(255, 67, 101, 0) 70%);
}
.vp-ref-glow-right {
    top: 5%;
    right: 2%;
    width: 350px;
    height: 250px;
    background: radial-gradient(circle, rgba(255, 117, 140, 0.8) 0%, rgba(255, 117, 140, 0) 70%);
}

/* Top Editorial Split Typography */
.vp-ref-top-header {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: -35px;
    user-select: none;
}

.vp-ref-typo-left,
.vp-ref-typo-right {
    display: flex;
    align-items: baseline;
    gap: 14px;
    flex-shrink: 0;
}

.vp-ref-script-text {
    font-size: clamp(28px, 3.4vw, 48px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
}

.vp-ref-display-text {
    font-size: clamp(48px, 6vw, 88px);
    font-weight: 900;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: -1px;
    line-height: 0.9;
    text-shadow: 0 4px 25px rgba(0, 0, 0, 0.6);
}

.vp-ref-dancer-head-spacer {
    width: 340px;
    flex-shrink: 0;
}

/* Card Wrapper */
.vp-ref-card-wrapper {
    position: relative;
    width: 100%;
    z-index: 4;
}

/* The Rounded Horizontal Shape (Central Container) */
.vp-ref-main-card {
    position: relative;
    width: 100%;
    min-height: 450px;
    border-radius: 44px;
    background: linear-gradient(135deg, #ff4365 0%, #ff5376 45%, #ff3860 100%);
    box-shadow: 0 25px 70px rgba(255, 67, 101, 0.35), 0 10px 30px rgba(0, 0, 0, 0.5);
    border: 1px solid rgba(255, 255, 255, 0.3);
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 1.15fr;
    gap: 20px;
    padding: 50px 44px;
    box-sizing: border-box;
    align-items: center;
    overflow: hidden;
}

/* Sound-Wave Subtle Accents Inside Card */
.vp-ref-card-wave {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    opacity: 0.15;
    background: rgba(255, 255, 255, 0.6);
}
.vp-ref-wave-1 {
    width: 600px;
    height: 600px;
    top: -150px;
    left: 20%;
    filter: blur(40px);
}
.vp-ref-wave-2 {
    width: 450px;
    height: 450px;
    bottom: -100px;
    right: 15%;
    filter: blur(50px);
}

/* Left Content Inside Shape */
.vp-ref-card-left {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}

.vp-ref-sub-tag {
    font-size: 14px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.95);
    letter-spacing: 0.5px;
    text-transform: capitalize;
}

.vp-ref-card-title {
    font-size: clamp(28px, 2.5vw, 40px);
    font-weight: 800;
    line-height: 1.18;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
}

.vp-ref-card-desc {
    font-size: 15px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.92);
    margin: 0 0 10px 0;
    max-width: 320px;
}

.vp-ref-cta-box {
    margin-bottom: 12px;
}

.vp-ref-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 8px 10px 8px 24px;
    background: #ffffff;
    color: #111111 !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.vp-ref-pill-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
    color: #111111 !important;
}

.vp-ref-btn-arrow {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #ff4365;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.vp-ref-pill-btn:hover .vp-ref-btn-arrow {
    transform: translateX(3px);
}

/* Social Proof Badge */
.vp-ref-social-proof {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.vp-ref-avatar-stack {
    display: flex;
    align-items: center;
}

.vp-ref-avatar {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #ff4365;
    margin-left: -8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #ff4365;
}
.vp-ref-avatar:first-child {
    margin-left: 0;
}
.vp-ref-avatar.av-1 { background: #ffeaa7; color: #d63031; }
.vp-ref-avatar.av-2 { background: #74b9ff; color: #0984e3; }
.vp-ref-avatar.av-3 { background: #a29bfe; color: #6c5ce7; }
.vp-ref-avatar.av-4 { background: #55efc4; color: #00b894; }

.vp-ref-proof-text {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
}

.vp-ref-star-icon {
    color: #ffeaa7;
    font-size: 15px;
}

/* Void Space in Center */
.vp-ref-card-center-void {
    width: 100%;
    min-height: 200px;
}

/* Right Content Inside Shape */
.vp-ref-card-right {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 20px;
}

/* 3 Micro Features */
.vp-ref-micro-features {
    display: flex;
    align-items: center;
    gap: 20px;
}

.vp-ref-micro-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
}

.vp-ref-micro-item i {
    font-size: 18px;
    color: #ffffff;
}

.vp-ref-micro-item span {
    font-size: 11px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.9);
    max-width: 75px;
    line-height: 1.2;
}

/* Featured Batch Floating White Card */
.vp-ref-featured-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 16px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 240px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.vp-ref-feat-label {
    font-size: 11px;
    font-weight: 700;
    color: #888888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.vp-ref-feat-preview {
    width: 100%;
    height: 130px;
    border-radius: 16px;
    overflow: hidden;
    background: #110220;
}

.vp-ref-feat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vp-ref-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-ref-feat-title {
    font-size: 14px;
    font-weight: 800;
    color: #111111;
    line-height: 1.2;
}

.vp-ref-feat-sub {
    font-size: 11px;
    color: #666666;
    margin-bottom: 6px;
}

.vp-ref-feat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 14px;
    background: #ff4365;
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(255, 67, 101, 0.3);
}

.vp-ref-feat-btn:hover {
    background: #ff2950;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(255, 67, 101, 0.45);
    color: #ffffff !important;
}

/* ==========================================================================
   THE DANCER BREAKOUT CUTOUT (KEY OVERLAP & EXTENSION EFFECT)
   ========================================================================== */
.vp-ref-dancer-cutout-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: 100%;
    max-width: 520px;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.vp-ref-dancer-img {
    width: 100%;
    height: auto;
    max-height: 590px;
    object-fit: contain;
    object-position: bottom center;
    display: block;
    filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.45));
    transition: transform 0.4s ease;
}

.vp-ref-hero-stage:hover .vp-ref-dancer-img {
    transform: scale(1.02);
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1120px) {
    .vp-ref-dancer-head-spacer {
        width: 240px;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr 0.7fr 1fr;
        padding: 40px 30px;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 440px;
    }
    .vp-ref-dancer-img {
        max-height: 520px;
    }
}

@media (max-width: 900px) {
    .vp-ref-top-header {
        margin-bottom: 10px;
        flex-direction: row;
        justify-content: center;
        gap: 20px;
    }
    .vp-ref-dancer-head-spacer {
        display: none;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr;
        padding: 40px 25px;
        gap: 30px;
    }
    .vp-ref-card-left {
        align-items: center;
        text-align: center;
    }
    .vp-ref-card-desc {
        max-width: 100%;
    }
    .vp-ref-card-center-void {
        display: none;
    }
    .vp-ref-card-right {
        align-items: center;
    }
    .vp-ref-featured-card {
        margin: 0 auto;
        max-width: 280px;
    }
    .vp-ref-dancer-cutout-container {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        max-width: 360px;
        margin: -40px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 420px;
    }
}

@media (max-width: 600px) {
    .vp-ref-hero-stage {
        padding: 20px 12px 40px 12px;
    }
    .vp-ref-top-header {
        flex-direction: column;
        align-items: center;
        gap: 4px;
        margin-bottom: 15px;
    }
    .vp-ref-script-text {
        font-size: 26px;
    }
    .vp-ref-display-text {
        font-size: 42px;
    }
    .vp-ref-main-card {
        border-radius: 32px;
        padding: 30px 18px;
    }
    .vp-ref-card-title {
        font-size: 24px;
    }
    .vp-ref-card-desc {
        font-size: 13px;
    }
    .vp-ref-pill-btn {
        width: 100%;
        justify-content: space-between;
        padding: 8px 10px 8px 20px;
        box-sizing: border-box;
    }
    .vp-ref-micro-features {
        gap: 12px;
    }
    .vp-ref-micro-item span {
        font-size: 10px;
    }
    .vp-ref-featured-card {
        width: 100%;
        max-width: 100%;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 290px;
        margin: -30px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 340px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - SIGNATURE VIOLET/NEON HERO SECTION (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-ref-hero-stage {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 30px 20px 60px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Background Brush Glows */
.vp-ref-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.45;
}
.vp-ref-glow-left {
    top: 5%;
    left: 2%;
    width: 380px;
    height: 280px;
    background: radial-gradient(circle, rgba(157, 78, 221, 0.7) 0%, rgba(157, 78, 221, 0) 70%);
}
.vp-ref-glow-right {
    top: 5%;
    right: 2%;
    width: 380px;
    height: 280px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.6) 0%, rgba(0, 240, 255, 0) 70%);
}

/* Top Editorial Split Typography */
.vp-ref-top-header {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: -35px;
    user-select: none;
}

.vp-ref-typo-left,
.vp-ref-typo-right {
    display: flex;
    align-items: baseline;
    gap: 14px;
    flex-shrink: 0;
}

.vp-ref-script-text {
    font-size: clamp(28px, 3.4vw, 48px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
}

.vp-ref-display-text {
    font-size: clamp(48px, 6vw, 88px);
    font-weight: 900;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: -1px;
    line-height: 0.9;
    background: linear-gradient(135deg, #ffffff 0%, #00f0ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 4px 20px rgba(0, 240, 255, 0.4));
}

.vp-ref-typo-left .vp-ref-display-text {
    background: linear-gradient(135deg, #ffffff 0%, #ff758c 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 4px 20px rgba(255, 0, 127, 0.4));
}

.vp-ref-dancer-head-spacer {
    width: 340px;
    flex-shrink: 0;
}

/* Card Wrapper */
.vp-ref-card-wrapper {
    position: relative;
    width: 100%;
    z-index: 4;
}

/* The Rounded Horizontal Shape (Central Container) - Brand Deep Violet Aesthetic */
.vp-ref-main-card {
    position: relative;
    width: 100%;
    min-height: 460px;
    border-radius: 44px;
    background: linear-gradient(135deg, #1b0229 0%, #2a0845 50%, #11001e 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.7), 0 0 50px rgba(121, 40, 202, 0.35);
    border: 1px solid rgba(157, 78, 221, 0.35);
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 1.15fr;
    gap: 20px;
    padding: 50px 44px;
    box-sizing: border-box;
    align-items: center;
    overflow: hidden;
}

/* Sound-Wave Subtle Accents Inside Card */
.vp-ref-card-wave {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    opacity: 0.2;
}
.vp-ref-wave-1 {
    width: 600px;
    height: 600px;
    top: -150px;
    left: 15%;
    background: radial-gradient(circle, #ff007f 0%, transparent 70%);
    filter: blur(50px);
}
.vp-ref-wave-2 {
    width: 500px;
    height: 500px;
    bottom: -100px;
    right: 10%;
    background: radial-gradient(circle, #00f0ff 0%, transparent 70%);
    filter: blur(60px);
}

/* Left Content Inside Shape */
.vp-ref-card-left {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.vp-ref-sub-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 700;
    color: #00f0ff;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 16px;
    background: rgba(0, 240, 255, 0.1);
    border: 1px solid rgba(0, 240, 255, 0.25);
    border-radius: 50px;
    backdrop-filter: blur(8px);
}

.vp-ref-card-title {
    font-size: clamp(28px, 2.5vw, 40px);
    font-weight: 800;
    line-height: 1.18;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.vp-ref-card-desc {
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 6px 0;
    max-width: 320px;
}

.vp-ref-cta-box {
    margin-bottom: 8px;
}

.vp-ref-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 8px 10px 8px 24px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50px;
    box-shadow: 0 8px 25px rgba(255, 0, 127, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.vp-ref-pill-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 35px rgba(255, 0, 127, 0.6);
    background: linear-gradient(135deg, #ff1a8c 0%, #8e3ee8 100%);
    color: #ffffff !important;
}

.vp-ref-btn-arrow {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.vp-ref-pill-btn:hover .vp-ref-btn-arrow {
    transform: translateX(3px);
}

/* Social Proof Badge */
.vp-ref-social-proof {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.vp-ref-avatar-stack {
    display: flex;
    align-items: center;
}

.vp-ref-avatar {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #200a35;
    margin-left: -8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #200a35;
}
.vp-ref-avatar:first-child {
    margin-left: 0;
}
.vp-ref-avatar.av-1 { background: #ffeaa7; color: #d63031; }
.vp-ref-avatar.av-2 { background: #74b9ff; color: #0984e3; }
.vp-ref-avatar.av-3 { background: #a29bfe; color: #6c5ce7; }
.vp-ref-avatar.av-4 { background: #55efc4; color: #00b894; }

.vp-ref-proof-text {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
}

.vp-ref-star-icon {
    color: #ffb703;
    font-size: 15px;
}

/* Void Space in Center */
.vp-ref-card-center-void {
    width: 100%;
    min-height: 200px;
}

/* Right Content Inside Shape */
.vp-ref-card-right {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 20px;
}

/* 3 Micro Features */
.vp-ref-micro-features {
    display: flex;
    align-items: center;
    gap: 20px;
}

.vp-ref-micro-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
}

.vp-ref-micro-item i {
    font-size: 18px;
    color: #00f0ff;
    filter: drop-shadow(0 0 8px rgba(0, 240, 255, 0.5));
}

.vp-ref-micro-item span {
    font-size: 11px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    max-width: 80px;
    line-height: 1.2;
}

/* Featured Batch Floating Glassmorphic Card */
.vp-ref-featured-card {
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 24px;
    padding: 16px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
    width: 100%;
    max-width: 245px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vp-ref-feat-label {
    font-size: 11px;
    font-weight: 800;
    color: #ffb703;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.vp-ref-feat-preview {
    width: 100%;
    height: 130px;
    border-radius: 16px;
    overflow: hidden;
    background: #000000;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.vp-ref-feat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vp-ref-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-ref-feat-title {
    font-size: 14px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vp-ref-feat-sub {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 6px;
}

.vp-ref-feat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 14px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.vp-ref-feat-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.5);
    color: #ffffff !important;
}

/* ==========================================================================
   THE DANCER BREAKOUT CUTOUT (KEY OVERLAP & EXTENSION EFFECT)
   ========================================================================== */
.vp-ref-dancer-cutout-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: 100%;
    max-width: 520px;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.vp-ref-dancer-img {
    width: 100%;
    height: auto;
    max-height: 600px;
    object-fit: contain;
    object-position: bottom center;
    display: block;
    filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.6));
    transition: transform 0.4s ease;
}

.vp-ref-hero-stage:hover .vp-ref-dancer-img {
    transform: scale(1.02);
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1120px) {
    .vp-ref-dancer-head-spacer {
        width: 240px;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr 0.7fr 1fr;
        padding: 40px 30px;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 440px;
    }
    .vp-ref-dancer-img {
        max-height: 520px;
    }
}

@media (max-width: 900px) {
    .vp-ref-top-header {
        margin-bottom: 10px;
        flex-direction: row;
        justify-content: center;
        gap: 20px;
    }
    .vp-ref-dancer-head-spacer {
        display: none;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr;
        padding: 40px 25px;
        gap: 30px;
    }
    .vp-ref-card-left {
        align-items: center;
        text-align: center;
    }
    .vp-ref-card-desc {
        max-width: 100%;
    }
    .vp-ref-card-center-void {
        display: none;
    }
    .vp-ref-card-right {
        align-items: center;
    }
    .vp-ref-featured-card {
        margin: 0 auto;
        max-width: 280px;
    }
    .vp-ref-dancer-cutout-container {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        max-width: 360px;
        margin: -40px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 420px;
    }
}

@media (max-width: 600px) {
    .vp-ref-hero-stage {
        padding: 20px 12px 40px 12px;
    }
    .vp-ref-top-header {
        flex-direction: column;
        align-items: center;
        gap: 4px;
        margin-bottom: 15px;
    }
    .vp-ref-script-text {
        font-size: 26px;
    }
    .vp-ref-display-text {
        font-size: 42px;
    }
    .vp-ref-main-card {
        border-radius: 32px;
        padding: 30px 18px;
    }
    .vp-ref-card-title {
        font-size: 24px;
    }
    .vp-ref-card-desc {
        font-size: 13px;
    }
    .vp-ref-pill-btn {
        width: 100%;
        justify-content: space-between;
        padding: 8px 10px 8px 20px;
        box-sizing: border-box;
    }
    .vp-ref-micro-features {
        gap: 12px;
    }
    .vp-ref-micro-item span {
        font-size: 10px;
    }
    .vp-ref-featured-card {
        width: 100%;
        max-width: 100%;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 290px;
        margin: -30px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 340px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - SIGNATURE BREAKOUT HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-ref-hero-stage {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 20px 20px 60px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Stage Background Glows */
.vp-ref-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(100px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.5;
}
.vp-ref-glow-left {
    top: 0%;
    left: 0%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, rgba(255, 0, 127, 0) 70%);
}
.vp-ref-glow-right {
    top: 0%;
    right: 0%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.55) 0%, rgba(0, 240, 255, 0) 70%);
}

/* Top Editorial Split Typography - Fully Visible & Crisp */
.vp-ref-top-header {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 20px;
    user-select: none;
}

.vp-ref-typo-left,
.vp-ref-typo-right {
    display: flex;
    align-items: baseline;
    gap: 16px;
    flex-shrink: 0;
}

.vp-ref-script-text {
    font-size: clamp(28px, 3.2vw, 46px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}

.vp-ref-display-text {
    font-size: clamp(48px, 5.8vw, 84px);
    font-weight: 900;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: -1px;
    line-height: 0.9;
    text-shadow: 0 4px 25px rgba(0, 0, 0, 0.8), 0 0 30px rgba(255, 255, 255, 0.3);
}

.vp-ref-typo-left .vp-ref-display-text {
    color: #ffffff;
    text-shadow: 0 4px 20px rgba(255, 0, 127, 0.6), 0 2px 10px rgba(0, 0, 0, 0.9);
}

.vp-ref-typo-right .vp-ref-display-text {
    color: #ffffff;
    text-shadow: 0 4px 20px rgba(0, 240, 255, 0.6), 0 2px 10px rgba(0, 0, 0, 0.9);
}

.vp-ref-dancer-head-spacer {
    width: 320px;
    flex-shrink: 0;
}

/* Card Wrapper */
.vp-ref-card-wrapper {
    position: relative;
    width: 100%;
    z-index: 5;
}

/* The Rounded Horizontal Shape (Central Container) - Brand Deep Cosmic Violet */
.vp-ref-main-card {
    position: relative;
    width: 100%;
    min-height: 460px;
    border-radius: 40px;
    background: linear-gradient(135deg, #1b0229 0%, #2a0845 50%, #11001e 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.7), 0 0 40px rgba(121, 40, 202, 0.3);
    border: 1px solid rgba(157, 78, 221, 0.35);
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 1.15fr;
    gap: 20px;
    padding: 48px 40px;
    box-sizing: border-box;
    align-items: center;
    overflow: hidden;
}

/* Sound-Wave Subtle Accents Inside Card */
.vp-ref-card-wave {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    opacity: 0.2;
}
.vp-ref-wave-1 {
    width: 550px;
    height: 550px;
    top: -150px;
    left: 15%;
    background: radial-gradient(circle, #ff007f 0%, transparent 70%);
    filter: blur(50px);
}
.vp-ref-wave-2 {
    width: 450px;
    height: 450px;
    bottom: -100px;
    right: 10%;
    background: radial-gradient(circle, #00f0ff 0%, transparent 70%);
    filter: blur(60px);
}

/* Left Content Inside Shape */
.vp-ref-card-left {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.vp-ref-sub-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 14px;
    background: rgba(0, 240, 255, 0.1);
    border: 1px solid rgba(0, 240, 255, 0.25);
    border-radius: 50px;
    backdrop-filter: blur(8px);
}

.vp-tag-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vp-ref-card-title {
    font-size: clamp(26px, 2.4vw, 38px);
    font-weight: 800;
    line-height: 1.18;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.vp-ref-card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 6px 0;
    max-width: 320px;
}

.vp-ref-cta-box {
    margin-bottom: 8px;
}

.vp-ref-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 8px 10px 8px 24px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50px;
    box-shadow: 0 8px 25px rgba(255, 0, 127, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.vp-ref-pill-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 35px rgba(255, 0, 127, 0.6);
    background: linear-gradient(135deg, #ff1a8c 0%, #8e3ee8 100%);
    color: #ffffff !important;
}

.vp-ref-btn-arrow {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.vp-ref-pill-btn:hover .vp-ref-btn-arrow {
    transform: translateX(3px);
}

/* Social Proof Badge */
.vp-ref-social-proof {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.vp-ref-avatar-stack {
    display: flex;
    align-items: center;
}

.vp-ref-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #200a35;
    margin-left: -7px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: #200a35;
}
.vp-ref-avatar:first-child {
    margin-left: 0;
}
.vp-ref-avatar.av-1 { background: #ffeaa7; color: #d63031; }
.vp-ref-avatar.av-2 { background: #74b9ff; color: #0984e3; }
.vp-ref-avatar.av-3 { background: #a29bfe; color: #6c5ce7; }
.vp-ref-avatar.av-4 { background: #55efc4; color: #00b894; }

.vp-ref-proof-text {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
}

.vp-ref-star-icon {
    color: #ffb703;
    font-size: 14px;
}

/* Void Space in Center */
.vp-ref-card-center-void {
    width: 100%;
    min-height: 200px;
}

/* Right Content Inside Shape */
.vp-ref-card-right {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 18px;
}

/* 3 Micro Features */
.vp-ref-micro-features {
    display: flex;
    align-items: center;
    gap: 18px;
}

.vp-ref-micro-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
}

.vp-ref-micro-item i {
    font-size: 17px;
    color: #00f0ff;
    filter: drop-shadow(0 0 8px rgba(0, 240, 255, 0.5));
}

.vp-ref-micro-item span {
    font-size: 11px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    max-width: 80px;
    line-height: 1.2;
}

/* Featured Batch Floating Glassmorphic Card */
.vp-ref-featured-card {
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 20px;
    padding: 14px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
    width: 100%;
    max-width: 235px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vp-ref-feat-label {
    font-size: 10px;
    font-weight: 800;
    color: #ffb703;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.vp-ref-feat-preview {
    width: 100%;
    height: 120px;
    border-radius: 14px;
    overflow: hidden;
    background: #000000;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.vp-ref-feat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vp-ref-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-ref-feat-title {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vp-ref-feat-sub {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 4px;
}

.vp-ref-feat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.vp-ref-feat-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.5);
    color: #ffffff !important;
}

/* ==========================================================================
   THE AUTHENTIC VICKY PATEL DANCER BREAKOUT CUTOUT
   ========================================================================== */
.vp-ref-dancer-cutout-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: 100%;
    max-width: 480px;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.vp-ref-dancer-img {
    width: 100%;
    height: auto;
    max-height: 560px;
    object-fit: contain;
    object-position: bottom center;
    display: block;
    filter: drop-shadow(0 15px 35px rgba(0, 0, 0, 0.6));
    transition: transform 0.4s ease;
}

.vp-ref-hero-stage:hover .vp-ref-dancer-img {
    transform: scale(1.02);
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1120px) {
    .vp-ref-dancer-head-spacer {
        width: 220px;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr 0.7fr 1fr;
        padding: 40px 30px;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 420px;
    }
    .vp-ref-dancer-img {
        max-height: 500px;
    }
}

@media (max-width: 900px) {
    .vp-ref-top-header {
        margin-bottom: 20px;
        flex-direction: row;
        justify-content: center;
        gap: 20px;
    }
    .vp-ref-dancer-head-spacer {
        display: none;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr;
        padding: 40px 25px;
        gap: 30px;
    }
    .vp-ref-card-left {
        align-items: center;
        text-align: center;
    }
    .vp-ref-card-desc {
        max-width: 100%;
    }
    .vp-ref-card-center-void {
        display: none;
    }
    .vp-ref-card-right {
        align-items: center;
    }
    .vp-ref-featured-card {
        margin: 0 auto;
        max-width: 280px;
    }
    .vp-ref-dancer-cutout-container {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        max-width: 340px;
        margin: -20px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 400px;
    }
}

@media (max-width: 600px) {
    .vp-ref-hero-stage {
        padding: 15px 12px 40px 12px;
    }
    .vp-ref-top-header {
        flex-direction: column;
        align-items: center;
        gap: 6px;
        margin-bottom: 20px;
    }
    .vp-ref-script-text {
        font-size: 26px;
    }
    .vp-ref-display-text {
        font-size: 44px;
    }
    .vp-ref-main-card {
        border-radius: 28px;
        padding: 30px 18px;
    }
    .vp-ref-card-title {
        font-size: 24px;
    }
    .vp-ref-card-desc {
        font-size: 13px;
    }
    .vp-ref-pill-btn {
        width: 100%;
        justify-content: space-between;
        padding: 8px 10px 8px 20px;
        box-sizing: border-box;
    }
    .vp-ref-micro-features {
        gap: 12px;
    }
    .vp-ref-micro-item span {
        font-size: 10px;
    }
    .vp-ref-featured-card {
        width: 100%;
        max-width: 100%;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 280px;
        margin: -10px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 320px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - LARGE BREAKOUT HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-ref-hero-stage {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 30px 20px 60px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Stage Background Glows */
.vp-ref-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(100px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.5;
}
.vp-ref-glow-left {
    top: -5%;
    left: 0%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.65) 0%, rgba(255, 0, 127, 0) 70%);
}
.vp-ref-glow-right {
    top: -5%;
    right: 0%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.6) 0%, rgba(0, 240, 255, 0) 70%);
}

/* Top Editorial Split Typography - Framing Vicky's Head */
.vp-ref-top-header {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: -55px;
    user-select: none;
}

.vp-ref-typo-left,
.vp-ref-typo-right {
    display: flex;
    align-items: baseline;
    gap: 16px;
    flex-shrink: 0;
}

.vp-ref-script-text {
    font-size: clamp(30px, 3.5vw, 50px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.9);
}

.vp-ref-display-text {
    font-size: clamp(52px, 6.2vw, 92px);
    font-weight: 900;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: -1px;
    line-height: 0.9;
    text-shadow: 0 4px 25px rgba(0, 0, 0, 0.9), 0 0 35px rgba(255, 255, 255, 0.35);
}

.vp-ref-typo-left .vp-ref-display-text {
    color: #ffffff;
    text-shadow: 0 4px 25px rgba(255, 0, 127, 0.7), 0 2px 10px rgba(0, 0, 0, 0.95);
}

.vp-ref-typo-right .vp-ref-display-text {
    color: #ffffff;
    text-shadow: 0 4px 25px rgba(0, 240, 255, 0.7), 0 2px 10px rgba(0, 0, 0, 0.95);
}

.vp-ref-dancer-head-spacer {
    width: 320px;
    flex-shrink: 0;
}

/* Card Wrapper */
.vp-ref-card-wrapper {
    position: relative;
    width: 100%;
    z-index: 5;
}

/* The Rounded Horizontal Shape (Central Container) */
.vp-ref-main-card {
    position: relative;
    width: 100%;
    min-height: 460px;
    border-radius: 40px;
    background: linear-gradient(135deg, #1b0229 0%, #2a0845 50%, #11001e 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.7), 0 0 40px rgba(121, 40, 202, 0.3);
    border: 1px solid rgba(157, 78, 221, 0.35);
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 1.15fr;
    gap: 20px;
    padding: 48px 40px;
    box-sizing: border-box;
    align-items: center;
    overflow: hidden;
}

/* Sound-Wave Subtle Accents Inside Card */
.vp-ref-card-wave {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    opacity: 0.2;
}
.vp-ref-wave-1 {
    width: 550px;
    height: 550px;
    top: -150px;
    left: 15%;
    background: radial-gradient(circle, #ff007f 0%, transparent 70%);
    filter: blur(50px);
}
.vp-ref-wave-2 {
    width: 450px;
    height: 450px;
    bottom: -100px;
    right: 10%;
    background: radial-gradient(circle, #00f0ff 0%, transparent 70%);
    filter: blur(60px);
}

/* Left Content Inside Shape */
.vp-ref-card-left {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.vp-ref-sub-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 14px;
    background: rgba(0, 240, 255, 0.1);
    border: 1px solid rgba(0, 240, 255, 0.25);
    border-radius: 50px;
    backdrop-filter: blur(8px);
}

.vp-tag-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vp-ref-card-title {
    font-size: clamp(26px, 2.4vw, 38px);
    font-weight: 800;
    line-height: 1.18;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.vp-ref-card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 6px 0;
    max-width: 320px;
}

.vp-ref-cta-box {
    margin-bottom: 8px;
}

.vp-ref-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 8px 10px 8px 24px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50px;
    box-shadow: 0 8px 25px rgba(255, 0, 127, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.vp-ref-pill-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 35px rgba(255, 0, 127, 0.6);
    background: linear-gradient(135deg, #ff1a8c 0%, #8e3ee8 100%);
    color: #ffffff !important;
}

.vp-ref-btn-arrow {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.vp-ref-pill-btn:hover .vp-ref-btn-arrow {
    transform: translateX(3px);
}

/* Social Proof Badge */
.vp-ref-social-proof {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.vp-ref-avatar-stack {
    display: flex;
    align-items: center;
}

.vp-ref-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #200a35;
    margin-left: -7px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: #200a35;
}
.vp-ref-avatar:first-child {
    margin-left: 0;
}
.vp-ref-avatar.av-1 { background: #ffeaa7; color: #d63031; }
.vp-ref-avatar.av-2 { background: #74b9ff; color: #0984e3; }
.vp-ref-avatar.av-3 { background: #a29bfe; color: #6c5ce7; }
.vp-ref-avatar.av-4 { background: #55efc4; color: #00b894; }

.vp-ref-proof-text {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
}

.vp-ref-star-icon {
    color: #ffb703;
    font-size: 14px;
}

/* Void Space in Center */
.vp-ref-card-center-void {
    width: 100%;
    min-height: 200px;
}

/* Right Content Inside Shape */
.vp-ref-card-right {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 18px;
}

/* 3 Micro Features */
.vp-ref-micro-features {
    display: flex;
    align-items: center;
    gap: 18px;
}

.vp-ref-micro-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
}

.vp-ref-micro-item i {
    font-size: 17px;
    color: #00f0ff;
    filter: drop-shadow(0 0 8px rgba(0, 240, 255, 0.5));
}

.vp-ref-micro-item span {
    font-size: 11px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    max-width: 80px;
    line-height: 1.2;
}

/* Featured Batch Floating Glassmorphic Card */
.vp-ref-featured-card {
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 20px;
    padding: 14px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
    width: 100%;
    max-width: 235px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vp-ref-feat-label {
    font-size: 10px;
    font-weight: 800;
    color: #ffb703;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.vp-ref-feat-preview {
    width: 100%;
    height: 120px;
    border-radius: 14px;
    overflow: hidden;
    background: #000000;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.vp-ref-feat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vp-ref-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-ref-feat-title {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vp-ref-feat-sub {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 4px;
}

.vp-ref-feat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.vp-ref-feat-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.5);
    color: #ffffff !important;
}

/* ==========================================================================
   THE BIG VICKY PATEL BREAKOUT CUTOUT (PROMINENT OVERLAP & EXTENSION)
   ========================================================================== */
.vp-ref-dancer-cutout-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: 100%;
    max-width: 440px;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.vp-ref-dancer-img {
    width: 100%;
    max-width: 380px;
    height: 600px;
    max-height: 620px;
    object-fit: contain;
    object-position: bottom center;
    display: block;
    filter: drop-shadow(0 15px 40px rgba(0, 0, 0, 0.8));
    transition: transform 0.4s ease;
}

.vp-ref-hero-stage:hover .vp-ref-dancer-img {
    transform: scale(1.02);
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1120px) {
    .vp-ref-top-header {
        margin-bottom: -35px;
    }
    .vp-ref-dancer-head-spacer {
        width: 240px;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr 0.7fr 1fr;
        padding: 40px 30px;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 380px;
    }
    .vp-ref-dancer-img {
        max-width: 330px;
        height: 520px;
    }
}

@media (max-width: 900px) {
    .vp-ref-top-header {
        margin-bottom: 20px;
        flex-direction: row;
        justify-content: center;
        gap: 20px;
    }
    .vp-ref-dancer-head-spacer {
        display: none;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr;
        padding: 40px 25px;
        gap: 30px;
    }
    .vp-ref-card-left {
        align-items: center;
        text-align: center;
    }
    .vp-ref-card-desc {
        max-width: 100%;
    }
    .vp-ref-card-center-void {
        display: none;
    }
    .vp-ref-card-right {
        align-items: center;
    }
    .vp-ref-featured-card {
        margin: 0 auto;
        max-width: 280px;
    }
    .vp-ref-dancer-cutout-container {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        max-width: 300px;
        margin: -60px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-width: 280px;
        height: 440px;
    }
}

@media (max-width: 600px) {
    .vp-ref-hero-stage {
        padding: 15px 12px 40px 12px;
    }
    .vp-ref-top-header {
        flex-direction: column;
        align-items: center;
        gap: 6px;
        margin-bottom: 20px;
    }
    .vp-ref-script-text {
        font-size: 26px;
    }
    .vp-ref-display-text {
        font-size: 44px;
    }
    .vp-ref-main-card {
        border-radius: 28px;
        padding: 30px 18px;
    }
    .vp-ref-card-title {
        font-size: 24px;
    }
    .vp-ref-card-desc {
        font-size: 13px;
    }
    .vp-ref-pill-btn {
        width: 100%;
        justify-content: space-between;
        padding: 8px 10px 8px 20px;
        box-sizing: border-box;
    }
    .vp-ref-micro-features {
        gap: 12px;
    }
    .vp-ref-micro-item span {
        font-size: 10px;
    }
    .vp-ref-featured-card {
        width: 100%;
        max-width: 100%;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 260px;
        margin: -40px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-width: 240px;
        height: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - 100% VISIBLE BREAKOUT HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-ref-hero-stage {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 10px 20px 60px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Stage Background Glows */
.vp-ref-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(100px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.6;
}
.vp-ref-glow-left {
    top: -20px;
    left: 2%;
    width: 450px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.7) 0%, rgba(255, 0, 127, 0) 70%);
}
.vp-ref-glow-right {
    top: -20px;
    right: 2%;
    width: 450px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.65) 0%, rgba(0, 240, 255, 0) 70%);
}

/* Top Editorial Split Typography - 100% UNBLOCKED & FULLY VISIBLE */
.vp-ref-top-header {
    position: relative;
    z-index: 8;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 15px;
    user-select: none;
}

.vp-ref-typo-left,
.vp-ref-typo-right {
    display: flex;
    align-items: baseline;
    gap: 16px;
    flex-shrink: 0;
}

.vp-ref-script-text {
    font-size: clamp(32px, 3.8vw, 54px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.95);
}

.vp-ref-display-text {
    font-size: clamp(56px, 6.8vw, 98px);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: -1px;
    line-height: 0.9;
}

.vp-ref-typo-left .vp-ref-display-text {
    color: #ffffff;
    text-shadow: 0 0 35px rgba(255, 0, 127, 0.8), 0 4px 20px rgba(0, 0, 0, 0.95);
}

.vp-ref-typo-right .vp-ref-display-text {
    color: #00f0ff;
    text-shadow: 0 0 35px rgba(0, 240, 255, 0.8), 0 4px 20px rgba(0, 0, 0, 0.95);
}

.vp-ref-dancer-head-spacer {
    width: 320px;
    flex-shrink: 0;
}

/* Card Wrapper */
.vp-ref-card-wrapper {
    position: relative;
    width: 100%;
    z-index: 5;
}

/* The Rounded Horizontal Shape (Central Container) */
.vp-ref-main-card {
    position: relative;
    width: 100%;
    min-height: 470px;
    border-radius: 40px;
    background: linear-gradient(135deg, #1b0229 0%, #2a0845 50%, #11001e 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.8), 0 0 40px rgba(121, 40, 202, 0.35);
    border: 1px solid rgba(157, 78, 221, 0.35);
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 1.15fr;
    gap: 20px;
    padding: 48px 40px;
    box-sizing: border-box;
    align-items: center;
    overflow: hidden;
}

/* Sound-Wave Subtle Accents Inside Card */
.vp-ref-card-wave {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    opacity: 0.2;
}
.vp-ref-wave-1 {
    width: 550px;
    height: 550px;
    top: -150px;
    left: 15%;
    background: radial-gradient(circle, #ff007f 0%, transparent 70%);
    filter: blur(50px);
}
.vp-ref-wave-2 {
    width: 450px;
    height: 450px;
    bottom: -100px;
    right: 10%;
    background: radial-gradient(circle, #00f0ff 0%, transparent 70%);
    filter: blur(60px);
}

/* Left Content Inside Shape */
.vp-ref-card-left {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.vp-ref-sub-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 14px;
    background: rgba(0, 240, 255, 0.1);
    border: 1px solid rgba(0, 240, 255, 0.25);
    border-radius: 50px;
    backdrop-filter: blur(8px);
}

.vp-tag-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vp-ref-card-title {
    font-size: clamp(26px, 2.4vw, 38px);
    font-weight: 800;
    line-height: 1.18;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.vp-ref-card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 6px 0;
    max-width: 320px;
}

.vp-ref-cta-box {
    margin-bottom: 8px;
}

.vp-ref-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 8px 10px 8px 24px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50px;
    box-shadow: 0 8px 25px rgba(255, 0, 127, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.vp-ref-pill-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 35px rgba(255, 0, 127, 0.6);
    background: linear-gradient(135deg, #ff1a8c 0%, #8e3ee8 100%);
    color: #ffffff !important;
}

.vp-ref-btn-arrow {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.vp-ref-pill-btn:hover .vp-ref-btn-arrow {
    transform: translateX(3px);
}

/* Social Proof Badge */
.vp-ref-social-proof {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.vp-ref-avatar-stack {
    display: flex;
    align-items: center;
}

.vp-ref-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #200a35;
    margin-left: -7px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: #200a35;
}
.vp-ref-avatar:first-child {
    margin-left: 0;
}
.vp-ref-avatar.av-1 { background: #ffeaa7; color: #d63031; }
.vp-ref-avatar.av-2 { background: #74b9ff; color: #0984e3; }
.vp-ref-avatar.av-3 { background: #a29bfe; color: #6c5ce7; }
.vp-ref-avatar.av-4 { background: #55efc4; color: #00b894; }

.vp-ref-proof-text {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
}

.vp-ref-star-icon {
    color: #ffb703;
    font-size: 14px;
}

/* Void Space in Center */
.vp-ref-card-center-void {
    width: 100%;
    min-height: 200px;
}

/* Right Content Inside Shape */
.vp-ref-card-right {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 18px;
}

/* 3 Micro Features */
.vp-ref-micro-features {
    display: flex;
    align-items: center;
    gap: 18px;
}

.vp-ref-micro-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
}

.vp-ref-micro-item i {
    font-size: 17px;
    color: #00f0ff;
    filter: drop-shadow(0 0 8px rgba(0, 240, 255, 0.5));
}

.vp-ref-micro-item span {
    font-size: 11px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    max-width: 80px;
    line-height: 1.2;
}

/* Featured Batch Floating Glassmorphic Card */
.vp-ref-featured-card {
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 20px;
    padding: 14px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
    width: 100%;
    max-width: 235px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vp-ref-feat-label {
    font-size: 10px;
    font-weight: 800;
    color: #ffb703;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.vp-ref-feat-preview {
    width: 100%;
    height: 120px;
    border-radius: 14px;
    overflow: hidden;
    background: #000000;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.vp-ref-feat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vp-ref-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-ref-feat-title {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vp-ref-feat-sub {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 4px;
}

.vp-ref-feat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.vp-ref-feat-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.5);
    color: #ffffff !important;
}

/* ==========================================================================
   THE BIG VICKY PATEL BREAKOUT CUTOUT
   ========================================================================== */
.vp-ref-dancer-cutout-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: 100%;
    max-width: 440px;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.vp-ref-dancer-img {
    width: 100%;
    max-width: 380px;
    height: 610px;
    max-height: 630px;
    object-fit: contain;
    object-position: bottom center;
    display: block;
    filter: drop-shadow(0 15px 40px rgba(0, 0, 0, 0.8));
    transition: transform 0.4s ease;
}

.vp-ref-hero-stage:hover .vp-ref-dancer-img {
    transform: scale(1.02);
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1120px) {
    .vp-ref-top-header {
        margin-bottom: 10px;
    }
    .vp-ref-dancer-head-spacer {
        width: 240px;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr 0.7fr 1fr;
        padding: 40px 30px;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 380px;
    }
    .vp-ref-dancer-img {
        max-width: 330px;
        height: 520px;
    }
}

@media (max-width: 900px) {
    .vp-ref-top-header {
        margin-bottom: 20px;
        flex-direction: row;
        justify-content: center;
        gap: 20px;
    }
    .vp-ref-dancer-head-spacer {
        display: none;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr;
        padding: 40px 25px;
        gap: 30px;
    }
    .vp-ref-card-left {
        align-items: center;
        text-align: center;
    }
    .vp-ref-card-desc {
        max-width: 100%;
    }
    .vp-ref-card-center-void {
        display: none;
    }
    .vp-ref-card-right {
        align-items: center;
    }
    .vp-ref-featured-card {
        margin: 0 auto;
        max-width: 280px;
    }
    .vp-ref-dancer-cutout-container {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        max-width: 300px;
        margin: -60px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-width: 280px;
        height: 440px;
    }
}

@media (max-width: 600px) {
    .vp-ref-hero-stage {
        padding: 10px 12px 40px 12px;
    }
    .vp-ref-top-header {
        flex-direction: column;
        align-items: center;
        gap: 6px;
        margin-bottom: 20px;
    }
    .vp-ref-script-text {
        font-size: 28px;
    }
    .vp-ref-display-text {
        font-size: 46px;
    }
    .vp-ref-main-card {
        border-radius: 28px;
        padding: 30px 18px;
    }
    .vp-ref-card-title {
        font-size: 24px;
    }
    .vp-ref-card-desc {
        font-size: 13px;
    }
    .vp-ref-pill-btn {
        width: 100%;
        justify-content: space-between;
        padding: 8px 10px 8px 20px;
        box-sizing: border-box;
    }
    .vp-ref-micro-features {
        gap: 12px;
    }
    .vp-ref-micro-item span {
        font-size: 10px;
    }
    .vp-ref-featured-card {
        width: 100%;
        max-width: 100%;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 260px;
        margin: -40px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - PROFESSIONAL EDITORIAL HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-ref-hero-stage {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 10px 20px 60px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Subtle Stage Background Glows (Subtle, not distracting) */
.vp-ref-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vp-ref-glow-left {
    top: -20px;
    left: 5%;
    width: 400px;
    height: 280px;
    background: radial-gradient(circle, rgba(157, 78, 221, 0.5) 0%, transparent 70%);
}
.vp-ref-glow-right {
    top: -20px;
    right: 5%;
    width: 400px;
    height: 280px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.4) 0%, transparent 70%);
}

/* Top Editorial Split Typography - Professional, Crisp, No Blurry Glow */
.vp-ref-top-header {
    position: relative;
    z-index: 8;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    padding: 0 30px;
    box-sizing: border-box;
    margin-bottom: 15px;
    user-select: none;
}

.vp-ref-typo-left,
.vp-ref-typo-right {
    display: flex;
    align-items: baseline;
    gap: 14px;
    flex-shrink: 0;
}

.vp-ref-script-text {
    font-size: clamp(26px, 3.2vw, 44px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
}

.vp-ref-display-text {
    font-size: clamp(48px, 5.8vw, 84px);
    font-weight: 900;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: -1px;
    line-height: 0.9;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

/* Center Spacer to keep text completely off Vicky's face and hair */
.vp-ref-dancer-head-spacer {
    width: 480px;
    flex-shrink: 1;
    min-width: 380px;
}

/* Card Wrapper */
.vp-ref-card-wrapper {
    position: relative;
    width: 100%;
    z-index: 5;
}

/* The Rounded Horizontal Shape (Central Container) */
.vp-ref-main-card {
    position: relative;
    width: 100%;
    min-height: 470px;
    border-radius: 40px;
    background: linear-gradient(135deg, #1b0229 0%, #2a0845 50%, #11001e 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.8), 0 0 35px rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.3);
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 1.15fr;
    gap: 20px;
    padding: 48px 40px;
    box-sizing: border-box;
    align-items: center;
    overflow: hidden;
}

/* Subtle Lighting inside Card */
.vp-ref-card-wave {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    opacity: 0.15;
}
.vp-ref-wave-1 {
    width: 550px;
    height: 550px;
    top: -150px;
    left: 15%;
    background: radial-gradient(circle, #ff007f 0%, transparent 70%);
    filter: blur(50px);
}
.vp-ref-wave-2 {
    width: 450px;
    height: 450px;
    bottom: -100px;
    right: 10%;
    background: radial-gradient(circle, #00f0ff 0%, transparent 70%);
    filter: blur(60px);
}

/* Left Content Inside Shape */
.vp-ref-card-left {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.vp-ref-sub-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 14px;
    background: rgba(0, 240, 255, 0.1);
    border: 1px solid rgba(0, 240, 255, 0.25);
    border-radius: 50px;
    backdrop-filter: blur(8px);
}

.vp-tag-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vp-ref-card-title {
    font-size: clamp(26px, 2.4vw, 38px);
    font-weight: 800;
    line-height: 1.18;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.vp-ref-card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 6px 0;
    max-width: 320px;
}

.vp-ref-cta-box {
    margin-bottom: 8px;
}

.vp-ref-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 8px 10px 8px 24px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50px;
    box-shadow: 0 8px 25px rgba(255, 0, 127, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.vp-ref-pill-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 35px rgba(255, 0, 127, 0.55);
    background: linear-gradient(135deg, #ff1a8c 0%, #8e3ee8 100%);
    color: #ffffff !important;
}

.vp-ref-btn-arrow {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.vp-ref-pill-btn:hover .vp-ref-btn-arrow {
    transform: translateX(3px);
}

/* Social Proof Badge */
.vp-ref-social-proof {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.vp-ref-avatar-stack {
    display: flex;
    align-items: center;
}

.vp-ref-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #200a35;
    margin-left: -7px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: #200a35;
}
.vp-ref-avatar:first-child {
    margin-left: 0;
}
.vp-ref-avatar.av-1 { background: #ffeaa7; color: #d63031; }
.vp-ref-avatar.av-2 { background: #74b9ff; color: #0984e3; }
.vp-ref-avatar.av-3 { background: #a29bfe; color: #6c5ce7; }
.vp-ref-avatar.av-4 { background: #55efc4; color: #00b894; }

.vp-ref-proof-text {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
}

.vp-ref-star-icon {
    color: #ffb703;
    font-size: 14px;
}

/* Center Void */
.vp-ref-card-center-void {
    width: 100%;
    min-height: 200px;
}

/* Right Content Inside Shape */
.vp-ref-card-right {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 18px;
}

/* 3 Micro Features */
.vp-ref-micro-features {
    display: flex;
    align-items: center;
    gap: 18px;
}

.vp-ref-micro-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
}

.vp-ref-micro-item i {
    font-size: 17px;
    color: #00f0ff;
}

.vp-ref-micro-item span {
    font-size: 11px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    max-width: 80px;
    line-height: 1.2;
}

/* Featured Batch Floating Glassmorphic Card */
.vp-ref-featured-card {
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 20px;
    padding: 14px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
    width: 100%;
    max-width: 235px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vp-ref-feat-label {
    font-size: 10px;
    font-weight: 800;
    color: #ffb703;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.vp-ref-feat-preview {
    width: 100%;
    height: 120px;
    border-radius: 14px;
    overflow: hidden;
    background: #000000;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.vp-ref-feat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vp-ref-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-ref-feat-title {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vp-ref-feat-sub {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 4px;
}

.vp-ref-feat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.vp-ref-feat-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.5);
    color: #ffffff !important;
}

/* ==========================================================================
   THE BIG VICKY PATEL BREAKOUT CUTOUT
   ========================================================================== */
.vp-ref-dancer-cutout-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: 100%;
    max-width: 440px;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.vp-ref-dancer-img {
    width: 100%;
    max-width: 380px;
    height: 610px;
    max-height: 630px;
    object-fit: contain;
    object-position: bottom center;
    display: block;
    filter: drop-shadow(0 15px 40px rgba(0, 0, 0, 0.85));
    transition: transform 0.4s ease;
}

.vp-ref-hero-stage:hover .vp-ref-dancer-img {
    transform: scale(1.02);
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1120px) {
    .vp-ref-top-header {
        padding: 0 10px;
    }
    .vp-ref-dancer-head-spacer {
        width: 300px;
        min-width: 240px;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr 0.7fr 1fr;
        padding: 40px 30px;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 380px;
    }
    .vp-ref-dancer-img {
        max-width: 330px;
        height: 520px;
    }
}

@media (max-width: 900px) {
    .vp-ref-top-header {
        margin-bottom: 20px;
        flex-direction: row;
        justify-content: space-between;
        gap: 15px;
        padding: 0;
    }
    .vp-ref-dancer-head-spacer {
        display: none;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr;
        padding: 40px 25px;
        gap: 30px;
    }
    .vp-ref-card-left {
        align-items: center;
        text-align: center;
    }
    .vp-ref-card-desc {
        max-width: 100%;
    }
    .vp-ref-card-center-void {
        display: none;
    }
    .vp-ref-card-right {
        align-items: center;
    }
    .vp-ref-featured-card {
        margin: 0 auto;
        max-width: 280px;
    }
    .vp-ref-dancer-cutout-container {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        max-width: 300px;
        margin: -60px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-width: 280px;
        height: 440px;
    }
}

@media (max-width: 600px) {
    .vp-ref-hero-stage {
        padding: 10px 12px 40px 12px;
    }
    .vp-ref-top-header {
        flex-direction: column;
        align-items: center;
        gap: 6px;
        margin-bottom: 20px;
    }
    .vp-ref-script-text {
        font-size: 28px;
    }
    .vp-ref-display-text {
        font-size: 46px;
    }
    .vp-ref-main-card {
        border-radius: 28px;
        padding: 30px 18px;
    }
    .vp-ref-card-title {
        font-size: 24px;
    }
    .vp-ref-card-desc {
        font-size: 13px;
    }
    .vp-ref-pill-btn {
        width: 100%;
        justify-content: space-between;
        padding: 8px 10px 8px 20px;
        box-sizing: border-box;
    }
    .vp-ref-micro-features {
        gap: 12px;
    }
    .vp-ref-micro-item span {
        font-size: 10px;
    }
    .vp-ref-featured-card {
        width: 100%;
        max-width: 100%;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 260px;
        margin: -40px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - PRECISE REFERENCE BREAKOUT HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-ref-hero-stage {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 20px 20px 60px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Stage Background Glows */
.vp-ref-bg-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vp-ref-glow-left {
    top: 0%;
    left: 5%;
    width: 400px;
    height: 280px;
    background: radial-gradient(circle, rgba(157, 78, 221, 0.5) 0%, transparent 70%);
}
.vp-ref-glow-right {
    top: 0%;
    right: 5%;
    width: 400px;
    height: 280px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.4) 0%, transparent 70%);
}

/* Top Editorial Split Typography - Level with Vicky's Head (Reference Style) */
.vp-ref-top-header {
    position: relative;
    z-index: 8;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin-bottom: -70px; /* Negative margin pulls the card up to Vicky's chest */
    user-select: none;
}

.vp-ref-typo-left {
    display: flex;
    align-items: baseline;
    gap: 12px;
    flex-shrink: 0;
}

.vp-ref-typo-right {
    display: flex;
    align-items: baseline;
    gap: 12px;
    flex-shrink: 0;
}

.vp-ref-script-text {
    font-size: clamp(28px, 3.2vw, 46px);
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.9);
}

.vp-ref-script-text.vp-italic {
    font-style: italic;
}

.vp-ref-display-text {
    font-size: clamp(52px, 6vw, 88px);
    font-weight: 900;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: -1px;
    line-height: 0.9;
    text-shadow: 0 4px 16px rgba(0, 0, 0, 0.95);
}

/* Center Gap exactly sized for Vicky's head */
.vp-ref-head-zone {
    width: 380px;
    flex-shrink: 0;
}

/* Card Wrapper */
.vp-ref-card-wrapper {
    position: relative;
    width: 100%;
    z-index: 5;
}

/* The Rounded Horizontal Shape (Central Container) */
.vp-ref-main-card {
    position: relative;
    width: 100%;
    min-height: 480px;
    border-radius: 42px;
    background: linear-gradient(135deg, #1b0229 0%, #2a0845 50%, #11001e 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.85), 0 0 35px rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.35);
    display: grid;
    grid-template-columns: 1.15fr 0.9fr 1.15fr;
    gap: 20px;
    padding: 60px 44px 44px 44px;
    box-sizing: border-box;
    align-items: center;
    overflow: hidden;
}

/* Subtle Lighting inside Card */
.vp-ref-card-wave {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    opacity: 0.15;
}
.vp-ref-wave-1 {
    width: 550px;
    height: 550px;
    top: -150px;
    left: 15%;
    background: radial-gradient(circle, #ff007f 0%, transparent 70%);
    filter: blur(50px);
}
.vp-ref-wave-2 {
    width: 450px;
    height: 450px;
    bottom: -100px;
    right: 10%;
    background: radial-gradient(circle, #00f0ff 0%, transparent 70%);
    filter: blur(60px);
}

/* Left Content Inside Shape */
.vp-ref-card-left {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
}

.vp-ref-sub-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 6px 14px;
    background: rgba(0, 240, 255, 0.1);
    border: 1px solid rgba(0, 240, 255, 0.25);
    border-radius: 50px;
    backdrop-filter: blur(8px);
}

.vp-tag-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vp-ref-card-title {
    font-size: clamp(26px, 2.4vw, 38px);
    font-weight: 800;
    line-height: 1.18;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 15px rgba(0, 0, 0, 0.4);
}

.vp-ref-card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 6px 0;
    max-width: 320px;
}

.vp-ref-cta-box {
    margin-bottom: 8px;
}

.vp-ref-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 8px 10px 8px 24px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 700;
    border-radius: 50px;
    box-shadow: 0 8px 25px rgba(255, 0, 127, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.25);
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.vp-ref-pill-btn:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 12px 35px rgba(255, 0, 127, 0.55);
    background: linear-gradient(135deg, #ff1a8c 0%, #8e3ee8 100%);
    color: #ffffff !important;
}

.vp-ref-btn-arrow {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.25);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: transform 0.3s ease;
}

.vp-ref-pill-btn:hover .vp-ref-btn-arrow {
    transform: translateX(3px);
}

/* Social Proof Badge */
.vp-ref-social-proof {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.vp-ref-avatar-stack {
    display: flex;
    align-items: center;
}

.vp-ref-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #200a35;
    margin-left: -7px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: #200a35;
}
.vp-ref-avatar:first-child {
    margin-left: 0;
}
.vp-ref-avatar.av-1 { background: #ffeaa7; color: #d63031; }
.vp-ref-avatar.av-2 { background: #74b9ff; color: #0984e3; }
.vp-ref-avatar.av-3 { background: #a29bfe; color: #6c5ce7; }
.vp-ref-avatar.av-4 { background: #55efc4; color: #00b894; }

.vp-ref-proof-text {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
}

.vp-ref-star-icon {
    color: #ffb703;
    font-size: 14px;
}

/* Center Void */
.vp-ref-card-center-void {
    width: 100%;
    min-height: 200px;
}

/* Right Content Inside Shape */
.vp-ref-card-right {
    position: relative;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 18px;
}

/* 3 Micro Features */
.vp-ref-micro-features {
    display: flex;
    align-items: center;
    gap: 18px;
}

.vp-ref-micro-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
}

.vp-ref-micro-item i {
    font-size: 17px;
    color: #00f0ff;
}

.vp-ref-micro-item span {
    font-size: 11px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
    max-width: 80px;
    line-height: 1.2;
}

/* Featured Batch Floating Glassmorphic Card */
.vp-ref-featured-card {
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 20px;
    padding: 14px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
    width: 100%;
    max-width: 235px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.vp-ref-feat-label {
    font-size: 10px;
    font-weight: 800;
    color: #ffb703;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.vp-ref-feat-preview {
    width: 100%;
    height: 120px;
    border-radius: 14px;
    overflow: hidden;
    background: #000000;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.vp-ref-feat-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.vp-ref-feat-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vp-ref-feat-title {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vp-ref-feat-sub {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 4px;
}

.vp-ref-feat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 700;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.vp-ref-feat-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.5);
    color: #ffffff !important;
}

/* ==========================================================================
   THE VICKY PATEL BREAKOUT CUTOUT (LEVEL WITH TYPOGRAPHY & OVERLAPPING CARD)
   ========================================================================== */
.vp-ref-dancer-cutout-container {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: 100%;
    max-width: 440px;
    pointer-events: none;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.vp-ref-dancer-img {
    width: 100%;
    max-width: 390px;
    height: 620px;
    max-height: 640px;
    object-fit: contain;
    object-position: bottom center;
    display: block;
    filter: drop-shadow(0 15px 40px rgba(0, 0, 0, 0.9));
    transition: transform 0.4s ease;
}

.vp-ref-hero-stage:hover .vp-ref-dancer-img {
    transform: scale(1.02);
}

/* ==========================================================================
   RESPONSIVE DESIGN (TABLET & MOBILE)
   ========================================================================== */

@media (max-width: 1120px) {
    .vp-ref-top-header {
        padding: 0;
        margin-bottom: -40px;
    }
    .vp-ref-head-zone {
        width: 260px;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr 0.7fr 1fr;
        padding: 40px 30px;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 380px;
    }
    .vp-ref-dancer-img {
        max-width: 330px;
        height: 520px;
    }
}

@media (max-width: 900px) {
    .vp-ref-top-header {
        margin-bottom: 20px;
        flex-direction: row;
        justify-content: space-between;
        gap: 15px;
        padding: 0;
    }
    .vp-ref-head-zone {
        display: none;
    }
    .vp-ref-main-card {
        grid-template-columns: 1fr;
        padding: 40px 25px;
        gap: 30px;
    }
    .vp-ref-card-left {
        align-items: center;
        text-align: center;
    }
    .vp-ref-card-desc {
        max-width: 100%;
    }
    .vp-ref-card-center-void {
        display: none;
    }
    .vp-ref-card-right {
        align-items: center;
    }
    .vp-ref-featured-card {
        margin: 0 auto;
        max-width: 280px;
    }
    .vp-ref-dancer-cutout-container {
        position: relative;
        bottom: auto;
        left: auto;
        transform: none;
        max-width: 300px;
        margin: -60px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-width: 280px;
        height: 440px;
    }
}

@media (max-width: 600px) {
    .vp-ref-hero-stage {
        padding: 10px 12px 40px 12px;
    }
    .vp-ref-top-header {
        flex-direction: column;
        align-items: center;
        gap: 6px;
        margin-bottom: 20px;
    }
    .vp-ref-script-text {
        font-size: 28px;
    }
    .vp-ref-display-text {
        font-size: 46px;
    }
    .vp-ref-main-card {
        border-radius: 28px;
        padding: 30px 18px;
    }
    .vp-ref-card-title {
        font-size: 24px;
    }
    .vp-ref-card-desc {
        font-size: 13px;
    }
    .vp-ref-pill-btn {
        width: 100%;
        justify-content: space-between;
        padding: 8px 10px 8px 20px;
        box-sizing: border-box;
    }
    .vp-ref-micro-features {
        gap: 12px;
    }
    .vp-ref-micro-item span {
        font-size: 10px;
    }
    .vp-ref-featured-card {
        width: 100%;
        max-width: 100%;
    }
    .vp-ref-dancer-cutout-container {
        max-width: 260px;
        margin: -40px auto 10px auto;
    }
    .vp-ref-dancer-img {
        max-height: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - REVERTED EXACT SCREENSHOT HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 30px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(110px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.45;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, #ff007f 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 450px;
    height: 350px;
    background: radial-gradient(circle, #7928ca 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, #00f0ff 0%, transparent 70%);
}

/* Top Split Arch Headline */
.vpr-split-header {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 25px;
    user-select: none;
}

.vpr-title-side {
    display: flex;
    align-items: baseline;
    flex-shrink: 0;
}

.vpr-huge-text {
    font-size: clamp(38px, 4.8vw, 76px);
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.85);
}

.vpr-huge-accent {
    background: linear-gradient(135deg, #ff007f 0%, #ff758c 50%, #ffb703 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 0 25px rgba(255, 0, 127, 0.45));
    margin-left: 12px;
}

.vpr-center-spacer {
    width: 380px;
    flex-shrink: 0;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1.1fr 1fr 1.1fr;
    gap: 32px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 16px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-headline {
    font-size: clamp(32px, 3.2vw, 48px);
    font-weight: 800;
    line-height: 1.15;
    color: #ffffff;
    margin: 0 0 16px 0;
    letter-spacing: -0.5px;
}

.vpr-lead-subtext {
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.8);
    margin: 0 0 24px 0;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 24px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.45);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.6);
    color: #ffffff !important;
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Vicky's Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8), 0 0 45px rgba(255, 0, 127, 0.35);
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #e5e7eb;
}

.vpr-hero-photo {
    width: 100%;
    height: auto;
    max-height: 520px;
    object-fit: cover;
    object-position: top center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.9);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #ffb703);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(121, 40, 202, 0.3);
    border: 1px solid rgba(121, 40, 202, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00f0ff;
    font-size: 16px;
    flex-shrink: 0;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-center-spacer {
        width: 300px;
    }
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-split-header {
        flex-direction: column;
        align-items: center;
        gap: 8px;
        margin-bottom: 20px;
    }
    .vpr-center-spacer {
        display: none;
    }
    .vpr-huge-text {
        font-size: 38px;
    }
    .vpr-center-card-frame {
        max-width: 320px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - THEME COLOR HEADLINE HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 30px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(110px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 450px;
    height: 350px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Top Split Arch Headline - Theme Color & Clean Readability (No Over-Glow) */
.vpr-split-header {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 25px;
    user-select: none;
}

.vpr-title-side {
    display: flex;
    align-items: baseline;
    flex-shrink: 0;
}

.vpr-huge-text {
    font-size: clamp(38px, 4.8vw, 76px);
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.9);
}

/* ME in Signature Electric Magenta to Violet */
.vpr-title-left .vpr-huge-accent {
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 50%, #9d4edd 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 2px 8px rgba(255, 0, 127, 0.3));
    margin-left: 14px;
}

/* DANCE in Signature Electric Cyan to Magenta */
.vpr-title-right .vpr-huge-accent {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #7928ca 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 2px 8px rgba(0, 240, 255, 0.3));
    margin-left: 14px;
}

.vpr-center-spacer {
    width: 380px;
    flex-shrink: 0;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1.1fr 1fr 1.1fr;
    gap: 32px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 16px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-headline {
    font-size: clamp(32px, 3.2vw, 48px);
    font-weight: 800;
    line-height: 1.15;
    color: #ffffff;
    margin: 0 0 16px 0;
    letter-spacing: -0.5px;
}

.vpr-lead-subtext {
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.8);
    margin: 0 0 24px 0;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 24px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Vicky's Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8), 0 0 35px rgba(255, 0, 127, 0.25);
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #e5e7eb;
}

.vpr-hero-photo {
    width: 100%;
    height: auto;
    max-height: 520px;
    object-fit: cover;
    object-position: top center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(121, 40, 202, 0.3);
    border: 1px solid rgba(121, 40, 202, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00f0ff;
    font-size: 16px;
    flex-shrink: 0;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-center-spacer {
        width: 300px;
    }
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-split-header {
        flex-direction: column;
        align-items: center;
        gap: 8px;
        margin-bottom: 20px;
    }
    .vpr-center-spacer {
        display: none;
    }
    .vpr-huge-text {
        font-size: 38px;
    }
    .vpr-center-card-frame {
        max-width: 320px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - PURE VIBRANT GRADIENT HEADLINE HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 30px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(110px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 450px;
    height: 350px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Top Split Arch Headline - Pure Vibrant Gradients (No Black Shadow Inside) */
.vpr-split-header {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 25px;
    user-select: none;
}

.vpr-title-side {
    display: flex;
    align-items: baseline;
    flex-shrink: 0;
}

.vpr-huge-text {
    font-size: clamp(38px, 4.8vw, 76px);
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

/* Clear text-shadow on gradient clipped words to remove any black inner smudges */
.vpr-huge-accent {
    text-shadow: none !important;
    filter: none !important;
    display: inline-block;
}

/* ME in Pure Clean Vibrant Electric Magenta */
.vpr-title-left .vpr-huge-accent {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-left: 14px;
}

/* DANCE in Pure Clean Vibrant Electric Cyan */
.vpr-title-right .vpr-huge-accent {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-left: 14px;
}

.vpr-center-spacer {
    width: 380px;
    flex-shrink: 0;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1.1fr 1fr 1.1fr;
    gap: 32px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 16px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-headline {
    font-size: clamp(32px, 3.2vw, 48px);
    font-weight: 800;
    line-height: 1.15;
    color: #ffffff;
    margin: 0 0 16px 0;
    letter-spacing: -0.5px;
}

.vpr-lead-subtext {
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.8);
    margin: 0 0 24px 0;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 24px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Vicky's Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8), 0 0 35px rgba(255, 0, 127, 0.25);
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #e5e7eb;
}

.vpr-hero-photo {
    width: 100%;
    height: auto;
    max-height: 520px;
    object-fit: cover;
    object-position: top center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(121, 40, 202, 0.3);
    border: 1px solid rgba(121, 40, 202, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00f0ff;
    font-size: 16px;
    flex-shrink: 0;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-center-spacer {
        width: 300px;
    }
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-split-header {
        flex-direction: column;
        align-items: center;
        gap: 8px;
        margin-bottom: 20px;
    }
    .vpr-center-spacer {
        display: none;
    }
    .vpr-huge-text {
        font-size: 38px;
    }
    .vpr-center-card-frame {
        max-width: 320px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - VECTOR TOPIC ICONS HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 30px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(110px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 450px;
    height: 350px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 400px;
    height: 300px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Top Split Arch Headline - Pure Vibrant Gradients (No Black Shadow Inside) */
.vpr-split-header {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 25px;
    user-select: none;
}

.vpr-title-side {
    display: flex;
    align-items: baseline;
    flex-shrink: 0;
}

.vpr-huge-text {
    font-size: clamp(38px, 4.8vw, 76px);
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

/* Clear text-shadow on gradient clipped words to remove any black inner smudges */
.vpr-huge-accent {
    text-shadow: none !important;
    filter: none !important;
    display: inline-block;
}

/* ME in Pure Clean Vibrant Electric Magenta */
.vpr-title-left .vpr-huge-accent {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-left: 14px;
}

/* DANCE in Pure Clean Vibrant Electric Cyan */
.vpr-title-right .vpr-huge-accent {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-left: 14px;
}

.vpr-center-spacer {
    width: 380px;
    flex-shrink: 0;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1.1fr 1fr 1.1fr;
    gap: 32px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 16px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-headline {
    font-size: clamp(32px, 3.2vw, 48px);
    font-weight: 800;
    line-height: 1.15;
    color: #ffffff;
    margin: 0 0 16px 0;
    letter-spacing: -0.5px;
}

.vpr-lead-subtext {
    font-size: 15px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.8);
    margin: 0 0 24px 0;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 24px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Vicky's Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8), 0 0 35px rgba(255, 0, 127, 0.25);
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #e5e7eb;
}

.vpr-hero-photo {
    width: 100%;
    height: auto;
    max-height: 520px;
    object-fit: cover;
    object-position: top center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

/* Vector Topic Icons - Crisp, Glowing & Perfectly Centered */
.vpr-feat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover .vpr-feat-icon {
    background: rgba(121, 40, 202, 0.45);
    border-color: rgba(0, 240, 255, 0.6);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.35);
}

.vpr-feat-icon svg {
    display: block;
    width: 22px;
    height: 22px;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-center-spacer {
        width: 300px;
    }
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-split-header {
        flex-direction: column;
        align-items: center;
        gap: 8px;
        margin-bottom: 20px;
    }
    .vpr-center-spacer {
        display: none;
    }
    .vpr-huge-text {
        font-size: 38px;
    }
    .vpr-center-card-frame {
        max-width: 320px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - UNIFIED SINGLE LINE ANTHEM HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 20px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Centered Single-Line Anthem Headline */
.vpr-unified-header {
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

.vpr-anthem-title {
    font-size: clamp(34px, 4.4vw, 68px);
    font-weight: 900;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr 1.25fr 1fr;
    gap: 28px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 16px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-headline {
    font-size: clamp(30px, 3vw, 44px);
    font-weight: 800;
    line-height: 1.15;
    color: #ffffff;
    margin: 0 0 16px 0;
    letter-spacing: -0.5px;
}

.vpr-lead-subtext {
    font-size: 14.5px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.8);
    margin: 0 0 24px 0;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 24px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Prominent Large Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.85), 0 0 40px rgba(255, 0, 127, 0.3);
    width: 100%;
    max-width: 520px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #110220;
    width: 100%;
}

.vpr-hero-photo {
    width: 100%;
    height: auto;
    min-height: 400px;
    max-height: 520px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover .vpr-feat-icon {
    background: rgba(121, 40, 202, 0.45);
    border-color: rgba(0, 240, 255, 0.6);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.35);
}

.vpr-feat-icon svg {
    display: block;
    width: 22px;
    height: 22px;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 32px;
        gap: 8px 12px;
    }
    .vpr-center-card-frame {
        max-width: 340px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - CLEAN LEFT COLUMN HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 20px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Centered Single-Line Anthem Headline */
.vpr-unified-header {
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

.vpr-anthem-title {
    font-size: clamp(34px, 4.4vw, 68px);
    font-weight: 900;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr 1.25fr 1fr;
    gap: 28px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 8px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-subtext {
    font-size: 16px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 20px 0;
    max-width: 330px;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 20px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Prominent Large Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.85), 0 0 40px rgba(255, 0, 127, 0.3);
    width: 100%;
    max-width: 520px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #110220;
    width: 100%;
}

.vpr-hero-photo {
    width: 100%;
    height: auto;
    min-height: 400px;
    max-height: 520px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover .vpr-feat-icon {
    background: rgba(121, 40, 202, 0.45);
    border-color: rgba(0, 240, 255, 0.6);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.35);
}

.vpr-feat-icon svg {
    display: block;
    width: 22px;
    height: 22px;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 32px;
        gap: 8px 12px;
    }
    .vpr-center-card-frame {
        max-width: 340px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - HORIZONTAL 16:9 CENTERPIECE HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 20px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Centered Single-Line Anthem Headline */
.vpr-unified-header {
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

.vpr-anthem-title {
    font-size: clamp(34px, 4.4vw, 68px);
    font-weight: 900;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr 1.35fr 1fr;
    gap: 28px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 8px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-subtext {
    font-size: 16px;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 20px 0;
    max-width: 330px;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 20px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Native Horizontal 16:9 Widescreen Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 26px;
    padding: 3px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.85), 0 0 35px rgba(255, 0, 127, 0.25);
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 23px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 23px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover .vpr-feat-icon {
    background: rgba(121, 40, 202, 0.45);
    border-color: rgba(0, 240, 255, 0.6);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.35);
}

.vpr-feat-icon svg {
    display: block;
    width: 22px;
    height: 22px;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 32px;
        gap: 8px 12px;
    }
    .vpr-center-card-frame {
        max-width: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - COMPACT OPTION 4 HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 20px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Centered Single-Line Anthem Headline */
.vpr-unified-header {
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

.vpr-anthem-title {
    font-size: clamp(34px, 4.4vw, 68px);
    font-weight: 900;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr 1.35fr 1fr;
    gap: 28px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(0, 240, 255, 0.08);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 50px;
    color: #00f0ff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 16px;
    backdrop-filter: blur(8px);
}

.vpr-pulsing-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 10px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

.vpr-lead-subtext {
    font-size: 17px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.9);
    margin: 0 0 24px 0;
    max-width: 320px;
}

.vpr-highlight {
    color: #ffb703;
    font-weight: 700;
}

.vpr-cta-wrapper {
    margin-bottom: 22px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Native Horizontal 16:9 Widescreen Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 26px;
    padding: 3px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.85), 0 0 35px rgba(255, 0, 127, 0.25);
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 23px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 23px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover .vpr-feat-icon {
    background: rgba(121, 40, 202, 0.45);
    border-color: rgba(0, 240, 255, 0.6);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.35);
}

.vpr-feat-icon svg {
    display: block;
    width: 22px;
    height: 22px;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 32px;
        gap: 8px 12px;
    }
    .vpr-center-card-frame {
        max-width: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - MERGED LEFT HEADLINE HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 20px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Centered Single-Line Anthem Headline */
.vpr-unified-header {
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

.vpr-anthem-title {
    font-size: clamp(34px, 4.4vw, 68px);
    font-weight: 900;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr 1.35fr 1fr;
    gap: 28px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-merged-heading {
    font-size: clamp(22px, 2.2vw, 30px);
    font-weight: 800;
    line-height: 1.35;
    color: #ffffff;
    margin: 0 0 24px 0;
    letter-spacing: -0.3px;
    max-width: 360px;
}

.vpr-cyan-highlight {
    color: #00f0ff;
}

.vpr-gold-highlight {
    color: #ffb703;
}

.vpr-cta-wrapper {
    margin-bottom: 22px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Native Horizontal 16:9 Widescreen Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 26px;
    padding: 3px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.85), 0 0 35px rgba(255, 0, 127, 0.25);
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 23px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 23px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column */
.vpr-col-right {
    display: flex;
    flex-direction: column;
}

.vpr-feature-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 20px;
}

.vpr-feature-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(0, 240, 255, 0.3);
    transform: translateX(4px);
}

.vpr-feat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: rgba(121, 40, 202, 0.25);
    border: 1px solid rgba(157, 78, 221, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.vpr-feature-item:hover .vpr-feat-icon {
    background: rgba(121, 40, 202, 0.45);
    border-color: rgba(0, 240, 255, 0.6);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.35);
}

.vpr-feat-icon svg {
    display: block;
    width: 22px;
    height: 22px;
}

.vpr-feat-info {
    display: flex;
    flex-direction: column;
}

.vpr-feat-info strong {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-feat-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Floating Live Batch Card */
.vpr-batch-card {
    padding: 22px;
    background: rgba(18, 4, 32, 0.85);
    border: 1px solid rgba(0, 240, 255, 0.3);
    border-radius: 22px;
    backdrop-filter: blur(16px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.15);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 10px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 4px 0;
}

.vpr-batch-desc {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.7);
    margin: 0 0 18px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 32px;
        gap: 8px 12px;
    }
    .vpr-center-card-frame {
        max-width: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - STREAMLINED HERO & WHY CHOOSE PILLARS (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 20px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Centered Single-Line Anthem Headline */
.vpr-unified-header {
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

.vpr-anthem-title {
    font-size: clamp(34px, 4.4vw, 68px);
    font-weight: 900;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr 1.35fr 1fr;
    gap: 28px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-merged-heading {
    font-size: clamp(22px, 2.2vw, 30px);
    font-weight: 800;
    line-height: 1.35;
    color: #ffffff;
    margin: 0 0 24px 0;
    letter-spacing: -0.3px;
    max-width: 360px;
}

.vpr-cyan-highlight {
    color: #00f0ff;
}

.vpr-gold-highlight {
    color: #ffb703;
}

.vpr-cta-wrapper {
    margin-bottom: 22px;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Center Column (Native Horizontal 16:9 Widescreen Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 26px;
    padding: 3px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.85), 0 0 35px rgba(255, 0, 127, 0.25);
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 23px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 23px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column (Live Batch Card) */
.vpr-col-right {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.vpr-batch-card {
    padding: 26px;
    background: rgba(18, 4, 32, 0.85);
    border: 1.5px solid rgba(0, 240, 255, 0.35);
    border-radius: 24px;
    backdrop-filter: blur(16px);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.65), 0 0 30px rgba(0, 240, 255, 0.2);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 12px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 20px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 6px 0;
}

.vpr-batch-desc {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.75);
    margin: 0 0 20px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 22px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* ==========================================================================
   WHY CHOOSE US - 3 PILLARS GRID SECTION
   ========================================================================== */
.vp-why-pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    width: 100%;
    max-width: 1200px;
    margin: 30px auto 40px auto;
    box-sizing: border-box;
}

.vp-pillar-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 28px 24px;
    background: rgba(18, 4, 32, 0.65);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    backdrop-filter: blur(14px);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4);
    transition: all 0.35s ease;
}

.vp-pillar-card:hover {
    transform: translateY(-6px);
    background: rgba(26, 8, 44, 0.85);
    border-color: rgba(0, 240, 255, 0.4);
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.2);
}

.vp-pillar-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
}

.vp-icon-cyan {
    background: rgba(0, 240, 255, 0.12);
    border: 1px solid rgba(0, 240, 255, 0.4);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.25);
}

.vp-icon-gold {
    background: rgba(255, 183, 3, 0.12);
    border: 1px solid rgba(255, 183, 3, 0.4);
    box-shadow: 0 0 15px rgba(255, 183, 3, 0.25);
}

.vp-icon-magenta {
    background: rgba(255, 0, 127, 0.12);
    border: 1px solid rgba(255, 0, 127, 0.4);
    box-shadow: 0 0 15px rgba(255, 0, 127, 0.25);
}

.vp-pillar-title {
    font-size: 19px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 10px 0;
    line-height: 1.25;
}

.vp-pillar-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
    .vp-why-pillars-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 32px;
        gap: 8px 12px;
    }
    .vpr-center-card-frame {
        max-width: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - SWAPPED SOCIAL PROOF & CTA HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 20px 20px 70px 20px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(120px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.35;
}
.vpr-glow-left {
    top: 5%;
    left: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.6) 0%, transparent 70%);
}
.vpr-glow-center {
    top: 25%;
    left: 35%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(121, 40, 202, 0.5) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 5%;
    right: 2%;
    width: 420px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Centered Single-Line Anthem Headline */
.vpr-unified-header {
    position: relative;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-bottom: 35px;
    text-align: center;
}

.vpr-anthem-title {
    font-size: clamp(34px, 4.4vw, 68px);
    font-weight: 900;
    letter-spacing: -1px;
    text-transform: uppercase;
    line-height: 1.1;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px 20px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Main 3-Column Hero Grid */
.vpr-hero-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1fr 1.35fr 1fr;
    gap: 28px;
    align-items: center;
    width: 100%;
}

/* Left Column */
.vpr-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.vpr-merged-heading {
    font-size: clamp(22px, 2.2vw, 30px);
    font-weight: 800;
    line-height: 1.35;
    color: #ffffff;
    margin: 0 0 20px 0;
    letter-spacing: -0.3px;
    max-width: 360px;
}

.vpr-cyan-highlight {
    color: #00f0ff;
}

.vpr-gold-highlight {
    color: #ffb703;
}

.vpr-social-proof-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 20px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
    margin-bottom: 22px;
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

.vpr-cta-wrapper {
    margin-bottom: 0;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 32px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

/* Center Column (Native Horizontal 16:9 Widescreen Photo Card) */
.vpr-col-center {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vpr-center-card-frame {
    position: relative;
    border-radius: 26px;
    padding: 3px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.85), 0 0 35px rgba(255, 0, 127, 0.25);
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 23px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 23px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 22px;
    background: rgba(18, 4, 32, 0.92);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* Right Column (Live Batch Card) */
.vpr-col-right {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.vpr-batch-card {
    padding: 26px;
    background: rgba(18, 4, 32, 0.85);
    border: 1.5px solid rgba(0, 240, 255, 0.35);
    border-radius: 24px;
    backdrop-filter: blur(16px);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.65), 0 0 30px rgba(0, 240, 255, 0.2);
}

.vpr-batch-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.vpr-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    color: #00f0ff;
    text-transform: uppercase;
}

.vpr-ping {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
}

.vpr-batch-badge {
    padding: 4px 12px;
    background: rgba(255, 183, 3, 0.15);
    border: 1px solid rgba(255, 183, 3, 0.4);
    border-radius: 50px;
    color: #ffb703;
    font-size: 11px;
    font-weight: 700;
}

.vpr-batch-title {
    font-size: 20px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 6px 0;
}

.vpr-batch-desc {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.75);
    margin: 0 0 20px 0;
}

.vpr-batch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 22px;
    background: linear-gradient(135deg, #00f0ff 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.35);
    transition: all 0.3s ease;
}

.vpr-batch-btn:hover {
    background: linear-gradient(135deg, #2bf4ff 0%, #8e3ee8 100%);
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.55);
    color: #ffffff !important;
}

/* ==========================================================================
   WHY CHOOSE US - 3 PILLARS GRID SECTION
   ========================================================================== */
.vp-why-pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    width: 100%;
    max-width: 1200px;
    margin: 30px auto 40px auto;
    box-sizing: border-box;
}

.vp-pillar-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 28px 24px;
    background: rgba(18, 4, 32, 0.65);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    backdrop-filter: blur(14px);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4);
    transition: all 0.35s ease;
}

.vp-pillar-card:hover {
    transform: translateY(-6px);
    background: rgba(26, 8, 44, 0.85);
    border-color: rgba(0, 240, 255, 0.4);
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.2);
}

.vp-pillar-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
}

.vp-icon-cyan {
    background: rgba(0, 240, 255, 0.12);
    border: 1px solid rgba(0, 240, 255, 0.4);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.25);
}

.vp-icon-gold {
    background: rgba(255, 183, 3, 0.12);
    border: 1px solid rgba(255, 183, 3, 0.4);
    box-shadow: 0 0 15px rgba(255, 183, 3, 0.25);
}

.vp-icon-magenta {
    background: rgba(255, 0, 127, 0.12);
    border: 1px solid rgba(255, 0, 127, 0.4);
    box-shadow: 0 0 15px rgba(255, 0, 127, 0.25);
}

.vp-pillar-title {
    font-size: 19px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 10px 0;
    line-height: 1.25;
}

.vp-pillar-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vpr-hero-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vpr-col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-col-center {
        order: -1;
    }
    .vp-why-pillars-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 32px;
        gap: 8px 12px;
    }
    .vpr-center-card-frame {
        max-width: 360px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - MODERN 2-COLUMN SPLIT HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 30px 24px 80px 24px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(130px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.38;
}
.vpr-glow-left {
    top: 5%;
    left: 0%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.55) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 10%;
    right: 0%;
    width: 520px;
    height: 420px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Main 2-Column Hero Grid */
.vp-2col-grid {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1.05fr 1.18fr;
    gap: 52px;
    align-items: center;
    width: 100%;
}

/* Left Side: Content & Action Hub */
.vp-2col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

/* Brand Anthem Headline */
.vpr-anthem-title {
    font-size: clamp(32px, 3.6vw, 54px);
    font-weight: 900;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    line-height: 1.15;
    margin: 0 0 20px 0;
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px 14px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Value Proposition */
.vpr-merged-heading {
    font-size: clamp(19px, 1.8vw, 25px);
    font-weight: 700;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.9);
    margin: 0 0 24px 0;
    letter-spacing: -0.2px;
    max-width: 520px;
}

.vpr-cyan-highlight {
    color: #00f0ff;
    font-weight: 800;
}

.vpr-gold-highlight {
    color: #ffb703;
    font-weight: 800;
}

/* Social Proof Card */
.vpr-social-proof-card {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 12px 22px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
    margin-bottom: 30px;
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Dual CTA Buttons */
.vp-dual-cta {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 15px 34px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vp-secondary-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 26px;
    background: rgba(18, 4, 32, 0.85);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    color: #00f0ff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.2);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vp-secondary-btn:hover {
    background: rgba(0, 240, 255, 0.15);
    border-color: #00f0ff;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.35);
}

.vpr-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

/* Right Side: Big Cinematic Showcase Image */
.vp-2col-right {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vp-showcase-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.85), 0 0 45px rgba(255, 0, 127, 0.3);
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 24px;
    background: rgba(18, 4, 32, 0.94);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* ==========================================================================
   WHY CHOOSE US - 3 PILLARS GRID SECTION
   ========================================================================== */
.vp-why-pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    width: 100%;
    max-width: 1200px;
    margin: 30px auto 40px auto;
    box-sizing: border-box;
}

.vp-pillar-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 28px 24px;
    background: rgba(18, 4, 32, 0.65);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    backdrop-filter: blur(14px);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4);
    transition: all 0.35s ease;
}

.vp-pillar-card:hover {
    transform: translateY(-6px);
    background: rgba(26, 8, 44, 0.85);
    border-color: rgba(0, 240, 255, 0.4);
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.2);
}

.vp-pillar-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
}

.vp-icon-cyan {
    background: rgba(0, 240, 255, 0.12);
    border: 1px solid rgba(0, 240, 255, 0.4);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.25);
}

.vp-icon-gold {
    background: rgba(255, 183, 3, 0.12);
    border: 1px solid rgba(255, 183, 3, 0.4);
    box-shadow: 0 0 15px rgba(255, 183, 3, 0.25);
}

.vp-icon-magenta {
    background: rgba(255, 0, 127, 0.12);
    border: 1px solid rgba(255, 0, 127, 0.4);
    box-shadow: 0 0 15px rgba(255, 0, 127, 0.25);
}

.vp-pillar-title {
    font-size: 19px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 10px 0;
    line-height: 1.25;
}

.vp-pillar-desc {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}

/* Responsive Design */
@media (max-width: 1080px) {
    .vp-2col-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .vp-2col-left {
        align-items: center;
        text-align: center;
    }
    .vpr-anthem-title {
        justify-content: center;
    }
    .vp-dual-cta {
        justify-content: center;
    }
    .vp-why-pillars-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: 28px;
        gap: 6px 10px;
    }
    .vp-showcase-frame {
        max-width: 380px;
    }
    .vp-dual-cta {
        flex-direction: column;
        width: 100%;
    }
    .vpr-primary-btn,
    .vp-secondary-btn {
        width: 100%;
        justify-content: center;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - RESPONSIVE 2-COLUMN SPLIT HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 30px 24px 80px 24px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(130px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.38;
}
.vpr-glow-left {
    top: 5%;
    left: 0%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.55) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 10%;
    right: 0%;
    width: 520px;
    height: 420px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Desktop Main Grid (min-width: 1025px) */
@media (min-width: 1025px) {
    .vp-2col-grid {
        position: relative;
        z-index: 5;
        display: grid;
        grid-template-columns: 1.05fr 1.18fr;
        grid-template-areas:
            "header image"
            "left   image";
        gap: 0px 52px;
        align-items: center;
        width: 100%;
    }

    .vp-hero-header-block {
        grid-area: header;
    }

    .vp-2col-left {
        grid-area: left;
    }

    .vp-2col-right {
        grid-area: image;
    }
}

/* Left Side & Header Elements */
.vp-hero-header-block {
    display: flex;
    flex-direction: column;
}

.vp-2col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

/* Brand Anthem Headline */
.vpr-anthem-title {
    font-size: clamp(32px, 3.6vw, 54px);
    font-weight: 900;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    line-height: 1.15;
    margin: 0 0 20px 0;
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px 14px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Value Proposition */
.vpr-merged-heading {
    font-size: clamp(19px, 1.8vw, 25px);
    font-weight: 700;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.9);
    margin: 0 0 24px 0;
    letter-spacing: -0.2px;
    max-width: 520px;
}

.vpr-cyan-highlight {
    color: #00f0ff;
    font-weight: 800;
}

.vpr-gold-highlight {
    color: #ffb703;
    font-weight: 800;
}

/* Social Proof Card */
.vpr-social-proof-card {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 12px 22px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
    margin-bottom: 30px;
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Dual CTA Buttons */
.vp-dual-cta {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 15px 34px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vp-secondary-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 26px;
    background: rgba(18, 4, 32, 0.85);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    color: #00f0ff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.2);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vp-secondary-btn:hover {
    background: rgba(0, 240, 255, 0.15);
    border-color: #00f0ff;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.35);
}

.vpr-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

/* Right Side: Big Cinematic Showcase Image */
.vp-2col-right {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vp-showcase-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.85), 0 0 45px rgba(255, 0, 127, 0.3);
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 24px;
    background: rgba(18, 4, 32, 0.94);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* ==========================================================================
   MOBILE & TABLET RESPONSIVE ORDERING (max-width: 1024px)
   1. Brand Headline ("TRUST ME YOU CAN DANCE")
   2. Large Centerpiece Image
   3. Value Proposition + Social Proof + Action CTAs
   ========================================================================== */
@media (max-width: 1024px) {
    .vp-reference-hero-container {
        padding: 20px 16px 50px 16px;
    }

    .vp-2col-grid {
        position: relative;
        z-index: 5;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 24px !important;
        width: 100% !important;
    }

    /* 1. Header on top */
    .vp-hero-header-block {
        order: 1 !important;
        width: 100% !important;
        text-align: center !important;
    }

    .vpr-anthem-title {
        justify-content: center !important;
        text-align: center !important;
        margin: 0 0 10px 0 !important;
    }

    /* 2. Image directly under headline */
    .vp-2col-right {
        order: 2 !important;
        width: 100% !important;
        margin: 10px 0 25px 0 !important;
    }

    .vp-showcase-frame {
        max-width: 520px !important;
    }

    /* 3. Value Proposition and CTAs below image */
    .vp-2col-left {
        order: 3 !important;
        width: 100% !important;
        align-items: center !important;
        text-align: center !important;
    }

    .vpr-merged-heading {
        text-align: center !important;
        margin: 0 auto 20px auto !important;
        max-width: 480px !important;
    }

    .vpr-social-proof-card {
        margin: 0 auto 24px auto !important;
    }

    .vp-dual-cta {
        justify-content: center !important;
        width: 100% !important;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: clamp(26px, 7vw, 36px) !important;
        gap: 6px 10px !important;
    }
    
    .vp-showcase-frame {
        max-width: 360px !important;
    }
    
    .vpr-merged-heading {
        font-size: 18px !important;
    }

    .vp-dual-cta {
        flex-direction: column !important;
        width: 100% !important;
        gap: 12px !important;
    }
    
    .vpr-primary-btn,
    .vp-secondary-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - 4-PILLAR WHY CHOOSE US & HERO (PAGE 520)
   ========================================================================== */

/* Hide old standalone banner container if present */
.vp-hide-standalone-banner,
.elementor-element-2df9381 {
    display: none !important;
}

/* Stage Container */
.vp-reference-hero-container {
    position: relative;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    padding: 30px 24px 80px 24px;
    box-sizing: border-box;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif;
    color: #ffffff;
    overflow: visible;
}

/* Ambient Radial Glows */
.vpr-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(130px);
    pointer-events: none;
    z-index: 1;
    opacity: 0.38;
}
.vpr-glow-left {
    top: 5%;
    left: 0%;
    width: 480px;
    height: 380px;
    background: radial-gradient(circle, rgba(255, 0, 127, 0.55) 0%, transparent 70%);
}
.vpr-glow-right {
    top: 10%;
    right: 0%;
    width: 520px;
    height: 420px;
    background: radial-gradient(circle, rgba(0, 240, 255, 0.5) 0%, transparent 70%);
}

/* Desktop Main Grid (min-width: 1025px) */
@media (min-width: 1025px) {
    .vp-2col-grid {
        position: relative;
        z-index: 5;
        display: grid;
        grid-template-columns: 1.05fr 1.18fr;
        grid-template-areas:
            "header image"
            "left   image";
        gap: 0px 52px;
        align-items: center;
        width: 100%;
    }

    .vp-hero-header-block {
        grid-area: header;
    }

    .vp-2col-left {
        grid-area: left;
    }

    .vp-2col-right {
        grid-area: image;
    }
}

/* Left Side & Header Elements */
.vp-hero-header-block {
    display: flex;
    flex-direction: column;
}

.vp-2col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

/* Brand Anthem Headline */
.vpr-anthem-title {
    font-size: clamp(32px, 3.6vw, 54px);
    font-weight: 900;
    letter-spacing: -0.5px;
    text-transform: uppercase;
    line-height: 1.15;
    margin: 0 0 20px 0;
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px 14px;
}

.vpr-word-white {
    color: #ffffff;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.85);
}

.vpr-word-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #ff2a8d 50%, #d946ef 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

.vpr-word-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #38bdf8 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: none !important;
    filter: none !important;
}

/* Value Proposition */
.vpr-merged-heading {
    font-size: clamp(19px, 1.8vw, 25px);
    font-weight: 700;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.9);
    margin: 0 0 24px 0;
    letter-spacing: -0.2px;
    max-width: 520px;
}

.vpr-cyan-highlight {
    color: #00f0ff;
    font-weight: 800;
}

.vpr-gold-highlight {
    color: #ffb703;
    font-weight: 800;
}

/* Social Proof Card */
.vpr-social-proof-card {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    padding: 12px 22px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    backdrop-filter: blur(12px);
    margin-bottom: 30px;
}

.vpr-stars {
    color: #ffb703;
    font-size: 16px;
    letter-spacing: 2px;
}

.vpr-proof-info {
    display: flex;
    flex-direction: column;
}

.vpr-proof-info strong {
    font-size: 14px;
    color: #ffffff;
}

.vpr-proof-info span {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
}

/* Dual CTA Buttons */
.vp-dual-cta {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.vpr-primary-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 15px 34px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 100%);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    box-shadow: 0 10px 30px rgba(255, 0, 127, 0.4);
    transition: all 0.3s ease;
}

.vpr-primary-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 35px rgba(255, 0, 127, 0.55);
    color: #ffffff !important;
}

.vpr-btn-icon {
    display: inline-block;
    transition: transform 0.3s ease;
}

.vpr-primary-btn:hover .vpr-btn-icon {
    transform: translateX(4px);
}

.vp-secondary-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 26px;
    background: rgba(18, 4, 32, 0.85);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    color: #00f0ff !important;
    text-decoration: none !important;
    border-radius: 50px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 8px 25px rgba(0, 240, 255, 0.2);
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
}

.vp-secondary-btn:hover {
    background: rgba(0, 240, 255, 0.15);
    border-color: #00f0ff;
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(0, 240, 255, 0.35);
}

.vpr-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #00f0ff;
    box-shadow: 0 0 8px #00f0ff;
    animation: vprPulse 2s infinite;
}

@keyframes vprPulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

/* Right Side: Big Cinematic Showcase Image */
.vp-2col-right {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%;
}

.vp-showcase-frame {
    position: relative;
    border-radius: 28px;
    padding: 4px;
    background: linear-gradient(135deg, #ff007f 0%, #7928ca 50%, #00f0ff 100%);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.85), 0 0 45px rgba(255, 0, 127, 0.3);
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
    overflow: visible;
}

.vpr-card-backdrop {
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background: #110220;
    z-index: 1;
}

.vpr-image-wrapper {
    position: relative;
    z-index: 2;
    border-radius: 24px;
    overflow: hidden;
    background: #110220;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.vpr-hero-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.vpr-floating-tag {
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 24px;
    background: rgba(18, 4, 32, 0.94);
    border: 1.5px solid rgba(0, 240, 255, 0.4);
    border-radius: 50px;
    backdrop-filter: blur(16px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7);
    z-index: 10;
    white-space: nowrap;
}

.vpr-tag-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff007f, #00f0ff);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 13px;
}

.vpr-tag-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

.vpr-tag-text strong {
    font-size: 13px;
    font-weight: 800;
    color: #ffffff;
    line-height: 1.2;
}

.vpr-tag-text span {
    font-size: 11px;
    color: #00f0ff;
    font-weight: 600;
}

/* ==========================================================================
   MOBILE & TABLET RESPONSIVE ORDERING (max-width: 1024px)
   ========================================================================== */
@media (max-width: 1024px) {
    .vp-reference-hero-container {
        padding: 20px 16px 50px 16px;
    }

    .vp-2col-grid {
        position: relative;
        z-index: 5;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 24px !important;
        width: 100% !important;
    }

    .vp-hero-header-block {
        order: 1 !important;
        width: 100% !important;
        text-align: center !important;
    }

    .vpr-anthem-title {
        justify-content: center !important;
        text-align: center !important;
        margin: 0 0 10px 0 !important;
    }

    .vp-2col-right {
        order: 2 !important;
        width: 100% !important;
        margin: 10px 0 25px 0 !important;
    }

    .vp-showcase-frame {
        max-width: 520px !important;
    }

    .vp-2col-left {
        order: 3 !important;
        width: 100% !important;
        align-items: center !important;
        text-align: center !important;
    }

    .vpr-merged-heading {
        text-align: center !important;
        margin: 0 auto 20px auto !important;
        max-width: 480px !important;
    }

    .vpr-social-proof-card {
        margin: 0 auto 24px auto !important;
    }

    .vp-dual-cta {
        justify-content: center !important;
        width: 100% !important;
    }
}

@media (max-width: 767px) {
    .vpr-anthem-title {
        font-size: clamp(26px, 7vw, 36px) !important;
        gap: 6px 10px !important;
    }
    
    .vp-showcase-frame {
        max-width: 360px !important;
    }
    
    .vpr-merged-heading {
        font-size: 18px !important;
    }

    .vp-dual-cta {
        flex-direction: column !important;
        width: 100% !important;
        gap: 12px !important;
    }
    
    .vpr-primary-btn,
    .vp-secondary-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================================================
   WHY CHOOSE US - 4 PILLARS GRID SECTION
   ========================================================================== */
.vp-why-pillars-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
    max-width: 1320px;
    margin: 35px auto 40px auto;
    box-sizing: border-box;
}

.vp-pillar-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 26px 20px;
    background: rgba(18, 4, 32, 0.65);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    backdrop-filter: blur(14px);
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4);
    transition: all 0.35s ease;
}

.vp-pillar-card:hover {
    transform: translateY(-6px);
    background: rgba(26, 8, 44, 0.85);
    border-color: rgba(0, 240, 255, 0.4);
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.6), 0 0 25px rgba(0, 240, 255, 0.2);
}

.vp-pillar-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.3);
}

.vp-icon-purple {
    background: rgba(217, 70, 239, 0.12);
    border: 1px solid rgba(217, 70, 239, 0.4);
    box-shadow: 0 0 15px rgba(217, 70, 239, 0.25);
}

.vp-icon-cyan {
    background: rgba(0, 240, 255, 0.12);
    border: 1px solid rgba(0, 240, 255, 0.4);
    box-shadow: 0 0 15px rgba(0, 240, 255, 0.25);
}

.vp-icon-gold {
    background: rgba(255, 183, 3, 0.12);
    border: 1px solid rgba(255, 183, 3, 0.4);
    box-shadow: 0 0 15px rgba(255, 183, 3, 0.25);
}

.vp-icon-magenta {
    background: rgba(255, 0, 127, 0.12);
    border: 1px solid rgba(255, 0, 127, 0.4);
    box-shadow: 0 0 15px rgba(255, 0, 127, 0.25);
}

.vp-pillar-title {
    font-size: 18px;
    font-weight: 800;
    color: #ffffff;
    margin: 0 0 10px 0;
    line-height: 1.25;
}

.vp-pillar-desc {
    font-size: 13.5px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}

@media (max-width: 1180px) {
    .vp-why-pillars-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 640px) {
    .vp-why-pillars-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}


/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - FLAWLESS COMPACT BATCHES SECTION (PAGE 520)
   ========================================================================== */

.vp-batches-section-container {
    position: relative !important;
    width: 100% !important;
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 50px 20px 60px 20px !important;
    box-sizing: border-box !important;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif !important;
    color: #ffffff !important;
}

/* Header */
.vp-batches-header {
    text-align: center !important;
    margin-bottom: 28px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important;
}

.vp-batches-title {
    font-size: clamp(28px, 3.5vw, 44px) !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    letter-spacing: -0.5px !important;
    text-transform: uppercase !important;
    margin: 0 !important;
    line-height: 1.15 !important;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.6) !important;
}

/* Slim Glass Segmented Switch */
.vp-batches-toggle-wrapper {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}

.vp-batches-segmented-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 5px !important;
    background: rgba(14, 2, 24, 0.92) !important;
    border: 1.5px solid rgba(159, 51, 208, 0.45) !important;
    border-radius: 40px !important;
    backdrop-filter: blur(16px) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6), inset 0 2px 6px rgba(0, 0, 0, 0.5) !important;
    box-sizing: border-box !important;
    max-width: 360px !important;
    width: 100% !important;
}

.vp-batch-tab {
    flex: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 18px !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 30px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    user-select: none !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}

.vp-batch-tab:hover {
    color: #ffffff !important;
}

.vp-batch-tab.active#btn-batch-online {
    background: linear-gradient(135deg, #00f0ff 0%, #0072ff 100%) !important;
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.35) !important;
    box-shadow: 0 0 18px rgba(0, 240, 255, 0.55), 0 4px 12px rgba(0, 114, 255, 0.4) !important;
}

.vp-batch-tab.active#btn-batch-offline {
    background: linear-gradient(135deg, #ff007f 0%, #9333ea 100%) !important;
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.35) !important;
    box-shadow: 0 0 18px rgba(255, 0, 127, 0.55), 0 4px 12px rgba(147, 51, 234, 0.4) !important;
}

.vp-tab-icon {
    font-size: 15px !important;
    line-height: 1 !important;
}

/* Card Showcase Area */
.vp-batches-card-area {
    position: relative !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.vp-batch-card-pane {
    display: none !important;
    opacity: 0 !important;
    transform: translateY(8px) !important;
    transition: opacity 0.35s ease, transform 0.35s ease !important;
}

.vp-batch-card-pane.active {
    display: block !important;
    opacity: 1 !important;
    transform: translateY(0) !important;
    animation: vpCardFadeIn 0.35s cubic-bezier(0.4, 0, 0.2, 1) forwards !important;
}

@keyframes vpCardFadeIn {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Master Card Layout: Desktop 2-Column Split, Mobile Stack */
.vp-batch-master-card {
    display: grid !important;
    grid-template-columns: 1fr 1.15fr !important;
    gap: 0 !important;
    background: rgba(18, 3, 30, 0.92) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 28px !important;
    overflow: hidden !important;
    backdrop-filter: blur(16px) !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7) !important;
    box-sizing: border-box !important;
    transition: all 0.35s ease !important;
    width: 100% !important;
}

.vp-card-online {
    border-color: rgba(0, 240, 255, 0.35) !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7), 0 0 35px rgba(0, 240, 255, 0.18) !important;
}

.vp-card-offline {
    border-color: rgba(255, 0, 127, 0.35) !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7), 0 0 35px rgba(255, 0, 127, 0.18) !important;
}

/* Media Box */
.vp-batch-media-box {
    position: relative !important;
    width: 100% !important;
    min-height: 380px !important;
    background: #0d0118 !important;
    overflow: hidden !important;
}

.vp-batch-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.vp-badge-overlay {
    position: absolute !important;
    top: 18px !important;
    left: 18px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    padding: 6px 14px !important;
    border-radius: 20px !important;
    backdrop-filter: blur(8px) !important;
    text-transform: uppercase !important;
}

.vp-badge-cyan {
    background: rgba(0, 240, 255, 0.25) !important;
    border: 1px solid rgba(0, 240, 255, 0.6) !important;
    color: #00f0ff !important;
    box-shadow: 0 0 14px rgba(0, 240, 255, 0.4) !important;
}

.vp-badge-magenta {
    background: rgba(255, 0, 127, 0.25) !important;
    border: 1px solid rgba(255, 0, 127, 0.6) !important;
    color: #ff007f !important;
    box-shadow: 0 0 14px rgba(255, 0, 127, 0.4) !important;
}

/* Details Box */
.vp-batch-details-box {
    padding: 36px 32px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
}

.vp-batch-type-pill {
    display: inline-block !important;
    align-self: flex-start !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: 1px !important;
    padding: 5px 14px !important;
    border-radius: 30px !important;
    margin-bottom: 20px !important;
    text-transform: uppercase !important;
}

.vp-pill-cyan {
    color: #00f0ff !important;
    background: rgba(0, 240, 255, 0.12) !important;
    border: 1px solid rgba(0, 240, 255, 0.4) !important;
}

.vp-pill-magenta {
    color: #ff007f !important;
    background: rgba(255, 0, 127, 0.12) !important;
    border: 1px solid rgba(255, 0, 127, 0.4) !important;
}

/* Checklist */
.vp-batch-checklist {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 28px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 13px !important;
}

.vp-batch-checklist li {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    color: rgba(255, 255, 255, 0.9) !important;
    line-height: 1.35 !important;
}

.vp-check-circle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    border-radius: 50% !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

.vp-check-cyan {
    background: rgba(0, 240, 255, 0.18) !important;
    border: 1px solid #00f0ff !important;
    color: #00f0ff !important;
}

.vp-check-magenta {
    background: rgba(255, 0, 127, 0.18) !important;
    border: 1px solid #ff007f !important;
    color: #ff007f !important;
}

/* Action Box */
.vp-batch-bottom-action {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
}

.vp-batch-cta-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 13px 26px !important;
    border-radius: 30px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.4) !important;
}

.vp-cta-cyan {
    background: linear-gradient(135deg, #00f0ff 0%, #0072ff 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.35) !important;
}

.vp-cta-cyan:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 26px rgba(0, 240, 255, 0.55) !important;
    color: #ffffff !important;
}

.vp-cta-magenta {
    background: linear-gradient(135deg, #ff007f 0%, #9333ea 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
}

.vp-cta-magenta:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 26px rgba(255, 0, 127, 0.55) !important;
    color: #ffffff !important;
}

.vp-batch-status-text {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

/* ==========================================================================
   Responsive Mobile Adjustments
   ========================================================================== */
@media (max-width: 900px) {
    .vp-batches-section-container {
        padding: 40px 16px 50px 16px !important;
    }
    .vp-batch-master-card {
        grid-template-columns: 1fr !important;
    }
    .vp-batch-media-box {
        min-height: 240px !important;
        height: 240px !important;
    }
    .vp-batch-details-box {
        padding: 24px 20px 28px 20px !important;
    }
}

@media (max-width: 480px) {
    .vp-batches-segmented-pill {
        max-width: 320px !important;
        padding: 4px !important;
    }
    .vp-batch-tab {
        padding: 9px 12px !important;
        font-size: 12.5px !important;
        gap: 6px !important;
    }
    .vp-tab-icon {
        font-size: 14px !important;
    }
    .vp-batch-media-box {
        min-height: 200px !important;
        height: 200px !important;
    }
    .vp-batch-details-box {
        padding: 20px 16px 24px 16px !important;
    }
    .vp-batch-checklist li {
        font-size: 13.5px !important;
        gap: 10px !important;
    }
    .vp-batch-cta-button {
        width: 100% !important;
        padding: 12px 20px !important;
        font-size: 14px !important;
    }
    .vp-batch-status-text {
        width: 100% !important;
        text-align: center !important;
        font-size: 12.5px !important;
    }
}

/* ==========================================================================
   VICKY PATEL DANCE ACADEMY - CINEMATIC COMPACT APP SHOWCASE & MODAL
   ========================================================================== */

.vp-app-showcase-section {
    position: relative !important;
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 60px 20px 70px 20px !important;
    box-sizing: border-box !important;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif !important;
    color: #ffffff !important;
    overflow: hidden !important;
}

/* Ambient Neon Glow Orbs */
.vp-app-ambient-glow {
    position: absolute !important;
    border-radius: 50% !important;
    filter: blur(90px) !important;
    opacity: 0.35 !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

.vp-glow-cyan {
    top: 10% !important;
    left: 5% !important;
    width: 380px !important;
    height: 380px !important;
    background: radial-gradient(circle, #00f0ff 0%, rgba(0, 240, 255, 0) 70%) !important;
}

.vp-glow-magenta {
    bottom: 10% !important;
    right: 5% !important;
    width: 400px !important;
    height: 400px !important;
    background: radial-gradient(circle, #ff007f 0%, rgba(255, 0, 127, 0) 70%) !important;
}

.vp-app-container {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
}

/* Master Glassmorphic Frame */
.vp-app-master-frame {
    position: relative !important;
    background: linear-gradient(135deg, rgba(26, 4, 42, 0.95) 0%, rgba(14, 1, 24, 0.98) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.35) !important;
    border-radius: 32px !important;
    padding: 44px 40px !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.8), 0 0 50px rgba(217, 70, 239, 0.2) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Flowing Neon Border Beam */
.vp-beam-border {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent 0%, #00f0ff 30%, #d946ef 70%, transparent 100%) !important;
    animation: vpBeamFlow 4s infinite linear !important;
}

@keyframes vpBeamFlow {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

/* 2-Column Grid Layout */
.vp-app-grid {
    display: grid !important;
    grid-template-columns: 1.1fr 0.9fr !important;
    gap: 40px !important;
    align-items: center !important;
}

/* Left Content Column */
.vp-app-content-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.vp-app-pill-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 5px 14px !important;
    border-radius: 30px !important;
    background: rgba(255, 196, 46, 0.12) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    margin-bottom: 16px !important;
}

.vp-app-headline {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: clamp(28px, 3vw, 42px) !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.5px !important;
    color: #ffffff !important;
    margin: 0 0 24px 0 !important;
    text-align: left !important;
}

.vp-gradient-text {
    background: linear-gradient(90deg, #00f0ff 0%, #d946ef 50%, #ffc42e 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

/* 4-Card Features Grid */
.vp-app-features-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    margin-bottom: 28px !important;
}

.vp-feature-card {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    transition: all 0.3s ease !important;
}

.vp-feature-card:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(217, 70, 239, 0.4) !important;
    transform: translateY(-2px) !important;
}

.vp-feat-icon-box {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-feat-cyan {
    background: rgba(0, 240, 255, 0.18) !important;
    color: #00f0ff !important;
}

.vp-feat-magenta {
    background: rgba(255, 0, 127, 0.18) !important;
    color: #ff007f !important;
}

.vp-feat-gold {
    background: rgba(255, 196, 46, 0.18) !important;
    color: #ffc42e !important;
}

.vp-feat-purple {
    background: rgba(147, 51, 234, 0.22) !important;
    color: #c084fc !important;
}

.vp-feat-text {
    display: flex !important;
    flex-direction: column !important;
    line-height: 1.25 !important;
    text-align: left !important;
}

.vp-feat-text strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

.vp-feat-text span {
    font-size: 10.5px !important;
    color: rgba(255, 255, 255, 0.65) !important;
}

/* Store CTA Buttons */
.vp-app-cta-row {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
}

.vp-store-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 20px !important;
    border-radius: 14px !important;
    text-decoration: none !important;
    background: rgba(10, 1, 18, 0.9) !important;
    border: 1.5px solid rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    font-family: inherit !important;
}

.vp-btn-playstore:hover {
    border-color: #00f0ff !important;
    box-shadow: 0 0 22px rgba(0, 240, 255, 0.4), 0 8px 25px rgba(0, 0, 0, 0.6) !important;
    transform: translateY(-2px) !important;
}

.vp-btn-appstore:hover {
    border-color: #ff007f !important;
    box-shadow: 0 0 22px rgba(255, 0, 127, 0.4), 0 8px 25px rgba(0, 0, 0, 0.6) !important;
    transform: translateY(-2px) !important;
}

.vp-btn-playstore .vp-store-icon {
    color: #00f0ff !important;
}

.vp-btn-appstore .vp-store-icon {
    color: #ffffff !important;
}

.vp-store-text {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-store-sub {
    font-size: 9.5px !important;
    font-weight: 600 !important;
    color: rgba(255, 255, 255, 0.65) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.vp-store-main {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: 0.3px !important;
}

/* ==========================================================================
   Right Column: 3D Smartphone Device Mockup
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    perspective: 1200px !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px 10px !important;
    transform: rotateY(-6deg) rotateX(4deg) !important;
    transition: transform 0.5s ease !important;
}

.vp-phone-stage:hover {
    transform: rotateY(0deg) rotateX(0deg) scale(1.02) !important;
}

/* Floating Micro-Badges */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px !important;
    border-radius: 14px !important;
    background: rgba(20, 2, 32, 0.9) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.7), 0 0 20px rgba(217, 70, 239, 0.3) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

.vp-float-badge-top {
    top: 15px !important;
    right: -25px !important;
    animation: vpFloatBadge1 3.5s infinite ease-in-out !important;
}

.vp-float-badge-bottom {
    bottom: 30px !important;
    left: -30px !important;
    animation: vpFloatBadge2 4s infinite ease-in-out !important;
}

@keyframes vpFloatBadge1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes vpFloatBadge2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(7px); }
}

.vp-fbadge-icon {
    font-size: 16px !important;
}

.vp-fbadge-pulse-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #00f0ff !important;
    box-shadow: 0 0 10px #00f0ff !important;
    animation: vpPulseDot 1.6s infinite !important;
}

@keyframes vpPulseDot {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.4); opacity: 0.6; }
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.2 !important;
}

.vp-fbadge-info strong {
    font-size: 12px !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

/* 3D Phone Chassis */
.vp-phone-chassis {
    width: 260px !important;
    height: 520px !important;
    background: #0d0118 !important;
    border: 7px solid #1a082c !important;
    outline: 2px solid rgba(217, 70, 239, 0.45) !important;
    border-radius: 42px !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.9), 0 0 45px rgba(217, 70, 239, 0.35) !important;
    position: relative !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.vp-phone-screen {
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(180deg, #150224 0%, #0a0014 100%) !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 10px 12px 16px 12px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Dynamic Island / Notch */
.vp-phone-notch {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 2px 6px 10px 6px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
}

.vp-notch-pill {
    width: 68px !important;
    height: 14px !important;
    background: #000000 !important;
    border-radius: 12px !important;
}

/* Inside App UI */
.vp-app-ui {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    flex: 1 !important;
}

.vp-app-ui-header {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.vp-app-ui-logo {
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    border: 1px solid #d946ef !important;
}

.vp-app-ui-brand {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.1 !important;
}

.vp-app-ui-title {
    font-size: 10.5px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
}

.vp-app-ui-sub {
    font-size: 8px !important;
    font-weight: 700 !important;
    color: #d946ef !important;
    letter-spacing: 0.5px !important;
}

/* Active Video Player Card */
.vp-app-ui-player-card {
    position: relative !important;
    width: 100% !important;
    height: 175px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6) !important;
}

.vp-app-ui-thumb {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.vp-app-ui-play-overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.7) 100%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-app-ui-play-ring {
    width: 40px !important;
    height: 40px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff, #d946ef) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 0 18px rgba(0, 240, 255, 0.6) !important;
    animation: vpPlayPulse 2s infinite ease-in-out !important;
}

@keyframes vpPlayPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.08); }
}

.vp-equalizer-bars {
    position: absolute !important;
    bottom: 10px !important;
    right: 10px !important;
    display: flex !important;
    align-items: flex-end !important;
    gap: 2.5px !important;
    height: 14px !important;
}

.vp-equalizer-bars span {
    width: 2.5px !important;
    background: #00f0ff !important;
    border-radius: 2px !important;
    animation: vpEq 1s infinite alternate ease-in-out !important;
}

.vp-equalizer-bars span:nth-child(1) { height: 60%; animation-delay: 0.1s; }
.vp-equalizer-bars span:nth-child(2) { height: 100%; animation-delay: 0.3s; }
.vp-equalizer-bars span:nth-child(3) { height: 40%; animation-delay: 0.2s; }
.vp-equalizer-bars span:nth-child(4) { height: 80%; animation-delay: 0.4s; }

@keyframes vpEq {
    0% { height: 25%; }
    100% { height: 100%; }
}

.vp-app-ui-lesson-tag {
    position: absolute !important;
    top: 8px !important;
    left: 8px !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    background: rgba(255, 0, 127, 0.7) !important;
    padding: 2px 7px !important;
    border-radius: 8px !important;
    backdrop-filter: blur(4px) !important;
}

/* Lesson Meta */
.vp-app-ui-meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    text-align: left !important;
}

.vp-app-ui-lesson-title {
    font-size: 10.5px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    line-height: 1.2 !important;
}

.vp-app-ui-progress-bar {
    width: 100% !important;
    height: 4px !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border-radius: 4px !important;
    overflow: hidden !important;
}

.vp-app-ui-progress-fill {
    height: 100% !important;
    background: linear-gradient(90deg, #00f0ff, #d946ef) !important;
    border-radius: 4px !important;
}

.vp-app-ui-lesson-status {
    display: flex !important;
    justify-content: space-between !important;
    font-size: 8.5px !important;
    color: rgba(255, 255, 255, 0.6) !important;
    font-weight: 600 !important;
}

.vp-status-highlight {
    color: #00f0ff !important;
    font-weight: 800 !important;
}

/* Chips inside UI */
.vp-app-ui-chips {
    display: flex !important;
    gap: 6px !important;
    overflow: hidden !important;
}

.vp-chip-item {
    font-size: 8.5px !important;
    font-weight: 700 !important;
    padding: 3px 7px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: rgba(255, 255, 255, 0.7) !important;
    white-space: nowrap !important;
}

.vp-chip-item.active {
    background: rgba(217, 70, 239, 0.25) !important;
    border: 1px solid rgba(217, 70, 239, 0.5) !important;
    color: #ffffff !important;
}

/* ==========================================================================
   iOS App Store Guide Modal
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(10, 0, 18, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
    box-sizing: border-box !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(135deg, rgba(28, 4, 46, 0.98) 0%, rgba(16, 1, 28, 0.98) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 45px rgba(217, 70, 239, 0.35) !important;
    box-sizing: border-box !important;
    transform: scale(0.92) translateY(12px) !important;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    color: #ffffff !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}

.vp-modal-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25), rgba(0, 240, 255, 0.25)) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.6) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 12px !important;
    box-shadow: 0 0 20px rgba(217, 70, 239, 0.4) !important;
}

.vp-modal-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

/* Steps Timeline */
.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.vp-step-num {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff, #d946ef) !important;
    color: #0c0118 !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 2px !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    text-align: left !important;
    flex: 1 !important;
}

.vp-step-body strong {
    font-size: 13px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

.vp-step-body span {
    font-size: 12px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.4 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    font-weight: 800 !important;
    font-family: monospace !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 8px 12px !important;
    border-radius: 10px !important;
    background: rgba(12, 1, 20, 0.8) !important;
    border: 1px solid rgba(255, 196, 46, 0.5) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    box-shadow: 0 0 12px rgba(255, 196, 46, 0.3) !important;
}

.vp-code-text {
    font-family: monospace !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    color: #ffc42e !important;
    letter-spacing: 2px !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    background: linear-gradient(135deg, #d946ef, #9333ea) !important;
    color: #ffffff !important;
    border: none !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #00f0ff !important;
    color: #0d0118 !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #00f0ff 0%, #0072ff 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    box-shadow: 0 4px 15px rgba(0, 240, 255, 0.35) !important;
    transition: all 0.25s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(0, 240, 255, 0.55) !important;
    color: #ffffff !important;
}

/* ==========================================================================
   Responsive Adaptations
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-master-frame {
        padding: 34px 20px !important;
        border-radius: 26px !important;
    }
    
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }

    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }

    .vp-app-headline {
        text-align: center !important;
        margin-bottom: 20px !important;
    }

    .vp-app-features-grid {
        grid-template-columns: 1fr !important;
        margin-bottom: 22px !important;
    }

    .vp-app-cta-row {
        justify-content: center !important;
    }

    .vp-phone-stage {
        transform: none !important;
        padding: 10px 0 !important;
    }

    .vp-float-badge-top {
        right: -10px !important;
    }

    .vp-float-badge-bottom {
        left: -15px !important;
    }
}

@media (max-width: 480px) {
    .vp-app-showcase-section {
        padding: 40px 12px 50px 12px !important;
    }

    .vp-app-master-frame {
        padding: 24px 14px !important;
        border-radius: 22px !important;
    }

    .vp-app-headline {
        font-size: 24px !important;
    }

    .vp-store-btn {
        width: 100% !important;
        justify-content: center !important;
        padding: 9px 14px !important;
    }

    .vp-phone-chassis {
        width: 230px !important;
        height: 460px !important;
    }

    .vp-app-ui-player-card {
        height: 145px !important;
    }

    .vp-floating-badge {
        padding: 6px 10px !important;
    }

    .vp-fbadge-info strong {
        font-size: 10.5px !important;
    }

    .vp-fbadge-info span {
        font-size: 8.5px !important;
    }

    .vp-ios-modal-card {
        padding: 24px 18px !important;
    }
}

/* ==========================================================================
   APP DOWNLOAD SHOWCASE & MODAL (7:47 PM Version)
   ========================================================================== */

.vp-app-showcase-section {
    position: relative !important;
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 60px 20px 70px 20px !important;
    box-sizing: border-box !important;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif !important;
    color: #ffffff !important;
    overflow: hidden !important;
}

/* Ambient Neon Glow Orbs */
.vp-app-ambient-glow {
    position: absolute !important;
    border-radius: 50% !important;
    filter: blur(90px) !important;
    opacity: 0.35 !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

.vp-glow-cyan {
    top: 10% !important;
    left: 5% !important;
    width: 380px !important;
    height: 380px !important;
    background: radial-gradient(circle, #00f0ff 0%, rgba(0, 240, 255, 0) 70%) !important;
}

.vp-glow-magenta {
    bottom: 10% !important;
    right: 5% !important;
    width: 400px !important;
    height: 400px !important;
    background: radial-gradient(circle, #ff007f 0%, rgba(255, 0, 127, 0) 70%) !important;
}

.vp-app-container {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
}

/* Master Glassmorphic Frame */
.vp-app-master-frame {
    position: relative !important;
    background: linear-gradient(135deg, rgba(26, 4, 42, 0.95) 0%, rgba(14, 1, 24, 0.98) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.35) !important;
    border-radius: 32px !important;
    padding: 44px 40px !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.8), 0 0 50px rgba(217, 70, 239, 0.2) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Flowing Neon Border Beam */
.vp-beam-border {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent 0%, #00f0ff 30%, #d946ef 70%, transparent 100%) !important;
    animation: vpBeamFlow 4s infinite linear !important;
}

@keyframes vpBeamFlow {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

/* 2-Column Grid Layout */
.vp-app-grid {
    display: grid !important;
    grid-template-columns: 1.1fr 0.9fr !important;
    gap: 40px !important;
    align-items: center !important;
}

/* Left Content Column */
.vp-app-content-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.vp-app-pill-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 5px 14px !important;
    border-radius: 30px !important;
    background: rgba(255, 196, 46, 0.12) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    margin-bottom: 16px !important;
}

.vp-badge-sparkle {
    font-size: 13px !important;
    line-height: 1 !important;
}

.vp-app-headline {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: clamp(28px, 3vw, 42px) !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.5px !important;
    color: #ffffff !important;
    margin: 0 0 24px 0 !important;
    text-align: left !important;
}

.vp-gradient-text {
    background: linear-gradient(90deg, #00f0ff 0%, #d946ef 50%, #ffc42e 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

/* CTA Download Buttons Row */
.vp-app-cta-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 14px !important;
    margin-top: 10px !important;
    width: 100% !important;
}

.vp-store-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 20px !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;
    cursor: pointer !important;
    font-family: inherit !important;
}

.vp-store-btn:hover {
    transform: translateY(-3px) scale(1.02) !important;
    background: rgba(217, 70, 239, 0.25) !important;
    border-color: #d946ef !important;
    box-shadow: 0 10px 24px rgba(217, 70, 239, 0.4) !important;
    color: #ffffff !important;
}

.vp-store-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    flex-shrink: 0 !important;
}

.vp-store-text {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-store-sub {
    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

.vp-store-main {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: 0.2px !important;
}

/* Right Mockup Stage & Real Smartphone Image */
.vp-app-mockup-col {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    width: 100% !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 440px !important;
    margin: 0 auto !important;
    padding: 30px 10px !important;
    box-sizing: border-box !important;
}

.vp-real-mockup-wrapper {
    position: relative !important;
    width: 330px !important;
    max-width: 100% !important;
    display: block !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.8)) drop-shadow(0 0 30px rgba(217, 70, 239, 0.4)) !important;
    animation: vpPhoneFloat 5s ease-in-out infinite alternate !important;
    border-radius: 48px !important;
}

.vp-real-phone-img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
    position: relative !important;
    z-index: 2 !important;
    border-radius: 46px !important;
}

/* High Precision SVG Laser Orbit */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 10 !important;
    pointer-events: none !important;
    overflow: visible !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 22 78 !important;
    stroke-dashoffset: 0 !important;
    animation: vpLaserSweep 3.2s linear infinite !important;
    filter: drop-shadow(0 0 8px #d946ef) drop-shadow(0 0 16px #00f0ff) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 6 94 !important;
    stroke-dashoffset: 0 !important;
    animation: vpLaserSweep 3.2s linear infinite !important;
    filter: drop-shadow(0 0 4px #ffffff) !important;
}

@keyframes vpLaserSweep {
    0% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -100; }
}

@keyframes vpPhoneFloat {
    0% { transform: translateY(0px); }
    100% { transform: translateY(-8px); }
}

/* Floating Badges */
.vp-floating-badge {
    position: absolute !important;
    z-index: 20 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: rgba(23, 1, 35, 0.92) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    border: 1px solid rgba(217, 70, 239, 0.5) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.6), 0 0 15px rgba(217, 70, 239, 0.25) !important;
    padding: 7px 13px !important;
    border-radius: 14px !important;
    animation: vpBadgeHoverFloat 4s ease-in-out infinite alternate !important;
    white-space: nowrap !important;
    pointer-events: auto !important;
}

.vp-fbadge-icon {
    font-size: 15px !important;
    line-height: 1 !important;
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-fbadge-info strong {
    font-family: 'Poppins', sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    font-weight: 700 !important;
    color: #ffc42e !important;
    letter-spacing: 0.2px !important;
}

/* Badge 1: 4.9 Rating (Top Right) */
.vp-badge-top-right {
    top: 6% !important;
    right: -12px !important;
    animation-delay: 0s !important;
}

/* Badge 2: Step-by-Step Tutorials (Middle Left - Lowered to 38%) */
.vp-badge-step-by-step {
    top: 38% !important;
    left: -20px !important;
    animation-delay: 0.8s !important;
}
.vp-badge-step-by-step .vp-fbadge-info span {
    color: #00f0ff !important;
}

/* Badge 3: 24/7 Chat Support (Lower Right - Ultra-Compact) */
.vp-badge-chat-support {
    bottom: 24% !important;
    right: -14px !important;
    padding: 6px 11px !important;
    animation-delay: 1.6s !important;
}
.vp-badge-chat-support .vp-fbadge-info strong {
    font-size: 11px !important;
}
.vp-badge-chat-support .vp-fbadge-info span {
    font-size: 9px !important;
    color: #d946ef !important;
}

/* Badge 4: Basic to Advance Course (Bottom Left) */
.vp-badge-basic-advance {
    bottom: 6% !important;
    left: -14px !important;
    animation-delay: 2.4s !important;
}
.vp-badge-basic-advance .vp-fbadge-info span {
    color: #ffc42e !important;
}

@keyframes vpBadgeHoverFloat {
    0% { transform: translateY(0px); }
    100% { transform: translateY(-6px); }
}

/* iOS App Store Guide Popup Modal */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(10, 0, 18, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    display: flex !important;
    opacity: 1 !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 480px !important;
    background: linear-gradient(145deg, #1f0130 0%, #130020 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.8), 0 0 40px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.95) translateY(10px) !important;
    transition: transform 0.3s cubic-bezier(0.2, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: background 0.2s ease, transform 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(217, 70, 239, 0.4) !important;
    transform: rotate(90deg) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 8px 24px rgba(217, 70, 239, 0.4) !important;
    margin-bottom: 14px !important;
}

.vp-modal-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: #ffc42e !important;
    color: #1a0028 !important;
    font-weight: 900 !important;
    font-size: 13px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    font-size: 13px !important;
    text-align: left !important;
    color: rgba(255, 255, 255, 0.9) !important;
}

.vp-step-body strong {
    font-size: 13.5px !important;
    color: #ffffff !important;
}

.vp-step-body code {
    background: rgba(217, 70, 239, 0.2) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    background: rgba(0, 0, 0, 0.4) !important;
    border: 1px solid rgba(255, 196, 46, 0.5) !important;
    border-radius: 10px !important;
    padding: 8px 14px !important;
    margin-top: 4px !important;
    cursor: pointer !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.vp-code-text {
    font-family: 'Courier New', monospace !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #ffc42e !important;
    color: #1a0028 !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 5px 10px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.vp-copy-badge-btn.is-copied {
    background: #22c55e !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 10px 18px !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    margin-top: 4px !important;
    box-shadow: 0 4px 14px rgba(217, 70, 239, 0.4) !important;
}

/* Responsive Styles for App Showcase */
@media (max-width: 900px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    .vp-app-headline {
        text-align: center !important;
    }
    .vp-app-cta-row {
        justify-content: center !important;
    }
    .vp-app-master-frame {
        padding: 36px 20px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 40px 12px 50px 12px !important;
    }
    .vp-app-master-frame {
        padding: 28px 14px !important;
        border-radius: 24px !important;
    }
    .vp-real-mockup-wrapper {
        width: 270px !important;
    }
    /* Side-by-side buttons on mobile */
    .vp-app-cta-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }
    .vp-store-btn {
        padding: 8px 8px !important;
        gap: 6px !important;
        border-radius: 10px !important;
    }
    .vp-store-icon svg {
        width: 18px !important;
        height: 18px !important;
    }
    .vp-store-sub {
        font-size: 8.5px !important;
    }
    .vp-store-main {
        font-size: 11.5px !important;
    }
    /* Compact Floating Badges on Mobile */
    .vp-floating-badge {
        padding: 5px 9px !important;
        gap: 6px !important;
    }
    .vp-fbadge-icon {
        font-size: 13px !important;
    }
    .vp-fbadge-info strong {
        font-size: 10.5px !important;
    }
    .vp-fbadge-info span {
        font-size: 8.5px !important;
    }
    .vp-badge-top-right {
        top: 2% !important;
        right: -6px !important;
    }
    .vp-badge-step-by-step {
        top: 38% !important;
        left: -10px !important;
    }
    .vp-badge-chat-support {
        bottom: 24% !important;
        right: -8px !important;
        padding: 4px 8px !important;
    }
    .vp-badge-basic-advance {
        bottom: 4% !important;
        left: -8px !important;
    }
}

/* ==========================================================================
   Right Column: Smartphone Mockup & Light Glassmorphic Badges
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px 20px !important;
    background: transparent !important;
}

/* Light Mode Floating Badges */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 7px 12px !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    border: 1px solid rgba(147, 51, 234, 0.2) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 12px 30px rgba(107, 33, 168, 0.12), 0 3px 10px rgba(0, 0, 0, 0.05) !important;
    z-index: 10 !important;
    pointer-events: none !important;
    white-space: nowrap !important;
    width: auto !important;
    max-width: max-content !important;
}

/* 1. Rating Badge (Top Right) */
.vp-badge-top-right {
    top: -5px !important;
    right: -30px !important;
    animation: vpFloat1 3.6s infinite ease-in-out !important;
}

/* 2. Step by Step Badge (Middle Left - Lowered) */
.vp-badge-step-by-step {
    top: 38% !important;
    left: -42px !important;
    animation: vpFloat2 4s infinite ease-in-out 0.4s !important;
}

/* 3. 24/7 Chat Support Badge (Lower Right) */
.vp-badge-chat-support {
    top: 72% !important;
    right: -35px !important;
    animation: vpFloat3 3.8s infinite ease-in-out 0.8s !important;
}

/* 4. Basic to Advance Course (Bottom Left) */
.vp-badge-basic-advance {
    bottom: -5px !important;
    left: -30px !important;
    animation: vpFloat4 4.2s infinite ease-in-out 1.2s !important;
}

@keyframes vpFloat1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

@keyframes vpFloat2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(5px); }
}

@keyframes vpFloat3 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

@keyframes vpFloat4 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(5px); }
}

.vp-fbadge-icon {
    font-size: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-fbadge-info strong {
    font-size: 11px !important;
    color: #1a032c !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

.vp-fbadge-info span {
    font-size: 8.5px !important;
    color: #6b21a8 !important;
    font-weight: 600 !important;
    letter-spacing: 0.2px !important;
    white-space: nowrap !important;
}

/* Real Phone Mockup Wrapper */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 330px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    background: transparent !important;
}

/* SVG Laser Beam Orbiting in Light Mode */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
    background: transparent !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 20 80 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 10px rgba(217, 70, 239, 0.65)) drop-shadow(0 0 20px rgba(147, 51, 234, 0.45)) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 8 92 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 4px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -100; }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 590px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 20px 45px rgba(26, 4, 44, 0.35)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
    background: transparent !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.015) !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 300px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 35px 12px !important;
    }

    .vp-app-master-frame {
        padding: 26px 16px !important;
        border-radius: 24px !important;
    }

    .vp-app-headline {
        font-size: 26px !important;
        margin-bottom: 20px !important;
    }

    /* Side-by-Side Store Buttons on Mobile */
    .vp-app-cta-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        padding: 8px 6px !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        gap: 6px !important;
        border-radius: 12px !important;
    }

    .vp-store-btn .vp-store-icon svg {
        width: 18px !important;
        height: 18px !important;
    }

    .vp-store-sub {
        font-size: 7.5px !important;
    }

    .vp-store-main {
        font-size: 11.5px !important;
        white-space: nowrap !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 270px !important;
    }

    .vp-phone-stage {
        padding: 16px 8px !important;
    }

    /* Ultra-compact Mobile Floating Badges */
    .vp-floating-badge {
        padding: 4px 7px !important;
        border-radius: 8px !important;
        gap: 4px !important;
        box-shadow: 0 4px 15px rgba(107, 33, 168, 0.1) !important;
    }

    .vp-badge-top-right {
        top: -10px !important;
        right: -8px !important;
    }

    .vp-badge-step-by-step {
        top: 38% !important;
        left: -12px !important;
    }

    .vp-badge-chat-support {
        top: 72% !important;
        right: -10px !important;
    }

    .vp-badge-basic-advance {
        bottom: -10px !important;
        left: -8px !important;
    }

    .vp-fbadge-icon {
        font-size: 11px !important;
    }

    .vp-fbadge-info strong {
        font-size: 8.5px !important;
    }

    .vp-fbadge-info span {
        font-size: 7px !important;
    }
}

/* ==========================================================================
   Right Column: Smartphone Mockup & Compact Floating Badges
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 24px 20px !important;
    background: transparent !important;
}

/* Compact Floating Badge Base */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 11px !important;
    border-radius: 12px !important;
    background: rgba(18, 2, 30, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.75), 0 0 16px rgba(217, 70, 239, 0.3) !important;
    z-index: 10 !important;
    pointer-events: none !important;
    white-space: nowrap !important;
    width: auto !important;
    max-width: max-content !important;
}

/* 1. Rating Badge (Top Right) */
.vp-badge-top-right {
    top: -5px !important;
    right: -30px !important;
    animation: vpFloat1 3.6s infinite ease-in-out !important;
}

/* 2. Step by Step Badge (Middle Left - Lowered below Zero to Hero banner) */
.vp-badge-step-by-step {
    top: 38% !important;
    left: -42px !important;
    animation: vpFloat2 4s infinite ease-in-out 0.4s !important;
}

/* 3. 24/7 Chat Support Badge (Lower Right) */
.vp-badge-chat-support {
    top: 72% !important;
    right: -35px !important;
    animation: vpFloat3 3.8s infinite ease-in-out 0.8s !important;
}

/* 4. Basic to Advance Course (Bottom Left) */
.vp-badge-basic-advance {
    bottom: -5px !important;
    left: -30px !important;
    animation: vpFloat4 4.2s infinite ease-in-out 1.2s !important;
}

@keyframes vpFloat1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

@keyframes vpFloat2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(5px); }
}

@keyframes vpFloat3 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

@keyframes vpFloat4 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(5px); }
}

.vp-fbadge-icon {
    font-size: 13px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-fbadge-info strong {
    font-size: 10.5px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

.vp-fbadge-info span {
    font-size: 8px !important;
    color: rgba(255, 255, 255, 0.72) !important;
    letter-spacing: 0.2px !important;
    white-space: nowrap !important;
}

/* Real Phone Mockup Wrapper */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 330px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    background: transparent !important;
}

/* SVG Laser Beam */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
    background: transparent !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 20 80 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 10px #00f0ff) drop-shadow(0 0 20px #d946ef) drop-shadow(0 0 30px #ff007f) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 8 92 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 5px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -100; }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 590px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 25px 50px rgba(0, 0, 0, 0.9)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
    background: transparent !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.015) !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 300px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 35px 12px !important;
    }

    .vp-app-master-frame {
        padding: 26px 16px !important;
        border-radius: 24px !important;
    }

    .vp-app-headline {
        font-size: 26px !important;
        margin-bottom: 20px !important;
    }

    /* Side-by-Side Store Buttons on Mobile */
    .vp-app-cta-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        padding: 8px 6px !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        gap: 6px !important;
        border-radius: 12px !important;
    }

    .vp-store-btn .vp-store-icon svg {
        width: 18px !important;
        height: 18px !important;
    }

    .vp-store-sub {
        font-size: 7.5px !important;
    }

    .vp-store-main {
        font-size: 11.5px !important;
        white-space: nowrap !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 270px !important;
    }

    .vp-phone-stage {
        padding: 16px 8px !important;
    }

    /* Ultra-compact Mobile Floating Badges */
    .vp-floating-badge {
        padding: 4px 7px !important;
        border-radius: 8px !important;
        gap: 4px !important;
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.75), 0 0 10px rgba(217, 70, 239, 0.25) !important;
    }

    .vp-badge-top-right {
        top: -10px !important;
        right: -8px !important;
    }

    .vp-badge-step-by-step {
        top: 38% !important;
        left: -12px !important;
    }

    .vp-badge-chat-support {
        top: 72% !important;
        right: -10px !important;
    }

    .vp-badge-basic-advance {
        bottom: -10px !important;
        left: -8px !important;
    }

    .vp-fbadge-icon {
        font-size: 11px !important;
    }

    .vp-fbadge-info strong {
        font-size: 8.5px !important;
    }

    .vp-fbadge-info span {
        font-size: 7px !important;
    }
}

/* ==========================================================================
   Right Column: Enlarged Smartphone Mockup & Non-Overlapping Badges
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    background: transparent !important;
}

/* Base Floating Badge - Kept compact */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    padding: 7px 12px !important;
    border-radius: 13px !important;
    background: rgba(18, 2, 30, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.75), 0 0 22px rgba(217, 70, 239, 0.35) !important;
    z-index: 10 !important;
    pointer-events: none !important;
    white-space: nowrap !important;
}

/* Badge 1: 4.9 Rating (Top Right Corner) */
.vp-badge-top-right {
    top: 5px !important;
    right: -40px !important;
    animation: vpFloat1 3.6s infinite ease-in-out !important;
}

/* Badge 2: Step by Step Tutorials (Top Left Corner - Above Zero To Hero Banner) */
.vp-badge-top-left {
    top: 5px !important;
    left: -45px !important;
    animation: vpFloat2 4s infinite ease-in-out 0.4s !important;
}

/* Badge 3: 24/7 Chat Support (Mid Right) */
.vp-badge-mid-right {
    top: 52% !important;
    right: -45px !important;
    animation: vpFloat3 3.8s infinite ease-in-out 0.8s !important;
}

/* Badge 4: Basic to Advance Course (Bottom Left) */
.vp-badge-bot-left {
    bottom: 35px !important;
    left: -45px !important;
    animation: vpFloat4 4.2s infinite ease-in-out 1.2s !important;
}

@keyframes vpFloat1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

@keyframes vpFloat2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(6px); }
}

@keyframes vpFloat3 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

@keyframes vpFloat4 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(6px); }
}

.vp-fbadge-icon {
    font-size: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-fbadge-info strong {
    font-size: 11px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

.vp-fbadge-info span {
    font-size: 8.5px !important;
    color: rgba(255, 255, 255, 0.72) !important;
    letter-spacing: 0.2px !important;
}

/* Real Phone Mockup Wrapper - Enlarged */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 330px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    background: transparent !important;
}

/* SVG Laser Beam Orbiting Cleanly Around Phone Bezel */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
    background: transparent !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 20 80 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 10px #00f0ff) drop-shadow(0 0 20px #d946ef) drop-shadow(0 0 30px #ff007f) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 8 92 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 5px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% {
        stroke-dashoffset: 0;
    }
    100% {
        stroke-dashoffset: -100;
    }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 590px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 25px 50px rgba(0, 0, 0, 0.9)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
    background: transparent !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.015) !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 300px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 35px 12px !important;
    }

    .vp-app-master-frame {
        padding: 26px 16px !important;
        border-radius: 24px !important;
    }

    .vp-app-headline {
        font-size: 26px !important;
        margin-bottom: 20px !important;
    }

    /* Side-by-Side (Aaju-Baju) Store Buttons on Mobile */
    .vp-app-cta-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        padding: 8px 6px !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        gap: 6px !important;
        border-radius: 12px !important;
    }

    .vp-store-btn .vp-store-icon svg {
        width: 18px !important;
        height: 18px !important;
    }

    .vp-store-sub {
        font-size: 7.5px !important;
    }

    .vp-store-main {
        font-size: 11.5px !important;
        white-space: nowrap !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 270px !important;
    }

    .vp-floating-badge {
        padding: 5px 8px !important;
        border-radius: 10px !important;
        gap: 5px !important;
    }

    .vp-badge-top-right {
        top: -6px !important;
        right: -6px !important;
    }

    .vp-badge-top-left {
        top: -6px !important;
        left: -6px !important;
    }

    .vp-badge-mid-right {
        top: 50% !important;
        right: -6px !important;
    }

    .vp-badge-bot-left {
        bottom: 15px !important;
        left: -6px !important;
    }

    .vp-fbadge-icon {
        font-size: 12px !important;
    }

    .vp-fbadge-info strong {
        font-size: 9.5px !important;
    }

    .vp-fbadge-info span {
        font-size: 7.5px !important;
    }
}

/* ==========================================================================
   Right Column: Smartphone Mockup & 4 Floating Badges
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px !important;
    background: transparent !important;
}

/* Base Floating Badge */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px !important;
    border-radius: 14px !important;
    background: rgba(18, 2, 30, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.75), 0 0 22px rgba(217, 70, 239, 0.35) !important;
    z-index: 10 !important;
    pointer-events: none !important;
    white-space: nowrap !important;
}

/* Badge 1: 4.9 Rating (Top Right) */
.vp-badge-top-right {
    top: 25px !important;
    right: -35px !important;
    animation: vpFloat1 3.6s infinite ease-in-out !important;
}

/* Badge 2: Step by Step Tutorials (Top Left) */
.vp-badge-top-left {
    top: 85px !important;
    left: -45px !important;
    animation: vpFloat2 4s infinite ease-in-out 0.4s !important;
}

/* Badge 3: 24/7 Chat Support (Mid Right) */
.vp-badge-mid-right {
    bottom: 120px !important;
    right: -35px !important;
    animation: vpFloat3 3.8s infinite ease-in-out 0.8s !important;
}

/* Badge 4: Basic to Advance Course (Bottom Left) */
.vp-badge-bot-left {
    bottom: 35px !important;
    left: -40px !important;
    animation: vpFloat4 4.2s infinite ease-in-out 1.2s !important;
}

@keyframes vpFloat1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes vpFloat2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(7px); }
}

@keyframes vpFloat3 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

@keyframes vpFloat4 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(6px); }
}

.vp-fbadge-icon {
    font-size: 15px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.2 !important;
}

.vp-fbadge-info strong {
    font-size: 11.5px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

.vp-fbadge-info span {
    font-size: 9px !important;
    color: rgba(255, 255, 255, 0.72) !important;
    letter-spacing: 0.2px !important;
}

/* Real Phone Mockup Wrapper */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 275px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    background: transparent !important;
}

/* SVG Laser Beam Orbiting Cleanly Around Phone Bezel */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
    background: transparent !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 20 80 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 10px #00f0ff) drop-shadow(0 0 20px #d946ef) drop-shadow(0 0 30px #ff007f) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 8 92 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 5px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% {
        stroke-dashoffset: 0;
    }
    100% {
        stroke-dashoffset: -100;
    }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 520px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 20px 45px rgba(0, 0, 0, 0.9)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
    background: transparent !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.02) !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 250px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 40px 12px !important;
    }

    .vp-app-master-frame {
        padding: 28px 18px !important;
        border-radius: 24px !important;
    }

    .vp-app-cta-row {
        flex-direction: column !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 220px !important;
    }

    .vp-badge-top-right {
        top: 8px !important;
        right: -8px !important;
        padding: 5px 8px !important;
    }

    .vp-badge-top-left {
        top: 65px !important;
        left: -8px !important;
        padding: 5px 8px !important;
    }

    .vp-badge-mid-right {
        bottom: 95px !important;
        right: -8px !important;
        padding: 5px 8px !important;
    }

    .vp-badge-bot-left {
        bottom: 15px !important;
        left: -8px !important;
        padding: 5px 8px !important;
    }

    .vp-fbadge-info strong {
        font-size: 10px !important;
    }

    .vp-fbadge-info span {
        font-size: 8px !important;
    }
}

/* ==========================================================================
   Right Column: Clean Real Smartphone Mockup with Tight Laser Orbit
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px !important;
    background: transparent !important;
}

/* Floating Micro-Badges */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px !important;
    border-radius: 14px !important;
    background: rgba(20, 2, 32, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.75), 0 0 20px rgba(217, 70, 239, 0.35) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

.vp-float-badge-top {
    top: 20px !important;
    right: -25px !important;
    animation: vpFloatBadge1 3.5s infinite ease-in-out !important;
}

.vp-float-badge-bottom {
    bottom: 25px !important;
    left: -25px !important;
    animation: vpFloatBadge2 4s infinite ease-in-out !important;
}

@keyframes vpFloatBadge1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes vpFloatBadge2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(7px); }
}

.vp-fbadge-icon {
    font-size: 16px !important;
}

.vp-fbadge-pulse-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #00f0ff !important;
    box-shadow: 0 0 10px #00f0ff !important;
    animation: vpPulseDot 1.6s infinite !important;
}

@keyframes vpPulseDot {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.4); opacity: 0.6; }
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.2 !important;
}

.vp-fbadge-info strong {
    font-size: 12px !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Real Phone Mockup Wrapper */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 280px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    background: transparent !important;
}

/* SVG Laser Beam Orbiting Cleanly Around Phone Bezel */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
    background: transparent !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 20 80 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 10px #00f0ff) drop-shadow(0 0 20px #d946ef) drop-shadow(0 0 30px #ff007f) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 8 92 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 5px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% {
        stroke-dashoffset: 0;
    }
    100% {
        stroke-dashoffset: -100;
    }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 520px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 20px 45px rgba(0, 0, 0, 0.9)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
    background: transparent !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.02) !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 240px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 40px 12px !important;
    }

    .vp-app-master-frame {
        padding: 28px 18px !important;
        border-radius: 24px !important;
    }

    .vp-app-cta-row {
        flex-direction: column !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 220px !important;
    }

    .vp-float-badge-top {
        right: -10px !important;
        top: 10px !important;
        padding: 6px 10px !important;
    }

    .vp-float-badge-bottom {
        left: -10px !important;
        bottom: 20px !important;
        padding: 6px 10px !important;
    }
}

/* ==========================================================================
   Right Column: Clean Real Smartphone Mockup with Tight Laser Orbit
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px !important;
    background: transparent !important;
}

/* Floating Micro-Badges */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px !important;
    border-radius: 14px !important;
    background: rgba(20, 2, 32, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.75), 0 0 20px rgba(217, 70, 239, 0.35) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

.vp-float-badge-top {
    top: 20px !important;
    right: -25px !important;
    animation: vpFloatBadge1 3.5s infinite ease-in-out !important;
}

.vp-float-badge-bottom {
    bottom: 25px !important;
    left: -25px !important;
    animation: vpFloatBadge2 4s infinite ease-in-out !important;
}

@keyframes vpFloatBadge1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes vpFloatBadge2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(7px); }
}

.vp-fbadge-icon {
    font-size: 16px !important;
}

.vp-fbadge-pulse-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #00f0ff !important;
    box-shadow: 0 0 10px #00f0ff !important;
    animation: vpPulseDot 1.6s infinite !important;
}

@keyframes vpPulseDot {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.4); opacity: 0.6; }
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.2 !important;
}

.vp-fbadge-info strong {
    font-size: 12px !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Real Phone Mockup Wrapper */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 275px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    background: transparent !important;
}

/* SVG Laser Beam Orbiting Cleanly Around Phone Bezel */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
    background: transparent !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 20 80 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 10px #00f0ff) drop-shadow(0 0 20px #d946ef) drop-shadow(0 0 30px #ff007f) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 8 92 !important;
    animation: vpLaserRun 3s linear infinite !important;
    filter: drop-shadow(0 0 5px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% {
        stroke-dashoffset: 0;
    }
    100% {
        stroke-dashoffset: -100;
    }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 520px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 20px 45px rgba(0, 0, 0, 0.9)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
    background: transparent !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.02) !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 240px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 40px 12px !important;
    }

    .vp-app-master-frame {
        padding: 28px 18px !important;
        border-radius: 24px !important;
    }

    .vp-app-features-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .vp-app-cta-row {
        flex-direction: column !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 220px !important;
    }

    .vp-float-badge-top {
        right: -10px !important;
        top: 10px !important;
        padding: 6px 10px !important;
    }

    .vp-float-badge-bottom {
        left: -10px !important;
        bottom: 20px !important;
        padding: 6px 10px !important;
    }
}

/* ==========================================================================
   Right Column: Real Smartphone Mockup Stage & Glowing Laser Orbit
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px 10px !important;
}

/* Floating Micro-Badges */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px !important;
    border-radius: 14px !important;
    background: rgba(20, 2, 32, 0.94) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.75), 0 0 20px rgba(217, 70, 239, 0.35) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

.vp-float-badge-top {
    top: 20px !important;
    right: -25px !important;
    animation: vpFloatBadge1 3.5s infinite ease-in-out !important;
}

.vp-float-badge-bottom {
    bottom: 30px !important;
    left: -25px !important;
    animation: vpFloatBadge2 4s infinite ease-in-out !important;
}

@keyframes vpFloatBadge1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes vpFloatBadge2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(7px); }
}

.vp-fbadge-icon {
    font-size: 16px !important;
}

.vp-fbadge-pulse-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #00f0ff !important;
    box-shadow: 0 0 10px #00f0ff !important;
    animation: vpPulseDot 1.6s infinite !important;
}

@keyframes vpPulseDot {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.4); opacity: 0.6; }
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.2 !important;
}

.vp-fbadge-info strong {
    font-size: 12px !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Real Phone Mockup Wrapper with Laser Glow */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 280px !important;
    width: 100% !important;
    padding: 10px !important;
    box-sizing: border-box !important;
}

/* SVG Laser Beam Rotating Around the Phone */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none !important;
    z-index: 3 !important;
    overflow: visible !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 22 78 !important;
    animation: vpLaserRun 3.2s linear infinite !important;
    filter: drop-shadow(0 0 8px #00f0ff) drop-shadow(0 0 16px #d946ef) drop-shadow(0 0 24px #ff007f) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 10 90 !important;
    animation: vpLaserRun 3.2s linear infinite !important;
    filter: drop-shadow(0 0 4px #ffffff) !important;
}

@keyframes vpLaserRun {
    0% {
        stroke-dashoffset: 0;
    }
    100% {
        stroke-dashoffset: -100;
    }
}

.vp-real-phone-img {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    height: auto !important;
    max-height: 520px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 20px 45px rgba(0, 0, 0, 0.9)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: block !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-6px) scale(1.02) !important;
}

/* Ambient Pulsing Glow */
.vp-phone-ambient-glow {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 250px !important;
    height: 440px !important;
    background: radial-gradient(ellipse at center, rgba(217, 70, 239, 0.35) 0%, rgba(0, 240, 255, 0.18) 45%, transparent 72%) !important;
    filter: blur(40px) !important;
    pointer-events: none !important;
    z-index: 1 !important;
    animation: vpAuraPulse 4s ease-in-out infinite alternate !important;
}

@keyframes vpAuraPulse {
    0% { transform: translate(-50%, -50%) scale(0.95); opacity: 0.7; }
    100% { transform: translate(-50%, -50%) scale(1.08); opacity: 1; }
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 250px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 40px 12px !important;
    }

    .vp-app-master-frame {
        padding: 28px 18px !important;
        border-radius: 24px !important;
    }

    .vp-app-features-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .vp-app-cta-row {
        flex-direction: column !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 220px !important;
    }

    .vp-float-badge-top {
        right: -10px !important;
        top: 10px !important;
        padding: 6px 10px !important;
    }

    .vp-float-badge-bottom {
        left: -10px !important;
        bottom: 20px !important;
        padding: 6px 10px !important;
    }
}

/* ==========================================================================
   Right Column: Real Smartphone Mockup Stage
   ========================================================================== */
.vp-app-mockup-col {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px 10px !important;
    perspective: 1000px !important;
}

/* Floating Micro-Badges */
.vp-floating-badge {
    position: absolute !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 14px !important;
    border-radius: 14px !important;
    background: rgba(20, 2, 32, 0.92) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.75), 0 0 20px rgba(217, 70, 239, 0.35) !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

.vp-float-badge-top {
    top: 25px !important;
    right: -25px !important;
    animation: vpFloatBadge1 3.5s infinite ease-in-out !important;
}

.vp-float-badge-bottom {
    bottom: 35px !important;
    left: -25px !important;
    animation: vpFloatBadge2 4s infinite ease-in-out !important;
}

@keyframes vpFloatBadge1 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-7px); }
}

@keyframes vpFloatBadge2 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(7px); }
}

.vp-fbadge-icon {
    font-size: 16px !important;
}

.vp-fbadge-pulse-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #00f0ff !important;
    box-shadow: 0 0 10px #00f0ff !important;
    animation: vpPulseDot 1.6s infinite !important;
}

@keyframes vpPulseDot {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.4); opacity: 0.6; }
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.2 !important;
}

.vp-fbadge-info strong {
    font-size: 12px !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Real Phone Mockup Image */
.vp-real-mockup-wrapper {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    max-width: 280px !important;
    width: 100% !important;
}

.vp-real-phone-img {
    width: 100% !important;
    height: auto !important;
    max-height: 520px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 25px 50px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 35px rgba(217, 70, 239, 0.4)) !important;
    transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), filter 0.4s ease !important;
    display: block !important;
}

.vp-phone-stage:hover .vp-real-phone-img {
    transform: translateY(-8px) scale(1.02) !important;
    filter: drop-shadow(0 35px 70px rgba(0, 0, 0, 0.95)) drop-shadow(0 0 50px rgba(0, 240, 255, 0.5)) !important;
}

.vp-phone-ambient-glow {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 240px !important;
    height: 420px !important;
    background: radial-gradient(ellipse at center, rgba(217, 70, 239, 0.3) 0%, rgba(0, 240, 255, 0.15) 50%, transparent 75%) !important;
    filter: blur(40px) !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

/* ==========================================================================
   iOS App Store Modal Popup
   ========================================================================== */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 0, 10, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 440px !important;
    background: linear-gradient(145deg, rgba(28, 4, 46, 0.98) 0%, rgba(15, 1, 26, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.9), 0 0 50px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.9) translateY(20px) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 24px !important;
    line-height: 1 !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(255, 0, 127, 0.3) !important;
    border-color: #ff007f !important;
    transform: scale(1.08) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    margin: 0 auto 12px auto !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(217, 70, 239, 0.25) 0%, rgba(0, 240, 255, 0.25) 100%) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 0 25px rgba(217, 70, 239, 0.35) !important;
}

.vp-modal-title {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 12.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #00f0ff 0%, #d946ef 100%) !important;
    color: #0d0118 !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    flex: 1 !important;
    text-align: left !important;
}

.vp-step-body strong {
    font-size: 12.5px !important;
    color: #ffffff !important;
}

.vp-step-body span {
    font-size: 11.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    line-height: 1.35 !important;
}

.vp-step-body code {
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(10, 1, 18, 0.8) !important;
    border: 1.5px dashed rgba(255, 196, 46, 0.6) !important;
    border-radius: 12px !important;
    padding: 8px 14px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-modal-code-box:hover {
    border-color: #ffc42e !important;
    background: rgba(255, 196, 46, 0.08) !important;
}

.vp-code-text {
    font-family: 'Consolas', 'Courier New', monospace !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
    text-transform: lowercase !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(255, 196, 46, 0.2) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.vp-copy-badge-btn.is-copied {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    box-shadow: 0 6px 20px rgba(255, 0, 127, 0.35) !important;
    transition: all 0.2s ease !important;
}

.vp-modal-download-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 25px rgba(255, 0, 127, 0.5) !important;
}

/* ==========================================================================
   Responsive Rules
   ========================================================================== */
@media (max-width: 991px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    
    .vp-app-headline {
        text-align: center !important;
    }
    
    .vp-app-cta-row {
        justify-content: center !important;
    }
    
    .vp-real-mockup-wrapper {
        max-width: 250px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 40px 12px !important;
    }

    .vp-app-master-frame {
        padding: 28px 18px !important;
        border-radius: 24px !important;
    }

    .vp-app-features-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .vp-app-cta-row {
        flex-direction: column !important;
        width: 100% !important;
    }

    .vp-store-btn {
        width: 100% !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    .vp-real-mockup-wrapper {
        max-width: 220px !important;
    }

    .vp-float-badge-top {
        right: -10px !important;
        top: 10px !important;
        padding: 6px 10px !important;
    }

    .vp-float-badge-bottom {
        left: -10px !important;
        bottom: 20px !important;
        padding: 6px 10px !important;
    }
}

/* ==========================================================================
   APP DOWNLOAD SECTION — LIGHT SECTION BACKGROUND WITH SLEEK DARK SHOWCASE CARD
   ========================================================================== */

/* Outer Section Light Theme Styling */
.elementor-520 .elementor-element-4f8dee5a,
#download-app.vp-app-showcase-section,
.vp-app-showcase-section {
    position: relative !important;
    width: 100% !important;
    background: #ffffff !important;
    padding: 70px 20px 80px 20px !important;
    box-sizing: border-box !important;
    font-family: 'Poppins', 'Inter', -apple-system, sans-serif !important;
    overflow: hidden !important;
}

/* Ambient Soft Glow Orbs on Light Section */
.vp-app-ambient-glow {
    position: absolute !important;
    border-radius: 50% !important;
    filter: blur(100px) !important;
    opacity: 0.25 !important;
    pointer-events: none !important;
    z-index: 0 !important;
}

.vp-glow-purple {
    top: 5% !important;
    left: 8% !important;
    width: 420px !important;
    height: 420px !important;
    background: radial-gradient(circle, #a855f7 0%, rgba(168, 85, 247, 0) 70%) !important;
}

.vp-glow-cyan {
    bottom: 5% !important;
    right: 8% !important;
    width: 420px !important;
    height: 420px !important;
    background: radial-gradient(circle, #06b6d4 0%, rgba(6, 182, 212, 0) 70%) !important;
}

.vp-app-container {
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

/* Master Glassmorphic Frame — SLEEK DARK CINEMA CARD */
.vp-app-master-frame {
    position: relative !important;
    background: linear-gradient(135deg, rgba(22, 3, 36, 0.97) 0%, rgba(12, 1, 20, 0.99) 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.35) !important;
    border-radius: 32px !important;
    padding: 44px 40px !important;
    backdrop-filter: blur(24px) !important;
    -webkit-backdrop-filter: blur(24px) !important;
    box-shadow: 0 25px 60px rgba(91, 22, 168, 0.22), 0 10px 30px rgba(0, 0, 0, 0.4), 0 0 35px rgba(217, 70, 239, 0.15) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Flowing Neon Border Beam */
.vp-beam-border {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent 0%, #00f0ff 30%, #d946ef 70%, transparent 100%) !important;
    animation: vpBeamFlow 4s infinite linear !important;
}

@keyframes vpBeamFlow {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

/* 2-Column Grid Layout */
.vp-app-grid {
    display: grid !important;
    grid-template-columns: 1.1fr 0.9fr !important;
    gap: 40px !important;
    align-items: center !important;
}

/* Left Content Column */
.vp-app-content-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

.vp-app-pill-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 14px !important;
    border-radius: 30px !important;
    background: rgba(255, 196, 46, 0.12) !important;
    border: 1px solid rgba(255, 196, 46, 0.4) !important;
    color: #ffc42e !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    margin-bottom: 18px !important;
}

.vp-badge-sparkle {
    font-size: 13px !important;
    line-height: 1 !important;
}

.vp-app-headline {
    font-family: 'Montserrat', 'Poppins', sans-serif !important;
    font-size: clamp(28px, 3.2vw, 42px) !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.5px !important;
    color: #ffffff !important;
    margin: 0 0 24px 0 !important;
    text-align: left !important;
}

.vp-gradient-text {
    background: linear-gradient(90deg, #00f0ff 0%, #d946ef 50%, #ffc42e 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    display: inline-block !important;
}

/* CTA Download Buttons Row */
.vp-app-cta-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 14px !important;
    margin-top: 10px !important;
    width: 100% !important;
}

.vp-store-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 20px !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;
    cursor: pointer !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
}

.vp-store-btn:hover {
    transform: translateY(-3px) scale(1.02) !important;
    background: rgba(217, 70, 239, 0.18) !important;
    border-color: #d946ef !important;
    box-shadow: 0 10px 24px rgba(217, 70, 239, 0.35) !important;
    color: #ffffff !important;
}

.vp-store-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    flex-shrink: 0 !important;
}

.vp-store-text {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-store-sub {
    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: rgba(255, 255, 255, 0.75) !important;
}

.vp-store-main {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    letter-spacing: 0.2px !important;
}

/* Right Mockup Stage & Real Smartphone Image */
.vp-app-mockup-col {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    width: 100% !important;
}

.vp-phone-stage {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 440px !important;
    margin: 0 auto !important;
    padding: 30px 10px !important;
    box-sizing: border-box !important;
}

.vp-real-mockup-wrapper {
    position: relative !important;
    width: 330px !important;
    max-width: 100% !important;
    display: block !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.65)) drop-shadow(0 0 25px rgba(217, 70, 239, 0.35)) !important;
    animation: vpPhoneFloat 5s ease-in-out infinite alternate !important;
    border-radius: 48px !important;
}

.vp-real-phone-img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: contain !important;
    position: relative !important;
    z-index: 2 !important;
    border-radius: 46px !important;
}

/* High Precision SVG Laser Orbit */
.vp-phone-laser-svg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 10 !important;
    pointer-events: none !important;
    overflow: visible !important;
}

.vp-laser-beam-outer {
    stroke-dasharray: 22 78 !important;
    stroke-dashoffset: 0 !important;
    animation: vpLaserSweep 3.2s linear infinite !important;
    filter: drop-shadow(0 0 8px #d946ef) drop-shadow(0 0 16px #00f0ff) !important;
}

.vp-laser-beam-core {
    stroke-dasharray: 6 94 !important;
    stroke-dashoffset: 0 !important;
    animation: vpLaserSweep 3.2s linear infinite !important;
    filter: drop-shadow(0 0 4px #ffffff) !important;
}

@keyframes vpLaserSweep {
    0% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -100; }
}

@keyframes vpPhoneFloat {
    0% { transform: translateY(0px); }
    100% { transform: translateY(-8px); }
}

/* Floating Badges — DARK GLASS WITH NEON HIGHLIGHTS */
.vp-floating-badge {
    position: absolute !important;
    z-index: 20 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: rgba(20, 2, 33, 0.92) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    border: 1px solid rgba(217, 70, 239, 0.4) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.55), 0 0 15px rgba(217, 70, 239, 0.2) !important;
    padding: 7px 13px !important;
    border-radius: 14px !important;
    animation: vpBadgeHoverFloat 4s ease-in-out infinite alternate !important;
    white-space: nowrap !important;
    pointer-events: auto !important;
}

.vp-fbadge-icon {
    font-size: 15px !important;
    line-height: 1 !important;
}

.vp-fbadge-info {
    display: flex !important;
    flex-direction: column !important;
    text-align: left !important;
    line-height: 1.15 !important;
}

.vp-fbadge-info strong {
    font-family: 'Poppins', sans-serif !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
}

.vp-fbadge-info span {
    font-size: 9.5px !important;
    font-weight: 700 !important;
    color: #ffc42e !important;
    letter-spacing: 0.2px !important;
}

/* Badge 1: 4.9 Rating (Top Right) */
.vp-badge-top-right {
    top: 6% !important;
    right: -12px !important;
    animation-delay: 0s !important;
}

/* Badge 2: Step-by-Step Tutorials (Middle Left - Lowered) */
.vp-badge-step-by-step {
    top: 38% !important;
    left: -20px !important;
    animation-delay: 0.8s !important;
}
.vp-badge-step-by-step .vp-fbadge-info span {
    color: #00f0ff !important;
}

/* Badge 3: 24/7 Chat Support (Lower Right) */
.vp-badge-chat-support {
    bottom: 24% !important;
    right: -14px !important;
    padding: 6px 11px !important;
    animation-delay: 1.6s !important;
}
.vp-badge-chat-support .vp-fbadge-info strong {
    font-size: 11px !important;
}
.vp-badge-chat-support .vp-fbadge-info span {
    font-size: 9px !important;
    color: #d946ef !important;
}

/* Badge 4: Basic to Advance Course (Bottom Left) */
.vp-badge-basic-advance {
    bottom: 6% !important;
    left: -14px !important;
    animation-delay: 2.4s !important;
}
.vp-badge-basic-advance .vp-fbadge-info span {
    color: #ffc42e !important;
}

@keyframes vpBadgeHoverFloat {
    0% { transform: translateY(0px); }
    100% { transform: translateY(-6px); }
}

/* iOS App Store Guide Popup Modal */
.vp-ios-modal-backdrop {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(10, 0, 18, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    z-index: 999999 !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
}

.vp-ios-modal-backdrop.is-active {
    display: flex !important;
    opacity: 1 !important;
}

.vp-ios-modal-card {
    position: relative !important;
    width: 100% !important;
    max-width: 480px !important;
    background: linear-gradient(145deg, #1f0130 0%, #130020 100%) !important;
    border: 1.5px solid rgba(217, 70, 239, 0.5) !important;
    border-radius: 28px !important;
    padding: 32px 28px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.8), 0 0 40px rgba(217, 70, 239, 0.3) !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    transform: scale(0.95) translateY(10px) !important;
    transition: transform 0.3s cubic-bezier(0.2, 1, 0.3, 1) !important;
}

.vp-ios-modal-backdrop.is-active .vp-ios-modal-card {
    transform: scale(1) translateY(0) !important;
}

.vp-modal-close-btn {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: background 0.2s ease, transform 0.2s ease !important;
}

.vp-modal-close-btn:hover {
    background: rgba(217, 70, 239, 0.4) !important;
    transform: rotate(90deg) !important;
}

.vp-modal-header {
    text-align: center !important;
    margin-bottom: 24px !important;
}

.vp-modal-icon {
    width: 56px !important;
    height: 56px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    box-shadow: 0 8px 24px rgba(217, 70, 239, 0.4) !important;
    margin-bottom: 14px !important;
}

.vp-modal-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin: 0 0 6px 0 !important;
}

.vp-modal-subtitle {
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.75) !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.vp-modal-steps {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.vp-step-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 16px !important;
    padding: 14px 16px !important;
}

.vp-step-num {
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: #ffc42e !important;
    color: #1a0028 !important;
    font-weight: 900 !important;
    font-size: 13px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    margin-top: 2px !important;
}

.vp-step-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    font-size: 13px !important;
    text-align: left !important;
    color: rgba(255, 255, 255, 0.9) !important;
}

.vp-step-body strong {
    font-size: 13.5px !important;
    color: #ffffff !important;
}

.vp-step-body code {
    background: rgba(217, 70, 239, 0.2) !important;
    color: #ffc42e !important;
    padding: 2px 6px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
}

.vp-modal-code-box {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    background: rgba(0, 0, 0, 0.4) !important;
    border: 1px solid rgba(255, 196, 46, 0.5) !important;
    border-radius: 10px !important;
    padding: 8px 14px !important;
    margin-top: 4px !important;
    cursor: pointer !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.vp-code-text {
    font-family: 'Courier New', monospace !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    letter-spacing: 2px !important;
    color: #ffc42e !important;
}

.vp-copy-badge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #ffc42e !important;
    color: #1a0028 !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 5px 10px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.vp-copy-badge-btn.is-copied {
    background: #22c55e !important;
    color: #ffffff !important;
}

.vp-modal-download-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    background: linear-gradient(135deg, #ff007f 0%, #d946ef 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    padding: 10px 18px !important;
    border-radius: 12px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    margin-top: 4px !important;
    box-shadow: 0 4px 14px rgba(217, 70, 239, 0.4) !important;
}

/* Responsive Styles for App Showcase */
@media (max-width: 900px) {
    .vp-app-grid {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        text-align: center !important;
    }
    .vp-app-content-col {
        align-items: center !important;
        text-align: center !important;
    }
    .vp-app-headline {
        text-align: center !important;
    }
    .vp-app-cta-row {
        justify-content: center !important;
    }
    .vp-app-master-frame {
        padding: 36px 20px !important;
    }
}

@media (max-width: 600px) {
    .vp-app-showcase-section {
        padding: 45px 12px 55px 12px !important;
    }
    .vp-app-master-frame {
        padding: 28px 14px !important;
        border-radius: 24px !important;
    }
    .vp-real-mockup-wrapper {
        width: 270px !important;
    }
    /* Side-by-side buttons on mobile */
    .vp-app-cta-row {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }
    .vp-store-btn {
        padding: 8px 8px !important;
        gap: 6px !important;
        border-radius: 10px !important;
    }
    .vp-store-icon svg {
        width: 18px !important;
        height: 18px !important;
    }
    .vp-store-sub {
        font-size: 8.5px !important;
    }
    .vp-store-main {
        font-size: 11.5px !important;
    }
    /* Compact Floating Badges on Mobile */
    .vp-floating-badge {
        padding: 5px 9px !important;
        gap: 6px !important;
    }
    .vp-fbadge-icon {
        font-size: 13px !important;
    }
    .vp-fbadge-info strong {
        font-size: 10.5px !important;
    }
    .vp-fbadge-info span {
        font-size: 8.5px !important;
    }
    .vp-badge-top-right {
        top: 2% !important;
        right: -6px !important;
    }
    .vp-badge-step-by-step {
        top: 38% !important;
        left: -10px !important;
    }
    .vp-badge-chat-support {
        bottom: 24% !important;
        right: -8px !important;
        padding: 4px 8px !important;
    }
    .vp-badge-basic-advance {
        bottom: 4% !important;
        left: -8px !important;
    }
}

.vp-app-ambient-glow, .vp-glow-purple, .vp-glow-cyan, .vp-luxury-phone-backlight { display: none !important; opacity: 0 !important; }


/* SECTION 3 APP SHOWCASE - COMPACT PADDING OVERRIDE */
.elementor-520 .elementor-element.elementor-element-4f8dee5a,
#download-app,
section[data-id="4f8dee5a"] {
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
}
@media (max-width: 900px) {
    .elementor-520 .elementor-element.elementor-element-4f8dee5a,
    #download-app,
    section[data-id="4f8dee5a"] {
        padding: 0 !important;
        margin: 0 !important;
    }
}


/* SECTION 3 APP SHOWCASE - BALANCED PADDING */
.elementor-520 .elementor-element.elementor-element-4f8dee5a,
#download-app,
section[data-id="4f8dee5a"] {
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
}
@media (max-width: 900px) {
    .elementor-520 .elementor-element.elementor-element-4f8dee5a,
    #download-app,
    section[data-id="4f8dee5a"] {
        padding: 0 !important;
        margin: 0 !important;
    }
}/* End custom CSS */