/*
Theme Name: ARIOS (Ollie Child Theme)
Theme URI: https://olliewp.com
Description: This is Mike's custom child theme.
Author: Mount Deluxe
Author URI: https://olliewp.com
Template:     ollie
Version: 20251118150004
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         blog, portfolio, entertainment, grid-layout, one-column, two-columns, three-columns, four-columns, block-patterns, block-styles, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, rtl-language-support, style-variations, template-editing, theme-options, translation-ready, wide-blocks
Text Domain: ollie-child
*/

/*** Bring in Adobe Fonts ***/
@import url("https://use.typekit.net/kvd0tda.css");

:root {
	--wp--preset--font-family--primary: 'sofia-pro', 'Helvetica', Arial, -apple-system, BlinkMacSystemFont, Roboto, Helvetica, sans-serif !important;
	--wp--preset--font-size--xx-large: clamp(2.25rem, 2.25rem + ((1vw - 0.2rem) * 4.167), 5.3875rem) !important;
}

html {
	-moz-osx-font-smoothing: auto;
	-webkit-font-smoothing: auto;
	scroll-behavior: smooth;
}

body {
	--wp--preset--font-family--primary: 'sofia-pro', 'Helvetica', Arial, -apple-system, BlinkMacSystemFont, Roboto, Helvetica, sans-serif !important;
	font-weight: 300;	
	--wp--style--root--padding-left: clamp(30px, 5vw, 80px);
	--wp--style--root--padding-right: clamp(30px, 5vw, 80px);
}

strong {
	font-weight: 600;
}

header .wp-block-group.alignfull {
	padding-left: var(--wp--style--root--padding-left) !important;
	padding-right: var(--wp--style--root--padding-right) !important;
}

.arios-desktop-nav {
	display: none !important;
}

.header-logo img {
	width: 120px !important;
}

@media(min-width: 600px) {
	.arios-mobile-nav {
		display: none !important;
	}
	
	.arios-desktop-nav {
		display: flex !important;
	}
	
	.header-logo img {
		width: 180px !important;
	}
}

.has-font-ivy {
	font-family: 'ivymode', Times, serif;
	font-weight: 400;
}

.has-font-sofia {
	font-family: var(--wp--preset--font-family--primary);
	font-weight: 300;
}

.wp-block-navigation-item.current-menu-item.wp-block-navigation-link {
	font-size: clamp(1.3rem, 1.3rem + ((1vw - 0.2rem) * 0.244), 1.5rem) !important;
}

.bg-stripe-blue-to-white {
	background: #12223E;
	background: linear-gradient(180deg, rgba(18, 34, 62, 1) 0%, rgba(18, 34, 62, 1) 90%, rgba(255, 255, 255, 1) 90%, rgba(255, 255, 255, 1) 100%) !important;
}

h2,
.h2,
h3,
.h3 {
	font-family: 'ivymode', Times, serif;
	font-weight: 400;
	letter-spacing: 1px;
}

h3,
.h3 {
	text-box: trim-both cap alphabetic;
}

.offset-bg-image {
	background-repeat: no-repeat;
	background-position-x: 15px !important;
}

@media(min-width: 1700px) {
	.offset-bg-image {
		background-position-x: clamp(5px, 5vw, 95px) !important;
	}
}

@media(max-width: 600px) {
	.page-template.page-template-wp-custom-template-page-with-no-padding-right .entry-content.wp-block-post-content {
		/*padding-right: 0 !important;*/
	}
}

