/* Maison de Coré — a tactile, architectural identity. */
:root{--paper:#eee9df;--ink:#302d27;--muted:#706a60;--line:#b8ab955c;--olive:#827258;--bronze:#88765c;--linen:repeating-linear-gradient(0deg,#847c6905 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,#fff6 0 1px,transparent 1px 4px);--plaster:radial-gradient(ellipse at 15% 25%,#fff7,transparent 55%),radial-gradient(ellipse at 88% 76%,#9b8b7120,transparent 60%)}
body{background-color:var(--paper);background-image:var(--plaster);font-size:14px;color:var(--ink)}
header{height:auto;min-height:192px;display:grid;grid-template-columns:1fr auto 1fr;padding:24px 5% 0;background:var(--linen),#eee9df;position:relative;border:0;gap:0}
.header-note,.header-inquiry{font-size:10px;letter-spacing:2px;text-transform:uppercase;line-height:1.9;align-self:center}
.header-note span{display:block;color:#7b756a;font-size:9px;letter-spacing:1.5px;margin-top:3px}.header-inquiry{justify-self:end;border-bottom:1px solid #998568;padding-bottom:6px}
.brand{flex-direction:column;gap:9px;justify-self:center;text-align:center;padding:0 18px 21px}
.mark{height:92px;width:66px;position:relative;overflow:hidden;display:block;mix-blend-mode:multiply}
.mark img{position:absolute;width:128px!important;height:128px;max-width:none;left:-31px;top:-8px;transform:none!important;mix-blend-mode:multiply}
.wordmark{font-size:32px;letter-spacing:1.9px;line-height:1.15;color:#373229}.wordmark small{font-size:8px;letter-spacing:3.5px;margin-top:9px;color:#776b58}
nav{grid-column:1/-1;width:100%;justify-content:center;border-top:1px solid var(--line);gap:46px;min-height:51px;padding:12px 0;text-transform:uppercase;font-size:9px;letter-spacing:2px}
.nav-cta{border:0;padding:0}nav a{position:relative;padding:5px 0}nav a:after{content:'';position:absolute;left:0;right:100%;height:1px;bottom:0;background:var(--bronze);transition:right .25s}nav a:hover:after{right:0}
.hero{padding:0;position:relative;background:#333029}.hero-photo{height:clamp(520px,52vw,790px);width:100%;position:relative;background:#4a4338}
.hero-photo img{object-position:center 54%;filter:brightness(.86) saturate(.76)}
.hero-photo:after{inset:0;background:linear-gradient(90deg,#18150e66,#201b1230 60%,#18150e40),linear-gradient(0deg,#15120de0,transparent 55%,#19150e25)}
.hero-heading{position:absolute;z-index:2;inset:0 6% 43px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:27px;margin:0;color:#fbf7ee;pointer-events:none}
.hero .eyebrow{font-size:10px;letter-spacing:4px;color:#f0e6d4;text-shadow:0 1px 8px #0008}
.hero h1{font-size:clamp(58px,7.3vw,110px);line-height:1;letter-spacing:-1.8px;margin-top:25px;text-shadow:0 2px 24px #0003}.hero h1 em{color:#eee3cf;font-weight:400}
.hero-aside{width:min(400px,90%);padding:0;margin:0;display:block}.hero-aside p{font-size:12px;line-height:1.9;color:#f4edde;margin:0 0 24px;max-width:none;text-shadow:0 1px 8px #0008}
.hero-aside .text-link{pointer-events:auto;color:#fff5e5;font-size:10px;letter-spacing:2.1px;gap:25px;padding-bottom:9px;border-color:#b4a082}
.photo-label,.photo-number{bottom:29px;font-size:9px;letter-spacing:2.4px;color:#e9dfce}.photo-label{left:5%}.photo-number{right:5%}
.caption{background:#e6e0d4;color:#6c6355;padding:15px 5%;font-size:9px;letter-spacing:1.5px}
.eyebrow{color:#827158;letter-spacing:2.7px;font-size:10px;font-weight:500}
.intro{position:relative;max-width:none;margin:0;padding:103px 12% 108px;background:var(--plaster),var(--paper)}
.intro:before{content:'';width:1px;height:36px;background:#a99473;display:block;margin:0 auto 27px}
.intro h2{font-size:clamp(38px,4.5vw,64px);max-width:840px;line-height:1.14;letter-spacing:-.4px;margin-top:24px}.intro h2 em{color:#887357}.intro p{font-size:13px;color:#746c61;line-height:1.95;max-width:530px}
.section{padding-left:7%;padding-right:7%}.gallery{background:var(--linen),#e4dfd4;border-top:1px solid #c5b8a244;border-bottom:1px solid #c5b8a244;padding-top:80px;padding-bottom:85px}
h2{letter-spacing:-.6px}.section-top h2{font-size:clamp(40px,4.5vw,65px)}.text-link{font-size:10px;letter-spacing:1.5px;color:#76654d;border-color:#a48c6b}
.filters{gap:26px;margin-top:27px;flex-wrap:wrap}.filters button{font-size:11px;padding:9px 0;color:#766e60}.filters button.active{color:#3e382d;border-color:#9c835f}
.gallery-grid{gap:38px 52px;align-items:start}.project:nth-child(even){padding-top:80px}.project:nth-child(2){padding-top:80px}.project img{height:390px;filter:saturate(.88);transition:transform .8s,filter .8s}.project:nth-child(even) img,.project:nth-child(2) img{height:340px}.project:hover img{filter:saturate(1);transform:scale(1.025)}
.image-wrap{position:relative;border:9px solid #f1ece2;outline:1px solid #b9aa902e;box-shadow:0 9px 24px #41351f0a}.project-details{padding-top:18px}.project small{font-size:9px;letter-spacing:2px;color:#85755d}.project h3{font-size:32px;margin-top:5px}.project .arrow{color:#98805b}.gallery-note{font-size:10px;letter-spacing:.5px;color:#756b5b;margin-top:38px}
.materials{padding:90px 7%;background:#d3c9b9;background-image:repeating-linear-gradient(0deg,#af9b7910 0 1px,transparent 1px 7px),var(--plaster)}
.material-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:39px}.material-heading h2{font-size:clamp(40px,4.3vw,62px);margin-top:17px}.material-heading>p{font-size:12px;color:#63594b;max-width:320px;line-height:1.9}
.material-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.material-sample{margin:0}.swatch{height:190px;box-shadow:inset 0 0 20px #0000000c,0 8px 19px #51402b13;border:1px solid #73624925}
.swatch-stone{background-color:#d8caba;background-image:repeating-linear-gradient(2deg,transparent 0 17px,#a48a6630 19px,transparent 20px 38px),radial-gradient(ellipse at 25% 30%,#f2e9d9b3,transparent 65%),repeating-radial-gradient(ellipse at 10% 50%,transparent 0 7px,#9a826408 8px 9px)}
.swatch-linen{background-color:#b9ac95;background-image:repeating-linear-gradient(0deg,#f5e7ce4f 0 1px,#9382671a 1px 2px,transparent 2px 4px),repeating-linear-gradient(90deg,#fff2d14f 0 1px,#93826733 1px 2px,transparent 2px 4px)}
.swatch-oak{background-color:#62503e;background-image:repeating-linear-gradient(91deg,transparent 0 13px,#2d1b1744 14px,transparent 16px 35px,#d3b69230 36px,transparent 38px 56px),repeating-linear-gradient(89deg,#99806215 0 2px,#2c1f1a25 3px 4px,transparent 5px 9px),linear-gradient(110deg,#ae95723b,transparent,#17120f40)}
.swatch-bronze{background-color:#746550;background-image:linear-gradient(125deg,#3f372d,#a392733b 30%,#c2af8e88 47%,#76634b 65%,#3d352b),repeating-linear-gradient(0deg,#d5c2a014 0 1px,transparent 1px 3px)}
.material-sample figcaption{margin-top:17px;display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-family:'Cormorant Garamond',Georgia,serif;font-size:24px}.material-sample small{font-family:Manrope,Arial,sans-serif;font-size:8px;letter-spacing:1.4px;color:#6e6251;text-transform:uppercase}
.material-footnote{margin-top:29px;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#776953}
.services{background:var(--plaster),#efebe2;padding-top:95px;padding-bottom:100px}.services .description,.service p{font-size:13px;line-height:1.9}.service button{padding:28px 0}.service h3{font-size:31px}.service .num{color:#a38b66}.service .plus{color:#9a8463;font-size:20px}
.philosophy{background:#34312b;background-image:repeating-linear-gradient(92deg,transparent 0 40px,#fff1 41px,transparent 42px 120px),linear-gradient(110deg,#26231e,#514a3e88,#29251f);color:#e8decb}.philosophy>img{height:650px;filter:saturate(.7)}.philosophy-copy{position:relative;padding:70px 13%}.philosophy .eyebrow{color:#b8a17f}.philosophy h2{font-size:clamp(45px,4.3vw,67px);line-height:1.1}.philosophy h2 em{color:#c3af8c}.philosophy p{color:#ccc1ad;font-size:13px}.philosophy .signature{color:#bca88a;font-size:31px}.philosophy .mark{margin-bottom:25px;filter:invert(1);mix-blend-mode:screen;opacity:.5;width:50px;height:72px}.philosophy .mark img{width:100px!important;height:100px;left:-25px;top:-6px}
.process{background:var(--linen),#eae4d9}.steps{gap:55px}.step{border-color:#a58b654f}.step span{color:#8b7658;font-size:10px}.step p{font-size:13px}.step h3{font-size:33px}
.contact{position:relative;overflow:hidden;background:var(--plaster),#e0d7c7;padding:88px 20px 95px;border-color:#ad967140}.contact .contact-seal{margin:0 auto 28px;opacity:.65}.contact h2{font-size:clamp(49px,6vw,88px);line-height:1.02;letter-spacing:-1px}.contact h2 em{color:#877052}.contact p{color:#6f6250;font-size:13px}.solid{background:#373127;color:#f2eadb;border-color:#373127;padding:19px 29px;font-size:10px;letter-spacing:2px;margin-top:30px;transition:background .2s}.solid:hover{background:#6b5b44}.contact>p a{letter-spacing:1px;font-size:12px}
footer{background:#2c2923;color:#dbd0bc;padding:49px 6% 25px}.footer-top .brand{flex-direction:row;padding:0;gap:20px;justify-self:start}.footer-top .mark{filter:invert(1);mix-blend-mode:screen;opacity:.6;width:44px;height:63px}.footer-top .mark img{width:88px!important;height:88px;left:-22px;top:-5px}.footer-top .serif{font-size:30px}.footer-top>a{font-size:11px;letter-spacing:1px}.footer-bottom{color:#b2a48c;border-color:#a48c6538;font-size:9px;letter-spacing:1px;margin-top:30px}
dialog{background:var(--plaster),#efebe2;border:1px solid #b5a18366}dialog::backdrop{background:#16120cbd;backdrop-filter:none}#project-modal{max-width:1080px}#project-modal img{max-height:65vh;object-fit:contain;background:#e3dccf}#project-modal h2{font-size:40px}
@media(min-width:1600px){body{max-width:none}}
@media(max-width:900px){header{grid-template-columns:1fr auto 1fr;padding:19px 5% 0}.header-note{font-size:8px;letter-spacing:1px}.header-note span{font-size:8px}.header-inquiry{font-size:8px;letter-spacing:1px}.brand{padding-bottom:18px}.wordmark{font-size:28px}nav{position:static;display:flex;flex-direction:row;background:none;gap:23px;font-size:9px;letter-spacing:1px}.menu{display:none}.hero h1{font-size:76px}.hero-heading{inset:0 5% 40px}.hero-aside{width:min(380px,90%);margin:0}.hero-aside p{max-width:none;margin-bottom:20px}.hero-photo{height:600px}.hero-aside .text-link{font-size:10px}.gallery-grid{gap:28px}.project img{height:320px}.project:nth-child(even) img,.project:nth-child(2) img{height:280px}.project:nth-child(even),.project:nth-child(2){padding-top:50px}.swatch{height:145px}.material-grid{gap:15px}.material-sample figcaption{font-size:21px;display:block}.material-sample small{display:block;margin-top:3px}.material-heading{gap:30px}.material-heading>p{max-width:250px}.philosophy-copy{padding:50px 11%}.services{grid-template-columns:1fr;gap:38px}.services .description{max-width:600px}}
@media(max-width:600px){header{grid-template-columns:1fr auto;min-height:0;padding:16px 6%}.header-note,.header-inquiry{display:none}.brand{grid-column:1;justify-self:start;flex-direction:row;gap:13px;padding:0}.mark{width:42px;height:60px}.mark img{width:84px!important;height:84px;left:-21px;top:-5px}.wordmark{font-size:23px;letter-spacing:.7px}.wordmark small{font-size:7px;letter-spacing:2.2px;margin-top:6px}.menu{display:block;grid-column:2;grid-row:1;justify-self:end;color:#6d5a40;font-size:23px;padding:10px}.menu:focus-visible{outline:1px solid #6d5a40}nav{display:none;position:absolute;top:90px;left:0;right:0;flex-direction:column;background:#eee8dc;padding:22px;z-index:10;gap:13px;align-items:center}nav.open{display:flex}.hero-photo{height:540px}.hero-heading{inset:0 6% 36px;gap:23px}.hero .eyebrow{font-size:9px;letter-spacing:2px}.hero h1{font-size:58px;letter-spacing:-1px;line-height:1.03;margin-top:20px}.hero-aside{width:95%}.hero-aside p{font-size:12px;line-height:1.8;max-width:290px;margin:0 auto 21px}.hero-aside .text-link{font-size:9px;gap:20px}.photo-label,.photo-number{font-size:8px;letter-spacing:1.1px;bottom:20px}.photo-label{left:6%}.photo-number{right:6%}.caption{font-size:8px;letter-spacing:.7px;gap:20px;padding:13px 6%}.intro{padding:65px 7%}.intro h2{font-size:39px}.intro p{font-size:13px}.section,.materials{padding:60px 7%}.gallery-grid{grid-template-columns:1fr;gap:30px}.project:nth-child(even),.project:nth-child(2){padding-top:0}.project img,.project:nth-child(even) img,.project:nth-child(2) img{height:300px}.project h3{font-size:30px}.filters{gap:19px}.filters button{font-size:10px;min-height:44px}.material-heading{display:block}.material-heading>p{max-width:100%;margin-top:23px}.material-grid{grid-template-columns:1fr 1fr;gap:24px 18px}.swatch{height:160px}.material-sample figcaption{font-size:23px}.material-sample small{font-size:9px}.service button{gap:16px}.service h3{font-size:29px}.philosophy{grid-template-columns:1fr}.philosophy>img{height:370px}.philosophy-copy{padding:50px 8%}.philosophy h2{font-size:51px}.philosophy .mark{width:50px;height:72px}.steps{grid-template-columns:1fr;gap:32px}.contact{padding:60px 6%}.contact .contact-seal{width:55px;height:78px}.contact .contact-seal img{width:110px!important;height:110px;left:-27px;top:-7px}.contact h2{font-size:53px}.footer-top{flex-direction:column;gap:25px;align-items:center}.footer-top .brand{gap:13px}.footer-top .serif{font-size:28px}.footer-bottom{flex-direction:column;align-items:center;text-align:center;gap:10px}dialog{padding:32px 23px}.close{min-width:44px;min-height:44px}#project-modal h2{font-size:34px}}
