/*
Theme Name: Virgo Coffee Roasters
Theme URI: 
Author: Virgo Coffee Roasters
Author URI: 
Description: 
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 5.7
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html.gform_wrapper.gravity-theme .gfield input.large, .gform_wrapper.gravity-theme .gfield select.large
Template: twentytwentyfive
Text Domain: virgo-coffee-roasters
Tags: 

/* CSS Reset
---------------------------------------------------------------------------- */

/* CSS Reset
---------------------------------------------------------------------------- */

*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

b,
strong {
	font-weight: 600;
}

ol,
ul {
	padding: 0;
}

ol:where(:not([class*="wp-block"])),
ol:where(.wp-block-list),
ul:where(:not([class*="wp-block"])),
ul:where(.wp-block-list) {
	padding-inline-start: var(--wp--preset--spacing--md);
}

div[class*="wp-block-"] figcaption {
	color: var(--wp--preset--color--neutral-9);
	font-size: var(--wp--preset--spacing--xs);
	margin-bottom: 0;
	margin-top: 20px;
	text-align: center;
}

img,
figure {
	max-width: 100%;
	height: auto;
}


/* Standardize form styling
--------------------------------------------- */

input,
button,
textarea,
select {
	font: inherit;
}

input[type="button"],
input[type="email"],
input[type="search"],
input[type="submit"],
input[type="text"],
textarea {
	appearance: none;
}

input:not([type="submit"]),
select,
textarea,
.wp-block-post-comments-form input:not([type="submit"]):not([type="checkbox"]),
.wp-block-post-comments-form textarea {
	color: var(--wp--preset--color--neutral-10);
	border-radius: 5px;
	border: solid 1px var(--wp--preset--color--neutral-10);
	padding: .5em 1em;
	font-size: var(--wp--preset--font-size--text-base);
	width: 100%;
}

input:focus-visible,
textarea:focus-visible {
	outline-color: var(--wp--preset--color--primary);
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

label {
	width: 100%;
	display: block;
}

::placeholder {
	color: var(--wp--preset--color--neutral-10);
	font-size: var(--wp--preset--font-size--text-sm);
	opacity: 0.75;
}

/* Post Comment Button */
input[type="submit"].wp-block-button__link {
	padding-top: var(--wp--custom--block--button--padding-y);
	padding-right: var(--wp--custom--block--button--padding-x);
	padding-bottom: var(--wp--custom--block--button--padding-y);
	padding-left: var(--wp--custom--block--button--padding-x);
}

input[type="submit"].wp-block-button__link:hover {
	background-color: var(--wp--preset--color--neutral-12);
	color: var(--wp--preset--color--light);
	border-color: var(--wp--preset--color--neutral-12);
}

:root {
    --focus-ring-color: var(--wp--preset--color--neutral-10);
    --focus-ring-offset: 2px;
}

:where(.wp-site-blocks *:focus) {
    outline-width: 2px;
    outline-style: solid;
    outline-color: var(--focus-ring-color);
    outline-offset: var(--focus-ring-offset);
}
footer{
	margin-top: 0px !important;
}
.entry-content{
	position: relative;
}
body{
    background-size: 100% !important;
}
a:hover,
a:focus{
	outline: none;
}
a:not([class]) {
	font-weight: inherit;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
}
a:not([class]):hover {
    text-decoration: underline;
	outline: none;
}

footer p{
	text-align: left;
}
#to_top_scrollup:hover {
    background-color: var(--wp--preset--color--tertiary);
	opacity: 1 !important;
}
.home .entry-content:before,
.home .entry-content:after,
.page-about-us .entry-content::before,
.page-about-us .entry-content:after{
    content: "";
	position: absolute;
	width: 100%;
}

.home .entry-content:before {
    height: 1818px;
    background: linear-gradient(
       180deg, 
        rgba(188, 214, 254, 0.5) 0%, 
        rgba(255, 255, 255, 0.5) 100% 
    );
    top: calc(-1 * var(--wp--preset--spacing--md));
}
.page-about-us .entry-content::before{
	height: 627px;
    background: linear-gradient(
		180deg,
		rgba(244, 231, 199, 0.5) 0%,
		rgba(255, 255, 255, 0.5) 100%);
	top: calc(-1 * var(--wp--preset--spacing--md));
	z-index: -1;
}


