/*
Theme Name:  Anyware GP Child
Theme URI:  https://anyware.co.nz
Description:  Child theme by Anyware Web Marketing for Generate Press.
Author:  Phil Donaldson
Textdomain:  anyware
Template:  generatepress
Version:  1.0
*/
@media (max-width: 768px) {
    .hide-on-mobile {
        display: none !important;
    }
}

@media (max-width: 1024px) and (min-width: 769px) {
    .hide-on-tablet {
        display: none !important;
    }
}

@media (min-width: 1025px) {
    .hide-on-desktop {
        display: none !important;
    }
}
div.gb-grid-wrapper-548dcbee {
	display: none;
}
/*h1, h2, h3, h4 {
    color: var(--contrast-4);
	font-weight: 600;
	line-height: 1.3em;
}
h1 {
	font-size: 30px;
}
h2 {
	font-size: 24px;
	margin-top: 20px;
}
h3 {
	font-size: 20px;
	margin-bottom: 10px;
}
h4 {
	font-size: 17px;
	margin-bottom: 10px;
	color: var(--accent);
}
body, p, ul, ol, li, table, form, input  {
	font-size: 15px;
	
}
p {
	line-height: 1.3em;	
}
ol {
    margin-left: 1em;
}
a {
	text-decoration: underline;
	text-decoration-color: var(--contrast-3);
}
a:hover {
    text-decoration-color: var(--contrast-2);
}
a.nounderline, .nounderline a {
	text-decoration: none;	
}
*/

/* Headers & navigation */
@media (min-width: 800px) {
	div.header-grid-right {
		padding-left: 100px;
	}
}
div.inside-article {
	padding-top: 0px;
}
header a, footer a, .footer a, div.gb-container-884117c2 a, div.header-top-bar a {
    text-decoration: none;
}
.header-content {
	width: 100%;
}
// Right aligned header content {}
div.header-grid-right {
	width: 100%;
}
@media (min-width: 800px) {
	div.header-grid-right div.gb-grid-wrapper div:first-of-type.gb-grid-column {
		margin-left: auto;
	}
}

div.header-grid-right div.social-buttons-container a {
	background-color: unset !important;
	color: var(--base) !important;
}
div.header-grid-right div.social-buttons-container a:hover {
	color: var(--contrast-4) !important;
}
form.wp-block-search input {
	color: black !important;
	background-color: var(--accent) !important;
	color: var(--base) !important;
}
div.site-search-outer  {
}

li.#menu-item-2842 {
	margin-right: 0px;
}
.main-navigation .main-nav ul ul li a {
    font-size: 15px;
}
nav.admin-menu li + li:before{
    content: " | ";
    padding: 0 5px;
}

div.header-top-bar {
	margin-bottom: 0px;
}

div.header-top-bar .wp-block-column {
	}
div.header-top-bar-social, div.header-top-bar-phone {
	flex-basis: unset !important;
	}

@media (max-width: 980px) {
	header#masthead div.inside-header {
		padding: 20px 20px 20px 20px !important;
	}
	.header-widget {
		margin-right: 20px;
	}
}

ul#menu-admin-menu li {
	display: inline;
}

.nav-below-header .main-navigation .inside-navigation.grid-container, .nav-above-header .main-navigation .inside-navigation.grid-container {
    padding: 0px 0px 0px 0px;
}

/* Page headers */
div.gb-container-9d56120c div.gb-inside-container {
	padding-left: 20px;
	padding-right: 20px;
}
body.page-id-10 div.gb-container-9d56120c div.gb-inside-container {
	padding-left: 100px;
	padding-right: 100px;
}
body.archive main.site-main {
	padding-top: 30px;
}
body.blog main.site-main {
	padding-top: 30px;
}
.page-content-banner {
	text-shadow:
		0 0 4px rgba(0,0,0,1),
		0 0 5px rgba(0,0,0,1),
		0 0 6px rgba(0,0,0,1) !important;	
}

/* Breadcrumb nav */

