
:root{
  --black:#070605;
  --black2:#0d0b09;
  --stone:#12100d;
  --stone2:#1d1710;
  --gold:#d49a43;
  --gold2:#ffdf9b;
  --bronze:#8a4f22;
  --silver:#e7e7e7;
  --muted:#b9aa96;
  --text:#fff8ed;
  --line:rgba(255,223,155,.22);
  --line-strong:rgba(255,223,155,.42);
  --shadow:0 34px 110px rgba(0,0,0,.64);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:
    radial-gradient(circle at 12% 5%,rgba(212,154,67,.16),transparent 26%),
    radial-gradient(circle at 95% 8%,rgba(255,223,155,.10),transparent 24%),
    linear-gradient(135deg,#030302 0%,#0d0906 45%,#050403 100%);
  color:var(--text);
  font-family:"Montserrat",system-ui,-apple-system,Segoe UI,sans-serif;
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.grain{
  position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.13;
  background-image:
    repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 7px),
    repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 13px);
  mix-blend-mode:overlay;
}
.cursor-glow{
  position:fixed;width:360px;height:360px;border-radius:999px;pointer-events:none;z-index:1;
  background:radial-gradient(circle,rgba(212,154,67,.12),transparent 65%);
  transform:translate(-50%,-50%);
  opacity:0;transition:opacity .25s ease;
}
body:hover .cursor-glow{opacity:1}
.site-nav{
  position:sticky;top:0;z-index:20;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:15px clamp(18px,4vw,66px);
  border-bottom:1px solid var(--line);
  background:rgba(7,6,5,.78);
  backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;gap:14px;min-width:max-content}