.page-about-us .entry-content:after,
.home .entry-content:after {
    height: 1818px;
    background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.5) 0%,
		rgba(188, 214, 254, 0.5) 100%);
    
    bottom: calc( -1 * var(--wp--preset--spacing--4-xl));
    z-index: -1;
}


.wp-element-button,
.wp-block-button__link {
    transition:
        background-color 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease,
		padding 0.25s ease;
}

header .wp-block-site-navigation-menu .wp-block-navigation-item  {
    position: relative;
}

header .wp-block-site-navigation-menu .wp-block-navigation-item:before{
	content: "";
    width: 0%;
    height: 1px;
    background-color: var(--wp--preset--color--light);
    position: absolute;
    bottom: -5px;
    left: 0; /* make sure it starts at left */
}

header .wp-block-site-navigation-menu .wp-block-navigation-item:hover:before,
header .wp-block-site-navigation-menu .wp-block-navigation-item.current-menu-item:before {
	width: 100%;
}

.wp-block-navigation__responsive-container-close {
    color:var(--wp--preset--color--primary) !important;
}

@media ( max-width: 900px ) {
	header .wp-block-site-navigation-menu .wp-block-navigation-item .wp-block-navigation-item__content{
		color: var(--wp--preset--color--primary) !important;
	}
}


.cta-image{
	position: absolute;
    bottom: 130px;
}

.border-separator.wp-block-columns .wp-block-column{
	border-right: 1px solid #66666633;
}
.border-separator.wp-block-columns .wp-block-column:last-child{
	border-right: 0px;
}

.four-columns-container .four-column{

}

.service-grid .service-grid-card{
	position: relative;
	padding-bottom: calc( 54px + var(--wp--preset--spacing--lg) + var(--wp--preset--spacing--lg)) !important;
}
.service-grid-card-btn{
	position: absolute;
	bottom: var(--wp--preset--spacing--lg);
}

.block-editor-block-list__block.service-grid-card-btn {
    position: absolute;
}

.pagination {
    margin-top: var(--wp--preset--spacing--lg);
    display: flex;
    gap: 2px;
}

.pagination button {
    padding: 12px 15px;
    background: transparent;
    cursor: pointer;
    appearance: none;
    border: 0px;
    outline: none;
    font-size: 16px;
    line-height: 16px;
    color: var(--wp--preset--color--neutral-12);
	position: unset !important;
    transform: none;
}
.pagination button:hover,
.pagination button.active {
    background: var(--wp--preset--color--primary);
    color: #fff;
    border-radius: 4px;
}

.pagination button:disabled {
    display: none;
    cursor: not-allowed;
}
.pagination button.prev,
.pagination button.next{
    background: var(--wp--preset--color--primary);
    color: #fff;
    border-radius: 4px;
    appearance: none;
}
.pagination button.prev:hover,
.pagination button.next:hover{
    background: var(--wp--preset--color--tertiary);
    color: var(--wp--preset--color--primary);
}

.pagination button.prev {
    margin-left: 0;
    margin-right: auto;
}

.pagination button.next {
    margin-right: 0;
    margin-left: auto;
}



