/*!
Theme Name: houseofnine
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: houseofnine
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.

houseofnine 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

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

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

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

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

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: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

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 0 1.5em;
  width: 100%;
}

/* Links
--------------------------------------------- */
a {
  color: #4169e1;
}

a:visited {
  color: #800080;
}

a:hover,
a:focus,
a:active {
  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
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
  display: block;
  width: 100%;
}

.main-navigation ul {
  display: none;
  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 ul a {
  width: 200px;
}

.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,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }

  .main-navigation ul {
    display: flex;
  }
}

.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 0 1.5em;
}

.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 0 1.5em;
}

.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;
}

/* BEGIN OVERRIDES UNDERSCORE */
.post,
.page {
  margin-bottom: 0;
}

/* END OVERRIDES UNDERSCORE */

/* BEGIN HOUSEOFNINE TYPOGRAPHY */

body {
  --bs-body-font-family: "Kodchasan", sans-serif;
  --bs-body-color: #1c1b1f;
  --bs-body-bg: #f5f5f5;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Bodoni Moda", sans-serif;
}

.page h1,
.page-template h1,
.single h1,
.archive h1,
.blog h1,
.search h1,
.page .h1,
.page-template .h1,
.single .h1,
.archive .h1,
.blog .h1,
.search .h1 {
  font-weight: 500;
  font-size: 3rem;
  color: #1a2833;
}

.page h2,
.page-template h2,
.single h2,
.archive h2,
.blog h2,
.search h2,
.page h3,
.page-template h3,
.single h3,
.archive h3,
.blog h3,
.search h3,
.page h4,
.page-template h4,
.single h4,
.archive h4,
.blog h4,
.search h4,
.page h5,
.page-template h5,
.single h5,
.archive h5,
.blog h5,
.search h5,
.page h6,
.page-template h6,
.single h6,
.archive h6,
.blog h6,
.search h6 {
  color: #1a2833;
  font-weight: 600;
}

.page h2,
.page-template h2,
.single h2,
.archive h2,
.blog h2,
.search h2,
.page .h2,
.page-template .h2,
.single .h2,
.archive .h2,
.blog .h2,
.search .h2 {
  font-size: 2.125rem;
  font-weight: 400;
}

.page h3,
.page-template h3,
.single h3,
.archive h3,
.blog h3,
.search h3 {
  font-size: 1.5rem;
  font-weight: 700;
}

.page h4,
.page-template h4,
.single h4,
.archive h4,
.search h4 {
  font-size: 1.563rem;
}

.page a,
.page-template a,
.single a,
.archive a,
.search a,
.blog a {
  text-decoration: none;
  color: #1a2833;
}

p {
  font-weight: 400;
  color: #1c1b1f;
}

/* END HOUSEOFNINE TYPOGRAPHY */

/* BEGIN GLOBAL CLASSES */

.swiper {
  width: 100%;
  height: 100%;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="password"],
.wpcf7 input[type="search"],
.wpcf7 input[type="number"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="range"],
.wpcf7 input[type="date"],
.wpcf7 input[type="month"],
.wpcf7 input[type="week"],
.wpcf7 input[type="time"],
.wpcf7 input[type="datetime"],
.wpcf7 input[type="datetime-local"],
.wpcf7 input[type="color"],
.wpcf7 textarea,
.wpcf7 .form-select {
  font-family: "Kodchasan", sans-serif;
  font-size: 16px;
  border: 1px solid #f7f7f7;
  border-radius: 0;
  padding: 10px 20px;
  height: 57px;
  background-color: #f7f7f7;
}

.wpcf7 button.wpcf7-submit {
  background-color: #1a2833;
  color: #fff;
  border-radius: 0;
  padding: 5px 25px;
  font-size: 18px;
  font-weight: normal;
  line-height: 2.125em;
  min-width: 150px;
}

.wpcf7 button.wpcf7-submit:hover {
  background-color: #fff;
  border: 1px solid #43a2e2;
  color: #43a2e2;
}

.wpcf7-spinner {
  position: absolute;
  right: 18%;
  top: 13%;
  background-color: #1a6d82;
}

.wpcf7-list-item-label {
  font-size: 14px;
  color: #394755;
}

::-webkit-input-placeholder {
  /* Chrome and Safari */
  color: #888888 !important;
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #888888;
  opacity: 1;
}

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #888888;
  opacity: 1;
}

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #888888;
}

::-ms-input-placeholder {
  /* Microsoft Edge */
  color: #888888;
}

::placeholder {
  color: #888888;
}

.wpcf7-acceptance .wpcf7-list-item {
  margin-left: 0;
}

/* END GLOBAL CLASSES */

/* BEGIN UTILITIES */

.read_more {
  padding-bottom: 48px;
}

.btn_default {
  display: inline-block;
  background-color: #1a2833;
  padding: 10px 16px;
  color: #fff;
  border-radius: 50px;
}

.btn_default.btn_disabled {
  background-color: #5e5e5e;
}

a.btn_default {
  color: #fff;
}

