:root{--paper:#eee9e1;--ink:#292d2a;--muted:#62655f;--gold:#896b43;--line:#292d2a26;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.025em}h2{font-size:clamp(44px,5vw,76px)}h3{font-size:36px}em{font-weight:400;color:var(--gold)}p{margin-top:20px}.shell{width:88%;max-width:1360px;margin:auto}.section-tag{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);margin:0 0 24px}.site-header{height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:#eee9e1f5;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.brand{font-size:29px;letter-spacing:.035em;line-height:1;font-weight:500}.brand span{color:var(--gold)}.brand small{display:block;font-size:8px;letter-spacing:.28em;margin-top:8px}.site-header nav{display:flex;gap:34px;align-items:center;font-size:12px}.nav-cta{border:1px solid var(--line);padding:13px 20px}.nav-cta span{margin-left:22px}.menu-toggle{display:none}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:18px 24px;font-size:12px;border:0;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-dark,.button-gold{background:var(--ink);color:#fff}.button-light{background:var(--paper);color:var(--ink)}.line-link{display:inline-block;font-size:12px;border-bottom:1px solid currentColor;padding:8px 0}.line-link:hover{color:var(--gold)}.pro-hero{display:grid;grid-template-columns:47% 53%;min-height:690px;height:calc(100svh - 100px);max-height:1000px;position:relative}.pro-hero-copy{padding:65px 11% 35px 12.77%;display:flex;flex-direction:column;justify-content:center;position:relative;background:#e9e3d9}.pro-hero h1{font-size:clamp(76px,7.6vw,125px);line-height:.92;position:relative;z-index:1;margin-bottom:10px}.pro-hero h1 em{display:inline-block}.hero-intention{font-family:var(--serif);font-size:30px;color:var(--ink);line-height:1.2}.pro-hero-copy>p:not(.section-tag):not(.hero-intention){font-size:14px;color:var(--muted)}.hero-ctas{display:flex;align-items:flex-start;flex-direction:column;gap:20px;margin-top:32px}.hero-secondary{font-size:11px}.hero-note{display:flex;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:.11em;position:absolute;bottom:26px;left:12.77%;right:8%}.hero-media{position:relative;min-width:0;overflow:visible;background:#393b35}.hero-media video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-media::after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#151a16ad);pointer-events:none}.media-caption{position:absolute;bottom:25px;left:7%;right:7%;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:11px;z-index:2}.hero-pause{background:transparent;border:1px solid #ffffff70;color:inherit;font-size:10px;padding:9px 12px}.hero-seal{position:absolute;left:-43px;top:47%;width:86px;height:118px;background:#a68a60;color:#fff;z-index:3;font-size:9px;letter-spacing:.14em;line-height:1.6;display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-seal span{font-size:26px;margin-top:12px}.trust-bar{display:flex;justify-content:space-between;gap:16px;padding:23px 6%;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.06em}.trust-bar span:before{content:'✧';color:var(--gold);margin-right:12px}.intro-statement{display:grid;grid-template-columns:1fr 2.3fr;gap:10%;padding-block:110px}.intro-mark>span{font-size:22px;letter-spacing:.06em}.intro-mark .section-tag{font-size:8px;margin-top:8px}.signature-rule{width:65px;height:1px;background:var(--gold);margin:32px 0}.intro-aside{font:italic 25px/1.3 var(--serif)}.intro-statement h2{font-size:clamp(45px,4.4vw,68px)}.intro-statement div>p:not(.intro-aside):not(.section-tag){max-width:660px;color:var(--muted);margin-top:28px}.professional-services{padding:95px 6%;background:#30382f;color:#eee9e1}.professional-services em{color:#ceb38d}.professional-services .section-tag{color:#c3ab8b}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:50px}.section-heading>p{font-size:13px;max-width:340px;color:var(--muted)}.professional-services .section-heading>p{color:#c1c7bd}.expertise-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:stretch}.service-cards{display:block}.service-cards article{display:grid;grid-template-columns:80px 1fr;column-gap:20px;padding:25px 0;border-top:1px solid #ffffff35}.service-icon{grid-column:1;grid-row:1/4;font-size:9px;letter-spacing:.08em;color:#c3ab8b}.service-cards h3{font-size:32px}.service-cards p{font-size:12px;color:#c1c7bd;margin-top:12px;max-width:430px}.service-cards ul{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:9px;letter-spacing:.02em;color:#c3ab8b}.service-cards li:before{content:'· ';margin-right:4px}.expertise-image{position:relative;min-height:620px}.expertise-image img{height:100%;position:absolute;inset:0}.expertise-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:50px 24px 22px;background:linear-gradient(transparent,#000b);color:#fff;font:italic 26px var(--serif)}.services-bottom{margin-top:32px;padding-top:20px;border-top:1px solid #ffffff35;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.services-bottom p{margin:0;color:#c1c7bd}.featured{padding-block:105px}.project-tabs{display:flex;border-top:1px solid var(--line);margin-bottom:30px;gap:30px}.project-tabs button{color:var(--muted);background:transparent;border:0;border-top:2px solid transparent;padding:18px 0;font-size:10px;display:flex;gap:16px;text-align:left}.project-tabs button span{font-size:12px}.project-tabs button[aria-selected=true]{color:var(--gold);border-color:var(--gold)}.project-panel{display:grid;grid-template-columns:1.5fr 1fr;gap:6%;align-items:center;animation:panelIn .4s ease-out}.project-panel[hidden]{display:none}.panel-image img{height:550px}.panel-copy{padding:24px 0}.panel-copy h3{font-size:clamp(37px,3.8vw,58px)}.panel-copy>p:not(.section-tag){font-size:13px;color:var(--muted)}.panel-copy ul{list-style:none;padding:20px 0;display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);margin-top:25px}.panel-copy li{font-size:9px;text-transform:uppercase;letter-spacing:.05em;margin-right:10px}.founder{display:grid;grid-template-columns:45% 55%;background:#ddd3c5}.founder-photo img{height:680px;object-position:center 30%}.founder-copy{padding:80px 13% 70px 12%;align-self:center}.founder-copy>p:not(.section-tag){font-size:13px;color:#565a52}.founder-copy h2{font-size:clamp(45px,4.8vw,68px)}.founder-signature{margin-top:30px;display:flex;align-items:center;gap:20px}.founder-signature strong{font:italic 45px var(--serif);font-weight:400}.founder-signature span{font-size:10px;color:var(--muted)}.assurances{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:23px;margin-top:23px;font-size:9px}.process{padding:100px 6%}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6%}.process-grid article{border-top:1px solid var(--line);padding-top:25px}.process-grid article>span{font-size:10px;color:var(--gold)}.process-grid h3{margin-top:28px;font-size:35px}.process-grid p{color:var(--muted);font-size:13px}.reviews{padding-block:70px 100px;border-top:1px solid var(--line)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6%}.review-grid blockquote{margin:0}.stars{color:var(--gold);letter-spacing:.14em;font-size:12px}.review-grid p{font:26px/1.25 var(--serif)}.review-grid footer{font-size:11px;color:var(--muted);margin-top:25px}.booking{display:grid;grid-template-columns:1fr 1fr;background:#30382f;color:var(--paper)}.booking-image img{height:650px}.booking-content{padding:75px 12%;align-self:center}.booking-content h2{font-size:clamp(44px,4.8vw,72px)}.booking-content em{color:#ceb38d}.booking-content .section-tag{color:#c3ab8b}.booking-content>p:not(.section-tag){font-size:13px;color:#c1c7bd}.price{display:flex;gap:25px;align-items:center;margin:32px 0}.price strong{font:64px var(--serif)}.price span{font-size:11px;color:#c1c7bd}.booking-content>small{display:block;font-size:10px;color:#c1c7bd;margin-top:18px}.project-faq{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-block:95px}.project-faq h2{font-size:60px}.faq-items details{padding:22px 0;border-top:1px solid var(--line)}.faq-items details:last-child{border-bottom:1px solid var(--line)}.faq-items summary{display:flex;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:13px}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary span{color:var(--gold)}.faq-items details[open] summary span{transform:rotate(45deg)}.faq-items p{font-size:12px;color:var(--muted)}.contact{padding-block:80px 100px;text-align:center;border-top:1px solid var(--line)}.contact h2{font-size:clamp(48px,6vw,88px);margin-bottom:35px}.contact>p:last-child{font-size:11px}.site-footer{padding:50px 6% 25px;background:#222922;color:#e9e3d9}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-top p{font-size:12px;margin:0;color:#b7beb2}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#b7beb2;margin-top:45px;border-top:1px solid #ffffff26;padding-top:20px}.mobile-actions{display:none}.booking-dialog{width:min(1000px,94vw);height:85svh;background:var(--paper);color:var(--ink);border:0;padding:20px}.booking-dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}.dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-bar span{display:block;font-size:10px;color:var(--gold)}.dialog-bar strong{font-size:15px;font-weight:500}.dialog-bar button{border:0;background:transparent;color:var(--ink)}.booking-fallback{font-size:11px;margin:16px 0}.booking-fallback a{text-decoration:underline}.booking-dialog iframe{width:100%;height:calc(100% - 100px);border:0;background:white}.dialog-open{overflow:hidden}.project-page-title{padding-block:70px}.project-page-title .section-tag{margin-top:40px}.project-page-title h1{font-size:clamp(60px,7vw,105px)}.project-page-title>p:last-child{max-width:640px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 6%;padding-bottom:90px}.project-photo{position:relative;overflow:hidden}.project-photo img{aspect-ratio:4/3;transition:transform .6s}.project-card:hover img{transform:scale(1.035)}.photo-cta{position:absolute;bottom:20px;right:20px;font-size:10px;background:#eee9e1ed;padding:10px 16px}.project-caption{display:flex;justify-content:space-between;gap:20px;align-items:end;padding-top:20px}.project-caption .section-tag{margin-bottom:8px;font-size:9px}.project-caption h3{font-size:32px}.project-number{font-size:10px;color:var(--gold)}.project-full-photo{padding:0 6%;background:#ddd3c5}.project-full-photo img{max-height:900px;object-fit:contain}.project-story{display:grid;grid-template-columns:1fr 2fr;gap:10%;padding-block:90px}.project-story div>p{max-width:680px;color:var(--muted)}.project-story .button{margin-top:30px}.next-project{padding-block:40px 90px;border-top:1px solid var(--line)}.next-project>a{display:flex;align-items:center;justify-content:space-between}.next-project>a>span{font-size:45px;color:var(--gold)}:focus-visible{outline:2px solid #9a763d;outline-offset:5px}@keyframes panelIn{from{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:none}}.pro-hero h1{animation:panelIn .8s ease-out}
@media(max-width:1050px){.site-header nav{gap:18px}.pro-hero-copy{padding-right:9%}.pro-hero h1{font-size:80px}.hero-note{display:none}.hero-intention{font-size:25px}.expertise-layout{gap:5%;grid-template-columns:1.4fr 1fr}.service-cards article{grid-template-columns:60px 1fr;gap:12px}.founder-copy{padding:50px 9%}.founder-photo img{height:620px}}
@media(max-width:760px){html{scroll-padding-top:80px}.site-header{height:80px}.brand{font-size:25px}.menu-toggle{display:block;border:0;background:none;color:var(--ink);font-size:12px}.menu-toggle span{margin-left:12px}.site-header nav{display:none;position:absolute;top:80px;left:0;right:0;padding:30px 6%;background:var(--paper);border-bottom:1px solid var(--line)}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:24px}.pro-hero{height:auto;min-height:0;display:flex;flex-direction:column}.pro-hero-copy{padding:40px 6% 45px}.pro-hero h1{font-size:clamp(69px,14.5vw,105px);line-height:.95}.pro-hero .section-tag{font-size:9px;margin-bottom:25px}.hero-intention{font-size:27px;margin-top:20px}.pro-hero-copy>p:not(.section-tag):not(.hero-intention){font-size:13px}.hero-ctas{margin-top:25px;gap:18px}.hero-media{height:390px;margin:0 6% 25px}.hero-seal{left:auto;right:20px;top:-30px;width:72px;height:90px;font-size:8px}.hero-seal span{font-size:20px;margin-top:6px}.media-caption{font-size:9px;left:5%;right:5%;bottom:18px}.hero-pause{font-size:9px}.trust-bar{display:grid;grid-template-columns:1fr 1fr;font-size:9px;gap:14px;padding:22px 6%}.intro-statement{grid-template-columns:1fr;padding-block:60px;gap:25px}.intro-mark>span{font-size:17px}.intro-mark .section-tag{margin-bottom:0}.intro-aside,.signature-rule{display:none}.intro-statement h2{font-size:43px}.intro-statement div>p:not(.intro-aside):not(.section-tag){font-size:13px}.section-tag{font-size:9px}h2{font-size:47px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:25px}.section-heading>.line-link{margin-top:22px}.professional-services{padding:60px 6%}.expertise-layout{grid-template-columns:1fr;gap:35px}.service-cards article{grid-template-columns:48px 1fr;gap:10px;padding:23px 0}.service-icon{font-size:8px}.service-cards h3{font-size:29px}.service-cards p{font-size:12px}.service-cards ul{font-size:9px}.expertise-image{height:350px;min-height:0}.services-bottom{display:block}.services-bottom .line-link{margin-top:14px}.featured{padding-block:60px}.project-tabs{gap:15px}.project-tabs button{gap:7px;flex:1;font-size:9px}.project-tabs button span{font-size:10px;line-height:1.5}.project-panel{grid-template-columns:1fr;gap:8px}.panel-image img{height:350px}.panel-copy h3{font-size:42px}.panel-copy{padding:25px 0 0}.founder{grid-template-columns:1fr}.founder-photo img{height:460px}.founder-copy{padding:40px 6%}.founder-copy h2{font-size:48px}.process{padding:60px 6%}.process-grid{grid-template-columns:1fr;gap:30px}.process-grid h3{margin-top:18px;font-size:32px}.process-grid p{margin-top:15px}.reviews{padding-block:50px 65px}.review-grid{grid-template-columns:1fr;gap:35px}.review-grid p{font-size:28px}.review-grid footer{margin-top:15px}.booking{grid-template-columns:1fr}.booking-image img{height:320px}.booking-content{padding:40px 6%}.booking-content h2{font-size:50px}.price strong{font-size:60px}.project-faq{grid-template-columns:1fr;gap:35px;padding-block:60px}.project-faq h2{font-size:48px}.contact{padding-block:60px}.contact h2{font-size:47px}.contact .button{font-size:11px;gap:15px}.footer-top{display:block}.footer-top>p{margin-top:25px}.footer-top>.line-link{margin-top:20px}.footer-bottom{display:flex;flex-wrap:wrap;gap:15px;margin-top:30px}.site-footer{padding-bottom:80px}.mobile-actions{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:15;background:var(--paper);border-top:1px solid var(--line)}.mobile-actions a{width:50%;text-align:center;font-size:10px;padding:14px 5px}.mobile-actions a:first-child{background:var(--ink);color:var(--paper)}.project-page-title{padding-block:45px}.project-page-title h1{font-size:60px}.project-page-title>p:last-child{font-size:13px}.project-grid{grid-template-columns:1fr;gap:35px;padding-bottom:55px}.project-caption h3{font-size:30px}.project-story{grid-template-columns:1fr;padding-block:55px;gap:10px}.project-story div>p{font-size:13px}.next-project{padding-block:35px 60px}.next-project h2{font-size:40px}.dialog-bar button{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-media video{display:none}.hero-media{background:url('assets/niche-tv.jpg') center/cover}.hero-pause{display:none}}

/* Original CDRELEC metallic logo and architectural entrance. */
.brand{display:block;position:relative;width:220px;height:76px;overflow:hidden;background:#000;flex-shrink:0}.brand img{height:100%;width:100%;object-fit:cover;object-position:center}
.site-intro{position:fixed;z-index:9999;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;isolation:isolate;animation:introLeave .01s linear 2.95s forwards}
.intro-door{position:absolute;top:0;bottom:0;width:50.1%;background:#000;z-index:-1}.intro-door-left{left:0;animation:doorLeft .85s cubic-bezier(.76,0,.24,1) 2.1s forwards}.intro-door-right{right:0;animation:doorRight .85s cubic-bezier(.76,0,.24,1) 2.1s forwards}
.intro-emblem{width:min(870px,94vw);aspect-ratio:2.7;position:relative;overflow:hidden;opacity:0;transform:scale(.94);animation:emblemReveal .9s cubic-bezier(.2,.7,.3,1) .1s forwards,emblemExit .5s ease-in 2.05s forwards}
.intro-emblem img{width:100%;height:100%;object-fit:cover;object-position:center}.intro-reflection{position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,#ffffffb0 49%,transparent 63%);background-size:250% 100%;background-position:150% 0;mix-blend-mode:overlay;animation:metalSweep 1.25s ease-in-out .65s both}
.intro-motto{font:italic clamp(20px,3vw,30px) var(--serif);color:#cdb58e;margin:25px 0 0;letter-spacing:.03em;opacity:0;animation:mottoReveal .6s ease-out .65s forwards,emblemExit .4s ease-in 2.05s forwards}.intro-progress{width:90px;height:1px;background:#b18c51;margin-top:30px;transform:scaleX(0);animation:progressReveal 1.7s ease-out .3s forwards,emblemExit .4s ease-in 2.05s forwards}body.intro-active{overflow:hidden}
@keyframes emblemReveal{to{opacity:1;transform:scale(1)}}@keyframes mottoReveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes metalSweep{from{background-position:150% 0}to{background-position:-100% 0}}@keyframes emblemExit{to{opacity:0;transform:scale(1.025)}}@keyframes progressReveal{to{transform:scaleX(1)}}@keyframes doorLeft{to{transform:translateX(-100%)}}@keyframes doorRight{to{transform:translateX(100%)}}@keyframes introLeave{to{visibility:hidden}}
@media(max-width:760px){.brand{width:170px;height:60px}.intro-motto{margin-top:20px}.intro-progress{margin-top:23px}}
@media(prefers-reduced-motion:reduce){.site-intro{display:none}}

/* Remove the raster's black backdrop at display time, retaining original logo geometry and metallic colors. */
.brand{background:transparent}.brand img{filter:url(#logo-clear)}

/* Clear text spacing and direct contact options. */
.text-link,.email-link{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;overflow-wrap:anywhere}
.contact-intro{max-width:620px;margin:0 auto 28px;color:var(--muted);font-size:14px}
.contact-actions{display:flex;justify-content:center;align-items:stretch;flex-wrap:wrap;gap:14px}
.button-outline{border:1px solid var(--ink);background:transparent;color:var(--ink)}
.button-outline:hover{background:var(--ink);color:var(--paper)}
.contact .contact-address{font-size:14px;margin-top:24px}
.founder-copy>p:not(.section-tag){line-height:1.8;max-width:600px}
@media(max-width:760px){.contact-actions{flex-direction:column;align-items:stretch}.contact-actions .button{justify-content:center;min-height:52px;font-size:12px}.mobile-actions a{width:33.333%;min-height:48px;display:flex;align-items:center;justify-content:center}.founder-copy>p:not(.section-tag){font-size:14px}.footer-bottom .email-link{flex-basis:100%}}
/* Pré-visite : projet puis paiement */
.visit-page{padding-top:70px;padding-bottom:100px}.visit-page h1{font-size:clamp(2.8rem,6vw,5rem);line-height:1.12;max-width:850px}.visit-lead{max-width:650px;line-height:1.7}.visit-steps{display:flex;flex-wrap:wrap;gap:16px 32px;list-style:none;padding:25px 0;margin:28px 0;border-block:1px solid #c7c2b7}.visit-steps li{font-size:.9rem;color:#66685f}.visit-steps [aria-current]{color:#8b6d43;font-weight:600}.visit-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:60px;align-items:start}.visit-layout h2{font-size:2rem;line-height:1.2;margin-bottom:28px}.visit-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.visit-page label{display:block;font-size:.95rem;font-weight:500}.visit-page input,.visit-page textarea{display:block;box-sizing:border-box;width:100%;margin:8px 0 24px;padding:14px 15px;border:1px solid #aaa99d;border-radius:0;background:#fffdf9;color:#282e2a;font:inherit;line-height:1.5}.visit-page input:focus,.visit-page textarea:focus{outline:2px solid #8b6d43;outline-offset:3px}.visit-page textarea{resize:vertical}.visit-privacy,.visit-hint{font-size:.85rem;line-height:1.6;color:#62675f}.visit-page a{text-decoration:underline;text-underline-offset:4px}.visit-summary{padding:32px;background:#ddd4c5}.visit-summary ul{padding-left:20px;line-height:1.8}.visit-summary p{line-height:1.7}.visit-price{font-size:3rem!important;margin:5px 0}.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#visit-error{padding:14px;background:#fff0e9;color:#873b25}#visit-submit:disabled{opacity:.65;cursor:wait}@media(max-width:750px){.visit-layout{grid-template-columns:1fr;gap:36px}.visit-fields{grid-template-columns:1fr;gap:0}.visit-page{padding-top:40px}.visit-summary{padding:24px}#visit-submit{width:100%}}
