/*
Theme Name:   Somentra Child
Theme URI:    https://themeforest.net/user/greatives
Description:  Somentra Child Theme
Version:      2.1.0
Author:       Greatives Team
Author URI:   https://greatives.eu
Template:     impeka
*/

/* ==========================================
=! globals / vars
------------------------------------------ */

:root {
  /* framework  */
  --ws-grve-container: 1320px;
  --ws-grve-container-offset: 1560px;
  --ws-header-wrapper-height: 100px;

  /* colors - mapped to wp preset vars, but using aliases for reusability */
  --clr-dark: var(--wp--preset--color--primary-3); /* #353433 charcoal */
  --clr-light: var(--wp--preset--color--primary-1); /* #f6f7f1 off-white */
  --clr-accent: var(--wp--preset--color--primary-2); /* #ffaa25 orange */
  --clr-primary: var(--wp--preset--color--primary-4); /* #69cdcd teal */
  --clr-surface: #edeee3; /* used in design for forms */

  /* typography */
  --ff-primary: halyard-display-variable;

  /* spacing - mapped to wp preset vars, but using aliases for reusability  */
  --space-xs: var(--wp--preset--spacing--20);
  --space-s: var(--wp--preset--spacing--30);
  --space-m: var(--wp--preset--spacing--40);
  --space-l: var(--wp--preset--spacing--50);
  --space-xl: var(--wp--preset--spacing--60);
  --space-2xl: 70px;
  --space-3xl: var(--wp--preset--spacing--80);
  --space-4xl: var(--wp--preset--spacing--100);	
  --space-1mxl: 205px;	
  --space-2mxl: 240px;	

  /* dividers */
  --divider-curve-1: ellipse(100% 120% at 100% 60%);
  --divider-curve-2: ellipse(100% 130% at 100% 90%);
	
	
  /* bg filters */
  --bg-filter-orange: brightness(0) saturate(100%) invert(75%) sepia(48%) saturate(2380%) hue-rotate(340deg) brightness(105%) contrast(101%);
  --bg-filter-mustard: brightness(0) saturate(100%) invert(68%) sepia(33%) saturate(448%) hue-rotate(15deg) brightness(97%) contrast(88%);	

}

/* ==========================================
=! body
------------------------------------------ */
::selection {
  background: var(--wp--preset--color--primary-2) !important;

}


.underline-links a{
	text-decoration: underline !important;
}

/* ==========================================
=! colours
------------------------------------------ */

/* ==========================================
=! typography
------------------------------------------ */

/* :is( */
/*   h1, */
/*   h2, */
/*   h3, */
/*   h4, */
/*   h5, */
/*   h6, */
/*   .grve-h1, */
/*   .grve-h2, */
/*   .grve-h3, */
/*   .grve-h4, */
/*   .grve-h5, */
/*   .grve-h6 */
/* ) { */
/* } */

p{
	margin-bottom:20px;
}

.text-padding-left{
	padding-left:50px;
}
.text-padding-right{
	padding-right:70px;
}
.text-max-width-330{
	max-width:330px;
}

/* ==========================================
=! header
------------------------------------------ */

/* --- nav links --- */

/* custom class to apply vertical stack on menu items */
a.menu-item-cta,
a.menu-item-cta .grve-item {
  display: flex;
  flex-direction: column;
  line-height: 18px;
}

.grve-link-wrapper a .grve-item{
	line-height: 18px;
}

/* pre text style (can be applied as pseudo also) */
a.menu-item-cta .ws-pipe-cols span:first-of-type {
  font-size: 0.85em;
  font-style: italic;
}

/* utility class to apply phone styles on menu items */
.grve-link-wrapper:has(a.menu-item-phone) {
  transform: translateY(7px);


  & .grve-item {
    font-size: 26px;
    display: flex;
    font-weight: 500;
    align-items: center;
    color: var(--clr-accent);
  }
  &:hover .grve-item{
	  color: #BBB16B;
	}
}


a.menu-item-phone{
    display: flex;

    &::before {
      content: "";
      display: flex;
      width: 2em;
      height: 2em;
      background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 54 54"><path fill="%23353433" d="M28.72,33.83c1.14-.87,2.31-2.43,3.47-1.16l4.49,4.93c.55.6.51,1.54-.1,2.09-.05.04-.1.08-.15.12-.85.97-1.97,1.68-3.21,2.04-3.7.75-7.37-1.41-9.96-3.92-3.87-3.73-6.63-8.46-7.97-13.66-.88-3.44-.92-7.71,1.58-10.43.91-.85,2.03-1.44,3.25-1.7.74-.35,1.62-.03,1.97.71.03.06.05.12.07.18l2.16,6.39c.2.72-.21,1.46-.93,1.67-.62.23-1.2.44-1.8.7-2.1.9-1.37,3.46-.61,5.07.86,1.82,1.89,3.56,3.09,5.18,1.04,1.42,2.86,3.14,4.64,1.79M29.6,14.45c-.51-.15-1.05.13-1.2.64-.15.51.13,1.05.64,1.2,5.63,2.02,9.04,7.75,8.14,13.66-.1.52.24,1.03.76,1.13.52.1,1.03-.24,1.13-.76,0-.02,0-.04,0-.06,1.07-6.87-2.92-13.52-9.48-15.81M28.59,19.53c-.49-.2-1.04.04-1.24.53-.01.03-.02.05-.03.08-.13.5.14,1.02.63,1.2,2.8,1.32,4.5,4.23,4.27,7.31-.06.51.3.97.81,1.03.06,0,.12,0,.18,0,.53-.02.94-.46.93-.98.27-3.92-1.95-7.6-5.55-9.17"/></svg>');
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      vertical-align: middle;
    }
	
	&:hover::before{
		filter: var(--bg-filter-mustard);
	}

}

#grve-main-responsive-header a.menu-item-phone::before{
	 width: 3em !important;
      height: 3em !important;
}


