/**
Theme Name: GRO Child
Author: Good Men 
Author URI: http://wpastra.com/about/
Description: Child theme of the Astra theme for GRO
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gro-child
Template: astra
*/

/* --- Tunables för exklusiv känsla --- */
:root {
  --burger-size: 40px;                 /* ikonbredd */
  --burger-thickness: 1px;             /* linjetjocklek */
  --burger-gap: 8px;                   /* avstånd mellan linjerna */
  --burger-radius: 1px;                /* linjernas rundning */
  --burger-duration: 420ms;            /* hastighet på transition */
  --burger-ease: cubic-bezier(.4,0,.2,1);
}

/* Dölj Astras egen ikon i togglern */
.ast-mobile-menu-trigger-minimal .mobile-menu-toggle-icon { display: none !important; }

/* fix hamburger menu outline */
.ast-button-wrap .ast-mobile-menu-trigger-minimal:focus {
    border-width: 0px !important;
    outline:none;
}
.ast-mobile-popup-drawer.active .menu-toggle-close:focus {
    border-width: 0px !important;
    outline:none;
}

/* Gör knappen till en "ikon-yta" (behåller aria/onclick från Astra) */
.ast-mobile-menu-trigger-minimal {
  position: relative;
  width: var(--burger-size);
  height: calc(var(--burger-thickness) * 3 + var(--burger-gap) * 2);
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

/* De två pseudo-elementen ritar alla tre linjer i stängt läge */
.ast-mobile-menu-trigger-minimal::before,
.ast-mobile-menu-trigger-minimal::after {
  content: "";
  position: absolute;
  left: 0; right: 0;
  top: 50%;
  width: 40px;
  height: var(--burger-thickness);
  margin: 0 auto;
  background: var(--ast-global-color-0);                 /* följer tema/hoverfärg */
  border-radius: var(--burger-radius);
  transform: translateY(-50%);
  transition:
    transform var(--burger-duration) var(--burger-ease),
    box-shadow var(--burger-duration) var(--burger-ease),
    background-color var(--burger-duration) var(--burger-ease),
    opacity var(--burger-duration) var(--burger-ease);
}

/* ::before = mittenlinjen + ÖVERSTA via box-shadow */
.ast-mobile-menu-trigger-minimal::before {
  box-shadow: 0 calc(var(--burger-gap) * -1) 0 0 currentColor;
}

/* ::after = NEDERSTA via box-shadow (själva elementet blir "andra" mittenlinjen vid öppet läge) */
.ast-mobile-menu-trigger-minimal::after {
  box-shadow: 0 var(--burger-gap) 0 0 currentColor;
}

/* --- Öppet läge: rotera till ett kryss och ta bort skugg-linjerna --- */
.ast-mobile-menu-trigger-minimal[aria-expanded="true"]::before {
  transform: translateY(-50%) rotate(45deg);
  box-shadow: none;                        /* tar bort övre linjen */
}

.ast-mobile-menu-trigger-minimal[aria-expanded="true"]::after {
  transform: translateY(-50%) rotate(-45deg);
  box-shadow: none;                        /* tar bort nedre linjen */
}

/* Diskret färgtransition vid hover/fokus om du vill */
.ast-mobile-menu-trigger-minimal { transition: color var(--burger-duration) var(--burger-ease); }
.ast-mobile-menu-trigger-minimal:hover,
.ast-mobile-menu-trigger-minimal:focus-visible { color: var(--ast-global-color-2, currentColor); }

/* Respekt för användare som valt reducerad rörelse */
@media (prefers-reduced-motion: reduce) {
  .ast-mobile-menu-trigger-minimal,
  .ast-mobile-menu-trigger-minimal::before,
  .ast-mobile-menu-trigger::after { transition: none !important; }
}


/* Astra mobilheader: håll hamburgaren innanför 20px padding -----------------------------------*/
@media (max-width: 1280px){
  /* 1) Nollställ “drag ut”-marginalen på högra sektionen */
  #ast-mobile-header .site-header-primary-section-right,
  #ast-mobile-header .ast-grid-right-section{
    margin-inline-end: 0 !important;   /* var ofta negativt */
  }

  /* 2) Ta bort ev. marginaler på wrapper/knapp */
  #ast-mobile-header .ast-button-wrap{
    margin: 0 !important;
  }
  #ast-mobile-header .menu-toggle.main-header-menu-toggle{
    margin: 0 !important;
    padding-inline: 20px;              /* egen tapp-yta men innanför paddingen */
    box-sizing: content-box;
  }

  /* 3) Se till att ikonens box inte “sticker ut” */
  #ast-mobile-header .mobile-menu-toggle-icon,
  #ast-mobile-header .ahfb-svg-iconset{
    display: inline-flex;
  }
}

@media (max-width: 1280px){
  #ast-mobile-header .ast-primary-header-bar{ padding-inline: 20px; }
}


/* transtions */

:root{
  --overlay-close-top: 48px;
  --overlay-close-right: 48px;
  --overlay-link-gap: 18px;
}

/* —— CENTRERING UTAN ATT STÖRA ASTRAS SHOW/HIDE —— */
/* Gäller oavsett om desktop- eller mobilcontainern är aktiv */
.ast-desktop-popup-content > .ast-builder-menu-mobile,
.ast-mobile-popup-content  > .ast-builder-menu-mobile{
  min-height: 100vh;
  min-height: 100dvh;          /* bättre på iOS/Android */
  display: grid;               /* påverkar bara barnet, inte växlaren */
  place-items: center;         /* vertikalt + horisontellt */
  width: 100%;
  text-align: center;
  padding: 0 !important;
  margin: 0;
}

