:root{--acc:#ff7a00;--ink:#11161d;--navy:#16202b;--txt:#2a2f36}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Segoe UI",system-ui,sans-serif;color:var(--txt);background:#f4f2ee;line-height:1.55}
a{color:inherit}h1,h2,h3{font-family:Impact,"Arial Black",system-ui,sans-serif;letter-spacing:.5px;line-height:1.05;margin:0 0 12px}
.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;background:rgba(17,22,29,.95);backdrop-filter:blur(6px);color:#fff;border-bottom:3px solid var(--acc)}
.logo{font-family:Impact,"Arial Black",sans-serif;font-size:1.5rem;color:var(--acc);text-decoration:none;line-height:1}.logo span{display:block;font-size:.55rem;letter-spacing:3px;color:#fff;font-family:system-ui,sans-serif;font-weight:700}
nav{display:none;gap:22px}nav a{text-decoration:none;font-weight:600;color:#d5dbe2}nav a:hover{color:var(--acc)}
.btn{display:inline-block;background:var(--acc);color:#111;font-weight:800;text-decoration:none;padding:15px 26px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 6px 18px rgba(255,122,0,.35);transition:transform .2s}.btn:hover{transform:translateY(-2px)}
.btn-sm{padding:9px 16px;font-size:.85rem}.btn-ghost{background:transparent;color:#fff;border:2px solid #fff;box-shadow:none}.btn-dark{background:var(--ink);color:#fff;box-shadow:none}
.hero{min-height:min(88vh,640px);display:flex;align-items:flex-end;color:#fff;background:linear-gradient(180deg,rgba(17,22,29,.35),rgba(17,22,29,.92) 75%),url(img/kitchen.jpg) center/cover}
.hero-in{padding:40px 22px 48px;max-width:1100px;margin:0 auto;width:100%}
.eyebrow,.kicker{text-transform:uppercase;letter-spacing:3px;font-weight:700;font-size:.8rem;color:var(--acc);margin:0 0 8px}
.hero h1{font-size:clamp(2.8rem,11vw,5.5rem);text-transform:uppercase}.hero h1 em{font-style:normal;color:var(--acc)}
.lead{font-size:1.15rem;max-width:560px;color:#e6e9ed}.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.ph{color:#ffb35c;font-size:.8rem;font-style:italic}.cta .ph,.wrap .ph{color:#9a4b00}
.stats{display:grid;grid-template-columns:1fr;background:var(--acc);color:#111}.stats div{padding:16px 22px;border-bottom:1px solid rgba(0,0,0,.15)}.stats b{display:block;font-family:Impact,"Arial Black",sans-serif;font-size:1.7rem;font-weight:400}.stats span{font-weight:600;font-size:.9rem}
.wrap{max-width:1100px;margin:0 auto;padding:56px 22px}h2{font-size:clamp(2rem,7vw,3rem);text-transform:uppercase;color:var(--ink)}.sub{font-size:1.05rem;max-width:640px}
.cards{display:grid;gap:14px;grid-template-columns:1fr;margin-top:24px}
.card{position:relative;overflow:hidden;border-radius:10px;padding:26px 20px;min-height:170px;color:#fff;background:linear-gradient(180deg,rgba(17,22,29,.55),rgba(17,22,29,.9)),var(--bg) center/cover;transition:transform .25s,box-shadow .25s;border-left:5px solid var(--acc)}
.card:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(0,0,0,.25)}.card h3{font-size:1.6rem;text-transform:uppercase}.card p{margin:0;color:#e3e7eb}
.ic{width:48px;height:48px;border-radius:50%;background:var(--acc);display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:12px;color:#111}
.dark{background:var(--navy);color:#e6e9ed}.dark h2{color:#fff}.note{font-style:italic;color:#ffb35c;margin-top:-4px}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.gallery figure{margin:0;position:relative;overflow:hidden;border-radius:8px}
.gallery img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block;transition:transform .4s}.gallery figure:hover img{transform:scale(1.06)}
.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 8px 6px;font-size:.75rem;font-weight:600;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff}
.why{display:grid;gap:28px}.checks{list-style:none;padding:24px;margin:0;background:var(--ink);color:#fff;border-radius:10px;align-self:start}
.checks li{padding:10px 0 10px 34px;position:relative;font-weight:600;border-bottom:1px solid #2c3540}.checks li:last-child{border:0}.checks li:before{content:"\2713";position:absolute;left:0;top:8px;width:24px;height:24px;border-radius:50%;background:var(--acc);color:#111;text-align:center;font-weight:900;line-height:24px}
.cta{background:var(--acc);color:#111;text-align:center}.cta h2{color:#111}.cta .meta{margin-top:22px;font-size:.95rem}
footer{background:var(--ink);color:#9aa5b1;text-align:center;padding:30px 20px}footer .logo{font-size:2rem}
.js .fade.in{animation:rise .7s ease-out both}@keyframes rise{from{transform:translateY(18px)}to{transform:none}}
@media(min-width:760px){nav{display:flex}.stats{grid-template-columns:repeat(3,1fr)}.stats div{border:0;border-right:1px solid rgba(0,0,0,.15);text-align:center}.cards{grid-template-columns:repeat(3,1fr)}.wide{grid-column:span 3}.gallery{grid-template-columns:repeat(3,1fr)}.why{grid-template-columns:3fr 2fr;align-items:start}.hero-in{padding:60px 40px 80px}}
.side{display:grid;gap:20px}.family{margin:0;background:#fff;padding:10px 10px 4px;border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.18);border-top:5px solid var(--acc)}.family img{width:100%;height:auto;display:block;border-radius:6px}.family figcaption{text-align:center;font-style:italic;font-size:.9rem;padding:8px 4px;color:#444}
.pair{margin-top:30px}.pair h3{font-size:1.4rem;text-transform:uppercase;color:var(--ink);border-left:5px solid var(--acc);padding-left:10px}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ba.one{grid-template-columns:1fr;max-width:420px}.ba figure{margin:0;position:relative;border-radius:8px;overflow:hidden;background:#000}
.ba img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;display:block}.ba.one img{aspect-ratio:4/3}
.ba figcaption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:flex-end;padding:20px 8px 6px;background:linear-gradient(transparent,rgba(0,0,0,.75));color:#fff;font-size:.7rem}
.tag-b,.tag-a{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;padding:3px 8px;border-radius:4px;background:#5c6670}.tag-a{background:var(--acc);color:#111}.cr{opacity:.85}
@media(min-width:760px){.ba img{aspect-ratio:4/3}}
.project{margin-top:34px;padding-top:6px}.proj{font-size:1.5rem;text-transform:uppercase;color:#fff;background:var(--ink);display:inline-block;padding:8px 14px;border-radius:6px;border-left:6px solid var(--acc)}
.pair h4{margin:0 0 8px;font-size:1rem;text-transform:uppercase;color:var(--ink);border-left:4px solid var(--acc);padding-left:8px;letter-spacing:.5px}.pair{margin-top:18px}
.ba img{aspect-ratio:4/3}.ba.one{max-width:none;grid-template-columns:1fr 1fr}
@media(min-width:760px){.project{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.project .proj{grid-column:1/-1;justify-self:start}.ba.one{grid-template-columns:1fr}}
.singles{display:grid;align-items:end;grid-template-columns:1fr 1fr;gap:8px}.singles .ba.one{grid-template-columns:1fr}.singles h4{font-size:.85rem}
.top{flex-wrap:nowrap}.top .pill{margin-left:auto;margin-right:8px;white-space:nowrap;border:2px solid var(--acc);color:var(--acc);text-decoration:none;font-weight:800;font-size:.75rem;padding:7px 10px;border-radius:999px;text-transform:uppercase}
@media(min-width:760px){.top .pill{display:none}.top nav{margin-left:auto;margin-right:16px}}
.lead{margin:20px 0 0;position:relative;border-radius:10px;overflow:hidden}.lead img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}.lead figcaption{position:absolute;left:0;right:0;bottom:0;padding:30px 12px 10px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff;font-weight:600;font-size:.85rem;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lead .cr{margin-left:auto;font-size:.7rem;font-weight:400}
.more{text-align:center;margin-top:30px}
.pagehead{background:linear-gradient(135deg,var(--ink),var(--navy));color:#fff}.pagehead .wrap{padding:44px 22px 30px}.pagehead h1{font-size:clamp(2.6rem,10vw,4.5rem);text-transform:uppercase;color:#fff}.pagehead h1+p{color:#cbd2d9}
#real .project:first-child{margin-top:0}
.hbtns{display:flex;gap:6px}.btn-text{background:transparent;color:#fff;border:2px solid #fff;box-shadow:none;padding:7px 10px}.top .btn-sm{padding:8px 10px;font-size:.75rem}
.top .pill{padding:6px 8px;font-size:.68rem;margin-right:6px}.top .logo{font-size:1.25rem}.top{padding:10px 12px;gap:6px}
.btn-white{background:#fff;color:#111;box-shadow:none;border:2px solid #111}.ctarow{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.qlink{font-weight:700}
.quote form{display:grid;grid-template-columns:1fr;gap:14px;margin-top:20px;background:#fff;padding:20px;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.08);border-top:5px solid var(--acc)}
.quote label{display:flex;flex-direction:column;font-weight:700;font-size:.9rem;color:var(--ink);gap:6px}
.quote input,.quote select,.quote textarea{font:inherit;font-weight:400;padding:12px;border:2px solid #d5dbe2;border-radius:8px;background:#fafafa;width:100%}
.quote input:focus,.quote select:focus,.quote textarea:focus{outline:none;border-color:var(--acc)}
.quote button{border:0;cursor:pointer;font-size:1rem}.err{color:#b91c1c;font-weight:700;margin:0}.qdone{background:#fff4e6;border-left:4px solid var(--acc);padding:10px 14px;border-radius:6px}.qdone p{margin:4px 0}.small{font-size:.9rem;margin:0;text-align:center}
@media(min-width:760px){.quote form{grid-template-columns:1fr 1fr}.quote .full{grid-column:1/-1}}
@media(max-width:380px){.top .pill{display:none}}
.top .btn-sm{white-space:nowrap;padding:8px 9px}.hbtns{flex-shrink:0}.top .logo span{letter-spacing:2px}
