/* Architectural imagery, generous typography and restrained interaction. */
:root{--adler-warm:#d9c9a7;--adler-charcoal:#181b1c}
.site-header{background:rgba(24,27,28,.96);color:#f5f4f0;border-color:#ffffff1a}
.brand-dot{color:var(--adler-warm)}
.nav-wrap{height:88px;max-width:1600px;padding-inline:48px}
.nav-wrap nav{font-size:15px;gap:26px}
.nav-wrap nav>a:hover{color:var(--adler-warm)}
.nav-wrap nav>a.nav-account{border-color:#ffffff32}
.nav-wrap nav>a.nav-register{border-color:#ffffff4a;border-radius:4px;background:transparent}
.nav-wrap nav>a.nav-register:hover{background:#ffffff0d;color:#fff}
.menu-toggle span{background:#fff}

.hero{position:relative;max-width:none;margin:88px 0 0;padding:0;display:flex;align-items:center;min-height:690px;min-height:max(690px,calc(100svh - 88px));background:var(--adler-charcoal);color:#fff;overflow:hidden;isolation:isolate;--cursor-halo-size:760px;--cursor-halo-color:rgba(235,213,165,.17)}
.hero-image{position:absolute;inset:0;height:auto;margin:0;border-radius:0;z-index:0;overflow:hidden;background:#2c3336}
.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:center 43%;filter:saturate(.48);transform:translate3d(var(--cursor-shift-x,0px),var(--cursor-shift-y,0px),0) scale(1.05);transition:transform .5s ease-out}
.hero-image:hover>img{transform:translate3d(var(--cursor-shift-x,0px),var(--cursor-shift-y,0px),0) scale(1.05)}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,22,24,.96) 0%,rgba(17,22,24,.83) 34%,rgba(17,22,24,.38) 69%,rgba(17,22,24,.16) 100%),linear-gradient(0deg,rgba(16,21,22,.9),transparent 35%);pointer-events:none}
.hero>.cursor-halo{z-index:1}
.hero>.hero-foot,.hero>.hero-side-note{position:absolute}
.hero-copy{width:min(1400px,100%);margin:auto;text-align:left;padding:64px 64px 118px;position:relative;--cursor-content-z:2}
.hero-eyebrow{font-size:15px;line-height:1.6;letter-spacing:.06em;color:#ece9df;justify-content:flex-start;gap:17px;max-width:600px}
.hero-eyebrow>.hero-rule{display:block;width:30px;height:1px;border-radius:0;background:var(--adler-warm);flex:none}
.hero h1{font-size:clamp(72px,7.8vw,108px);font-weight:500;line-height:.99;letter-spacing:-.056em;margin:26px 0 27px;max-width:710px;text-wrap:balance}
.hero h1>span{color:var(--adler-warm)}
.hero-subtitle{font-size:21px;line-height:1.65;letter-spacing:-.008em;color:#efefeb;max-width:475px}
.hero-actions{flex-direction:row;align-items:center;justify-content:flex-start;gap:30px;margin-top:34px;flex-wrap:wrap}
.hero-actions .button{background:#f1eee5;color:#202421;border-radius:4px;padding:16px 23px;font-size:17px;font-weight:550;min-height:56px}
.hero-actions .button:hover{background:#fff}
.hero-actions .text-link{color:#f0ece0;font-size:17px;font-weight:450}
.hero-side-note{position:absolute;right:48px;top:80px;bottom:130px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;pointer-events:none;color:#ffffffba;--cursor-content-z:2}
.hero-side-note>span{font-size:13px;letter-spacing:.13em;text-transform:uppercase;writing-mode:vertical-rl}
.hero-foot{position:absolute;inset:auto 0 0;grid-column:auto;padding:24px 48px;margin:0;border:0;border-top:1px solid #ffffff2b;color:#e1e4df;font-size:14px;gap:24px;--cursor-content-z:2}
.hero-foot a{color:#f5f3ec;gap:24px}
.hero-foot>span:last-child{text-align:right;max-width:320px}

.focus-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#f0eee8;border-bottom:1px solid #dadbd5;padding-inline:max(48px,calc((100vw - 1304px)/2))}
.focus-rail a{display:flex;align-items:center;gap:22px;padding:29px 32px;border-right:1px solid #d4d5cf;transition:background .25s}
.focus-rail a:first-child{padding-left:0}
.focus-rail a:last-child{border-right:0}
.focus-rail a:hover{background:#e6e4dc}
.focus-rail a>span:first-child{font-size:14px;color:#68716b;font-variant-numeric:tabular-nums}
.focus-rail strong{font-size:22px;font-weight:500;letter-spacing:-.025em}
.focus-rail a>span:last-child{margin-left:auto;font-size:22px;color:#5e6b61}

.intro{background:#fafaf8}
.intro-title{font-size:clamp(46px,5.5vw,76px);line-height:1.08;letter-spacing:-.046em;font-weight:500;margin-top:25px}
.intro-title>span{color:#7c827b}
.intro-bottom{gap:80px;margin-top:42px}
.intro-bottom>p{font-size:20px;line-height:1.75;color:#545d58}
.owner-note{border-left:1px solid #c5cbc3;padding-left:32px}
.owner-note p{font-size:25px;letter-spacing:-.025em}
.principles{border-color:#d2d8cf;margin-top:58px}
.principles span{color:#687368}
.services{background:#eeefeb}
.service-list details{scroll-margin-top:120px}
.detail-situations{background:#e8edeb;border-color:#d5dfd9}
.offer-dossier{background:#eaece5}
.vision{background:#18231f}
.vision-heading h2{font-size:clamp(44px,4.9vw,68px);font-weight:500}
.method{background:#fafaf8}
.account-invite{background:#f0f1ec}
.contact{background:#e9ebe5}
.contact h2{font-weight:500}

@media(min-width:1600px){.hero-copy{padding-left:64px}.hero-side-note{right:max(48px,calc((100vw - 1400px)/2))}.hero-image>img{object-position:center 47%}}
@media(max-width:1150px){.nav-wrap{padding-inline:30px}.nav-wrap nav{gap:18px}.hero-copy{padding:66px 48px 122px}.hero h1{font-size:86px;max-width:620px}.hero-side-note{right:30px}.hero-foot{padding-inline:30px}.hero-subtitle{max-width:465px}.focus-rail{padding-inline:30px}.focus-rail a{padding-inline:24px}.intro-bottom{gap:50px}}
@media(max-width:900px){.nav-wrap{height:84px}.hero{margin-top:84px;min-height:730px}.hero h1{font-size:80px}.hero-image:after{background:linear-gradient(90deg,#111618eb,#111618b8 45%,#11161852),linear-gradient(0deg,#101516ed,transparent 50%)}.hero-side-note{display:none}.hero-copy{padding:65px 38px 140px}.hero-subtitle{max-width:440px}.hero-foot>span:last-child{max-width:215px}.nav-wrap nav{background:#181b1c;border-color:#ffffff26;max-height:calc(100dvh - 84px)}.nav-wrap nav>a.nav-register{margin-top:12px}.intro-bottom{gap:35px}.focus-rail strong{font-size:21px}.focus-rail a{gap:15px}}
@media(max-width:680px){.nav-wrap{height:78px;padding-inline:22px}.brand strong{font-size:31px}.brand small{font-size:12px}.brand>svg{width:33px;height:33px}.hero{margin-top:78px;min-height:760px;min-height:max(720px,calc(100svh - 78px))}.hero-copy{padding:48px 24px 135px}.hero-eyebrow{font-size:14px;letter-spacing:.025em;gap:13px;max-width:320px;line-height:1.6}.hero-eyebrow>.hero-rule{width:20px}.hero h1{font-size:clamp(57px,15.5vw,76px);line-height:1.01;letter-spacing:-.055em;margin:27px 0;max-width:100%}.hero-subtitle{font-size:19px;line-height:1.65;max-width:390px}.hero-actions{align-items:flex-start;flex-direction:column;gap:23px;margin-top:29px}.hero-actions .button{font-size:17px;padding:15px 21px;min-height:54px}.hero-actions .text-link{font-size:17px}.hero-image>img{object-position:58% 38%;filter:saturate(.35)}.hero-image:after{background:linear-gradient(90deg,#111618e0,#111618b3),linear-gradient(0deg,#111618f2,transparent 55%)}.hero-foot{padding:22px 24px;display:grid;grid-template-columns:1fr auto;gap:14px;font-size:13px;align-items:start}.hero-foot>span:first-child{max-width:220px}.hero-foot a{font-size:14px;gap:10px;white-space:nowrap}.hero-foot a>span{margin-left:0}.hero-foot>span:last-child{max-width:none;text-align:left;grid-column:1/-1;font-size:12px;color:#c1c8c0}.focus-rail{padding-inline:24px}.focus-rail a{padding:22px 11px;gap:7px;flex-wrap:wrap}.focus-rail a:first-child{padding-left:0}.focus-rail a:last-child{padding-right:0}.focus-rail a>span:first-child{font-size:12px;flex-basis:100%}.focus-rail strong{font-size:19px}.focus-rail a>span:last-child{font-size:16px}.intro-title{font-size:clamp(40px,10vw,52px);line-height:1.12}.intro-bottom{margin-top:30px;gap:32px}.intro-bottom>p{font-size:18px;line-height:1.75}.owner-note p{font-size:23px}.owner-note{padding-left:24px}.principles{margin-top:35px}.vision-heading h2{font-size:40px}.nav-wrap nav{max-height:calc(100dvh - 78px)}}
@media(max-width:360px){.hero-copy{padding-inline:20px}.hero h1{font-size:53px}.hero-eyebrow{font-size:13px}.hero-foot{padding-inline:20px}.hero-foot a{font-size:13px}.hero-subtitle{font-size:18px}.focus-rail{padding-inline:20px}.focus-rail a{gap:5px}.focus-rail strong{font-size:18px}}
@media(max-width:900px){.nav-wrap nav{overflow-y:auto;overscroll-behavior:contain}.hero-foot>span:last-child{display:block}}
@media(max-width:680px){.hero-foot{grid-template-columns:1fr;gap:9px}.hero-foot a{display:none}.hero-foot>span:last-child{display:block;max-width:225px}}
@media(prefers-reduced-motion:reduce){.hero-image>img,.hero-image:hover>img{transform:scale(1.05);transition:none}}