.btn_default.btn_outline {
  background-color: transparent;
  border: 2px solid var(--Gold, #c6a061);
  border-radius: 50px;
  box-shadow: none;
}

.btn_i {
  border: 0;
  background: none;
  padding: 0;
}

.sec_padding {
  padding: 120px 0;
}

.bg-grey {
  background-color: #e7e6e4;
}

/* END UTILITIES */

/* BEGIN HEADER */

#top-menu {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 12;
  height: 132px;
  border-bottom: 1px solid #e7e6e4;
}

@media only screen and (max-width: 1919px) {
  #top-menu {
    height: 100px;
  }
}

@media screen and (max-width: 991px) {
  .main-navigation ul {
    display: flex;
  }
}

#top-menu.sticky-top-menu {
  position: fixed;
  background-color: #fff;
  margin-top: 0;
  box-shadow: 0 0 15px 2px rgba(0, 49, 100, 0.15);
  animation: fadeIn 0.85s;
}

.logged-in #top-menu.sticky-top-menu {
  margin-top: 32px;
}

#top-menu .nav-item .nav-link {
  font-size: 18px;
}

@media only screen and (min-width: 992px) {
  #top-menu .nav-item .nav-link {
    color: #fff;
  }
}

#top-menu.sticky-top-menu .nav-link {
  color: #1a2833;
}

#top-menu .btn_mobile_menu i {
  font-size: 32px;
  color: #fff;
}

#top-menu.sticky-top-menu .btn_mobile_menu i {
  font-size: 32px;
  color: #1a2833;
}

@media only screen and (max-width: 767px) {
  #top-menu .header_logo {
    width: 180px;
  }
}

.menu_mobile_logo img {
  width: 126px;
}

@media only screen and (min-width: 992px) {
  #top-menu .lang_top a {
    padding-right: 0;
    padding-left: 8px;
  }
}

#header-page .header_page_img {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100vw;
  height: 50vh;
}

@media only screen and (max-width: 767px) {
  #header-page .header_page_img {
    height: 66vh;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1919px) {
  #header-page .header_page_img {
    height: 536px;
  }
}

.overlay_header {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: rgba(109, 121, 100, 0.4);
}

.headerHomeSlider .carousel-item .carousel-caption,
#header-page .carousel-caption,
.headerHomeSlider .carousel-item .overlay_header {
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  animation: fadeIn 2s both 0s;
  z-index: 2;
}

@media only screen and (max-width: 575px) {

  .headerHomeSlider .carousel-item .carousel-caption,
  #header-page .carousel-caption {
    padding-top: 124px;
    padding-bottom: 24px;
    margin-left: 8px;
    margin-right: 8px;
  }
}

