/* ===== RE-SKIN HERE ===== */
:root{
  --bg:#f4f6f8; --card:#ffffff; --ink:#1c2633; --muted:#5b6878; --border:#dde3ea;
  --accent:#d9732b; --accent-ink:#ffffff; --gold:#8fbfe8; --dark:#13233a;
  --font-display:"Fraunces",Georgia,serif; --font-body:"Manrope",system-ui,sans-serif;
  --radius:16px; --max:1200px; --pad:clamp(1.25rem,4vw,2.5rem); --section:clamp(4rem,9vw,7rem);
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--ink);background:var(--bg);line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:var(--max);margin:auto;padding:0 var(--pad)}
.section{padding:var(--section) 0}
.alt{background:var(--card)}
h1,h2,h3{font-family:var(--font-display);font-weight:500;line-height:1.1}
h1{font-size:clamp(2.5rem,7vw,4.5rem)} h2{font-size:clamp(2rem,4.5vw,3.2rem);margin-bottom:1rem} h3{font-size:1.5rem;margin-bottom:.5rem}
em{color:var(--gold)}
.eyebrow{display:flex;align-items:center;gap:.75rem;text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;font-weight:700;color:var(--accent);margin-bottom:1rem}
.eyebrow::before{content:"";width:32px;height:1px;background:currentColor}
.lead{color:var(--muted);max-width:60ch;font-size:1.075rem}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.5rem;border-radius:999px;font-weight:700;text-decoration:none;border:1px solid transparent;cursor:pointer;font:inherit;font-weight:700}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-ghost{border-color:currentColor}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:99}
/* header */
.header{position:absolute;inset:0 0 auto;z-index:20;color:#fff}
.header .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
.logo{font-family:var(--font-display);font-size:1.35rem;text-decoration:none}
.nav{display:none;gap:1.75rem;font-size:.92rem}.nav a{text-decoration:none;opacity:.9}
.head-cta{display:none;align-items:center;gap:1rem}
.burger{background:none;border:1px solid #fff6;color:#fff;border-radius:10px;padding:.5rem .7rem;font-size:1.1rem}
.mnav{display:none;position:fixed;inset:76px 0 auto;background:var(--dark);padding:1.5rem var(--pad);flex-direction:column;gap:1rem}
.mnav.open{display:flex}
@media(min-width:960px){.nav,.head-cta{display:flex}.burger{display:none}}
/* hero */
.hero{min-height:92vh;display:flex;align-items:center;color:#fff;padding:110px 0 70px;
  background:linear-gradient(100deg,rgba(32,25,20,.92),rgba(32,25,20,.45)),var(--hero-img,linear-gradient(135deg,#5a4a3e,#b9ab9c))center/cover}
.hero p{color:#eee6dc;max-width:52ch;margin:1.25rem 0 2rem}
.hero .actions{display:flex;flex-wrap:wrap;gap:1rem}
.badges{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:2rem;font-size:.85rem;color:#ddd}
.page-hero{min-height:52vh}
/* about */
.split{display:grid;gap:3rem;align-items:center}
@media(min-width:900px){.split{grid-template-columns:1fr 1fr}}
.ph{aspect-ratio:4/5;border-radius:var(--radius);background:linear-gradient(135deg,#cdbba8,#8a7563);position:relative;display:grid;place-items:center;color:#fff8;font-size:.8rem;text-transform:uppercase;letter-spacing:.15em}
.ph.wide{aspect-ratio:4/3}
.stat{position:absolute;left:-1rem;bottom:-1rem;background:var(--accent);color:#fff;padding:1.25rem 1.5rem;border-radius:14px;letter-spacing:0;text-transform:none;font-size:.85rem}
.stat b{display:block;font-family:var(--font-display);font-size:2.2rem;font-weight:500}
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:2rem}
.pillars div{border-top:1px solid var(--border);padding-top:.75rem}.pillars b{display:block}.pillars span{color:var(--muted);font-size:.9rem}
/* services */
.cards{display:grid;gap:1.5rem;margin-top:3rem}
@media(min-width:800px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem}
.alt .card{background:var(--bg)}
.card .ico{width:48px;height:48px;border-radius:12px;background:color-mix(in srgb,var(--accent) 15%,transparent);margin-bottom:1.25rem}
.card ul{padding:1rem 0 0 1.1rem;color:var(--muted);font-size:.92rem}
.card p{color:var(--muted)}
/* before/after */
.ba{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;user-select:none}
.ba>div{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:.2em}
.ba .after{background:linear-gradient(135deg,#d9c7b2,#9c7f66)}
.ba .before{background:linear-gradient(135deg,#6d665f,#3d3833);clip-path:inset(0 50% 0 0)}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}
.ba .handle{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff;pointer-events:none}
.feat-list{margin-top:1.5rem;display:grid;gap:1rem}.feat-list b{display:block}.feat-list span{color:var(--muted)}
/* reviews */
.quote{font-size:1rem}.quote p{color:var(--ink)}
.who{display:flex;gap:.75rem;align-items:center;margin-top:1.5rem;font-size:.85rem}
.avatar{width:42px;height:42px;border-radius:50%;background:var(--gold);display:grid;place-items:center;color:#fff;font-weight:800}
/* gallery */
.gallery{display:grid;gap:1rem;margin-top:2.5rem;grid-template-columns:1fr 1fr}
@media(min-width:900px){.gallery{grid-template-columns:repeat(4,1fr)}}
.gallery .ph{aspect-ratio:1}
/* contact */
.contact{background:var(--dark);color:#f1e9df}
.contact .lead{color:#cbbfb2}
.info{display:grid;gap:1.25rem;margin-top:2rem}.info small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:.7rem}
form{background:var(--card);color:var(--ink);border-radius:var(--radius);padding:clamp(1.25rem,3vw,2.25rem);display:grid;gap:1rem}
.row{display:grid;gap:1rem}@media(min-width:600px){.row{grid-template-columns:1fr 1fr}}
label{font-size:.85rem;font-weight:600;display:grid;gap:.35rem}
input,select,textarea{font:inherit;padding:.75rem .9rem;border:1px solid var(--border);border-radius:10px;background:#fff}
fieldset{border:1px dashed var(--border);border-radius:12px;padding:1rem}legend{font-weight:700;font-size:.9rem;padding:0 .4rem}
.fine{font-size:.8rem;color:var(--muted)}
/* CTA band */
.band{background:var(--accent);color:var(--accent-ink);text-align:center;padding:3.5rem 0}
.band h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}
/* footer */
footer{background:#1d1814;color:#bfb3a6;padding:4rem 0 6rem;font-size:.9rem}
.fgrid{display:grid;gap:2rem}@media(min-width:800px){.fgrid{grid-template-columns:2fr 1fr 1fr}}
footer h4{color:#fff;margin-bottom:.75rem}footer ul{list-style:none;padding:0;display:grid;gap:.4rem}footer a{text-decoration:none}
.legal{border-top:1px solid #ffffff1a;margin-top:2.5rem;padding-top:1.5rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}
/* floating click-to-call (mobile) */
.callfab{position:fixed;right:1rem;bottom:1rem;z-index:30;box-shadow:0 8px 24px #0004}
@media(min-width:960px){.callfab{display:none}}

.mock-banner{position:relative;z-index:40;background:#0b1626;color:#fff;font-size:.78rem;text-align:center;padding:.45rem 1rem;backdrop-filter:blur(6px)}
.header{top:30px}
.mnav{top:106px}
.photo{width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.ph{background:none;overflow:hidden}
.ba .after,.ba .before{background-size:cover;background-position:center;align-items:end;justify-items:start;padding:1rem}
.ba .after{background-image:url(../img/p3.jpg)}
.ba .before{background-image:url(../img/before.jpg)}
.storm{background:var(--card);border:1px solid var(--border);border-left:5px solid var(--accent);border-radius:var(--radius);padding:clamp(1.25rem,3vw,2rem);display:grid;gap:1.5rem}
@media(min-width:900px){.storm{grid-template-columns:1fr 1.2fr;align-items:center}}
.storm form{padding:0;background:none}
.logo-card{background:#fff;border-radius:12px;padding:1rem;display:inline-block;margin-top:1.5rem}
.logo-card img{height:48px;width:auto}

footer{padding-bottom:5rem}