#grve-main-header.grve-sticky-header:not(.grve-style-2) .grve-header-menu.grve-horizontal-menu .grve-first-level > .grve-sub-menu, #grve-main-header.grve-sticky-header .grve-header-menu.grve-horizontal-menu .grve-first-level:not(.grve-menu-size-fullwidth) > .grve-sub-menu, #grve-main-header:not(.grve-style-2) .grve-header-menu.grve-horizontal-menu .grve-first-level > .grve-sub-menu, #grve-main-header .grve-header-menu.grve-horizontal-menu .grve-first-level:not(.grve-menu-size-fullwidth) > .grve-sub-menu{
	top: calc(100% + 26px);
}

#grve-main-responsive-header .grve-header-elements{
	padding-right:0;
}

.grve-header-menu.grve-horizontal-menu .grve-first-level:not(.megamenu):not(.grve-menu-area-item) .grve-classic-sub-menu{
	width:350px;
	border-bottom-left-radius:20px;
	border-bottom-right-radius:20px;
	box-shadow: 0 0 8px 2px rgba(53,52,51,.15);
	clip-path: inset(0px -10px -10px -10px);
}

.sub-menu .grve-item::after, .sub-menu .grve-item span::after{
	display:none !important;
}

.grve-header-menu.grve-horizontal-menu .grve-first-level:not(.megamenu):not(.grve-menu-area-item) .grve-classic-sub-menu li + li{
	margin-top:0;
}

.ws-pipe-cols {
    display: flex !important;
    flex-direction: column;
}
#grve-responsive-main-menu .grve-menu-description.ws-pipe-cols{
	margin: inherit;
	line-height: inherit;
}

#grve-responsive-main-menu .menu-item-phone{
	display:none;
}

.ws-desc-cols {
    display: flex;
    flex-direction: column;
}




.sub-menu .grve-link-wrapper{
	display:block !important;
	padding: 0 !important;
	

	&::after{
		content:'';
		display:block;
		height:1px;
		background: var(--wp--preset--color--primary-2);

	}
	
}


#grve-responsive-main-menu .sub-menu .grve-link-wrapper a{
	padding-bottom:20px;
}

#grve-main-header .sub-menu .grve-link-wrapper{
	&:hover::after{
		background: #fff;
	}
	
	& a:hover{
		background: var(--wp--preset--color--primary-2);
	}
	
	& a{
		padding:15px;
		
	}
	&::after{
		margin-inline:15px;
	}	
}

#grve-main-header .sub-menu .current-menu-item .grve-link-wrapper, #grve-main-header .sub-menu .current_page_item .grve-link-wrapper{
	background: var(--wp--preset--color--primary-2);

	
	&.grve-link-wrapper::after{
		background: #fff;
	}
}


.grve-classic-sub-menu.grve-sub-menu{
	padding-top: 0 !important;
}

.menu-item-261 .grve-item, .menu-item-533 .grve-item, .menu-item-379 .grve-item, .menu-item-556 .grve-item{
	display:flex !important;
	flex-direction:row;
	gap:20px;
	
	& span{
		line-height:25px;
	}
}

#grve-main-responsive-header .grve-hidden-menu-icon{
	padding-right:30px;
}

.grve-close-button-wrapper .grve-close-btn{
	background: var(--wp--preset--color--primary-3) !important;
	
	& svg{
		fill: var(--wp--preset--color--primary-1) !important;
	}
}

.grve-burger-icon{
	background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/04/ico-menu.svg);
	width:40px !important;
	height:32px !important;
	background-size: 40px 32px;
	
	&:hover{
		filter: var(--bg-filter-orange);
	}
	
	& svg{
		display:none;
	}
}


/* --- elements and layout --- */

#grve-theme-wrapper .grve-bg-primary-1 {
  background-color: var(--clr-primary);
}

#grve-main-responsive-header{
  & .grve-logo {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    transform: unset !important;
    padding: 0;
  }
	
  & .grve-header-row {
    max-height: var(--ws-header-wrapper-height);
    min-height: unset !important;
    margin-left: auto !important;
  }
	& .grve-right-area{
		 max-height: var(--ws-header-wrapper-height);
	}

}

body #grve-main-header{
  background-color: transparent !important;
  

  & #grve-main-menu::after{
	content: '';
	background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/03/menu-bar-right.svg) no-repeat right top;
	width:100%;
	height:100px;
	position:absolute;
	top:0;
	right: -120px;
	z-index:-1;
  }

  & .grve-header-row {
    max-height: var(--ws-header-wrapper-height);
    min-height: unset !important;
    margin-left: auto !important;
	margin-right: auto !important;
    max-width: var(--ws-grve-container-offset);
  }

  /* logo */
  & .grve-header-row .grve-left-area .grve-logo {
    position: relative !important;
    top: 0 !important;
    left: 0;
    transform: unset !important;
    padding: 0;
  }
	
  & #menu-primary{
		margin-top:20px;
	  	margin-left:20px;
	}


  /* alignment and offsets */
  & .grve-left-area{
	
	   &::before{
		   content: '';
		   background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/03/menu-bar.svg) repeat-x left top;
		   width:50%;
		   height:100px;
		   position:absolute;
		   top:0;
		   left:-10px;
		  }	  
	  
   & .grve-header-menu.grve-horizontal-menu
      > .grve-menu
      > .grve-first-level
      > .grve-link-wrapper {
      align-items: flex-end;
    }
  }

  /* menu containers */
  & .grve-header-menu {
    /*margin-bottom: var(--space-3xl) !important;*/
    padding-bottom: unset !important;
    position: relative;
    z-index: 10;
  }

  & .grve-horizontal-menu > .grve-menu > .grve-first-level + .grve-first-level {
    margin-left: 24px;
  }

 	& .grve-left-area {
    align-items: flex-start !important;
  }

  & .grve-horizontal-menu
    > .grve-menu
    > .grve-first-level
    + .grve-first-level:last-of-type {
    margin-left: 18px;
  }
}


