.elementor-kit-26{--e-global-color-primary:#030303;--e-global-color-secondary:#152A29;--e-global-color-text:#141414;--e-global-color-accent:#030303;--e-global-color-dea41e4:#6D6F44;--e-global-color-a185853:#615F5B;--e-global-color-308e809:#F3F3F3;--e-global-color-a291686:#FFFFFF;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:32px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:capitalize;--e-global-typography-primary-line-height:1em;--e-global-typography-primary-letter-spacing:-2px;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:32px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Rock Salt";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:2px;--e-global-typography-db786f9-font-size:31px;--e-global-typography-db786f9-line-height:1.4em;--e-global-typography-60ad92e-font-size:22px;color:var( --e-global-color-text );font-family:"Montserrat", montserrat;font-size:16px;line-height:1.5em;}.elementor-kit-26 button,.elementor-kit-26 input[type="button"],.elementor-kit-26 input[type="submit"],.elementor-kit-26 .elementor-button{background-color:var( --e-global-color-primary );color:var( --e-global-color-a291686 );border-style:solid;border-width:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-kit-26 button:hover,.elementor-kit-26 button:focus,.elementor-kit-26 input[type="button"]:hover,.elementor-kit-26 input[type="button"]:focus,.elementor-kit-26 input[type="submit"]:hover,.elementor-kit-26 input[type="submit"]:focus,.elementor-kit-26 .elementor-button:hover,.elementor-kit-26 .elementor-button:focus{background-color:var( --e-global-color-text );color:var( --e-global-color-a291686 );border-style:solid;border-width:0px 0px 0px 0px;}.elementor-kit-26 e-page-transition{background-color:#FFBC7D;}.elementor-kit-26 a{color:#000000;font-weight:700;}.elementor-kit-26 a:hover{color:#693434;}.elementor-kit-26 h1{color:#000000;font-family:var( --e-global-typography-primary-font-family ), montserrat;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-26 h2{color:#152A29;font-family:var( --e-global-typography-secondary-font-family ), montserrat;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-kit-26 h3{color:var( --e-global-color-secondary );font-family:"Montserrat", montserrat;font-size:37px;font-weight:600;line-height:1.1em;}.elementor-kit-26 h4{color:var( --e-global-color-secondary );font-family:"Montserrat", montserrat;font-size:28px;font-weight:600;line-height:1.1em;}.elementor-kit-26 h5{color:var( --e-global-color-secondary );font-family:"Montserrat", montserrat;font-size:20px;font-weight:600;line-height:1.2em;}.elementor-kit-26 h6{color:var( --e-global-color-accent );font-family:"Rock Salt", montserrat;font-size:14px;font-weight:700;line-height:1.2em;letter-spacing:2px;}.elementor-kit-26 label{font-weight:500;line-height:1.5em;}.elementor-kit-26 input:not([type="button"]):not([type="submit"]),.elementor-kit-26 textarea,.elementor-kit-26 .elementor-field-textual{color:var( --e-global-color-secondary );background-color:var( --e-global-color-308e809 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-308e809 );border-radius:0px 0px 0px 0px;}.elementor-kit-26 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-26 textarea:focus,.elementor-kit-26 .elementor-field-textual:focus{color:var( --e-global-color-text );background-color:var( --e-global-color-a291686 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-308e809 );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-26{--e-global-typography-primary-font-size:48px;--e-global-typography-secondary-font-size:36px;--e-global-typography-text-font-size:15px;--e-global-typography-accent-font-size:13px;font-size:15px;}.elementor-kit-26 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-26 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-26 h3{font-size:29px;}.elementor-kit-26 h4{font-size:23px;}.elementor-kit-26 h5{font-size:18px;}.elementor-kit-26 h6{font-size:13px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-26{--e-global-typography-primary-font-size:38px;--e-global-typography-secondary-font-size:28px;--e-global-typography-text-font-size:14px;--e-global-typography-accent-font-size:12px;font-size:14px;}.elementor-kit-26 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-26 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-26 h3{font-size:24px;}.elementor-kit-26 h4{font-size:20px;}.elementor-kit-26 h5{font-size:16px;}.elementor-kit-26 h6{font-size:12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* FIX THE OSWALD FONT JUMP */
h1, h2, h3, .elementor-heading-title {
    font-family: 'Oswald', sans-serif !important;
    font-display: optional !important; /* CRITICAL: Stops the 'snap' movement */
}

/* 1. Reserve the total vertical space for the entire grid */
#cigar-grid {
    min-height: 800px !important; /* Adjust this to match the actual height of your grid */
    display: grid !important;
    contain: layout; /* Tells the browser to treat this as a static box */
}

/* 2. Lock the height of every individual review card */
#cigar-grid .e-loop-item {
    min-height: 400px !important; /* Ensures the boxes don't start at 0px */
    display: flex !important;
    flex-direction: column !important;
}

/* 3. The "Image Pop" Killer: Forces the image shape before it downloads */
#cigar-grid img, 
#cigar-grid .elementor-widget-image img {
    aspect-ratio: 1 / 1 !important; /* Forces a square; change to 16 / 9 if your photos are wide */
    height: auto !important;
    width: 100% !important;
    content-visibility: auto; 
}

/* 4. Stop the text from jumping when the Oswald font loads */
#cigar-grid h1, 
#cigar-grid h2, 
#cigar-grid h3 {
    font-display: optional !important;
    min-height: 1.2em; /* Reserves one line of height even if empty */
}

/* 1. Reserve the exact space for your thumbnails */
.elementor-post__thumbnail__link {
    display: block !important;
    width: 100% !important;
    /* CHANGE 4 / 3 below to 3 / 2 if your images are wider */
    aspect-ratio: 3 / 1 !important; 
    background-color: #f7f7f7; /* Placeholder color while loading */
    position: relative;
    overflow: hidden;
}

/* 2. Ensure the image fills the reserved box perfectly */
.elementor-post__thumbnail__link img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}/* End custom CSS */