/*
Theme Name: Free Gulliver
Description: Free Gulliver, a custom theme utilizing the Wordpress Twenty Twenty-Five theme for structure and scalability.
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.0
Text Domain: freegulliver
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */


html, body{
	font-size: 17px;
	scroll-behavior: smooth !important;
}
a {
	/*text-decoration-thickness: 1px !important;
	text-underline-offset: .2em;*/
	text-decoration-thickness: 1px; /* Adjust thickness */
  text-underline-offset: 6px; /* Adjust spacing */
	transition: all 0.3s ease-in-out;
}
a.fg--link-override, a:hover.fg--link-override{
	text-decoration: none !important;
border-bottom: none !important;
}
/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

:root :where(.wp-block-navigation){letter-spacing: 1.2px;}

/*-------------------------------*/
/* Free Gulliver - unique styles */
/*-------------------------------*/

/*-- HTML Components & Spacing --*/
label{font-weight: 700 !important;text-transform: uppercase !important; font-size: 0.75rem !important;letter-spacing: 1.2px !important;}
input[type=text],input[type=email],input[type=phone]{padding: 0.5rem !important;align-self: stretch !important;letter-spacing: 1.2px !important;margin-top: 0.4rem !important;height: 2rem;}
textarea{padding: 0.5rem !important;width: 100% !important;margin-top: 1rem !important;}
.wp-block-navigation__container{gap: 2rem !important;}
.wpcf7-form-control-wrap{display: flex !important;}
.wpcf7-form-control-wrap > input{width: 100% !important;}
.has-global-padding > .alignfull{margin-top: 0px !important; margin-bottom: 0px !important;}
.wp-block-spacer{margin-top: 0px !important;}
header > div > div > div{padding: 1.5rem 0px !important;}
.wp-block-table td, .wp-block-table th{padding: 0px !important;}

header{
	position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  right: 0;
	transition: all 0.3s ease-in-out;
	border-bottom: 1px solid black;
	/*Unscrolled*/
	
	/*END unscrolled*/	
	background: white;
		.wp-block-site-logo.is-default-size img{width: 12.5rem;}
}

body.home header{
	/*Homepage*/
	background: transparent;
	border-bottom: none;
	color: white;
	.link-to-button > a{border: 1px solid white;}
	/*END Homepage*/	
	.link-to-button > a:hover{background: white;color: black !important;}
	.wp-block-site-logo.is-default-size img{width: 18.5rem;transition: all 0.3s ease-in-out;}
}

body.home header img.custom-logo{filter: invert(1);}

body.home header.scrolled/*, header.scrolled*/{
	background: white;
	color: black;
	.link-to-button > a{border: 1px solid black;}
	border-bottom: 1px solid black;
	.wp-block-site-logo.is-default-size img{width: 12.5rem !important;transition: all 0.3s ease-in-out;filter: none;}
	.link-to-button > a:hover{background: black;color: white !important;}
}

body.home header.scrolled #fg--nav-open img{filter:none;}

figure{margin-block-start: 0px !important; margin-block-end: 0px !important;}

ul.wp-block-list {
    list-style-type: '-      ';
    margin-left: 1rem !important;
}

input[type=submit]{cursor: pointer;}


a.wp-block-button__link, .link-to-button > a, input[type=submit]{
	display: block;
	background-color: transparent;
  border-radius: 0px;
  border: 1px solid black;
 	color: black;
  padding: 17px 35px !important;
  transition: opacity 0.2s ease-in-out;
  text-transform: uppercase;
  font-weight: 700 !important;
  letter-spacing: 1.2px;
    &:hover{
    	background-color: black;
    	color: white !important;
    	text-decoration: none !important;
    	transition: all 0.2s ease-in-out;
    }
}

div.is-style-outline > a.wp-block-button__link{
	border: 1px solid white !important;
	color: white !important;
	    &:hover{
    	background-color: white !important;
    	color: black !important;
    	text-decoration: none !important;
    	transition: all 0.2s ease-in-out;
    }
}