/* --- overrides --- */

/* compensate for blocked padding on logged in view */
body.logged-in {
  #grve-main-header{
    padding-top: 32px !important;
	  
	  &::before{
		 top:32px;
	  }
	  & .grve-left-area::before{
		 top:32px;
	  }
  }
  #grve-feature-section::before {
    padding-bottom: 62px;
  }
}

/* ==========================================
=! hero section / page title
------------------------------------------ */

/* --- global --- */

/*  override top body padding for header overlap */
body #grve-main-content .grve-main-content-wrapper {
  padding-top: 0px !important;
}

#grve-feature-section {
  position: relative;
  overflow: visible;
  z-index: 1;
  /*max-height: var(--ws-header-wrapper-height);*/

  /* header bg band (more flexible than actual header divs) */
  &::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 68%;
    height: var(--ws-header-wrapper-height);
    z-index: 5;
    padding-top: 5px;
    padding-bottom: 30px;
    /*background-color: var(--clr-light);*/
  }

  & .grve-description {
    font-size: 38px;
    padding-top: 45px;
  }

  & .grve-content {
    z-index: 2;
    position: relative;  
  }

  & .grve-wrapper {
     margin-inline: auto;
  }


}

/* --- child pages --- */

body:not(.home) #grve-feature-section:not(.grve-fullscreen) .grve-wrapper{
  height:540px !important;
  max-height: 540px;
}

/* ==========================================
=! home banner
------------------------------------------ */

.home #grve-feature-section .grve-title-content-wrapper{
	display:flex;
	flex-wrap:wrap;
	row-gap:60px;
	
	& .grve-title{
		order:1;
		flex-basis:100%;
	}
	& .grve-graphic{
		order:2;
		flex-basis: 150px;
		margin-bottom: 0 !important;
		margin-top:30px;
	}
	& .grve-description{
		order:3;
		flex-basis: 75%;
	}
}

/* ==========================================
=! components
------------------------------------------ */

/* testimonials and services */


.col-curve-right, .col-curve-left{
	
	& .grve-bg-image{
		background-size: auto 100% !important;
	}
	
}

.col-curve-right{
	border-top-right-radius:50px;
	border-bottom-right-radius:50px;	
}

.col-curve-left{
	border-top-left-radius:50px;
	border-bottom-left-radius:50px;	
}

.col-content-wrapper{
	padding-top: var(--space-1mxl) !important;
	padding-bottom: var(--space-1mxl) !important;
}

.grve-testimonial-name.grve-h6{
	font-family: var(--ff-primary) !important;
	font-size:18px;
	line-height:20px;
	margin-top:40px;
}

.grve-testimonial-carousel .grve-carousel-pagination{
	top:-105px;
}


.grve-flexible-carousel .grve-carousel-pagination{
	top:0;
}

.grve-flexible-carousel h5{
	margin-top:40px;
}

/* Testimonial carousel navigation */
.grve-testimonial-carousel {
    position: relative;
}
.grve-testimonial-content p{
	font-weight:500;
	font-size:28px;
	line-height:32px;
}

.grve-testimonial-carousel, .grve-flexible-carousel{
	
	& .grve-carousel-navigation {
    position: absolute;
    top: -100px;
	right: 0;
    z-index: 10;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: opacity 0.3s;
	}
	
	& .grve-carousel-buttons svg{
		height: 20px !important;
		width:20px !important;
		
	}
	& .grve-carousel-prev:hover,& .grve-carousel-next:hover {
		opacity: 0.6;
	}
	
	& .grve-carousel-buttons{
		display:flex;
		gap:10px;
	}

	& .grve-carousel-pagination{
		position: absolute;
		left: 0;
    	top: -100px;
		gap:8px;
	}
	
	& .grve-dot span{
		border-color: var(--wp--preset--color--primary-2);
	}
	
	& .grve-dot.active span{
		border-color: var(--wp--preset--color--primary-2);
	}
	
	& .grve-dot span, & .grve-dot.active span{
		width:26px !important;
		height:26px !important;
		border-radius: 50%;
		
	}
}

/* ==========================================
=! row spacing
------------------------------------------ */

.row-content-wrapper{
	padding-top: var(--space-1mxl) !important;
	padding-bottom: var(--space-2xl) !important;
}
.row-content-last{
	padding-bottom: var(--space-1mxl) !important;
}

/* ==========================================
=! svg image sizes
------------------------------------------ */


/* Green row */

.meerkat-left-svg{
	margin-left:-290px;
	text-align: center;
}

.meerkat-right-svg{
	margin-right:-290px;
}


.meerkat-left-svg img, .meerkat-right-svg img{
	width:340px;
	height:340px;
}

.meerkat-flip-svg{
	transform: rotateY(180deg);
}


.meerkat-absolute{
	position: absolute !important;
	top:40px;
	right:-50px;
}

/* Form row */

.meerkat-form-right-svg img{
	width:202px;
	height:190px;
}

.tax-practioners-logo img{
	width:109px;
	height:169px;
}

.cpa-logo .grve-thumbnail-wrapper{
	width:167px !important;
	height: 72px !important;
}




/* ==========================================
=! form cta consultant form
------------------------------------------ */


/* White Row - Home */
.row-form-meerkat-wrapper-2{
	padding-top: var(--space-2mxl) !important;
	
	& .form-cta-wrapper	.grve-column-1-2:first-child{
		margin-left:20px;
	}
}


/* Grey Row - Landing Pages */

.row-form-meerkat-wrapper{
	padding-top: var(--space-2mxl) !important;
	
	
	& .form-cta-wrapper{
		position: absolute;
		right:-200px;
		top:-130px;
	}	
	
	& .form-cta-wrapper	.grve-column-1-2:first-child{
		margin-left:70px;
	}
}



.form-cta-wrapper{
	
	& .grve-column-1-2:first-child{
		max-width:330px;
	}
	& .grve-column-1-2:last-child{
		max-width:232px;
		margin-left:-80px;
		padding-top:50px;
	}
}


