.riad-t7 {
	--nuit-medina: #1A1410;
	--terre-cuite: #3D2B1A;
	--or-epice: #C5853A;
	--or-doux: #E8C07A;
	--safran: #7D4A28;
	--cannelle: #A0522D;
	--cannelle-clair: #D4885F;
	--ivoire: #F5ECD8;
	--parchemin: #E8E0D0;
	--vert-zellige: #4A6741;
	--texte: #2C1F12;
	background: var(--ivoire);
	font-family: 'DM Sans', sans-serif;
	color: var(--texte);
	overflow-x: clip;
}
.riad-t7 * { box-sizing: border-box; }
.riad-t7 a { text-decoration: none; color: var(--safran); }
.riad-t7 a:hover { color: var(--nuit-medina); }
.riad-t7__shell { max-width: 90rem; margin: 0 auto; padding: 0 3rem; }

/* Ce gabarit fournit son propre header/footer : on masque ceux d'Avada et on
   libère le conteneur #main/.fusion-row (borné à 1100px par le thème parent)
   pour que les sections occupent toute la largeur de la fenêtre. */
body.page-template-template-contact-php .fusion-header-wrapper,
body.page-template-template-contact-php .fusion-footer-widget-area,
body.page-template-template-contact-php .fusion-footer-copyright-area {
	display: none !important;
}
body.page-template-template-contact-php #main,
body.page-template-template-contact-php #main .fusion-row,
body.page-template-template-contact-php #content {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* La barre de navigation est commune aux gabarits : son habillage vit dans
   assets/css/nav.css et son balisage dans riad_nav_render(). Rien à styler ici. */

/* Header */
.riad-t7__header { background: var(--nuit-medina); padding: 9.5rem 0 4.5rem; }
.riad-t7__breadcrumb { display: flex; gap: 0.625rem; align-items: center; flex-wrap: wrap; font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--cannelle-clair); margin-bottom: 1.75rem; }
.riad-t7__breadcrumb a { color: var(--cannelle-clair); }
.riad-t7__breadcrumb a:hover { color: var(--or-doux); }
.riad-t7__breadcrumb .is-current { color: var(--parchemin); }
.riad-t7__eyebrow { font-size: 0.6875rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.14em; color: var(--or-epice); margin-bottom: 1.125rem; }
.riad-t7__h1 { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: clamp(2.75rem, 1.6rem + 4vw, 4.25rem); line-height: 1.04; letter-spacing: -0.02em; color: var(--ivoire); margin: 0; }
.riad-t7__tagline { font-family: 'Cormorant Garamond', serif; font-style: italic; font-size: 1.5rem; line-height: 1.45; color: var(--parchemin); margin: 1.125rem 0 0; max-width: 36ch; }

/* Main */
.riad-t7__main { background: var(--ivoire); padding: 5.5rem 0 6.5rem; }
.riad-t7__main-shell { max-width: 90rem; margin: 0 auto; padding: 0 3rem; display: grid; grid-template-columns: minmax(0,1fr) 22.5rem; gap: 5.5rem; align-items: start; }
.riad-t7__body { max-width: 42rem; font-size: 1.0625rem; line-height: 1.7; color: var(--texte); }
.riad-t7__body p { margin: 0 0 1.25rem; }
.riad-t7__body h2 { font-family: 'Cormorant Garamond', serif; font-weight: 600; font-size: 1.75rem; color: var(--nuit-medina); margin: 2.5rem 0 1.25rem; }
.riad-t7__body h2:first-child { margin-top: 0; }

/*
 * Formulaire de contact.
 *
 * Rendu par le thème (riad_contact_form_html), il prend la place de l'ancien appel CaptainForm au
 * fil du contenu. Il reprend le vocabulaire des autres gabarits : fond parchemin, filets plutôt
 * que bordures épaisses, angles droits, micro-libellés en capitales espacées.
 */
