/*
 Theme Name:   Solio Child Theme
 Theme URI:    https://solio.ancorathemes.com/
 Description:  Solio Child Theme
 Author:       AncoraThemes
 Author URI:   https://ancorathemes.com/
 Template:     solio
 Version:      1.0.0
 Tags: solar power, solar installation, solar panels, solar panel installation, solar energy, renewable energy, alternative power, wind energy, hydropower, water energy, green energy, heating, electricity, eco, ecology
 Text Domain:  solio
*/

:root {
    --theme-color-text_link: #1E5631;
    --blob-size: 120px;
    --blob-light: #d7f3f2;
    --blob-dark: #149c91;
    --blob-rotate: 0deg;
    --blob-svg: url("assets/images/background-shape.svg");
}

.sc_button_title {
    font-size: 18px;
}

#slider-2-slide-4-layer-6 .brand-color,
#slider-2-slide-4-layer-6 .brand-color .rs_splitted_words,
#slider-2-slide-4-layer-6 .brand-color .rs_splitted_chars {
    color: #1e5631 !important;
}

.rev_slider_wrapper #slider-2-slide-4-layer-6 .brand-color .rs_splitted_chars {
    color: #1e5631 !important;
}

.sc_item_subtitle {
    font-size: 18px;
}

/* put the two <p>s on one line */
p.sib-email-area,
p.sib-email-area+p {
    display: inline-block !important;
    vertical-align: top;
    margin: 0;
    clear: none !important;
    box-sizing: border-box;
}

p.sib-email-area {
    width: calc(100% - 60px);
    position: relative;
    font-size: 0;
}

/* -60 = 56px button + ~4px gap */
p.sib-email-area+p {
    width: 56px;
    margin-left: -4px;
}

/* cancels the gap so it won't wrap */

p.sib-email-area+p .sib-default-btn {
    width: 56px !important;
    display: block;
}

/* email input */
p.sib-email-area input[type="email"] {
    width: 100%;
    height: 46px;
    padding: 0 12px 0 44px;
    border: 1px solid #ffffff;
    border-right: 0;
    border-radius: 4px 0 0 4px;
    background: #ffffff;
    font-size: 14px;
    color: #000000;
}

p.sib-email-area input[type="email"]:focus {
    background: #fff;
    border-color: #ffffff;
    outline: 0;
    box-shadow: 0 0 0 3px #1e5631;
}

/* envelope icon */
p.sib-email-area::before {
    content: "";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    background: no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2' ry='2'/%3E%3Cpolyline points='3,7 12,13 21,7'/%3E%3C/svg%3E");
}

/* green arrow submit */
p.sib-email-area+p input.sib-default-btn {
    width: 56px;
    height: 46px;
    border: 0;
    border-radius: 0 4px 4px 0;
    background: #1e5631 no-repeat center/18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 5l7 7-7 7' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    color: #fff;
    cursor: pointer;
    font-size: 0;
}

p.sib-email-area+p input.sib-default-btn:hover {
    background-color: #1e5631
}

.terms-wrap {
  margin-top: 10px;
  font-size: 13px;
  color: #444;
}

.terms-wrap label {
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  font-weight: 400;
}

.terms-wrap input[type="checkbox"] {
  width: 15px;
  height: 15px;
  accent-color: #1e5631;
  cursor: pointer;
}

.terms-wrap a {
  color: inherit;
  text-decoration: underline;
  transition: color 0.2s ease;
}

.terms-wrap a:hover,
.terms-wrap a:focus {
  color: #1e5631;
}

/* ----------------------------------------------------------- */

/* Base wrapper (your element) */
.elementor-element-6af3b2d {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 120px !important;
    /* adjust */
    height: 120px;
    isolation: isolate;
    /* keeps img above ::before */
}

/* Blob background */
.elementor-element-6af3b2d::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #d7f3f2;
    /* light */
    border-radius: 44% 56% 62% 38% / 58% 42% 54% 46%;
    /* organic blob */
    transition: background .25s ease, transform .25s ease;
    z-index: 0;
}

/* Icon */
.elementor-element-6af3b2d img {
    position: relative;
    z-index: 1;
    width: 56%;
    /* scale as needed */
    height: auto;
    transition: filter .25s ease;
}

/* Hover state */
.elementor-element-6af3b2d:hover::before {
    background: #1e5631;
    /* dark */
}