@media ( max-width: 781px ) {
    .footer-site-links {
        margin-top: 20px !important;
    }
    	.sm-text-center {
	 text-align: center !important;
	}
	.order-text{
		order: 2;
	}
	.order-image{
		order: 1;
	}
	.cta-image {
		bottom: unset;
		top: -70px;
	}
	.service-grid,	
	.block-editor-block-list__block.two-grid,
	.two-grid {
		grid-template-columns: repeat(1, 1fr);
	}
	.service-grid-card,
	.two-grid-card{
		width: 80%;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.four-columns-container:not(.is-not-stacked-on-mobile) > .four-column{
		flex-basis: 50% !important;
	}
	.four-columns-container.border-separator .four-column:nth-child(even){
		border-right: 0px;
	}
	.footer-column{
		flex-wrap: wrap !important;
	}

	.footer-column .footer-site-details{
		flex-basis: 100%;
    	text-align: center;
		border-right: 0px !important;
	}
	.footer-column .footer-site-details .wp-block-social-links{
		justify-content: center;
	}
	.footer-column .footer-site-links .wp-block-column {
		flex: 0 0 calc((100% - (2 * var(--wp--preset--spacing--lg))) / 3);
		flex-basis: calc((100% - (2 * var(--wp--preset--spacing--lg))) / 3) !important;
	}
	.footer-copyright-container{
		justify-content: center !important;
	}
}


@media ( max-width: 600px ) {
	.service-grid-card,
	.two-grid-card{
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
	.cta-spacer {
		height: 180px !important;
	}
	.footer-site-links .wp-block-columns {
    	flex-direction: column;
	}
}

@media ( max-width: 480px ) {
	.four-columns-container:not(.is-not-stacked-on-mobile) > .four-column{
		flex-basis: 100% !important;
	}
	.border-separator.wp-block-columns .wp-block-column:last-child{
		border-bottom: 0px;
	}
	.border-separator.wp-block-columns .wp-block-column{
		border-right: 0px;
		border-bottom: 1px solid #66666633;
	}
	.footer-column .footer-site-links .wp-block-column {
		flex: 0 0 100%;
		flex-basis: 100% !important;
	}
	.cta-spacer {
        height: 95px !important;
    }
}


@media (max-width: 900px) {
	header .wp-block-site-navigation-menu {
        order: 3;
    }
	header .wp-block-site-logo{
		order: 1;
	}
	header .wp-block-site-button{
		order: 2;
		margin-right: 0px;
        margin-left: auto;
	}
}
@media (max-width: 768px) {
	header .wp-block-buttons .wp-block-button__link{
		font-weight: 600;
        letter-spacing: 0.5px;
        padding: 13px;
        height: auto;
	}
	header .wp-block-site-logo.is-default-size img {
		width: 90px;
	}
}

.gform_button.button{
	outline: none;
	background-color: var(--wp--preset--color--primary);
    border-top-left-radius: 50px;
    border-top-right-radius: 50px;
    border-bottom-left-radius: 50px;
    border-bottom-right-radius: 50px;
    border-top-color: var(--wp--preset--color--tertiary);
    border-top-width: 1px;
    border-top-style: solid;
    border-right-color: var(--wp--preset--color--tertiary);
    border-right-width: 1px;
    border-right-style: solid;
    border-bottom-color: var(--wp--preset--color--tertiary);
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-left-color: var(--wp--preset--color--tertiary);
    border-left-width: 1px;
    border-left-style: solid;
    padding-top: 16px;
    padding-right: 40px;
    padding-bottom: 20px;
    padding-left: 34px;
    box-shadow: var(--wp--preset--shadow--shadow-1);
	color: var(--wp--preset--color--light);
	text-transform: uppercase;
    white-space: nowrap;
	width: 100%;
	margin-bottom: 0px !important;
}

.gform_button.button:hover{
	background-color: var(--wp--preset--color--accent-3);
    border-color: var(--wp--preset--color--accent-3);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
	color: #fff;
	transition: 
		background-color 0.25s ease, 
		border-color 0.25s ease, 
		box-shadow 0.25s ease, 
		transform 0.25s ease, padding 0.25s ease;
}


    
.gform-footer.gform_footer{
   padding:0px !important;
   margin-top:28px !important;
}

.gform_wrapper .gform_heading .gform_required_legend {
    margin: 0px;
}

.gform_wrapper .gform-body.gform_body .gfield_label, .gform_wrapper .gform-body.gform_body .gform-field-label {
    font-size: var(--wp--preset--font-size--text-lg);
    line-height: 1.5;
    font-weight: normal;
    color: var(--wp--preset--color--dark);
}

.gform_wrapper .gform-body.gform_body .ginput_container input, .gform_wrapper .gform-body.gform_body .ginput_container select, .gform_wrapper .gform-body.gform_body .ginput_container textarea {
    border: 0;
    background: #fff;
    padding: 12px;
    font-size: var(--wp--preset--font-size--text-base);
    font-weight: normal;
    line-height: 1.5;
    border-radius: 6px;
    outline: none;
	color:var(--wp--preset--color--neutral-12);
	appearance: none;
}

.gform_wrapper .gform-body.gform_body .ginput_container select{
    position: relative;
    overflow: hidden;
}
.gform_wrapper .gform-body.gform_body .ginput_container select:after{
    content: "\\25BC"; /* Unicode for a down-pointing triangle */
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}
.gform_wrapper .gform-body.gform_body .ginput_container input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
}
.gform_wrapper .gform-body.gform_body .ginput_container  .ginput_counter.gfield_description{
	padding-top: 0px;
}
.gform_wrapper .gform-body.gform_body .ginput_container textarea{
   height:180px !important;
   resize: none;
}
.gform_wrapper .gform-body.gform_body .ginput_container textarea::placeholder {
    font-size: var(--wp--preset--font-size--text-base);
    
}
.gform_wrapper .gform-body.gform_body .ginput_container_consent {
    display: flex !important;
    align-items: center;
    gap: 16px;
}
.gform_wrapper .gform-body.gform_body .gform_fields {
    row-gap: 12px;
    column-gap: 16px;
}
.gform_wrapper .gform-body.gform_body .validation_message.gfield_validation_message {
    padding: 0px;
    border: 0px;
    background: none;
    margin-top: 0;
}
.gform_wrapper .gform-body.gform_body .gfield_error input {
    background-color: #fff9f9;
}
.relative{
	position: relative;
}
.absolute{
	position: absolute;
}
.overflow-hidden{
	overflow: hidden;
}

.core-values-section{ overflow: hidden;}
.core-value-columns{width: 100%;}
.core-value-column-text{ width: 30.49%;}
.core-value-column-image{ width: 39.02%; position: relative;}
.core-value-column-image .wp-block-image{
	top: 0;
    position: absolute;
    width: 100%;
    transform: translateY(-50%);
}
@media (max-width: 1200px) {
	.core-value-column-image .wp-block-image img{
		height: 700px;
		object-fit: cover;
	}
}
@media (max-width: 768px) {
	.core-values-section-middle {
		height: 300px;
		overflow: hidden;
	}
	.core-value-column-text {
		width: 50%;
		flex-basis: 50% !important;
	}
	.core-value-column-image {
		width: 1px !important;
        flex-basis: 1px !important;
        background: rgba(102, 102, 102, 0.5);
	}
	.core-values-section-middle .core-value-column-text {
		width: 0px !important;
		flex-basis: 0px !important;
	}
	.core-values-section-middle .core-value-column-image {
		width: 100% !important;
		flex-basis: 100% !important;
	}
	.core-value-column-image .wp-block-image {
    	top: 50%;
	}
	
}
@media (max-width: 480px) {
	.core-values-section-top, .core-values-section-bottom {
		flex-direction: column;
	}
	.core-value-column-text {
		width: 100% !important;
		flex-basis: 100% !important;
	}
	.core-value-column-image {
        width: 100% !important;
	}
}
.our-story-wrapper{}
.our-story-card hr:before {
    content: "";
    position: absolute;
    width: 18px;
    height: 18px;
    background-color:var(--wp--preset--color--tertiary);
    border-radius: 50%;
    z-index: 4;
    transform: translateY(-8px);
}

.our-story-card hr {
    width: calc(100% + var(--wp--preset--spacing--lg));
}

.our-story-container {
  overflow: hidden; 
  width: 100%;    
  position: relative;
}

.our-story-wrapper.swiper {
  overflow: visible;
  touch-action: pan-y;
}

.our-story-wrapper .swiper-wrapper {
  	overflow: visible;
	justify-content: flex-start;
	/* transform: translateX(-336px) !important; */
}

.our-story-card {
	margin-top: 0px;
	position: relative;
}



/* Hide the default plus sign */
.wp-block-accordion-heading__toggle-icon {
  display: inline-block;
    width: 8px;
    height: 8px; 
  border-right: 2px solid var(--wp--preset--color--primary); 
  border-bottom: 2px solid var(--wp--preset--color--primary); ;
  transform: rotate(45deg);       
  transition: transform 0.3s ease;
  content: ""; 
  font-size: 0;
  margin-right: 2px;
}

/* Rotate caret when accordion is open */
.wp-block-accordion-heading__toggle[aria-expanded="true"] .wp-block-accordion-heading__toggle-icon {
  	transform: rotate(-135deg) !important;
}

.banner-title{
	position: relative;
	text-align: center;
}
.banner-title h1{
	background: radial-gradient(circle, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.6) 40%, rgba(255, 255, 255, 0.4) 60%);
	display: inline-block;
}