div.breadcrumb-wrapper {
	margin-top: 10px;
}
ol.breadcrumb {
	margin-left: 0px;
}
ol.breadcrumb li {
	display: inline-block;
}
ol.breadcrumb li a {
	text-decoration: underline;
}
ol.breadcrumb li.active::before {
    color: var(--contrast-4);
    content: "> ";
    padding: 0 5px;
}

/* Footer */
.footer-navigation-bar .wp-block-navigation__container .wp-block-navigation-item:not(:last-child)::after {
    content: " | ";
    padding: 0 8px; /* Adjust spacing around the pipe character */
}



/* Home page */
div.text-shadow-thick h2  {
	text-shadow:
		0 0 4px rgba(0,0,0,1),
		0 0 5px rgba(0,0,0,1),
		0 0 6px rgba(0,0,0,1) !important;
}
div.text-shadow-thick-white h2  {
	text-shadow:
		0 0 1px rgba(0,0,0,1),
		0 0 5px rgba(255,255,255,1),
		0 0 6px rgba(255,255,255,1) !important;}
div.text-shadow-thick-whitez h2  {
	text-shadow:
		0 0 4px rgba(255,255,255,1),
		0 0 5px rgba(255,255,255,1),
		0 0 6px rgba(255,255,255,1) !important;
}
div.homebanner p {
	font-weight: 600;
}
div.homebanner p.headline {
	font-weight: 600;
	line-height: 110%;
	margin-top: 40px;
	margin-bottom: 20px;
}
div.homebanner p.content {
}
@media (max-width: 1200px) {
	div.homebanner p.headline {
		font-size: 30px !important;
	}
	div.homebanner p.content {
		font-size: 14px;
	}
}
@media (min-width: 601px) and (max-width: 960px) {
	div.homebanner p.headline {
		font-size: 20px !important;
		margin-top: 14px;
		margin-bottom: 14px;
	}
	div.homebanner p.content {
		font-size: 11px;
		margin-top: 14px;
		margin-bottom: 14px;
	}
}
@media (max-width: 600px) {
	div.homebanner figure.wp-block-media-text__media {
		display: none;
	}
	div.homebanner p.headline {
		font-size: 22px !important;
	}
	div.homebanner p.content {
		font-size: 12px;
	}
}

zdiv.service-cards2 {
	background-color: rgba(5, 5, 5, 0.51);
	zpadding: 10px;
	zborder-radius: 10px;
}

div.home-icon-intros figure, div.home-icon-help figure {
	margin-left: 0 !important;
	margin-right: 0 !important;
}
div.home-icon-intros h2 {
	line-height: 110%;
	font-weight: 600;
	color: var(--contrast-4);
	font-size: 24px;
	margin-bottom: 10px;
}
div.home-icon-intros p {
	zline-height: 120%;
	font-weight: 400;
	margin-bottom: 5px;
}
div.home-icon-intros p.more, div.howcanwehelp p.more {
	font-weight: 600;
}
div.home-icon-intros p.more a, div.howcanwehelp p.more a {
	text-decoration: none;
	color: var(--accent3);
}
div.home-icon-intros p.more a:hover, div.howcanwehelp p.more a:hover {
	color: var(--contrast-4);
;	
}
div.howcanwehelp {
	box-shadow: 4px 5px 5px 0px #eee, 0px -2px 5px 0px #eee;
	/*margin-top: 5px;*/
}
div.howcanwehelp h3 {
	margin-top: 0px;
	margin-bottom: 0px;
}
div.home-cta h3 {
	/*font-size: */
	margin-bottom: 0px;
}
p.wp-block-post-excerpt__excerpt {
	margin-bottom: 0px;
}
a.wp-block-post-excerpt__more-link {
	text-decoration: none;
	color: var(--accent);
	font-weight: 600;
}
a.wp-block-post-excerpt__more-link:hover {
	color: var(--contrast-4);
}
div.home-contact-social {
	margin-left: 0px;
}