.riad-t7__form { margin: 1.5rem 0 2.5rem; }
.riad-t7__form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem 1.5rem;
	background: var(--parchemin);
	border: 1px solid rgba(197,133,58,0.35);
	padding: 2.25rem;
}
.riad-t7__field { display: flex; flex-direction: column; gap: 0.5rem; margin: 0; }
.riad-t7__field--large { grid-column: 1 / -1; }
.riad-t7__field label { font-size: 0.6875rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.1em; color: var(--safran); }
/* La mention « obligatoire » se dit en clair plutôt qu'avec un astérisque à décoder. */
.riad-t7__field label span { text-transform: none; letter-spacing: 0.02em; color: var(--safran); font-weight: 400; font-size: 0.6875rem; }
.riad-t7__form input[type="text"],
.riad-t7__form input[type="email"],
.riad-t7__form input[type="tel"],
.riad-t7__form input[type="date"],
.riad-t7__form input[type="number"],
.riad-t7__form textarea {
	width: 100%;
	background: var(--ivoire);
	border: 1px solid rgba(125,74,40,0.28);
	border-radius: 0;
	color: var(--texte);
	font-family: 'DM Sans', sans-serif;
	font-size: 0.9375rem;
	line-height: 1.5;
	padding: 0.8125rem 0.9375rem;
	transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
/* Le thème parent impose une hauteur fixe aux champs de type « text » depuis un sélecteur
   d'identifiant : sans cette reprise, le champ « Nom » restait écrasé à 29 px quand ses voisins,
   de types email ou date, gardaient leur hauteur normale. */
#wrapper .riad-t7__form input,
#wrapper .riad-t7__form textarea { height: auto; }
.riad-t7__form input:focus,
.riad-t7__form textarea:focus { outline: 0; border-color: var(--or-epice); box-shadow: 0 0 0 1px var(--or-epice); }
.riad-t7__form textarea { resize: vertical; min-height: 9rem; }
.riad-t7__form [aria-invalid="true"] { border-color: var(--cannelle); }
.riad-t7__form-error { font-size: 0.8125rem; line-height: 1.45; color: #9A4F2B; }

.riad-t7__consent label { display: flex; align-items: flex-start; gap: 0.625rem; text-transform: none; letter-spacing: 0; color: var(--texte); font-size: 0.875rem; line-height: 1.5; font-weight: 400; }
.riad-t7__consent input { flex: 0 0 auto; width: 1rem; height: 1rem; margin-top: 0.1875rem; accent-color: var(--or-epice); }
.riad-t7__consent label span { font-size: inherit; color: inherit; }

.riad-t7__form-send { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 0.875rem 1.5rem; margin-top: 0.25rem; }
.riad-t7__form button[type="submit"] {
	border: 1px solid var(--or-epice);
	background: transparent;
	color: var(--safran);
	font-family: 'DM Sans', sans-serif;
	font-size: 0.75rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 0.9375rem 1.75rem;
	cursor: pointer;
	transition: background 0.25s ease, color 0.25s ease;
}
.riad-t7__form button[type="submit"]:hover,
.riad-t7__form button[type="submit"]:focus { background: var(--or-epice); color: var(--nuit-medina); }
.riad-t7__form-hint { font-size: 0.8125rem; color: var(--safran); }

/* Accusé de réception et erreur générale : un filet vertical suffit à les distinguer du texte. */
.riad-t7__form-notice { margin: 0 0 1.25rem; padding: 1rem 1.25rem; background: var(--parchemin); border-left: 2px solid var(--vert-zellige); font-size: 0.9375rem; line-height: 1.6; }
.riad-t7__form-notice.is-ko { border-left-color: var(--cannelle); }

/* Piège à robots : hors de l'écran plutôt que « display: none », que certains automates savent
   reconnaître. Il reste hors du parcours au clavier grâce à tabindex="-1". */
.riad-t7__form-trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Carte de situation. Le cadre porte le format et le filet, l'iframe le remplit : la hauteur
   suit ainsi la largeur de la colonne au lieu des 450 px du code d'intégration. */
.riad-t7__map { margin: 2.5rem 0 0; }
.riad-t7__map-frame { position: relative; aspect-ratio: 16 / 10; border: 1px solid rgba(197,133,58,0.35); background: var(--parchemin); }
.riad-t7__map-frame iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.riad-t7__map-caption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.375rem 1.5rem; margin-top: 0.75rem; font-size: 0.8125rem; line-height: 1.5; color: var(--safran); }

/* Boutons posés dans l'éditeur par le constructeur du thème parent. */
.riad-t7__body .fusion-button-wrapper { margin: 0.5rem 0.75rem 1.75rem 0; display: inline-block; vertical-align: middle; }
.riad-t7__body .fusion-button-wrapper.fusion-aligncenter { display: inline-block !important; text-align: left; }
.riad-t7__body .gallery,
.riad-t7__body [id^="gallery-"],
.riad-t7__body img { display: none !important; }
.riad-t7 .riad-t7__body a.fusion-button {
	display: inline-block;
	border-radius: 0 !important;
	border: 1px solid var(--or-epice) !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	padding: 0.875rem 1.25rem !important;
	height: auto !important;
	line-height: 1.2 !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 0.75rem !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	white-space: nowrap;
	transition: background 0.25s ease, color 0.25s ease;
}
#wrapper .riad-t7__body a.fusion-button { border-radius: 0 !important; }
.riad-t7 .riad-t7__body a.fusion-button .fusion-button-text { color: var(--safran) !important; font-size: inherit !important; letter-spacing: inherit !important; }
.riad-t7 .riad-t7__body a.fusion-button:hover,
.riad-t7 .riad-t7__body a.fusion-button:focus,
.riad-t7 .riad-t7__body a.fusion-button:active { background: var(--or-epice) !important; border-color: var(--or-epice) !important; }
.riad-t7 .riad-t7__body a.fusion-button:hover .fusion-button-text,
.riad-t7 .riad-t7__body a.fusion-button:focus .fusion-button-text,
.riad-t7 .riad-t7__body a.fusion-button:active .fusion-button-text { color: var(--nuit-medina) !important; }
.riad-t7 .riad-t7__body a.fusion-button i,
.riad-t7 .riad-t7__body a.fusion-button .button-icon-left,
.riad-t7 .riad-t7__body a.fusion-button .button-icon-right { display: none !important; }

/* Sidebar */
.riad-t7__sidebar { position: sticky; top: 7rem; z-index: 2; display: flex; flex-direction: column; gap: 0.875rem; }
.riad-t7__info { background: var(--nuit-medina); padding: 2.25rem 2rem; }
.riad-t7__info-label { font-size: 0.6875rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.1em; color: var(--cannelle-clair); margin-bottom: 1.25rem; }
.riad-t7__info-row { display: flex; flex-direction: column; gap: 0.25rem; font-size: 0.875rem; color: var(--parchemin); padding: 0.75rem 0; border-bottom: 1px solid rgba(197,133,58,0.2); }
.riad-t7__info-row:last-child { border-bottom: 0; }
.riad-t7__info-row span:first-child { font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--cannelle-clair); }
.riad-t7__info-row a { color: var(--or-doux) !important; }

.riad-t7__faq { display: block; background: var(--parchemin); padding: 1.75rem 2rem; }
.riad-t7__faq-label { display: block; font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; color: var(--nuit-medina); }
.riad-t7__faq-cta { display: block; margin-top: 0.5rem; font-size: 0.6875rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.08em; color: var(--safran); }
.riad-t7__faq:hover .riad-t7__faq-cta { color: var(--nuit-medina); }

/* Réassurance Tripadvisor — mêmes classes/logique que sur les autres gabarits. */
/* Footer */
/* Breakpoints */
@media (max-width: 71.875rem) {
	.riad-t7__main-shell { grid-template-columns: minmax(0,1fr); gap: 0; }
	.riad-t7__sidebar { position: static; margin-top: 3.5rem; max-width: 32.5rem; }
}
@media (max-width: 47.5rem) {
	.riad-t7__form-grid { grid-template-columns: minmax(0, 1fr); padding: 1.5rem; }
	.riad-t7__shell { padding: 0 1.5rem; }
	.riad-t7__header { padding: 8.5rem 0 3.5rem; }
	.riad-t7__main { padding: 4rem 0 5rem; }
	.riad-t7__main-shell { padding: 0 1.5rem; }
}