.header_page_title h1,
.header_page_title h2 {
  font-family: "Bodoni Moda", sans-serif;
  font-size: 50px;
  font-weight: 500;
  color: #fff;
  padding-bottom: 48px;
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {

  .header_page_title h1,
  .header_page_title h2 {
    font-size: 36px;
    padding-bottom: 24px;
    margin-bottom: 0;
  }
}

@media only screen and (min-width: 1920px) {

  .header_page_title h1,
  .header_page_title h2 {
    font-size: 64px;
  }
}

.header_page_subtitle h3 {
  font-family: "Kodchasan", sans-serif;
  font-weight: 100;
  color: #fff;
  margin-bottom: 0;
}

.header_book_text {
  font-weight: 600;
}

.sticky-top-menu .header_book_text {
  color: #1a2833;
}

/* END HEADER */

/* BEGIN PAGE HOME */

.headerHomeSlider .header_home_slider_img {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100vw;
  height: 50vh;
}

@media only screen and (max-width: 767px) {
  .headerHomeSlider .header_home_slider_img {
    height: 66vh;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1919px) {
  .headerHomeSlider .header_home_slider_img {
    height: 536px;
  }
}

.formWrapper {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -32px;
  z-index: 3;
  background-color: #fff;
  padding: 10px 16px;
  border-radius: 50px;
  box-shadow: 0px 4px 15px 0px rgba(0, 0, 0, 0.1);
  height: 64px;
}

@media only screen and (max-width: 1199px) {
  .formWrapper {
    position: relative;
    bottom: 0;
    border-radius: 0;
    height: auto;
    padding: 24px 0;
  }

  #headerHomeForm .row.formWrapper {
    margin: 0;
    margin-top: 24px;
    border-radius: 10px;
  }
}

.formWrapper input[type="text"],
.formWrapper input[type="email"],
.formWrapper input[type="url"],
.formWrapper input[type="password"],
.formWrapper input[type="search"],
.formWrapper input[type="number"],
.formWrapper input[type="tel"],
.formWrapper input[type="range"],
.formWrapper input[type="date"],
.formWrapper input[type="month"],
.formWrapper input[type="week"],
.formWrapper input[type="time"],
.formWrapper input[type="datetime"],
.formWrapper input[type="datetime-local"],
.formWrapper input[type="color"],
.formWrapper textarea,
.formWrapper .form-select {
  font-size: 18px;
  font-weight: 400;
  color: #4e5253;
  border: none;
  padding-left: 38px;
}

.formWrapper .form-select {
  background-image: url("img/keyboard_arrow_down.svg");
  background-size: auto;
  background-position: right 1.2rem center;
  background-repeat: no-repeat;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.formWrapper label {
  position: relative;
  font-size: 18px;
  font-weight: 400;
  color: #4e5253;
}

.formWrapper label>span {
  position: absolute;
  top: 0;
  left: 8px;
  bottom: 0;
  right: 0;
  width: 24px;
  cursor: auto;
  display: flex;
  align-items: center;
}

@media only screen and (max-width: 1199px) {
  .formWrapper label[for="ospiti"]>span {
    left: 11px;
  }
}

.formWrapper .ospiti,
.formWrapper .buyout {
  display: flex;
  align-items: center;
  padding-left: 38px;
}

.formWrapper .buyout .form-check-input {
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: 2px solid #1c1b1f;
  border-radius: 5px;
  position: relative;
  cursor: pointer;
  appearance: none;
  /* Nasconde completamente lo stile di default del checkbox */
  -webkit-appearance: none;
  /* Per compatibilità con Safari */
  -moz-appearance: none;
  /* Per compatibilità con Firefox */
  transition: background-color 0.3s, border-color 0.3s;
}

.formWrapper .buyout .form-check-input:checked {
  background-color: #fff;
  border-color: #1c1b1f;
}

.formWrapper .buyout .form-check-input:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 12px;
  border-right: 2px solid #1c1b1f;
  border-bottom: 2px solid #1c1b1f;
  transform: translate(-50%, -60%) rotate(45deg);
}

.formWrapper .buyout .form-check-input:focus {
  box-shadow: none;
  /* Ombra blu chiara */
}

.formWrapper .ospiti .ospiti_label {
  padding-right: 8px;
}

.formWrapper .ospiti input[type="button"] {
  -webkit-appearance: button;
  cursor: pointer;
}

.formWrapper .ospiti input::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

.formWrapper .ospiti input[type="button"] {
  background-color: #e7e6e4;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  border-radius: 5px;
}

.formWrapper .ospiti input[type="button"].button-minus {
  background-image: url("img/icon_button_minus.svg");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

.formWrapper .ospiti input[type="button"].button-plus {
  background-image: url("img/icon_button_plus.svg");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}

.formWrapper .ospiti .button-minus,
.formWrapper .ospiti .button-plus {
  position: relative;
  width: 24px;
  height: 24px;
  font-size: 22px;
  font-weight: 400;
  padding: 0;
}

.formWrapper .ospiti input[type="number"] {
  width: 20%;
  color: #1c1b1f;
  font-size: 22px;
  font-weight: 400;
  text-align: center;
  border: none;
  padding: 0;
  -moz-appearance: textfield;
  -webkit-appearance: none;
}

.formWrapper input[type="number"]::-webkit-inner-spin-button,
.formWrapper input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.formWrapper .month-picker input {
  width: 200px;
  padding: 8px;
  font-size: 16px;
  border: none;
  border-bottom: 1px solid #ddd;
  color: #495057;
}

.formWrapper .flatpickr-calendar {
  border-radius: 10px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
}

.formWrapper .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
  font-size: 16px;
  color: #495057;
}

.formWrapper .flatpickr-monthDropdown-month.selected,
.formWrapper .flatpickr-monthDropdown-month:hover {
  background-color: #b58948;
  /* Colore per l'elemento selezionato */
  color: #fff;
}

#page-home #intro .intro_content .intro_text,
#page-home #intro .intro_content .intro_text p {
  font-size: 14px;
  font-weight: 400;
  color: #9f9f9f;
  margin-bottom: 0;
}

#page-home #intro .intro_block .intro_block_icon {
  margin-bottom: 24px;
}

#page-home #intro .intro_block .intro_block_icon img {
  width: 100px;
}

#packets.sec_padding {
  padding: 48px 0;
}

@media only screen and (min-width: 992px) {
  .packetsCarousel .swiper-wrapper {
    padding-top: 85px;
  }
}

.packetsCarousel .swiper-slide {
  text-align: center;
  font-size: 18px;
}

.packetsCarousel .swiper-slide img {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  aspect-ratio: 1.3;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

@media only screen and (min-width: 992px) {
  .packetsCarousel .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  /* Stile base per tutte le slide */
  .packetsCarousel .swiper-slide img {
    aspect-ratio: 0.687;
    border-radius: 0 0 250px 250px;
    opacity: 0.5;
    /* Le slide non attive sono semi-trasparenti */
    transform: scale(0.9);
    /* Le slide non attive sono leggermente più piccole */
    transition: all 0.6s ease-in-out;
    /* Transizione fluida */
  }

  /* Slide attiva (centrale) */
  .packetsCarousel .swiper-slide-active .packet_item {
    margin-top: -250px;
  }

  /* Stile per la slide centrale */
  .packetsCarousel .swiper-slide.fade-active img {
    opacity: 1;
    /* Slide centrale completamente visibile */
    transform: scale(1);
    /* Slide centrale alla dimensione originale */
    border-radius: 250px 250px 0px 0px;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
    /* Ombra più evidente */
  }

  .packetsCarousel .swiper-slide-active img {
    border-radius: 250px 250px 0 0;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.05);
  }

  /* Slide laterali */
  .packetsCarousel .swiper-slide-next img,
  .packetsCarousel .swiper-slide-prev img {
    border-radius: 0 0 250px 250px;
  }
}

#packets .swiper-button-next::after,
#packets .swiper-button-prev::after {
  display: none;
}

