.accueil-gains{ scroll-margin-top: 70px; }
.accueil-gains .scene-visuel.gains-zone{ background: #103C32; display: grid; place-items: center; }
.gains-svg{ width: 100%; height: 100%; display: block; font-family: var(--corps, sans-serif); --g-lab: 16px; }
.accueil-gains .scene-entete button{ flex-wrap: wrap; row-gap: 8px; }
.gains-nature{ flex: 0 0 100%; font: 500 13px/1.3 var(--corps, sans-serif); opacity: 1; }
.gains-nature.is-gagne{ font-weight: 600; opacity: 1; }
.accueil-suite-gains{ background: var(--ivoire, #F1F0DF); padding: 0 var(--marge, clamp(16px, 4vw, 64px)) 48px; max-width: 1640px; margin: 0 auto; }
.accueil-suite-gains a{ font-size: 16px; text-underline-offset: 5px; color: #103C32; }
.scene--pleine .gains-nature{ display: block; width: 100%; }
.accueil-gains .scene[data-mode="epingle"] .scene-cadre{ grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); }
.accueil-gains .scene[data-mode="empile"] .scene-visuel{ height: auto; aspect-ratio: 4 / 5; min-height: 0; max-height: 640px; border-radius: 0; }
.accueil-gains .scene--cumul[data-mode="epingle"] #gains-accueil-t{ font-size: clamp(1.5rem, 4.4svh, 2.25rem); margin-bottom: 10px; }
.accueil-gains .scene--cumul[data-mode="epingle"] .scene-texte{ padding-bottom: 10px; font-size: 1rem; line-height: 1.45; max-width: 62ch; }
.accueil-gains .scene--cumul[data-mode="epingle"] .scene-entete button{ padding-block: 10px 6px; }
.accueil-gains .scene--cumul[data-mode="epingle"] .scene-repere{ margin-bottom: 8px; }
.g-rue{ fill: rgba(241, 240, 223, .09); stroke: rgba(241, 240, 223, .16); stroke-width: 1; }
.g-axe{ fill: none; stroke: rgba(241, 240, 223, .3); stroke-width: 2; stroke-dasharray: 10 10; }
.g-depot rect{ fill: rgba(185, 198, 163, .2); stroke: #B9C6A3; stroke-width: 2; }
.g-parcelle{ fill: rgba(185, 198, 163, .1); stroke: rgba(185, 198, 163, .34); stroke-width: 1.2; }
.g-allee{ fill: rgba(241, 240, 223, .12); }
.g-arbre{ fill: #5E7F63; }
.g-arbre-lumiere{ fill: #86A685; }
.g-terrasse{ fill: rgba(241, 240, 223, .16); }
.g-piscine{ fill: #B9C6A3; stroke: #F1F0DF; stroke-width: 2.5; }
.g-eau{ fill: none; stroke: rgba(241, 240, 223, .85); stroke-width: 2; stroke-linecap: round; }
.g-fissure{ fill: none; stroke: #103C32; stroke-width: 1.6; }
.g-maison.is-ancienne .g-piscine{ fill: #8CA08A; }
.g-ombre{ fill: rgba(0, 0, 0, .34); }
.g-toit-haut{ fill: #F1F0DF; }
.g-toit-bas{ fill: #D5D3BA; }
.g-faitage{ stroke: #103C32; stroke-width: 1.2; opacity: .55; }
.g-toit-cadre{ fill: none; stroke: #103C32; stroke-width: 1.8; }
.g-mur{ fill: #A9AE92; stroke: #103C32; stroke-width: 1.2; }
.g-fenetre{ fill: #103C32; }
.g-porte{ fill: #5E4F3A; }
.g-cheminee{ fill: #B9B7A0; stroke: #103C32; stroke-width: 1.2; }
.g-etiquette{ font-size: var(--g-lab); font-weight: 600; fill: #F1F0DF; }
.g-depot .g-etiquette{ font-size: var(--g-lab); }
.g-mention{ font-size: var(--g-lab); fill: #B9C6A3; }
.g-couche{ transition: opacity .45s var(--entree, ease); }
.g-ico path{ fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.g-ico--puce{ color: #F1F0DF; }
.g-ico--legende{ color: #103C32; }
.g-ico--badge{ color: #103C32; }
.g-legende-fond{ fill: rgba(241, 240, 223, .12); stroke: rgba(241, 240, 223, .36); stroke-width: 1.2; }
.g-legende-rond{ fill: #B9C6A3; }
.g-legende-texte{ font-size: var(--g-lab); font-weight: 600; fill: #F1F0DF; }
.g-repere{ fill: none; stroke: #B9C6A3; stroke-width: 2.5; stroke-dasharray: 1; stroke-dashoffset: 1; }
.g-puce-fond{ fill: #F1F0DF; }
.g-puce-rond{ fill: #103C32; }
.g-puce-texte{ font-size: var(--g-lab); font-weight: 600; fill: #103C32; }
.g-panneau path, .g-grue path{ fill: none; stroke: #F1F0DF; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.g-panneau-fond{ fill: #B9C6A3; stroke: #F1F0DF; stroke-width: 1.6; }
.g-grue-sol{ stroke: #B9C6A3 !important; stroke-width: 3 !important; }
.g-carte-fond{ fill: #F1F0DF; stroke: #103C32; stroke-width: 1.6; }
.g-carte-lignes{ fill: none; stroke: #103C32; stroke-width: 1.8; stroke-linecap: round; }
.g-horloge circle{ fill: #B9C6A3; stroke: #103C32; stroke-width: 1.6; }
.g-horloge path{ fill: none; stroke: #103C32; stroke-width: 1.6; stroke-linecap: round; }
.g-anneau-trait{ fill: none; stroke: #B9C6A3; stroke-width: 3; stroke-dasharray: 1; stroke-dashoffset: 1; }
.g-badge rect{ fill: #B9C6A3; stroke: #103C32; stroke-width: 1.6; }
.g-hachure{ stroke: #F1F0DF; stroke-width: 2; opacity: .55; }
.g-bande{ stroke: rgba(241, 240, 223, .6); stroke-width: 1; }
.g-fantome{ fill: none; stroke: #B9C6A3; stroke-width: 2.5; stroke-dasharray: 5 4; }
.g-visite{ fill: none; stroke: #F1F0DF; stroke-width: 3; stroke-dasharray: 1; stroke-dashoffset: 1; }
.g-croix rect{ fill: #103C32; stroke: #F1F0DF; stroke-width: 2.5; }
.g-croix path{ stroke: #F1F0DF; stroke-width: 3; stroke-linecap: round; }
.g-tour{ fill: none; stroke: #B9C6A3; stroke-width: 3.5; stroke-dasharray: 9 7; stroke-linejoin: round; }
.g-epingle rect{ fill: #F1F0DF; stroke: #103C32; stroke-width: 3; }
.g-epingle .g-epingle-coeur{ fill: #103C32; stroke: none; }
@media (prefers-reduced-motion: reduce){.g-couche{ transition: none; }
}
@media (max-width: 1199px){.accueil-gains .scene--cumul[data-mode="epingle"] #gains-accueil-t{ font-size: clamp(1.3rem, 3.6svh, 1.75rem); margin-bottom: 8px; }
}
@media (max-height: 800px){.accueil-gains .scene--cumul[data-mode="epingle"] .scene-texte{ font-size: .9375rem; line-height: 1.4; padding-bottom: 6px; }
.accueil-gains .scene--cumul[data-mode="epingle"] .scene-entete button{ padding-block: 7px 3px; font-size: 1.0625rem; }
.accueil-gains .scene--cumul[data-mode="epingle"] #gains-accueil-t{ font-size: clamp(1.25rem, 3.4svh, 1.625rem); margin-bottom: 6px; }
.accueil-gains .gains-nature{ font-size: 12px; }
}
