﻿#bd-accueil{background: radial-gradient(circle at 75% 0%, rgba(217,185,110,.22), transparent 35%), linear-gradient(180deg, #FFF 0%, #F9FBF9 100%); color: var(--text);}
#bd-accueil #main{overflow: hidden;}
#bd-accueil .container{margin: 0 auto; max-width: var(--container); width: 100%;}
#bd-accueil .home-section{padding: 4rem 0;}
#bd-accueil h1{font-size: clamp(2.5rem, 4.3vw, 4.5rem); font-weight: 600; letter-spacing: -.04em; line-height: .98; margin: 0 0 1.5rem 0;}
#bd-accueil h2{font-size: clamp(1.6rem, 2vw, 2.2rem); font-weight: 600; letter-spacing: -.02em; line-height: 1.15; margin: 0 0 1rem 0;}
#bd-accueil h3{font-size: 1.25rem; font-weight: 600; letter-spacing: 0; margin: 0 0 .5rem 0;}

.reveal-on-scroll{opacity: 0; transform: translateY(36px); transition: opacity .8s ease, transform .8s ease;}
.reveal-on-scroll.is-visible{opacity: 1; transform: translateY(0);}
.reveal-child{opacity: 0; transform: translateY(28px); transition: opacity .7s ease, transform .7s ease;}
.reveal-on-scroll.is-visible .reveal-child{opacity: 1; transform: translateY(0);}
.reveal-on-scroll.is-visible .reveal-child:nth-child(1){transition-delay: .05s;}
.reveal-on-scroll.is-visible .reveal-child:nth-child(2){transition-delay: .15s;}
.reveal-on-scroll.is-visible .reveal-child:nth-child(3){transition-delay: .25s;}
.reveal-on-scroll.is-visible .reveal-child:nth-child(4){transition-delay: .35s;}
.reveal-on-scroll.is-visible .reveal-child:nth-child(5){transition-delay: .45s;}

#home-account-deleted{padding-top: 2rem;}
#home-account-deleted .form-alert{margin-bottom: 0;}

#home-hero{padding: 4rem 0 2rem 0; position: relative;}
#home-hero .container{position: relative;}
#home-hero .home-logo{left: 0; position: absolute; top: -2rem; z-index: 4;}
#home-hero .home-logo img{height: auto; transition: opacity .25s ease; width: 170px;}
#home-hero .home-logo:hover img{opacity: .85;}
#home-hero .home-hero-grid{align-items: center; display: grid; gap: 3rem; grid-template-columns: .9fr 1.1fr; min-height: 680px;}
#home-hero .home-hero-content{padding-top: 5rem; position: relative; z-index: 2;}
#home-hero .home-hero-content > p{font-size: 1.25rem; max-width: 500px;}
#home-hero .home-actions{display: flex; flex-wrap: wrap; gap: 1.2rem; margin: 2rem 0;}
#home-hero .home-reinsurance{display: grid; gap: 1rem 1.4rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 2rem; max-width: 520px;}
#home-hero .home-reinsurance div{align-items: flex-start; display: flex; gap: .7rem;}
#home-hero .home-reinsurance div img{display: block; height: 34px; margin-top: .15rem; object-fit: contain; transition: transform .3s ease; width: 34px;}
#home-hero .home-reinsurance div:hover img{transform: scale(1.08);}
#home-hero .home-reinsurance div p{line-height: 1.25;}
#home-hero .home-reinsurance div strong{display: block; font-size: .9rem; line-height: 1.15;}
#home-hero .home-reinsurance div span{color: var(--text-soft); display: block; font-size: .8rem; line-height: 1.25; margin-top: .2rem; text-align: left;}
#home-hero .home-hero-visual{min-height: 640px; position: relative;}
#home-hero .home-hero-visual img{border-radius: 0 0 0 8rem; height: 100%; object-fit: cover; object-position: center; position: absolute; right: -5rem; top: 0; width: calc(100% + 5rem);}
#home-hero .home-hero-visual::after{background: linear-gradient(90deg, #FFF 0%, rgba(255,255,255,.8) 18%, rgba(255,255,255,0) 45%); content: ""; inset: 0; position: absolute;}
#home-hero .home-revelation-card{backdrop-filter: blur(5px); background: rgba(255,255,255,.92); border: 1px solid rgba(217,185,110,.35); border-radius: 1rem; bottom: 1.5rem; box-shadow: 0 24px 60px rgba(17,31,35,.12); left: 3rem; max-width: 380px; padding: 2rem; position: absolute; z-index: 2;}
#home-hero .home-revelation-card .card-kicker{color: var(--text); font-size: .75rem; font-weight: 800; letter-spacing: .05em; margin-bottom: 1.5rem; text-transform: uppercase;}
#home-hero .home-revelation-card .card-kicker i{color: var(--color-revelation); margin-right: .5rem;}
#home-hero .home-revelation-card p{color: var(--text); font-size: 1rem; font-weight: 800; line-height: 1.55; margin-bottom: 1rem;}
#home-hero .home-revelation-card span{color: var(--text-soft); display: block; font-size: .85rem; margin-bottom: .5rem;}
#home-hero .home-revelation-card strong{color: var(--color-main); display: block; font-size: 1.45rem; margin-bottom: .7rem;}
#home-hero .home-revelation-card .progress{background: #E1E5E2; border-radius: 99px; height: 7px; overflow: hidden; width: 160px;}
#home-hero .home-revelation-card .progress em{background: #5A9E37; display: block; height: 100%;}