/* Services Page */
div.services figure img.is-resized.is-style-default  {
	object-fit: cover;
    height: 200px;
	border-radius: 10px;
}

div.services-horizontal img {
	border-radius: 10px;
}


/* Forms */
label#label_6_54_1 {
	font-weight: bold;
	font-size: 17px;
}
#field_6_54 {
	margin-left: 30%;
}

.klaviyo-form-Sxhp9y span {
    color: #ffffff !important;
}

/* Buttons */
div.wp-block-button {
	margin-bottom: 0em !important;
}
.button, .wp-block-button .wp-block-button__link, #wp-block-search__input-1 {
    padding: 3px 15px;
}
div.centre-button {
	margin-right: auto !important;
	margin-left: auto !important;
}

.scale-up-button {
  transition: transform 0.3s ease-in-out;
}

.scale-up-button:hover {
  transform: scale(1.2);
}

p.read-more {
	padding-top: 12px;
	padding-bottom: 12px;
}

.read-more-button {
    padding: 15px 20px;
    text-transform: uppercase;
	border-radius: 5px;
    border: 1px var(--accent3) solid !important;
}

.read-more-button:hover {
	background-color: var(--base);
	font-weight: 600;
}

div.header-top-bar div.gb-button-wrapper a.gb-button {
	background-color: unset;
}
div.header-top-bar div.gb-button-wrapper a.gb-button:hover {
	color: var(--accent3);
}

span.cta-btn {
    position: relative;
    display: inline-block;
    padding: 16px 42px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    font-size: 16px;
    zcolor: #1cc6f0 !important;

    background: linear-gradient(
        180deg,
        #0f2b3f 0%,
        #0a1c2b 100%
    );

    border-radius: 2px;
    z-index: 1;
    transition: all 0.25s ease;
}
.ss-cta-btn .n2-ss-button-container {
    border: 3px solid transparent !important;
    border-radius: 2px;

    background:
        linear-gradient(#0f2b3f, #0a1c2b) padding-box,
        linear-gradient(90deg, #00ff9c, #1cc6f0) border-box;
}

span.cta-btn div { 
	color: #1cc6f0 !important; 
    background: linear-gradient(
        180deg,
        #0f2b3f 0%,
        #0a1c2b 100%
    );
}
a.zzzzzcta-btn { 
	zcolor: #1cc6f0 !important; 
    background: linear-gradient(
        180deg,
        #0f2b3f 0%,
        #0a1c2b 100%
    );
}

.cta-btn:hover div {
	zcolor: #00ff9c !important; 
}

/* Gradient border layer */
span.cta-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px; /* border thickness */
    border-radius: 2px;

    background: linear-gradient(
        90deg,
        #00ff9c 0%,
        #1cc6f0 100%
    );

    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    z-index: -1;
}

a.cta-btn, a.cta-btn-clear {
    position: relative;
    z-index: 0;   /* create stacking context */
	color: #fff;
}
a.cta-btn::before, a.cta-btn-clear::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px; /* border thickness */
    border-radius: 2px;

    background: linear-gradient(
        90deg,
        #00ff9c 0%,
        #1cc6f0 100%
    );

    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;

    z-index: -1;
}
a.gb-button.cta-btn-clear {
	background-color: unset;
}
a.gb-button.cta-btn-clear:hover {
	background-color: unset;
}

span.cta-btn:hover {
	color: var(--contrast-4) !important;
}
span.cta-btn:hover::before {
    filter: drop-shadow(0 0 8px rgba(0,255,156,0.4));
}

