/* Shared finishing system: calm motion, consistent curves, clear touch targets. */
:root{--curve:24px;--curve-small:12px;--ease:cubic-bezier(.22,.68,.2,1)}
body{overflow-wrap:break-word}main{overflow:clip}.container{min-width:0}.hero-inner{gap:26px;padding:28px 3.5% 40px}.hero-copy{padding:55px 6% 55px 5%}.hero-photo.hero-photo-sous-pente{border-radius:var(--curve);overflow:hidden}.hero-photo-label{left:25px;bottom:24px}.hero-photo-label small{text-shadow:0 1px 8px #10251f80}.hero-photo-label strong{font-size:1.2rem}.hero-location{margin-bottom:0!important}
.button,.navcta,.mobile-menu summary,.social-links a{border-radius:var(--curve-small)}.button{transition:background .25s,color .25s,transform .3s var(--ease),box-shadow .3s}.navlinks a:not(.navcta){transition:color .2s}.navlinks a[aria-current=location]{text-underline-offset:7px;text-decoration:underline;text-decoration-thickness:1px}.mobile-panel{border-radius:16px}.mobile-panel a{border-radius:7px}.mobile-panel a:hover{background:#ffffff08}.service-choice{border-radius:var(--curve);transition:transform .45s var(--ease),background .35s,box-shadow .45s}.service-choice-top svg{transition:transform .5s var(--ease)}.service-choice-action{min-height:24px;display:flex;align-items:center}.service-choice-examples{row-gap:14px}.service-choice-examples span{font-size:.79rem}.service-choice-bottom>span:first-child{font-size:.69rem}.services-choice-head>p:last-child{max-width:500px;margin-inline:auto}.service-choice{box-shadow:0 4px 15px #10231c08}
.inspiration-image{border-radius:var(--curve);height:auto;aspect-ratio:3/4;overflow:hidden;background:#d7d8c9}.inspiration-image img{height:100%;object-fit:cover}.inspiration-preview button{min-height:44px}.inspiration-choice{min-height:66px;border-radius:0}.inspiration-choice[aria-pressed=true]{background:#ffffff30}.inspiration-choice:focus-visible{outline-offset:2px}.inspiration-preview[aria-busy=true] #inspiration-open{opacity:.55}.inspiration-preview figcaption{padding-inline:4px}.inspiration-preview h3{margin-bottom:10px}.inspiration-preview p{font-size:.9rem}
.project-hub{border-radius:var(--curve)}.project-hub img{transition:transform .85s var(--ease)}.project-hub-link{min-height:44px}.project-hub-copy{max-width:none}.project-grid{gap:30px 24px}.project-card{padding-bottom:0;overflow:visible}.project-image{position:relative;overflow:hidden;border-radius:18px;background:#29463b}.project-card .project-image img{border-radius:0;transition:transform .75s var(--ease);height:330px;object-fit:cover}.project-card figcaption{font-size:1.3rem;line-height:1.3;padding:17px 3px 0}.project-open{border-radius:18px}.project-open>span,.views-count{border-radius:7px;backdrop-filter:blur(6px)}.project-open>span{right:12px;top:12px;font-size:.65rem;padding:8px 10px}.views-count{font-size:.65rem;padding:8px 10px}.project-card[data-newest] .views-count{font-size:.59rem}.project-more{border-radius:12px;min-height:48px;transition:background .25s,transform .25s}.project-back{min-height:44px}.project-filters button{border-radius:8px;min-height:42px;padding:10px 13px}.project-category-switch button{min-height:44px}
.company-people{gap:45px}.company-person{align-items:start}.person-background summary{min-height:40px;display:flex;align-items:center;width:fit-content}.company-qualification{gap:22px}.company-qualification .rge-logo{background:#fff;border-radius:8px;padding:5px;width:75px;height:80px}.method-step{padding-top:25px}.method-step h3{margin-top:20px}.faq-list summary{min-height:64px;font-size:.9rem;line-height:1.5}.faq-list p{line-height:1.8}.supplier-logo{border-radius:14px;border:1px solid #d5dbcc}.workshop-map{border-radius:var(--curve);border:1px solid #cbd3c2}.workshop-panel h2{max-width:450px}.workshop-panel>a{display:inline-flex;align-items:center;min-height:44px}.social-strip .social-links a{min-height:46px}
.form{border-radius:var(--curve);box-shadow:0 18px 50px #071f1720}.fields{gap:21px 16px}.field{gap:9px}.field label{font-size:.82rem}input,select,textarea{border-radius:9px;font-size:16px;min-height:49px;transition:border-color .2s,box-shadow .2s}textarea{font-size:.94rem}input:hover,select:hover,textarea:hover{border-color:#9aa58d}.field input[type=file]{font-size:.78rem;padding:11px 10px}input::file-selector-button{font-family:inherit;padding:7px 10px;border:0;border-radius:6px;background:#e4e8da;color:#294130;margin-right:10px;cursor:pointer}.direct-email{min-height:40px;display:inline-flex;align-items:center}.photo-dialog{border-radius:20px}.dialog-image-wrap{border-radius:20px 20px 0 0}.dialog-close,.dialog-prev,.dialog-next{border-radius:50%;transition:background .2s}.dialog-close:hover,.dialog-prev:hover,.dialog-next:hover{background:#41624a}.dialog-bottom{padding:22px 26px 25px}.dialog-cta{min-height:40px;display:inline-flex;align-items:center}.dialog-description{line-height:1.65}footer a{min-height:30px}
@media(hover:hover) and (pointer:fine){.service-choice:hover,.js-motion .service-choice.reveal.is-visible:hover{transform:translateY(-5px);box-shadow:0 20px 35px #071b1630}.service-choice:hover svg{transform:translateY(-3px)}.project-card:hover img,.project-hub:hover img{transform:scale(1.035)}.button:hover{box-shadow:0 7px 17px #10261c15}.project-more:hover{transform:translateY(-2px)}}
@media(hover:none){.service-choice:hover{transform:none}.project-card:hover img,.project-hub:hover img{transform:none}.button:hover{transform:none}.service-choice:active{background:#fffbf2}}
@media(prefers-reduced-motion:no-preference){.js-motion .reveal{transform:translateY(16px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.js-motion .reveal.is-visible{transform:none}.service-choice.reveal:nth-child(2),.company-person.reveal:nth-child(2),.method-step.reveal:nth-child(2){transition-delay:75ms}.method-step.reveal:nth-child(3){transition-delay:125ms}.faq-list details[open] p,.person-background[open] p{animation:detail-reveal .25s ease-out both}.photo-dialog[open]{animation:dialog-reveal .24s ease-out both}.photo-dialog[open]::backdrop{animation:backdrop-reveal .24s ease-out both}@keyframes detail-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes dialog-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes backdrop-reveal{from{opacity:0}to{opacity:1}}}
@media(max-width:1000px){.hero-inner{gap:18px;padding:22px 3% 30px}.hero-copy{padding:45px 4%}.project-card .project-image img{height:300px}.project-open>span{font-size:.6rem}.project-grid{gap:27px 18px}}
@media(max-width:760px){:root{--curve:20px}.hero-inner{gap:0;padding:0 0 26px}.hero-copy{padding:43px 6% 35px}.hero-photo.hero-photo-sous-pente{width:88%;margin:0 6%;border-radius:20px}.hero-photo-label{left:20px;bottom:20px}.hero-photo-label strong{font-size:1.1rem}.confidence{padding:18px 0}.confidence .container{gap:14px 10px}.services-choice{padding:65px 0 45px}.service-choice{padding:27px 25px 23px}.service-choice-bottom>span:first-child{font-size:.66rem}.service-choice-examples span{font-size:.78rem}.service-choice>p{font-size:.91rem}.service-choice-top>span{font-size:.69rem}.inspiration-grid{gap:30px}.inspiration-image{height:auto;aspect-ratio:3/4}.inspiration-choice strong{font-size:1.3rem}.inspiration-preview p{font-size:.9rem}.project-hub,.project-hub:nth-child(2){height:400px}.project-hub-copy{inset:auto 24px 24px}.project-card .project-image img{height:310px}.project-card figcaption{font-size:1.2rem;padding-top:14px}.project-filters{gap:8px}.project-filters button{font-size:.73rem}.company-person p,.company-story p{font-size:.92rem}.company-people{gap:27px}.workshop-panel p:not(.eyebrow){font-size:.94rem}.workshop-map iframe{height:320px}.supplier-logo{border-radius:12px}.form{padding:28px 24px}.fields{gap:20px}.field label{font-size:.84rem}.dialog-bottom{padding:18px 18px 21px}.dialog-image-wrap{height:62svh}.photo-dialog{max-height:92svh}.dialog-count{font-size:.68rem}.dialog-cta{font-size:.77rem}.method-step h3{margin-top:0}.js-motion .service-choice.reveal,.js-motion .method-step.reveal,.js-motion .company-person.reveal{transition-delay:0s}}
@media(max-width:460px){.project-card .project-image img{height:370px}.project-grid{gap:30px}.project-card figcaption{font-size:1.3rem}.project-card[data-newest] .views-count{font-size:.62rem}.service-choice h3{font-size:2.2rem}.service-choice-examples{gap:11px 14px}.form{padding:26px 20px}.hero-photo-label small{font-size:.56rem}.project-hub,.project-hub:nth-child(2){height:365px}.inspiration-choice strong{font-size:1.18rem}.field input[type=file]{font-size:.74rem}.dialog-prev,.dialog-next{width:42px;height:42px}.company-qualification{gap:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-motion .reveal{opacity:1;transform:none}.service-choice:hover,.project-more:hover{transform:none}}
