@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
:root{--ink:#0b1224;--gold:#b9965b;--paper:#f7f4ee;--muted:#697286}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 "DM Sans",Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{width:min(1180px,90%);margin:auto}.site-nav{background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 5%}.brand{font-weight:700;letter-spacing:.2em}.brand span{color:#d8bd86}.site-nav div{display:flex;gap:25px;font-size:.85rem}.hero-project{padding:65px 0 55px;background:linear-gradient(115deg,#081020,#1b2c49);color:white}.eyebrow{font-size:.72rem;color:#d8bd86;letter-spacing:.22em;text-transform:uppercase}.hero-project h1{font:600 clamp(2.6rem,5.5vw,5.2rem)/1.06 "Playfair Display",Georgia,serif;letter-spacing:-.03em;max-width:1000px;margin:20px 0}.hero-project p{color:#d8dce5;max-width:780px}.breadcrumbs{font-size:.8rem;color:#b9c1d0;margin-bottom:28px}.main{padding:65px 0}h2,h3{font-family:"Playfair Display",Georgia,serif;line-height:1.2}h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:0 0 20px}h3{font-size:1.45rem;margin:0 0 20px}.section{margin-bottom:60px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.photo{background:white;border:1px solid #e5ded1;border-radius:14px;padding:0;overflow:hidden;text-align:left;cursor:pointer;color:var(--muted);box-shadow:0 8px 30px #0b122408}.photo img{display:block;width:100%;height:240px;object-fit:cover;transition:transform .3s}.photo:hover img{transform:scale(1.035)}.photo span{display:block;padding:14px 18px;font-size:.82rem}.grid{display:grid;grid-template-columns:1.4fr 1fr;gap:25px}.panel{background:white;border:1px solid #e5ded1;padding:30px;border-radius:16px}.panel p{color:#60697a}.spec-list{padding:0;list-style:none}.spec-list li{padding:10px 0;border-bottom:1px solid #eee;color:#60697a}.spec-list strong{color:#947342;margin-right:10px}.button{display:inline-block;border:1px solid var(--gold);background:var(--ink);color:white;border-radius:8px;padding:13px 19px;margin:8px 8px 8px 0;font-size:.86rem}.button:hover{background:#263654}.documents{display:flex;flex-wrap:wrap}.note{background:#eee8dc;color:#60697a;border-left:3px solid var(--gold);padding:20px}.site-footer{background:#070c19;color:#b6bfcd;font-size:.8rem;padding:30px 0}.site-footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.site-footer a{margin-right:18px}.lightbox{border:0;background:#080e20;color:white;border-radius:12px;padding:55px 15px 15px;width:min(1100px,94vw);max-height:95vh}.lightbox::backdrop{background:#000d}.lightbox img{display:block;max-width:100%;max-height:75vh;object-fit:contain;margin:auto}.lightbox button{position:absolute;top:10px;right:15px;background:transparent;border:0;color:white;font-size:1.3rem;cursor:pointer}.lightbox p{text-align:center;margin:12px 0 0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{display:block;background:white;border:1px solid #e5ded1;border-radius:14px;overflow:hidden;transition:transform .3s}.card:hover{transform:translateY(-4px)}.card img{width:100%;height:195px;object-fit:cover;display:block}.card .inside{padding:25px}.card small{color:#947342}.card h2{font-size:1.6rem;margin:14px 0}.card p{color:var(--muted);font-size:.85rem}.prose{max-width:900px}.prose p{color:#60697a;margin-bottom:24px}.prose table{border-collapse:collapse;width:100%}.prose td,.prose th{padding:15px;text-align:left;border-bottom:1px solid #ddd}.portrait-panel img{width:160px;height:auto;float:right;margin:0 0 20px 25px}.prose a{text-decoration:underline;text-underline-offset:3px}@media(max-width:850px){.gallery,.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:1fr}.site-nav{align-items:flex-start}.site-nav div{gap:12px;flex-wrap:wrap}}@media(max-width:550px){.site-nav{flex-direction:column;gap:12px}.gallery{gap:12px}.photo img{height:160px}.photo span{padding:10px;font-size:.72rem}.cards{grid-template-columns:1fr}.hero-project{padding:40px 0}.main{padding:40px 0}.panel{padding:23px}.portrait-panel img{float:none;display:block;margin:0 0 25px}.prose table{font-size:.8rem}.prose td,.prose th{padding:8px;overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