.elementor-element-6af3b2d:hover img {
    filter: brightness(0) invert(1);
    /* white icon */
}

/* Optional: a few shape variants you can add as extra classes */
.elementor-element-6af3b2d.shape-2::before {
    border-radius: 60% 40% 55% 45% / 45% 60% 40% 55%;
}

.elementor-element-6af3b2d.shape-3::before {
    border-radius: 35% 65% 45% 55% / 55% 45% 65% 35%;
}

.elementor-element-6af3b2d.shape-4::before {
    border-radius: 50% 50% 40% 60% / 60% 40% 50% 50%;
}

/* Base icon style */
.progress-icon .elementor-title::before {
    content: "";
    display: inline-block;
    width: 50px;
    height: 50px;
    margin-right: 8px;
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    filter: brightness(0) saturate(100%) invert(25%) sepia(22%) saturate(1263%) hue-rotate(88deg) brightness(95%) contrast(89%);
}

/* Specific icons */
.progress-icon.energy .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/Energy-Generated.svg");
}

.progress-icon.water .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/Water-Saved.svg");
}

.progress-icon.waste .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/Waste-Utilised.svg");
}

.progress-icon.emissions .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/Avoided-Emissions-.svg");
}

.progress-icon.community .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/Communities-Impacted.svg");
}

.progress-icon.csr .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/section_2_CSR_Projects_Executed_icon.svg");
}

.progress-icon.individual .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/section_2_Individuals_Benefitted_icon.svg");
}

.progress-icon.carbon .elementor-title::before {
    background-image: url("https://revivesustainable.com/wp-content/uploads/2025/09/section_2_carbon_reduction__icon.svg");
}

.icon-color .elementor-icon svg {
    filter: brightness(0) saturate(100%) invert(25%) sepia(22%) saturate(1263%) hue-rotate(88deg) brightness(95%) contrast(89%);
}

.sc_icons_creative .sc_icon_type_svg svg, .sc_icons_creative .sc_icon_type_svg object, .sc_icons_divider .sc_icon_type_svg svg, .sc_icons_divider .sc_icon_type_svg object {
    width: 5.4em;
    height: 5.4em;
}

.rs-icon h4{
    font-size: 1em !important;
}

/* Scope */
.rs-icon .sc_icons_icon,
.rs-icon .elementor-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--blob-size);
  height: var(--blob-size);
  isolation: isolate;
  border-radius: 0;
  overflow: visible;
}

.rs-icon .sc_icons_icon::before,
.rs-icon .elementor-icon::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: var(--blob-light);
  transition: background-color .25s ease, transform .25s ease;
  -webkit-mask-image: var(--blob-svg);
  mask-image: var(--blob-svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  transform: rotate(var(--blob-rotate));
}

/* Icon sizing stays the same */
.rs-icon .sc_icons_icon img,
.rs-icon .elementor-icon img,
.rs-icon .sc_icons_icon svg,
.rs-icon .elementor-icon svg,
.rs-icon .sc_icons_icon svg image,
.rs-icon .elementor-icon svg image {
  position: relative;
  z-index: 1;
  transition: filter .25s ease, transform .25s ease;
}

/* Hover state */
.rs-icon .sc_icons_item:hover .sc_icons_icon::before,
.rs-icon .sc_icons_item:hover .elementor-icon::before,
.rs-icon .sc_icons_icon:hover::before,
.rs-icon .elementor-icon:hover::before {
  background-color: var(--blob-dark);
  transform: rotate(var(--blob-rotate)) scale(1.03);
}

/* Keep current icon color flip on hover */
.rs-icon .sc_icons_item:hover .sc_icons_icon img,
.rs-icon .sc_icons_item:hover .elementor-icon img,
.rs-icon .sc_icons_item:hover .sc_icons_icon svg image,
.rs-icon .sc_icons_item:hover .elementor-icon svg image,
.rs-icon .sc_icons_icon:hover img,
.rs-icon .elementor-icon:hover img,
.rs-icon .sc_icons_icon:hover svg image,
.rs-icon .elementor-icon:hover svg image {
  filter: brightness(0) invert(1);
}

/* If inline vector shapes exist, make them white on hover */
.rs-icon .sc_icons_item:hover .sc_icons_icon svg *,
.rs-icon .sc_icons_item:hover .elementor-icon svg * {
  fill: #fff !important;
}

