@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--navy:#142d3e;--deep:#0c1d28;--brass:#b39863;--ivory:#f7f4ee;--line:#d7d6ce;--muted:#62686b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ivory);color:var(--navy);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.03;letter-spacing:-.035em}h2{font-size:clamp(42px,4.6vw,70px)}em{font-weight:400;color:var(--brass)}.header{height:96px;padding:0 4.8%;display:flex;align-items:center;justify-content:space-between;background:var(--deep);color:var(--ivory);border-bottom:1px solid #ffffff20;position:relative;z-index:5}.brand-name{display:block;font-family:Georgia,serif;font-size:27px;line-height:1.1;letter-spacing:.18em}.brand-name>span{display:block;text-align:center;font-family:Manrope,Arial,sans-serif;font-size:10px;letter-spacing:.55em;margin-top:8px}.header nav{display:flex;gap:35px;font-size:14px}.header nav a{transition:color .2s}.header nav a:hover{color:var(--brass)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;border:1px solid var(--brass);padding:13px 27px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,color .2s,transform .2s;border-radius:0}.button:hover{background:#c4ab7e;color:var(--deep);transform:translateY(-2px)}.small{min-height:44px;font-size:13px;padding:10px 20px}.brass{background:var(--brass);color:var(--deep)}.menu{display:none}.hero{height:min(840px,calc(100svh - 96px));min-height:610px;position:relative;color:white;overflow:hidden}.hero-image{height:100%;width:100%;object-fit:cover;object-position:center 56%;position:absolute;animation:image-enter 1.8s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,21,30,.85) 0%,rgba(7,21,30,.54) 42%,rgba(7,21,30,.02) 80%),linear-gradient(0deg,rgba(7,21,30,.65),transparent 40%)}.hero-content{position:relative;padding:76px 7.2% 70px}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:500;display:flex;align-items:center;gap:12px}.eyebrow>span{width:28px;height:1px;background:var(--brass)}h1{font-size:clamp(62px,6.6vw,101px);margin-top:32px;max-width:780px}.hero h1 em{color:#d4bb8c}.hero-intro{font-size:16px;color:#e4e5e3;line-height:1.7;margin:27px 0 30px}.hero-bottom{position:absolute;bottom:24px;left:4.8%;right:4.8%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.15em;border-top:1px solid #ffffff40;padding-top:21px}.hero-bottom a{display:flex;gap:15px;align-items:center}.scroll-line{height:28px;width:1px;background:var(--brass)}.drawing-label{position:absolute;right:5%;top:36px;border-left:1px solid #fff7;padding-left:12px;font-size:10px;line-height:1.8;letter-spacing:.12em}.section{padding:80px 7.2% 90px}.section-index{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;font-size:11px;letter-spacing:.15em;margin-bottom:48px}.cross{font-size:24px;line-height:1;color:var(--brass)}.intro-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:10%}.intro .lead{font-size:22px;line-height:1.5;margin-bottom:20px;color:var(--navy)}.intro p{color:var(--muted);margin-bottom:16px}.location{margin-top:34px;font-size:11px;letter-spacing:.08em;border-top:1px solid var(--line);padding-top:17px}.location span{display:block;color:var(--muted);letter-spacing:0;font-size:14px;margin-top:4px}.expertise{background:#edece5}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px}.section-heading>p{font-size:14px;color:var(--muted);max-width:340px}.expertise-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%}.material-panel{position:relative;min-height:530px;overflow:hidden;color:white}.material-panel img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:78% 50%}.material-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071a28e8,transparent 80%)}.material-panel>div{position:absolute;z-index:1;bottom:35px;left:35px;right:25px}.material-panel span{font-size:10px;letter-spacing:.13em;color:#d5bf95}.material-panel h3{font-family:Georgia,serif;font-size:34px;line-height:1.15;font-weight:400;margin:16px 0}.material-panel p{font-size:14px;color:#ddd}.accordions details{border-top:1px solid #bfc2bd}.accordions details:last-child{border-bottom:1px solid #bfc2bd}summary{list-style:none;display:flex;gap:18px;align-items:center;cursor:pointer;min-height:87px;padding:20px 0}summary::-webkit-details-marker{display:none}summary h3{font-weight:500;font-size:20px;line-height:1.4}.num{color:#8c7547;font-size:11px;align-self:center}.toggle{margin-left:auto;position:relative;width:14px;min-width:14px;height:14px}.toggle:before,.toggle:after{content:'';position:absolute;top:6px;left:0;width:14px;height:1px;background:var(--navy)}.toggle:after{transform:rotate(90deg);transition:transform .2s}details[open] .toggle:after{transform:rotate(0)}.detail{padding:0 0 27px 33px;color:var(--muted);font-size:15px}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.tags span{font-size:11px;border:1px solid #c7c8bf;padding:4px 9px;color:var(--navy)}.statement{position:relative;overflow:hidden;background-color:var(--navy);background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:80px 80px;padding:90px 7.2%;text-align:center;color:var(--ivory)}.statement .eyebrow{justify-content:center;color:#c0a77b}.statement h2{font-size:clamp(48px,5.5vw,80px);margin:28px 0}.statement p:last-child{color:#bfcbcf;font-size:15px}.plan-corner{position:absolute;width:130px;height:130px;border-color:#b3986380;border-style:solid}.corner-one{top:38px;left:4.8%;border-width:1px 0 0 1px}.corner-two{bottom:38px;right:4.8%;border-width:0 1px 1px 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px}.steps article{padding:0 25px;border-left:1px solid var(--line)}.steps article:first-child{padding-left:0;border-left:0}.step-number{font-family:Georgia,serif;font-size:45px;color:var(--brass);font-weight:400}.steps h3{font-size:20px;font-weight:500;margin:15px 0}.steps p{font-size:14px;color:var(--muted)}.step-label{display:block;font-size:10px;letter-spacing:.1em;margin-top:28px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:var(--deep);color:var(--ivory)}.contact h2{margin:29px 0;font-size:clamp(43px,4.5vw,65px)}.contact-copy>p:not(.eyebrow){font-size:14px;color:#bdc4c6}.contact .eyebrow{color:var(--brass);font-size:10px}.contact-signature{font-size:13px;letter-spacing:.15em;margin-top:55px}.contact-signature span{display:block;font-family:Georgia,serif;font-style:italic;letter-spacing:0;color:var(--brass);font-size:18px;margin-top:8px}.form-title{font-size:20px;margin-bottom:25px;font-family:Georgia,serif}label{display:block;font-size:12px;margin-bottom:20px;color:#d7dadd}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,select,textarea{width:100%;display:block;background:transparent;border:0;border-bottom:1px solid #ffffff40;border-radius:0;padding:11px 0;color:white;outline:none;font-size:14px}select{color-scheme:dark}input:focus,select:focus,textarea:focus{border-color:var(--brass)}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#929fa7}form .button{width:100%;margin-top:4px}.form-note{font-size:11px;color:#9caab2;margin-top:12px;line-height:1.5}#form-status{font-size:13px;color:#d4bb8c;margin-top:8px}footer{background:var(--deep);color:#bec7cb;border-top:1px solid #ffffff20;padding:38px 4.8%;display:flex;align-items:center;gap:50px;flex-wrap:wrap}footer .brand{color:var(--ivory)}footer .brand-name{font-size:21px}footer p{font-size:12px;margin-right:auto}footer>a:not(.brand){font-size:12px}.copyright{font-size:10px;color:#8e9ba4}@keyframes image-enter{from{transform:scale(1.04)}to{transform:scale(1)}}@media(min-width:1600px){.hero-content{padding-top:100px}.section{padding-left:max(7.2%,calc((100vw - 1450px)/2));padding-right:max(7.2%,calc((100vw - 1450px)/2))}}@media(max-width:1000px){.header{padding:0 5%;height:85px}.header nav{gap:20px}.header .small{display:none}.hero{height:760px;min-height:0}.hero-content{padding-top:85px}h1{font-size:78px}.hero-shade{background:linear-gradient(90deg,#07151ed9,#07151e40),linear-gradient(0deg,#07151e90,transparent)}.intro-grid{gap:6%}.expertise-grid{gap:5%;grid-template-columns:.8fr 1.2fr}.section-heading{align-items:start}.steps{grid-template-columns:1fr 1fr;gap:38px 0}.steps article:nth-child(3){border:0;padding-left:0}.contact{gap:6%}}@media(max-width:680px){.header{height:78px}.brand-name{font-size:23px}.header .menu{display:block;background:none;color:var(--ivory);border:1px solid #b3986370;width:42px;height:42px;font-size:20px}.header nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--deep);padding:24px 7%;border-bottom:1px solid var(--brass);flex-direction:column}.header nav.open{display:flex}.hero{height:740px;max-height:calc(100svh - 78px);min-height:620px}.hero-content{padding:67px 7% 80px}.hero-image{object-position:64% center}.eyebrow{font-size:9px;letter-spacing:.1em}h1{font-size:clamp(51px,12vw,73px);margin-top:30px;line-height:1.02}.hero-intro{font-size:14px;margin:25px 0}.hero-bottom{left:7%;right:7%;font-size:9px}.hero-bottom>span{display:none}.hero-bottom a{width:100%;justify-content:space-between}.drawing-label{display:none}.section{padding:52px 7% 60px}.section-index{font-size:10px;margin-bottom:32px}.intro-grid{grid-template-columns:1fr;gap:30px}.intro .lead{font-size:20px}.intro p{font-size:15px}h2{font-size:43px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:24px}.expertise-grid{grid-template-columns:1fr;gap:30px}.material-panel{min-height:350px}.material-panel img{object-position:center 55%}.material-panel>div{bottom:27px;left:27px}.material-panel h3{font-size:30px}summary h3{font-size:18px}summary{min-height:78px}.statement{padding:77px 7%}.statement h2{font-size:45px}.plan-corner{width:50px;height:50px}.steps{margin-top:32px;gap:32px 0}.steps article{padding:0 0 0 18px}.steps article:nth-child(odd){padding-right:18px}.steps h3{font-size:18px}.steps p{font-size:13px}.step-label{font-size:9px}.step-number{font-size:35px}.contact{grid-template-columns:1fr;gap:45px}.contact h2{font-size:48px}.contact-signature{margin-top:28px}.form-row{gap:15px}footer{padding:35px 7%;gap:25px}footer p{width:100%;order:2}.copyright{width:100%;order:3}footer>a:not(.brand){margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(min-width:1001px){.hero{min-height:760px}}
/* Architectural scroll sequence */
.hero{height:190svh;min-height:1450px;overflow:clip;background:var(--deep)}.hero-stage{height:100svh;min-height:760px;position:sticky;top:0;overflow:hidden}.hero-image{animation:none;transform:scale(1.06);transform-origin:66% 52%;will-change:transform}.hero-content{will-change:transform,opacity}.hero-shade{background:linear-gradient(90deg,#061522eb 0%,#0615228a 38%,#0615220a 75%),linear-gradient(0deg,#061522bd,transparent 45%)}.hero-second{position:absolute;left:7.2%;bottom:18%;right:7.2%;opacity:0;transform:translateY(25px);pointer-events:none;will-change:transform,opacity}.hero-second h2{font-size:clamp(45px,5.3vw,78px);margin:25px 0}.hero-second h2 em{color:#d4bb8c}.hero-second p{font-size:14px;color:#d4dce0}.hero-second .eyebrow{color:#d4bb8c}.hero-progress{position:absolute;right:4.8%;top:22%;bottom:22%;width:1px;background:#ffffff30}.hero-progress span{display:block;width:2px;height:100%;background:var(--brass);transform:scaleY(0);transform-origin:top}.hero-bottom{z-index:2}.drawing-label{z-index:2}.hero-second h2{max-width:900px}@media(max-width:1000px){.hero-stage{min-height:760px}.hero{min-height:1450px}.hero-content{padding-top:85px}}@media(max-width:680px){.hero{height:calc(100svh - 78px);min-height:650px;max-height:none}.hero-stage{height:100%;min-height:650px;position:relative}.hero-image{object-position:60% center;transform:scale(1.04)}.hero-content{padding-top:65px}.hero-second,.hero-progress{display:none}.hero-shade{background:linear-gradient(90deg,#061522de,#0615224d),linear-gradient(0deg,#061522b0,transparent 60%)}.hero h1{font-size:62px;max-width:340px}}@media(prefers-reduced-motion:reduce){.hero{height:760px;min-height:760px}.hero-stage{position:relative;height:100%}.hero-image{transform:none!important}.hero-second,.hero-progress{display:none}.hero-content{opacity:1!important;transform:none!important}}
.quote-card{align-self:center;border:1px solid #b3986370;padding:40px;background:#142d3e80}.quote-card h3{font-family:Georgia,serif;font-weight:400;font-size:32px;line-height:1.2;margin:24px 0 18px}.quote-card p{font-size:15px;color:#c8cfd3;margin-bottom:25px}.quote-card .button{width:100%}.quote-detail{display:block;margin-top:20px;font-size:12px;color:#bbc5ca}.header .small{display:inline-flex}dialog{color:var(--ivory);background:var(--deep);border:1px solid var(--brass);padding:38px;width:min(680px,calc(100% - 28px));max-height:90svh;overflow:auto;box-shadow:0 24px 100px #0009}dialog::backdrop{background:#03101dcc;backdrop-filter:blur(7px)}.dialog-head{display:flex;gap:20px;justify-content:space-between;margin-bottom:25px}.dialog-head .eyebrow{font-size:10px;color:var(--brass)}.dialog-head h2{font-size:38px;line-height:1.12;margin-top:14px}.dialog-head p{font-size:13px;color:#bac6cc;margin-top:12px}.dialog-close{flex:none;width:40px;height:40px;border:1px solid #ffffff40;color:var(--ivory);background:transparent;cursor:pointer;font-size:28px;line-height:1}.dialog-close:hover{background:#ffffff15}dialog .form-title{display:none}dialog label{font-size:14px}dialog .form-note{font-size:12px}dialog input,dialog select,dialog textarea{font-size:16px}dialog input:focus-visible,dialog select:focus-visible,dialog textarea:focus-visible{outline:1px solid var(--brass);outline-offset:4px}@media(max-width:680px){.header{gap:12px}.header .small{font-size:11px;padding:8px 10px;min-height:40px;margin-left:auto}.header .menu{width:36px;flex:none}.header .brand-name{font-size:19px}.quote-card{padding:27px}dialog{padding:24px}.dialog-head h2{font-size:30px}dialog .form-row{grid-template-columns:1fr;gap:0}}.header{height:100px}.header .brand{flex:none}.hero-image{object-position:center 56%}
/* Custom form choices */
.da-select{position:relative;margin-top:8px}.da-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none;padding:0!important;border:0!important}.da-select-button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#142d3e;color:#f7f4ee;border:1px solid #b398635c;padding:13px 15px;min-height:52px;text-align:left;font-size:15px;line-height:1.4;cursor:pointer}.da-select-button:after{content:'';width:7px;height:7px;flex:none;border-right:1.5px solid var(--brass);border-bottom:1.5px solid var(--brass);transform:rotate(45deg);margin:0 3px 5px 10px;transition:transform .2s}.da-select-button[aria-expanded=true]{border-color:var(--brass);box-shadow:0 0 0 1px #b3986333}.da-select-button[aria-expanded=true]:after{transform:rotate(225deg);margin-top:6px}.da-select-button:hover{background:#1b384b;border-color:var(--brass)}.da-select-button.placeholder{color:#a9b5bb}.da-select-button[aria-invalid=true]{border-color:#deb78c}.da-select-list{position:absolute;z-index:20;top:calc(100% + 7px);left:0;right:0;margin:0;padding:6px;background:#142d3e;border:1px solid #b3986380;box-shadow:0 18px 45px #0008;max-height:245px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#b3986370 #142d3e;scrollbar-width:thin;list-style:none}.da-select-list[hidden]{display:none}.da-select.up .da-select-list{top:auto;bottom:calc(100% + 7px)}.da-option{padding:11px 12px;color:var(--ivory);font-size:14px;line-height:1.4;cursor:pointer;display:flex;justify-content:space-between;gap:8px;border:1px solid transparent}.da-option+.da-option{border-top-color:#ffffff0c}.da-option[aria-selected=true]{color:#d7bd8d;background:#b398631a}.da-option[aria-selected=true]:after{content:'✓';color:var(--brass)}.da-option.active,.da-option:hover{background:#b3986326;border-color:#b3986340}.da-select-help{font-size:12px;color:#dec49d;margin-top:6px}.da-select-help:empty{display:none}@media(max-width:1000px){.header nav{gap:14px;font-size:13px}}@media(max-width:680px){.header{height:86px;padding:0 4%;gap:8px}.header nav{top:86px}.header .small{font-size:10px;padding:8px}.header .menu{width:32px;height:36px}.da-select-button{font-size:16px}.da-option{padding:13px 10px;font-size:15px}.da-select-list{max-height:220px}}
.da-field{margin-bottom:20px;color:#d7dadd;font-size:14px}.da-field>span{display:block}.header nav{gap:24px}.header nav a[aria-current=page]{color:#d4bb8c;border-bottom:1px solid var(--brass);padding-bottom:5px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#edece5}.contact-details .eyebrow{color:#887044;margin-bottom:25px}.contact-details h2{margin-bottom:25px}.contact-details>div>p:last-child{color:var(--muted);max-width:420px}.contact-methods{padding-top:10px}.contact-methods>a,.contact-methods>div{display:block;border-top:1px solid #b9bbae;padding:22px 0}.contact-methods span{display:block;font-size:11px;letter-spacing:.12em;color:var(--muted)}.contact-methods strong{display:block;font-size:clamp(22px,2.5vw,34px);font-weight:400;margin:8px 0;overflow-wrap:anywhere}.contact-methods small{font-size:13px;color:var(--muted)}.contact-methods>a:hover strong{color:#917443}.contact-methods>p{font-size:14px;margin-top:12px}.text-link{display:inline-block;color:var(--navy);margin-top:20px;border-bottom:1px solid var(--brass);font-size:14px}.exterior-page .hero-image{object-position:62% center}@media(max-width:1050px) and (min-width:681px){.header nav{gap:16px;font-size:12px}}@media(max-width:680px){.contact-details{grid-template-columns:1fr;gap:30px}.contact-methods strong{font-size:26px}.header nav{gap:20px;font-size:15px}.exterior-page h1{font-size:56px}}
.services-section{background:#edece5}.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{border:1px solid #cdcec3;padding:30px;display:flex;flex-direction:column;background:#f7f4ee70;position:relative}.service-number{font-family:Georgia,serif;color:#9b8253;font-size:32px;margin-bottom:18px}.service-card h3{font-family:Georgia,serif;font-size:27px;font-weight:400;line-height:1.15;min-height:94px;overflow-wrap:break-word}.service-card .service-subtitle{font-size:15px;color:var(--navy);margin:15px 0;font-weight:600}.service-card>p{font-size:14px;color:var(--muted);line-height:1.75}.service-card ul{list-style:none;padding:18px 0;margin:6px 0 20px;font-size:12px;color:var(--navy)}.service-card li{border-top:1px solid #d5d5cb;padding:8px 0}.service-action{margin-top:auto;font-size:13px;align-self:flex-start;border-bottom:1px solid var(--brass);padding-bottom:5px}.service-action:hover{color:#907242}.exterior-feature{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:var(--ivory);overflow:hidden}.exterior-feature img{width:100%;height:100%;min-height:300px;object-fit:cover}.exterior-feature>div{padding:45px;align-self:center}.exterior-feature h3{font-family:Georgia,serif;font-size:36px;line-height:1.15;font-weight:400;margin:25px 0}.exterior-feature .eyebrow{font-size:10px;color:#ccb585}.feature-link{display:inline-block;border-bottom:1px solid var(--brass);font-size:13px;padding-bottom:5px}.exterior-feature:hover .feature-link{color:#d4bb8c}@media(max-width:1050px){.service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card h3{min-height:65px}.exterior-feature>div{padding:30px}.exterior-feature h3{font-size:30px}}@media(max-width:680px){.service-cards{grid-template-columns:1fr}.service-card{padding:26px}.service-card h3{min-height:0;font-size:28px}.service-number{margin-bottom:10px}.exterior-feature{grid-template-columns:1fr}.exterior-feature img{min-height:0;height:240px}.exterior-feature>div{padding:28px}.hero-content .eyebrow{max-width:290px}.hero h1{font-size:57px}}
.header-phone{display:flex;flex-direction:column;line-height:1.4;text-align:center;margin:0 15px;white-space:nowrap}.header-phone>span{font-size:15px;color:#f7f4ee;letter-spacing:.04em}.header-phone small{font-size:10px;color:#c6b188;margin-top:3px}.header nav{gap:18px}@media(max-width:1150px) and (min-width:681px){.header{padding:0 3%}.header nav{gap:12px;font-size:12px}.header-phone{margin:0 10px}.header-phone>span{font-size:13px}.header .small{font-size:11px;padding:10px 12px}}@media(max-width:850px) and (min-width:681px){.header nav{display:none;position:absolute;top:100px;left:0;right:0;background:var(--deep);padding:24px 7%;border-bottom:1px solid var(--brass);flex-direction:column}.header nav.open{display:flex}.header .menu{display:block;background:none;color:var(--ivory);border:1px solid #b3986370;width:36px;height:40px}.header-phone{margin-left:auto}}@media(max-width:680px){.header{height:117px;flex-wrap:wrap;justify-content:space-between;padding:10px 4%;column-gap:8px;row-gap:4px}.header-phone{order:5;flex:0 0 100%;margin:0;flex-direction:row;align-items:center;justify-content:center;gap:10px;padding-top:6px;border-top:1px solid #ffffff1a}.header-phone>span{font-size:13px}.header-phone small{font-size:10px;margin:0}.header nav{top:117px}.header .small{margin-left:auto}.header nav.open{order:6}}
.legal-main{max-width:1000px;margin:0 auto;padding:65px 35px 90px}.legal-main h1{font-size:clamp(44px,6vw,72px);margin:20px 0}.legal-date{font-size:14px;color:var(--muted)}.legal-main section{margin-top:40px;border-top:1px solid var(--line);padding-top:28px}.legal-main h2{font-family:Manrope,Arial,sans-serif;font-size:23px;line-height:1.35;letter-spacing:0;margin-bottom:20px;font-weight:600}.legal-main p{margin-bottom:16px}.legal-main a{text-decoration:underline;text-decoration-color:var(--brass);text-underline-offset:4px;overflow-wrap:anywhere}.legal-notice{background:#eae3d5;border-left:3px solid var(--brass);padding:23px;margin-top:30px}.legal-notice p{margin:10px 0 0}.legal-main dl{display:grid;grid-template-columns:200px 1fr;gap:13px 25px}.legal-main dt{font-weight:600}.legal-main dd{margin:0}.to-complete{color:#74582c}.legal-sources{font-size:14px}@media(max-width:680px){.legal-main{padding:45px 7% 60px}.legal-main dl{grid-template-columns:1fr;gap:5px}.legal-main dd{margin-bottom:15px}.legal-main h2{font-size:20px}}
#other-project-field[hidden]{display:none}#other-project-field{padding:16px;border-left:2px solid var(--brass);background:#142d3e80}#other-project{margin-top:8px}
.service-image{display:block;width:calc(100% + 60px);max-width:none;height:auto;aspect-ratio:3/2;object-fit:cover;margin:-30px -30px 25px;filter:saturate(.85)}.service-card{overflow:hidden}.service-card .service-number{font-size:26px;margin-bottom:12px}.service-card h3{font-size:25px}@media(max-width:680px){.service-image{width:calc(100% + 52px);margin:-26px -26px 23px}.service-card h3{font-size:27px}}
#devis{width:min(850px,calc(100% - 28px))}.wizard-step[hidden],.wizard-actions[hidden],.wizard-progress[hidden],#quote-success[hidden],.wizard-actions button[hidden]{display:none!important}.wizard-progress{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #ffffff25;padding-bottom:16px;margin-bottom:27px;font-size:12px;color:#8d9ea9}.wizard-progress .current{color:#d4bb8c}.wizard-progress .complete{color:#e2e9ec}.wizard-step h3,#quote-success h3{font-family:Georgia,serif;font-weight:400;font-size:28px;line-height:1.25;margin-bottom:10px}.wizard-step>p{font-size:14px;color:#afbdc6;margin-bottom:25px}.property-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.visual-choice{cursor:pointer;border:1px solid #b3986345;position:relative;background:var(--navy);margin:0}.visual-choice img{width:100%;height:145px;object-fit:cover;display:block}.visual-choice>span{display:block;padding:17px 12px;font-size:16px;text-align:center}.visual-choice input,.work-choice input{position:absolute;left:12px;top:12px;width:19px;height:19px;accent-color:var(--brass);z-index:1}.visual-choice:has(input:checked),.work-choice:has(input:checked){outline:2px solid var(--brass);background:#2a4050}.visual-choice:focus-within,.work-choice:focus-within{outline:2px solid #f7f4ee;outline-offset:4px}.works-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.work-choice{display:flex;align-items:center;position:relative;gap:15px;cursor:pointer;border:1px solid #b3986355;background:var(--navy);margin:0;min-height:85px}.work-choice img{width:82px;height:85px;object-fit:cover}.work-choice>span:last-child{font-size:13px;line-height:1.45;padding:10px 12px 10px 0}.other-symbol{font-size:32px;text-align:center;width:82px;flex:none;color:var(--brass)}.wizard-actions{display:flex;gap:15px;margin-top:28px}.wizard-actions .button{width:auto;min-width:140px}.wizard-actions .brass{margin-left:auto}.wizard-actions button:disabled{opacity:.6;cursor:wait}.photo-picker{display:block;border:1px dashed #b3986380;padding:20px;position:relative;margin-top:25px}.photo-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;z-index:1}.photo-picker>span{display:block;margin:12px 0;color:#d4bb8c;font-size:15px}.photo-picker small{font-size:12px;color:#aab8c2}.photo-picker:focus-within{outline:2px solid var(--brass)}#photo-previews{display:flex;gap:10px;flex-wrap:wrap}.photo-preview{width:130px;background:#142d3e;padding:8px}.photo-preview img{width:100%;height:75px;object-fit:cover}.photo-preview span{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:11px}.photo-preview button{background:none;color:#d4bb8c;border:0;cursor:pointer;font-size:12px}.photo-guidance{font-size:12px!important}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#wizard-error{font-size:14px;color:#f2c5a1;margin-top:15px}#quote-recap{padding:15px 20px;border-left:2px solid var(--brass);background:var(--navy);margin:20px 0;font-size:13px;color:#d0d9dd}#quote-recap p{margin:5px 0}#quote-success{text-align:center;padding:30px 0}#quote-success p{margin:20px 0}.quote-reference{font-size:12px;overflow-wrap:anywhere;color:#bdcbd2}#brief .form-note a{color:#d4bb8c;text-decoration:underline}@media(max-width:680px){.property-choices{gap:8px}.visual-choice img{height:90px}.visual-choice>span{font-size:12px;padding:14px 5px}.works-choices{grid-template-columns:1fr}.wizard-progress{font-size:10px;gap:6px}.wizard-step h3{font-size:23px}.wizard-actions .button{min-width:0;padding:12px 16px}.work-choice img{height:72px}.work-choice{min-height:72px}.work-choice>span:last-child{font-size:14px}.wizard-step .form-row{grid-template-columns:1fr}}
.header{position:sticky;top:0;z-index:40;box-shadow:0 4px 20px #06152225}.hero-stage{top:100px;height:calc(100svh - 100px);min-height:660px}html{scroll-padding-top:120px}@media(max-width:680px){.hero-stage{top:0;height:100%;min-height:650px}html{scroll-padding-top:135px}}@media(prefers-reduced-motion:reduce){.hero-stage{top:0}}
/* Before/after comparisons */
.comparisons{background:#eeeae3}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.comparison-card{min-width:0}.comparison-stage{position:relative;aspect-ratio:1.25;overflow:hidden;background:var(--navy);isolation:isolate}.comparison-picture{position:absolute;inset:0;background-repeat:no-repeat;pointer-events:none}.salon .comparison-picture{background-image:url('assets/comparison-salon.png');background-size:200.84% 118.64%;background-position:0 45%}.salon .comparison-after{background-position:100% 45%}.bain .comparison-picture{background-image:url('assets/comparison-bain.png');background-size:200% 166.67%;background-position:left center}.bain .comparison-after{background-position:right center}.comparison-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.comparison-tag{position:absolute;top:20px;padding:6px 13px;background:#0c1d28cc;color:white;font-size:13px;letter-spacing:.12em;text-transform:uppercase;pointer-events:none}.tag-before{left:20px}.tag-after{right:20px}.comparison-line{position:absolute;top:0;bottom:0;left:var(--split);width:2px;background:#fff;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 8px #0003}.comparison-line span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--ivory);color:var(--navy);font-size:25px;letter-spacing:4px;padding-left:4px;border:1px solid var(--brass);box-shadow:0 3px 15px #0003}.comparison-slider{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;opacity:0;cursor:ew-resize;z-index:4;touch-action:pan-y}.comparison-stage:focus-within{outline:3px solid var(--brass);outline-offset:5px}.comparison-caption{padding:23px 0;border-bottom:1px solid var(--line)}.comparison-caption h3{font:400 31px/1.2 'Cormorant Garamond',Georgia,serif}.comparison-caption p{font-size:14px;margin-top:9px;color:var(--muted)}.comparison-footer{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-top:30px}.comparison-footer>span{font-size:14px;color:var(--muted)}@media(max-width:760px){.comparison-grid{grid-template-columns:1fr;gap:32px}.comparison-footer{align-items:flex-start;flex-direction:column}.comparison-tag{top:12px}.tag-before{left:12px}.tag-after{right:12px}}
/* Service selection: the whole card is the control. */
#brief .work-choice input[type="checkbox"]{position:absolute;width:1px;height:1px;left:0;top:0;margin:0;padding:0;border:0;opacity:0;clip-path:inset(50%);overflow:hidden}
#brief .work-choice{transition:border-color .18s,background-color .18s;outline:none}
#brief .work-choice[hidden]{display:none!important}
#brief .visual-choice input[type="radio"]{position:absolute;width:1px;height:1px;left:0;top:0;margin:0;padding:0;border:0;opacity:0;clip-path:inset(50%);overflow:hidden}
#brief .visual-choice,#brief .work-choice{touch-action:manipulation;-webkit-user-select:none;user-select:none}
#brief .visual-choice img,#brief .work-choice img{pointer-events:none;-webkit-user-drag:none}
#brief .visual-choice:focus-within,#brief .work-choice:focus-within{outline:none}
#brief .visual-choice:has(input:checked),#brief .work-choice:has(input:checked){outline:2px solid var(--brass)}
#brief .visual-choice:has(input:focus-visible),#brief .work-choice:has(input:focus-visible){outline:2px solid var(--ivory);outline-offset:4px}
#brief .work-choice>span:last-child{padding-right:45px}
#brief .work-choice::after{content:"";position:absolute;right:15px;top:50%;width:21px;height:21px;border:1px solid #b3986370;border-radius:50%;transform:translateY(-50%);pointer-events:none}
#brief .work-choice:hover{border-color:var(--brass);background:#20394a}
#brief .work-choice:has(input:checked){border-color:var(--brass);background:#293e48;box-shadow:inset 0 0 0 1px var(--brass)}
#brief .work-choice:has(input:checked)::after{content:"✓";background:var(--brass);border-color:var(--brass);color:var(--deep);font-size:14px;font-weight:700;line-height:21px;text-align:center}
#brief .work-choice:has(input:focus-visible){outline:2px solid var(--ivory);outline-offset:4px}
@media(prefers-reduced-motion:reduce){#brief .work-choice{transition:none}}
#brief .work-choice>span:last-child strong{display:block;font-size:14px;font-weight:600;line-height:1.4}#brief .work-choice>span:last-child small{display:block;margin-top:5px;font-size:12px;font-weight:400;line-height:1.5;color:#b9c6ce}#brief .work-choice{min-height:112px}#brief .work-choice img{height:112px;align-self:stretch;object-fit:cover}#brief .work-choice:first-child{grid-column:1/-1;background:#233c4b;border-color:#b3986380}#brief .work-choice:first-child strong{font-size:17px}#brief .work-choice:first-child img{width:120px}@media(max-width:680px){#brief .work-choice:first-child img{width:82px}#brief .work-choice>span:last-child small{font-size:13px}}
/* Original supplied logo, with its exact proportions and colors. */
.header,footer{background:var(--ivory);color:var(--navy)}
.header{border-bottom-color:var(--line)}
.header .header-phone small,footer p,footer .copyright{color:var(--muted)}
.header .menu{color:var(--navy)}
@media(max-width:1100px){}
@media(max-width:680px){.header nav{background:var(--ivory);color:var(--navy)}}

.header .logo-frame,footer .logo-frame{display:block;position:relative;flex:none;width:235px;height:72px;background:transparent;overflow:visible}
.header .logo-frame img,footer .logo-frame img{display:block;position:static;width:100%;height:100%;max-width:100%;object-fit:contain;filter:none;opacity:1;mix-blend-mode:multiply}
@media(max-width:1100px){.header .logo-frame{width:180px;height:55px}}
@media(max-width:680px){.header .logo-frame{width:165px;height:51px}}

.terrasse .comparison-picture{background-image:url('assets/comparison-terrasse.png');background-size:200% 166.67%;background-position:left center}.terrasse .comparison-after{background-position:right center}.jardin .comparison-picture{background-image:url('assets/comparison-jardin.png');background-size:200% 166.67%;background-position:left center}.jardin .comparison-after{background-position:right center}

.reviews-section{background:#f7f4ee}.reviews-intro{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:22px 0 28px;border-top:1px solid #d7d6ce}.reviews-kicker{font-size:11px;letter-spacing:.18em;font-weight:700;color:#6a7378}.reviews-score{display:flex;align-items:center;gap:15px}.reviews-score>span,.review-stars{color:#b39863;letter-spacing:2px;font-size:18px;line-height:1}.reviews-score strong{font-size:14px;font-weight:600}.reviews-intro>p{width:100%;font-size:13px;color:#62686b}.review-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{background:#fff;border:1px solid #e2ded5;box-shadow:0 14px 35px rgba(20,45,62,.06);padding:27px;min-height:290px}.review-person{display:flex;align-items:center;gap:13px}.review-avatar{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:50%;background:#dfe7e9;color:#142d3e;font-weight:700}.review-person strong,.review-person small{display:block;line-height:1.4}.review-person strong{font-size:14px}.review-person small{font-size:12px;color:#62686b}.review-stars{margin:23px 0 16px}.review-card>p{font-size:15px;line-height:1.7;color:#263b48}.reviews-disclaimer{margin-top:22px;font-size:12px;color:#62686b}@media(max-width:800px){.review-cards{grid-template-columns:1fr}.review-card{min-height:0}.reviews-score{flex-wrap:wrap}}

/* Mobile header: readable contact and room for the menu. */
.header .header-phone>span{color:var(--navy)}
.header .header-phone{border-top-color:#142d3e24}
@media(max-width:380px){.header .small{display:none}.header .logo-frame{width:160px;height:49px}.header .menu{margin-left:auto}.header{column-gap:6px}.hero h1{font-size:clamp(48px,14vw,58px)}.wizard-progress{font-size:9px;gap:4px}}

.header .header-phone>a{font-size:15px;color:var(--navy);letter-spacing:.04em;text-decoration:none;white-space:nowrap}.header .header-phone>a:hover,.contact-methods strong a:hover{color:#917443;text-decoration:underline}.header .header-phone>a:focus-visible,.contact-methods strong a:focus-visible{outline:2px solid var(--brass);outline-offset:4px}@media(max-width:680px){.header .header-phone>a{font-size:13px}}

/* Keep the adjacent photograph stable while categories unfold. */
.expertise-grid .material-panel{height:530px;align-self:start}.accordions{overflow-anchor:none}.accordions summary{touch-action:manipulation}@media(max-width:680px){.expertise-grid .material-panel{height:350px}}
