.elementor-825 .elementor-element.elementor-element-4507a540 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-825 .elementor-element.elementor-element-529934db:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-825 .elementor-element.elementor-element-529934db > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-825 .elementor-element.elementor-element-529934db > .elementor-element-populated >  .elementor-background-overlay{opacity:0.5;}.elementor-825 .elementor-element.elementor-element-529934db > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 100px 100px 100px;}.elementor-825 .elementor-element.elementor-element-529934db > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 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 );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-825 .elementor-element.elementor-element-71939c94 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:55px;color:var( --e-global-color-accent );}.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-825 .elementor-element.elementor-element-d2c04ba{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-accent );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-825 .elementor-element.elementor-element-6c444980 .elementor-button{background-color:var( --e-global-color-2e5f277 );font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;line-height:29px;fill:var( --e-global-color-accent );color:var( --e-global-color-accent );border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-2e5f277 );border-radius:0px 0px 0px 0px;padding:8px 50px 8px 50px;}.elementor-825 .elementor-element.elementor-element-6c444980 .elementor-button:hover, .elementor-825 .elementor-element.elementor-element-6c444980 .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-text );border-color:var( --e-global-color-accent );}.elementor-825 .elementor-element.elementor-element-6c444980 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-825 .elementor-element.elementor-element-6c444980 .elementor-button:hover svg, .elementor-825 .elementor-element.elementor-element-6c444980 .elementor-button:focus svg{fill:var( --e-global-color-text );}.elementor-825 .elementor-element.elementor-element-6c09f67:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-825 .elementor-element.elementor-element-6c09f67 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://idahosunrooms.com/wp-content/uploads/2026/05/Warren-2-016-resized.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-825 .elementor-element.elementor-element-6c09f67 > .elementor-element-populated >  .elementor-background-overlay{opacity:0.5;}.elementor-825 .elementor-element.elementor-element-6c09f67 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 100px 100px 100px;}.elementor-825 .elementor-element.elementor-element-6c09f67 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-825 .elementor-element.elementor-element-6b532671{--spacer-size:400px;}.elementor-825 .elementor-element.elementor-element-1a516ba > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:flex-start;align-items:flex-start;}.elementor-825 .elementor-element.elementor-element-1a516ba{padding:80px 0px 80px 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-825 .elementor-element.elementor-element-d9736f5 img{width:100%;height:600px;}.elementor-825 .elementor-element.elementor-element-6b5d6e2 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:15px;}.elementor-825 .elementor-element.elementor-element-6b5d6e2 > .elementor-element-populated{margin:0px 25px 0px 25px;--e-column-margin-right:25px;--e-column-margin-left:25px;}.elementor-825 .elementor-element.elementor-element-04e4851{text-align:start;}.elementor-825 .elementor-element.elementor-element-04e4851 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:42px;font-weight:700;line-height:52px;color:var( --e-global-color-text );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );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 );line-height:var( --e-global-typography-secondary-line-height );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-825 .elementor-element.elementor-element-db9c6f7{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:5px;}.elementor-825 .elementor-element.elementor-element-db9c6f7 .elementor-divider-separator{width:23%;margin:0 auto;margin-left:0;}.elementor-825 .elementor-element.elementor-element-db9c6f7 .elementor-divider{text-align:left;padding-block-start:0px;padding-block-end:0px;}.elementor-825 .elementor-element.elementor-element-d7d895f{text-align:start;font-family:"Open Sans", Sans-serif;font-size:17px;font-weight:400;line-height:28px;}.elementor-825 .elementor-element.elementor-element-048ceac > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-825 .elementor-element.elementor-element-048ceac:not(.elementor-motion-effects-element-type-background), .elementor-825 .elementor-element.elementor-element-048ceac > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-825 .elementor-element.elementor-element-048ceac{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-825 .elementor-element.elementor-element-048ceac > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-825 .elementor-element.elementor-element-4711331 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-825 .elementor-element.elementor-element-3b34cc0{text-align:start;}.elementor-825 .elementor-element.elementor-element-3b34cc0 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:55px;color:var( --e-global-color-accent );}.elementor-825 .elementor-element.elementor-element-e2e01a9{--divider-border-style:solid;--divider-color:var( --e-global-color-accent );--divider-border-width:5px;}.elementor-825 .elementor-element.elementor-element-e2e01a9 .elementor-divider-separator{width:18%;margin:0 auto;margin-left:0;}.elementor-825 .elementor-element.elementor-element-e2e01a9 .elementor-divider{text-align:left;padding-block-start:0px;padding-block-end:0px;}.elementor-825 .elementor-element.elementor-element-1ee8f79{text-align:start;font-family:"Open Sans", Sans-serif;font-size:17px;font-weight:400;line-height:28px;color:var( --e-global-color-accent );}.elementor-825 .elementor-element.elementor-element-44f08c07 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-825 .elementor-element.elementor-element-44f08c07:not(.elementor-motion-effects-element-type-background), .elementor-825 .elementor-element.elementor-element-44f08c07 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-825 .elementor-element.elementor-element-44f08c07{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-825 .elementor-element.elementor-element-44f08c07 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-825 .elementor-element.elementor-element-1bfd4bcd{text-align:center;}.elementor-825 .elementor-element.elementor-element-1bfd4bcd .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:55px;color:var( --e-global-color-primary );}.elementor-825 .elementor-element.elementor-element-525185d6{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:5px;}.elementor-825 .elementor-element.elementor-element-525185d6 .elementor-divider-separator{width:22%;margin:0 auto;margin-center:0;}.elementor-825 .elementor-element.elementor-element-525185d6 .elementor-divider{text-align:center;padding-block-start:0px;padding-block-end:0px;}.elementor-widget-image-gallery .gallery-item .gallery-caption{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-825 .elementor-element.elementor-element-2cd89c45 .gallery-item .gallery-caption{display:none;}.elementor-825 .elementor-element.elementor-element-2cd89c45 .gallery-item{padding:0 15px 15px 0;}.elementor-825 .elementor-element.elementor-element-2cd89c45 .gallery{margin:0 -15px -15px 0;}.elementor-825 .elementor-element.elementor-element-62ca2a9 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-825 .elementor-element.elementor-element-62ca2a9:not(.elementor-motion-effects-element-type-background), .elementor-825 .elementor-element.elementor-element-62ca2a9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-8e77742 );}.elementor-825 .elementor-element.elementor-element-62ca2a9{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-825 .elementor-element.elementor-element-62ca2a9 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-825 .elementor-element.elementor-element-3c14f14.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-825 .elementor-element.elementor-element-9abca97{text-align:center;}.elementor-825 .elementor-element.elementor-element-9abca97 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:55px;color:var( --e-global-color-primary );}.elementor-825 .elementor-element.elementor-element-40321fc{text-align:center;}.elementor-825 .elementor-element.elementor-element-40321fc .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:18px;font-weight:700;line-height:28px;color:var( --e-global-color-text );}.elementor-825 .elementor-element.elementor-element-46466232{text-align:center;font-family:"Open Sans", Sans-serif;font-size:17px;font-weight:400;line-height:28px;color:var( --e-global-color-text );}.elementor-825 .elementor-element.elementor-element-b60bed5 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;line-height:29px;fill:var( --e-global-color-accent );color:var( --e-global-color-accent );border-style:none;border-radius:0px 0px 0px 0px;padding:10px 50px 10px 50px;}.elementor-825 .elementor-element.elementor-element-b60bed5 .elementor-button:hover, .elementor-825 .elementor-element.elementor-element-b60bed5 .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-primary );border-color:var( --e-global-color-secondary );}.elementor-825 .elementor-element.elementor-element-b60bed5{width:auto;max-width:auto;}.elementor-825 .elementor-element.elementor-element-b60bed5 > .elementor-widget-container{margin:0px 20px 0px 0px;}.elementor-825 .elementor-element.elementor-element-b60bed5 .elementor-button:hover svg, .elementor-825 .elementor-element.elementor-element-b60bed5 .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-825 .elementor-element.elementor-element-0d7e5f7 .elementor-button{background-color:var( --e-global-color-accent );font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;line-height:29px;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-style:none;border-radius:0px 0px 0px 0px;padding:10px 50px 10px 50px;}.elementor-825 .elementor-element.elementor-element-0d7e5f7 .elementor-button:hover, .elementor-825 .elementor-element.elementor-element-0d7e5f7 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-accent );border-color:var( --e-global-color-primary );}.elementor-825 .elementor-element.elementor-element-0d7e5f7{width:auto;max-width:auto;}.elementor-825 .elementor-element.elementor-element-0d7e5f7 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-825 .elementor-element.elementor-element-0d7e5f7 .elementor-button:hover svg, .elementor-825 .elementor-element.elementor-element-0d7e5f7 .elementor-button:focus svg{fill:var( --e-global-color-accent );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-825 .elementor-element.elementor-element-81b34a4{width:50%;}.elementor-825 .elementor-element.elementor-element-e7110dd{width:50%;}}@media(max-width:1024px){.elementor-825 .elementor-element.elementor-element-529934db > .elementor-element-populated{padding:20px 20px 20px 20px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-825 .elementor-element.elementor-element-71939c94 .elementor-heading-title{font-size:36px;line-height:1.2em;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-825 .elementor-element.elementor-element-d2c04ba{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-825 .elementor-element.elementor-element-6c444980 .elementor-button{font-size:16px;}.elementor-825 .elementor-element.elementor-element-6c09f67 > .elementor-element-populated{padding:20px 20px 20px 20px;}.elementor-825 .elementor-element.elementor-element-6b532671{--spacer-size:390px;}.elementor-825 .elementor-element.elementor-element-1a516ba{padding:50px 0px 50px 0px;}.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-825 .elementor-element.elementor-element-d9736f5 img{height:500px;object-fit:cover;}.elementor-825 .elementor-element.elementor-element-6b5d6e2 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-825 .elementor-element.elementor-element-04e4851 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-825 .elementor-element.elementor-element-d7d895f{font-size:17px;line-height:1.3em;}.elementor-825 .elementor-element.elementor-element-048ceac{padding:50px 0px 50px 0px;}.elementor-825 .elementor-element.elementor-element-3b34cc0 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-825 .elementor-element.elementor-element-e2e01a9 .elementor-divider-separator{width:50%;}.elementor-825 .elementor-element.elementor-element-1ee8f79{font-size:17px;line-height:1.3em;}.elementor-825 .elementor-element.elementor-element-44f08c07{padding:50px 0px 50px 0px;}.elementor-825 .elementor-element.elementor-element-1bfd4bcd .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-825 .elementor-element.elementor-element-525185d6 .elementor-divider-separator{width:50%;}.elementor-825 .elementor-element.elementor-element-62ca2a9{padding:50px 0px 50px 0px;}.elementor-825 .elementor-element.elementor-element-9abca97 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-825 .elementor-element.elementor-element-46466232{font-size:17px;line-height:1.3em;}.elementor-825 .elementor-element.elementor-element-b60bed5 .elementor-button{font-size:16px;}.elementor-825 .elementor-element.elementor-element-0d7e5f7 .elementor-button{font-size:16px;}}@media(max-width:767px){.elementor-825 .elementor-element.elementor-element-4507a540{padding:0px 0px 0px 0px;}.elementor-825 .elementor-element.elementor-element-529934db > .elementor-element-populated{padding:30px 10px 30px 10px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-825 .elementor-element.elementor-element-71939c94{text-align:center;}.elementor-825 .elementor-element.elementor-element-71939c94 .elementor-heading-title{font-size:28px;line-height:1.3em;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-825 .elementor-element.elementor-element-d2c04ba{text-align:center;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-825 .elementor-element.elementor-element-6c444980 .elementor-button{font-size:18px;line-height:1.3em;}.elementor-825 .elementor-element.elementor-element-6c09f67 > .elementor-element-populated{padding:30px 10px 30px 10px;}.elementor-825 .elementor-element.elementor-element-6b532671{--spacer-size:200px;}.elementor-825 .elementor-element.elementor-element-1a516ba{padding:50px 0px 50px 0px;}.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-825 .elementor-element.elementor-element-d9736f5 img{height:245px;object-fit:cover;}.elementor-825 .elementor-element.elementor-element-04e4851 .elementor-heading-title{font-size:28px;line-height:1.2em;}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-825 .elementor-element.elementor-element-d7d895f{font-size:16px;line-height:1.3em;}.elementor-825 .elementor-element.elementor-element-048ceac{padding:50px 0px 50px 0px;}.elementor-825 .elementor-element.elementor-element-3b34cc0{text-align:center;}.elementor-825 .elementor-element.elementor-element-3b34cc0 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-825 .elementor-element.elementor-element-e2e01a9 .elementor-divider-separator{width:32%;margin:0 auto;margin-center:0;}.elementor-825 .elementor-element.elementor-element-e2e01a9 .elementor-divider{text-align:center;}.elementor-825 .elementor-element.elementor-element-1ee8f79{text-align:center;font-size:16px;line-height:1.9em;}.elementor-825 .elementor-element.elementor-element-44f08c07 > .elementor-container{max-width:1222px;}.elementor-825 .elementor-element.elementor-element-44f08c07{padding:50px 0px 50px 0px;}.elementor-825 .elementor-element.elementor-element-1bfd4bcd{text-align:center;}.elementor-825 .elementor-element.elementor-element-1bfd4bcd .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-825 .elementor-element.elementor-element-525185d6 .elementor-divider-separator{width:32%;margin:0 auto;margin-center:0;}.elementor-825 .elementor-element.elementor-element-525185d6 .elementor-divider{text-align:center;}.elementor-825 .elementor-element.elementor-element-62ca2a9 > .elementor-container{max-width:1222px;}.elementor-825 .elementor-element.elementor-element-62ca2a9{padding:50px 0px 50px 0px;}.elementor-825 .elementor-element.elementor-element-9abca97{text-align:center;}.elementor-825 .elementor-element.elementor-element-9abca97 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-825 .elementor-element.elementor-element-40321fc{text-align:center;}.elementor-825 .elementor-element.elementor-element-40321fc .elementor-heading-title{font-size:16px;line-height:1.5em;}.elementor-825 .elementor-element.elementor-element-46466232{font-size:16px;line-height:1.3em;}.elementor-825 .elementor-element.elementor-element-b60bed5 > .elementor-widget-container{margin:0px 0px 6px 0px;}.elementor-825 .elementor-element.elementor-element-b60bed5 .elementor-button{font-size:18px;line-height:1.3em;padding:10px 60px 10px 60px;}.elementor-825 .elementor-element.elementor-element-0d7e5f7 .elementor-button{font-size:18px;line-height:1.3em;}}@media(max-width:1024px) and (min-width:768px){.elementor-825 .elementor-element.elementor-element-85d7e06{width:100%;}.elementor-825 .elementor-element.elementor-element-6b5d6e2{width:100%;}.elementor-825 .elementor-element.elementor-element-81b34a4{width:32%;}.elementor-825 .elementor-element.elementor-element-e7110dd{width:68%;}}/* Start custom CSS for image-gallery, class: .elementor-element-2cd89c45 *//* Gallery image container - space only on image */
.elementor-image-gallery .gallery-item {
    position: relative;
    overflow: hidden;
    margin-bottom: 0 !important;
    padding-bottom: 8px !important;
}