.header-xl {
	aspect-ratio: 3100 / 1685;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.header-text-group {
	margin: 0;
}

.heading-gold-line-top {
	display: inline-block;
	position: relative;
	padding-top: 25px;
	width: fit-content;
	--gold-line-right: 0px;
}

.heading-gold-line-top::before {
	content: '';
	position: absolute;
	right: var(--gold-line-right);
	top: 0;
	width: 200vw;  
	height: 1.5px;
	background: #8a7150;
	transform-origin: left;     /* grow from left to right */
	transform: scaleX(0);       /* start invisible */
	animation: goldLineGrow 1.5s ease-out forwards;
}
	
.heading-gold-line-bottom {
	display: inline-block;
	position: relative;
	padding-bottom: 25px;
	width: fit-content;
	--gold-line-right: 0px;
}

.heading-gold-line-bottom::before {
	content: '';
	position: absolute;
	right: var(--gold-line-right);
	bottom: 0;
	width: 200vw;  
	height: 1.5px;
	background: #8a7150;
	transform-origin: left;     /* grow from left to right */
	transform: scaleX(0);       /* start invisible */
	animation: goldLineGrow 1.5s ease-out forwards;
}

@keyframes goldLineGrow {
	from {
		transform: scaleX(0);
	}
	to {
		transform: scaleX(1);
	}
}

blockquote p {
	font-family: 'ivymode', Times, serif;
	font-weight: 400;
	letter-spacing: 0.25px;
	line-height: 1.6;
}

.wp-block-pullquote blockquote {
	position: relative;
	display: inline-block;
	padding-top: clamp(25px, 2vw, 40px);
}

.wp-block-pullquote blockquote::before {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	width: 200vw;  
	height: 1.5px;
	background: #8a7150;
	transform-origin: left;     /* grow from left to right */
	transform: scaleX(0);       /* start invisible */
	animation: goldLineGrow 1.5s ease-out forwards;
}

.wp-block-pullquote p {
	margin-block-start: 0 !important;
	padding-right: clamp(25px, 2vw, 40px);
}

body.home {
	background: var(--wp--preset--color--primary) !important;
	overflow: hidden;
}

body.home header.site-header .wp-block-group.alignfull.has-primary-background-color {
	background: transparent !important;
}

.team-slider-group h3 {
	word-spacing: 100vw;
	line-height: 1.15;
}

.accordion-group details {
	margin-top: clamp(.75rem, 3vw, 1.3rem);
	padding-bottom: clamp(.75rem, 3vw, 1.3rem);
	border-bottom: 1.5px solid var(--wp--preset--color--primary);
}

.accordion-group details summary {
	font-family: 'ivymode', Times, serif;
	font-weight: 400;
	letter-spacing: 1px;
	list-style-type: none;
	background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15.6879883 16.1191406'%3E%3Cpolygon points='8.7402344 7.1992188 8.7402344 0 6.9482422 0 6.9482422 7.1992188 0 7.1992188 0 8.9199219 6.9482422 8.9199219 6.9482422 16.1191406 8.7402344 16.1191406 8.7402344 8.9199219 15.6879883 8.9199219 15.6879883 7.1992188 8.7402344 7.1992188' fill='%2312223e'/%3E%3C/svg%3E");
	background-position: right center;
	background-size: 25px;
	background-repeat: no-repeat;
	font-size: clamp(1.1rem, 1.1rem + ((1vw - 0.2rem) * 1.852), 2.5rem);
	transition: color 100ms ease;
	padding-right: 30px;
}

@media(min-width: 900px) {
	.accordion-group details summary {
		text-box: trim-both cap alphabetic;
	}
}

.accordion-group details[open] summary {
	background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15.6879883 1.7207031'%3E%3Cpolygon points='6.9482422 0 5.4190063 0 0 0 0 1.7207031 5.4190063 1.7207031 6.9482422 1.7207031 15.6879883 1.7207031 15.6879883 0 6.9482422 0' fill='%2312223e'/%3E%3C/svg%3E");
}

.accordion-group details summary:hover {
	color: var(--wp--preset--color--primary-alt-accent);
}

.accordion-group details p {
	margin-top: clamp(.75rem, 3vw, 1.3rem);
}

.wp-block-navigation__responsive-container.hidden-by-default {
	padding: var(--wp--preset--spacing--large) var(--wp--style--root--padding-left) !important;
}

.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-container-open {
	background: transparent;
	color: white;
}

@media(max-width: 600px) {
	.hide-mobile {
		display: none !important;
	}
	
	footer .wp-block-group.has-font-ivy.is-content-justification-right.wp-block-group-is-layout-flex {
		justify-content: flex-start;
	}
}

.home-landing-overlay {
	background-color: var(--wp--preset--color--primary);
	position: absolute;
	top: 0;
	left: 0;
	max-width: unset !important;
	z-index: 50;
	width: 100vw;
	height: 100vh;
	margin: 0 !important;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.home-landing-logo {
	width: 60vw;
	max-width: 300px;
	height: auto;
}

.home-landing-logo svg {
	width: 100%;
	height: auto;
}

/* Disable Swiper on mobile */
@media(max-width: 600px) {
	.swiper-wrapper {
		display: block !important;
	}
}

/* Make full page dark blue on Contact page so no gaps at bottom */
body.wp-singular.page-id-25 {
	height: 100vh;
	background-color: var(--wp--preset--color--primary);
}

/* Gravity Forms Customisations */

:root,
body {
	--gf-local-font-size: 16px !important;
	--gf-font-size-primary: 16px !important;
}

body .gform_wrapper .gform_body input,
body .gform_wrapper .gform_body textarea {
	font-size: 16px;
	font-weight: 300;
}

body .gform_wrapper .gform_body,
.gfield_label.gform-field-label,
.gform-field-label.gform-field-label--type-sub {
	font-weight: 300 !important;
}

.gfield_required.gfield_required_text {
	display: none !important;
}

/* END: Gravity Forms Customisations */