footer{border-top: 1px solid black;}
footer a{text-decoration: none !important;color: black !important;text-underline-offset:none !important;
&:hover{color: #000000 !important; border-bottom: 1px solid black;}
}

footer a img{text-decoration: none !important;}
footer a:hover img{text-decoration: none !important;border-bottom: none !important;}

.page-template-page-no-title{margin-top: 4.5rem !important;}
body.home.page-template-page-no-title{margin-top: 0rem !important;}
.desktop-only{display: block !important;}
.mobile-only{display: none !important;}

#main, #biography{scroll-margin-top: 4.5rem;}

/*-- Typography --*/
.current-menu-item > a{
	text-decoration: underline;
	text-decoration-thickness: 1px; /* Adjust thickness */
  text-underline-offset: 6px; /* Adjust spacing */}


h1, h2, h3, h4, h5{
	font-family: "Brygada 1918", serif;
	font-weight: 400 !important;
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

h1{
	font-size:3.25rem;
}

h2{
	font-size:2.6rem;
}			

h3{
	font-size:2rem;
}	

h4{
	font-size:1.5rem;
}	

h5{
	font-size:1.2rem;
}	

p.body-xlarge{
	font-size: 1.5rem !important;
	margin: 0px;
	margin-top: 0.5rem;
}

p.footnote{
	font-size: 0.875rem;
	margin-top: 0.5rem !important;
	margin-bottom: 1rem !important;
}

.has-caption-font-size{letter-spacing: 1.2px !important;}

.fg--background-left{
	background-position: left !important;
	/*background-size: 30% !important;*/
	background-repeat: repeat-y !important;
}

/*-- FG Components --*/
.wpcf7-form-control-wrap{flex-direction: column;}
#fg--header-desktop{display: block;}
#fg--header-mobile{display: none;}
#fg--mobile-nav{display: none;}
.fg--form-submit > p > input{margin: 0 auto !important;}
.fg--icon-and-headline p{line-height: 1.5 !important;}
.fg--icon-and-headline > figure > img{margin-bottom: 0.2rem;}
.fg--icon-and-headline > figure{width: 15px !important;flex-shrink: 0 !important;}
a.fg--link-with-icon--left,p.fg--link-with-icon--right > a{
	font-family: "Plus Jakarta Sans", monospace !important;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 0.75rem;
	font-weight: 700;
	display: inline-flex;
	justify-content: center !important;
	letter-spacing: 0.1rem !important;
}
a.fg--link-with-icon--left{
	color: black;	
	&:hover{
		color: #124944 !important;
	}
}

a.fg--link-with-icon--right{
	color: white;	
	&:hover{
		text-decoration: underline !important;
	}
}
p.fg--link-with-icon--right > a{color: white;}

a.fg--link-with-icon--left::before{
	content:url('/wp-content/uploads/2025/01/Icon-material-keyboard-arrow-left.svg');
	padding-right: 0.75rem;
}

p.fg--link-with-icon--right > a::after{
	content:url('/wp-content/uploads/2025/01/Icon-material-keyboard-arrow-right.svg');
	padding-left: 0.75rem;
}

.fg--back img{padding-right: 0.5rem;}


#fg--homepage-hero{padding: 17.5rem 3rem 9rem 3rem;margin-bottom: -1px !important;}

.fg--interior-content{padding: 13.5rem 0rem;}
.fg--vertical-padding{padding: 6rem 0rem 5.5rem 0rem;}
#fg--interior-hero{padding: 6rem 2rem 5.5rem 2rem;}
#fg--interior-hero .has-caption-font-size{font-weight: 700 !important;letter-spacing: 1.2px !important;}
#fg--interior-hero{
	background-position: right !important;
	/*background-size: 30% !important;*/
	background-repeat: repeat-y !important;
}

#fg--teammates{
	display: grid;
  	grid-template-columns: repeat(4, 1fr);
  	gap: 1.75rem; /* Adjust the spacing between grid items */
  	margin-block-start: 0px !important;
  	margin-block-end: 0px !important;
  	align-items: stretch;
  	grid-auto-rows: 1fr !important;
  	padding: 5rem 0;
}

:root :where(.is-layout-constrained) > :last-child{margin-block-end: auto !important;}


.fg--teammate{
	margin-block-start: 0rem !important;
	margin-bottom: 4rem;
	border-bottom: 1px solid black;
	cursor: pointer;
	position: relative;
}

.fg--teammate:last-child{margin-bottom: 4rem !important;}

.fg--teammate > a {
    text-decoration: none !important;
    color: black !important;
}

.fg--teammate-photo > img{
	width: 100% !important;
	margin-bottom: 1rem;
}

.fg--teammate-photo {
  position: relative; /* Ensure proper stacking context */
  display: inline-block; /* Adjust as needed for layout */
}

.fg--teammate-photo img {
  display: block; /* Removes extra spacing below the image */
  transition: opacity 0.3s ease-in-out; /* Smooth transition for hover effect */
}

.fg--teammate-photo img.hover-image {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0; /* Start with the hover image hidden */
  transition: opacity 0.3s ease-in-out; /* Smooth transition for hover effect */
  z-index: 2;
}