#packets .swiper-button-next,
#packets .swiper-button-prev {
  font-size: 36px;
  color: #1a2833;
}

#packets .swiper-button-prev,
#packets .swiper-rtl .swiper-button-next {
  left: 24px;
  right: auto;
}

#packets .swiper-button-next,
#packets .swiper-rtl .swiper-button-prev {
  left: auto;
  right: 24px;
}

@media only screen and (min-width: 1400px) {

  #packets .swiper-button-prev,
  #packets .swiper-rtl .swiper-button-next {
    left: -50px;
    right: auto;
  }

  #packets .swiper-button-next,
  #packets .swiper-rtl .swiper-button-prev {
    left: auto;
    right: -50px;
  }
}

#packets .after_packets_link .btn_default {
  min-width: 296px;
}

#api-results-not-found {
  font-size: 24px;
  font-weight: 700;
}

/* END PAGE HOME */

/* BEGIN PACKETS ARCHIVE */

#archive-packets-grid .packet:not(:nth-last-of-type(2)) {
  margin-bottom: 64px;
}

@media only screen and (min-width: 1200px) {

  #archive-packets-grid .packet .packet_row .carousel,
  #archive-packets-grid .packet .packet_row .carousel .carouselPacketsImages,
  #archive-packets-grid .packet .packet_row .carousel .carouselPacketsImages .carousel-item,
  #archive-packets-grid .packet .packet_row .carousel .carouselPacketsImages .carousel-item .packet_img {
    height: 100%;
  }
}

@media only screen and (max-width: 1199px) {

  #archive-packets-grid .packet .packet_row,
  #archive-packets-grid .packet .packet_row_grey {
    margin: 0;
  }
}

@media only screen and (max-width: 1199px) {
  #archive-packets-grid .packet .packet_img {
    border-radius: 10px 0 0 0;
  }
}

#archive-packets-grid .packet .packet_img img {
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
  aspect-ratio: 1.575;
}

@media only screen and (max-width: 1199px) {
  #archive-packets-grid .packet .packet_img img {
    border-radius: 10px 10px 0 0;
  }
}

@media only screen and (min-width: 1200px) {
  #archive-packets-grid .packet .packet_img img {
    height: 100%;
    border-radius: 10px 0 0 0;
  }

  #archive-packets-grid .packet .packet_row div.bg-white {
    padding: 16px 32px 16px 32px;
    border-radius: 0 10px 0 0;
  }
}

.packet_row .carousel-control-next,
.packet_row .carousel-control-prev {
  font-size: 34px;
  color: #fff;
}

#archive-packets-grid .packet .packet_row_grey {
  border-radius: 0 0 10px 10px;
}

@media only screen and (min-width: 1200px) {
  #archive-packets-grid .packet .packet_row_grey .packet_subrow_box {
    padding-left: 20px;
  }

  #archive-packets-grid .packet .packet_row_grey .price_block {
    padding: 16px 32px 16px 32px;
  }
}

#archive-packets-grid .packet .book_packet_buyout {
  width: 100%;
}

#archive-packets-grid .packet .packet_buyout_text_not_available {
  font-size: 14px;
  font-weight: 700;
  color: #c10015;
}

@media only screen and (max-width: 767px) {
  #archive-packets-grid .packet .packet_subrow_box_top p:last-child::after {
    border-bottom: 1px dotted #4e5253;
    padding-bottom: 22px;
    content: "";
    display: block;
    width: 20%;
    margin: 0 auto;
  }
}

#archive-packets-grid .packet .book_packet_form .cabina .cabina_label {
  display: inline-block;
  width: 140px;
  padding-right: 8px;
}

@media only screen and (max-width: 575px) {
  #archive-packets-grid .packet .book_packet_form .cabina .cabina_label {
    width: 70px;
    font-size: 12px;
  }
}

@media only screen and (min-width: 576px) and (max-width: 1399px) {
  #archive-packets-grid .packet .book_packet_form .cabina .cabina_label {
    width: 120px;
    font-size: 14px;
  }
}

#archive-packets-grid .packet .book_packet_form .cabina .cabina_text_not_available {
  font-size: 16px;
  font-weight: 600;
  color: #c10015;
}

#archive-packets-grid .packet .book_packet_form .cabina input[type="button"] {
  -webkit-appearance: button;
  cursor: pointer;
}

#archive-packets-grid .packet .book_packet_form .cabina input::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

#archive-packets-grid .packet .book_packet_form .cabina input[type="button"] {
  background-color: #e7e6e4;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  border-radius: 5px;
}

#archive-packets-grid .packet .book_packet_form .cabina .button-minus,
#archive-packets-grid .packet .book_packet_form .cabina .button-plus {
  position: relative;
  width: 24px;
  height: 24px;
  font-size: 22px;
  font-weight: 400;
  padding: 0;
}

#archive-packets-grid .packet .book_packet_form .cabina input[type="number"] {
  width: 10%;
  color: #1c1b1f;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  border: none;
  padding: 0;
  -moz-appearance: textfield;
  -webkit-appearance: none;
}

@media only screen and (max-width: 575px) {
  #archive-packets-grid .packet .book_packet_form .cabina input[type="number"] {
    width: 12%;
  }
}