.has-white-blur-background{
	position: relative;
}

.has-white-blur-background p,
p.has-white-blur-background {
   background: radial-gradient(circle, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.8) 40%, rgba(255, 255, 255, 0.6) 60%);
}
.has-white-blur-background-2 p,
p.has-white-blur-background-2 {
   background: radial-gradient(circle, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.4) 40%, rgba(255, 255, 255, 0.2) 60%);
}
.map-container{
	height: 600px;
}

.jutify-text,
.jutify-text *{
	text-align: justify;
}
@media ( max-width: 1024px ) {
	.banner-image figure {
		height: 450px !important;
	}
	
	.banner-image figure img {
		height: 100% !important;
	}

	.map-container{
		height: 450px;
	}

	.map-container iframe{
		height: 100%
	}

}

@media ( max-width: 768px ) {
	.banner-image figure {
		height: 300px !important;
	}

	.map-container{
		height: 300px;
	}

	.map-container iframe{
		height: 100%
	}
}

@media ( max-width: 600px ) {
	.map-container{
		height: 450px;
	}
}
@media ( max-width: 480px ) {
	.banner-image figure {
		height: 250px !important;
	}
}


.column-grid.column-grid-3 {
    display: flex;
    flex-wrap: wrap;
    gap: var(--wp--preset--spacing--lg);
    align-items: stretch;
}