#home-intro .home-intro-panel{align-items: stretch; background: rgba(255,255,255,.9); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: 0 12px 40px rgba(17,31,35,.05); display: grid; grid-template-columns: 1fr 3fr; overflow: hidden;}
#home-intro .home-intro-panel > div{border-right: 1px solid var(--border); padding: 2rem;}
#home-intro .home-intro-panel ul{display: grid; grid-template-columns: repeat(4,1fr); list-style: none; margin: 0; padding: 0;}
#home-intro .home-intro-panel li{align-items: center; display: flex; flex-direction: column; justify-content: center; padding-bottom: 1.5rem;}
#home-intro .home-intro-panel li:last-child{border-right: 0;}
#home-intro .home-intro-panel li img{display: block; height: 160px; object-fit: contain; width: 160px;}
#home-intro .home-intro-panel li strong{font-weight: 600; font-size: 1.1rem}
#home-intro .home-intro-panel li span{color: var(--text-soft); font-size: .95rem; line-height: 1.35;}

#home-steps{text-align: center;}
#home-steps .home-steps-grid{display: grid; gap: 2rem; grid-template-columns: repeat(4,1fr); margin-top: 2rem; text-align: left;}
#home-steps .home-steps-grid article{background: #FFF; border: 1px solid var(--border); border-radius: .9rem; display: flex; flex-direction: column; overflow: hidden; padding: 1.7rem; position: relative;}
#home-steps .home-steps-grid article:hover{box-shadow: 0 18px 45px rgba(17,31,35,.08); transform: translateY(-4px);}
#home-steps .home-steps-grid article .step-number{color: rgba(42,93,103,.16); display: block; font-size: clamp(3.5rem, 5vw, 5.6rem); font-weight: 800; letter-spacing: -.08em; line-height: .8; margin-bottom: 1.2rem;}
#home-steps .home-steps-grid article h3{position: relative; z-index: 2;}
#home-steps .home-steps-grid article p{font-size: .9rem; margin-bottom: 1rem; position: relative; z-index: 2;}
#home-steps .home-steps-grid ul{background: #FFF; border: 1px solid var(--border); border-radius: .8rem; list-style: none; margin-top: auto; overflow: hidden; padding: 0;}
#home-steps .home-steps-grid li{align-items: center; border-bottom: 1px solid var(--border); display: flex; font-size: .9rem; font-weight: 600; justify-content: space-between; padding: 1rem;}
#home-steps .home-steps-grid li:last-child{border-bottom: 0;}
#home-steps .home-steps-grid li i{color: var(--color-main);}

#home-reveals{text-align: center;}
#home-reveals .home-reveals-grid{display: grid; gap: 2rem; grid-template-columns: repeat(4,1fr); margin-top: 2rem; text-align: left;}
#home-reveals .home-reveals-grid article{background: linear-gradient(135deg, #FFF 0%, #F8FBFA 100%); border: 1px solid var(--border); border-radius: .9rem; display: flex; flex-direction: column; gap: 1rem; min-height: 170px; padding: 1.7rem;}
#home-reveals .home-reveals-grid article:hover{box-shadow: 0 18px 45px rgba(17,31,35,.08); transform: translateY(-4px);}
#home-reveals .home-reveals-grid article img{display: block; height: 200px; margin: 0 auto .75rem auto; object-fit: contain; width: 200px;}
#home-reveals .home-reveals-grid article p{color: var(--text); flex: 1; font-weight: 600;}
#home-reveals .home-note{font-size: 1.15rem; margin-top: 2rem;}
#home-reveals .home-note strong{color: var(--color-main);}

