/* Inès v2 — assistante intégrée, habillage premium Bosquet.
 * Typo : Euclid (chargée par le thème) avec repli système ; navy/or maison.
 * Nouveaux états : puces d'actions & suggestions, fiches de biens, relance
 * contextuelle, erreur avec reprise, bouton nouvelle conversation. */
.ines{
	--ines-navy:#1D1D3D; --ines-navy-2:#12122A; --ines-gold:#b8995f; --ines-gold-lt:#e6cfa3;
	--ines-ink:#232637; --ines-line:#e7e4dd; --ines-bot:#f4f1ea; --ines-sable:#faf8f4;
	position:fixed; right:22px; bottom:22px; z-index:9999;
	font-family:"Euclid Circular A",Montserrat,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	color:var(--ines-ink);
	display:none;   /* masquée tant que le consentement n'est pas donné */
}
.ines.ines--ready{ display:block; }
.ines *{ box-sizing:border-box; }

/* Bannière de consentement (inchangée sur le fond, alignée sur la nouvelle DA) */
.ines-consent{
	position:fixed; left:22px; bottom:22px; z-index:9998; max-width:360px;
	background:#fff; border-radius:14px; box-shadow:0 14px 44px rgba(18,18,42,.28);
	padding:18px 20px; font-family:"Euclid Circular A",Montserrat,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; color:#232637;
	animation:ines-in .22s cubic-bezier(.19,1,.22,1);
}
.ines-consent[hidden]{ display:none; }
.ines-consent__txt{ margin:0 0 14px; font-size:13px; line-height:1.5; }
.ines-consent__txt a{ color:#b8995f; }
.ines-consent__btns{ display:flex; gap:8px; justify-content:flex-end; }
.ines-consent button{ cursor:pointer; border-radius:999px; padding:8px 20px; font-size:13px; font-family:inherit; border:1px solid #d9d4ca; transition:background .18s ease,border-color .18s ease; }
.ines-consent__refuse{ background:#fff; color:#50575e; }
.ines-consent__refuse:hover{ background:#f4f1ea; }
.ines-consent__accept{ background:#1D1D3D; color:#fff; border-color:#1D1D3D; }
.ines-consent__accept:hover{ background:#b8995f; border-color:#b8995f; }
@media (max-width:480px){ .ines-consent{ left:14px; right:14px; bottom:14px; max-width:none; } }

/* Bouton flottant */
.ines__toggle{
	display:inline-flex; align-items:center; gap:.5rem; cursor:pointer;
	background:var(--ines-navy); color:#fff; border:0; border-radius:999px;
	padding:10px 20px 10px 10px; font-size:15px; font-weight:500; letter-spacing:.01em;
	box-shadow:0 8px 24px rgba(18,18,42,.28); transition:transform .18s ease, box-shadow .18s ease;
	font-family:inherit;
}
.ines__toggle:hover{ transform:translateY(-2px); box-shadow:0 12px 30px rgba(18,18,42,.34); }
.ines__toggle-ava{ width:28px; height:28px; border-radius:50%; display:block; flex:0 0 auto; }
.ines.is-open .ines__toggle{ display:none; }

/* Relance contextuelle : petite carte au-dessus du bouton, sur fiche bien */
.ines__teaser{
	position:absolute; right:0; bottom:calc(100% + 12px); width:280px;
	background:#fff; border-radius:14px; border-bottom-right-radius:4px;
	box-shadow:0 16px 44px rgba(18,18,42,.26); padding:14px 34px 14px 16px;
	cursor:pointer; animation:ines-in .3s cubic-bezier(.19,1,.22,1);
	border-top:2px solid var(--ines-gold);
}
.ines__teaser[hidden]{ display:none; }
.ines__teaser p{ margin:0; font-size:13.5px; line-height:1.5; color:var(--ines-ink); }
.ines__teaser-close{
	position:absolute; top:6px; right:8px; background:none; border:0; cursor:pointer;
	font-size:18px; line-height:1; color:#9a96a4; padding:2px 4px;
}
.ines__teaser-close:hover{ color:var(--ines-ink); }
.ines.is-open .ines__teaser{ display:none; }

/* Panneau */
.ines__panel[hidden]{ display:none; }
.ines__panel{
	width:392px; max-width:calc(100vw - 32px); height:600px; max-height:calc(100vh - 40px);
	display:flex; flex-direction:column; overflow:hidden;
	background:#fff; border-radius:18px; box-shadow:0 28px 70px rgba(18,18,42,.34);
	animation:ines-in .22s cubic-bezier(.19,1,.22,1);
}
@keyframes ines-in{ from{ opacity:0; transform:translateY(14px) scale(.98);} to{ opacity:1; transform:none;} }

/* Bandeau : navy profond + filet or — signature maison */
.ines__head{
	display:flex; align-items:center; gap:12px; padding:14px 12px 14px 16px;
	background:linear-gradient(135deg,var(--ines-navy) 0%,var(--ines-navy-2) 100%); color:#fff;
	border-bottom:2px solid var(--ines-gold);
}
.ines__avatar{
	flex:0 0 auto; width:40px; height:40px; border-radius:50%; overflow:hidden; background:#efe7db;
	box-shadow:0 0 0 2px rgba(230,207,163,.45);
}
.ines__avatar img{ width:100%; height:100%; display:block; }
.ines__head-txt{ display:flex; flex-direction:column; line-height:1.25; }
.ines__head-txt strong{ font-size:15px; letter-spacing:.01em; }
.ines__head-txt small{ font-size:11.5px; color:var(--ines-gold-lt); letter-spacing:.04em; text-transform:uppercase; }
.ines__restart{
	margin-left:auto; background:none; border:0; color:#fff; opacity:.65; cursor:pointer;
	width:32px; height:32px; display:grid; place-items:center; border-radius:8px;
}
.ines__restart svg{ width:17px; height:17px; }
.ines__restart:hover{ opacity:1; background:rgba(255,255,255,.08); }
.ines__close{ background:none; border:0; color:#fff; font-size:26px; line-height:1; cursor:pointer; opacity:.8; padding:0 6px; }
.ines__close:hover{ opacity:1; }

/* Fil de messages */
.ines__log{ flex:1; overflow-y:auto; padding:16px; display:flex; flex-direction:column; gap:10px; background:var(--ines-sable); scrollbar-width:thin; scrollbar-color:#d9d4ca transparent; }
.ines__log::-webkit-scrollbar{ width:6px; }
.ines__log::-webkit-scrollbar-thumb{ background:#d9d4ca; border-radius:3px; }
.ines__msg{
	max-width:84%; padding:10px 14px; border-radius:16px; font-size:14px; line-height:1.55;
	white-space:pre-wrap; word-wrap:break-word; animation:ines-msg .25s ease both;
}
@keyframes ines-msg{ from{ opacity:0; transform:translateY(6px);} to{ opacity:1; transform:none;} }
.ines__msg--bot{ align-self:flex-start; background:#fff; color:var(--ines-ink); border-bottom-left-radius:5px; box-shadow:0 2px 10px rgba(18,18,42,.06); }
.ines__msg--user{ align-self:flex-end; background:var(--ines-navy); color:#fff; border-bottom-right-radius:5px; }

/* Erreur : bulle dédiée + bouton de reprise */
.ines__msg--error{
	align-self:flex-start; background:#fff; border:1px solid #e5c8c2; color:#8a4b3f;
	display:flex; flex-direction:column; gap:8px; border-bottom-left-radius:5px;
}
.ines__msg--error button{
	align-self:flex-start; cursor:pointer; border:1px solid var(--ines-gold); border-radius:999px;
	background:#fff; color:var(--ines-ink); padding:5px 16px; font-size:13px; font-family:inherit;
	transition:background .15s ease,color .15s ease;
}
.ines__msg--error button:hover{ background:var(--ines-navy); color:#fff; border-color:var(--ines-navy); }

/* Fiches de biens : réponses branchées sur le vrai catalogue */
.ines__cards{ display:flex; flex-direction:column; gap:8px; max-width:92%; align-self:flex-start; animation:ines-msg .3s ease both; }
.ines-card{
	display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--ines-ink);
	background:#fff; border:1px solid var(--ines-line); border-radius:14px; padding:8px;
	transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.ines-card:hover{ border-color:var(--ines-gold); box-shadow:0 8px 22px rgba(18,18,42,.10); transform:translateY(-1px); }
.ines-card img, .ines-card__ph{
	flex:0 0 auto; width:64px; height:52px; border-radius:9px; object-fit:cover; display:block; background:#efe7db;
}
.ines-card__txt{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.ines-card__txt strong{ font-size:13px; font-weight:600; line-height:1.3; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.ines-card__txt small{ font-size:12px; color:var(--ines-gold); font-weight:500; }

/* Chargement */
.ines__typing{ align-self:flex-start; display:inline-flex; gap:4px; padding:12px 14px; background:#fff; border-radius:16px; border-bottom-left-radius:5px; box-shadow:0 2px 10px rgba(18,18,42,.06); }
.ines__typing span{ width:7px; height:7px; border-radius:50%; background:var(--ines-gold); animation:ines-blink 1.2s infinite ease-in-out; }
.ines__typing span:nth-child(2){ animation-delay:.2s; }
.ines__typing span:nth-child(3){ animation-delay:.4s; }
@keyframes ines-blink{ 0%,80%,100%{ opacity:.3; transform:translateY(0);} 40%{ opacity:1; transform:translateY(-3px);} }

/* Puces : actions rapides à l'accueil, puis suggestions après chaque réponse */
.ines__chips{
	display:flex; flex-wrap:wrap; gap:6px; padding:10px 14px 4px; background:var(--ines-sable);
	animation:ines-msg .25s ease both;
}
.ines__chips[hidden]{ display:none; }
.ines__chip{
	cursor:pointer; border:1px solid var(--ines-gold); border-radius:999px; background:#fff;
	color:var(--ines-ink); padding:6px 14px; font-size:12.5px; font-family:inherit; line-height:1.3;
	transition:background .15s ease,color .15s ease,transform .15s ease;
}
.ines__chip:hover{ background:var(--ines-navy); border-color:var(--ines-navy); color:#fff; transform:translateY(-1px); }

/* Saisie */
.ines__form{ display:flex; gap:8px; padding:12px 12px 10px; border-top:1px solid var(--ines-line); background:#fff; }
.ines__input{
	flex:1; border:1px solid var(--ines-line); border-radius:999px; padding:11px 16px;
	font-size:14px; color:var(--ines-ink); outline:none; background:#fff; font-family:inherit;
}
.ines__input:focus{ border-color:var(--ines-gold); box-shadow:0 0 0 3px rgba(184,153,95,.15); }
.ines__send{
	flex:0 0 auto; width:42px; height:42px; border:0; border-radius:50%; cursor:pointer;
	background:var(--ines-navy); display:grid; place-items:center; transition:background .18s ease;
}
.ines__send:hover{ background:var(--ines-gold); }
.ines__send svg{ width:20px; height:20px; fill:#fff; }
.ines__send:disabled{ opacity:.5; cursor:default; }

.ines__legal{ margin:0; padding:0 14px 12px; font-size:11px; color:#8a8794; text-align:center; background:#fff; }
.ines__legal a{ color:#8a8794; text-decoration:underline; }

/* Mobile : feuille pleine largeur, ancrée en bas */
@media (max-width:480px){
	.ines{ right:14px; bottom:14px; }
	.ines__panel{
		position:fixed; left:0; right:0; bottom:0; width:100%; max-width:none;
		height:min(86vh,640px); border-radius:18px 18px 0 0;
	}
	.ines__teaser{ width:min(280px,calc(100vw - 90px)); }
}
@media (prefers-reduced-motion:reduce){
	.ines__toggle,.ines__send,.ines-card,.ines__chip{ transition:none; }
	.ines__panel,.ines__msg,.ines__cards,.ines__chips,.ines__teaser{ animation:none; }
	.ines__typing span{ animation:none; }
}

/* Le menu plein écran et le bandeau de consentement se disputaient le bas de l'écran :
   le bandeau recouvrait la dernière entrée du menu (mesuré : 59px de chevauchement).
   Deux calques modaux superposés n'ont de toute façon pas de sens — on masque le
   bandeau tant que le menu est ouvert, il revient à la fermeture. */
body.menu-open .ines-consent { display: none; }
/*
 * Swiss Typefaces — Free Trial (Euclid Circular A + Sainte Colombe).
 * Licence d'essai EULA (Order 369b0306, Licensee: Eweb Agency). Fichiers utilisés
 * TELS QUELS (non renommés/convertis, cf. D.1). Usage LOCAL d'évaluation UNIQUEMENT
 * (C.1/C.2) — NE PAS déployer sur le site public. Voir swisstypefaces-FreeTrial_EULA.pdf.
 *
 * Les versions Trial ne contiennent que le latin de base (A.3). On limite donc leur
 * unicode-range à l'ASCII : les caractères accentués (à é è ç…), €, «», ᵉ… retombent
 * automatiquement sur les polices de repli (Montserrat / Playfair) qui, elles, les ont.
 */

/* ---- Euclid Circular A (Trial) — sans display + UI ---- */
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 300; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-Light-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 300; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-LightItalic-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 400; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-Regular-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 400; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-RegularItalic-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 500; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-Medium-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 500; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-MediumItalic-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 600; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-Semibold-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 600; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-SemiboldItalic-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 700; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-Bold-WebTrial.woff) format("woff"); }
@font-face { font-family: "Euclid Circular A Trial"; font-weight: 700; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/EuclidCircularA-BoldItalic-WebTrial.woff) format("woff"); }

/* ---- Sainte Colombe (Trial) — serif éditorial (accents + chiffres) ---- */
/* Light (300) : le poids qu'Elliman utilise pour ses citations (releve : Sainte Colombe Light
   32px / 39,4). Le theme n'avait que Regular, Medium et Bold. ⚠️ Comme les autres fichiers
   d'evaluation, ces deux-la n'ont PAS les accents (81 glyphes lisibles) : les caracteres
   accentues continueront de tomber sur Playfair Display tant que la licence n'est pas achetee. */
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 300; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-Light-Trial.woff2) format("woff2"); }
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 300; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-LightItalic-Trial.woff2) format("woff2"); }
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 400; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-Regular-Trial.woff2) format("woff2"); }
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 400; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-Italic-Trial.woff2) format("woff2"); }
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 500; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-Medium-Trial.woff2) format("woff2"); }
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 500; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-MediumItalic-Trial.woff2) format("woff2"); }
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 700; font-style: normal; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-Bold-Trial.woff2) format("woff2"); }
@font-face { font-family: "Sainte Colombe Trial"; font-weight: 700; font-style: italic; font-display: swap; unicode-range: U+0000-007F; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/SainteColombeWeb-BoldItalic-Trial.woff2) format("woff2"); }

/* ---- LOGO (charte officielle Bosquet Patrimoine, Fiverr/tal_ni) ----
 * Libre Baskerville 700 (wordmark « Bosquet ») + Nunito 400 (baseline « Patrimoine »).
 * Google Fonts, licence SIL OFL 1.1 → LIBRE d'usage, y compris en PRODUCTION
 * (contrairement aux trials Swiss ci-dessus). Sous-set latin auto-hébergé. */
@font-face { font-family: "Libre Baskerville"; font-weight: 700; font-style: normal; font-display: swap; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/LibreBaskerville-Bold.woff2) format("woff2"); }
@font-face { font-family: "Nunito"; font-weight: 400; font-style: normal; font-display: swap; src: url(//bosquetpatrimoine.com/wp-content/themes/bosquet/assets/fonts/Nunito-Regular.woff2) format("woff2"); }