:root{
  --burgundy:#7c1730;
  --burgundy-dark:#53101f;
  --silver:#d9d9d9;
  --silver-dark:#a6a6a6;
  --silver-light:#f3f3f3;
  --text:#1f1f1f;
  --shadow:0 18px 44px rgba(0,0,0,.15);
}

*{box-sizing:border-box}

body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--text);
  background:linear-gradient(180deg,#f5f5f5,#e6e6e6);
}

.wrap{
  width:min(1180px,92%);
  margin:0 auto;
}

.top-header{
  background:linear-gradient(180deg,var(--burgundy),var(--burgundy-dark));
  color:white;
}

.header-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:20px 0;
  gap:18px;
}

.brand-block h1{
  margin:0;
  font-size:clamp(2rem,4vw,3.5rem);
  animation: fadeUp .9s ease both;
}

.header-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  animation: fadeUp 1.1s ease both;
}

.btn{
  padding:14px 22px;
  border-radius:12px;
  text-decoration:none;
  font-weight:bold;
  transition:transform .25s ease, box-shadow .25s ease, opacity .25s ease;
}

.btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(0,0,0,.18);
}

.btn-light{
  background:linear-gradient(145deg,#ffffff,#cfcfcf);
  color:black;
}

.btn-outline{
  border:2px solid white;
  color:white;
}

.hero{
  min-height:60vh;
  background:url('hero.jpeg') center/cover no-repeat;
  animation: heroZoom 16s ease-in-out infinite alternate;
}

.hero-overlay{
  min-height:60vh;
  background:linear-gradient(rgba(44,19,27,.32), rgba(44,19,27,.32));
  display:flex;
  align-items:flex-end;
}

.hero-content{
  padding-bottom:34px;
  text-align:center;
}

.hero-tagline{
  margin:0;
  color:white;
  font-size:clamp(1.2rem,2.2vw,1.8rem);
  font-weight:700;
  text-shadow:0 2px 10px rgba(0,0,0,.25);
  animation: fadeUp 1.25s ease both;
}

.value-strip{
  background:linear-gradient(180deg,var(--burgundy),var(--burgundy-dark));
  color:white;
  text-align:center;
  padding:25px;
}

.value-strip .region{
  margin:0;
  font-size:1.15rem;
  opacity:.92;
  animation: fadeUp 1.35s ease both;
}

.value-strip h2{
  margin:12px 0 0;
  font-size:clamp(2rem,4vw,3rem);
  animation: fadeUp 1.45s ease both;
}

.content{
  padding:40px 0;
}

.section{
  margin-top:30px;
}

.section h2{
  text-align:center;
  color:var(--burgundy-dark);
}

.lead{
  max-width:900px;
  margin:0 auto 26px;
  text-align:center;
  line-height:1.75;
  color:#555;
}

.grid{
  display:grid;
  gap:20px;
}

.grid.three{
  grid-template-columns:repeat(3,1fr);
}

.grid.two{
  grid-template-columns:repeat(2,1fr);
}

.card{
  background:linear-gradient(145deg,var(--silver-light),var(--silver));
  border-radius:20px;
  padding:25px;
  box-shadow:var(--shadow);
  transition:transform .35s ease, box-shadow .35s ease, filter .35s ease;
}

.card:hover{
  transform:translateY(-8px) scale(1.02);
  box-shadow:0 25px 60px rgba(0,0,0,.25);
  filter:brightness(1.02);
}

.card h3{
  color:var(--burgundy);
}

.equipment{
  text-align:center;
  font-weight:bold;
}

.why-box{
  background:linear-gradient(180deg,#cfcfcf,#e6e6e6);
  padding:25px;
  border-radius:20px;
}

.contact-shell{
  display:grid;
  grid-template-columns:1fr 240px;
  gap:20px;
}

.contact-card{
  background:linear-gradient(145deg,#d9d9d9,#bfbfbf);
  padding:25px;
  border-radius:20px;
  box-shadow:var(--shadow);
}

.qr-card{
  background:linear-gradient(145deg,#e6e6e6,#bfbfbf);
  padding:20px;
  border-radius:20px;
  text-align:center;
}

.qr{
  width:160px;
}

/* Reveal on scroll */
.reveal{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .8s ease, transform .8s ease;
}

.reveal.visible{
  opacity:1;
  transform:none;
}

@keyframes heroZoom{
  from{ background-size:100%; }
  to{ background-size:108%; }
}

@keyframes fadeUp{
  from{ opacity:0; transform:translateY(22px); }
  to{ opacity:1; transform:none; }
}

@media(max-width:900px){
  .grid.three,
  .grid.two,
  .contact-shell{
    grid-template-columns:1fr;
  }
  .header-row{
    flex-direction:column;
    text-align:center;
  }
}

/* Sectioned blocks */
.section-block{
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(124,23,48,0.10);
  border-radius: 28px;
  padding: 28px 24px;
  margin-top: 34px;
  box-shadow: 0 12px 30px rgba(0,0,0,.06);
}

.section-block h2{
  margin-top: 0;
  margin-bottom: 18px;
}

.section-block .grid{
  margin-top: 10px;
}

.section-block.section-tint{
  background: linear-gradient(180deg, rgba(124,23,48,.08), rgba(124,23,48,.03));
}

@media(max-width:900px){
  .section-block{
    padding: 22px 18px;
  }
}


/* Statement Banner Upgrade */
.statement-banner{
  background: linear-gradient(180deg, #7c1730, #53101f);
  color: white;
  text-align: center;
  padding: 50px 20px;
  border-radius: 28px;
  margin-top: 40px;
  box-shadow: 0 20px 50px rgba(0,0,0,.25);
}

.statement-banner h2{
  color: white;
  margin-bottom: 20px;
}

.statement-banner p{
  font-size: 1.3rem;
  max-width: 900px;
  margin: 0 auto;
  line-height: 1.8;
  font-weight: 600;
}


/* Divider lines */
.statement-banner{
  position: relative;
}

.statement-banner::before,
.statement-banner::after{
  content:'';
  display:block;
  width:80px;
  height:3px;
  background:white;
  margin:0 auto 20px auto;
  opacity:.7;
}

.statement-banner::after{
  margin:20px auto 0 auto;
}

/* Word animation */
.word{
  opacity:0;
  display:inline-block;
  transform:translateY(10px);
  animation: wordFade .6s ease forwards;
}

.word:nth-child(1){animation-delay:.1s}
.word:nth-child(2){animation-delay:.2s}
.word:nth-child(3){animation-delay:.3s}
.word:nth-child(4){animation-delay:.4s}
.word:nth-child(5){animation-delay:.5s}
.word:nth-child(6){animation-delay:.6s}
.word:nth-child(7){animation-delay:.7s}
.word:nth-child(8){animation-delay:.8s}
.word:nth-child(9){animation-delay:.9s}
.word:nth-child(10){animation-delay:1s}
.word:nth-child(11){animation-delay:1.1s}
.word:nth-child(12){animation-delay:1.2s}
.word:nth-child(13){animation-delay:1.3s}
.word:nth-child(14){animation-delay:1.4s}
.word:nth-child(15){animation-delay:1.5s}
.word:nth-child(16){animation-delay:1.6s}

@keyframes wordFade{
  to{
    opacity:1;
    transform:none;
  }
}


/* Burgundy glow on hover */
.statement-banner .word:hover{
  color:#fff;
  text-shadow:0 0 8px #7c1730, 0 0 16px #7c1730, 0 0 24px #7c1730;
}

/* Replay animation on scroll */
.word{
  animation-fill-mode: both;
}



/* Burgundy section dividers */
.section{
  position: relative;
  padding-top: 40px;
}

.section::before{
  content:'';
  display:block;
  width:100%;
  height:2px;
  background:linear-gradient(90deg, transparent, #7c1730, transparent);
  margin:0 auto 30px auto;
  opacity:.8;
}

/* Stronger divider for key sections */
.section.why-box::before,
.section.section-tint::before{
  height:3px;
  background:#7c1730;
  opacity:1;
}


/* Animated glowing divider lines with centered icons */
.section{
  overflow: visible;
}

.section::before{
  position: relative;
  display:block;
  width:100%;
  height:2px;
  background:linear-gradient(90deg, transparent, #7c1730 18%, #b32045 50%, #7c1730 82%, transparent);
  background-size:200% 100%;
  animation: dividerFlow 4s linear infinite;
  box-shadow:0 0 8px rgba(124,23,48,.35);
}

.section::after{
  content:"";
  position: relative;
  display:block;
  width:44px;
  height:44px;
  margin:-52px auto 22px auto;
  border-radius:50%;
  background:#ffffff;
  border:2px solid #7c1730;
  box-shadow:0 0 0 6px rgba(124,23,48,.10), 0 0 14px rgba(124,23,48,.28);
  background-repeat:no-repeat;
  background-position:center;
  background-size:22px 22px;
  animation: dividerIconGlow 2.8s ease-in-out infinite;
}

.services-section.section::after{
  background-image:url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c1730' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\
  <path d='M3 7h13l3 3v7H3z'/><path d='M16 7V3H6v4'/><circle cx='7.5' cy='17.5' r='1.5'/><circle cx='16.5' cy='17.5' r='1.5'/>\
  </svg>");
}

.details-section.section::after{
  background-image:url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c1730' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\
  <path d='M14 3h7v7'/><path d='M10 14 21 3'/><path d='M21 14v7h-7'/><path d='M3 10 14 21'/><path d='M3 3l7 7'/>\
  </svg>");
}

.equipment-section.section::after{
  background-image:url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c1730' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\
  <path d='M4 18V8l4-3h6l6 4v9'/><path d='M8 5v4h6'/><circle cx='7' cy='18' r='1.5'/><circle cx='18' cy='18' r='1.5'/>\
  </svg>");
}

.why-section.section::after{
  background-image:url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c1730' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\
  <path d='m12 17-5 3 1.5-5.5L4 10.5l5.8-.3L12 5l2.2 5.2 5.8.3-4.5 4 1.5 5.5z'/>\
  </svg>");
}

@keyframes dividerFlow{
  0%{background-position:0% 50%}
  100%{background-position:200% 50%}
}

@keyframes dividerIconGlow{
  0%,100%{transform:translateY(0); box-shadow:0 0 0 6px rgba(124,23,48,.10), 0 0 14px rgba(124,23,48,.20)}
  50%{transform:translateY(-2px); box-shadow:0 0 0 6px rgba(124,23,48,.14), 0 0 20px rgba(124,23,48,.34)}
}


/* Remove center icons for specific sections */
.equipment-section.section::after,
.why-section.section::after,
.contact-section.section::after{
  display:none !important;
}


/* Hover movement for section blocks */
.section-block,
.section-tint,
.statement-banner,
.contact-card,
.qr-card,
.why-box,
.section{
  transition: transform .35s ease, box-shadow .35s ease, filter .35s ease;
}

.section-block:hover,
.section-tint:hover,
.statement-banner:hover,
.contact-card:hover,
.qr-card:hover,
.why-box:hover{
  transform: translateY(-8px);
  box-shadow: 0 22px 48px rgba(44,19,27,.18);
  filter: brightness(1.01);
}

/* Stronger hover for cards inside sections */
.card{
  transition: transform .3s ease, box-shadow .3s ease, filter .3s ease;
}

.card:hover{
  transform: translateY(-10px) scale(1.02);
  box-shadow: 0 26px 56px rgba(44,19,27,.20);
  filter: brightness(1.02);
}

/* Disable scroll animations */
.reveal, .reveal.visible{
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
}

/* Remove all divider center icons */
.section::after{
  display:none !important;
}
