/* Domoria Habitat — CSS partagé par mentions-legales.html, politique-confidentialite.html et parrainage.html.
   parrainage.html n'utilise que le bloc .process-steps/.reward-banner (composant "étapes + récompense"
   identique sur les 3 pages) ; .legal-wrap/.legal-update/.todo ne concernent que les 2 pages légales. */

.section-subtitle { max-width: 800px; }
.page-hero h1 { font-size: clamp(2.5rem, 5vw, 4.5rem); }

.process-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 2rem; margin-top: 3rem; }
.process-step { background: var(--color-white); padding: 3rem 2rem; border-radius: var(--radius-md); text-align: center; box-shadow: var(--shadow-sm); position: relative; border-top: 4px solid var(--color-accent-1); transition: var(--transition-normal); }
.process-step:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); }
.step-num { width: 60px; height: 60px; background: var(--color-bg-main); color: var(--color-accent-1); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1.5rem; font-family: var(--font-serif); margin: 0 auto 1.5rem auto; border: 2px solid var(--color-accent-light); }
.process-step h4 { font-family: var(--font-serif); font-size: 1.4rem; margin-bottom: 1rem; color: var(--color-text-main); }
.process-step p { color: var(--color-text-light); font-size: 1.05rem; }

.reward-banner { background: linear-gradient(135deg, var(--color-bg-darker) 0%, var(--color-white) 100%); padding: 4rem 2rem; border-radius: var(--radius-lg); margin-top: 4rem; text-align: center; box-shadow: var(--shadow-md); border: 1px solid var(--color-accent-light); }
.reward-banner h3 { font-family: var(--font-serif); font-size: 2rem; margin-bottom: 1rem; color: var(--color-text-main); }
.reward-banner p { font-size: 1.15rem; color: var(--color-text-light); max-width: 700px; margin: 0 auto; line-height: 1.8; }
.reward-icon { width: 80px; height: 80px; margin: 0 auto 1.5rem auto; display: flex; align-items: center; justify-content: center; background: var(--color-accent-1); border-radius: 50%; color: var(--color-white); }

.legal-wrap{max-width:820px;margin:0 auto;}
.legal-wrap h2{font-family:var(--font-serif);color:var(--color-text-main);font-size:1.5rem;margin:2.5rem 0 1rem;}
.legal-wrap h2:first-of-type{margin-top:0;}
.legal-wrap p,.legal-wrap li{color:#4a3f36;line-height:1.75;margin-bottom:0.8rem;}
.legal-wrap ul{padding-left:1.3rem;margin-bottom:1rem;}
.legal-wrap a{color:var(--color-accent-1);}
.legal-update{font-size:0.9rem;color:#6B5D4F;margin-top:3rem;font-style:italic;}
.todo{background:#FBF1E8;border-bottom:2px solid var(--color-accent-1);padding:0 4px;font-weight:600;color:var(--color-text-main);}