@media only screen and (min-width: 576px) and (max-width: 1399px) {
  #archive-packets-grid .packet .book_packet_form .cabina input[type="number"] {
    width: 5%;
  }
}

@media only screen and (min-width: 1920px) {
  #archive-packets-grid .packet .book_packet_form .cabina input[type="number"] {
    font-size: 18px;
  }
}

#archive-packets-grid .packet .book_packet_form .cabine_prezzi {
  font-size: 14px;
}

@media only screen and (max-width: 1199px) {
  #archive-packets-grid .packet .book_packet_form .cabine_prezzi {
    padding-bottom: 8px;
    overflow-x: scroll;
  }
}

#archive-packets-grid .packet .book_packet_form .cabine_prezzi_block {
  padding-top: 24px;
  border-top: 1px dotted #1c1b1f;
}

@media only screen and (max-width: 1199px) {
  #archive-packets-grid .packet .book_packet_form .cabine_prezzi_block {
    padding-bottom: 24px;
  }
}

#archive-packets-grid .packet .book_packet_form .cabine_prezzi .cabina_prezzo {
  padding: 1px 10px;
  background-color: #1a2833;
  color: #fff;
  border-radius: 3px;
}

#archive-packets-grid .packet .book_packet_form .cabine_prezzi .cabina_prezzo:not(:last-child) {
  margin-right: 10px;
}

#archive-packets-grid .packet .book_packet_form .cabine_prezzi .cabina_nome {
  padding-right: 6px;
  padding-left: 6px;
}

#archive-packets-grid .packet .book_packet_form .cabine_prezzi .cabina_nome:first-child {
  padding-left: 0;
}

#archive-packets-grid .packet .book_packet_form input[type="number"]::-webkit-inner-spin-button,
#archive-packets-grid .packet .book_packet_form input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.packet_book_text {
  font-weight: 600;
  color: #1a2833;
}

#archive-packets-grid .packet .packet_content .packet_desc,
#archive-packets-grid .packet .packet_content .packet_desc p {
  color: #4e5253;
}

#archive-packets-grid .packet .packet_book_price {
  color: #1c1b1f;
  font-family: "Bodoni Moda";
  font-size: 24px;
  font-weight: 700;
}

#archive-packets-grid .packet .packet_book_price.discount {
  color: #c10015;
  text-decoration-line: line-through;
}

#archive-packets-grid .packet .packet_price_calc {
  font-weight: 500;
  color: #1c1b1f;
  text-align: end;
  line-height: 24px;
}

#archive-packets-grid .packet .packet_price_calc .packet_price_calc_txt {
  font-family: "Bodoni Moda";
  font-size: 24px;
}

#archive-packets-grid .packet .packet_price_calc .packet_price_calc_label {
  font-size: 18px;
}

/* END PACKETS ARCHIVE */

.page-template-page-checkout-php #header-page .header_page_img {
  height: 40vh;
}

@media only screen and (max-width: 767px) {
  .page-template-page-checkout-php #header-page .header_page_img {
    height: 46vh;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1919px) {
  #header-page .header_page_img {
    height: 256px;
  }
}

/* BEGIN PAGE CHECKOUT */

.page-template-page-checkout-php .form-group {
  position: relative;
  margin-bottom: 24px;
}

.page-template-page-checkout-php .form-group.labelTopLeft label {
  position: absolute;
  top: 0;
  left: 15px;
  transform: translateY(-50%);
  background-color: #f5f5f5;
  padding: 0 5px;
  color: #333;
  z-index: 1;
}

.page-template-page-checkout-php input[type="text"],
.page-template-page-checkout-php input[type="email"],
.page-template-page-checkout-php textarea,
.page-template-page-checkout-php .form-select {
  background-color: #f5f5f5;
  padding: 10px 16px;
  border: 1px solid #ccc;
  border-radius: 50rem;
  font-size: 16px;
}

.page-template-page-checkout-php button[type="submit"] {
  border-radius: 50rem;
}

.page-template-page-checkout-php .phone_group .input-group-text {
  background-color: #f5f5f5;
  border-radius: 50rem 0 0 50rem;
  border: 1px solid #ccc;
  border-right: 0;
}

.page-template-page-checkout-php input#phone {
  border-left: 0;
}

.page-template-page-checkout-php .field-switch-custom p {
  margin-bottom: 0;
}

/* Stile generale del contenitore */
.page-template-page-checkout-php .field-switch-custom {
  display: flex;
  align-items: center;
  gap: 10px;
  /* Spazio tra il toggle e il testo */
}

.page-template-page-checkout-php .field-switch-custom input[type="checkbox"]:invalid+label {
  box-shadow: 0 0 0 4px rgba(255, 0, 0, 0.8);
  margin-left: 4px;
}

/* Nasconde la checkbox originale */
.page-template-page-checkout-php .field-switch-custom input[type="checkbox"] {
  position: absolute;
  /* Rimuove la checkbox dalla vista */
  opacity: 0;
  /* Nasconde visivamente */
  width: 0;
  height: 0;
}

/* Stile dello switch */
.page-template-page-checkout-php .field-switch-custom label {
  position: relative;
  width: 52px;
  /* Larghezza del toggle */
  height: 32px;
  /* Altezza del toggle */
  background-color: #e6e0e9;
  /* Colore di sfondo del toggle */
  border-radius: 24px;
  /* Arrotonda i bordi */
  cursor: pointer;
  transition: background-color 0.3s;
}