.brand-cube{
  width:56px;height:56px;border-radius:17px;display:grid;place-items:center;
  font-family:"Cinzel",serif;font-weight:900;letter-spacing:-.08em;color:#140c04;
  background:linear-gradient(145deg,#fff0bd 0%,#d49a43 45%,#7b421a 100%);
  box-shadow:inset 4px 5px 11px rgba(255,255,255,.38),inset -8px -10px 16px rgba(0,0,0,.32),0 16px 38px rgba(212,154,67,.22);
}
.brand-copy strong{
  display:block;
  font-family:"Cinzel",serif;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-size:1rem;
}
.brand-copy small{display:block;color:var(--muted);font-size:.7rem;margin-top:2px}
.nav-links{display:flex;gap:25px;color:var(--muted);font-weight:800;font-size:.9rem}
.nav-links a{position:relative}
.nav-links a:after{
  content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold2);transition:.25s ease;
}
.nav-links a:hover{color:var(--gold2)}
.nav-links a:hover:after{right:0}
.nav-phone{
  padding:12px 16px;border:1px solid var(--line);border-radius:999px;color:var(--gold2);
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
  font-weight:900;min-width:max-content;
}
.menu-toggle{display:none}
main,.footer{position:relative;z-index:2}
.luxury-hero{
  position:relative;min-height:870px;display:flex;align-items:flex-end;overflow:hidden;
  padding:126px clamp(20px,6vw,96px) 92px;
}
.hero-slider{position:absolute;inset:0;z-index:0}
.hero-slider span{
  position:absolute;inset:0;background-size:cover;background-position:center;
  opacity:0;animation:heroFade 18s infinite;transform:scale(1.05);
}
.hero-slider span:nth-child(1){animation-delay:0s}
.hero-slider span:nth-child(2){animation-delay:6s}
.hero-slider span:nth-child(3){animation-delay:12s}
@keyframes heroFade{
  0%,100%{opacity:0;transform:scale(1.08)}
  8%,31%{opacity:1;transform:scale(1.02)}
  42%{opacity:0;transform:scale(1.04)}
}
.hero-black{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.62),rgba(0,0,0,.18)),
    linear-gradient(0deg,rgba(7,6,5,.98),rgba(7,6,5,.10) 52%,rgba(7,6,5,.34));
}
.hero-metal-lines{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.8}
.hero-metal-lines i{
  position:absolute;width:42vw;height:1px;background:linear-gradient(90deg,transparent,var(--gold2),transparent);
  box-shadow:0 0 24px rgba(255,223,155,.5);transform:rotate(-36deg);
}
.hero-metal-lines i:nth-child(1){right:-10vw;top:22%}
.hero-metal-lines i:nth-child(2){right:1vw;top:38%;animation:linePulse 3.8s ease-in-out infinite}
.hero-metal-lines i:nth-child(3){right:-14vw;top:54%}
@keyframes linePulse{50%{opacity:.25;filter:blur(1px)}}
.hero-content{position:relative;z-index:3;max-width:1060px}
.metal-logo{margin-bottom:30px}
.logo-by{
  font-family:"Cinzel",serif;font-weight:900;font-size:clamp(5rem,12vw,12rem);line-height:.74;letter-spacing:-.09em;
  background:linear-gradient(105deg,#7d431c 0%,#ffdf9b 22%,#b66b2c 42%,#fff1bf 56%,#7a3d17 78%,#e5aa55 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 15px 20px rgba(0,0,0,.68)) drop-shadow(0 0 18px rgba(212,154,67,.22));
  animation:metalIn 1s ease both;
}
.logo-flooring{
  font-family:"Oswald",sans-serif;font-weight:700;letter-spacing:.22em;font-size:clamp(2.4rem,6vw,6rem);
  margin-top:10px;
  background:linear-gradient(180deg,#ffffff 0%,#979797 48%,#f8f8f8 52%,#5f5f5f 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 16px 32px rgba(0,0,0,.65);
  animation:metalIn 1s ease .2s both;
}
.logo-tagline{
  display:inline-block;margin-top:12px;padding-top:13px;border-top:2px solid rgba(212,154,67,.7);
  font-family:"Montserrat",sans-serif;font-weight:800;letter-spacing:.26em;color:var(--gold2);
  font-size:clamp(.72rem,1.4vw,1rem);
  text-shadow:0 0 16px rgba(212,154,67,.35);
  animation:metalIn 1s ease .4s both;
}
@keyframes metalIn{
  from{opacity:0;transform:translateY(30px);filter:blur(8px)}
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
.hero-sub{max-width:830px;color:#dfd1be;line-height:1.75;font-size:1.18rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.hero-actions.center{justify-content:center}
.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 24px;border-radius:999px;
  border:1px solid var(--line);font-weight:900;letter-spacing:.02em;text-transform:uppercase;font-size:.82rem;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.btn:hover{transform:translateY(-3px);border-color:var(--line-strong)}
.btn.gold{
  border:0;color:#170d04;
  background:linear-gradient(145deg,#fff0bd,#d49a43 48%,#8c4c1d);
  box-shadow:0 24px 62px rgba(212,154,67,.25),inset 0 2px 8px rgba(255,255,255,.45),inset 0 -8px 16px rgba(80,39,11,.24);
}
.btn.dark{background:rgba(255,255,255,.065);color:var(--gold2)}
.btn.line{background:transparent;color:var(--text)}
.hero-card{
  position:absolute;right:clamp(18px,5vw,78px);bottom:74px;z-index:4;
  width:min(330px,calc(100vw - 40px));padding:22px;border-radius:26px;border:1px solid var(--line-strong);
  background:rgba(10,8,6,.72);backdrop-filter:blur(16px);
  box-shadow:var(--shadow);
}
.hero-card small{display:block;color:var(--gold2);text-transform:uppercase;letter-spacing:.16em;font-size:.67rem;font-weight:900}
.hero-card strong{display:block;font-family:"Cinzel",serif;font-size:1.55rem;margin:8px 0}
.hero-card span{color:var(--muted);line-height:1.45}
.proof-bar{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.proof-bar div{padding:30px clamp(20px,5vw,58px);background:#0b0806}
.proof-bar b{display:block;font-family:"Cinzel",serif;letter-spacing:.04em;text-transform:uppercase}
.proof-bar span{display:block;margin-top:7px;color:var(--muted);line-height:1.5}
.section{padding:96px clamp(20px,6vw,96px)}
.section-head{max-width:1080px;margin-bottom:46px}
.eyebrow{margin:0 0 16px;color:var(--gold2);text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:900}
.section-title{
  margin:0 0 22px;font-family:"Oswald",sans-serif;font-size:clamp(2.8rem,6.4vw,7rem);line-height:.92;letter-spacing:-.045em;text-transform:uppercase;
}
.section-head p,.craft-copy p,.final-cta p{max-width:850px;color:var(--muted);line-height:1.75;font-size:1.04rem}
.showcase-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:18px}
.showcase-card{
  position:relative;min-height:360px;border-radius:34px;overflow:hidden;border:1px solid var(--line);
  box-shadow:var(--shadow);background:#111;isolation:isolate;
}
.showcase-card.large{grid-row:span 2;min-height:740px}
.showcase-card.wide{min-height:360px}
.showcase-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease, filter .7s ease}
.showcase-card:before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(0deg,rgba(0,0,0,.88),transparent 58%);
}
.showcase-card:after{
  content:"";position:absolute;inset:0;z-index:2;border-radius:34px;border:1px solid transparent;
  background:linear-gradient(135deg,rgba(255,223,155,.45),transparent 28%,transparent 68%,rgba(212,154,67,.28)) border-box;
  mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:0;transition:.35s;
}
.showcase-card:hover img{transform:scale(1.06);filter:saturate(1.08) contrast(1.05)}
.showcase-card:hover:after{opacity:1}
.showcase-card div{position:absolute;left:26px;right:26px;bottom:26px;z-index:3}
.showcase-card small{display:block;color:var(--gold2);text-transform:uppercase;letter-spacing:.17em;font-weight:900;font-size:.7rem;margin-bottom:8px}
.showcase-card strong{font-family:"Oswald",sans-serif;font-size:clamp(1.7rem,3vw,3.1rem);text-transform:uppercase;line-height:1;letter-spacing:-.03em}
.dark-stage{
  background:
    radial-gradient(circle at 80% 20%,rgba(212,154,67,.10),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{
  position:relative;overflow:hidden;min-height:270px;padding:28px;border-radius:30px;border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.022));
  box-shadow:0 18px 55px rgba(0,0,0,.28);transition:.28s ease;
}
.service-card:before{
  content:"";position:absolute;inset:auto -10% -42% -10%;height:150px;
  background:radial-gradient(ellipse,rgba(212,154,67,.20),transparent 68%);
}
.service-card:hover{transform:translateY(-8px);border-color:var(--line-strong);box-shadow:0 30px 80px rgba(0,0,0,.42)}
.service-card span{display:block;color:var(--gold2);font-weight:900;letter-spacing:.18em;margin-bottom:48px}
.service-card h2{font-family:"Oswald",sans-serif;text-transform:uppercase;line-height:1;font-size:1.7rem;margin:0 0 14px}
.service-card p{position:relative;color:var(--muted);line-height:1.65;margin:0}
.craft-section{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:center}
.premium-list{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:12px}
.premium-list li{
  padding:17px 18px 17px 52px;position:relative;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.04);color:var(--muted);line-height:1.5;
}
.premium-list li:before{
  content:"";position:absolute;left:21px;top:22px;width:14px;height:8px;border-left:3px solid var(--gold2);border-bottom:3px solid var(--gold2);transform:rotate(-45deg)
}
.tilt-frame{
  position:relative;border-radius:38px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);
  transform-style:preserve-3d;transition:transform .25s ease;
}
.tilt-frame:after{
  content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.14),transparent 34%,rgba(212,154,67,.10));
  pointer-events:none;
}
.tilt-frame img{width:100%;height:650px;object-fit:cover}
.areas{text-align:center;padding:76px clamp(20px,6vw,96px);background:#0b0806;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.area-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
.area-pills span{padding:14px 18px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.045);font-weight:800;color:#e8dac7}
.final-cta{text-align:center}
.final-cta p{margin-left:auto;margin-right:auto}
.sub-hero{
  position:relative;min-height:650px;display:flex;align-items:flex-end;padding:130px clamp(20px,6vw,96px) 78px;background-size:cover;background-position:center;overflow:hidden;
}
.stairs-hero{background-image:url('assets/stairs.jpg')}
.hardwood-hero{background-image:url('assets/hardwood.jpg')}
.lvp-hero{background-image:url('assets/lvp.jpg')}
.gallery-hero{background-image:url('assets/cabin.jpg')}
.sub-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.48),rgba(0,0,0,.12)),linear-gradient(0deg,rgba(7,6,5,.96),rgba(7,6,5,.08) 50%)}
.sub-copy{position:relative;z-index:2;max-width:920px}
.sub-copy h1{
  font-family:"Oswald",sans-serif;text-transform:uppercase;font-size:clamp(3.4rem,7vw,7.5rem);line-height:.9;letter-spacing:-.045em;margin:0 0 20px;
}
.sub-copy p{color:#dfd1be;line-height:1.72;max-width:760px}
.gallery-grid{columns:4 270px;column-gap:17px}
.gallery-item{display:block;break-inside:avoid;margin-bottom:17px;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#111;box-shadow:0 18px 58px rgba(0,0,0,.26)}
.gallery-item img{width:100%;height:auto;transition:transform .45s ease,filter .45s ease}
.gallery-item:hover img{transform:scale(1.045);filter:contrast(1.06) saturate(1.08)}
.contact-page{max-width:1120px;margin:auto;padding-top:110px}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:38px 0}
.contact-grid a{padding:24px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.024))}
.contact-grid small{display:block;color:var(--gold2);text-transform:uppercase;letter-spacing:.16em;font-weight:900}
.contact-grid strong{display:block;margin-top:9px;overflow-wrap:anywhere}
.estimate-form{display:grid;gap:14px}
input,select,textarea{
  width:100%;padding:17px 18px;border-radius:18px;border:1px solid var(--line);
  background:rgba(0,0,0,.28);color:var(--text);font:inherit;outline:none;
}
textarea{resize:vertical}
.note{color:var(--muted)}
.footer{
  display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap;padding:40px clamp(20px,6vw,96px);
  border-top:1px solid var(--line);background:#070605;color:var(--muted);
}
.footer strong{display:block;color:var(--text);font-family:"Cinzel",serif;text-transform:uppercase;letter-spacing:.08em}
.footer p{margin:10px 0;color:var(--muted)}
.footer-links{display:grid;gap:9px;text-align:right}
.footer-links a{color:var(--gold2);font-weight:850}
.reveal{opacity:0;transform:translateY(32px);filter:blur(5px);transition:opacity .8s ease,transform .8s ease,filter .8s ease}
.reveal.visible{opacity:1;transform:translateY(0);filter:blur(0)}
@media(max-width:1080px){
  .nav-links{display:none}
  .menu-toggle{display:inline-flex;padding:10px 13px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--gold2);font-weight:900}
  .nav-links.open{display:grid;position:absolute;left:18px;right:18px;top:78px;padding:18px;border:1px solid var(--line);border-radius:20px;background:rgba(7,6,5,.96);backdrop-filter:blur(18px)}
  .proof-bar,.service-cards,.craft-section,.contact-grid{grid-template-columns:1fr}
  .showcase-grid{grid-template-columns:1fr}
  .showcase-card.large,.showcase-card{min-height:430px;grid-row:auto}
  .tilt-frame img{height:480px}
}
@media(max-width:650px){
  .site-nav{padding:13px 15px}.brand-cube{width:46px;height:46px}.brand-copy small{display:none}.brand-copy strong{font-size:.86rem}.nav-phone{font-size:.78rem;padding:10px 11px}
  .luxury-hero{min-height:760px;padding:106px 18px 54px}.hero-card{position:relative;right:auto;bottom:auto;margin:28px 18px 0;z-index:4}
  .logo-by{font-size:5rem}.logo-flooring{font-size:2.55rem;letter-spacing:.14em}.logo-tagline{font-size:.62rem;letter-spacing:.16em}
  .hero-actions{display:grid}.btn{width:100%}.section{padding:64px 18px}.section-title{font-size:3rem}
  .showcase-card.large,.showcase-card{min-height:360px;border-radius:24px}.showcase-card:after{border-radius:24px}.showcase-card strong{font-size:1.55rem}
  .service-card{min-height:auto;padding:24px}.service-card span{margin-bottom:34px}
  .tilt-frame{border-radius:24px}.tilt-frame img{height:380px}
  .sub-hero{min-height:560px;padding:110px 18px 54px}.sub-copy h1{font-size:3.25rem}
  .contact-page{padding-top:72px}.footer-links{text-align:left}
}
