/*!
Theme Name: Los Gatos del Calderero
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: los-gatos-del-calderero
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Los Gatos del Calderero is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%;box-sizing:border-box}body{margin:0}details,main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}*,::after,::before{box-sizing:inherit}

:root {
	--text: #000000;
	--text-inverse: #ffffff;
	--text-hover: #af9b83;
	--text-inverse-hover: #ffffff;
	--primary: #d8cfc7;
	--accent: #af9b83;
	--secondary: #f4f1ed;
	--secondary-accent: #b4c5a0;
	--background: #ffffff;

	--container: 1020px;
	--container-small: 530px;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: var(--text);
	font-family: "Lato", sans-serif;
	font-weight: 300;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "Playfair Display", serif;
	clear: both;
}

p {
	margin: 1em 0;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 1em 0;
	padding-left: 25px;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

ul li,
ol li {
	margin: 4px 0;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

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

figure {
	margin: 1em 0;
}

table {
	margin: 0;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	text-decoration: none;
	color: var(--accent);
}

a:visited {
	/*color: #800080;*/
}

a:hover,
a:focus,
a:active {
	text-decoration: underline;
	/*color: #191970;*/
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Header */

.main-navigation ul {
	display: flex;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle {
	display: none;
}

@media screen and (max-width: 960px) {
	.menu-toggle,
	.main-navigation.toggled #primary-menu {
		display: block;
	}
	.main-navigation ul {
		display: none;
	}
	.main-navigation.toggled #primary-menu {
		position: absolute;
		top: 100%;
		right: 0;
		z-index: 10;
		background-color: var(--primary);
		padding: 0 30px;
		box-shadow: 0 0px 8px -8px rgba(0, 0, 0, 0.2);
	}
	.main-navigation.toggled .wpml-ls-menu-item,
	.main-navigation.toggled .menu-item-gtranslate {
		display: inline-block;
	}
	.main-navigation.toggled .menu-item-gtranslate a {
		display: flex;
	    align-items: center;
	}
}

/* Menu toggle */
.menu-toggle {
    width: 40px;
    height: 30px;
    cursor: pointer;
    border: none;
    border-radius: unset;
    background: transparent;
    color: #000;
    line-height: 1;
    padding: 0;
}
.menu-toggle .menubar-1,
.menu-toggle .menubar-2,
.menu-toggle .menubar-3 {
	display: block;
    width: 77%;
    height: 4px;
    background-color: var(--accent);
    margin: 5px auto;
    backface-visibility: hidden;
    transition-duration: .3s;
    border-radius: 2px;
}
.toggled .menu-toggle .menubar-1 {
    transform: rotate(45deg) translate(3px,5px);
}
.toggled .menu-toggle .menubar-2 {
    opacity: 0;
}
.toggled .menu-toggle .menubar-3 {
    transform: rotate(-45deg) translate(8px,-10px);
}



