.elementor-90 .elementor-element.elementor-element-365b1849{--display:flex;--min-height:623px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:24px 101px;--row-gap:24px;--column-gap:101px;--overlay-opacity:0.6;--padding-top:100px;--padding-bottom:80px;--padding-left:24px;--padding-right:24px;}.elementor-90 .elementor-element.elementor-element-365b1849::before, .elementor-90 .elementor-element.elementor-element-365b1849 > .elementor-background-video-container::before, .elementor-90 .elementor-element.elementor-element-365b1849 > .e-con-inner > .elementor-background-video-container::before, .elementor-90 .elementor-element.elementor-element-365b1849 > .elementor-background-slideshow::before, .elementor-90 .elementor-element.elementor-element-365b1849 > .e-con-inner > .elementor-background-slideshow::before, .elementor-90 .elementor-element.elementor-element-365b1849 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-secondary );--background-overlay:'';}.elementor-90 .elementor-element.elementor-element-c57f7ec{--display:flex;--justify-content:space-between;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-90 .elementor-element.elementor-element-3c13748{width:var( --container-widget-width, 23% );max-width:23%;background-color:#E1E8ED26;padding:4px 12px 4px 12px;--container-widget-width:23%;--container-widget-flex-grow:0;border-style:solid;border-width:1px 1px 1px 1px;border-color:#FFFFFF;border-radius:18px 18px 18px 18px;--e-icon-list-icon-size:11px;--icon-vertical-offset:0px;}.elementor-90 .elementor-element.elementor-element-3c13748.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-90 .elementor-element.elementor-element-3c13748 .elementor-icon-list-icon i{color:#00FF8B;transition:color 0.3s;}.elementor-90 .elementor-element.elementor-element-3c13748 .elementor-icon-list-icon svg{fill:#00FF8B;transition:fill 0.3s;}.elementor-90 .elementor-element.elementor-element-3c13748 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-90 .elementor-element.elementor-element-3c13748 .elementor-icon-list-item > a{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.5em;}.elementor-90 .elementor-element.elementor-element-3c13748 .elementor-icon-list-text{color:var( --e-global-color-background );transition:color 0.3s;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-90 .elementor-element.elementor-element-1dd8fcb .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:55px;font-weight:800;color:#152D88;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-90 .elementor-element.elementor-element-aa43b7b{color:var( --e-global-color-background );}.elementor-widget-search{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search.e-focus{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search .elementor-pagination{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-90 .elementor-element.elementor-element-fce483e .e-search-input{background-color:var( --e-global-color-transparent );border-radius:12px 12px 12px 12px;}.elementor-90 .elementor-element.elementor-element-fce483e .e-search-submit{background-color:var( --e-global-color-secondary );}.elementor-90 .elementor-element.elementor-element-fce483e{--e-search-placeholder-color:#F5F7FA69;--e-search-input-color:var( --e-global-color-accent );--e-search-input-padding-block-start:5px;--e-search-input-padding-inline-start:10px;--e-search-input-padding-block-end:5px;--e-search-input-padding-inline-end:10px;--e-search-submit-color:var( --e-global-color-background );--e-search-submit-border-radius:20px 20px 20px 20px;--e-search-submit-padding:0px 12px 0px 12px;}.elementor-90 .elementor-element.elementor-element-df056cf{--e-filter-direction:row;--e-filter-white-space:nowrap;--e-filter-wrap:nowrap;--e-filter-overflow-x:scroll;--e-filter-normal-text-color:var( --e-global-color-background );--e-filter-hover-text-color:var( --e-global-color-background );--e-filter-active-text-color:#254797;--e-filter-item-border-radius:26px 26px 26px 26px;}.elementor-90 .elementor-element.elementor-element-df056cf .e-filter-item:not( [aria-pressed=true] ):not( :hover ){background-color:#93949614;border-style:solid;border-width:1px 1px 1px 1px;border-color:#FFFFFF6E;}.elementor-90 .elementor-element.elementor-element-df056cf .e-filter-item[aria-pressed="true"]{background-color:var( --e-global-color-accent );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );}.elementor-90 .elementor-element.elementor-element-df056cf .e-filter-item{font-family:"Inter", Sans-serif;font-weight:600;padding:4px 14px 4px 14px;}.elementor-90 .elementor-element.elementor-element-174dfca{--display:flex;--border-radius:51px 51px 51px 51px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-90 .elementor-element.elementor-element-174dfca:not(.elementor-motion-effects-element-type-background), .elementor-90 .elementor-element.elementor-element-174dfca > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://peanichphum.com/wp-content/uploads/2025/10/Picture5-2.jpg");}.elementor-90 .elementor-element.elementor-element-174dfca.e-con:hover{--e-con-transform-translateY:-8px;}.elementor-90 .elementor-element.elementor-element-174dfca:hover{box-shadow:0px 0px 29px 3px rgba(0,0,0,0.5);}.elementor-90 .elementor-element.elementor-element-318fcba4{--display:flex;--gap:48px 48px;--row-gap:48px;--column-gap:48px;--flex-wrap:nowrap;--padding-top:100px;--padding-bottom:100px;--padding-left:24px;--padding-right:24px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-90 .elementor-element.elementor-element-a88a682{--grid-columns:4;--load-more-button-align:center;}.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button{background-color:transparent;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:600;line-height:1.5em;fill:var( --e-global-color-background );color:var( --e-global-color-background );background-image:linear-gradient(94deg, var( --e-global-color-secondary ) 0%, var( --e-global-color-accent ) 100%);border-radius:15px 15px 15px 15px;}.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-loop-container{grid-auto-rows:1fr;}.elementor-90 .elementor-element.elementor-element-a88a682 .e-loop-item > .elementor-section, .elementor-90 .elementor-element.elementor-element-a88a682 .e-loop-item > .elementor-section > .elementor-container, .elementor-90 .elementor-element.elementor-element-a88a682 .e-loop-item > .e-con, .elementor-90 .elementor-element.elementor-element-a88a682 .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}.elementor-90 .elementor-element.elementor-element-c437a2d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;}.elementor-90 .elementor-element.elementor-element-2d0e39ed{--display:flex;--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:space-between;--align-items:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#4D4D4D61;--border-color:#4D4D4D61;--border-radius:30px 30px 30px 30px;--margin-top:70px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:40px;--padding-right:40px;}.elementor-90 .elementor-element.elementor-element-2d0e39ed:not(.elementor-motion-effects-element-type-background), .elementor-90 .elementor-element.elementor-element-2d0e39ed > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0000001F;}.elementor-90 .elementor-element.elementor-element-74063f3d{--display:flex;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--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-90 .elementor-element.elementor-element-161b4ec1 .elementor-heading-title{color:#1E2A58;}.elementor-90 .elementor-element.elementor-element-614d12ff{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button{background-color:#49CEF1;}.elementor-90 .elementor-element.elementor-element-38059a4{width:var( --container-widget-width, 218px );max-width:218px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:218px;--container-widget-flex-grow:0;}.elementor-90 .elementor-element.elementor-element-38059a4.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-90 .elementor-element.elementor-element-63507785{--display:flex;--border-radius:25px 25px 25px 25px;--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-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-90 .elementor-element.elementor-element-7fd27866 img{height:331px;object-fit:cover;object-position:center center;border-radius:25px 25px 25px 25px;}.elementor-90 .elementor-element.elementor-element-7c9dfc4{--display:flex;--min-height:600px;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:42px 0px;--row-gap:42px;--column-gap:0px;--overflow:hidden;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-90 .elementor-element.elementor-element-dfa9715{--display:flex;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#F5F7FA4D;--border-color:#F5F7FA4D;--border-radius:25px 25px 25px 25px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-90 .elementor-element.elementor-element-dfa9715:not(.elementor-motion-effects-element-type-background), .elementor-90 .elementor-element.elementor-element-dfa9715 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#302D2D42;}.elementor-90 .elementor-element.elementor-element-1fa4a17{text-align:center;}.elementor-90 .elementor-element.elementor-element-1fa4a17 .elementor-heading-title{color:#F5F7FA;}.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button{background-color:#49CEF1;}.elementor-90 .elementor-element.elementor-element-3ec8c7f{width:var( --container-widget-width, 151px );max-width:151px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:151px;--container-widget-flex-grow:0;}.elementor-90 .elementor-element.elementor-element-3ec8c7f.elementor-element{--align-self:center;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-90 .elementor-element.elementor-element-365b1849{--content-width:1280px;}.elementor-90 .elementor-element.elementor-element-318fcba4{--content-width:1280px;}.elementor-90 .elementor-element.elementor-element-c437a2d{--content-width:1280px;}.elementor-90 .elementor-element.elementor-element-dfa9715{--width:1280px;}}@media(max-width:1024px) and (min-width:768px){.elementor-90 .elementor-element.elementor-element-dfa9715{--width:100%;}}@media(max-width:1024px){.elementor-90 .elementor-element.elementor-element-365b1849{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-90 .elementor-element.elementor-element-1dd8fcb .elementor-heading-title{font-size:40px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-search .elementor-pagination{font-size:var( --e-global-typography-primary-font-size );}.elementor-90 .elementor-element.elementor-element-318fcba4{--padding-top:80px;--padding-bottom:80px;--padding-left:16px;--padding-right:16px;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-90 .elementor-element.elementor-element-a88a682{--grid-columns:2;}.elementor-90 .elementor-element.elementor-element-2d0e39ed{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:32px 32px;--row-gap:32px;--column-gap:32px;--padding-top:80px;--padding-bottom:80px;--padding-left:16px;--padding-right:16px;}.elementor-90 .elementor-element.elementor-element-74063f3d{--gap:16px 16px;--row-gap:16px;--column-gap:16px;}.elementor-90 .elementor-element.elementor-element-614d12ff{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-90 .elementor-element.elementor-element-7c9dfc4{--min-height:0vh;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:48px 48px;--row-gap:48px;--column-gap:48px;--flex-wrap:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:16px;--padding-right:16px;}}@media(max-width:767px){.elementor-90 .elementor-element.elementor-element-365b1849{--min-height:0px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:48px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-90 .elementor-element.elementor-element-3c13748{width:var( --container-widget-width, 192px );max-width:192px;--container-widget-width:192px;--container-widget-flex-grow:0;}.elementor-90 .elementor-element.elementor-element-3c13748 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-90 .elementor-element.elementor-element-3c13748 .elementor-icon-list-item > a{font-size:9px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-90 .elementor-element.elementor-element-1dd8fcb .elementor-heading-title{font-size:18px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-search .elementor-pagination{font-size:var( --e-global-typography-primary-font-size );}.elementor-90 .elementor-element.elementor-element-318fcba4{--padding-top:46px;--padding-bottom:46px;--padding-left:16px;--padding-right:16px;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-90 .elementor-element.elementor-element-a88a682{--grid-columns:1;}.elementor-90 .elementor-element.elementor-element-2d0e39ed{--min-height:0px;--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:center;--align-items:center;--padding-top:48px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-90 .elementor-element.elementor-element-74063f3d{--justify-content:center;--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-90 .elementor-element.elementor-element-161b4ec1{text-align:left;}.elementor-90 .elementor-element.elementor-element-614d12ff{text-align:left;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-90 .elementor-element.elementor-element-7c9dfc4{--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:48px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-90 .elementor-element.elementor-element-1fa4a17{text-align:center;}}/* Start custom CSS for heading, class: .elementor-element-1dd8fcb */.elementor-90 .elementor-element.elementor-element-1dd8fcb {
  background: linear-gradient(90deg,#fff,#2CC5EE);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-365b1849 *//* ===== Brand colors (tweak if needed) ===== */
.elementor-90 .elementor-element.elementor-element-365b1849{
  --pp-navy:#243B7A;   /* deep blue  */
  --pp-blue:#2F56B0;   /* mid blue   */
  --pp-sky:#00B5E2;    /* cyan       */
  --pp-ice:#41C0F0;    /* light cyan */

  position: relative;
  overflow: hidden;
  isolation: isolate;

  /* Animated gradient wash */
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(65,192,240,.28) 0%, transparent 60%),
    linear-gradient(135deg, var(--pp-navy), var(--pp-blue), var(--pp-sky));
  background-size: 200% 200%;
  animation: ppHeroGradient 12s ease-in-out infinite;
}

/* Wave overlay (CSS-only) */
.elementor-90 .elementor-element.elementor-element-365b1849::before{
  content:"";
  position:absolute; inset:0; z-index:0; opacity:.35;
  background-repeat:no-repeat;
  background-size:cover;
  background-position:50% 0;
  background-image: url("data:image/svg+xml;utf8,\
  <svg viewBox='0 0 1440 600' xmlns='http://www.w3.org/2000/svg'>\
    <defs><linearGradient id='g' x1='0' x2='1'><stop offset='0%' stop-color='%23ffffff' stop-opacity='.0'/>\
    <stop offset='60%' stop-color='%2341C0F0' stop-opacity='.6'/>\
    <stop offset='100%' stop-color='%2300B5E2' stop-opacity='.9'/></linearGradient></defs>\
    <path d='M0,520 C220,380 420,560 640,420 C860,280 1120,420 1440,240 L1440,0 L0,0 Z' fill='url(%23g)'/>\
  </svg>");
  animation: ppWaveDrift 14s ease-in-out infinite;
}

/* Blob (bottom-left) */
.elementor-90 .elementor-element.elementor-element-365b1849::after{
  content:"";
  position:absolute; z-index:0;
  width: 36vmax; height: 36vmax;
  left: -10vmax; bottom: -12vmax;
  background: radial-gradient(circle at 70% 70%, rgba(36,59,122,.50), rgba(47,86,176,.25) 48%, transparent 63%);
  filter: blur(28px) saturate(120%);
  opacity:.85;
  border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%;
  animation: ppBlob 22s ease-in-out infinite reverse;
}

/* Keep section content above the animation */
.elementor-90 .elementor-element.elementor-element-365b1849 .elementor-container,
.elementor-90 .elementor-element.elementor-element-365b1849 .e-con,
.elementor-90 .elementor-element.elementor-element-365b1849 > .elementor-container > .elementor-column,
.elementor-90 .elementor-element.elementor-element-365b1849 > .e-con-inner{
  position: relative; z-index:1;
}

/* Keyframes */
@keyframes ppHeroGradient{
  0%,100%{ background-position: 0% 50%, 0% 50%; }
  50%    { background-position: 100% 50%, 100% 50%; }
}
@keyframes ppWaveDrift{
  0%,100%{ background-position: 50% 0; }
  50%    { background-position: 50% 12px; } /* gentle bob */
}
@keyframes ppBlob{
  0%  { transform: translate3d(0,0,0) rotate(0deg) scale(1); }
  50% { transform: translate3d(0,-10px,0) rotate(8deg) scale(1.05); }
  100%{ transform: translate3d(0,0,0) rotate(0deg) scale(1); }
}

/* Reduced-motion accessibility */
@media (prefers-reduced-motion: reduce){
  .elementor-90 .elementor-element.elementor-element-365b1849{ animation:none; background-position:50% 50%; }
  .elementor-90 .elementor-element.elementor-element-365b1849::before, .elementor-90 .elementor-element.elementor-element-365b1849::after{ animation:none; }
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-a88a682 *//* Brand colors for this button instance */
.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button{
  --pp-navy:#243B7A;
  --pp-blue:#2F56B0;
  --pp-sky:#00B5E2;
  overflow: hidden;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;

  padding: 1.05rem 1.6rem;              /* size */
  border: 0;
  border-radius: 9999px;
  font-weight: 800;
  letter-spacing: .2px;
  color: #fff;
  text-decoration: none;

  background: linear-gradient(135deg,var(--pp-navy),var(--pp-blue),var(--pp-sky)) !important;
  background-size: 200% 200%;
  animation: ppGradient 6s ease infinite;

  box-shadow: 0 10px 20px rgba(0,0,0,.12);
  transition: transform .25s ease, box-shadow .25s ease;
  isolation: isolate; /* keeps shine inside */
}

/* Hover lift + glow */
.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button:hover{
  transform: translateY(-2px) scale(1.02);
  box-shadow:
    0 18px 40px rgba(0,181,226,.35),
    0 10px 18px rgba(0,0,0,.18);
}

/* Subtle shine sweep */
.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
  transform: translateX(-100%);
  transition: transform .6s ease;
  border-radius: inherit;
  pointer-events: none;
  z-index: 0;
}
.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button:hover::after{ transform: translateX(100%); }

/* Icon spacing (if you added an icon) */
.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button .elementor-button-icon{ margin-left: .5rem; }

/* Focus for keyboard accessibility */
.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button:focus{ outline: none; }
.elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button:focus-visible{
  box-shadow:
    0 0 0 3px rgba(255,255,255,.95),
    0 0 0 6px rgba(0,181,226,.45);
}

/* Animated gradient keyframes */
@keyframes ppGradient{
  0%,100%{ background-position: 0% 50%; }
  50%   { background-position:100% 50%; }
}

/* Respect reduced motion preference */
@media (prefers-reduced-motion: reduce){
  .elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button{ animation: none; background-position: 50% 50%; }
  .elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button, .elementor-90 .elementor-element.elementor-element-a88a682 .elementor-button::after{ transition: none; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-161b4ec1 */.elementor-90 .elementor-element.elementor-element-161b4ec1 {
  background: linear-gradient(90deg,#1E2A58,#2CC5EE);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-38059a4 *//* Brand colors for this button instance */
.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button{
  --pp-navy:#243B7A;
  --pp-blue:#2F56B0;
  --pp-sky:#00B5E2;
  overflow: hidden;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;

  padding: 1.05rem 1.6rem;              /* size */
  border: 0;
  border-radius: 9999px;
  font-weight: 800;
  letter-spacing: .2px;
  color: #fff;
  text-decoration: none;

  background: linear-gradient(135deg,var(--pp-navy),var(--pp-blue),var(--pp-sky)) !important;
  background-size: 200% 200%;
  animation: ppGradient 6s ease infinite;

  box-shadow: 0 10px 20px rgba(0,0,0,.12);
  transition: transform .25s ease, box-shadow .25s ease;
  isolation: isolate; /* keeps shine inside */
}

/* Hover lift + glow */
.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button:hover{
  transform: translateY(-2px) scale(1.02);
  box-shadow:
    0 18px 40px rgba(0,181,226,.35),
    0 10px 18px rgba(0,0,0,.18);
}

/* Subtle shine sweep */
.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
  transform: translateX(-100%);
  transition: transform .6s ease;
  border-radius: inherit;
  pointer-events: none;
  z-index: 0;
}
.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button:hover::after{ transform: translateX(100%); }

/* Icon spacing (if you added an icon) */
.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button .elementor-button-icon{ margin-left: .5rem; }

/* Focus for keyboard accessibility */
.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button:focus{ outline: none; }
.elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button:focus-visible{
  box-shadow:
    0 0 0 3px rgba(255,255,255,.95),
    0 0 0 6px rgba(0,181,226,.45);
}

/* Animated gradient keyframes */
@keyframes ppGradient{
  0%,100%{ background-position: 0% 50%; }
  50%   { background-position:100% 50%; }
}

/* Respect reduced motion preference */
@media (prefers-reduced-motion: reduce){
  .elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button{ animation: none; background-position: 50% 50%; }
  .elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button, .elementor-90 .elementor-element.elementor-element-38059a4 .elementor-button::after{ transition: none; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-1fa4a17 *//* Works without adding a class — targets this widget only */
.elementor-90 .elementor-element.elementor-element-1fa4a17 .elementor-heading-title{
  /* pick your colors */
  background: linear-gradient(90deg,#ffff,#49CEF1);
  /* make the gradient fill the text */
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;   /* Safari/WebKit */
  display:inline-block;                    /* avoids clipping issues */
}

/* Optional: animated gradient */
@keyframes gradientShift {
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
.elementor-90 .elementor-element.elementor-element-1fa4a17 .elementor-heading-title.is-animated{
  background-size:200% 100%;
  animation: gradientShift 6s ease-in-out infinite;
}

/* Optional: hover effect (slightly brighter) */
.elementor-90 .elementor-element.elementor-element-1fa4a17 .elementor-heading-title:hover{
  filter:brightness(1.08);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-3ec8c7f *//* Brand colors for this button instance */
.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button{
  --pp-navy:#243B7A;
  --pp-blue:#2F56B0;
  --pp-sky:#00B5E2;

  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .6rem;
overflow: hidden;
  padding: 1.05rem 1.6rem;              /* size */
  border: 0;
  border-radius: 9999px;
  font-weight: 800;
  letter-spacing: .2px;
  color: #fff;
  text-decoration: none;

  background: linear-gradient(135deg,var(--pp-navy),var(--pp-blue),var(--pp-sky)) !important;
  background-size: 200% 200%;
  animation: ppGradient 6s ease infinite;

  box-shadow: 0 10px 20px rgba(0,0,0,.12);
  transition: transform .25s ease, box-shadow .25s ease;
  isolation: isolate; /* keeps shine inside */
}

/* Hover lift + glow */
.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button:hover{
  transform: translateY(-2px) scale(1.02);
  box-shadow:
    0 18px 40px rgba(0,181,226,.35),
    0 10px 18px rgba(0,0,0,.18);
}

/* Subtle shine sweep */
.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
  transform: translateX(-100%);
  transition: transform .6s ease;
  border-radius: inherit;
  pointer-events: none;
  z-index: 0;
}
.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button:hover::after{ transform: translateX(100%); }

/* Icon spacing (if you added an icon) */
.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button .elementor-button-icon{ margin-left: .5rem; }

/* Focus for keyboard accessibility */
.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button:focus{ outline: none; }
.elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button:focus-visible{
  box-shadow:
    0 0 0 3px rgba(255,255,255,.95),
    0 0 0 6px rgba(0,181,226,.45);
}

/* Animated gradient keyframes */
@keyframes ppGradient{
  0%,100%{ background-position: 0% 50%; }
  50%   { background-position:100% 50%; }
}

/* Respect reduced motion preference */
@media (prefers-reduced-motion: reduce){
  .elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button{ animation: none; background-position: 50% 50%; }
  .elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button, .elementor-90 .elementor-element.elementor-element-3ec8c7f .elementor-button::after{ transition: none; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7c9dfc4 *//* ===== Brand colors (tweak if needed) ===== */
.elementor-90 .elementor-element.elementor-element-7c9dfc4{
  --pp-navy:#243B7A;   /* deep blue  */
  --pp-blue:#2F56B0;   /* mid blue   */
  --pp-sky:#00B5E2;    /* cyan       */
  --pp-ice:#41C0F0;    /* light cyan */

  position: relative;
  overflow: hidden;
  isolation: isolate;

  /* Animated gradient wash */
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(65,192,240,.28) 0%, transparent 60%),
    linear-gradient(135deg, var(--pp-navy), var(--pp-blue), var(--pp-sky));
  background-size: 200% 200%;
  animation: ppHeroGradient 12s ease-in-out infinite;
}

/* Wave overlay (CSS-only) */
.elementor-90 .elementor-element.elementor-element-7c9dfc4::before{
  content:"";
  position:absolute; inset:0; z-index:0; opacity:.35;
  background-repeat:no-repeat;
  background-size:cover;
  background-position:50% 0;
  background-image: url("data:image/svg+xml;utf8,\
  <svg viewBox='0 0 1440 600' xmlns='http://www.w3.org/2000/svg'>\
    <defs><linearGradient id='g' x1='0' x2='1'><stop offset='0%' stop-color='%23ffffff' stop-opacity='.0'/>\
    <stop offset='60%' stop-color='%2341C0F0' stop-opacity='.6'/>\
    <stop offset='100%' stop-color='%2300B5E2' stop-opacity='.9'/></linearGradient></defs>\
    <path d='M0,520 C220,380 420,560 640,420 C860,280 1120,420 1440,240 L1440,0 L0,0 Z' fill='url(%23g)'/>\
  </svg>");
  animation: ppWaveDrift 14s ease-in-out infinite;
}

/* Blob (bottom-left) */
.elementor-90 .elementor-element.elementor-element-7c9dfc4::after{
  content:"";
  position:absolute; z-index:0;
  width: 36vmax; height: 36vmax;
  left: -10vmax; bottom: -12vmax;
  background: radial-gradient(circle at 70% 70%, rgba(36,59,122,.50), rgba(47,86,176,.25) 48%, transparent 63%);
  filter: blur(28px) saturate(120%);
  opacity:.85;
  border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%;
  animation: ppBlob 22s ease-in-out infinite reverse;
}

/* Keep section content above the animation */
.elementor-90 .elementor-element.elementor-element-7c9dfc4 .elementor-container,
.elementor-90 .elementor-element.elementor-element-7c9dfc4 .e-con,
.elementor-90 .elementor-element.elementor-element-7c9dfc4 > .elementor-container > .elementor-column,
.elementor-90 .elementor-element.elementor-element-7c9dfc4 > .e-con-inner{
  position: relative; z-index:1;
}

/* Keyframes */
@keyframes ppHeroGradient{
  0%,100%{ background-position: 0% 50%, 0% 50%; }
  50%    { background-position: 100% 50%, 100% 50%; }
}
@keyframes ppWaveDrift{
  0%,100%{ background-position: 50% 0; }
  50%    { background-position: 50% 12px; } /* gentle bob */
}
@keyframes ppBlob{
  0%  { transform: translate3d(0,0,0) rotate(0deg) scale(1); }
  50% { transform: translate3d(0,-10px,0) rotate(8deg) scale(1.05); }
  100%{ transform: translate3d(0,0,0) rotate(0deg) scale(1); }
}

/* Reduced-motion accessibility */
@media (prefers-reduced-motion: reduce){
  .elementor-90 .elementor-element.elementor-element-7c9dfc4{ animation:none; background-position:50% 50%; }
  .elementor-90 .elementor-element.elementor-element-7c9dfc4::before, .elementor-90 .elementor-element.elementor-element-7c9dfc4::after{ animation:none; }
}/* End custom CSS */