:root{--rv-charcoal:#07110E;--rv-emerald:#31E89B;--rv-highlight:#68FBC4;--rv-shadow:#0AA568;--rv-white:#F5F7F7;--home-max:1700px}
.homeBase{background:#020806;color:var(--rv-white)}
.homeBase .page{overflow:visible;background:#020806}
.homeShell{width:min(var(--home-max),calc(100% - 76px));margin-inline:auto}
.homeIntro{position:relative;background:#020806}
.homeOpening{background:#020806}
.homeHeader{height:60px;position:relative;top:auto;background:linear-gradient(180deg,rgba(2,11,9,.96),rgba(3,15,12,.91));border-bottom:1px solid rgba(104,251,196,.12);backdrop-filter:blur(10px)}
.homeHeader .nav{gap:28px}
.brandImage{display:flex;align-items:center;flex:0 0 auto;height:100%}
.brandImage img{display:block;width:206px;height:auto;max-height:42px}
.homeHeader .navlinks{gap:29px;font-size:12px;font-weight:750}
.homeHeader .navlinks a{opacity:.88;white-space:nowrap}
.homeHeader .navlinks a[aria-current="page"]{color:var(--rv-highlight)}
.homeHeader .navlinks a[aria-current="page"]:after{bottom:-18px;background:var(--rv-emerald)}
.homeHeader .navcta{min-height:40px;padding:0 20px;font-size:12px;border-radius:4px}
.homeHeader .mobileToggle{display:none}
.homeContent{position:relative;overflow:hidden;display:grid;grid-template-rows:auto auto auto;background:#020806}
.homeHero{position:relative;min-height:0;overflow:hidden;background:#03100d;isolation:isolate}

.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,12,10,.99) 0%,rgba(3,17,13,.98) 22%,rgba(3,16,13,.90) 31%,rgba(3,15,12,.52) 40%,rgba(2,11,9,.14) 55%,rgba(2,8,7,.03) 100%),linear-gradient(180deg,rgba(2,10,8,.15),transparent 70%,rgba(2,8,7,.38));z-index:2;pointer-events:none}
.heroLayout{min-height:clamp(510px,29vw,620px);position:relative;z-index:5;display:flex;align-items:center}
.heroCopyHome{width:min(34%,560px);padding:24px 0 18px;}
.eyebrowRow{display:flex;align-items:center;gap:12px;margin-bottom:18px;color:#f0f8f5;font-size:10px;font-weight:850;letter-spacing:.18em;text-transform:uppercase}
.eyebrowRow span{width:42px;height:2px;background:var(--rv-emerald);box-shadow:0 0 12px rgba(49,232,155,.28)}
.heroCopyHome h1{margin:0;font-size:clamp(47px,4.1vw,72px);line-height:.93;letter-spacing:-.035em;font-weight:900;max-width:550px;color:var(--rv-white)}
.heroCopyHome h1 em{font-style:normal;color:var(--rv-highlight)}
.heroCopyHome p{max-width:520px;margin:20px 0 0;color:#d5e2de;font-size:clamp(16px,1.08vw,18px);line-height:1.5}
.heroCopyHome .actions{margin-top:23px;gap:16px}
.heroCopyHome .btn{min-height:44px;padding:0 20px;font-size:12px;border-radius:4px}
.heroCopyHome .btn.primary,.homeHeader .btn.primary{background:linear-gradient(180deg,#109d63,#087c4d);border-color:#1fcb84;box-shadow:inset 0 0 17px rgba(104,251,196,.08),0 0 20px rgba(49,232,155,.06)}
.heroCopyHome .btn.secondary{background:rgba(3,13,12,.72);border-color:rgba(245,247,247,.24)}
.trustBand{position:relative;z-index:7;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-height:84px;border:1px solid rgba(104,251,196,.19);background:linear-gradient(180deg,rgba(4,20,16,.92),rgba(2,13,11,.96));border-radius:5px;overflow:hidden;}
.trustPanel{min-width:0;display:grid;grid-template-columns:48px 1fr;align-items:center;gap:12px;padding:0 20px;border-right:1px solid rgba(104,251,196,.14)}
.trustPanel:last-child{border-right:0}
.lineIcon{width:34px;height:34px;color:var(--rv-highlight);display:grid;place-items:center}
.lineIcon svg{width:31px;height:31px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.trustPanel strong{display:block;font-size:15px;line-height:1.2;color:#fff;margin-bottom:5px}
.trustPanel small{display:block;font-size:14px;line-height:1.35;color:#aabcb6;white-space:normal}
.serviceBand{position:relative;z-index:7;padding-bottom:24px;padding-top:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.homeService{position:relative;min-width:0;min-height:214px;border:1px solid rgba(49,232,155,.48);border-radius:7px;overflow:hidden;background:#06110f;display:block;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.18);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.homeService:focus-visible{outline:3px solid #fff;outline-offset:3px}
.cardImage{position:absolute;inset:0;background-image:var(--card-image);background-size:cover;background-position:center;filter:saturate(.7) brightness(.65) contrast(1.04);transform:scale(1.035);}
.cardFade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,9,8,.05) 15%,rgba(3,13,11,.42) 48%,rgba(2,8,7,.96) 100%),linear-gradient(90deg,rgba(3,12,10,.18),rgba(3,12,10,.06))}
.cardCopy{position:absolute;left:20px;right:55px;bottom:17px;z-index:2;color:#fff}
.cardCopy strong{display:block;font-size:16px;text-transform:uppercase;line-height:1.15}
.cardCopy i{display:block;width:36px;height:2px;background:var(--rv-emerald);margin:9px 0 9px;box-shadow:0 0 9px rgba(49,232,155,.32)}
.cardCopy small{display:block;color:#d3dfdb;font-size:14px;line-height:1.4}
.cardArrow{position:absolute;z-index:3;right:16px;bottom:16px;width:38px;height:38px;border-radius:50%;border:1px solid var(--rv-emerald);display:grid;place-items:center;color:var(--rv-highlight);font-size:19px;transition:background .2s ease,transform .2s ease}
@media(hover:hover) and (pointer:fine){
  .homeService:hover{transform:translateY(-2px);border-color:rgba(104,251,196,.78);box-shadow:0 16px 34px rgba(0,0,0,.24),0 0 0 1px rgba(49,232,155,.08)}
  
  .homeService:hover .cardArrow{background:rgba(49,232,155,.12);transform:translateX(2px)}
}
.homeService:active{transform:translateY(0)}
.homeBase .customerZero{position:relative;z-index:2}
.homeBase .more,.homeBase .finalCta,.homeBase .footer{position:relative;z-index:2}

@media(max-width:1280px){
  .homeShell{width:min(var(--home-max),calc(100% - 46px))}
  .homeHeader .navlinks{gap:18px;font-size:11px}.brandImage img{width:180px}.homeHeader .navcta{padding:0 15px}
  .heroCopyHome{width:36%}.heroCopyHome h1{font-size:clamp(44px,4.2vw,62px)}
  .trustPanel{padding:0 14px;grid-template-columns:42px 1fr}.trustPanel small{font-size:14px}.cardCopy strong{font-size:14px}
}
@media(max-width:1050px){
  .homeIntro{height:auto}.homeOpening{position:relative;height:auto;display:block}.homeHeader{position:sticky;top:0;z-index:50}
  .homeContent{display:block;overflow:visible}.homeHero{min-height:670px}.heroShade{background:linear-gradient(90deg,rgba(2,12,10,.99) 0%,rgba(3,16,13,.95) 40%,rgba(3,15,12,.52) 64%,rgba(2,8,7,.12) 100%),linear-gradient(180deg,rgba(2,10,8,.05),rgba(2,8,7,.48))}.heroCopyHome{width:min(52%,520px);padding-top:70px}
  .trustBand{height:auto;min-height:82px;margin-top:-1px}.serviceBand{height:auto;min-height:470px;grid-template-columns:1fr 1fr;padding-bottom:22px}.homeService{height:214px}
}
@media(max-width:1100px){
  .homeShell{width:calc(100% - 28px)}.homeHeader{height:68px}.homeHeader .nav{position:relative}.brandImage img{width:178px}.homeHeader .mobileToggle{display:block;margin-left:auto}.homeHeader .navcta{display:none}.homeHeader .navlinks{display:none}
  .homeHero{min-height:auto;padding-bottom:0}.heroLayout{min-height:670px;align-items:flex-start}.heroCopyHome{width:min(100%,620px);padding-top:64px}.heroCopyHome h1{font-size:clamp(48px,9vw,72px);max-width:580px}.heroCopyHome p{max-width:560px}.heroShade{background:linear-gradient(90deg,rgba(2,12,10,.99) 0%,rgba(3,16,13,.97) 45%,rgba(3,15,12,.78) 67%,rgba(2,8,7,.3) 100%),linear-gradient(180deg,rgba(2,10,8,.05),rgba(2,8,7,.52))}
  .trustBand{grid-template-columns:1fr 1fr}.trustPanel{min-height:84px;border-bottom:1px solid rgba(104,251,196,.14)}.serviceBand{grid-template-columns:1fr 1fr}.homeService{height:230px}
}
@media(max-width:620px){
  .brandImage img{width:154px}.heroLayout{min-height:610px}.heroCopyHome{padding-top:48px}.heroCopyHome h1{font-size:clamp(42px,13vw,64px)}.heroCopyHome p{font-size:16px;max-width:94%}.heroCopyHome .actions{display:grid;grid-template-columns:1fr;max-width:280px}.heroCopyHome .btn{width:100%}.heroShade{background:linear-gradient(90deg,rgba(2,12,10,1) 0%,rgba(3,16,13,.99) 58%,rgba(3,15,12,.78) 82%,rgba(2,8,7,.48) 100%)}
  .trustBand{grid-template-columns:1fr}.trustPanel{border-right:0;min-height:70px}.serviceBand{grid-template-columns:1fr;gap:12px}.homeService{height:240px}.cardCopy strong{font-size:16px}.cardCopy small{font-size:14px}.serviceBand{padding-bottom:28px}
}

.heroArtwork{position:absolute;inset:0;background:url('/assets/visual/home_cinematic_transform.webp') 67% 46%/cover no-repeat;filter:brightness(1.06) saturate(1.06) contrast(1.05);pointer-events:none}
.homeBase main{overflow:visible}
.homeHeader .navlinks a{min-height:44px;display:inline-flex;align-items:center}
.homeHeader .navlinks a[aria-current="page"]:after{bottom:-2px}
.homeHeader .navcta,.heroCopyHome .btn{min-height:44px}
.homeHeader .navlinks{font-size:14px;gap:20px}
.heroCopyHome .btn{font-size:14px}
.homeService{min-height:230px}
.cardCopy{right:58px}
.cardCopy i{box-shadow:none}
.homeBase .customerZero,.homeBase .more{padding:64px 0;border-top:1px solid var(--whiteLine)}
.homeBase .czGrid,.homeBase .moreGrid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.homeBase .czText h2,.homeBase .more h2,.homeBase .finalCta h2{font-size:clamp(30px,3vw,44px);line-height:1.1;letter-spacing:-.03em}
.homeBase .czText p,.homeBase .more p,.homeBase .more li,.homeBase .finalCta p{color:var(--muted);font-size:16px}
.homeBase .czLabel{color:var(--green2);font-size:12px;letter-spacing:.12em;font-weight:800}
.homeBase .czCompare{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative}
.homeBase .czShot{min-height:230px;border:1px solid var(--line);border-radius:6px;background-position:center;background-size:cover;position:relative}
.homeBase .czShot.before{background-image:url('/assets/visual/cz_before.webp')}
.homeBase .czShot.after{background-image:url('/assets/visual/cz_after.webp')}
.homeBase .shotTag{position:absolute;top:10px;left:10px;background:#07110e;padding:4px 8px;font-size:12px}
.homeBase .czArrow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#07110e;color:var(--green2);border-radius:50%;padding:4px 10px}
.homeBase .moreGrid{align-items:start}
.homeBase .moreCard{min-width:0}
.homeBase .learn{display:inline-flex;gap:12px;align-items:center;min-height:44px;color:var(--green2);font-weight:700}
.homeBase .controlPoint{display:flex;gap:12px;margin:16px 0}
.homeBase .controlPoint>span{color:var(--green2)}
.homeBase .controlPoint small{display:block;font-size:14px;color:var(--muted);margin-top:4px}
.homeBase .finalCta{padding:64px 0;text-align:center;border-top:1px solid var(--whiteLine)}
.homeBase .finalCta p{max-width:760px;margin:0 auto 24px}
@media(max-width:1100px){
 .homeHeader .navlinks{display:none}.homeHeader .mobileToggle{display:block}.homeHeader .navcta{display:none}
 .heroArtwork{background-position:72% center;opacity:.72;filter:brightness(.82) saturate(.98) contrast(1.05)}
 .homeContent{display:block}.homeHero{min-height:0}.heroLayout{min-height:600px}
 .heroCopyHome{width:min(100%,620px);padding:56px 0 36px}
 .trustBand{grid-template-columns:1fr 1fr;height:auto}
 .trustPanel{min-height:88px;padding:14px;border-bottom:1px solid var(--line)}
 .serviceBand{grid-template-columns:1fr 1fr;height:auto;min-height:0}
 .homeService{height:240px}
}
@media(max-width:620px){
 .heroArtwork{background-position:69% center;opacity:.48}
 .heroLayout{min-height:0}.heroCopyHome{padding:48px 0 40px}
 .heroCopyHome h1{font-size:clamp(40px,12vw,64px);line-height:1}
 .eyebrowRow{font-size:10px;letter-spacing:.12em}.eyebrowRow span{flex:0 0 24px}
 .trustBand,.serviceBand{grid-template-columns:1fr}.trustPanel{min-height:82px}
 .homeService{height:240px}.homeBase .czGrid,.homeBase .moreGrid{grid-template-columns:1fr}
 .homeBase .czShot{min-height:190px}
}
@media(prefers-reduced-motion:reduce){.homeService,.cardArrow,.btn{transition:none!important;transform:none!important}}


/* RVITYLIZE Base Website V1 — mobile service-card image polish */
@media(max-width:620px){
  .serviceBand{gap:10px;padding-top:14px;padding-bottom:22px}
  .homeService{height:210px;min-height:210px}
  .cardImage{background-position:center 34%;filter:saturate(.9) brightness(.88) contrast(1.06);transform:none}
  .cardFade{background:linear-gradient(180deg,rgba(2,9,8,.03) 0%,rgba(3,13,11,.18) 32%,rgba(2,8,7,.76) 62%,rgba(2,8,7,.98) 100%)}
  .cardCopy{left:16px;right:52px;bottom:14px}
  .cardCopy i{margin:7px 0}
  .cardArrow{right:14px;bottom:14px;width:36px;height:36px}
}

.textContact a{display:inline-flex;align-items:center;min-height:44px;color:var(--green2);text-decoration:underline;text-underline-offset:4px}.textContact a:focus-visible{outline:2px solid var(--green2);outline-offset:4px}