.elementor-image-gallery .gallery-item .gallery-icon {
    position: relative;
    display: inline-block;
    width: 100%;
    overflow: hidden;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Professional overlay */
.elementor-image-gallery .gallery-item .gallery-icon::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(37, 74, 109, 0.35);
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1;
    pointer-events: none;
}

.elementor-image-gallery .gallery-item .gallery-icon:hover::before {
    opacity: 1;
}

/* Professional zoom animation */
.elementor-image-gallery .gallery-item img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    margin-bottom: 0 !important;
}

.elementor-image-gallery .gallery-item:hover img {
    transform: scale(1.08);
}

/* Shine effect */
.elementor-image-gallery .gallery-item .gallery-icon::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -60%;
    width: 200%;
    height: 200%;
    background: linear-gradient(
        45deg,
        rgba(255,255,255,0) 30%,
        rgba(255,255,255,0.1) 50%,
        rgba(255,255,255,0) 70%
    );
    transform: rotate(45deg);
    opacity: 0;
    transition: opacity 0.5s ease;
    z-index: 2;
    pointer-events: none;
}

.elementor-image-gallery .gallery-item:hover .gallery-icon::after {
    opacity: 1;
    animation: shine 0.8s ease-out;
}

@keyframes shine {
    0%  { transform: translateX(-100%) rotate(45deg); }
    100% { transform: translateX(100%) rotate(45deg); }
}

