@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@500;600&display=swap');
:root{--ink:#24231f;--muted:#6d6a62;--cream:#f5f1e9;--paper:#fffdf9;--wood:#8a6243;--line:#ded8ce}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.site-header{height:76px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:rgba(255,253,249,.95);backdrop-filter:blur(10px);z-index:10;border-bottom:1px solid var(--line)}.logo{font-weight:600;letter-spacing:.16em;font-size:1.1rem}.logo span{display:inline-block;border:1px solid var(--wood);padding:2px 5px;margin-right:7px;letter-spacing:.08em}nav{display:flex;align-items:center;gap:25px;font-size:.9rem}.btn{display:inline-block;background:var(--ink);color:#fff;padding:13px 22px;border:1px solid var(--ink);font-weight:600;cursor:pointer}.btn:hover{opacity:.85}.btn-outline{background:transparent;color:var(--ink)}.btn-small{padding:9px 15px}.menu-toggle{display:none;background:none;border:0;font-size:1.5rem}.hero{min-height:82vh;display:flex;align-items:flex-end;padding:8% 6%;background:linear-gradient(90deg,rgba(20,18,14,.72),rgba(20,18,14,.08)),url('assets/hero.jpg') center/cover;color:#fff}.hero-content{max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:600;margin:0 0 16px;color:var(--wood)}.hero .eyebrow{color:#e8d7c1}.hero h1{font-family:'Playfair Display',serif;font-size:clamp(3rem,7vw,6.8rem);line-height:1.02;margin:0 0 25px;font-weight:500}.hero p:not(.eyebrow){font-size:1.15rem;max-width:650px;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.section{padding:100px 6%}.section h2,.about h2,.contact h2{font-family:'Playfair Display',serif;font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.1;margin:0 0 45px;font-weight:500}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}article{background:var(--paper);padding:36px;min-height:270px}.icon{font-size:1.6rem;color:var(--wood);margin-bottom:25px}article h3{font-family:'Playfair Display',serif;font-size:1.5rem;margin:0 0 12px}article p{color:var(--muted);margin:0}.split{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.image-panel{background:url('assets/interior.jpg') center/cover}.text-panel{background:var(--cream);padding:10%;display:flex;flex-direction:column;justify-content:center}.text-panel h2{font-family:'Playfair Display',serif;font-size:clamp(2.3rem,4vw,4.5rem);line-height:1.1;font-weight:500;margin:0 0 25px}.text-panel p:not(.eyebrow){color:var(--muted);max-width:520px}.text-link{margin-top:20px;font-weight:600}.gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:300px 300px;gap:14px}.gallery-item{background-position:center;background-size:cover;display:flex;align-items:flex-end;padding:25px;color:#fff;background-color:#555}.gallery-item span{background:rgba(0,0,0,.55);padding:7px 11px;font-size:.8rem}.g1{background-image:linear-gradient(#0001,#0007),url('assets/gallery1.jpg');grid-row:span 2}.g2{background-image:linear-gradient(#0001,#0007),url('assets/gallery2.jpg')}.g3{background-image:linear-gradient(#0001,#0007),url('assets/gallery3.jpg')}.g4{display:none}.about{padding:100px 6%;background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10%;}.about .eyebrow{color:#c9a984}.about p:last-child{color:#cfcac1;font-size:1.1rem}.form-section{background:var(--cream)}.lead{color:var(--muted);max-width:650px;margin-top:-25px;margin-bottom:40px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:.85rem;font-weight:600;margin-bottom:20px}input,select,textarea{width:100%;margin-top:8px;padding:14px;border:1px solid var(--line);background:var(--paper);font:inherit;color:var(--ink)}textarea{resize:vertical}.contact{padding:80px 6%;display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line)}.contact h2{margin-bottom:10px}.contact-info{color:var(--muted)}footer{padding:35px 6%;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}
@media(max-width:850px){nav{display:none}.menu-toggle{display:block}.site-header{height:68px}.hero{min-height:78vh;padding:12% 6%}.cards{grid-template-columns:1fr}.split,.about,.contact{grid-template-columns:1fr}.image-panel{min-height:450px}.gallery{grid-template-columns:1fr;grid-template-rows:320px 220px 220px}.g1{grid-row:auto}.g4{display:flex}.form-grid{grid-template-columns:1fr}footer{flex-direction:column}}
@media(max-width:850px){
  .hero h1{
    font-size:clamp(2.4rem,10vw,4rem);
    line-height:1.05;
  }

  .hero p:not(.eyebrow){
    font-size:1rem;
    line-height:1.5;
  }

  .hero .actions{
    flex-direction:column;
    align-items:stretch;
  }

  .hero .btn{
    text-align:center;
    width:100%;
  }

  .hero .btn-outline{
    background:rgba(255,255,255,.9);
    color:#24231f;
    border-color:#fff;
  }
}