/* Stile del cerchio all'interno dello switch */
.page-template-page-checkout-php .field-switch-custom label::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: 16px;
  height: 16px;
  background-color: #79747e;
  /* Colore del cerchio */
  border-radius: 50%;
  transition: transform 0.3s;
}

/* Quando la checkbox è attiva (switch ON) */
.page-template-page-checkout-php .field-switch-custom input[type="checkbox"]:checked+label {
  background-color: #65558f;
  /* Colore quando è attivo */
}

/* Sposta il cerchio a destra quando è attivo */
.page-template-page-checkout-php .field-switch-custom input[type="checkbox"]:checked+label::before {
  transform: translateX(26px);
  /* Sposta il cerchio a destra */
  background-color: #fff;
  /* Cambia colore del cerchio */
  width: 24px;
  /* Aumenta la larghezza del cerchio */
  height: 24px;
  /* Aumenta l'altezza del cerchio */
  top: 4px;
  left: -4px;
}

.page-template-page-checkout-php input[type="radio"] {
  border-color: #1c1b1f;
}

.page-template-page-checkout-php .form-check-input:checked {
  background-color: #1c1b1f;
}

/* Testo della privacy */
.page-template-page-checkout-php .field-switch-custom span {
  font-size: 16px;
  color: #333;
}

.page-template-page-checkout-php .redirect_notice_text {
  font-size: 14px;
}

.page-template-page-checkout-php .safe_payments {
  font-size: 14px;
}

.page-template-page-checkout-php .checkout_summary {
  background-color: #fff;
  padding: 24px 16px;
  border-radius: 15px;
}

.page-template-page-checkout-php .checkout_summary .checkout_summary_label,
.page-template-page-checkout-php .checkout_summary .checkout_summary_value {
  font-family: "Kodchasan", sans-serif;
  font-size: 18px;
}

.page-template-page-checkout-php .checkout_summary .checkout_summary_label {
  font-weight: 700;
}

.page-template-page-checkout-php .checkout_summary .checkout_summary_value {
  font-weight: 400;
}

.page-template-page-checkout-php .checkout_summary .checkout_summary_separator {
  border: 1px solid #e7e6e4;
  margin: 24px 0;
}

.page-template-page-checkout-php .checkout_summary .checkout_summary_price.discount {
  color: #c10015;
  text-decoration-line: line-through;
}

.page-template-page-checkout-php .checkout_summary .checkout_summary_note p {
  font-size: 12px;
  color: #016d79;
  text-align: center;
  margin-bottom: 0;
}

.page-template-page-checkout-php .checkout_prefooter {
  font-family: "Kodchasan", sans-serif;
  font-size: 16px;
}

.page-template-page-checkout-php .checkout_prefooter .checkout_prefooter_title {
  font-family: "Kodchasan", sans-serif;
  font-weight: 700;
  font-size: 16px;
}

.page-template-page-checkout-php .checkout_prefooter_text {
  font-size: 14px;
}

.page-template-page-checkout-php .checkout_prefooter .included_services ul {
  margin-left: 0;
}

.page-template-page-checkout-php .checkout_prefooter .included_services ul li:not(:last-child) {
  margin-bottom: 16px;
}

#sconto-message {
  font-size: 18px;
  font-weight: 500;
  text-align: right;
}

/* END PAGE CHECKOUT */

/* BEGIN PAGE AGENCIES */

.page-template-page-agencies-php .form-group {
  position: relative;
  margin-bottom: 24px;
}

.page-template-page-agencies-php .form-group.labelTopLeft label {
  position: absolute;
  top: 0;
  left: 15px;
  transform: translateY(-50%);
  background-color: #f5f5f5;
  padding: 0 5px;
  color: #333;
  z-index: 1;
}

.page-template-page-agencies-php input[type="text"],
.page-template-page-agencies-php input[type="email"],
.page-template-page-agencies-php textarea,
.page-template-page-agencies-php .form-select {
  background-color: #f5f5f5;
  padding: 10px 16px;
  border: 1px solid #ccc;
  border-radius: 50rem;
  font-size: 16px;
}

.page-template-page-agencies-php button[type="submit"] {
  border-radius: 50rem;
}

.page-template-page-agencies-php .phone_group .input-group-text {
  background-color: #f5f5f5;
  border-radius: 50rem 0 0 50rem;
  border: 1px solid #ccc;
  border-right: 0;
}

.page-template-page-agencies-php input#phone {
  border-left: 0;
}

.page-template-page-agencies-php .field-switch-custom p {
  margin-bottom: 0;
}

/* Stile generale del contenitore */
.page-template-page-agencies-php .field-switch-custom {
  display: flex;
  align-items: center;
  gap: 10px;
  /* Spazio tra il toggle e il testo */
}

/* Nasconde la checkbox originale */
.page-template-page-agencies-php .field-switch-custom input[type="checkbox"] {
  position: absolute;
  /* Rimuove la checkbox dalla vista */
  opacity: 0;
  /* Nasconde visivamente */
  width: 0;
  height: 0;
}

