:root{--bg:#f3efe8;--ink:#211b16;--muted:#74695f;--line:#ded5ca;--wood:#8b5e34;--dark:#171310;--card:#fffaf2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,sans-serif;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}.header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:16px clamp(18px,4vw,56px);background:rgba(243,239,232,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-weight:800;letter-spacing:.02em}.brand img{width:48px;height:48px;border-radius:50%;object-fit:cover}.brand small{font-weight:500;color:var(--muted)}nav{display:flex;gap:26px;color:var(--muted);font-size:14px}nav a{text-decoration:none}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:42px;align-items:end;padding:64px clamp(18px,5vw,72px) 42px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--wood);font-size:12px;font-weight:800}.hero h1{font-family:Georgia,serif;font-size:clamp(44px,7vw,92px);line-height:.92;margin:20px 0}.lead{font-size:20px;line-height:1.55;color:#493f36;max-width:720px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.button{padding:15px 22px;border:1px solid var(--dark);border-radius:999px;text-decoration:none;font-weight:800}.button--dark{background:var(--dark);color:#fff}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:36px 0 0}.facts div{border-top:1px solid var(--line);padding-top:14px}.facts dt{font-size:32px;font-family:Georgia,serif}.facts dd{margin:2px 0;color:var(--muted)}.hero__photo{margin:0;position:relative}.hero__photo img{height:720px;width:100%;object-fit:cover;border-radius:28px;box-shadow:0 30px 80px rgba(43,31,20,.22)}figcaption{position:absolute;left:18px;right:18px;bottom:18px;padding:14px 16px;background:rgba(255,250,242,.88);border-radius:16px;color:#3d332b}.section{padding:70px clamp(18px,5vw,72px)}.intro{font-family:Georgia,serif;font-size:clamp(24px,3vw,40px);line-height:1.2;max-width:1260px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.services div,.gallery article{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:24px}.services span{color:var(--wood);font-weight:800}.services h2,.section__head h2,.contact h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,58px);line-height:1;margin:12px 0}.services p,.gallery p,.process li,.contact p,.quote p{color:var(--muted);line-height:1.6}.section__head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}.section__head h2{max-width:760px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery img{height:420px;width:100%;object-fit:cover;border-radius:18px}.gallery h3{font-size:24px;margin:18px 0 6px}.process{background:var(--dark);color:#fff}.process .eyebrow,.process li{color:#d7c5b4}.process ol{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0;list-style:none;counter-reset:item}.process li{border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:24px}.process li:before{counter-increment:item;content:'0' counter(item);display:block;color:#b98a5d;font-weight:900;margin-bottom:28px}.process strong{display:block;color:#fff;margin-bottom:8px}.quote{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}.quote blockquote{margin:0;font-family:Georgia,serif;font-size:clamp(34px,5vw,72px);line-height:1.05}.contact{margin:40px clamp(18px,5vw,72px) 72px;padding:36px;background:#d8c5ad;border-radius:30px;display:grid;grid-template-columns:.9fr 1.1fr;gap:24px}.contact__links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact__links a{background:rgba(255,255,255,.55);border:1px solid rgba(33,27,22,.12);padding:16px;border-radius:16px;text-decoration:none;font-weight:800}@media(max-width:920px){.header{position:static;align-items:flex-start}nav{display:none}.hero,.quote,.contact{grid-template-columns:1fr}.hero{padding-top:32px}.hero__photo img{height:520px}.services,.gallery,.process ol{grid-template-columns:1fr 1fr}.section__head{display:block}.contact__links{grid-template-columns:1fr}}@media(max-width:560px){.hero h1{font-size:42px}.lead{font-size:17px}.facts,.services,.gallery,.process ol{grid-template-columns:1fr}.hero__photo img,.gallery img{height:auto}.contact{margin-inline:14px;padding:22px}.button{width:100%;text-align:center}}