#home-timeline{padding: 2rem 0;}
#home-timeline .home-timeline-panel{align-items: center; background: #FFF; border: 1px solid var(--border); border-radius: var(--radius); display: grid; gap: 3rem; grid-template-columns: 300px 1fr; padding: 3rem;}
#home-timeline .timeline-list{display: grid; gap: 1rem; grid-template-columns: repeat(5,1fr); position: relative; text-align: center;}
#home-timeline .timeline-list::before{border-top: 2px dashed #88AA6F; content: ""; left: 10%; position: absolute; right: 10%; top: 70px;}
#home-timeline .timeline-list article{display: flex; flex-direction: column;position: relative; z-index: 2;}
#home-timeline .timeline-list article img{display: block; margin-bottom: auto; object-fit: contain;}
#home-timeline .timeline-list article:nth-child(1) img{height: 100px; width: 100px;}
#home-timeline .timeline-list article:nth-child(2) img{height: 115px; width: 115px;}
#home-timeline .timeline-list article:nth-child(3) img{height: 130px; width: 130px;}
#home-timeline .timeline-list article:nth-child(4) img{height: 135px; width: 135px;}
#home-timeline .timeline-list article:nth-child(5) img{height: 170px; width: 170px;}
#home-timeline .timeline-list span{align-items: center; background: #FFF9EF; border: 1px solid #EBDCC0; border-radius: 50%; display: flex; font-size: 2rem; height: 84px; justify-content: center; margin: 0 auto 1rem auto; width: 84px;}
#home-timeline .timeline-list strong{display: block; font-size: .9rem;}
#home-timeline .timeline-list em{display: block; font-style: normal; font-weight: 700; margin: .2rem 0;}
#home-timeline .timeline-list p{font-size: .9rem;}

#home-community .community-grid{display: grid; gap: 2rem;}
#home-community .community-intro{margin: 0 auto 1rem auto; max-width: 720px; text-align: center;}
#home-community .community-intro p{margin: 0 auto .75rem auto; max-width: 620px;}
#home-community .community-demo{background: #FFF; border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); margin: 0 auto; max-width: 1000px; padding: 2.5rem; width: 100%;}
#home-community .community-demo-header{align-items: center; border-bottom: 1px solid var(--border); display: flex; justify-content: space-between; margin-bottom: 1.8rem; padding-bottom: 1rem;}
#home-community .community-demo-header span{align-items: center; color: var(--color-main); display: flex; font-size: .85rem; font-weight: 800; gap: .5rem; letter-spacing: .04em; text-transform: uppercase;}
#home-community .community-demo-header strong{background: rgba(217,185,110,.14); border-radius: 999px; color: #A56A00; font-size: .8rem; padding: .45rem .75rem;}
#home-community .community-demo h3{font-size: clamp(1.5rem, 2vw, 2.1rem); margin-bottom: 1.6rem;}
#home-community .community-options{display: grid; gap: 1rem; margin-bottom: 1.5rem;}
#home-community .community-options div{background: #F9FBFA; border: 1px solid var(--border); border-radius: .85rem; display: grid; gap: .6rem; grid-template-columns: 1fr auto; padding: 1rem;}
#home-community .community-options div.active{background: linear-gradient(135deg, #FFF 0%, #FFF8EA 100%); border-color: rgba(217,185,110,.6);}
#home-community .community-options span{color: var(--text); font-weight: 700;}
#home-community .community-options strong{color: var(--color-main); font-size: 1rem;}
#home-community .community-options em{background: #E8EFEB; border-radius: 999px; display: block; grid-column: 1 / -1; height: 8px; overflow: hidden;}
#home-community .community-options em i{background: var(--color-main); border-radius: inherit; display: block; height: 100%;}
#home-community .community-options .active em i{background: var(--color-revelation);}
#home-community .community-insight{align-items: flex-start; background: rgba(42,93,103,.06); border-left: 4px solid var(--color-main); border-radius: .8rem; display: flex; gap: 1rem; margin: 1.5rem 0; padding: 1rem;}
#home-community .community-insight i{color: var(--color-revelation); font-size: 1.2rem; margin-top: .15rem;}
#home-community .community-insight p{color: var(--text); font-size: .95rem; font-weight: 500;}
#home-community .community-stats{display: grid; gap: 1rem; grid-template-columns: repeat(3,1fr); margin: 1.5rem 0;}
#home-community .community-stats div{background: #FAFBFA; border: 1px solid var(--border); border-radius: .8rem; padding: 1rem; text-align: center;}
#home-community .community-stats strong{color: var(--color-main); display: block; font-size: 2rem; line-height: 1;}
#home-community .community-stats span{color: var(--text-soft); display: block; font-size: .8rem; line-height: 1.25; margin-top: .45rem;}
#home-community .community-demo .btn-primary{margin-top: 2rem; width: 100%;}