.cta-talk-bubble{
	background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/04/TSA-meerkat-bubble.svg) no-repeat;
	width:430px;
	height:251px;
	padding-left:35px;
	padding-top:25px;
	background-size: contain;
}



.talk-bubble{
	background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/03/TSA-Bubble.svg) no-repeat;
	width:300px;
	height:230px;
	padding-left:35px;
	padding-top:25px;
}

.home .talk-bubble{
	margin-left:25px;
	margin-top:-15px;
	margin-bottom:15px;
}


/* --- consultation form wrapper --- */


#grve-modal-area .grve-modal-element.grve-modal-dialog .grve-close-button-wrapper {
  top: -20px;
  right: -30px;
}

#grve-modal-area .grve-modal-element.grve-modal-dialog.grve-content-large .grve-modal-content{
	 max-width:400px;
}

.consultation-form {
  background: var(--clr-surface);
  padding: 3rem 2rem 2rem 2rem;
  border-radius: 20px;
  max-width:400px;
  margin-top: 10px;
  height:100%;
	
	& h4{
		margin-bottom:30px;
	}	
}

/* ==========================================
=! blog
------------------------------------------ */

.grve-filter ul{
	gap:10px;
	

	& li{
	font-weight:600 !important;
	font-size:18px;
	margin-right:0 !important;
	}
	
	& li span::after{
		display:none;
	}
	
	& li:hover, & li.selected{
		 color: var(--wp--preset--color--primary-2);
		text-decoration:none;
	}
	
	& li:not(:last-child)::after{
		content:' | ';
		padding-left:10px;
		 color: var(--wp--preset--color--primary-3) !important;
	}
}

.grve-post-item.grve-style-3 .grve-background-wrapper .grve-bg-image{
	background-size: auto 120%;
}

.grve-blog-grid[data-items-height="equal"] .grve-post-item.grve-style-3 .grve-post-item-inner{
	min-height:245px !important;
	height:245px !important;
}

.grve-post-item.grve-style-3:hover, .grve-post-item.grve-style-3:hover .grve-background-wrapper .grve-bg-image{
	transform:none !important;
	transition: all 0.5s ease;
	
	& .grve-headings-default .grve-post-title{
		color: var(--wp--preset--color--primary-2);
	}
	
	& .grve-bg-overlay{
		opacity:1;
		transition: opacity 0.5s ease;
		background:#000;
		/*background: linear-gradient(180deg,rgba(15,15,15,0) 30%,rgba(15,15,15,.85) 100%) !important;*/
	}
	

}

.grve-related .grve-related-row .grve-related-item .grve-related-item-inner .grve-bg-image::before

.grve-carousel .grve-carousel-navigation .grve-carousel-buttons > div{
	transform: none !important;
}


.grve-carousel .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-next, .grve-slider .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-next,
.grve-carousel .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-prev, .grve-slider .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-prev {
  top: unset;
  bottom: -70px;
  width:auto !important;	
  display: flex;
  flex-direction: row;
  align-items: center;
  gap:10px;	
  text-wrap: nowrap;
	
 	& .grve-svg-icon svg{
		display:none;
	}
	& .grve-svg-icon{
		width:40px;
	}
}

.grve-carousel .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-next, .grve-slider .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-next {
  right: 0;
	
	&:hover::before{
		color: var(--wp--preset--color--primary-2);
	}
	
	& .grve-svg-icon{
		background: url(https://devsites.au/smsfacc/wp-content/uploads/2026/04/ico-arrow.svg) no-repeat right center;
	}

	
	&::before{
		content: 'Next';
		font-weight:200;
		font-size:18px;
	}	
}

.grve-carousel .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-prev, .grve-slider .grve-carousel-navigation .grve-carousel-buttons .grve-carousel-prev {
  left:0;
	
	& .grve-svg-icon{
		background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/04/ico-arrow.svg) no-repeat left center;
	}
	
	&::after{
		content: 'Previous';
		font-weight:200;
		font-size:18px;
	}
	&:hover::after{
		color: var(--wp--preset--color--primary-2);
	}
}

/* Single Post */

#grve-content.grve-with-sidebar #grve-main-content{
	width:calc(66.666% - 60px);
	padding-top:150px;
	padding-bottom:100px;
}

#grve-content.grve-with-sidebar #grve-sidebar{
	width:calc(33.333% - 60px);
	padding-left:60px;
	padding-top:160px;
}

.single-post {
	& .grve-feature-title{
		max-width:650px;
		z-index:1;
		font-size: 55px;
		line-height: 55px;
	}
	& .grve-content-wrapper{
		display: flex;
   		 align-items: stretch;
	}
	

	
	.grve-content.grve-align-left-center{
		vertical-align:bottom;
		padding-bottom: 5%;
	}

}

.ws-sidebar-widget p{
    display: none;
}

.wp-block-heading{
	margin-top:20px;
}

/* CTA box — bleed image and background to the left */

.ws-post-cta-box{
	position: relative;
	overflow: visible;
	margin-bottom:100px;

	

	& .meerkat-right-svg{
		display: block;
		right: -60px;
		bottom:-20px;
		z-index:3;
		position: relative;
	}

	
	& h4, & a{
		
		z-index: 4;
    	position: relative;
	}
	& h4{
		margin-bottom:10px;
	}
	
}




/* Extend sidebar background to the right edge */
#grve-sidebar {
    position: relative;
	

	
	&::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: -9999px;
		background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/04/TSAR-cream-dots-rev.svg) var(--wp--preset--color--primary-1) left top no-repeat;
		background-size: 5% auto;
		z-index: -1;
	}

}





#grve-related-section{
	border-top:0 !important;
	padding-block:15px !important;
	
	& .grve-related-top{
		display:none;
	}
}

