:root{--ink:#171310;--paper:#fbf5ea;--cream:#fff8ec;--red:#e3261a;--blue:#93c8e5;--line:#d9cdbd;font-family:"Avenir Next",Avenir,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}.site-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;padding:1.75rem 5vw;border-bottom:1px solid var(--line)}.site-name{font-weight:800;font-size:1.35rem;line-height:.92;letter-spacing:-.06em}.site-header nav{display:flex;gap:clamp(.75rem,2vw,1.7rem);padding-top:.3rem;font-size:.76rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.site-header nav a:hover,.site-header nav a.active{color:var(--red)}.intro{padding:clamp(4rem,9vw,10rem) 5vw 4rem;max-width:72rem}.eyebrow{margin:0 0:1rem;color:var(--red);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.intro h1,.text-page h1{margin:.5rem 0 2rem;font-size:clamp(4rem,9vw,10rem);line-height:.84;letter-spacing:-.07em}.intro p:not(.eyebrow){max-width:35rem;font-size:clamp(1.1rem,2vw,1.45rem)}.doors{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--ink)}.door{min-height:36rem;position:relative;overflow:hidden;background:#222;display:grid;align-items:end}.door>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.8;transition:transform .55s ease}.door:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(0,0,0,.84))}.door:hover>img{transform:scale(1.05)}.door div{z-index:1;position:relative;padding:2rem;display:grid;gap:1.5rem}.door div img{display:block;max-width:min(80%,390px);max-height:9rem;object-fit:contain;object-position:left center}.door span{color:var(--cream);font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.door b{font-size:1.5rem;margin-left:.7rem}.text-page{min-height:70vh;padding:clamp(4rem,9vw,10rem) 15vw;max-width:90rem}.text-page h1{max-width:10ch}.text-page p:not(.eyebrow){max-width:47rem;font-size:clamp(1.1rem,1.8vw,1.4rem)}.contact-page form{display:grid;gap:1rem;max-width:40rem;margin-top:2rem}.contact-page label{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-page input,.contact-page textarea{display:block;width:100%;margin-top:.45rem;border:1px solid var(--ink);background:var(--cream);padding:.85rem;font:inherit}.contact-page textarea{min-height:10rem;resize:vertical}.contact-page button{justify-self:start;border:0;padding:.9rem 1.2rem;background:var(--ink);color:var(--cream);font:800 .78rem "Avenir Next",sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.site-footer{margin-top:0;padding:2.3rem 5vw;background:var(--ink);color:var(--cream);display:flex;justify-content:space-between;font-size:.78rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;border-radius:0 0 2rem 2rem}.site-footer a:hover{color:var(--blue)}@media(max-width:760px){.site-header{display:block;padding:1.25rem 5vw}.site-header nav{margin-top:1.25rem;flex-wrap:wrap;gap:.75rem 1.1rem}.intro{padding:4rem 5vw 3.5rem}.intro h1,.text-page h1{font-size:clamp(3.6rem,15vw,6rem)}.doors{grid-template-columns:1fr}.door{min-height:28rem}.text-page{padding:4rem 5vw}.site-footer{border-radius:0;gap:1rem;flex-direction:column}}
