.elementor-kit-112{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:#2A2A2A;color:#F8EDDF;}.elementor-kit-112 e-page-transition{background-color:#FFBC7D;}.elementor-kit-112 p{margin-block-end:0px;}.elementor-kit-112 a{color:#EDB44F;font-family:"IBM Plex Sans", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:15px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Element-level override for spacing in Text Editor widgets */
.elementor-page .elementor-widget-text-editor p {
  margin-top: 0 !important;
  line-height: 1.2 !important; /* Unified line-height */
}

/* Restore spacing with broader .elementor-kit-112 */
.elementor-widget-text-editor p:not(.no-margin) {
  margin-bottom: 0.5em !important; /* Adds space unless class says otherwise */
}

/* Generic image button container */
.image-button {
  position: relative;
  display: flex;               /* enables centering and flex behavior */
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url('https://www.rock-my-retirement.com/wp-content/uploads/2025/08/Button.webp');
  flex: 0 1 auto;              /* allow buttons to shrink/grow */
  min-width: 60px;             /* don’t shrink too far */
  width: 110px;
  max-width: 200px;            /* cap size on wide screens */
  aspect-ratio: 1 / 1;         /* keep square shape */
  height: auto;                /* height follows width */
  font-size: 1rem;
  transition: transform 0.05s ease, box-shadow 0.05s ease;
}




/* Pressed effect: subtle sink */
.image-button:active {
  background-image: url('https://www.rock-my-retirement.com/wp-content/uploads/2025/08/Button_Pressed.webp');
  transform: translateY(2px);
  box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
  filter: brightness(1.4);
  
}

.image-button:hover {
  background-image: url('https://www.rock-my-retirement.com/wp-content/uploads/2025/08/Button_Hovered.webp');
}

.image-button.active-button {
  background-image: url('https://www.rock-my-retirement.com/wp-content/uploads/2025/08/Button_Pressed.webp');
  transform: translateY(2px);
  box-shadow: inset 0 0 10px rgba(0,0,0,0.5);
  filter: brightness(1.4);
}

/* Overlay text */


.image-button .button-label {
  font-family: 'IBM Plex Sans', sans-serif;
  font-weight: 700;
  color: #000;
  text-align: center;
  white-space: normal;
  line-height: 1.2;
  pointer-events: none;
  width:65%;
  max-width: none;
  padding: 0;
  font-size: clamp(0.6rem, 1.3vw, 0.85rem); /* scales with viewport */
  box-sizing: border-box;
}

.button-panel {
  background-image: url('https://www.rock-my-retirement.com/wp-content/uploads/2025/08/DarkestBrushedMetal-1.webp');
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border: 4px solid #444;
  border-radius: 12px;
  padding: 0.25em;
  box-shadow: inset 0 0 10px rgba(0,0,0,0.4);
}

.sticky-tab-panel {
  position: sticky;
  top: 1em;
  z-index: 10;
}


.elementor-section-wrap > .elementor-section {
  overflow: visible !important;
}

.tab-trigger.active-button {
  background-image: url('https://www.rock-my-retirement.com/wp-content/uploads/2025/08/Button_Pressed.webp');
  transform: translateY(2px);
  box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
  filter: brightness(1.4);
}

/* Step 2: Keep buttons in one row and shrink them */
.button-row {
  display: flex;
  flex-wrap: nowrap;          /* desktop: force one row */
  justify-content: space-between;
  align-items: stretch;
  overflow: hidden;
}

/* Only wrap on small *touch* devices */
@media (max-width: 600px) {
    .button-row {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center;
    gap: 0.4rem;
    }
    
    .button-panel {
      width: 100% !important;
      max-width: 100% !important;
      display: flex !important;
      justify-content: center;
    }

  .global-header {
    display: flex !important;
    flex-wrap: wrap !important;       /* allow children to break onto new lines */
    align-items: center;
  }
    
    .global-header .button-panel {
    flex: 1 1 100% !important;        /* force full width on small screens */
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    justify-content: center;          /* center buttons under logo/text */
    }
    
    
    .button-row > .image-button {
    flex: 0 0 22% !important;        /* ~4 per row */
    max-width: 100% !important;
    min-width: 80px !important;
    width: 100% !important;
    box-sizing: border-box;
    display: flex !important;
    justify-content: center;
    align-items: center;
    }
}

/* Revise min and max for desktop */
@media (min-width: 768px) {
    .image-button {
        min-width: 85px;
        max-width: 250px;
    }
}/* End custom CSS */