.grve-related .grve-related-row .grve-related-item{
	flex-basis: 100%;
  	max-width:100%;
	
	.grve-bg-image::before{
		background: #00000033;
		transition: all .5s ease;
	}
	
	&:hover .grve-bg-image::before{
		opacity:1;
		transition: opacity 0.5s ease;
		/*background-image: linear-gradient(180deg,rgba(15,15,15,0) 30%,rgba(15,15,15,.85) 100%) !important;*/
		background: #000000;
	}
	
	&:hover .grve-title{
		color: var(--wp--preset--color--primary-2);
	}
	
	& .grve-bg-image{
		transform:none !important;
	}
	
	& .grve-small-text{
		display:none;
	}
}

.grve-related .grve-related-row .grve-related-item .grve-related-item-inner,.ws-post-nav-wrapper .grve-related-item-inner {
    padding-bottom: 70% !important;
}

.ws-post-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
	font-weight:200;
}

.ws-post-nav svg{
	max-width:30px;
}

.ws-post-nav a:hover{
	color: var(--wp--preset--color--primary-2) !important;
}

.ws-post-nav a,
.ws-post-nav-disabled {
    color: #333;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 10px;
}

.ws-post-nav a:hover {
    color: #000;
}

.ws-post-nav-arrow {
    color: #e8a020; /* match the orange in the screenshot */
    font-size: 18px;
    line-height: 0;
}

.ws-post-nav-disabled {
    opacity: 0.35;
    cursor: default;
}

/* ==========================================
=! contact / forms
------------------------------------------ */

/* --- form globals --- */

.wpcf7-response-output{
	font-size: 16px !important;
	line-height: normal !important;
	color: var(--wp--preset--color--primary-3) !important;
	font-weight:500;
}

/* error messaging */
#grve-theme-wrapper .wpcf7 form .wpcf7-response-output {
  background: transparent;
  color: var(--wp--preset--color--primary-2);
  font-family: var(--ff-primary);
}

/* override weird theme defaults */
span.wpcf7-not-valid-tip,
div.wpcf7-mail-sent-ok,
div.wpcf7-validation-errors {
  letter-spacing: 0 !important;
}

/* --- contact form defaults --- */

body #grve-theme-wrapper .wpcf7 .ws-cf7-form {
  /* globals */
  --_form-border-radius: 5px;
  --_form-border-width: 1px;
  --_form-border-color: transparent;
  --_form-input-space-outer: 0.75rem;
  --_form-text-color: var(--clr-dark);
  --_form-bg-color: white;
  --_form-btn-bg-color: var(--wp--preset--color--primary-2);
  --_form-btn-color: #fff;
  --_form-btn-bg-hover-color: #BBB16B;
  --_form-btn-hover-color: #fff;
  --_form-focus-color: var(--clr-primary);
  --_form-padding: 0.3rem;
  color: var(--clr-dark);
  font-size: 16px;
  font-family: var(--ff-primary);

  /* layout */
  & .ws-cf7-form__col-1-2 {
    display: flex;
    gap: var(--_form-input-space-outer);
  }

  

  /* styling */
  & span:not(.grve-heading-color) {
    color: var(--_form-text-color);
  }
	
  & .row-inline{
	  margin-bottom: var(--_form-input-space-outer);
	  
	  display:flex;
	  flex-direction: row;
	  align-items: center;
	  gap:10px;
	  
	  & .label-title{
		  flex-basis:17%;
	  }
	  
	  & .wpcf7-form-control-wrap{
		  flex-basis:83%;
	  }
	  
  }

  & input {
    border: var(--_form-border-width) var(--_form-border-color) solid;
    border-radius: var(--_form-border-radius);
    background-color: var(--_form-bg-color);
    padding: var(--_form-padding);
	min-height: unset;
	font-weight:300;  
  }

  & textarea {
    border: var(--_form-border-width) var(--_form-border-color) solid;
    display: inline-block !important;
    border-radius: var(--_form-border-radius);
    background-color: var(--_form-bg-color);
    padding: var(--_form-padding);
	font-weight:300;
	margin-bottom:  var(--_form-input-space-outer);
  }

  & .wpcf7-submit{
    color: transparent;
	background: url(https://thesmsfaccountant.com.au/wp-content/uploads/2026/03/submit.svg) no-repeat center center var(--_form-btn-bg-color);  
	border-radius:30px;
    padding: 0;
	font-size:0;
	font-weight:300;
    margin-left: auto;
	margin-right: auto;  
    display: block;
    text-decoration: none;
    text-underline-offset: 3px;
    min-height: 45px;
	min-width:45px;  
    text-transform:uppercase;
	transition: all .3s ease-in-out;
  }

  /* hover/focus styles */
  & .wpcf7-submit:hover {
    color: var(--_form-btn-hover-color);
    background-color: var(--_form-btn-bg-hover-color);
	font-size:20px;
	width:110px;
	padding-left:25px !important;  
	background-position: 5px center;
  }

  & :is(input, textarea, submit):focus {
    border-color: var(--_form-focus-color);
    border-width: var(--_form-border-width);
  }
  
  /* alerts */
	
  & .wpcf7-not-valid-tip{
	background: var(--wp--preset--color--primary-4);	
  }
	
	
}


/* ==========================================
=! footer
------------------------------------------ */

#grve-footer{
	border-top:10px solid var(--wp--preset--color--primary-2);
}

#grve-footer .grve-text:not(.p-normal) p{
	font-size:18px;
}

.row-footer-logos .grve-column-1-3:last-child{
	max-width:222px;
	margin-left: auto;
}


/* ==========================================
=! utilities
------------------------------------------ */

/* hide elements but keep them in the dom for screen readers (form labels etc) */
.visually-hidden {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
}

/* type tweaks */
.more-bold {
  font-weight: 600;
}

.less-bold {
  font-weight: normal;
}

.row-bg-contain .grve-bg-image{
	background-size: 70% auto !important;
}