.fg--teammate-photo:hover img.default-image{
  opacity: 0; /* Hide the default image on hover */
}

.fg--teammate-photo:hover img.hover-image{
  opacity: 1; /* Show the hover image on hover */
}

.fg--image-decorated, .fg--image-decorated-rounded{
	position: relative;
  	display: inline-block;
  	margin: 0; /* Remove default figure margins, if necessary */
  }

.fg--image-decorated img{
  display: block;
  width: 100%;
  height: auto;
}

.fg--image-decorated::before,.fg--image-decorated::after {
	content: "";
  	position: absolute;
  	width: 3rem; 
  	height: 4.6rem;
  	background-size: contain;
  	background-repeat: no-repeat;
 	z-index: 10; /* Ensure it appears above the content */
}

.fg--image-decorated::before{
	background-image: url('/wp-content/uploads/2025/01/Graphic-Shapes-04.svg');
	top:-1.4rem;
	left:-1.3rem;
}

.fg--image-decorated::after{
	background-image: url('/wp-content/uploads/2025/01/Graphic-Shapes-1.svg');
	bottom:-1.4rem;
	right:-1.3rem;
}

#fg--teammate-individual{padding: 10rem 0 6rem 0rem;}
#biography{
	padding: 0px 6rem 3rem 6rem;
	width: 70%;
	p{font-size: 1.25rem;line-height: 2.25rem;}
}

#fg--teammate-individual > div:nth-child(1){
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#fg--teammate-individual > p{display: none !important;}

#fg--teammate-individual > div:nth-child(2){text-align: center;}

.fg--image-decorated-rounded img{
  display: block;
  width: 21rem;
  height: auto;
  margin: 0 auto;
  padding: 5rem;
}

.fg--image-decorated-rounded::before, .fg--image-decorated-rounded::after{
	content: "";
  	position: absolute;
  	width: 11.5rem; 
  	height: 9.7rem;
  	background-size: contain;
  	background-repeat: no-repeat;
 	z-index: 10; /* Ensure it appears above the content */
}

.fg--image-decorated-rounded::before{
	background-image: url('/wp-content/uploads/2025/01/Path-110.svg');
	top:0rem;
	right:0rem;
}

.fg--image-decorated-rounded::after{
	background-image: url('/wp-content/uploads/2025/01/Path-109.svg');
	bottom:0rem;
	left:0rem;
}

#disclosures{
	min-height: 600px;
}

/*-- Mobile --*/

@media screen and (min-width: 0px) and (max-width: 990px) {
		#disclosures{min-height: auto;}
		header{.wp-block-site-logo.is-default-size img{width: 7.8rem;transition: all 0.3s ease-in-out;}}
		body.home header{
			.wp-block-site-logo.is-default-size img{width: 11rem;transition: all 0.3s ease-in-out;}
		}


		body.home header.scrolled{
			.wp-block-site-logo.is-default-size img{width: 7.8rem !important;transition: all 0.3s ease-in-out;}
		}
		.page-template-page-no-title{margin-top: 2.5rem !important;}


	#fg--header-desktop{display: none;}
	#fg--header-mobile{display: block;}
	#fg--mobile-nav{
		position: fixed;
		z-index: 1000;
		background: white;
		width: 100%;
		color: black !important; 
	}	

#fg--mobile-nav .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content{color: #000000 !important;}
#fg--mobile-nav ul{width: 100% !important;}
#fg--mobile-nav li.link-to-button, #fg--mobile-nav li.link-to-button > a{width: 100% !important;text-align: center;}

body.home header{
	/*Homepage*/
	.link-to-button > a{border: 1px solid black;}
	
}	
body.home header #fg--header-mobile{border-bottom: none !important;}
body.home header #fg--mobile-nav img.custom-logo{filter: none !important;}
body.home #fg--nav-open img{filter:invert(1);}
#biography{width: auto !important;padding: 0px 0px 3rem 0px !important;}

}	



@media screen and (min-width: 0px) and (max-width: 781px) {
	.wp-container-core-group-is-layout-10 > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: 100%;}
	.wp-container-core-group-is-layout-15 > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: 100%;}

.desktop-only{display: none !important;}
.mobile-only{display: block !important;}

body .is-layout-grid{display: block !important;}

	h1{
	font-size:2.0rem
}

h2{
	font-size:1.75rem
}			

h3{
	font-size:1.5rem
}	