/* Header wrapper */
.site-header {
	position: relative;
	z-index: 10;
	width: 100%;
	height: 65px;
	background-color: var(--primary);
	box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.site-header .flex-container {
	height: 65px;
}

/* Navigation container */
.main-navigation {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 12px 24px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.main-navigation .gt_switcher-popup > * {
	display: none;
}
.main-navigation .gt_switcher-popup::before {
	content: "";
	display: block;
	border-radius: 50%;
	width: 18px;
	height: 18px;
	background-image: url("images/globe.png");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transition: all .3s ease;
}
.main-navigation .gt_switcher-popup:hover::before {
	box-shadow: 0px 0px 0px 2px var(--accent);
}

.site-branding {
    position: relative;
    min-width: 140px;
    width: 140px;
    height: 150px;
    background-color: var(--accent);
    box-shadow: 0px 0px 12px 4px rgba(0, 0, 0, 0.4);
    z-index: 10;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.site-branding a {
	display: flex;
	align-items: center;
	width: 140px;
	height: 150px;
}
.site-branding img {
	width: 100%;
	height: auto;
	max-height: 100%;
}

/* Menu list */
.nav-menu {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0;
	padding: 0;
}

/* Menu links */
.nav-menu li > a {
	position: relative;
	text-decoration: none;
	font-size: 16px;
	text-transform: capitalize;
	color: var(--text-inverse);
	padding: 8px 6px;
	transition: color 0.2s ease;
}
.nav-menu li.menu-item-object-page > a::after {
	content: attr(data-text);
	display: block;
    font-weight: bold;
    height: 0;
    overflow: hidden;
    visibility: hidden;
}
.nav-menu li.current-menu-ancestor > a,
.nav-menu li.current-menu-item > a,
.nav-menu li:hover > a {
	color: var(--text-hover);
	font-weight: bold;
}
.nav-menu li.menu-item-object-page.current-menu-ancestor > a::before,
.nav-menu li.menu-item-object-page.current-menu-item > a::before,
.nav-menu li.menu-item-object-page:hover > a::before {
	content: "";
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: var(--text-hover);
}

.nav-menu .sub-menu {
	display: flex;
	flex-direction: column;
	background-color: var(--primary);
	box-shadow: 0px 4px 4px 1px rgba(0, 0, 0, 0.1);
    min-width: 100px;
    padding: 0;
}
.nav-menu .sub-menu a {
	padding: 4px 8px;
}

.wpml-ls-menu-item .wpml-ls-flag {
	flex-shrink: 0;
	flex-basis: 24px;
}



.container {
	position: relative;
	width: 100%;
	max-width: var(--container);
	margin: 0 auto;
    padding: 0 30px;
}
.flex-container {
	display: flex;
	position: relative;
	width: 100%;
	max-width: var(--container);
	margin: 0 auto;
    padding: 0 30px;
}


.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/* Full Calendar Styling */
section.calendar {
	background-color: var(--background);
	padding: 30px 0;
}
#calendar {
	width: 420px;
}

.fc {
	--fc-border-color: #e5e7eb;
	--fc-today-bg-color: var(--accent);
	--fc-event-bg-color: var(--accent);
	--fc-event-border-color: var(--accent);
	--fc-button-bg-color: var(--primary);
	--fc-button-border-color: var(--primary);
	/*font-family: Inter, system-ui, sans-serif;*/
}

.fc .fc-toolbar-title {
	text-transform: capitalize;
}

.fc .fc-bg-event {
	background-color: var(--accent);
	opacity: 0.5;
}

.fc .fc-button {
	border-radius: 8px;
	background: var(--accent);
	border: none;
}

.fc .fc-button:hover {
	background: var(--accent);
}

.fc .fc-daygrid-day:hover {
	background: rgba(99, 102, 241, 0.1);
	transition: background 0.15s ease;
}

.fc .fc-daygrid-body-natural .fc-daygrid-day-events {
	margin: 0;
}

.fc .fc-toolbar.fc-header-toolbar {
	margin-bottom: 10px;
}


/* Main */
#primary {
    min-height: 100px;
}


/* Hero section */
.hero-section {
	position: relative;
	width: 100%;
	height: 65vh;
	/* adjust height if needed */
	background-color: var(--primary);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: left;
	box-shadow: inset 0px -4px 8px -4px rgba(0, 0, 0, 0.2);
	border-bottom: 8px solid var(--background);
}
.home .hero-section {
	height: 65vh;
}

/* Text + button container */
.hero-content {
	position: relative;
	color: var(--text-inverse);
	z-index: 1;
	width: 100%;
	max-width: var(--container);
	padding: 0 30px;
}

.hero-title {
    color: var(--text-inverse);
    font-size: 3.5rem;
    margin-bottom: 0.2em;
    line-height: 1;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
}

.hero-subtitle {
    color: var(--text-inverse);
    font-size: 1.5rem;
    max-width: var(--container-small);
    margin: 0.2em 0 0.8em 0;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
}

.inverted .hero-title,
.inverted .hero-subtitle {
	color: var(--text);
}

/* Button styling */
.btn {
    display: inline-block;
    padding: 4px 30px;
    background-color: var(--secondary-accent);
    color: var(--text-inverse);
    text-decoration: none;
    font-size: 24px;
    transition: all 0.2s ease, transform 0.15s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.btn:hover {
	color: var(--text-inverse-hover);
	transform: translateY(-2px);
	text-decoration: none;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
}

.hero-button {
    display: inline-block;
    padding: 4px 30px;
    background-color: var(--secondary-accent);
    color: var(--text-inverse);
    text-decoration: none;
    font-size: 24px;
    transition: all 0.2s ease, transform 0.15s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.hero-button:hover {
	color: var(--text-inverse-hover);
	transform: translateY(-2px);
	text-decoration: none;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
}

/* Fixed contact button */
.fixed-contact {
	display: block;
	position: fixed;
	z-index: 999;
	bottom: 60px;
	right: -10px;
	box-shadow: 0px 3px 8px 3px rgba(0, 0, 0, 0.4);
	padding: 4px 33px 4px 28px;
	transition: all 0.2s ease;
}
.fixed-contact:hover {
	transform: none;
	right: 0;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
	text-decoration: none;
}

/* Responsive: smaller screens */
@media (max-width: 768px) {
	.hero-title {
		font-size: 2rem;
	}

	.hero-subtitle {
		font-size: 1.1rem;
	}
}


/* Text with Slider section */
.text-with-slider {
	padding: 30px 0;
    background-color: var(--primary);
    overflow: hidden;
    box-shadow: inset 0px 11px 8px -10px #d3d3d3, inset 0px -11px 8px -10px #d3d3d3;
}
h1,
h2,
h3 {
	color: var(--accent);
}

.text-with-slider .two-column .col:nth-child(2) {
	display: flex;
	flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* small Slider */
.small-slider {
	width: 100%;
	height: 400px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.small-slider .slider-item img {
	width: 100%;
	height: 400px;
	object-fit: cover;
	object-position: center;
}
.small-slider .slick-prev,
.small-slider .slick-next {
	z-index: 10;
}
.small-slider .slick-prev {
	left: 10px;
}
.small-slider .slick-next {
	right: 10px;
}

/* Icon showcase styling */
.icon-showcase {
	background-color: var(--secondary);
	padding: 20px 0 30px 0;
}
.icon-showcase .container {
	padding: 0;
}
.icon-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-end;
    align-content: center;
    row-gap: 10px;
}

.icon-flex.flex-1 .icon-item {
	flex-basis: 100%;
}
.icon-flex.flex-2 .icon-item {
	flex-basis: calc(100% / 2);
}
.icon-flex.flex-3 .icon-item {
	flex-basis: calc(100% / 3);
}
.icon-flex.flex-4 .icon-item {
	flex-basis: calc(100% / 4);
}
.icon-flex.flex-5 .icon-item {
	flex-basis: calc(100% / 5);
}
.icon-flex.flex-6 .icon-item {
	flex-basis: calc(100% / 6);
}

.icon-item {
    display: flex;
    gap: 10px;
    flex-wrap: nowrap;
    align-items: flex-end;
    padding: 2px 30px;
    justify-content: flex-start;
    text-align: left;
    min-width: 200px;
}
.icon-item img {
	flex: 1 0 60px;
	width: 60px;
	max-width: 60px;
	height: 60px;
	object-fit: contain;
	object-position: center;
}
.icon-item p {
	font-size: 20px;
	margin: 0 0 6px 0;
}

/* Suites section */
.suites {
	padding: 30px 0;
	background-color: var(--background);
	overflow: hidden;
	text-align: center;
}
.suites .title {
	margin-top: 0;
}

.suites-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 40px;
	margin-top: 30px;
}
.suites-wrapper .suite-item {
	flex: 1 1;
	flex-basis: calc((100% - 40px) / 2);
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 250px;
}
.suites-wrapper .suite-item img {
	width: 100%;
	max-height: 260px;
	object-fit: cover;
	object-position: center;
	transition: all .3s ease;
}
.suites-wrapper .suite-item a {
	display: block;
	overflow: hidden;
	font-size: 0;
}
.suites-wrapper .suite-item a:hover img {
	scale: 1.2;
}
.suites-wrapper .suite-item .title {
	margin-top: 8px;
}
.suites-wrapper .suite-item .btn {
	margin-top: 8px;
	font-size: 18px;
	padding: 4px 16px;
	font-weight: bolder;
}
.suites-wrapper .suite-item .btn:hover {
	text-shadow: 1px 1px 4px rgba(0,0,0,0.8);
}

/* Recommendations section */
.recommendations {
	padding: 40px 0 50px 0;
	background-color: var(--secondary);
	overflow: hidden;
	text-align: center;
}
.recommendations .title {
	margin-top: 0;
}

.recommendations-wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 30px;
}
.recommendations-wrapper .recommendation-item {
	flex: 1 1;
	flex-basis: calc((100% - 40px) / 3);
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 200px;
}
.recommendations-wrapper .recommendation-item img {
	width: 300px;
	height: 170px;
	object-fit: cover;
	object-position: center;
	margin-bottom: 8px;
}

/* Content section */
.content-section {
	padding: 30px 0;
	background-color: var(--secondary);
}


/* Two column content section */
.two-column-content {
	padding: 30px 0;
	background-color: var(--primary);
}

.two-column {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}
.two-column .col {
	flex: 1 1;
	width: calc((100% - 30px) / 2);
	flex-basis: calc((100% - 30px) / 2);
	min-width: 250px;
}


/* Footer styling */
.site-footer {
	padding-top: 20px;
	background-color: var(--primary);
	box-shadow: inset 0px 4px 8px -4px rgba(0, 0, 0, 0.2);
    border-top: 8px solid var(--background);
}

.footer-widgets {
	display: flex;
	column-gap: 20px;
	flex-wrap: wrap;
	justify-content: center;
}
.footer-widgets h2 {
	margin: 10px 0;
}
.footer-widgets .col {
	flex-basis: calc((100% - 40px) / 3);
	padding-top: 40px;
	min-width: 250px;
}
.footer-widgets .col.footer-1 {
	padding-top: 0px;
}
.footer-widgets .col.footer-3 ul {
	padding-left: 35px;
}
.footer-widgets .col.footer-3 ul li:nth-child(1),
.footer-widgets .col.footer-3 ul li:nth-child(2),
.footer-widgets .col.footer-3 ul li:nth-child(3) {
	position: relative;
	list-style: none;
}
.footer-widgets .col.footer-3 ul li:nth-child(1)::before,
.footer-widgets .col.footer-3 ul li:nth-child(2)::before,
.footer-widgets .col.footer-3 ul li:nth-child(3)::before {
    --_fa-family: var(--fa-family,var(--fa-style-family,"Font Awesome 7 Free"));
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: var(--fa-display,inline-block);
    font-family: var(--_fa-family);
    font-feature-settings: normal;
    font-style: normal;
    font-synthesis: none;
    font-variant: normal;
    font-weight: var(--fa-style,900);
    line-height: 1;
    text-align: center;
    text-rendering: auto;
    width: var(--fa-width,1.25em);
    position: absolute;
    left: -35px;
    top: 5px;
    font-size: 20px;
    color: var(--accent);
}
.footer-widgets .col.footer-3 ul li:nth-child(2n+1)::before {
	content: "\f0e0";
}
.footer-widgets .col.footer-3 ul li:nth-child(2n+2)::before {
	content: "\f095";
}
/*.footer-widgets .col.footer-3 ul li:nth-child(3n)::before {
	content: "\f3c5";
}*/
.footer-widgets a img {
	transition: all .3s ease;
}
.footer-widgets a:hover img {
	transform: translateY(-6px);
}

.site-info {
	overflow: hidden;
	text-align: center;
}


/* ICS Calendar styling */
.calendar-section {
	padding: 30px 0;
}
#primary .calendar-section .ics-calendar {
	--r34ics--element--month--th--background: var(--accent);
	--r34ics--element--month--th-td--border-color: var(--accent);
	--r34ics--element--events--accent--background: var(--accent);
	--r34ics--element--month--today-day--background: var(--accent);
	--r34ics--element--month--day--background: var(--secondary);
	--r34ics--element--month--off--background: var(--secondary);
	--r34ics--element--month--th--color: var(--text-inverse);
}