.icon-hover:hover svg{
	filter: brightness(0) saturate(100%) invert(85%) sepia(19%) saturate(403%) hue-rotate(7deg) brightness(96%) contrast(90%);
}

/* accordion */

.grve-accordion-top{
	padding:30px !important;
}

.grve-accordion{
	background: #fff;
	border-bottom-left-radius:20px;
	border-bottom-right-radius:20px;
	
	
	& .grve-title-wrapper{
		padding-block:30px !important;
	}
	
	& .grve-title-wrapper, & .grve-accordion-content{
		padding-inline:30px !important;
	}
	
	& .grve-title-wrapper.active::after{
		opacity:0 !important;
	}
	& .grve-title-wrapper.active h4{
		color:var(--wp--preset--color--primary-3) !important;
	}
	& .grve-title-wrapper.active svg{
		fill: var(--wp--preset--color--primary-3);	
	}
	& .grve-title-wrapper.active .grve-accordion-content{
		border-bottom: 1px solid var(--wp--preset--color--primary-3) !important;
	}
	
	& li:last-child .grve-title-wrapper::after{
		display:none;
	}
	
	& .grve-title-wrapper::after{
		border-color: var(--wp--preset--color--primary-3) !important;
		opacity:1 !important;
		transition: opacity .3s ease-in;
	}
}

/* ==========================================
=! responsive
------------------------------------------ */


@media (min-width: 1541px) {
	#grve-main-header .grve-header-row .grve-left-area .grve-logo{
		left:-10px !important;
	}
	.grve-container, .single-post #grve-content.grve-right-sidebar .grve-content-wrapper{
		max-width: 1320px;
	}

	
}

@media (min-width: 1341px) and (max-width: 1540px) {
	#grve-feature-section {
		& .grve-background-wrapper{
			width:45%;
		}
	}
	.meerkat-left-svg {
	  margin-left: -245px;
	}
	.meerkat-right-svg {
	  margin-right: -245px;
	}
	
}
@media (min-width: 1341px){
	.row-bg-contain .grve-bg-image{
		background-size: 50% auto !important;
	}

}

@media (min-width: 1201px) and (max-width: 1470px) {

	#grve-feature-section {
		
		 & .grve-feature-title{
			font-size: 55px;
			line-height: 55px;
		}
		& .grve-description{
			font-size: 34px;
			line-height: 38px;
		}
	}
	

	
	.home #grve-feature-section .grve-title-content-wrapper {
		& .grve-graphic{
			flex-basis: 130px;
		}
	}
	#grve-feature-section .grve-content .grve-graphic img{
		max-height:100px;
	}
	
}	

@media (min-width: 1201px){

	#grve-feature-section.grve-fullscreen {
	  & .grve-container {
		padding-top: 15vh;
	  }
	}
}	

@media (min-width: 1024px) and (max-width: 1470px) {

	.single-post .grve-feature-title{
			max-width:600px !important;
	}
}	

@media (min-width: 1024px) and (max-width: 1200px) {
	
#grve-feature-section.grve-fullscreen, #grve-feature-section.grve-fullscreen .grve-wrapper{
	min-height: calc(100dvh - 100px);
	max-height: calc(100dvh - 100px);
}

#grve-feature-section{
		& .grve-feature-title{
			font-size: 45px !important;
	    	line-height: 43px !important;
		}
		
		& .grve-description{
			font-size: 24px;
			line-height: 28px;
			padding-top: 0;
		}
		& .grve-content .grve-graphic img{
			max-height:80px;
			
		}
	}
	
	.home #grve-feature-section .grve-title-content-wrapper {
		& .grve-graphic {
		  flex-basis: 110px;
			margin-top: 0;
		}
	  }

}


@media (min-width: 1201px) and (max-width: 1340px) {
	
	.grve-container{
		max-width: 1050px;
	}
	
	.grve-logo .grve-logo-inner img{
		height:94%;
	}
	
	.grve-header-menu li.grve-first-level:not(.grve-menu-element-first-level) > .grve-link-wrapper:not(.grve-menu-element-link-wrapper) > a{
		font-size:16px;
		line-height:16px;
	}
	.grve-link-wrapper a .grve-item{
		line-height:16px;
	}
	
	.grve-link-wrapper a.menu-item-phone{
		& .grve-item{
			font-size:28px;
		}
	}
	.meerkat-left-svg {
	  margin-left: -200px;
	}
	.meerkat-right-svg {
	  margin-right: -200px;
	}
}

@media (min-width: 768px) and (max-width: 1340px) {
	
	.show-tablet{
		display:block !important;
	}
	
	.p-normal p{
		font-size:18px;
		line-height: normal;
	}
	
	/* FORMS */
	.wpcf7{
		  & .row-inline .label-title{
			  flex-basis:25% !important;
		  }

		  & .row-inline .wpcf7-form-control-wrap{
			  flex-basis:75% !important;
		  }
	  
 	 }

}
@media (min-width: 1201px) {
	
	body:not(.home) .cta-talk-bubble{
		position: absolute;
		left: 260px;
		top:-130px;
	}
 	
	
	.row-form-meerkat-wrapper{
	
		& .wpcf7, .wpcf7-form{
			height:100% !important;
		}
	}	
}


@media (min-width: 1024px) and (max-height:840px) {
	


	
}


@media (min-width: 1200px) and (max-height:840px) {
	.home #grve-feature-section.grve-fullscreen .grve-container {
    	padding-top: 25vh;
  	}
}


@media (min-width: 1023px) and (max-width: 1199px) and (max-height:840px) {
	.home #grve-feature-section.grve-fullscreen .grve-container {
    	padding-top: 0;
  	}
}

@media (max-width: 1200px) {
	
	h6, .grve-h6{
		font-size: 20px;
		line-height: 1.1em;
	}
}

@media (min-width: 768px) and (max-width: 1200px){

	.meerkat-left-svg{
		margin-left:-50px;
	}
	
	.meerkat-right-svg{
		margin-right: -50px;
	}
	#grve-content.grve-with-sidebar #grve-sidebar {
  		width: calc(50% - 60px);
	}
	
}	