/* Aggiungi un bordo rosso al contenitore quando il checkbox non è valido */
.page-template-page-agencies-php .field-switch-custom input[type="checkbox"]:invalid+label {
  box-shadow: 0 0 0 4px rgba(255, 0, 0, 0.8);
  margin-left: 4px;
}

/* Stile dello switch */
.page-template-page-agencies-php .field-switch-custom label {
  position: relative;
  width: 52px;
  /* Larghezza del toggle */
  height: 32px;
  /* Altezza del toggle */
  background-color: #e6e0e9;
  /* Colore di sfondo del toggle */
  border-radius: 24px;
  /* Arrotonda i bordi */
  cursor: pointer;
  transition: background-color 0.3s;
}

/* Stile del cerchio all'interno dello switch */
.page-template-page-agencies-php .field-switch-custom label::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: 16px;
  height: 16px;
  background-color: #79747e;
  /* Colore del cerchio */
  border-radius: 50%;
  transition: transform 0.3s;
}

/* Quando la checkbox è attiva (switch ON) */
.page-template-page-agencies-php .field-switch-custom input[type="checkbox"]:checked+label {
  background-color: #65558f;
  /* Colore quando è attivo */
}

/* Sposta il cerchio a destra quando è attivo */
.page-template-page-agencies-php .field-switch-custom input[type="checkbox"]:checked+label::before {
  transform: translateX(26px);
  /* Sposta il cerchio a destra */
  background-color: #fff;
  /* Cambia colore del cerchio */
  width: 24px;
  /* Aumenta la larghezza del cerchio */
  height: 24px;
  /* Aumenta l'altezza del cerchio */
  top: 4px;
  left: -4px;
}

.page-template-page-agencies-php input[type="radio"] {
  border-color: #1c1b1f;
}

.page-template-page-agencies-php .form-check-input:checked {
  background-color: #1c1b1f;
}

/* Testo della privacy */
.page-template-page-agencies-php .field-switch-custom span {
  font-size: 16px;
  color: #333;
}

.page-template-page-agencies-php .insert_agency_response {
  font-size: 18px;
  font-weight: 600;
}

.page-template-page-agencies-php .insert_agency_response a {
  color: #c6a061;
  font-weight: 700;
}

.page-template-page-agencies-php .insert_agency_response p:last-child {
  margin-bottom: 0;
}

/* END PAGE AGENCIES */

/* BEGIN PAGE AGENCIES MAIL */

.page-template-page-agencies-mail-php .form-group {
  position: relative;
  margin-bottom: 24px;
}

.page-template-page-agencies-mail-php .form-group.labelTopLeft label {
  position: absolute;
  top: 0;
  left: 15px;
  transform: translateY(-50%);
  background-color: #f5f5f5;
  padding: 0 5px;
  color: #333;
  z-index: 1;
}

.page-template-page-agencies-mail-php input[type="text"],
.page-template-page-agencies-mail-php input[type="email"],
.page-template-page-agencies-mail-php textarea,
.page-template-page-agencies-mail-php .form-select {
  background-color: #f5f5f5;
  padding: 10px 16px;
  border: 1px solid #ccc;
  border-radius: 50rem;
  font-size: 16px;
}

.page-template-page-agencies-mail-php button[type="submit"] {
  border-radius: 50rem;
}

.page-template-page-agencies-mail-php .phone_group .input-group-text {
  background-color: #f5f5f5;
  border-radius: 50rem 0 0 50rem;
  border: 1px solid #ccc;
  border-right: 0;
}

.page-template-page-agencies-mail-php input#phone {
  border-left: 0;
}

.page-template-page-agencies-mail-php .field-switch-custom p {
  margin-bottom: 0;
}

/* Stile generale del contenitore */
.page-template-page-agencies-mail-php .field-switch-custom {
  display: flex;
  align-items: center;
  gap: 10px;
  /* Spazio tra il toggle e il testo */
}

/* Nasconde la checkbox originale */
.page-template-page-agencies-mail-php .field-switch-custom input[type="checkbox"] {
  position: absolute;
  /* Rimuove la checkbox dalla vista */
  opacity: 0;
  /* Nasconde visivamente */
  width: 0;
  height: 0;
}

/* Stile dello switch */
.page-template-page-agencies-mail-php .field-switch-custom label {
  position: relative;
  width: 52px;
  /* Larghezza del toggle */
  height: 32px;
  /* Altezza del toggle */
  background-color: #e6e0e9;
  /* Colore di sfondo del toggle */
  border-radius: 24px;
  /* Arrotonda i bordi */
  cursor: pointer;
  transition: background-color 0.3s;
}

/* Stile del cerchio all'interno dello switch */
.page-template-page-agencies-mail-php .field-switch-custom label::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: 16px;
  height: 16px;
  background-color: #79747e;
  /* Colore del cerchio */
  border-radius: 50%;
  transition: transform 0.3s;
}

/* Quando la checkbox è attiva (switch ON) */
.page-template-page-agencies-mail-php .field-switch-custom input[type="checkbox"]:checked+label {
  background-color: #65558f;
  /* Colore quando è attivo */
}

