
:root{--black:#0b0b0a;--gold:#c5830a;--cream:#f4f1e9;--white:#fff;--ink:#111}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream)}
.nav{height:92px;padding:0 6vw;display:flex;align-items:center;gap:38px;background:rgba(5,5,5,.94);color:#fff;position:absolute;z-index:20;width:100%;backdrop-filter:blur(8px)}
.brand{width:200px;height:76px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,rgba(197,131,10,.20),transparent 72%);overflow:hidden}
.brand img{width:185px;height:72px;object-fit:contain}
nav{display:flex;gap:38px;margin-left:auto}nav a{color:#fff;text-decoration:none;font-weight:700;font-size:14px}
.quote,.outline{display:inline-block;padding:16px 24px;text-decoration:none;font-weight:800;border-radius:3px}.quote{background:var(--gold);color:#fff}.top{padding:13px 18px}.outline{color:#fff;border:1px solid #aaa}
.hero{height:760px;position:relative;background:#111;overflow:hidden}.slides,.slide,.shade{position:absolute;inset:0}.slide{background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease;transform:scale(1.04)}.slide.active{opacity:1;animation:kenburns 8s ease-out forwards}@keyframes kenburns{from{transform:scale(1.04)}to{transform:scale(1.13)}}
.shade{background:linear-gradient(90deg,rgba(4,4,4,.92) 0%,rgba(4,4,4,.72) 38%,rgba(4,4,4,.30) 70%,rgba(4,4,4,.18) 100%);z-index:2}.hero-copy{position:relative;z-index:3;color:#fff;padding:190px 7vw 70px;max-width:780px}.eyebrow{color:var(--gold);font-weight:800;letter-spacing:5px;font-size:13px}.hero h1{font-size:70px;line-height:1.02;margin:24px 0}.lead{font-size:20px;line-height:1.55;max-width:590px}.actions{display:flex;gap:14px;margin-top:34px}.dots{position:absolute;z-index:4;bottom:34px;left:50%;transform:translateX(-50%);display:flex;gap:10px}.dot{width:9px;height:9px;border:0;border-radius:50%;background:#fff8;cursor:pointer;padding:0}.dot.active{background:var(--gold)}
.benefits{background:#111;color:#fff;padding:24px 7vw;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.benefits div{display:flex;gap:16px;border-right:1px solid #444;padding-right:20px}.benefits div:last-child{border:0}.benefits b{color:var(--gold);font-size:27px}.benefits strong,.benefits small{display:block}.benefits small{color:#bbb;margin-top:7px;line-height:1.4}
.section{padding:90px 8vw}.section h2{font-size:56px;line-height:1.05;margin:20px 0 45px}.light{background:var(--cream)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cards article{background:#fff;border:1px solid #ddd;padding:40px;min-height:280px}.cards em{font-style:normal;color:var(--gold);font-weight:800}.cards h3{font-size:27px;margin-top:55px}.cards p,.about-copy,.contact p{font-size:18px;line-height:1.6}
.dark{background:#111;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px}.dark h2{margin-bottom:0}.about-copy{padding-top:42px}.project-placeholder{border:1px dashed #aaa;text-align:center;padding:90px 20px;font-size:19px}
.contact{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;background:#f8f6f1}.contact aside{background:#fff;border-top:4px solid var(--gold);padding:40px;box-shadow:0 15px 35px #0000000d}.muted{color:#666}
footer{background:#080808;color:#ddd;padding:32px 8vw;display:flex;align-items:center;justify-content:space-between}footer img{width:170px;max-height:90px;object-fit:contain;background:radial-gradient(circle at center,rgba(197,131,10,.18),transparent 72%)}
@media(max-width:850px){.nav{padding:0 5vw}.brand{width:145px}.brand img{width:140px}.nav nav,.top{display:none}.hero{height:700px}.hero-copy{padding:165px 6vw 50px}.hero h1{font-size:48px}.slide{background-position:center}.benefits,.cards,.dark,.contact{grid-template-columns:1fr}.benefits div{border-right:0;border-bottom:1px solid #333;padding:15px 0}.section{padding:65px 6vw}.section h2{font-size:42px}.dark{gap:10px}.about-copy{padding-top:0}footer{gap:25px;flex-direction:column;align-items:flex-start}}



/* V5 REVISED — readable scalable logo lockup for dark header/footer */
.nav{
  height:126px;
  padding:0 4vw;
  gap:30px;
}
.brand{
  width:auto;
  height:auto;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  background:none;
  overflow:visible;
  text-decoration:none;
  flex:0 0 auto;
}
.logo-lockup{
  display:flex;
  align-items:center;
  gap:13px;
}
.logo-mark{
  width:92px;
  height:92px;
  object-fit:cover;
  object-position:center;
  border-radius:2px;
  mix-blend-mode:screen;
}
.logo-copy{
  display:flex;
  flex-direction:column;
  min-width:250px;
  line-height:1;
}
.logo-copy strong{
  color:#f6f2e8;
  font-size:28px;
  letter-spacing:.31em;
  font-weight:800;
  white-space:nowrap;
}
.logo-project{
  color:#d79a20;
  font-size:14px;
  letter-spacing:.23em;
  font-weight:800;
  margin-top:8px;
  white-space:nowrap;
}
.logo-tagline{
  color:#f4e6c6;
  font-size:9px;
  letter-spacing:.12em;
  font-weight:700;
  margin-top:9px;
  white-space:nowrap;
}
.logo-tagline i{
  color:#d79a20;
  font-style:normal;
  margin:0 5px;
}
.hero-copy{padding-top:230px}

/* footer logo — deliberately larger and equally readable */
footer{
  min-height:190px;
  padding:38px 6vw;
}
.footer-brand .logo-mark{
  width:118px;
  height:118px;
}
.footer-brand .logo-copy{
  min-width:330px;
}
.footer-brand .logo-copy strong{
  font-size:34px;
}
.footer-brand .logo-project{
  font-size:16px;
}
.footer-brand .logo-tagline{
  font-size:10px;
}

/* keep navigation balanced with the larger logo */
.nav nav{
  gap:30px;
}
.top{
  white-space:nowrap;
}

@media(max-width:1100px){
  .logo-mark{width:76px;height:76px}
  .logo-copy{min-width:205px}
  .logo-copy strong{font-size:23px}
  .logo-project{font-size:12px}
  .logo-tagline{font-size:8px}
  .nav{height:110px}
  .nav nav{gap:19px}
  .hero-copy{padding-top:205px}
}

@media(max-width:850px){
  .nav{height:96px;padding:0 5vw}
  .logo-mark{width:68px;height:68px}
  .logo-copy{min-width:190px}
  .logo-copy strong{font-size:21px}
  .logo-project{font-size:10px}
  .logo-tagline{font-size:7px}
  .nav nav,.top{display:none}
  .hero-copy{padding-top:170px}
  footer{min-height:220px}
  .footer-brand .logo-mark{width:88px;height:88px}
  .footer-brand .logo-copy{min-width:240px}
  .footer-brand .logo-copy strong{font-size:27px}
  .footer-brand .logo-project{font-size:12px}
  .footer-brand .logo-tagline{font-size:8px}
}


/* =========================
   V6 PREMIUM ANIMATED HERO
   ========================= */
.premium-hero{
  position:relative;
  min-height:790px;
  background:#070707;
  overflow:hidden;
  isolation:isolate;
}
.hero-glow{
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 78% 22%, rgba(197,131,10,.20), transparent 30%),
    radial-gradient(circle at 48% 78%, rgba(255,255,255,.05), transparent 28%);
  animation:glowDrift 10s ease-in-out infinite alternate;
}
@keyframes glowDrift{
  from{transform:translate3d(-1.5%,0,0) scale(1.02)}
  to{transform:translate3d(1.5%,-1%,0) scale(1.05)}
}

.hero-panels{
  position:absolute;
  inset:92px 0 0 31%;
  display:flex;
  z-index:1;
  overflow:hidden;
}
.hero-panel{
  position:relative;
  flex:1 1 25%;
  min-width:0;
  overflow:hidden;
  border-left:1px solid rgba(255,255,255,.08);
  transform:skewX(-7deg) scale(1.03);
  transform-origin:center;
  transition:flex .9s cubic-bezier(.2,.8,.2,1), filter .8s ease, opacity .8s ease;
  filter:brightness(.68) saturate(.92);
}
.hero-panel:first-child{border-left:0}
.hero-panel.active{
  flex:1.45 1 36%;
  filter:brightness(1) saturate(1.08);
}
.panel-image{
  position:absolute;
  inset:-6% -14%;
  background-size:cover;
  background-position:center;
  transform:skewX(7deg) scale(1.08);
  transition:transform 6s ease, filter .8s ease;
}
.hero-panel.active .panel-image{
  transform:skewX(7deg) scale(1.16) translate3d(1.5%,-.5%,0);
}
.panel-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.20) 55%,rgba(0,0,0,.70)),
    linear-gradient(90deg,rgba(197,131,10,.06),transparent 38%);
}
.hero-panel::after{
  content:"";
  position:absolute;
  top:-25%;
  bottom:-25%;
  left:-18%;
  width:24%;
  background:linear-gradient(90deg,transparent,rgba(255,220,150,.22),transparent);
  transform:translateX(-220%) skewX(7deg);
  opacity:0;
}
.hero-panel.active::after{
  animation:panelShine 4.5s ease-in-out infinite;
}
@keyframes panelShine{
  0%,45%{transform:translateX(-220%) skewX(7deg);opacity:0}
  55%{opacity:.8}
  100%{transform:translateX(620%) skewX(7deg);opacity:0}
}
.panel-label{
  position:absolute;
  left:28px;
  bottom:34px;
  z-index:3;
  color:#fff;
  transform:skewX(7deg);
  text-shadow:0 3px 20px rgba(0,0,0,.7);
  opacity:.82;
  transition:opacity .4s ease, transform .6s ease;
}
.hero-panel.active .panel-label{
  opacity:1;
  transform:skewX(7deg) translateY(-6px);
}
.panel-label span{
  display:block;
  color:#d89a23;
  font-weight:800;
  font-size:12px;
  letter-spacing:.18em;
  margin-bottom:6px;
}
.panel-label strong{
  font-size:15px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.hero-darkwash{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(90deg,#060606 0%,rgba(6,6,6,.98) 18%,rgba(6,6,6,.87) 29%,rgba(6,6,6,.42) 43%,rgba(6,6,6,.08) 72%),
    linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.18) 70%,rgba(0,0,0,.55));
}
.premium-copy{
  position:relative;
  z-index:4;
  width:43%;
  max-width:690px;
  padding:225px 0 80px 5.4vw;
}
.premium-copy h1{
  font-size:clamp(54px,5.2vw,84px);
  letter-spacing:-.045em;
  line-height:.98;
  margin:22px 0 26px;
  text-shadow:0 12px 40px rgba(0,0,0,.45);
}
.premium-copy .lead{
  max-width:560px;
  color:#e9e6df;
}

.hero-arrow{
  position:absolute;
  z-index:5;
  top:51%;
  transform:translateY(-50%);
  width:46px;
  height:70px;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(0,0,0,.22);
  color:#fff;
  font-size:42px;
  line-height:1;
  cursor:pointer;
  backdrop-filter:blur(5px);
  transition:.25s ease;
}
.hero-arrow:hover{
  background:rgba(197,131,10,.82);
  border-color:#c5830a;
}
.hero-prev{left:18px}
.hero-next{right:18px}

.hero-dots{
  position:absolute;
  z-index:5;
  bottom:35px;
  left:59%;
  display:flex;
  gap:10px;
}
.hero-dot{
  width:8px;
  height:8px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.62);
  cursor:pointer;
  transition:.3s ease;
}
.hero-dot.active{
  width:26px;
  border-radius:8px;
  background:#c5830a;
}
.hero-progress{
  position:absolute;
  z-index:5;
  left:5.4vw;
  bottom:0;
  width:260px;
  height:2px;
  background:rgba(255,255,255,.12);
  overflow:hidden;
}
.progress-bar{
  display:block;
  height:100%;
  width:0;
  background:linear-gradient(90deg,#c5830a,#f1c66e);
}
.progress-bar.run{
  animation:heroProgress 5.2s linear forwards;
}
@keyframes heroProgress{from{width:0}to{width:100%}}

@media(max-width:1050px){
  .hero-panels{left:24%}
  .premium-copy{width:52%;padding-left:5vw}
  .premium-copy h1{font-size:58px}
  .panel-label{left:18px}
}
@media(max-width:850px){
  .premium-hero{min-height:735px}
  .hero-panels{inset:96px 0 0 0}
  .hero-panel{filter:brightness(.45);transform:skewX(-4deg) scale(1.04)}
  .panel-image{transform:skewX(4deg) scale(1.08)}
  .hero-panel.active .panel-image{transform:skewX(4deg) scale(1.15)}
  .hero-darkwash{
    background:
      linear-gradient(90deg,rgba(0,0,0,.90),rgba(0,0,0,.58) 65%,rgba(0,0,0,.42)),
      linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.64));
  }
  .premium-copy{width:100%;padding:175px 7vw 100px;max-width:690px}
  .premium-copy h1{font-size:48px}
  .hero-dots{left:50%;transform:translateX(-50%)}
  .hero-arrow{display:none}
  .panel-label{display:none}
  .hero-progress{left:7vw;width:180px}
}


/* =========================
   V7 PREMIUM LOGO RESTORATION
   Restores the original one-piece metallic logo artwork.
   Uses a soft champagne halo behind it so the dark BEYOND lettering stays visible
   without a white rectangle.
   ========================= */

.nav{
  height:138px;
  padding:0 4.2vw;
}
.premium-logo{
  position:relative;
  width:320px;
  height:128px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
  background:none;
  flex:0 0 auto;
}
.premium-logo::before{
  content:"";
  position:absolute;
  inset:13% 1% 7%;
  border-radius:50%;
  background:
    radial-gradient(ellipse at 52% 66%,
      rgba(242,219,170,.72) 0%,
      rgba(205,153,54,.34) 28%,
      rgba(117,77,15,.15) 49%,
      transparent 72%);
  filter:blur(9px);
  opacity:.85;
  pointer-events:none;
}
.premium-logo img{
  position:relative;
  z-index:1;
  width:305px;
  height:122px;
  object-fit:contain;
  filter:
    drop-shadow(0 6px 16px rgba(0,0,0,.48))
    drop-shadow(0 0 11px rgba(211,158,50,.20));
}
.nav nav{margin-left:auto}
.hero-panels{inset:138px 0 0 31%}
.premium-copy{padding-top:265px}

/* Footer uses the same premium artwork, only larger */
footer{
  min-height:235px;
  padding:38px 5.5vw;
}
.footer-brand{
  width:390px;
  height:170px;
}
.footer-brand::before{
  inset:10% -1% 4%;
  background:
    radial-gradient(ellipse at 52% 66%,
      rgba(245,222,173,.78) 0%,
      rgba(205,153,54,.38) 29%,
      rgba(117,77,15,.15) 52%,
      transparent 75%);
}
.footer-brand img{
  width:375px;
  height:160px;
}

/* Hide obsolete reconstructed-logo elements if any remain in cached markup */
.logo-lockup,.logo-mark,.logo-copy{display:none!important}

@media(max-width:1200px){
  .premium-logo{width:270px;height:118px}
  .premium-logo img{width:255px;height:110px}
  .nav{height:124px}
  .hero-panels{inset:124px 0 0 26%}
  .premium-copy{padding-top:235px}
}
@media(max-width:850px){
  .nav{height:104px;padding:0 5vw}
  .premium-logo{width:235px;height:96px}
  .premium-logo img{width:225px;height:92px}
  .premium-logo::before{inset:16% 2% 6%}
  .hero-panels{inset:104px 0 0 0}
  .premium-copy{padding-top:180px}
  .footer-brand{width:300px;height:135px}
  .footer-brand img{width:290px;height:128px}
}


/* =========================
   V8 LOGO REFINEMENT
   Uses the user's preferred original premium logo artwork,
   with dark lettering converted to warm white and slightly larger display.
   ========================= */
.premium-logo{
  width:355px;
  height:142px;
}
.premium-logo::before{
  inset:10% 0% 4%;
  background:
    radial-gradient(ellipse at 52% 62%,
      rgba(244,229,189,.82) 0%,
      rgba(210,160,58,.34) 30%,
      rgba(120,81,20,.13) 52%,
      transparent 76%);
  filter:blur(8px);
  opacity:.72;
}
.premium-logo img{
  width:338px;
  height:132px;
  object-fit:contain;
  filter:
    drop-shadow(0 8px 18px rgba(0,0,0,.52))
    drop-shadow(0 0 12px rgba(219,176,88,.16));
}
.nav{height:146px;}
.hero-panels{inset:146px 0 0 31%;}
.premium-copy{padding-top:273px;}

.footer-brand{
  width:438px;
  height:188px;
}
.footer-brand::before{
  inset:8% -1% 3%;
  opacity:.76;
}
.footer-brand img{
  width:420px;
  height:176px;
}

@media(max-width:1200px){
  .premium-logo{width:305px;height:128px}
  .premium-logo img{width:292px;height:118px}
  .nav{height:132px}
  .hero-panels{inset:132px 0 0 26%}
  .premium-copy{padding-top:245px}
  .footer-brand{width:360px;height:158px}
  .footer-brand img{width:346px;height:148px}
}
@media(max-width:850px){
  .nav{height:110px}
  .premium-logo{width:255px;height:102px}
  .premium-logo img{width:243px;height:96px}
  .hero-panels{inset:110px 0 0 0}
  .premium-copy{padding-top:186px}
  .footer-brand{width:305px;height:138px}
  .footer-brand img{width:294px;height:132px}
}


/* =========================
   V9 LOGO VISIBILITY FIX
   ========================= */
.nav{
  height:168px !important;
  padding:0 3.5vw !important;
}
.premium-logo{
  width:440px !important;
  height:158px !important;
}
.premium-logo::before{
  inset:8% 0 3% !important;
}
.premium-logo img{
  width:420px !important;
  height:150px !important;
  object-fit:contain !important;
}
.hero-panels{
  inset:168px 0 0 31% !important;
}
.premium-copy{
  padding-top:295px !important;
}
footer{
  min-height:270px !important;
}
.footer-brand{
  width:520px !important;
  height:220px !important;
}
.footer-brand img{
  width:500px !important;
  height:210px !important;
}
@media(max-width:1200px){
  .nav{height:148px !important}
  .premium-logo{width:360px !important;height:138px !important}
  .premium-logo img{width:345px !important;height:132px !important}
  .hero-panels{inset:148px 0 0 26% !important}
  .premium-copy{padding-top:265px !important}
}
@media(max-width:850px){
  .nav{height:116px !important}
  .premium-logo{width:285px !important;height:108px !important}
  .premium-logo img{width:275px !important;height:104px !important}
  .hero-panels{inset:116px 0 0 0 !important}
  .premium-copy{padding-top:192px !important}
  .footer-brand{width:350px !important;height:160px !important}
  .footer-brand img{width:335px !important;height:152px !important}
}


/* =========================
   V10 CONTACT + TYPOGRAPHY REFINEMENT
   ========================= */
.section h2{font-size:48px;letter-spacing:-.025em}
.cards h3{font-size:24px}
.cards p,.about-copy,.contact p{font-size:16px;line-height:1.7}
.project-placeholder{font-size:17px}
.contact{align-items:stretch}
.contact-intro{max-width:720px}
.contact-actions{display:flex;gap:14px;align-items:center;margin-top:30px}
.contact-link{display:inline-block;padding:15px 22px;border:1px solid #222;color:#111;text-decoration:none;font-weight:750;border-radius:3px}
.contact-card{display:flex;flex-direction:column;justify-content:center;gap:0}
.contact-card h3{font-size:24px;margin:0 0 22px}
.contact-row{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:17px 0;border-top:1px solid #e6e1d8;align-items:center}
.contact-row span{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#777}
.contact-row a,.contact-row strong{font-size:16px;color:#151515;text-decoration:none;font-weight:700;word-break:break-word}
.contact-row a:hover{color:var(--gold)}
@media(max-width:850px){
 .section h2{font-size:38px}
 .cards h3{font-size:22px}
 .cards p,.about-copy,.contact p{font-size:15px}
 .contact-actions{flex-wrap:wrap}
 .contact-row{grid-template-columns:1fr;gap:5px}
}


/* =========================
   V11 CONTACT + LOGO REFINEMENT
   ========================= */
/* Larger header/footer logo so the full FLOOR PROTECTION · PROFESSIONAL PAINTING line is readable */
.nav{height:190px !important;}
.premium-logo{width:330px !important;height:184px !important;flex:0 0 330px !important;}
.premium-logo img{width:318px !important;height:178px !important;object-fit:contain !important;}
.hero-panels{inset:190px 0 0 31% !important;}
.premium-copy{padding-top:315px !important;}
footer{min-height:300px !important;}
.footer-brand{width:410px !important;height:276px !important;flex:0 0 410px !important;}
.footer-brand img{width:400px !important;height:266px !important;object-fit:contain !important;}
.contact-row{grid-template-columns:120px 1fr !important;}
.contact-row span::after{content:"";}
@media(max-width:1200px){
 .nav{height:166px !important}
 .premium-logo{width:285px !important;height:158px !important;flex-basis:285px !important}
 .premium-logo img{width:276px !important;height:154px !important}
 .hero-panels{inset:166px 0 0 26% !important}
 .premium-copy{padding-top:280px !important}
 .footer-brand{width:360px !important;height:240px !important;flex-basis:360px !important}
 .footer-brand img{width:350px !important;height:232px !important}
}
@media(max-width:850px){
 .nav{height:130px !important}
 .premium-logo{width:220px !important;height:124px !important;flex-basis:220px !important}
 .premium-logo img{width:212px !important;height:120px !important}
 .hero-panels{inset:130px 0 0 0 !important}
 .premium-copy{padding-top:205px !important}
 .footer-brand{width:300px !important;height:200px !important;flex-basis:300px !important}
 .footer-brand img{width:292px !important;height:194px !important}
 .contact-row{grid-template-columns:1fr !important}
}


/* =========================
   V12 — FULL CONTACT PAGE
   ========================= */
.contact-v12{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.08fr) !important;
  gap:80px !important;
  align-items:start !important;
  background:#f7f5ef !important;
}
.contact-info{
  max-width:650px;
}
.contact-info h2{
  margin-bottom:22px !important;
}
.contact-lead{
  max-width:580px;
  color:#555;
}
.company-contact{
  margin-top:42px;
  padding-top:30px;
  border-top:1px solid #ddd6c9;
}
.company-contact h3{
  font-size:30px;
  margin:0 0 26px;
}
.info-line{
  display:flex;
  gap:18px;
  align-items:center;
  padding:17px 0;
  color:#151515;
  text-decoration:none;
  border-bottom:1px solid #e4ded2;
}
.info-line:hover strong{
  color:var(--gold);
}
.info-line.no-link{
  cursor:default;
}
.info-icon{
  width:48px;
  height:48px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#111;
  color:var(--gold);
  font-size:20px;
  flex:0 0 48px;
}
.info-line small{
  display:block;
  color:#7b756a;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:800;
  margin-bottom:4px;
}
.info-line strong{
  display:block;
  font-size:17px;
  line-height:1.35;
}
.contact-wa{
  margin-top:30px;
}
.contact-form-wrap{
  background:#fff;
  border-top:4px solid var(--gold);
  box-shadow:0 18px 45px rgba(0,0,0,.08);
  padding:38px;
}
.enquiry-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px 18px;
}
.field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.field-full{
  grid-column:1 / -1;
}
.field label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#777;
  font-weight:800;
}
.field label span{
  color:var(--gold);
}
.field input,
.field select,
.field textarea{
  width:100%;
  border:1px solid #d8d3c9;
  background:#fff;
  color:#151515;
  font:inherit;
  font-size:15px;
  padding:13px 14px;
  border-radius:2px;
  outline:none;
  transition:border-color .2s, box-shadow .2s;
}
.field textarea{
  resize:vertical;
  min-height:150px;
}
.field input:focus,
.field select:focus,
.field textarea:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(197,131,10,.10);
}
.form-submit{
  grid-column:1 / -1;
  border:0;
  background:#111;
  color:#fff;
  font-weight:800;
  font-size:15px;
  padding:16px 22px;
  cursor:pointer;
  transition:.25s ease;
}
.form-submit:hover{
  background:var(--gold);
}
.form-note{
  grid-column:1 / -1;
  margin:0;
  color:#888;
  font-size:12px !important;
}
.floating-whatsapp{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:60;
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#16c96b;
  color:#fff;
  text-decoration:none;
  font-size:25px;
  font-weight:900;
  box-shadow:0 10px 25px rgba(0,0,0,.22);
  transition:transform .2s ease, box-shadow .2s ease;
}
.floating-whatsapp:hover{
  transform:translateY(-3px) scale(1.04);
  box-shadow:0 14px 30px rgba(0,0,0,.28);
}

@media(max-width:900px){
  .contact-v12{
    grid-template-columns:1fr !important;
    gap:45px !important;
  }
}
@media(max-width:650px){
  .contact-form-wrap{
    padding:26px 20px;
  }
  .enquiry-form{
    grid-template-columns:1fr;
  }
  .field,
  .field-full,
  .form-submit,
  .form-note{
    grid-column:1 !important;
  }
  .company-contact h3{
    font-size:25px;
  }
  .floating-whatsapp{
    right:16px;
    bottom:16px;
  }
}


/* =========================
   V13 — HERO LABEL VISIBILITY FIX
   Keep panel labels above the dark wash so they are never obscured.
   ========================= */
.hero-darkwash{
  z-index:2 !important;
  pointer-events:none !important;
}
.hero-panel{
  overflow:hidden;
}
.panel-label{
  z-index:6 !important;
  opacity:1 !important;
  bottom:52px !important;
  padding:10px 14px 10px 12px;
  background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.18),transparent);
  border-left:2px solid #c5830a;
  min-width:165px;
}
.hero-panel.active .panel-label{
  opacity:1 !important;
}
.panel-label span{
  color:#e1a42a !important;
  text-shadow:0 2px 12px rgba(0,0,0,.9);
}
.panel-label strong{
  color:#fff !important;
  text-shadow:0 3px 16px rgba(0,0,0,.95);
}


/* =========================
   V14 — FINAL CONTACT LAYOUT
   Left = company contact details
   Right = enquiry form
   No duplicated WhatsApp / Email buttons
   ========================= */

.contact-v14{
  display:grid !important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;
  gap:88px !important;
  align-items:start !important;
  background:#f7f5ef !important;
}

.contact-info-v14{
  max-width:620px;
}

.contact-info-v14 h2{
  margin:18px 0 22px !important;
}

.contact-lead-v14{
  color:#555 !important;
  max-width:560px;
}

.company-contact-v14{
  margin-top:42px;
  border-top:1px solid #ddd6c9;
  padding-top:30px;
}

.company-contact-v14 h3{
  margin:0 0 24px;
  font-size:28px;
  line-height:1.2;
}

.info-line-v14{
  display:flex;
  align-items:center;
  gap:16px;
  padding:16px 0;
  border-bottom:1px solid #e2ddd2;
}

.info-icon-v14{
  width:46px;
  height:46px;
  border-radius:50%;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  background:#111;
  color:var(--gold);
  font-size:19px;
}

.info-line-v14 small{
  display:block;
  color:#7d776d;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.13em;
  margin-bottom:4px;
}

.info-line-v14 a,
.info-line-v14 strong{
  color:#151515;
  text-decoration:none;
  font-size:16px;
  font-weight:700;
}

.info-line-v14 a:hover{
  color:var(--gold);
}

.contact-form-wrap-v14{
  background:#fff;
  border-top:4px solid var(--gold);
  box-shadow:0 18px 45px rgba(0,0,0,.08);
  padding:38px;
}

.enquiry-form-v14{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px 18px;
}

.field-v14{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.field-full-v14{
  grid-column:1 / -1;
}

.field-v14 label{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#777;
  font-weight:800;
}

.field-v14 label span{
  color:var(--gold);
}

.field-v14 input,
.field-v14 select,
.field-v14 textarea{
  width:100%;
  border:1px solid #d8d3c9;
  background:#fff;
  color:#151515;
  font:inherit;
  font-size:15px;
  padding:13px 14px;
  border-radius:2px;
  outline:none;
  transition:border-color .2s, box-shadow .2s;
}

.field-v14 textarea{
  resize:vertical;
  min-height:150px;
}

.field-v14 input:focus,
.field-v14 select:focus,
.field-v14 textarea:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(197,131,10,.10);
}

.form-submit-v14{
  grid-column:1 / -1;
  border:0;
  background:#111;
  color:#fff;
  font-weight:800;
  font-size:15px;
  padding:16px 22px;
  cursor:pointer;
  transition:.25s ease;
}

.form-submit-v14:hover{
  background:var(--gold);
}

.form-note-v14{
  grid-column:1 / -1;
  margin:0;
  color:#888;
  font-size:12px !important;
}

@media(max-width:900px){
  .contact-v14{
    grid-template-columns:1fr !important;
    gap:44px !important;
  }
}

@media(max-width:650px){
  .contact-form-wrap-v14{
    padding:26px 20px;
  }
  .enquiry-form-v14{
    grid-template-columns:1fr;
  }
  .field-v14,
  .field-full-v14,
  .form-submit-v14,
  .form-note-v14{
    grid-column:1 !important;
  }
}


/* =========================
   V15 — HERO HEADLINE SIZE FIX
   Reduce the main hero headline so it no longer overlaps / blocks
   the service panel labels on desktop.
   ========================= */
@media (min-width: 901px){
  .hero-copy h1{
    font-size: clamp(46px, 4.6vw, 72px) !important;
    line-height: .98 !important;
    max-width: 590px !important;
    letter-spacing: -0.035em !important;
  }

  .hero-copy{
    max-width: 610px !important;
  }
}

@media (min-width: 1200px){
  .hero-copy h1{
    font-size: clamp(50px, 4.25vw, 68px) !important;
    max-width: 570px !important;
  }
}


/* =========================
   V17 — HERO CLEANUP
   - first two hero visuals swapped
   - embedded "Your" text hidden by cropping the floor-protection source image
   ========================= */

/* The original floor-protection source image contains old website text on its left side.
   Zoom and anchor to the right so only the worker/floor-protection visual is shown. */
.hero-panel .panel-image.floor-clean{
  background-size: 175% auto !important;
  background-position: 88% center !important;
}

/* Keep the crop clean while the active panel performs its cinematic zoom. */
.hero-panel.active .panel-image.floor-clean{
  background-size: 185% auto !important;
  background-position: 88% center !important;
}

/* On smaller screens, crop a little less aggressively. */
@media(max-width:850px){
  .hero-panel .panel-image.floor-clean{
    background-size: 205% auto !important;
    background-position: 84% center !important;
  }
  .hero-panel.active .panel-image.floor-clean{
    background-size: 215% auto !important;
    background-position: 84% center !important;
  }
}


/* =========================
   V18 — HERO PANELS SHIFT RIGHT
   Requested adjustment:
   - Move the full animated panel group further to the right.
   - Move the Floor Protection framing with it.
   - Reframe Floor Protection so more of the protection-film roll is visible.
   ========================= */

@media (min-width:1201px){
  /* Was 31%; move the whole purple/yellow-framed hero panel area right */
  .hero-panels{
    inset:190px 0 0 37% !important;
  }

  /* Give the left headline a clean dedicated area */
  .premium-copy,
  .hero-copy{
    width:36% !important;
    max-width:610px !important;
  }

  /* Show more of the physical floor-protection roll */
  .hero-panel .panel-image.floor-clean{
    background-size:150% auto !important;
    background-position:70% 58% !important;
  }

  .hero-panel.active .panel-image.floor-clean{
    background-size:158% auto !important;
    background-position:70% 58% !important;
  }
}

@media (min-width:901px) and (max-width:1200px){
  .hero-panels{
    inset:166px 0 0 32% !important;
  }

  .hero-panel .panel-image.floor-clean{
    background-size:158% auto !important;
    background-position:72% 58% !important;
  }

  .hero-panel.active .panel-image.floor-clean{
    background-size:166% auto !important;
    background-position:72% 58% !important;
  }
}


/* =========================
   V19 — FLOOR PROTECTION IMAGE CLEAN CROP
   Completely push the old embedded "Your" / "r" text outside
   the visible Floor Protection panel while retaining the roll.
   ========================= */
@media (min-width:1201px){
  .hero-panel .panel-image.floor-clean{
    background-size:205% auto !important;
    background-position:100% 68% !important;
  }
  .hero-panel.active .panel-image.floor-clean{
    background-size:214% auto !important;
    background-position:100% 68% !important;
  }
}

@media (min-width:901px) and (max-width:1200px){
  .hero-panel .panel-image.floor-clean{
    background-size:220% auto !important;
    background-position:100% 68% !important;
  }
  .hero-panel.active .panel-image.floor-clean{
    background-size:230% auto !important;
    background-position:100% 68% !important;
  }
}

@media (max-width:900px){
  .hero-panel .panel-image.floor-clean{
    background-size:235% auto !important;
    background-position:100% 68% !important;
  }
  .hero-panel.active .panel-image.floor-clean{
    background-size:245% auto !important;
    background-position:100% 68% !important;
  }
}


/* =========================
   V20 — DIRECT ENQUIRY FORM
   ========================= */
.form-status{
  grid-column:1 / -1;
  min-height:22px;
  margin:0;
  font-size:13px !important;
  line-height:1.5 !important;
  font-weight:700;
}
.form-status.success{
  color:#218739;
}
.form-status.error{
  color:#b42318;
}
.form-submit-v14:disabled,
.form-submit:disabled{
  opacity:.65;
  cursor:wait;
}
.hp-field{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