@media (max-width: 1023px) {
	
	.grve-link-wrapper a {
  		transition: none;
	}	

	.home #grve-feature-section .grve-title-content-wrapper {
	  row-gap:0;
		
	  & .grve-description {
		
	  }
	
		& .grve-graphic img{
			max-height:80px;
		}
	}
	#grve-feature-section .grve-description{
		padding-top: 10px;
		
	}
	
}

@media (min-width: 768px) and (max-width: 1023px) {
	
	
	/* STRUCTURE */
	
	#grve-main-content .grve-padding-top-6x{
		padding-top: 120px !important;
	}
	
	#grve-theme-wrapper .grve-padding-bottom-5x, .row-content-last{
		padding-bottom: 100px !important;
	}
	
	

	
	.row-form-meerkat-wrapper-2{
		
		& .grve-column-2-3{
			width:60%;
		}
		& .grve-column-1-3{
			width:40%;
		}
	}


	/* FEATURE SECTION */
	
	#grve-feature-section.grve-fullscreen, #grve-feature-section.grve-fullscreen .grve-wrapper{
		min-height: calc(100dvh - 100px);
		max-height: calc(100dvh - 100px);
	}
	
	.single-post .grve-feature-title{
			max-width:439px !important;
	}
	
	
	 #grve-feature-section{
	 
		
		& .grve-feature-title{
			font-size:44px;
			line-height:44px;
		}
		& .grve-description{
			font-size: 24px;
			line-height: 28px;
			padding-top:30px;
		}
		& .grve-content .grve-graphic img{
			max-height:60px !important;
			
		}
		& .grve-title-content-wrapper .grve-graphic {
		 flex-basis: 80px !important;
		 }	
  	}	
	

	
}
@media (max-width: 959px) {

	.row-bg-contain .grve-bg-image{
		background-size: auto 100% !important;
	}

}	

@media (min-width: 768px) and (max-width: 959px){
	.col-content-wrapper, .row-content-wrapper{
		padding-top: 90px !important;
		padding-bottom: 60px !important;
	}
	.services-carousel{
		margin-left:40px;
	}
	.grve-testimonial-carousel{
		margin-right:40px;
	}
	h4.grve-bottom-line{
		padding-right:40px;
		margin-bottom:40px !important;
	}
	
}
	

	
	
@media (min-width: 768px) {
	
  .show-mobile{
	  display:none;
	}
  	
  #grve-feature-section.grve-fullscreen .grve-background-wrapper{
	margin-left: auto;
	width: 52%;
  }
	

	
  #grve-feature-section:not(.grve-fullscreen) .grve-background-wrapper{
	margin-left: auto;
	width: 50%;
  }
	
	.single-post #grve-feature-section .grve-wrapper{
		max-height:540px;
	}
	
	
	.row-dark-wrapper{
		background: var(--wp--preset--color--primary-3);
	}
	.row-light-wrapper{
		background: var(--wp--preset--color--primary-1);
	}
	
	
}