h4{
	font-size:1.25rem
}	
.wp-container-core-group-is-layout-13 > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: 100% !important;}
	
	#fg--homepage-hero{padding-top: 10.5rem; padding-bottom: 6.5rem;padding-left:2rem;padding-right: 2rem;margin-bottom:-1px !important;}
	#fg--homepage-hero .wp-block-spacer{height: 17rem !important;}
	#fg--interior-hero{padding: 5rem 2rem 3.5rem 2rem !important;background-position: bottom !important;background-repeat: repeat-x !important;}
	#fg--interior-hero.fg--has-lattice{background-position: center 450% !important;}
	#fg--interior-hero .wp-block-image img{min-width:100% !important;}
	#fg--interior-hero figure{width: 100% !important;}
	#fg--interior-hero > div{margin-top: -1px !important;}
	.fg--callout h2.has-text-align-center{text-align: left !important;}
	.fg--callout > .wp-block-spacer{height: 4.5rem !important;}
	.fg--interior-content{
		padding: 5rem 0rem !important;
		> div {flex-direction: column-reverse !important;}
	}


	#fg--teammate-individual .fg--link-with-icon--left {margin: 3.5rem auto;}
	.fg--vertical-padding{padding:4rem 0rem 2rem 0rem !important;}
	.fg--interior-content .wp-block-spacer{height: 1.75rem !important;}
	.is-layout-flow > .alignright{float: left !important;margin-inline-start: 0rem !important;}
	.is-layout-flow > .alignleft{margin-inline-end: 0rem !important;}
	.no-reverse > div{flex-direction: column !important;}
	
	footer{flex-direction: column !important;justify-content: center !important;margin-top: 4rem !important;}
	footer > .has-global-padding{padding: 2rem !important;}
	footer figure{text-align: center !important;}
	footer nav ul{flex-direction: column !important;}
	.wp-container-core-group-is-layout-6,.fg--disclosures{flex-wrap: wrap !important;justify-content: center !important;}
	.fg--disclosures{margin-block-start: 2rem !important;}
	.wp-block-group-is-layout-constrained > .wp-block-spacer{height: 2rem !important;}
	/*.wp-container-core-group-is-layout-11,*/.wp-container-core-group-is-layout-9{flex-direction: column !important;}
	.fg--icon-and-headline{flex-wrap: nowrap !important;}
	.wp-container-core-group-is-layout-9 > div{margin-bottom: 3.5rem !important;}
	.wp-container-core-group-is-layout-9 > div:last-child{margin-bottom: 0rem !important;}
	.wp-container-core-group-is-layout-10 > .alignwide{max-width: 100% !important;}
	.wp-container-core-group-is-layout-10.is-nowrap{flex-wrap: wrap;justify-content: center;}
.fg--image-decorated-rounded{margin-left: -1rem !important;margin-bottom: 2rem !important;}

.fg--image-decorated-rounded img{
  display: block;
  width: 12rem;
  height: auto;
  margin: 0 auto;
  padding: 3rem;
}

.fg--image-decorated-rounded::before, .fg--image-decorated-rounded::after{
	content: "";
  	position: absolute;
  	width: 6.6rem;
  	height: 5.6rem; 
  	background-size: contain;
  	background-repeat: no-repeat;
 	z-index: 10; /* Ensure it appears above the content */
}

#fg--teammate-individual{padding: 3rem 0rem;}


.fg--column-left{padding: 0px !important;}
.fg--column-right{border-left: none !important; border-top: 1px solid white;padding: 3rem 0rem !important;}

.has-primary-light-background-color .fg--column-right{border-top: 1px solid black !important;}
.fg--column-right > .wp-container-core-group-is-layout-9{flex-direction: row !important;}
#fg--teammates{display: block !important;padding: 4rem 0;}
.wp-block-contact-form-7-contact-form-selector .wp-block-columns-is-layout-flex{gap: 1rem !important;}
.wp-block-contact-form-7-contact-form-selector .wp-block-columns{margin-bottom: 1rem !important;}
#our-values{flex-drection: column;}
#our-values > *{max-width: 100%;}
.stack{display: flex !important;flex-direction: column !important;}
/*.stack > div {padding: 1rem !important;}*/
.stack > div {padding-bottom: 3.5rem !important;padding-bottom: 1.75rem !important;}
.fg--background-left{
	background-position: top !important;
	background-size: cover;
	background-repeat: repeat-x !important;
}
.fg--spacer{height: 2.5rem !important;}
#our-values{padding-bottom: 3rem;}
#what-makes-us-different{padding:4rem 2rem 4rem 2rem !important;}
}