/* rotate the background on every 3n-1 item (no new classes) */
.sc_icons_creative .sc_icons_item:nth-child(3n-1),
.sc_icons_divider  .sc_icons_item:nth-child(3n-1),
.sc_icons_creative [class*="trx_addons_column-"]:nth-child(3n-1) .sc_icons_item,
.sc_icons_divider  [class*="trx_addons_column-"]:nth-child(3n-1) .sc_icons_item {
  --blob-rotate: -60deg;
}

/* hover keeps each item’s rotation */
.rs-icon .sc_icons_item:hover .sc_icons_icon::before,
.rs-icon .sc_icons_item:hover .elementor-icon::before,
.rs-icon .sc_icons_icon:hover::before,
.rs-icon .elementor-icon:hover::before {
  background-color: var(--blob-dark);
  transform: rotate(var(--blob-rotate)) scale(1.03);
}

form button:not(.components-button):hover, form button:not(.components-button):focus, input[type="submit"]:hover, input[type="submit"]:focus, input[type="reset"]:hover, input[type="reset"]:focus, input[type="button"]:hover, input[type="button"]:focus, .post_item .more-link:hover, .comments_wrap .form-submit input[type="submit"]:hover, .comments_wrap .form-submit input[type="submit"]:focus, .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover, .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus, .sc_button_default:hover, .sc_button_default:focus, .sc_button:not(.sc_button_simple):not(.sc_button_bordered):not(.sc_button_bg_image):hover, .sc_button:not(.sc_button_simple):not(.sc_button_bordered):not(.sc_button_bg_image):focus, .socials_share.socials_type_block .social_icon:hover, .socials_share.socials_type_block .social_icon:focus {
    color: var(--theme-color-inverse_link);
    border-color: var(--theme-color-text_link);
    background-color: var(--theme-color-text_link);
}

.sc_item_title_text {
  background: linear-gradient(
    270deg,
    #1e5631,
    #e55b13,
    #149c91,
    #1e5631
  );
  background-size: 800% 800%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gradientShift 15s ease infinite;
}

@keyframes gradientShift {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* Make sure header wrapper acts as positioning context */
.header_wrap, 
.sc_layouts_row, 
.sc_layouts_menu_nav {
    position: static !important; /* ensure no constraint */
}

/* Force li static so mega can expand to full width */
.sc_layouts_menu_nav > li.has-mega-menu {
    position: static !important;
}

/* Mega menu panel – full width box */
.sc-mega-menu {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    width: 90vw;
    margin-left: calc(-50vw + 50%);
    display: none;
    background: #fff;
    padding: 0;
    box-shadow: 0 20px 40px rgba(0,0,0,.15);
    z-index: 9999;
}

/* Show on hover */
.sc_layouts_menu_nav > li.has-mega-menu:hover > .sc-mega-menu {
    display: block;
}

/* Optional inner content alignment if you want to limit content width */
.sc-mega-menu > .sc_content_wrap {
    max-width: 1200px;
    margin: 0 auto;
}

/* Make lists inside mega menu behave like normal content, not dropdowns */
.sc-mega-menu ul,
.sc-mega-menu .elementor-icon-list-items {
    position: static !important;
    display: block !important;
    width: auto !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Optional: reset padding if needed */
.sc-mega-menu ul {
    padding-left: 0;
    margin: 0;
}

.sc_layouts_menu_nav>li li[class*="icon-"]>a {
    padding-left: 0;
}

/* Resources mega menu – narrower, centered panel */
.sc-mega-menu.sc-mega-menu-layout-26027 {
    width: 12vw;
    left: 60%;
    right: auto;
    margin-left: 0;
    transform: translateX(-50%);
    padding: 0;
}

/* Optional: limit inner content width & center it */
.sc-mega-menu.sc-mega-menu-layout-26027 > .sc_content_wrap {
    max-width: 600px;
    margin: 0 auto;
    text-align: left;         /* or center if you prefer */
}

/* Tighter vertical spacing between items */
.sc-mega-menu-layout-26027 ul,
.sc-mega-menu-layout-26027 .elementor-icon-list-items {
    text-align: left;         /* or center */
}

.sc-mega-menu-layout-26027 li {
    margin-bottom: 8px;
}