@media (max-width: 767px) {
	
	.show-desktop{
		display:none;
	}	
	
  /* TYPOGRAPHY */	
	
	body, .grve-accordion-content p{
		font-size:18px;
		line-height:26px;
	}
	h2, .grve-h2, .grve-testimonial-content p{
		font-size:25px;
		line-height:29px;
	}
	
	h3, .grve-h3{
		font-size:28px;
		line-height:36px;
	}
	
	h4, .grve-h4{
		font-size:22px;
		line-height:26px;
	}
	h4.grve-title.grve-text-primary-4{
		margin-top:10px;
		margin-bottom:20px !important;
	}
	.ws-cf7-form h4, .grve-quote-text{
		font-size:28px;
	}	
	
	.p-normal p, .grve-testimonial-name.grve-h6{
		font-size:16px;
		line-height: normal;
	}

  /* FORMS */
	.wpcf7{
		  & .row-inline .label-title{
			  flex-basis:20% !important;
		  }

		  & .row-inline .wpcf7-form-control-wrap{
			  flex-basis:80% !important;
		  }
	
 	 }
	#grve-theme-wrapper .wpcf7 input[type="submit"]:not(.grve-custom-btn):hover{
			font-size:18px !important;
		}

	.consultation-form{
		margin-inline:auto;
	}

	
	/* STRUCTURE */
	
	
	
	#grve-main-content .grve-padding-top-6x{
		padding-top: 120px !important;
	}
	
	#grve-theme-wrapper .grve-padding-bottom-5x, #grve-theme-wrapper .grve-padding-bottom-6x, .row-content-last{
		padding-bottom: 80px !important;
	}
	
	#grve-content.grve-with-sidebar #grve-main-content{
		padding-top: 80px !important;
		padding-bottom: 60px !important;
	}
	
	.col-content-wrapper, .row-content-wrapper{
		padding-top: 60px !important;
		padding-bottom: 30px !important;
	}
	
	#grve-content.grve-with-sidebar #grve-main-content{
  		width: 100%;
		max-width: unset;
	}
	
	#grve-content.grve-with-sidebar #grve-sidebar{
  		width: 107%;
		max-width: unset;
	}
	
	
	.single-post .grve-content-wrapper{
		flex-direction: column;
	}
	
	#grve-content.grve-with-sidebar #grve-sidebar{
		padding:0 0 0 30px;
		margin-left:-30px;
		margin-right:-30px;
	}
	.grve-container, #grve-content.grve-left-sidebar .grve-content-wrapper, #grve-content.grve-right-sidebar .grve-content-wrapper{
		max-width: unset;
	}
	
	.ws-post-cta-box{
		margin-bottom:30px;
	}

	.no-pad-right-mob{
		padding-right: 0 !important;
	}
	.no-pad-inline-mob{
		padding-inline: 0 !important;
	}
	
	.col-curve-right, .col-curve-left{
		border-bottom-right-radius:50px;	
		border-bottom-left-radius:50px;
		padding-block:70px;
	}
	
	.col-curve-right{
		border-top-right-radius:0;
	}

	.col-curve-left{
		border-top-left-radius:0;
	}
	
	.ws-post-cta-box .meerkat-right-svg{
		right:0;
		margin-bottom:30px;
	}
	
	.meerkat-absolute{
		right:0;
	}
	
	.talk-bubble{
		height: 165px;
	}
	
	.cta-talk-bubble{
		margin-left:30px;
	}
	
	.meerkat-form-right-svg img{
		width: 180px;
  		height: 165px;
	}
	
	.meerkat-left-svg img, .meerkat-right-svg img {
	  width: 260px;
	  height: 260px;
	}
	
	.meerkat-right-svg{
		margin-right: 0;
		text-align:right;
	}
	
	.meerkat-left-svg.meerkat-flip-svg{
		text-align: right;
	}
	
	.meerkat-left-svg{
		margin-left: 0;
		text-align: left;
	}
	
	.right-indent-mob{
		margin-right:60px;
	}
	.left-indent-mob{
		margin-left:60px;
	}
	
	.row-dark-wrapper{
		background: linear-gradient(to bottom, #484747 80%, #fff 20%);
	}
	
	.row-dark-wrapper-full{
		background: #484747;
	}
	
	.row-light-wrapper{
		background: linear-gradient(to bottom, var(--wp--preset--color--primary-1) 80%, #fff 20%);
	}
	
	.row-bg-contain .grve-bg-image{
		background-position: center center;
	}

	.tax-practioners-logo img{
		transform: scale(85%);
	}

	.grve-post-item.grve-style-3 .grve-post-item-inner{
		padding:1.5rem;
	}
	
  /* FEATURED SECTION */	
	
	
	/*#grve-feature-section.grve-fullscreen .grve-wrapper, .grve-title-section.grve-fullscreen .grve-wrapper{
		height: calc(100dvh - 100px);
	}*/
	
  	#grve-feature-section.grve-fullscreen{
		min-height: calc(100dvh - 100px);
		
		
		& .grve-background-wrapper{
			max-height:480px;
		}
		
  	}
	
	body:not(.home) #grve-feature-section:not(.grve-fullscreen) .grve-wrapper{
			height:540px !important;
	}
	
	
	.single-post #grve-feature-section .grve-feature-title{
			font-size:36px;
			line-height:36px;
		}
 
	#grve-feature-section{
		
		::before{
		  display: none;
	    }
	    & .grve-container {
    		padding-top: unset !important;
  		}
		
		& .grve-bg-left-center, & .grve-bg-image.grve-bg-left-top{
			background-position: -30px center;
		}
		
		
		& .grve-background-wrapper{
			max-height:55%;
		}
		
		& .grve-content.grve-align-center-center, .grve-content.grve-align-left-center{
			vertical-align:bottom;
		}
		
		& .grve-content.grve-align-left-bottom, .grve-content.grve-align-center-center, .grve-content.grve-align-left-center{
			padding-bottom:55px !important;
		}
		
		& .grve-feature-title{
			font-size:45px;
			line-height:45px;
		}
				
		& .grve-description{
			font-size:24px !important;
		}
		
		& .grve-graphic img{
			max-height:50px !important;
		}
		
		& .grve-graphic{
			margin-top:10px !important;
			flex-basis:70px !important;
		}
	
		
		/*& .grve-description br{
			display:none !important;
		}*/
	}
	
		
}

@media (max-width: 567px) {
	
	body:not(.home) #grve-feature-section:not(.grve-fullscreen){
		& .grve-background-wrapper{
			max-height:240px;
		}
		
		& .grve-wrapper{
			height:240px !important;
			padding-top:240px;
		}

	}

	.row-form-meerkat-wrapper.row-bg-contain .grve-bg-image{
		background-position: center -20px;
	}
	
	.consultation-form{
		border-top-left-radius:0;
		border-top-right-radius:0;
		max-width:unset;
		margin-left: -8px;
		margin-right: -8px;
	}
	.no-pad-bot-mob, #grve-theme-wrapper .row-form-meerkat-wrapper.grve-padding-bottom-5x{
		padding-bottom: 0 !important;
	}
}
@media (min-width: 481px) and (max-width:767px){

	#grve-feature-section.grve-fullscreen{
			& .grve-bg-image{
				background-size: 155% auto;
			}
	}
}	
@media (max-width: 480px) {
  body.home #grve-feature-section .grve-content p {
    font-size: 18px;
  }
	#grve-feature-section.grve-fullscreen{
	
		& .grve-bg-image{
			background-size: 185% auto;
		}
	}
}


@media (max-width: 430px) {
	.cta-talk-bubble{
		width:100%;
		padding-left: 25px;
  		padding-top: 20px;
		height:200px;
	}
	h6:not(.grve-testimonial-name), .grve-h6:not(.grve-testimonial-name){
		font-size: 1em !important;
		line-height: 1.1em;
	}
	
	.grve-responsive-menu-text .sub-menu, #grve-responsive-main-menu .grve-menu .sub-menu .grve-link-wrapper:not(.grve-menu-element-link-wrapper) a, #grve-responsive-main-menu .grve-menu-description{
		font-size:20px;
	}
	

	
	#grve-feature-section{
	
		& .grve-feature-title{
			font-size:40px;
			line-height:40px;
			margin-bottom:30px;
		}
				
		& .grve-description{
			font-size:20px !important;
		}
	}	
	
}
	
@media (max-width: 375px) {
	#grve-main-responsive-header .grve-header-elements{
		padding-left:0;
	}
		#grve-feature-section.grve-fullscreen .grve-wrapper, .grve-title-section.grve-fullscreen .grve-wrapper{
		height: 960px;
	}
	
  	#grve-feature-section.grve-fullscreen{
		min-height: 960px;
	}	
}