.column-grid.column-grid-3 .column-grid-item {
    flex: 0 1 calc(33.333% - (var(--wp--preset--spacing--lg) * 2 / 3));
    width: calc(33.333% - (var(--wp--preset--spacing--lg) * 2 / 3));
    max-width: calc(33.333% - (var(--wp--preset--spacing--lg) * 2 / 3));
}

@media ( max-width: 768px ) {
    .column-grid.column-grid-3{
        justify-content: center;
    }
    .column-grid.column-grid-3 .column-grid-item{
        flex: 1 1 calc(50% - var(--wp--preset--spacing--lg));
        width: calc(50% - var(--wp--preset--spacing--lg));
		max-width: 50%;
    }
}
@media ( max-width: 600px ) {
    .column-grid.column-grid-3 .column-grid-item{
        flex: 1 1 80%;
        max-width: 80%;
    }
}

.wp-block-navigation-link:focus{
	outline: none;
}

#to_top_scrollup{
	bottom: 80px !important;
}

@media ( max-width: 480px ) {
	.wp-block-paragraph {
		word-break: break-word;
	}
	
	
.wp-block-social-links.has-large-icon-size .wp-block-social-link a {
  padding: 0.25em;
}

.wp-block-social-links.has-large-icon-size .wp-social-link svg,
.wp-block-social-links.has-icon-color .wp-social-link svg,
.wp-block-social-links.is-style-logos-only .wp-social-link svg {
  width: 24px;
  height: 24px;
}
}


.ginput_container_consent input[type="checkbox"] {
  appearance: auto !important;
}

.gform_button[type="submit"] {
  cursor: pointer;
}

.profile-card {
    display: flex !important;
    flex-direction: column !important;
}

.profile-content {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}

.profile-content-text {
    flex: 1 !important;
}