input.wpcf7-submit {
    background:
        linear-gradient(#0f2b3f, #0a1c2b) padding-box,
        linear-gradient(90deg, #00ff9c, #1cc6f0) border-box;

    cursor: pointer;
    transition: all 0.25s ease;
}


/* Separator */
.wp-block-separator {
    border: none;          /* remove default border */
    height: 2px;           /* thickness of line */
    background: linear-gradient(
        90deg,
        #00FF9C 0%,
        #1CC6F0 100%
    );
}

/* Search */
body.search-results div#page {
	padding-top: 50px;
}

body.search-results h1.page-title, body.search-results article, body.search-results div.post-thumbnail img {
	padding-bottom: 20px;
}

body.search-results div.entry-summary {
	min-height: 90px;
}

.search-post-content-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.search-post-content-wrapper .post-thumbnail {
    width: 30%; /* 30% of the parent container's width */
    margin-right: 80px; /* Adds spacing between the image and text */
}

.search-post-content-wrapper .search-post-details {
    width: 70%; /* 70% of the parent container's width */
}

.search-post-content-wrapper img {
    width: 300px;
    height: 300px;
    object-fit: contain;
}

.post-thumbnail {
    width: 200px;
    height: 200px;
    float: left;
    margin-right: 20px;
}

.placeholder-thumbnail {
    width: 200px;
    height: 200px;
}

/* For mobile screens - Drop to one column */
@media (max-width: 768px) {
    .search-post-content-wrapper {
        display: flex;
        flex-direction: column; /* Stack items vertically */
        align-items: flex-start; /* Ensure left alignment */
    }

    .search-post-content-wrapper .post-thumbnail, 
    .search-post-content-wrapper .search-post-details {
        width: 100%; /* Make sure each element takes full width */
    }

    .search-post-content-wrapper img {
        max-width: 100%; /* Ensure the image doesn't exceed its container */
        height: auto; /* Maintain the aspect ratio */
    }

    .search-post-details {
        text-align: left; /* Ensure text aligns correctly */
    }
	.post-thumbnail {
		height: auto;
	}
	body.search-results div.post-thumbnail img {
		padding-bottom: 20px;
	}
}


/* Testimonials */
body.single-testimonials div.inside-article {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

.testimonial-video {
	padding: 20px 0px 20px 0px;
    max-width: 600px; /* Set max-width for the video container */
    margin: 0 auto; /* Center the container if desired */
}
.testimonial-video-inner {
    position: relative;
    padding-top: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
}
.testimonial-video-inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.testimonial-video-placeholder {
    width: 100%;  /* Makes the image take the full width of its container */
    aspect-ratio: 16 / 9;  /* Maintains the same aspect ratio for all images */
    object-fit: cover;  /* Ensures the image covers the area while maintaining its aspect ratio */
    max-width: 100%;  /* Ensures images don't overflow outside their container */
    height: auto;  /* Automatically adjusts height based on width and aspect ratio */
}



.testimonial-details {
	padding: 20px 50px 20px 50px;
}
.testimonial-signature, body.single-testimonials div.testimonial-details {
	font-style: italic;
	font-weight: bold;
}
.testimonial-customer-name, .testimonial-business-name {
}
.testimonial-location {
	text-decoration: italic;
}
.testimonial-website {}
.testimonial-video-url {
	display: none;
}

/* Alternate testimonial images left and right */
.testimonial-grid {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin-bottom: 20px;
}
.gb-query-loop-item:nth-child(even) .testimonial-grid {
    flex-direction: row-reverse;
}
@media (min-width: 769px) {
	.testimonial-grid > .gb-grid-column {
		flex: 1; /* Adjust the flex property as needed */
	}
}
@media (max-width: 768px) {
    .testimonial-grid {
        flex-direction: column; /* Stack columns on small screens */
    }
}

/* Testimonial video overlay play button */
.testimonial-image-container {
    position: relative;
    display: inline-block;
    width: 100%;
    cursor: pointer;
}
.testimonial-image-container .play-button-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    width: 96px;
    height: 96px;
    background-image: url('https://gpress.anyware.co.nz/wp-content/uploads/2024/10/video-play.svg');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;
	transition: transform 0.2s ease-in-out;
}
.testimonial-image-container:hover .play-button-overlay {
    transform: translate(-50%, -50%) scale(1.2);
}

/* Case Studies */
p.case-study-topics {
	font-size: 15px;	
}
p.case-study-topics a {
	color: var(--accent);
}

