:root{--bg:#f3efe7;--ink:#161615;--sand:#ddd2bf;--dk:#1f1f1d;--mut:#6b675f;--ac:#c8a24c;--f:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--s:ui-serif,Georgia,"Times New Roman",serif}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font:17px/1.6 var(--f);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}a{color:inherit}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--ac);padding:8px;z-index:99}
:focus-visible{outline:3px solid var(--ac);outline-offset:3px}
.wrap{max-width:1160px;margin:auto;padding:0 22px}
h1,h2{font-family:var(--s);font-weight:400;line-height:1.05;letter-spacing:-.02em}
h1{font-size:clamp(2.6rem,7vw,5.4rem)}h1 em{color:var(--ac)}h2{font-size:clamp(2rem,4.6vw,3.4rem);margin-bottom:22px}
h3{font-size:1.1rem}
.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;margin-bottom:14px;color:var(--mut)}
.btn{display:inline-block;background:var(--ac);color:#111;font-weight:700;text-decoration:none;padding:15px 26px;border-radius:4px;border:2px solid var(--ac);transition:transform .2s,background .2s;text-align:center}
.btn:hover{transform:translateY(-2px);background:#d9b560}.btn.sm{padding:9px 16px;font-size:.92rem}
.btn.ghost{background:transparent;color:inherit;border-color:currentColor}
.top{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:22px;padding:12px 22px;background:rgba(22,22,21,.88);backdrop-filter:blur(10px);color:#fff}
.brand{font-weight:800;letter-spacing:.2em;text-decoration:none;display:inline-flex;flex-direction:column;line-height:1;margin-right:auto}
.brand span{font-weight:400;letter-spacing:.32em;font-size:.6rem;text-transform:uppercase;color:var(--ac);margin-top:4px}
#nav{display:flex;gap:22px}#nav a{text-decoration:none;font-size:.92rem;opacity:.85}#nav a:hover{opacity:1;color:var(--ac)}
.burger{display:none;background:none;border:0;width:40px;height:40px;position:relative;cursor:pointer}
.burger i{position:absolute;left:8px;right:8px;height:2px;background:#fff;transition:.25s}.burger i:first-child{top:15px}.burger i:last-child{top:23px}
.burger[aria-expanded=true] i:first-child{top:19px;transform:rotate(45deg)}.burger[aria-expanded=true] i:last-child{top:19px;transform:rotate(-45deg)}
.hero{min-height:100svh;background:var(--dk);color:#fff;display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch;padding-top:60px}
.hero-txt{padding:8vh 6vw;align-self:center;max-width:760px}.hero .eyebrow{color:var(--ac)}
.lead{font-size:1.15rem;max-width:520px;margin:22px 0 32px;color:#e5e0d4}
.cta{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.link{text-decoration:none;border-bottom:1px solid var(--ac);padding-bottom:2px}
.price{margin-top:30px;font-size:.85rem;color:#b9b4a8;letter-spacing:.08em}
.hero-img{overflow:hidden;min-height:420px}.hero-img img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
section{padding:110px 0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.photos{display:grid;grid-template-columns:1fr 1fr;gap:14px}.photos img{border-radius:2px;height:100%;object-fit:cover}.photos img:last-child{margin-top:60px}
.about p{margin-bottom:20px;color:#3b3a36}
.timeline{list-style:none;padding:0;border-top:1px solid var(--sand)}
.timeline li{display:grid;grid-template-columns:110px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--sand);font-size:.97rem}
.timeline b{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#8a6f2c;padding-top:3px}
.mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}.mini img{aspect-ratio:4/3;object-fit:cover;width:100%}
.mini p{grid-column:1/-1;font-size:.85rem;color:var(--mut);margin:0}
.services{background:var(--sand)}.svc{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2px;background:#161615;border:2px solid #161615;margin-top:36px}
.svc li{background:var(--bg);padding:30px 26px;transition:background .25s}.svc li:hover{background:var(--ac)}
.svc span{font:700 .8rem ui-monospace,monospace;display:block;margin-bottom:34px;color:#8a6f2c}.svc li:hover span{color:#111}
.svc h3{margin-bottom:10px;font-size:1.2rem}.svc p{font-size:.95rem;color:#45433e}.svc li:hover p{color:#111}
.note{margin-top:20px;font-size:.85rem;color:var(--mut)}
.method{background:var(--dk);color:#fff}.method .eyebrow{color:var(--ac)}.method h2{position:sticky;top:100px}
.steps{list-style:none;padding:0;counter-reset:s}.steps li{counter-increment:s;padding:24px 0 24px 64px;border-top:1px solid #444;position:relative}
.steps li:before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:26px;color:var(--ac);font:700 .9rem ui-monospace,monospace}
.steps p{color:#c9c4b8;margin-top:4px}
.pricing{text-align:center;background:var(--bg)}.big{font:clamp(2rem,6vw,4.4rem)/1.1 var(--s);margin-bottom:34px}.big strong{font-weight:400;background:linear-gradient(transparent 62%,var(--ac) 62%)}
address{font-style:normal;margin-bottom:22px}.ct{list-style:none;padding:0}.ct li{border-top:1px solid var(--sand)}.ct a{display:block;padding:14px 0;text-decoration:none;font-weight:600}.ct a:hover{color:#8a6f2c}
.contact{background:var(--sand)}.cbox{background:var(--dk);color:#fff;padding:36px;display:grid;gap:14px}.cbox .small{font-size:.8rem;color:#b9b4a8}
footer{background:#0f0f0e;color:#cfcabd;padding:60px 0 90px;font-size:.92rem}.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
footer nav{display:flex;flex-direction:column;gap:8px}footer a{text-decoration:none}footer a:hover{color:var(--ac)}footer .brand{color:#fff;margin-bottom:14px}.copy{text-align:center;margin-top:40px;font-size:.8rem;opacity:.6}
.bar{display:none}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.rv.in{opacity:1;transform:none}
.legal{max-width:760px;margin:auto;padding:120px 22px 60px}.legal h1{font-size:2.4rem;margin-bottom:24px}.legal h2{font-size:1.3rem;margin:28px 0 8px}.legal .todo{background:#fff3b0;padding:2px 5px}
@media(max-width:860px){
.hero,.grid2,.fgrid{grid-template-columns:1fr}.grid2{gap:44px}.hero-img{min-height:380px;order:-1;height:46svh}.hero{padding-top:60px}.hero-txt{padding:36px 22px 56px}
section{padding:76px 0}.method h2{position:static}.photos img:last-child{margin-top:30px}
.burger{display:block}#nav{position:fixed;inset:60px 0 auto;background:#161615;flex-direction:column;padding:20px 22px;gap:16px;transform:translateY(-130%);transition:transform .3s;z-index:-1}#nav.open{transform:none}
.top .btn.sm{display:none}.bar{display:flex;gap:10px;position:fixed;inset:auto 0 0;padding:10px 14px;background:rgba(22,22,21,.95);z-index:50}.bar .btn{flex:1;padding:12px}.bar .ghost{color:#fff;flex:.6}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.rv{opacity:1;transform:none}}
.timeline .cl{list-style:none;padding:0}.timeline .cl li{display:block;border:0;padding:0 0 6px 18px;position:relative}.timeline .cl li:before{content:'';position:absolute;left:0;top:.62em;width:6px;height:6px;background:var(--ac);border-radius:50%}.soon{margin-top:24px;padding-left:16px;border-left:3px solid #8a6f2c}.soon b{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#8a6f2c}