/* Sposta il cerchio a destra quando è attivo */
.page-template-page-agencies-mail-php .field-switch-custom input[type="checkbox"]:checked+label::before {
  transform: translateX(26px);
  /* Sposta il cerchio a destra */
  background-color: #fff;
  /* Cambia colore del cerchio */
  width: 24px;
  /* Aumenta la larghezza del cerchio */
  height: 24px;
  /* Aumenta l'altezza del cerchio */
  top: 4px;
  left: -4px;
}

.page-template-page-agencies-mail-php input[type="radio"] {
  border-color: #1c1b1f;
}

.page-template-page-agencies-mail-php .form-check-input:checked {
  background-color: #1c1b1f;
}

/* Testo della privacy */
.page-template-page-agencies-mail-php .field-switch-custom span {
  font-size: 16px;
  color: #333;
}

/* END PAGE AGENCIES */

/* BEGIN PAGE PASSENGERS */

.page-template-page-passengers-php .form-group {
  position: relative;
  margin-bottom: 24px;
}

.page-template-page-passengers-php .form-group.labelTopLeft label {
  position: absolute;
  top: 0;
  left: 15px;
  transform: translateY(-50%);
  background-color: #f5f5f5;
  padding: 0 5px;
  color: #333;
  z-index: 1;
}

.page-template-page-passengers-php input[type="text"],
.page-template-page-passengers-php input[type="email"],
.page-template-page-passengers-php textarea,
.page-template-page-passengers-php .form-select {
  background-color: #f5f5f5;
  padding: 10px 16px;
  border: 1px solid #ccc;
  border-radius: 50rem;
  font-size: 16px;
}

.page-template-page-passengers-php button[type="submit"] {
  border-radius: 50rem;
}

.page-template-page-passengers-php .phone_group .input-group-text {
  background-color: #f5f5f5;
  border-radius: 50rem 0 0 50rem;
  border: 1px solid #ccc;
  border-right: 0;
}

.page-template-page-passengers-php input#phone {
  border-left: 0;
}

.page-template-page-passengers-php .field-switch-custom p {
  margin-bottom: 0;
}

/* Stile generale del contenitore */
.page-template-page-passengers-php .field-switch-custom {
  display: flex;
  align-items: center;
  gap: 10px;
  /* Spazio tra il toggle e il testo */
}

/* Nasconde la checkbox originale */
.page-template-page-passengers-php .field-switch-custom input[type="checkbox"] {
  position: absolute;
  /* Rimuove la checkbox dalla vista */
  opacity: 0;
  /* Nasconde visivamente */
  width: 0;
  height: 0;
}

/* Aggiungi un bordo rosso al contenitore quando il checkbox non è valido */
.page-template-page-passengers-php .field-switch-custom input[type="checkbox"]:invalid+label {
  box-shadow: 0 0 0 4px rgba(255, 0, 0, 0.8);
  margin-left: 4px;
}

/* Stile dello switch */
.page-template-page-passengers-php .field-switch-custom label {
  position: relative;
  width: 52px;
  /* Larghezza del toggle */
  height: 32px;
  /* Altezza del toggle */
  background-color: #e6e0e9;
  /* Colore di sfondo del toggle */
  border-radius: 24px;
  /* Arrotonda i bordi */
  cursor: pointer;
  transition: background-color 0.3s;
}

/* Stile del cerchio all'interno dello switch */
.page-template-page-passengers-php .field-switch-custom label::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: 16px;
  height: 16px;
  background-color: #79747e;
  /* Colore del cerchio */
  border-radius: 50%;
  transition: transform 0.3s;
}

/* Quando la checkbox è attiva (switch ON) */
.page-template-page-passengers-php .field-switch-custom input[type="checkbox"]:checked+label {
  background-color: #65558f;
  /* Colore quando è attivo */
}

/* Sposta il cerchio a destra quando è attivo */
.page-template-page-passengers-php .field-switch-custom input[type="checkbox"]:checked+label::before {
  transform: translateX(26px);
  /* Sposta il cerchio a destra */
  background-color: #fff;
  /* Cambia colore del cerchio */
  width: 24px;
  /* Aumenta la larghezza del cerchio */
  height: 24px;
  /* Aumenta l'altezza del cerchio */
  top: 4px;
  left: -4px;
}

.page-template-page-passengers-php input[type="radio"] {
  border-color: #1c1b1f;
}

.page-template-page-passengers-php .form-check-input:checked {
  background-color: #1c1b1f;
}

/* Testo della privacy */
.page-template-page-passengers-php .field-switch-custom span {
  font-size: 16px;
  color: #333;
}

.page-template-page-passengers-php .insert_agency_response {
  font-size: 18px;
  font-weight: 600;
}

.page-template-page-passengers-php .insert_agency_response a {
  color: #c6a061;
  font-weight: 700;
}

.page-template-page-passengers-php .insert_agency_response p:last-child {
  margin-bottom: 0;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px #f5f5f5 inset !important;
}

/* END PAGE PASSENGERS */

/* BEGIN FOOTER */

.site-footer {
  background-color: #e7e6e4;
}

.footer_info p {
  font-weight: 300;
}

.footer_info h3 {
  margin-bottom: 32px;
}

.footer_info h4 {
  font-family: "Kodchasan", sans-serif;
  font-weight: 700;
  font-size: 16px;
}

/* END FOOTER */

/* END HOUSEOFNINE THEME */