#home-pricing{padding-bottom: 4rem; padding-top: 2rem;}
#home-pricing .pricing-grid{display: grid; gap: 2rem; grid-template-columns: repeat(3,1fr); margin-top: 2rem;}
#home-pricing .pricing-grid article{background: #FFF; border: 1px solid var(--border); border-radius: var(--radius); box-shadow: 0 18px 45px rgba(17,31,35,.06); padding: 2rem;}
#home-pricing .pricing-grid article:not(.premium){background: #FCFDFC;}
#home-pricing .pricing-grid article:hover{box-shadow: 0 18px 45px rgba(17,31,35,.08); transform: translateY(-4px);}
#home-pricing .pricing-grid article:last-child{background: #F9FBFA;}
#home-pricing .pricing-grid article:last-child:hover{box-shadow: none; transform: none}
#home-pricing .pricing-grid article.premium{background: linear-gradient(135deg, #FFF 0%, #FFF5E3 100%); border-color: #ECD8AA; transform: scale(1.02);}
#home-pricing .pricing-grid h3{align-items: center; display: flex; justify-content: space-between;}
#home-pricing .pricing-grid h3 span{background: #EFF8E9; border-radius: 99px; color: #32732E; font-size: .75rem; padding: .35rem .7rem;}
#home-pricing .pricing-grid .premium{box-shadow: 0 20px 50px rgba(217,185,110,.18);}
#home-pricing .pricing-grid .premium h3 span{background: rgba(217,185,110,.18); color: #C87800;}
#home-pricing .pricing-grid ul{color: var(--text-soft); line-height: 1.9; margin: 1rem 0; padding-left: 1.2rem;}
#home-pricing .pricing-grid strong{color: var(--color-main); display: block; font-size: .9rem;}

#home-steps .home-steps-grid article, #home-reveals .home-reveals-grid article, #home-pricing .pricing-grid article{transition: box-shadow .35s ease, transform .35s ease;}

#footer-public{background: #0E4450; color: #FFF; margin-top: 4rem;}
#footer-public a{color: inherit; text-decoration: none;}
#footer-public .footer-container{display: grid; gap: 3rem; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; margin: 0 auto; max-width: calc(var(--container) + 6rem); padding: 4rem 3rem;}
#footer-public .footer-about{max-width: 320px;}
#footer-public .footer-baseline{color: rgba(255,255,255,.75); font-size: .95rem; margin-top: 1rem;}
#footer-public .footer-column h3{font-size: 1rem; font-weight: 700; margin: 0 0 1rem 0;}
#footer-public .footer-column ul{list-style: none; margin: 0; padding: 0;}
#footer-public .footer-column li{margin-bottom: .75rem;}
#footer-public .footer-column a{color: rgba(255,255,255,.75); transition: color .25s ease;}
#footer-public .footer-column .footer-disabled-link{color: rgba(255,255,255,.48); cursor: default; display: inline-block;}
#footer-public .footer-column a:hover{color: #FFF;}
#footer-public .footer-logo img{height: auto; width: 170px;}
#footer-public .footer-socials{display: flex; gap: .75rem;}
#footer-public .footer-socials a,#footer-public .footer-socials .footer-social-placeholder{align-items: center; background: rgba(255,255,255,.08); border-radius: 50%; display: flex; font-size: 1rem; height: 42px; justify-content: center; transition: background .25s ease, transform .25s ease; width: 42px;}
#footer-public .footer-socials a:hover{background: rgba(255,255,255,.18); transform: translateY(-2px);}
#footer-public .footer-socials .footer-social-placeholder{color: rgba(255,255,255,.62); cursor: default;}
#footer-public .footer-bottom{border-top: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.6); font-size: .85rem; padding: 1.25rem 3rem; text-align: center;}



@media (prefers-reduced-motion: reduce){

	.reveal-on-scroll, .reveal-child{opacity: 1; transform: none; transition: none!important;}
	.reveal-on-scroll.is-visible .reveal-child{opacity: 1; transform: none;}

}

