.elementor-833 .elementor-element.elementor-element-26527bfe > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-833 .elementor-element.elementor-element-4dce9857:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-833 .elementor-element.elementor-element-4dce9857 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-833 .elementor-element.elementor-element-4dce9857 > .elementor-element-populated >  .elementor-background-overlay{opacity:0.5;}.elementor-833 .elementor-element.elementor-element-4dce9857 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 100px 100px 100px;}.elementor-833 .elementor-element.elementor-element-4dce9857 > .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-833 .elementor-element.elementor-element-48b2e322 .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-833 .elementor-element.elementor-element-73d2c4f6{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-833 .elementor-element.elementor-element-61513afe .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-833 .elementor-element.elementor-element-61513afe .elementor-button:hover, .elementor-833 .elementor-element.elementor-element-61513afe .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-text );border-color:var( --e-global-color-accent );}.elementor-833 .elementor-element.elementor-element-61513afe > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-833 .elementor-element.elementor-element-61513afe .elementor-button:hover svg, .elementor-833 .elementor-element.elementor-element-61513afe .elementor-button:focus svg{fill:var( --e-global-color-text );}.elementor-833 .elementor-element.elementor-element-35e6ae47:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-833 .elementor-element.elementor-element-35e6ae47 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://idahosunrooms.com/wp-content/uploads/2026/05/Cathedral-Sunroom-3.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-833 .elementor-element.elementor-element-35e6ae47 > .elementor-element-populated >  .elementor-background-overlay{opacity:0.5;}.elementor-833 .elementor-element.elementor-element-35e6ae47 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:100px 100px 100px 100px;}.elementor-833 .elementor-element.elementor-element-35e6ae47 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-833 .elementor-element.elementor-element-5a3a1795{--spacer-size:400px;}.elementor-833 .elementor-element.elementor-element-37d02489 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:flex-start;align-items:flex-start;}.elementor-833 .elementor-element.elementor-element-37d02489{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-833 .elementor-element.elementor-element-243b7fa7 img{width:100%;height:600px;}.elementor-833 .elementor-element.elementor-element-2627f4 > .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-833 .elementor-element.elementor-element-2627f4 > .elementor-element-populated{margin:0px 25px 0px 25px;--e-column-margin-right:25px;--e-column-margin-left:25px;}.elementor-833 .elementor-element.elementor-element-98ee34f{text-align:start;}.elementor-833 .elementor-element.elementor-element-98ee34f .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:58px;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-833 .elementor-element.elementor-element-5333cfe4{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:5px;}.elementor-833 .elementor-element.elementor-element-5333cfe4 .elementor-divider-separator{width:23%;margin:0 auto;margin-left:0;}.elementor-833 .elementor-element.elementor-element-5333cfe4 .elementor-divider{text-align:left;padding-block-start:0px;padding-block-end:0px;}.elementor-833 .elementor-element.elementor-element-1ade1431{text-align:start;font-family:"Open Sans", Sans-serif;font-size:17px;font-weight:400;line-height:28px;}.elementor-833 .elementor-element.elementor-element-00a22ae > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-833 .elementor-element.elementor-element-00a22ae:not(.elementor-motion-effects-element-type-background), .elementor-833 .elementor-element.elementor-element-00a22ae > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-833 .elementor-element.elementor-element-00a22ae{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-833 .elementor-element.elementor-element-00a22ae > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-833 .elementor-element.elementor-element-d84c0bc > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-833 .elementor-element.elementor-element-9ac4ec4{text-align:start;}.elementor-833 .elementor-element.elementor-element-9ac4ec4 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:55px;color:var( --e-global-color-accent );}.elementor-833 .elementor-element.elementor-element-7687b2a{--divider-border-style:solid;--divider-color:var( --e-global-color-accent );--divider-border-width:5px;}.elementor-833 .elementor-element.elementor-element-7687b2a .elementor-divider-separator{width:18%;margin:0 auto;margin-left:0;}.elementor-833 .elementor-element.elementor-element-7687b2a .elementor-divider{text-align:left;padding-block-start:0px;padding-block-end:0px;}.elementor-833 .elementor-element.elementor-element-352583e{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-833 .elementor-element.elementor-element-063254e > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-833 .elementor-element.elementor-element-063254e:not(.elementor-motion-effects-element-type-background), .elementor-833 .elementor-element.elementor-element-063254e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-833 .elementor-element.elementor-element-063254e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-833 .elementor-element.elementor-element-063254e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-833 .elementor-element.elementor-element-2146c9a{text-align:center;}.elementor-833 .elementor-element.elementor-element-2146c9a .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:55px;color:var( --e-global-color-text );}.elementor-833 .elementor-element.elementor-element-992c6a5{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:5px;}.elementor-833 .elementor-element.elementor-element-992c6a5 .elementor-divider-separator{width:22%;margin:0 auto;margin-center:0;}.elementor-833 .elementor-element.elementor-element-992c6a5 .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-833 .elementor-element.elementor-element-e105062 .gallery-item .gallery-caption{display:none;}.elementor-833 .elementor-element.elementor-element-e105062 .gallery-item{padding:0 15px 15px 0;}.elementor-833 .elementor-element.elementor-element-e105062 .gallery{margin:0 -15px -15px 0;}.elementor-833 .elementor-element.elementor-element-39ca6a5 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-833 .elementor-element.elementor-element-39ca6a5:not(.elementor-motion-effects-element-type-background), .elementor-833 .elementor-element.elementor-element-39ca6a5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-8e77742 );}.elementor-833 .elementor-element.elementor-element-39ca6a5{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-833 .elementor-element.elementor-element-39ca6a5 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-833 .elementor-element.elementor-element-e371178.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-833 .elementor-element.elementor-element-3f1e62d{text-align:center;}.elementor-833 .elementor-element.elementor-element-3f1e62d .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:45px;font-weight:700;line-height:55px;color:var( --e-global-color-primary );}.elementor-833 .elementor-element.elementor-element-18897d9{text-align:center;}.elementor-833 .elementor-element.elementor-element-18897d9 .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-833 .elementor-element.elementor-element-43e7d2c{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-833 .elementor-element.elementor-element-2a442df .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-833 .elementor-element.elementor-element-2a442df .elementor-button:hover, .elementor-833 .elementor-element.elementor-element-2a442df .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-primary );border-color:var( --e-global-color-secondary );}.elementor-833 .elementor-element.elementor-element-2a442df{width:auto;max-width:auto;}.elementor-833 .elementor-element.elementor-element-2a442df > .elementor-widget-container{margin:0px 20px 0px 0px;}.elementor-833 .elementor-element.elementor-element-2a442df .elementor-button:hover svg, .elementor-833 .elementor-element.elementor-element-2a442df .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-833 .elementor-element.elementor-element-a619e17 .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-833 .elementor-element.elementor-element-a619e17 .elementor-button:hover, .elementor-833 .elementor-element.elementor-element-a619e17 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-accent );border-color:var( --e-global-color-primary );}.elementor-833 .elementor-element.elementor-element-a619e17{width:auto;max-width:auto;}.elementor-833 .elementor-element.elementor-element-a619e17 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-833 .elementor-element.elementor-element-a619e17 .elementor-button:hover svg, .elementor-833 .elementor-element.elementor-element-a619e17 .elementor-button:focus svg{fill:var( --e-global-color-accent );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-833 .elementor-element.elementor-element-923b78d{width:50%;}.elementor-833 .elementor-element.elementor-element-e88bc5d{width:50%;}}@media(max-width:1024px){.elementor-833 .elementor-element.elementor-element-4dce9857 > .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-833 .elementor-element.elementor-element-48b2e322 .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-833 .elementor-element.elementor-element-73d2c4f6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-833 .elementor-element.elementor-element-61513afe .elementor-button{font-size:16px;}.elementor-833 .elementor-element.elementor-element-35e6ae47 > .elementor-element-populated{padding:20px 20px 20px 20px;}.elementor-833 .elementor-element.elementor-element-5a3a1795{--spacer-size:390px;}.elementor-833 .elementor-element.elementor-element-37d02489{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-833 .elementor-element.elementor-element-243b7fa7 img{height:500px;object-fit:cover;}.elementor-833 .elementor-element.elementor-element-2627f4 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-833 .elementor-element.elementor-element-98ee34f .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-833 .elementor-element.elementor-element-1ade1431{font-size:17px;line-height:1.3em;}.elementor-833 .elementor-element.elementor-element-00a22ae{padding:50px 0px 50px 0px;}.elementor-833 .elementor-element.elementor-element-9ac4ec4 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-833 .elementor-element.elementor-element-7687b2a .elementor-divider-separator{width:50%;}.elementor-833 .elementor-element.elementor-element-352583e{font-size:17px;line-height:1.3em;}.elementor-833 .elementor-element.elementor-element-063254e{padding:50px 0px 50px 0px;}.elementor-833 .elementor-element.elementor-element-2146c9a .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-833 .elementor-element.elementor-element-992c6a5 .elementor-divider-separator{width:50%;}.elementor-833 .elementor-element.elementor-element-39ca6a5{padding:50px 0px 50px 0px;}.elementor-833 .elementor-element.elementor-element-3f1e62d .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-833 .elementor-element.elementor-element-43e7d2c{font-size:17px;line-height:1.3em;}.elementor-833 .elementor-element.elementor-element-2a442df .elementor-button{font-size:16px;}.elementor-833 .elementor-element.elementor-element-a619e17 .elementor-button{font-size:16px;}}@media(max-width:767px){.elementor-833 .elementor-element.elementor-element-26527bfe{padding:0px 0px 0px 0px;}.elementor-833 .elementor-element.elementor-element-4dce9857 > .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-833 .elementor-element.elementor-element-48b2e322{text-align:center;}.elementor-833 .elementor-element.elementor-element-48b2e322 .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-833 .elementor-element.elementor-element-73d2c4f6{text-align:center;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-833 .elementor-element.elementor-element-61513afe .elementor-button{font-size:18px;line-height:1.3em;}.elementor-833 .elementor-element.elementor-element-35e6ae47 > .elementor-element-populated{padding:30px 10px 30px 10px;}.elementor-833 .elementor-element.elementor-element-5a3a1795{--spacer-size:200px;}.elementor-833 .elementor-element.elementor-element-37d02489{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-833 .elementor-element.elementor-element-243b7fa7 img{height:245px;object-fit:cover;}.elementor-833 .elementor-element.elementor-element-98ee34f .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-833 .elementor-element.elementor-element-1ade1431{font-size:16px;line-height:1.3em;}.elementor-833 .elementor-element.elementor-element-00a22ae{padding:50px 0px 50px 0px;}.elementor-833 .elementor-element.elementor-element-9ac4ec4{text-align:center;}.elementor-833 .elementor-element.elementor-element-9ac4ec4 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-833 .elementor-element.elementor-element-7687b2a .elementor-divider-separator{width:32%;margin:0 auto;margin-center:0;}.elementor-833 .elementor-element.elementor-element-7687b2a .elementor-divider{text-align:center;}.elementor-833 .elementor-element.elementor-element-352583e{text-align:center;font-size:16px;line-height:1.9em;}.elementor-833 .elementor-element.elementor-element-063254e > .elementor-container{max-width:1222px;}.elementor-833 .elementor-element.elementor-element-063254e{padding:50px 13px 50px 0px;}.elementor-833 .elementor-element.elementor-element-2146c9a{text-align:center;}.elementor-833 .elementor-element.elementor-element-2146c9a .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-833 .elementor-element.elementor-element-992c6a5 .elementor-divider-separator{width:32%;margin:0 auto;margin-center:0;}.elementor-833 .elementor-element.elementor-element-992c6a5 .elementor-divider{text-align:center;}.elementor-833 .elementor-element.elementor-element-39ca6a5 > .elementor-container{max-width:1222px;}.elementor-833 .elementor-element.elementor-element-39ca6a5{padding:50px 0px 50px 0px;}.elementor-833 .elementor-element.elementor-element-3f1e62d{text-align:center;}.elementor-833 .elementor-element.elementor-element-3f1e62d .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-833 .elementor-element.elementor-element-18897d9{text-align:center;}.elementor-833 .elementor-element.elementor-element-18897d9 .elementor-heading-title{font-size:16px;line-height:1.5em;}.elementor-833 .elementor-element.elementor-element-43e7d2c{font-size:16px;line-height:1.3em;}.elementor-833 .elementor-element.elementor-element-2a442df > .elementor-widget-container{margin:0px 0px 6px 0px;}.elementor-833 .elementor-element.elementor-element-2a442df .elementor-button{font-size:18px;line-height:1.3em;padding:10px 60px 10px 60px;}.elementor-833 .elementor-element.elementor-element-a619e17 .elementor-button{font-size:18px;line-height:1.3em;}}@media(max-width:1024px) and (min-width:768px){.elementor-833 .elementor-element.elementor-element-45ff2fd8{width:100%;}.elementor-833 .elementor-element.elementor-element-2627f4{width:100%;}.elementor-833 .elementor-element.elementor-element-923b78d{width:32%;}.elementor-833 .elementor-element.elementor-element-e88bc5d{width:68%;}}/* Start custom CSS for image-gallery, class: .elementor-element-e105062 *//* 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 */