/* Estime ma maison · prototype « mixte » : la structure de l'interface Google (google.css, chargée avant)
   avec l'identité du site : dégradé corail → rose → violet, titres en Sora, halo coloré, touches de nuit. */
@font-face { font-family: 'Sora'; src: url('/polices/sora-600-800.woff2') format('woff2'); font-weight: 600 800; font-display: swap; }
:root {
  --degrade: linear-gradient(120deg, #FF6B5B 0%, #EC4899 48%, #8B5CF6 100%);
  --violet: #6D28D9; --violet-vif: #8B5CF6; --violet-fond: #F2EDFE; --nuit: #0B0C1F; --citron: #A3E635;
  --bleu: #6D28D9; --bleu-fond: #F2EDFE; --bleu-texte: #3B1A86;
  --titre: 'Sora', 'Roboto', -apple-system, sans-serif;
}

/* Accueil : halo de couleur derrière la recherche, grille de points discrète */
.g-accueil { position: relative; isolation: isolate; }
.g-accueil::before { content: ''; position: absolute; z-index: -1; left: 50%; top: 0; width: min(1100px, 140vw); height: 620px; transform: translateX(-50%);
  background: radial-gradient(38% 42% at 30% 38%, rgba(255,107,91,0.16), transparent 70%), radial-gradient(36% 40% at 70% 34%, rgba(139,92,246,0.18), transparent 70%), radial-gradient(30% 34% at 50% 70%, rgba(236,72,153,0.12), transparent 70%); }
.g-accueil::after { content: ''; position: absolute; z-index: -1; inset: 0 0 auto; height: 560px; opacity: .55; background-image: radial-gradient(rgba(109,40,217,0.12) 1.2px, transparent 1.2px); background-size: 24px 24px; -webkit-mask-image: radial-gradient(55% 60% at 50% 35%, #000, transparent 75%); mask-image: radial-gradient(55% 60% at 50% 35%, #000, transparent 75%); }
.g-marque h1 { font-family: var(--titre); font-weight: 800; letter-spacing: -0.04em; }
.g-accroche { font-size: 18px; }

/* Barre de recherche : anneau dégradé au survol et à la saisie */
.g-recherche { border: 1px solid #E4E2EE; box-shadow: 0 10px 30px rgba(109,40,217,0.08); }
.g-recherche:hover, .g-recherche:focus-within { border-color: transparent; background: linear-gradient(#fff, #fff) padding-box, var(--degrade) border-box; border: 2px solid transparent; box-shadow: 0 14px 40px rgba(139,92,246,0.18); padding: 0 19px; }
.g-ico { fill: #8B5CF6; }
.suggestions { box-shadow: 0 16px 34px rgba(109,40,217,0.18); }
.suggestions li[aria-selected="true"], .suggestions li:hover { background: var(--violet-fond); }

/* Pastilles et boutons aux couleurs de la marque */
.bascule, .g-pastille-champ { border-color: #D9D5E8; }
.bascule button + button { border-left-color: #D9D5E8; }
.bascule button[aria-pressed="true"] { background: var(--violet-fond); color: var(--bleu-texte); }
.g-bouton, .btn-principal { background: var(--degrade); background-size: 160% 100%; box-shadow: 0 8px 22px rgba(236,72,153,0.28); transition: background-position .3s ease, box-shadow .2s ease, transform .15s ease; }
.g-bouton:hover, .btn-principal:hover { background-position: 100% 0; box-shadow: 0 12px 28px rgba(139,92,246,0.32); transform: translateY(-1px); }
.g-bouton { height: 44px; padding: 0 28px; font-size: 15px; }
.g-bouton-tonal { height: 44px; font-size: 15px; }
.btn-citron { background: var(--citron); color: var(--nuit); }
.g-confiance span::before { color: #7CC21A; }
.info-dpe { background: var(--violet-fond); }

/* Fiche résultat : chiffres en Sora et en couleur, jauge et barres en dégradé */
.g-carte-resultat { border: 1px solid #ECE9F5; box-shadow: 0 24px 60px rgba(109,40,217,0.10); position: relative; overflow: hidden; }
.g-carte-resultat::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: var(--degrade); }
.valeur b { font-family: var(--titre); font-weight: 800; letter-spacing: -0.04em; }
.jauge { background: linear-gradient(90deg, #FFD3CD, #F9C5DF 50%, #DCCFFD); }
.jauge i { background: var(--nuit); }
.fait b { font-family: var(--titre); font-weight: 700; }
.fait:nth-child(1) b { color: #E5484D; } .fait:nth-child(2) b { color: #D6336C; } .fait:nth-child(3) b { color: var(--violet); }
.fait { background: #F7F5FC; }
.annees div i { background: #E8E2F8; }
.annees div:last-child i { background: var(--degrade); }
.grand-pixel i.on { background: var(--degrade); }
.relation { background: linear-gradient(180deg, #FBFAFF, #fff); }
.form-relation label.agence:has(input:checked) { background: #F7F3FF; border-color: var(--violet-vif); }
.agence input, .accord input { accent-color: var(--violet-vif); }

/* Sections : titres Sora, net vendeur sur fond de nuit, cartes à pastille dégradée */
.g-section h2 { font-family: var(--titre); font-weight: 800; letter-spacing: -0.03em; font-size: 28px; }
.nv-resultat { background: linear-gradient(160deg, #15163A, var(--nuit) 65%); color: #fff; }
.nv-resultat small { color: rgba(255,255,255,0.65); }
.nv-resultat > b { font-family: var(--titre); font-weight: 800; color: var(--citron); letter-spacing: -0.03em; }
.nv-detail div { color: rgba(255,255,255,0.75); border-top-color: rgba(255,255,255,0.12); }
.nv-detail b { color: #fff; }
.g-carte-lien { background: #F7F5FC; border: 1px solid #ECE9F5; }
.g-carte-lien:hover { background: #F1ECFC; }
.g-pastille-ico { background: var(--degrade); color: #fff; }
.g-faq summary { font-weight: 500; }

/* Pied de page de nuit, comme le reste de la marque */
.g-pied { background: var(--nuit); color: rgba(255,255,255,0.6); }
.g-pied-pays { border-bottom-color: rgba(255,255,255,0.1); color: rgba(255,255,255,0.8); }
.g-pied-liens a { color: rgba(255,255,255,0.65); }
.g-pied-liens a:hover { color: #fff; }