@media screen and (max-width: 1500px){

    #bd-accueil .container{padding-left: 2rem; padding-right: 2rem;}

    #home-hero .home-logo{left: 2rem;}
    #home-hero .home-hero-visual img{right: 0; width: 100%;}

}

@media screen and (max-width: 1200px){

	#home-hero{padding-top: 5rem;}
	#home-hero .home-hero-grid{gap: 2rem; grid-template-columns: 1fr;}
	#home-hero .home-hero-content{text-align: center;}
	#home-hero .home-hero-content > p{margin: 0 auto; max-width: 680px;}
	#home-hero .home-actions{justify-content: center;}
	#home-hero .home-reinsurance{margin-left: auto; margin-right: auto;}
	#home-hero .home-hero-visual{margin: 0 auto; max-width: 900px; min-height: 520px; width: 100%;}
	#home-hero .home-revelation-card{bottom: 2rem; left: 2rem;}

	#home-intro .home-intro-panel{grid-template-columns: 1fr;}
	#home-intro .home-intro-panel > div{border-bottom: 1px solid var(--border); border-right: 0; text-align: center;}

	#home-steps .home-steps-grid, #home-reveals .home-reveals-grid{grid-template-columns: repeat(2,1fr);}

	#home-timeline .home-timeline-panel{grid-template-columns: 1fr;}
	#home-timeline .timeline-intro{text-align: center;}
	#home-timeline .timeline-intro p{margin: 0 auto; max-width: 520px;}

}

@media screen and (max-width: 1024px){

	#home-pricing .pricing-grid{grid-template-columns: 1fr;}
	#home-pricing .pricing-grid article.premium{transform: none;}

    #footer-public .footer-container{grid-template-columns: repeat(2,1fr);}

}

@media screen and (max-width: 767px){

	#bd-accueil .container{padding-left: 1rem; padding-right: 1rem;}
	#bd-accueil .home-section{padding: 3rem 0;}
	#bd-accueil h1{font-size: clamp(2.2rem, 12vw, 3.4rem);}
	#bd-accueil h2{font-size: clamp(1.8rem, 8vw, 2.4rem);}

	#home-hero{padding-top: 4rem;}
	#home-hero .home-logo{left: 1rem; top: -2.5rem;}
	#home-hero .home-logo img{width: 135px;}
	#home-hero .home-hero-content{padding-top: 3.5rem}
	#home-hero .home-actions{display: grid; grid-template-columns: 1fr;}
	#home-hero .home-actions a{width: 100%;}
	#home-hero .home-hero-visual{aspect-ratio: 16 / 10; display: block; min-height: auto;}
	#home-hero .home-hero-visual img{border-radius: var(--radius); height: 100%; object-fit: cover; position: relative; right: auto; top: auto; width: 100%;}
	#home-hero .home-revelation-card{display: none;}

	#home-intro .home-intro-panel ul{grid-template-columns: 1fr;}
	#home-intro .home-intro-panel li{border-bottom: 1px solid var(--border); padding: 1.5rem;}
	#home-intro .home-intro-panel li:last-child{border-bottom: 0;}
	#home-intro .home-intro-panel li img{height: 130px; width: 130px;}

	#home-steps .home-steps-grid, #home-reveals .home-reveals-grid{grid-template-columns: 1fr;}

	#home-reveals .home-reveals-grid article p{text-align: center}

	#home-timeline .home-timeline-panel{padding: 2rem 1rem;}
	#home-timeline .timeline-list{grid-template-columns: 1fr;}
	#home-timeline .timeline-list::before{display: none;}
	#home-timeline .timeline-list article img{margin: 0 auto .8rem auto!important;}

	#home-community .community-demo{padding: 1.2rem;}
	#home-community .community-demo-header{align-items: flex-start; flex-direction: column; gap: .8rem;}
	#home-community .community-demo h3{font-size: 1.55rem;}
	#home-community .community-stats{grid-template-columns: 1fr;}

    #footer-public .footer-container{grid-template-columns: 1fr; padding: 3rem 1.5rem;}
    #footer-public .footer-about{max-width: none;}

}

@media screen and (max-width: 500px){

	#home-hero .home-reinsurance{grid-template-columns: 1fr;}
	
}

/* Ajustements Ã©ditoriaux Revely 1.1 : design conservÃ©, contenus plus narratifs. */
#home-community .community-stats strong{font-size:1.15rem; line-height:1.2;}
#home-community .community-stats span{line-height:1.35;}
#home-hero .home-revelation-card strong{font-size:1.15rem; line-height:1.35; margin-bottom:0;}

