.page-home{padding-top: 50px}.hero-section{position: relative;min-height: 92vh;display: flex;align-items: center;justify-content: center;background: url('/assets/img/hero-accueil-1440.webp') center center / cover no-repeat;overflow: hidden}@media (max-width: 600px){.hero-section{background-image: url('/assets/img/hero-accueil-mobile.webp')}}.hero-overlay{position: absolute;inset: 0;background: linear-gradient(180deg,rgba(47,61,77,.9) 0%,rgba(47,61,77,.7) 50%,rgba(47,61,77,.75) 100%);z-index: 1}.hero-content{position: relative;z-index: 2;max-width: 940px;text-align: center;padding: 2rem;margin: 36px 0}.hero-tagline{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);text-transform: uppercase;letter-spacing: .35em;font-size: clamp(.7rem,1.1vw,.85rem);color: var(--e-global-color-secondary);margin-bottom: 1.5rem;font-weight: 500}.hero-content h1{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(2.2rem,5.2vw,4.2rem);color: #fff;line-height: 1.15;font-weight: 700;max-width: 12.8em;margin: 0 auto 1.5rem}@media (max-width: 519px){.hero-content h1{max-width: 8.3em}}.hero-content h1 span{color: var(--e-global-color-secondary);font-style: italic}.hero-subtitle{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: clamp(.95rem,1.3vw,1.15rem);color: rgba(255,255,255,.85);line-height: 1.7;max-width: 640px;margin: 0 auto 2.5rem;font-weight: 300}.hero-ctas{display: flex;gap: 1rem;justify-content: center;flex-wrap: wrap}.btn-primary,.btn-secondary{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .85rem;font-weight: 600;letter-spacing: .12em;text-transform: uppercase;padding: 1rem 2.4rem;border-radius: 0;text-decoration: none;transition: all .35s ease;display: inline-block}.btn-primary{background: var(--e-global-color-secondary);color: var(--e-global-color-primary)}.btn-primary:hover{background: #fff;color: var(--e-global-color-primary)}.btn-secondary{background: transparent;color: #fff;border: 1px solid rgba(255,255,255,.5)}.btn-secondary:hover{border-color: var(--e-global-color-secondary);color: var(--e-global-color-secondary)}.trust-bar{background: var(--e-global-color-primary);padding: 2.8rem 2rem}.trust-inner{max-width: 1100px;margin: 0 auto;display: flex;align-items: center;justify-content: center;gap: 3rem;flex-wrap: wrap}.trust-item{text-align: center;display: flex;flex-direction: column;gap: .35rem}.trust-number{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(1.8rem,3vw,2.6rem);color: var(--e-global-color-secondary);font-weight: 700;line-height: 1}.trust-label{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .78rem;text-transform: uppercase;letter-spacing: .2em;color: rgba(255,255,255,.65);font-weight: 400}.trust-divider{width: 1px;height: 48px;background: rgba(255,255,255,.15)}@media (max-width: 680px){.trust-inner{gap: 1.8rem 2.5rem}.trust-divider{display: none}.trust-inner{justify-content: space-around}}.intro-section{padding: clamp(4rem,8vw,7rem) 2rem;background: #FAFAF7}.intro-inner{max-width: 1160px;margin: 0 auto;display: grid;grid-template-columns: 1fr 1fr;gap: 4rem;align-items: center}.section-label{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);text-transform: uppercase;letter-spacing: .3em;font-size: .75rem;color: #7A5E44;font-weight: 600;margin-bottom: 1.2rem}.intro-text h2{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(1.7rem,3vw,2.6rem);color: var(--e-global-color-primary);line-height: 1.25;margin: 0 0 1.5rem;font-weight: 700}.intro-text h2 em{color: var(--e-global-color-accent);font-style: italic}.intro-desc{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .98rem;line-height: 1.8;color: var(--e-global-color-text);margin-bottom: 2rem;font-weight: 300}.text-link{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .82rem;font-weight: 600;letter-spacing: .08em;text-transform: uppercase;color: #7A5E44;text-decoration: none;transition: color .3s}.text-link:hover{color: var(--e-global-color-primary)}.intro-image{position: relative}.intro-image img{width: 100%;height: 480px;object-fit: cover;display: block}.intro-image-accent{position: absolute;bottom: -20px;right: -20px;width: 45%;height: 45%;border: 2px solid var(--e-global-color-secondary);z-index: -1}@media (max-width: 860px){.intro-inner{grid-template-columns: 1fr;gap: 2.5rem}.intro-image-accent{display: none}}.adg-services-hub{padding: clamp(3.5rem,7vw,6rem) 2rem;background: #fff}.adg-services-hub-inner{max-width: 1200px;margin: 0 auto}.adg-services-hub-header{text-align: center;margin-bottom: 3.5rem}.adg-services-hub-tag{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);text-transform: uppercase;letter-spacing: .3em;font-size: .75rem;color: #7A5E44;font-weight: 600;margin-bottom: 1rem}.adg-services-hub-header h2{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(1.6rem,3vw,2.4rem);color: var(--e-global-color-primary);font-weight: 700;max-width: 650px;margin: 0 auto;line-height: 1.3}.adg-hub-category{margin-bottom: 3rem}.adg-hub-category:last-child{margin-bottom: 0}.adg-hub-heading{display: flex;align-items: center;gap: 1.5rem;margin-bottom: 1.5rem}.adg-hub-line{flex: 1;height: 1px;background: rgba(47,61,77,.1)}.adg-hub-heading h3{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: 1.3rem;font-weight: 700;color: var(--e-global-color-primary);white-space: nowrap;margin: 0}.adg-hub-grid--3x2,.adg-hub-grid--3,.adg-hub-grid--4{display: flex;flex-wrap: wrap;justify-content: center;gap: 1.3rem}.adg-hub-grid > .adg-hub-card{flex: 0 0 calc((100% - 3 * 1.3rem) / 4 - .1px);min-width: 0}.adg-hub-card{text-decoration: none !important;display: flex;flex-direction: column;background: #FAFAF7;border: 1px solid rgba(47,61,77,.06);padding: 1.8rem 1.5rem 1.5rem;transition: transform .35s ease,box-shadow .35s ease,border-color .35s ease}.adg-hub-card:hover{transform: translateY(-3px);box-shadow: 0 12px 36px rgba(47,61,77,.09);border-color: rgba(219,200,135,.35)}.adg-hub-card h4{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: 1.08rem;font-weight: 700;color: var(--e-global-color-primary) !important;margin: 0 0 .6rem;line-height: 1.3}.adg-hub-card p{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .82rem;font-weight: 300;color: var(--e-global-color-text) !important;line-height: 1.65;margin: 0;flex: 1}.adg-hub-arrow{display: block;font-size: 1.1rem;color: var(--e-global-color-accent);margin-top: 1rem;transition: color .3s ease,transform .3s ease}.adg-hub-card:hover .adg-hub-arrow{color: var(--e-global-color-secondary);transform: translateX(4px)}.adg-hub-card:hover,.adg-hub-card:focus,.adg-hub-card:active,.adg-hub-card:visited{color: inherit !important}@media (max-width: 960px){.adg-hub-grid > .adg-hub-card{flex-basis: calc((100% - 1.3rem) / 2 - .1px)}}@media (max-width: 580px){.adg-hub-grid--3x2,.adg-hub-grid--3,.adg-hub-grid--4{max-width: 420px;margin: 0 auto}.adg-hub-grid > .adg-hub-card{flex-basis: 100%}.adg-hub-heading{gap: 1rem}.adg-hub-heading h3{font-size: 1.1rem}}.portfolio-section{padding: clamp(4rem,8vw,7rem) 2rem;background: var(--e-global-color-primary)}.portfolio-inner{max-width: 1200px;margin: 0 auto}.portfolio-header{text-align: center;margin-bottom: 3rem}.portfolio-header .section-label{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);text-transform: uppercase;letter-spacing: .3em;font-size: .75rem;color: var(--e-global-color-secondary);font-weight: 600;margin-bottom: 1rem}.portfolio-header h2{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(1.6rem,3vw,2.4rem);color: #fff;font-weight: 700;line-height: 1.3}.portfolio-grid{display: grid;grid-template-columns: repeat(3,1fr);grid-template-rows: auto auto;gap: 1.2rem}.portfolio-item{position: relative;overflow: hidden;cursor: pointer}.portfolio-large{grid-row: 1 / 3}.portfolio-item img{width: 100%;height: 100%;object-fit: cover;display: block;transition: transform .6s ease;min-height: 240px}.portfolio-item:hover img{transform: scale(1.06)}.portfolio-overlay{position: absolute;inset: 0;background: linear-gradient(0deg,rgba(47,61,77,.85) 0%,transparent 55%);display: flex;flex-direction: column;justify-content: flex-end;padding: 1.5rem;opacity: 0;transition: opacity .4s ease}.portfolio-item:hover .portfolio-overlay{opacity: 1}.portfolio-cat{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .68rem;text-transform: uppercase;letter-spacing: .2em;color: var(--e-global-color-secondary);font-weight: 600;margin-bottom: .4rem}.portfolio-overlay h3{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: 1.15rem;color: #fff;font-weight: 600;margin: 0}.portfolio-cta{text-align: center;margin-top: 3rem}.btn-outline{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .82rem;font-weight: 600;letter-spacing: .12em;text-transform: uppercase;padding: 1rem 2.8rem;border: 1px solid var(--e-global-color-secondary);color: var(--e-global-color-secondary);text-decoration: none;transition: all .35s ease;display: inline-block}.btn-outline:hover{background: var(--e-global-color-secondary);color: var(--e-global-color-primary)}@media (max-width: 768px){.portfolio-grid{grid-template-columns: 1fr}.portfolio-large{grid-row: auto}.portfolio-overlay{opacity: 1}}.process-section{padding: clamp(4rem,8vw,7rem) 2rem;background: #FAFAF7}.process-inner{max-width: 1100px;margin: 0 auto}.process-header{text-align: center;margin-bottom: 4rem}.process-header .section-label{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);text-transform: uppercase;letter-spacing: .3em;font-size: .75rem;color: #7A5E44;font-weight: 600;margin-bottom: 1rem}.process-header h2{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(1.6rem,3vw,2.4rem);color: var(--e-global-color-primary);font-weight: 700;line-height: 1.3}.process-steps{display: grid;grid-template-columns: repeat(4,1fr);gap: 2rem;position: relative}.process-step{text-align: center;position: relative}.step-number{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: 2.8rem;font-weight: 700;color: #A58B31;line-height: 1;margin-bottom: 1rem}.step-line{width: 40px;height: 2px;background: var(--e-global-color-secondary);margin: 0 auto 1.3rem}.process-step h3{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: 1.15rem;color: var(--e-global-color-primary);margin: 0 0 .8rem;font-weight: 700}.process-step p{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .88rem;line-height: 1.7;color: var(--e-global-color-text);font-weight: 300;margin: 0}@media (max-width: 860px){.process-steps{grid-template-columns: repeat(2,1fr);gap: 2.5rem}}@media (max-width: 520px){.process-steps{grid-template-columns: 1fr;max-width: 360px;margin: 0 auto}}.zones-section{padding: clamp(4rem,8vw,7rem) 2rem;background: #fff}.zones-inner{max-width: 1160px;margin: 0 auto;display: grid;grid-template-columns: 1fr 1fr;gap: 4rem;align-items: center}.zones-text .section-label{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);text-transform: uppercase;letter-spacing: .3em;font-size: .75rem;color: #7A5E44;font-weight: 600;margin-bottom: 1rem}.zones-text h2{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(1.5rem,2.8vw,2.2rem);color: var(--e-global-color-primary);font-weight: 700;line-height: 1.3;margin: 0 0 1.3rem}.zones-text h2 em{color: var(--e-global-color-accent);font-style: italic}.zones-desc{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .95rem;line-height: 1.75;color: var(--e-global-color-text);font-weight: 300;margin-bottom: 1.8rem}.zones-list{display: flex;flex-wrap: wrap;gap: .6rem;margin-bottom: 2rem}.zone-tag{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .75rem;font-weight: 500;letter-spacing: .05em;padding: .5rem 1.1rem;border: 1px solid rgba(47,61,77,.18);color: var(--e-global-color-primary);transition: all .3s ease}.zone-tag:hover{background: var(--e-global-color-primary);color: #fff;border-color: var(--e-global-color-primary)}.zones-cta{margin-top: 0}.zones-map img{width: 100%;height: auto;display: block}@media (max-width: 860px){.zones-inner{grid-template-columns: 1fr;gap: 2.5rem}}.cta-section{position: relative;min-height: 500px;display: flex;align-items: center;justify-content: center;overflow: hidden}.cta-bg{position: absolute;inset: 0;z-index: 0}.cta-bg img{width: 100%;height: 100%;object-fit: cover}.cta-overlay{position: absolute;inset: 0;background: linear-gradient(160deg,rgba(47,61,77,.88) 0%,rgba(47,61,77,.65) 100%);z-index: 1}.cta-content{position: relative;z-index: 2;text-align: center;max-width: 700px;padding: clamp(3rem,6vw,5rem) 2rem}.cta-label{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);text-transform: uppercase;letter-spacing: .3em;font-size: .75rem;color: var(--e-global-color-secondary) !important;font-weight: 600;margin-bottom: 1.2rem}.cta-content h2{font-family: var(--e-global-typography-primary-font-family,'Playfair Display',serif);font-size: clamp(1.8rem,3.5vw,2.8rem);color: #fff;font-weight: 700;line-height: 1.25;margin: 0 0 1.3rem}.cta-desc{font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .98rem;line-height: 1.75;color: rgba(255,255,255,.8);font-weight: 300;margin-bottom: 2.5rem}.cta-buttons{display: flex;gap: 1.2rem;justify-content: center;align-items: center;flex-wrap: wrap}.cta-buttons .btn-primary{background: var(--e-global-color-secondary);color: var(--e-global-color-primary);font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .85rem;font-weight: 600;letter-spacing: .12em;text-transform: uppercase;padding: 1rem 2.4rem;text-decoration: none;transition: all .35s ease;border: none}.cta-buttons .btn-primary:hover{background: #fff;color: var(--e-global-color-primary)}.btn-phone{display: inline-flex;align-items: center;gap: .6rem;font-family: var(--e-global-typography-secondary-font-family,'Montserrat',sans-serif);font-size: .88rem;font-weight: 500;color: #fff;text-decoration: none;letter-spacing: .04em;transition: color .3s}.btn-phone:hover{color: var(--e-global-color-secondary)}.btn-phone svg{flex-shrink: 0}.zones-text h2{text-wrap: balance}@media (max-width: 519px){.process-header h2 br,.cta-content h2 br{display: none}.process-header h2,.cta-content h2{text-wrap: balance}}