/*!
Theme Name: STARTEO Starter Theme
Author: Starteo
Author URI: https://www.starteo.pro
Description: 
Version: 1.0
Requires at least: 5.0
Tested up to: 5.7
Requires PHP: 7.2
Text Domain: gbdi-starter
*/

/* Don't overwrite this file. Compile "/assets/main.(less|scss)" to "/assets/css/main.css" */

/* From http://codex.wordpress.org/CSS */

/* GENERAL */
/*
@font-face {
	font-family: "Ganton";
	src: url(assets/_fonts/Ganton.otf) format("opentype");
}
*/

@font-face {
  font-family: "DIN Regular";
  src: url(assets/_fonts/DINPro.ttf) format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "DIN Bold";
  src: url(assets/_fonts/DINPro-Bold.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "DIN Italic";
  src: url(assets/_fonts/DINPro-Italic.ttf) format("truetype");
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: "DIN Medium Italic";
  src: url(assets/_fonts/DINPro-MediumItalic.ttf) format("truetype");
  font-weight: 500;
  font-style: italic;
}

:root {
  font-size: 131.25%;

  --font-size-14: 0.667rem;
  --font-size-base: 1rem;
  --font-size-35: 1.667rem;
  --font-size-60: 2.857rem;
  --font-size-79: 3.762rem;

  --font-family-main: "DIN Pro", sans-serif;

  --font-weight-medium: 500;
  --font-weight-bold: 700;

  --font-style-italic: italic;

  --color-green: #3e4827;
  --color-red: #dc3513;
  --color-beige: #f6e7ce;
}

@media (max-width: 992px) {
  :root {
    font-size: 112.5%;

    --font-size-79: 2.75rem;
    --font-size-60: 2.25rem;
  }
}

body {
  font-family: var(--font-family-main);
  font-style: var(--font-style-italic);
  font-size: var(--font-size-base);
  color: var(--color-red);
  line-height: 1.19;
}


.back-to-top {
  display: none; /* Hidden by default */
  position: fixed; /* Fixed/sticky position */
  bottom: 10px; /* Place the button at the bottom of the page */
  right: 10px; /* Place the button 30px from the right */
  z-index: 999; /* Make sure it does not overlap */
  outline: none; /* Remove outline */
  cursor: pointer; /* Add a mouse pointer on hover */
  font-size: 20px; /* Increase font size */
  color: var(--color-beige);
  background: var(--color-green);
  border-radius: 50%;
  padding: 14px 16px;
  transition:
    background-color 0.3s,
    opacity 0.5s,
    visibility 0.5s;
  opacity: 0;
  visibility: hidden;
}

.back-to-top.show {
  opacity: 1;
  visibility: visible;
}

.back-to-top:hover {
  background-color: var(--color-beige);
  color: var(--color-green);
}

.horloge-title-79 {
  font-weight: var(--font-weight-bold);
  font-style: normal;
  font-size: var(--font-size-79);
  line-height: 0.87;
}

.horloge-intro {
  font-weight: var(--font-weight-medium);
  font-style: var(--font-style-italic);
  font-size: var(--font-size-60);
  line-height: 1;
}

.horloge-menu-title-35 {
  font-weight: var(--font-weight-bold);
  font-style: normal;
  font-size: var(--font-size-35);
  line-height: 0.71;
  text-transform: uppercase;
}

.horloge-menu-subtitle {
  font-weight: var(--font-weight-bold);
  font-style: normal;
  text-transform: uppercase;
}

.horloge-beige {
  color: var(--color-beige);
}

.horloge-bg-beige {
  background-color: var(--color-beige);
}

.horloge-green {
  color: var(--color-green);
}

.horloge-bg-green {
  background-color: var(--color-green);
}

.horloge-bg-red {
  background-color: var(--color-red);
}

.grecaptcha-badge{
  display: none;
}
/* GENERAL */

/* HEADER */
.horloge-header {
  position: relative;
  z-index: 10;
}

.horloge-header-logo {
  position: absolute;
  top: 24px;
  left: 62px;
  z-index: 999;
  width: auto;
}

.horloge-header-home-link img {
  max-height: 213px;
  width: auto;
  display: block;
}
/* HEADER */

/* FOOTER */
.horloge-footer {
  height: 150px;
}

.horloge-footer-logo {
  max-height: 105px;
}

.horloge-footer-icon {
  width: 39px;
  height: 39px;
}

.horloge-footer-links {
  font-size: var(--font-size-14);
  font-style: var(--font-style-italic);
  color: var(--color-beige);
}

.horloge-footer-links a {
  color: var(--color-beige);
}
/* FOOTER */

/* HOME */
.horloge-home-banner {
  background-image: url("assets/images/horloge-bg-green.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-bottom: 269px;
  width: 100%;
}

.horloge-home-logo {
  width: 213px;
  height: auto;
  padding-top: 44px;
}

.horloge-home-banner-separator {
  background-color: var(--color-red);
  height: 2px;
  width: 213px;
  margin-top: 27px;
  margin-bottom: 23px;
}

.horloge-home-banner-image {
  height: 941px;
  width: 856px;
  border-left: 4px dotted var(--color-red);
  border-right: 4px dotted var(--color-red);
  border-bottom: 4px dotted var(--color-red);
  padding: 0 35px 35px 35px;
  object-fit: cover;
}

.horloge-home-banner-intro {
  padding-top: 280px;
}

.horloge-home-banner-intro-separator {
  background-color: var(--color-red);
  width: 2px;
  height: 155px;
}

.horloge-home-menu {
  background-image: url("assets/images/horloge-bg-beige.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 207px;
  padding-bottom: 167px;
}

.horloge-home-menu-header-title {
  text-transform: uppercase;
  font-size: var(--font-size-60);
  font-weight: var(--font-weight-bold);
  color: transparent;
  -webkit-text-stroke: 2px var(--color-red);
  font-style: normal;
  background-color: var(--color-beige);
  width: 297px;
  height: 107px;
  position: relative;
  bottom: -5px;
}

/* MENU */
/* 1. Conteneur Global (Gestion des 2 colonnes) */
.horloge-home-menu-border {
  border: 4px dotted var(--color-red);
  padding: 108px 160px;
}

.horloge-home-menu-inner {
  position: relative;
  min-height: 500px;
}

.horloge-home-menu-wrapper {
  column-count: 2;
  column-gap: 220px;
  max-width: 1200px;
  margin: 40px auto;
  position: relative;
  column-rule: 4px dotted var(--color-red);
}

/* Évite que les blocs ne se coupent entre deux colonnes */
.horloge-home-menu-section,
.horloge-home-menu-dotted-box,
.horloge-home-menu-special-card {
  break-inside: avoid;
  display: block;
  width: 100%;
  margin-bottom: 40px;
}

/* 2. Styles des Titres (Layout: section_plats) */
.horloge-home-menu-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 10px;
}

/* Style GRAND (ex: LA CAVE, LES BURGERS) */
.horloge-home-menu-style-grand .horloge-home-menu-title {
  color: var(--color-red);
  font-size: var(--font-size-35);
  font-weight: var(--font-weight-bold);
  font-style: normal;
  text-transform: uppercase;
  margin-bottom: 9px;
}

/* Style PETIT (ex: ROUGE, BLANC, SOFT) */
.horloge-home-menu-style-petit .horloge-home-menu-title {
  color: var(--color-green);
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  font-size: var(--font-size-base);
  font-style: normal;
  margin-top: 20px;
}

.horloge-home-menu-subtitle {
  font-style: var(--font-style-italic);
  color: var(--color-red);
  font-weight: var(--font-weight-medium);
  width: 385px;
  margin-bottom: 30px;
}

/* Liste des Plats & Effet Pointillés */
.horloge-home-menu-item {
  margin-bottom: 12px;
}

.horloge-home-menu-item-main {
  display: flex;
  align-items: center;
}

.horloge-home-menu-item-name {
  color: var(--color-red);
  font-weight: var(--font-weight-bold);
  font-style: normal;
  text-transform: uppercase;
  margin-right: 50px;
}

.horloge-home-menu-dosage-top {
  color: var(--color-green);
  font-style: normal;
  font-weight: var(--font-weight-bold);
}

/* Cas particulier : La description sert de titre (Vins/Thés) */
.horloge-home-menu-item-only-desc {
  color: var(--color-red) !important;
  text-transform: none !important;
  font-weight: normal;
  font-style: var(--font-style-italic);
}

.horloge-home-menu-dots {
  flex-grow: 1;
  margin: 0 8px;
  height: 4px;
  opacity: 0.6;
}

.horloge-home-menu-item-price {
  font-weight: var(--font-weight-bold);
  color: var(--color-red);
  font-style: normal;
  white-space: nowrap;
}

.horloge-home-menu-item-desc {
  margin: 2px 103px 24px 0;
  line-height: 1.2;
}


/* 4. Bloc Option (Encadré beige burgers) */
.horloge-home-menu-option-box {
  background-color: rgba(246, 231, 206, 0.4);
  mix-blend-mode: multiply;
  padding: 18px 25px 26px 23px;
}

.horloge-home-menu-option-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.horloge-home-menu-option-name {
  color: var(--color-red);
  text-transform: uppercase;
  font-style: normal;
  font-weight: var(--font-weight-bold);
}

.horloge-home-menu-option-desc {
  margin-right: 56px;
  margin-bottom: 0;
}

.horloge-home-menu-option-price {
  border: 1px solid var(--color-red);
  color: var(--color-red);
  padding: 2px 10px;
  border-radius: 15px;
  font-weight: bold;
  font-style: normal;
}

/* 5. Bloc Pointillé (Vin au verre / Formule Enfant) */
.horloge-home-menu-dotted-box {
  border: 4px dotted var(--color-red);
  padding: 30px;
  background-color: transparent;
}

.horloge-home-menu-dotted-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.horloge-home-menu-dotted-title {
  color: var(--color-red);
  font-weight: var(--font-weight-bold);
  font-style: normal;
  font-size: var(--font-size-35);
  text-transform: uppercase;
}

.horloge-home-menu-dotted-price{
  font-weight: var(--font-weight-bold);
  font-style: normal;
}

.horloge-home-menu-dotted-desc p {
  margin-bottom: 0;
}

.horloge-home-menu-dotted-desc strong {
  font-style: normal;
}

.horloge-home-menu-dotted-item {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.horloge-home-menu-dotted-dosage {
  color: var(--color-green);
  font-style: normal;
  font-weight: var(--font-weight-bold);
}

.horloge-home-menu-dotted-subtitle {
  text-transform: uppercase;
  color: var(--color-green);
  font-weight: var(--font-weight-bold);
  font-style: normal;
}

/* --- BLOCS SPÉCIAUX (ROUGE) --- */
.horloge-home-menu-special-card {
  background-color: var(--color-red);
  color: var(--color-beige);
  padding: 33px 38px 32px 32px;
  text-align: left;
  margin-bottom: 30px;
  position: relative;
}

.horloge-home-menu-special-title {
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  font-style: normal;
  font-size: var(--font-size-35);
  margin-bottom: 8px;
}

.horloge-home-menu-special-content {
  margin-bottom: 20px;
  font-style: italic;
  line-height: 1.4;
}

.horloge-home-menu-special-price strong {
  font-style: normal;
}

/* --- LOGIQUE D'ALIGNEMENT (COCKTAILS VS BRUNCH) --- */
.horloge-home-menu-special-inline .horloge-home-menu-special-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}

.horloge-home-menu-special-inline .horloge-home-menu-special-price {
  font-size: 1.2rem;
  white-space: nowrap;
  margin-left: 15px;
}

.horloge-home-menu-special-stack .horloge-home-menu-special-price {
  display: grid;
  margin-top: 10px;
}

.horloge-home-menu-special-price p {
  margin: 0;
  display: inline;
}

.horloge-home-menu-sep-pointille {
  border-bottom: 4px dotted var(--color-green);
  margin: 40px 0;
  width: 100%;
}

.horloge-home-menu-sep-espace-vide {
  height: 30px;
}

.horloge-home-menu-force-column {
  break-before: column;
}

.horloge-home-rdv{
  background-image: url("assets/images/horloge-bg-green.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 211px;
  padding-bottom: 184px;
}

.horloge-home-rdv-content{
  padding-top: 40px;
  padding-bottom: 44px;
}

.horloge-home-rdv-hours,
.horloge-home-rdv-address {
  font-style: normal;
  font-weight: var(--font-weight-bold);
}

.horloge-home-rdv-address{
  margin-right: 76px;
}

.horloge-home-rdv-separator{
  height: 520px;
  width: 2px;
  background-color: var(--color-red);
}

.wpcf7 input[type="text"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7-select,
.wpcf7 textarea {
  width: 100%;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7-form textarea,
.wpcf7-form select {
  border: none;
  background-color: transparent;
  border-bottom: 2px solid var(--color-red);
  padding: 7px 0 12px 11px;
  outline: none !important;
  background-color: var(--color-green);
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
::placeholder {
  color: var(--color-beige) !important;
  font-style: normal;
}

textarea {
  height: 120px;
}

.wpcf7-form input.wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-beige);
  border-radius: 21px;
  color: var(--color-green);
  padding: 8px 30px;
  font-style: normal;
  font-weight: var(--font-weight-medium);
  cursor: pointer;
  transition: background-color 0.3s ease;
  border: none;
}

.wpcf7-form input.wpcf7-submit:hover {
  background-color: var(--color-red);
  color: var(--color-beige);
}

.wpcf7-spinner{
  display: none;
}
/* HOME */

.horloge-home-menu a{
  color: var(--color-green);
}
