@font-face{font-family:"Area51 Built Titling";src:url("https://area51asbestos.com.au/wp-content/uploads/2026/09/built-titling-sb.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Area51 Geoform";src:url("https://asphaltmaintenanceaustralia.com.au/wp-content/uploads/2026/09/Geoform-Light.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap}

:root{--ama2-red:#39B54A;--ama2-red-dark:#2E963D;--ama2-black:#0B0D0C;--ama2-white:#F3F5F1}

.ama-hero-v2,.ama-hero-v2 *{box-sizing:border-box}

.ama-hero-v2{position:relative;width:100vw;min-height:var(--ama2-h,620px);margin-left:calc(50% - 50vw);overflow:hidden;display:flex;align-items:center;background:var(--ama2-black);color:var(--ama2-white);isolation:isolate}

.ama-hero-v2__media{position:absolute;z-index:0;inset:0;display:block;width:100%;height:100%;overflow:hidden}
.ama-hero-v2__image{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--ama2-pos,center center);transform:scale(1.005)}

.ama-hero-v2__shade{position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(11,13,14,var(--ama2-overlay-left,.76)) 0%,rgba(11,13,14,var(--ama2-overlay-mid,.50)) 42%,rgba(11,13,14,var(--ama2-overlay-right,.08)) 78%,rgba(11,13,14,0) 100%),linear-gradient(180deg,rgba(11,13,14,.03) 48%,rgba(11,13,14,.24) 100%)}

.ama-hero-v2__inner{position:relative;z-index:2;width:min(1400px,calc(100% - 80px));margin:0 auto;padding:76px 0}
.ama-hero-v2--lower .ama-hero-v2__inner{padding-top:120px;padding-bottom:56px;align-self:flex-end}

.ama-hero-v2__content{width:min(850px,72vw)}

.ama-hero-v2__eyebrow{display:flex;align-items:center;gap:13px;margin:0 0 19px;font-family:"Area51 Geoform",Arial,sans-serif;font-size:10px;font-weight:300;line-height:1.2;letter-spacing:.24em;text-transform:uppercase;color:rgba(247,247,245,.72)}
.ama-hero-v2__eyebrow-line{display:block;width:35px;height:2px;flex:0 0 auto;background:var(--ama2-red)}

.ama-hero-v2__title{margin:0!important;padding:0!important;font-family:"Area51 Built Titling",Impact,sans-serif!important;font-size:clamp(76px,6.4vw,112px)!important;font-weight:600!important;line-height:.79!important;letter-spacing:.002em!important;text-transform:uppercase;color:#fff!important;text-wrap:balance}
.ama-hero-v2__title>span{display:block;color:#fff}
.ama-hero-v2__title .ama-hero-v2__accent{color:var(--ama2-red)!important}

.ama-hero-v2__description{width:min(560px,100%);margin:28px 0 0!important;padding:0!important;font-family:"Area51 Geoform",Arial,sans-serif!important;font-size:16px!important;font-weight:300!important;line-height:1.65!important;letter-spacing:.005em;color:rgba(247,247,245,.82)!important}

.ama-hero-v2__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:32px 0 0}

/* Area 51 CTA — clean original-style button */
.ama-hero-v2__cta{
  appearance:none!important;
  min-height:58px;
  margin:0!important;
  padding:0 27px!important;

  border:1px solid var(--ama2-red)!important;
  border-radius:0!important;

  background:var(--ama2-red)!important;
  color:#fff!important;

  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:23px;

  font-family:"Area51 Built Titling",Impact,sans-serif!important;
  font-size:19px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;

  cursor:pointer;

  box-shadow:none!important;

  transition:
    background .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.ama-hero-v2__call{
  text-decoration:none!important;
}

.ama-hero-v2__cta-arrow{
  position:relative;
  top:-1px;

  width:20px;
  height:20px;
  flex:0 0 20px;

  display:grid;
  place-items:center;

  color:currentColor;

  transition:transform .2s ease;
}

.ama-hero-v2__cta-arrow svg{
  width:20px;
  height:20px;
  display:block;
}

.ama-hero-v2__cta:hover,
.ama-hero-v2__cta:focus-visible{
  background:var(--ama2-red-dark)!important;
  border-color:var(--ama2-red-dark)!important;
  color:#fff!important;

  transform:translateY(-2px);

  outline:none!important;
}

.ama-hero-v2__cta:hover .ama-hero-v2__cta-arrow,
.ama-hero-v2__cta:focus-visible .ama-hero-v2__cta-arrow{
  transform:translateX(4px);
}

.ama-hero-v2__cta:focus-visible{
  outline:2px solid #fff!important;
  outline-offset:3px!important;
}


/* =========================================================
   HERO INTRO ANIMATION
   Subtle staged reveal — no glitch / no gimmicks.
========================================================= */

.ama-hero-v2__image{
  animation:
    a51HeroImageSettle
    1.45s
    cubic-bezier(.22,1,.36,1)
    both;
}

.ama-hero-v2__shade{
  animation:
    a51HeroShadeIn
    .8s
    ease-out
    both;
}

.ama-hero-v2__eyebrow{
  opacity:0;
  transform:translateY(9px);

  animation:
    a51HeroSoftIn
    .58s
    cubic-bezier(.22,1,.36,1)
    .12s
    forwards;
}

.ama-hero-v2__eyebrow-line{
  transform:scaleX(0);
  transform-origin:left center;

  animation:
    a51HeroLineIn
    .58s
    cubic-bezier(.22,1,.36,1)
    .20s
    forwards;
}

.ama-hero-v2__title > span{
  opacity:0;

  clip-path:inset(0 0 100% 0);

  transform:translateY(28px);

  will-change:
    transform,
    opacity,
    clip-path;

  animation:
    a51HeroTitleReveal
    .76s
    cubic-bezier(.16,1,.3,1)
    forwards;
}

.ama-hero-v2__title > span:nth-child(1){
  animation-delay:.24s;
}

.ama-hero-v2__title > span:nth-child(2){
  animation-delay:.36s;
}

.ama-hero-v2__title > span:nth-child(3){
  animation-delay:.48s;
}

.ama-hero-v2__description{
  opacity:0;
  transform:translateY(14px);

  animation:
    a51HeroSoftIn
    .68s
    cubic-bezier(.22,1,.36,1)
    .66s
    forwards;
}

.ama-hero-v2__actions{
  opacity:0;
  transform:translateY(14px);

  animation:
    a51HeroSoftIn
    .68s
    cubic-bezier(.22,1,.36,1)
    .78s
    forwards;
}


@keyframes a51HeroImageSettle{
  from{
    transform:scale(1.035);
  }

  to{
    transform:scale(1.005);
  }
}

@keyframes a51HeroShadeIn{
  from{
    opacity:.60;
  }

  to{
    opacity:1;
  }
}

@keyframes a51HeroLineIn{
  from{
    transform:scaleX(0);
  }

  to{
    transform:scaleX(1);
  }
}

@keyframes a51HeroTitleReveal{
  from{
    opacity:0;
    clip-path:inset(0 0 100% 0);
    transform:translateY(28px);
  }

  to{
    opacity:1;
    clip-path:inset(0 0 0 0);
    transform:translateY(0);
  }
}

@keyframes a51HeroSoftIn{
  from{
    opacity:0;
    transform:translateY(14px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }
}

@media(max-width:1024px){
  .ama-hero-v2__inner{width:calc(100% - 48px)}
  .ama-hero-v2__content{width:min(760px,82vw)}
  .ama-hero-v2__title{font-size:clamp(72px,8.8vw,100px)!important}
}

@media(max-width:767px){
  .ama-hero-v2{min-height:var(--ama2-mobile-h,650px);align-items:center}
  .ama-hero-v2__image{object-position:var(--ama2-mobile-pos,center center)}
  .ama-hero-v2__shade{background:linear-gradient(90deg,rgba(11,13,14,var(--ama2-mobile-overlay,.68)) 0%,rgba(11,13,14,calc(var(--ama2-mobile-overlay,.68) - .06)) 58%,rgba(11,13,14,calc(var(--ama2-mobile-overlay,.68) - .22)) 100%),linear-gradient(180deg,rgba(11,13,14,.04) 36%,rgba(11,13,14,.34) 100%)}
  .ama-hero-v2__inner,.ama-hero-v2--lower .ama-hero-v2__inner{width:calc(100% - 40px);padding:70px 0 58px;align-self:auto}
  .ama-hero-v2__content{width:100%}
  .ama-hero-v2__eyebrow{gap:10px;margin-bottom:16px;font-size:8px;letter-spacing:.20em;color:rgba(247,247,245,.74)}
  .ama-hero-v2__eyebrow-line{width:26px}
  .ama-hero-v2__title{font-size:clamp(68px,20vw,92px)!important;line-height:.80!important}
  .ama-hero-v2__description{width:min(500px,94%);margin-top:23px!important;font-size:14px!important;line-height:1.62!important}
  .ama-hero-v2__actions{margin-top:28px;gap:12px}
  .ama-hero-v2__cta{min-height:56px;margin-top:0!important;padding:0 24px!important;font-size:18px!important}
}

@media(max-width:420px){
  .ama-hero-v2__actions{display:grid;grid-template-columns:1fr}
  .ama-hero-v2__title{font-size:clamp(64px,19vw,82px)!important}
  .ama-hero-v2__cta{width:100%;justify-content:space-between!important}
}

@media(prefers-reduced-motion:reduce){
  .ama-hero-v2__image,
  .ama-hero-v2__shade,
  .ama-hero-v2__eyebrow,
  .ama-hero-v2__eyebrow-line,
  .ama-hero-v2__title > span,
  .ama-hero-v2__description,
  .ama-hero-v2__actions{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
    clip-path:none!important;
  }

  .ama-hero-v2__cta,
  .ama-hero-v2__cta-arrow{
    transition:none!important;
  }
}