/* Hjälp: låt navet fylla bredd så centrering blir snygg */
.ast-desktop-popup-content .ast-main-header-bar-alignment,
.ast-mobile-popup-content  .ast-main-header-bar-alignment,
.ast-desktop-popup-content .main-header-bar-navigation,
.ast-mobile-popup-content  .main-header-bar-navigation,
.ast-desktop-popup-content .main-navigation,
.ast-mobile-popup-content  .main-navigation{
  width: 100%;
}

/* Vertikal spacing mellan menyvalen */
.ast-desktop-popup-content .main-header-menu,
.ast-mobile-popup-content  .main-header-menu{
  margin: 0; 
  padding: 0; 
  list-style: none;
}
.ast-desktop-popup-content .main-header-menu > li + li,
.ast-mobile-popup-content  .main-header-menu > li + li{
  margin-top: var(--overlay-link-gap);
}
.ast-desktop-popup-content .main-header-menu .menu-item > .menu-link,
.ast-mobile-popup-content  .main-header-menu .menu-item > .menu-link{
  display: inline-block;
  text-decoration: none;
}

/* —— STÄNG-KRYSSET I HÖGER HÖR N —— */
.menu-toggle-close,
.ast-desktop-popup-close,
.ast-mobile-popup-close{
  position: fixed;                 /* ankra i viewporten */
  top: var(--overlay-close-top);
  right: var(--overlay-close-right);
  z-index: 1000;
  padding: 12px;                   /* större klickyta */
  background: transparent;
  border: 0;
  line-height: 1;
  color: inherit;
}
.menu-toggle-close svg{ 
  width: 24px; 
  height: 24px; 
  color: var(--ast-global-color-4);
}

/* När WP-admin-baren syns: flytta ned krysset lite */
body.admin-bar .menu-toggle-close,
body.admin-bar .ast-desktop-popup-close,
body.admin-bar .ast-mobile-popup-close{
  top: calc(var(--overlay-close-top) + 32px);
}
@media (max-width: 782px){
  body.admin-bar .menu-toggle-close,
  body.admin-bar .ast-desktop-popup-close,
  body.admin-bar .ast-mobile-popup-close{
    top: calc(var(--overlay-close-top) + 46px);
  }
}

/* Reduced motion respekt */
@media (prefers-reduced-motion: reduce){
  .ast-desktop-popup-content,
  .ast-mobile-popup-content{ transition: none !important; }
}

/* Footer styling ------------------------------------------------*/
.astra-footer-horizontal-menu {
    gap: 18px;
}


/* Transitions ----------------------------------------------------*/

:root{
  --luxe-ease: cubic-bezier(.2,.8,.2,1);
  --luxe-dur: .9s;
  --luxe-stagger: .12s;
}

/* Bas – respektera användare som vill minska rörelser */
@media (prefers-reduced-motion: reduce){
  *{ animation: none !important; transition: none !important; }
}

/* Fullbredd-säkring om temat inte redan gör det */
.wp-block-cover.alignfull{ max-width:100vw; }

/* ------------- REVEAL FÖR TEXT ------------- */
.luxe-reveal > *{
  opacity: 0;
  transform: translateY(14px);
  filter: blur(2px);
  transition:
    opacity var(--luxe-dur) var(--luxe-ease),
    transform var(--luxe-dur) var(--luxe-ease),
    filter calc(var(--luxe-dur)*.9) var(--luxe-ease);
  will-change: transform, opacity, filter;
}

/* Stagger av barnen (h1, p, knappar etc) */
.luxe-reveal > *:nth-child(1){ transition-delay: calc(var(--luxe-stagger)*0); }
.luxe-reveal > *:nth-child(2){ transition-delay: calc(var(--luxe-stagger)*1); }
.luxe-reveal > *:nth-child(3){ transition-delay: calc(var(--luxe-stagger)*2); }

.luxe-reveal.is-inview > *{
  opacity: 1;
  transform: translateY(0);
  filter: blur(0);
}

/* ------------- COVER-IMAGE ENTRÉ ------------- */
.luxe-cover{
  overflow: hidden;                /* snyggare när vi skalar bilden lite */
  position: relative;
  isolation: isolate;
}

/* WordPress Cover använder oftast detta element för bilden */
.luxe-cover .wp-block-cover__image-background,
.luxe-cover video.wp-block-cover__video-background{
  transform: scale(1.04) translateY(var(--parallax,0px));
  transition: transform var(--luxe-dur) var(--luxe-ease);
  will-change: transform;
}

/* När sektionen kommer in: släpp lilla skalan */
.luxe-cover.is-inview .wp-block-cover__image-background,
.luxe-cover.is-inview video.wp-block-cover__video-background{
  transform: scale(1) translateY(var(--parallax,0px));
}

/* ------------- LÄTT PARALLAX ------------- */
/* Subtilt – 16px total range känns “premium” */
.luxe-parallax{ --parallax: 0px; }


/* style overlapp bottles */

.overlap-row {
    margin-top: -150px!important;
}

@media (max-width: 782px) {
    .overlap-row {
    margin-top: 0px!important;
    }
}    

@media (max-width: 782px) {
    .right-col-first {
        flex-direction: column-reverse;
    }
}    

@media (max-width: 782px) {
    .product-row {
        margin-bottom: 40px;
    }
}

 @media (max-width: 544px) {
    .wp-block-columns .wp-block-column:not(:last-child) {
        margin-bottom:0px;
    }
}

/* FAQ ---------------------------------------------*/

.uagb-block-a0c70265 .uagb-forms-main-form .uagb-forms-main-submit-button-wrap {
    text-align: center;
}