.elementor-image-gallery .gallery-item {
    cursor: pointer;
}

/* ─── TABLET — 3 columns full fix ─── */
@media (min-width: 769px) and (max-width: 1024px) {

    /* Force the gallery wrapper to be a proper grid */
    .elementor-image-gallery .gallery {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Kill Elementor's <dl> default styles that shrink items */
    .elementor-image-gallery .gallery-item {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        box-sizing: border-box !important;
    }

    /* Force the anchor/icon wrapper to fill the cell */
    .elementor-image-gallery .gallery-item .gallery-icon,
    .elementor-image-gallery .gallery-item a,
    .elementor-image-gallery .gallery-item > * {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    /* Force image to fill its parent fully */
    .elementor-image-gallery .gallery-item img {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        display: block !important;
    }
}

/* ─── MOBILE — 2 columns ─── */
@media (max-width: 768px) {

    .elementor-image-gallery .gallery {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .elementor-image-gallery .gallery-item {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        box-sizing: border-box !important;
    }

    .elementor-image-gallery .gallery-item .gallery-icon,
    .elementor-image-gallery .gallery-item a,
    .elementor-image-gallery .gallery-item > * {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .elementor-image-gallery .gallery-item img {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        display: block !important;
    }
}

/* Hide all captions */
.elementor-image-gallery .gallery-item .gallery-caption,
.elementor-image-gallery .gallery-caption,
.elementor-image-gallery figcaption,
.elementor-image-gallery .wp-caption-text {
    display: none !important;
}/* End custom CSS */