html,body,main,.topbar,.hero,.section,.about,.contact,.contactCard,.lowerArea,footer,.legalWrap{background:#474c48}
body{overflow-x:hidden}.lowerArea{color:#fff}.lowerArea .about,.lowerArea .contact,.lowerArea footer{color:#fff}.lowerArea .about p,.lowerArea .contactInfo>p:not(.eyebrow),.lowerArea .contact address,.lowerArea footer{color:#f1f3f1}

/* Mehr Tiefe und Bewegung, Hintergrundfarbe bleibt unverändert */
.topbar{position:sticky;top:0;z-index:50;backdrop-filter:blur(16px);background:rgba(71,76,72,.88)!important;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.topbar nav a{position:relative}.topbar nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:#2f5d8a;transition:right .25s ease}.topbar nav a:hover::after{right:0}
.phone{border-radius:999px;transition:transform .2s ease,background .2s ease}.phone:hover{transform:translateY(-2px);background:#2f5d8a}

.hero{position:relative;min-height:650px;isolation:isolate}.hero::before{content:"ATEMA";position:absolute;right:-2vw;top:10px;z-index:-1;font-size:clamp(120px,21vw,330px);line-height:.8;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.026);pointer-events:none}.hero::after{content:"";position:absolute;width:420px;height:420px;right:4%;top:10%;z-index:-1;border:1px solid rgba(47,93,138,.5);border-radius:50%;box-shadow:0 0 0 34px rgba(47,93,138,.05),0 0 0 68px rgba(47,93,138,.025);animation:floatRing 7s ease-in-out infinite}
.heroCopy{position:relative;z-index:2}.hero h1 span{position:relative;color:#8fc9f2}.hero h1 span::after{content:"";position:absolute;left:0;bottom:-9px;width:62%;height:5px;border-radius:5px;background:#2f5d8a;transform:skewX(-25deg)}
.heroBrand{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.22)!important;border-radius:28px!important;background:#ffffff!important;box-shadow:0 32px 72px rgba(0,0,0,.24);transform:none !important}
.heroBrand::before{content:"";position:absolute;inset:18px;border:1px solid rgba(47,93,138,.32);border-radius:20px;pointer-events:none}.heroBrand::after{content:"HEIDENROD";position:absolute;right:-26px;bottom:58px;transform:rotate(-90deg);font-weight:900;font-size:13px;letter-spacing:.35em;color:rgba(16,24,32,.28)}
.heroBrand img{width:min(62%,340px)!important;filter:drop-shadow(0 18px 20px rgba(0,0,0,.14));transition:transform .45s ease}.heroBrand:hover img{transform:scale(1.04)}
.heroBrand strong{position:relative;margin-top:34px!important}.heroBrand strong::after{content:"";display:block;width:94px;height:4px;margin:18px auto 0;background:#2f5d8a;border-radius:99px}
.actions .button{border-radius:999px;box-shadow:0 14px 28px rgba(20,121,201,.24);transition:transform .2s ease,box-shadow .2s ease}.actions .button:hover{transform:translateY(-3px);box-shadow:0 20px 34px rgba(20,121,201,.31)}

.trust{position:relative;z-index:4;margin-top:-34px!important;border-radius:22px;overflow:hidden;box-shadow:0 26px 55px rgba(0,0,0,.22);background:#edf1ef!important}.trust div{transition:transform .2s ease,background .2s ease}.trust div:hover{transform:translateY(-4px);background:#fff}.trust strong{font-size:28px!important}

.section{position:relative}.section::before{content:"LEISTUNGEN";position:absolute;left:0;top:25px;font-size:clamp(70px,13vw,170px);font-weight:900;letter-spacing:-.05em;color:rgba(255,255,255,.02);pointer-events:none}.sectionHead{position:relative;z-index:2}.sectionHead h2{max-width:850px}.sectionHead>p:last-child{font-size:18px;color:#d8dfda!important}

/* Aufklappbare Leistungskarten */
.serviceAccordion{align-items:start;gap:30px}.serviceCard{position:relative;overflow:hidden;background:#242d2a;border:1px solid rgba(255,255,255,.18);border-radius:26px;box-shadow:0 22px 55px rgba(0,0,0,.28);transition:transform .32s cubic-bezier(.2,.7,.2,1),border-color .25s ease,box-shadow .25s ease}.serviceCard:nth-child(odd){transform:translateY(14px)}.serviceCard:hover{transform:translateY(-7px) rotate(-.35deg);border-color:#4d7ca4;box-shadow:0 30px 70px rgba(0,0,0,.38)}.serviceCard:nth-child(even):hover{transform:translateY(-7px) rotate(.35deg)}
.serviceCard summary{position:relative;display:block;height:330px;cursor:pointer;list-style:none;overflow:hidden}.serviceCard summary::-webkit-details-marker{display:none}.serviceCard summary::marker{display:none}.serviceCard summary:focus-visible{outline:3px solid #7dc4f6;outline-offset:-3px}.serviceCard summary img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .45s ease}.serviceCard:hover summary img,.serviceCard[open] summary img{transform:scale(1.075);filter:brightness(.78) saturate(.88)}
.cardShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 14%,rgba(0,0,0,.22) 52%,rgba(0,0,0,.93) 100%)}.cardShade::before{content:"";position:absolute;left:0;bottom:0;width:7px;height:48%;background:#2f5d8a}
.cardText{position:absolute;left:30px;right:28px;bottom:27px;display:grid;grid-template-columns:auto 1fr auto;gap:12px 16px;align-items:end;color:#fff}.cardText small{grid-column:1/-1;color:#8ec9f2;font-weight:900;letter-spacing:.18em;font-style:normal}.cardText strong{font-size:34px;line-height:1.05;letter-spacing:-.02em}.cardText em{font-size:13px;font-style:normal;font-weight:900;color:#dce9f2;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em}.cardText em::after{content:'  +';color:#7dc4f6;font-size:21px}.serviceCard[open] .cardText em::after{content:'  –'}
.serviceBody{padding:28px 30px 32px;border-top:1px solid rgba(255,255,255,.13);background:linear-gradient(180deg,#202925,#1d2421);animation:openCard .24s ease}.serviceBody p{margin:0;color:#eef3f0;font-size:18px}.serviceCardWide{grid-column:1/-1;width:58%;justify-self:center;margin-top:10px}.serviceCardWide summary{height:320px}

.about{position:relative;overflow:hidden!important;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);background:#474c48!important}.about::after{content:"ÜBER UNS";position:absolute;right:-35px;bottom:-20px;font-size:110px;font-weight:900;line-height:1;color:rgba(255,255,255,.025);pointer-events:none}.about>div{position:relative;z-index:1}.about>div:first-child{border-left:5px solid #2f5d8a;padding-left:28px}.about p{color:#eef1ef!important}

.contact{position:relative}.contact::before{content:"";position:absolute;left:50%;top:60px;bottom:60px;width:1px;background:linear-gradient(transparent,rgba(255,255,255,.28),transparent)}.contactCard{margin:0;padding:38px;border:1px solid rgba(143,201,242,.45);border-radius:28px;font-style:normal;box-shadow:0 28px 60px rgba(0,0,0,.24);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018))!important;transform:rotate(-.5deg);transition:transform .3s ease}.contactCard:hover{transform:rotate(0) translateY(-4px)}.contactCard p{margin:0;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.15)}.contactCard p:first-child{padding-top:0}.contactCard p:last-child{padding-bottom:0;border-bottom:0}.contactCard span{display:block;margin-bottom:5px;color:#b7c4cf;font-size:13px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.contactCard a{color:#8dcbf5;font-size:22px;font-weight:900}

footer{margin-top:20px!important;border-top:1px solid rgba(255,255,255,.15)!important}

/* Rechtliches ganz am Seitenende */
.legalWrap{max-width:1240px;margin:0 auto;padding:0 32px 34px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#474c48!important}.legalPanel{border:1px solid rgba(255,255,255,.15);border-radius:14px;background:#3e4440;overflow:hidden}.legalPanel summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 18px;font-weight:900;font-size:16px;color:#fff;background:#414844;transition:background .2s ease}.legalPanel summary:hover{background:#454d48}.legalPanel summary::-webkit-details-marker{display:none}.legalPanel summary::marker{display:none}.legalPanel summary small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#9fceef;font-weight:800}.legalPanel summary small::after{content:'  +';font-size:17px}.legalPanel[open] summary small::after{content:'  –'}.legalContent{padding:24px 24px 28px;border-top:1px solid rgba(255,255,255,.13);background:#353b37;color:#eef3f0;font-size:15px;line-height:1.72}.legalContent h2{font-size:29px;margin:0 0 22px;color:#fff}.legalContent h3{font-size:18px;margin:26px 0 8px;color:#fff}.legalContent p{margin:0 0 14px}.legalContent a{color:#8dcbf5;text-decoration:underline;text-underline-offset:3px}

@keyframes floatRing{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(18px) scale(1.035)}}@keyframes openCard{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

@media(max-width:800px){
  .hero{min-height:auto}.hero::before{font-size:105px;top:10px}.hero::after{width:220px;height:220px;right:-65px;top:12%}.heroBrand{transform:none;border-radius:22px!important}.trust{margin-top:0!important}.serviceAccordion{gap:22px}.serviceCard,.serviceCard:nth-child(odd){transform:none}.serviceCardWide{grid-column:auto;width:100%;margin-top:0}.serviceCard summary,.serviceCardWide summary{height:255px}.cardText{left:22px;right:20px;bottom:21px}.cardText strong{font-size:29px}.cardText em{font-size:12px}.about::after{font-size:70px}.contact::before{display:none}.contactCard{transform:none}.legalWrap{grid-template-columns:1fr;padding:0 20px 28px}.legalPanel summary{padding:15px 17px}.legalContent{padding:22px 20px 26px}
}
@media(max-width:460px){.cardText{grid-template-columns:1fr}.cardText small{grid-column:auto}.cardText em{margin-top:-4px}.hero::before{font-size:78px}}
@media(prefers-reduced-motion:reduce){.hero::after{animation:none}.serviceBody{animation:none}.serviceCard,.serviceCard summary img,.heroBrand img{transition:none}}


/* user adjustments: white metrics strip */
.trust{background:#ffffff !important;border-radius:32px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.12)}
.trust div{background:#ffffff !important}


/* --- Final user corrections --- */
.hero::before{left:50% !important; right:auto !important; transform:translateX(-50%) !important; top:18px !important; font-size:clamp(110px,18vw,260px) !important; color:rgba(255,255,255,.04) !important;}
.section::before{left:50% !important; right:auto !important; transform:translateX(-50%) !important; top:6px !important; font-size:clamp(68px,11vw,145px) !important; color:rgba(255,255,255,.04) !important;}
.about::after{left:50% !important; right:auto !important; bottom:-8px !important; transform:translateX(-50%) !important; font-size:clamp(72px,11vw,145px) !important; color:rgba(255,255,255,.04) !important;}
.heroBrand{transform:none !important; background:#fff !important; box-shadow:0 26px 58px rgba(0,0,0,.22) !important;}
.heroBrand::before,.heroBrand::after{display:none !important; content:none !important;}
.heroBrand img{width:min(72%,390px) !important; filter:none !important; transform:none !important; margin:0 auto !important;}
.heroBrand:hover img{transform:none !important;}
.heroBrand strong{margin-top:26px !important;}
.trust{background:#fff !important; border-radius:30px !important; box-shadow:0 18px 40px rgba(0,0,0,.12) !important;}
.trust div{background:#fff !important;}
.contactCard{transform:none !important;}
.contactCard:hover{transform:translateY(-4px) !important;}
@media(max-width:800px){
  .hero::before,.section::before,.about::after{left:50% !important; transform:translateX(-50%) !important;}
  .heroBrand img{width:min(76%,260px) !important;}
}


/* --- Final refinement: centered logo card + clearer grey background words --- */
.heroBrand{display:grid !important;grid-template-rows:auto auto auto !important;place-items:center !important;align-content:center !important;gap:22px !important;padding:44px 34px !important;transform:none !important;background:#fff !important;border:1px solid rgba(255,255,255,.22)!important;}
.heroBrand img{width:min(74%,400px) !important;max-width:400px !important;height:auto !important;object-fit:contain !important;filter:none !important;margin:0 auto !important;}
.heroBrand strong{margin:0 !important;line-height:1 !important;text-align:center !important;}
.heroBrand:hover,.heroBrand:hover img{transform:none !important;}
.heroBrand::before,.heroBrand::after{display:none !important;}

/* Let the grey-on-grey background words breathe more */
.section{padding-top:118px !important;}
.section::before{top:12px !important;font-size:clamp(82px,12vw,160px) !important;color:rgba(255,255,255,.055) !important;}
.sectionHead{max-width:700px !important;margin:58px 0 50px !important;position:relative;z-index:2;}
.sectionHead p:last-child{max-width:560px !important;}

.about{padding-top:132px !important;align-items:start !important;}
.about::after{top:22px !important;bottom:auto !important;font-size:clamp(88px,12vw,165px) !important;color:rgba(255,255,255,.055) !important;}
.about > div:first-child{margin-top:42px !important;}
.about > div:last-child{margin-top:58px !important;}

@media(max-width:800px){
  .section{padding-top:84px !important;}
  .section::before{top:10px !important;font-size:clamp(62px,14vw,110px) !important;}
  .sectionHead{margin:40px 0 38px !important;}
  .about{padding-top:94px !important;}
  .about::after{top:18px !important;font-size:clamp(62px,14vw,110px) !important;}
  .about > div:first-child,.about > div:last-child{margin-top:24px !important;}
}


/* --- Greg final corrections --- */
.heroBrand{border:none !important; box-shadow:0 20px 50px rgba(0,0,0,.18) !important; padding:40px 28px 42px !important; display:flex !important; flex-direction:column !important; justify-content:center !important; align-items:center !important; gap:24px !important;}
.heroBrand img{display:block !important; width:min(68%,350px) !important; max-width:350px !important; margin:0 auto !important; object-fit:contain !important;}
.heroBrand strong{display:block !important; width:100% !important; text-align:center !important; margin:0 !important;}
.heroBrand strong::after{margin:18px auto 0 !important;}

/* grey-on-grey words sit above the section content instead of behind it */
.section{padding-top:150px !important;}
.section::before{top:22px !important; left:50% !important; transform:translateX(-50%) !important; font-size:clamp(90px,12vw,165px) !important; color:rgba(255,255,255,.06) !important; z-index:0 !important; width:100%; text-align:center;}
.sectionHead{margin-top:30px !important; position:relative; z-index:2 !important;}
.serviceAccordion,.serviceGrid{position:relative; z-index:2 !important;}

.about{padding-top:154px !important; position:relative !important;}
.about::after{top:24px !important; bottom:auto !important; left:50% !important; transform:translateX(-50%) !important; font-size:clamp(92px,12vw,170px) !important; color:rgba(255,255,255,.06) !important; z-index:0 !important; width:100%; text-align:center;}
.about > div{position:relative; z-index:2 !important;}
.about > div:first-child{margin-top:34px !important;}
.about > div:last-child{margin-top:54px !important;}

@media(max-width:800px){
  .heroBrand{padding:30px 20px 34px !important;}
  .heroBrand img{width:min(74%,250px) !important; max-width:250px !important;}
  .section{padding-top:105px !important;}
  .section::before{top:18px !important; font-size:clamp(58px,14vw,104px) !important;}
  .about{padding-top:110px !important;}
  .about::after{top:16px !important; font-size:clamp(60px,14vw,106px) !important;}
  .about > div:first-child,.about > div:last-child{margin-top:18px !important;}
}


/* --- Final requested layout cleanup: no hero logo card, headings below background words --- */
.hero{grid-template-columns:1fr !important;gap:0 !important;min-height:540px !important;padding-top:170px !important;padding-bottom:76px !important;}
.hero::before{top:20px !important;left:50% !important;transform:translateX(-50%) !important;font-size:clamp(120px,17vw,250px) !important;color:rgba(255,255,255,.055) !important;width:100%;text-align:center;}
.heroCopy{max-width:1080px !important;width:100% !important;margin:0 auto !important;position:relative;z-index:2 !important;}
.heroCopy .eyebrow{margin-bottom:18px !important;}
.heroCopy h1{max-width:920px !important;margin-top:0 !important;}
.heroCopy .lead{max-width:760px !important;}

/* remove any remaining hero brand box if cache still contains it */
.heroBrand{display:none !important;}

/* position grey section words above the actual content so they are not covered */
.section{padding-top:180px !important;padding-bottom:100px !important;}
.section::before{top:16px !important;left:50% !important;transform:translateX(-50%) !important;width:100%;text-align:center;font-size:clamp(92px,12vw,170px) !important;color:rgba(255,255,255,.06) !important;z-index:0 !important;}
.sectionHead{max-width:860px !important;margin:78px 0 50px !important;position:relative;z-index:2 !important;}
.sectionHead .eyebrow,.sectionHead h2,.sectionHead > p:last-child{position:relative;z-index:2 !important;}

.about{padding-top:182px !important;align-items:start !important;}
.about::after{top:18px !important;bottom:auto !important;left:50% !important;transform:translateX(-50%) !important;width:100%;text-align:center;font-size:clamp(94px,12vw,172px) !important;color:rgba(255,255,255,.06) !important;z-index:0 !important;}
.about > div{position:relative;z-index:2 !important;}
.about > div:first-child{margin-top:78px !important;}
.about > div:last-child{margin-top:78px !important;}

@media(max-width:800px){
  .hero{padding-top:110px !important;padding-bottom:52px !important;min-height:auto !important;}
  .hero::before{top:14px !important;font-size:clamp(74px,14vw,118px) !important;}
  .heroCopy h1{max-width:100% !important;}
  .section{padding-top:112px !important;}
  .section::before{top:14px !important;font-size:clamp(60px,14vw,110px) !important;}
  .sectionHead{margin:52px 0 36px !important;}
  .about{padding-top:118px !important;}
  .about::after{top:14px !important;font-size:clamp(62px,14vw,112px) !important;}
  .about > div:first-child,.about > div:last-child{margin-top:42px !important;}
}


/* --- Position fix for location line + ATEMA background word higher --- */
.hero::before{top:2px !important;}
.heroLocation{margin:18px 0 0 !important;color:#8fc9f2 !important;text-transform:uppercase !important;letter-spacing:.14em !important;font-size:15px !important;font-weight:800 !important;}
.heroCopy .actions{margin-top:26px !important;}
@media(max-width:800px){
  .hero::before{top:0 !important;}
  .heroLocation{margin-top:16px !important;font-size:13px !important;line-height:1.45 !important;}
}


/* --- Final hero/logo/background-word corrections --- */
.hero{grid-template-columns:1fr !important;min-height:640px !important;padding-top:235px !important;padding-bottom:72px !important;}
.hero::before{top:8px !important;left:50% !important;transform:translateX(-50%) !important;width:100% !important;text-align:center !important;font-size:clamp(126px,17vw,255px) !important;line-height:.84 !important;color:rgba(255,255,255,.058) !important;}
.hero::after{content:"" !important;position:absolute !important;right:4% !important;top:142px !important;width:360px !important;height:315px !important;background:url('assets/hero-logo-grey.png') center/contain no-repeat !important;border:none !important;border-radius:0 !important;box-shadow:none !important;opacity:.32 !important;animation:none !important;z-index:0 !important;}
.heroCopy{max-width:980px !important;position:relative !important;z-index:2 !important;}
.heroCopy h1,.heroCopy .lead,.heroLocation,.heroCopy .actions{position:relative !important;z-index:2 !important;}
.heroCopy h1{max-width:900px !important;margin-top:0 !important;margin-bottom:18px !important;}
.heroCopy .lead{max-width:760px !important;}
.heroLocation{margin-top:20px !important;}

/* put section headings below the big gray background words */
.section{padding-top:190px !important;padding-bottom:100px !important;}
.section::before{top:18px !important;left:50% !important;transform:translateX(-50%) !important;width:100% !important;text-align:center !important;font-size:clamp(98px,12vw,175px) !important;line-height:.9 !important;color:rgba(255,255,255,.058) !important;z-index:0 !important;}
.sectionHead{max-width:850px !important;margin:106px 0 52px !important;position:relative !important;z-index:2 !important;}
.sectionHead p:last-child{max-width:600px !important;}

.about{padding-top:196px !important;}
.about::after{top:18px !important;left:50% !important;transform:translateX(-50%) !important;width:100% !important;text-align:center !important;font-size:clamp(98px,12vw,176px) !important;line-height:.9 !important;color:rgba(255,255,255,.058) !important;z-index:0 !important;}
.about > div:first-child{margin-top:102px !important;}
.about > div:last-child{margin-top:108px !important;}

@media(max-width:800px){
  .hero{min-height:auto !important;padding-top:128px !important;padding-bottom:50px !important;}
  .hero::before{top:6px !important;font-size:clamp(76px,14vw,118px) !important;}
  .hero::after{right:-12px !important;top:98px !important;width:190px !important;height:170px !important;opacity:.24 !important;}
  .section{padding-top:118px !important;padding-bottom:74px !important;}
  .section::before{top:14px !important;font-size:clamp(60px,14vw,108px) !important;}
  .sectionHead{margin:58px 0 36px !important;}
  .about{padding-top:122px !important;}
  .about::after{top:12px !important;font-size:clamp(62px,14vw,110px) !important;}
  .about > div:first-child{margin-top:52px !important;}
  .about > div:last-child{margin-top:58px !important;}
}


/* final logo placement cleanup */
.hero::after{right:6% !important; top:118px !important; width:330px !important; height:290px !important; opacity:.24 !important;}
.heroCopy .lead{max-width:640px !important;}
@media(max-width:800px){.hero::after{right:-6px !important; top:108px !important; width:170px !important; height:148px !important; opacity:.20 !important;}.heroCopy .lead{max-width:100% !important;}}


/* final requested logo move: lower and clearly to the right of the main text */
.hero::after{right:4% !important; top:250px !important; width:280px !important; height:250px !important; opacity:.24 !important;}
.heroCopy{max-width:720px !important;}
.heroCopy h1{max-width:720px !important;}
.heroCopy .lead{max-width:600px !important;}
@media(max-width:800px){.hero::after{right:-4px !important; top:185px !important; width:150px !important; height:135px !important; opacity:.18 !important;}}


/* --- Final header/logo/mobile refinement --- */
.brand{display:flex !important;flex-direction:row !important;align-items:center !important;gap:12px !important;line-height:1 !important;}
.brandLogo{width:52px !important;height:52px !important;object-fit:contain !important;flex:0 0 52px !important;}
.brandText{display:flex !important;flex-direction:column !important;align-items:flex-start !important;}
.brandText strong{font-size:29px !important;letter-spacing:.12em !important;}
.brandText span{font-size:14px !important;letter-spacing:.30em !important;color:#77bdf2 !important;margin-top:8px !important;}
footer .brand{justify-self:start !important;}
footer .brandLogo{width:44px !important;height:44px !important;flex-basis:44px !important;}

/* hero background word + logo more visible */
.hero::before{color:rgba(255,255,255,.085) !important;top:2px !important;}
.hero::after{opacity:.30 !important;right:5% !important;top:232px !important;width:300px !important;height:270px !important;}
.section::before,.about::after{color:rgba(255,255,255,.082) !important;}

@media(max-width:800px){
  .topbar{height:auto !important;min-height:88px !important;padding:12px 16px !important;gap:10px !important;}
  .brand{gap:10px !important;min-width:0 !important;max-width:calc(100% - 110px) !important;}
  .brandLogo{width:42px !important;height:42px !important;flex-basis:42px !important;}
  .brandText strong{font-size:21px !important;letter-spacing:.10em !important;}
  .brandText span{font-size:10px !important;letter-spacing:.22em !important;margin-top:5px !important;}
  .phone{white-space:nowrap !important;margin-left:auto !important;}
  .hero::before{color:rgba(255,255,255,.09) !important;top:0 !important;}
  .hero::after{opacity:.28 !important;right:2% !important;top:210px !important;width:170px !important;height:150px !important;}
  .section::before,.about::after{color:rgba(255,255,255,.088) !important;}
  footer .brand{justify-self:center !important;}
}


/* hero logo centered between ATEMA background word and main headline */
.hero{padding-top:250px !important;}
.heroCopy{display:flex !important;flex-direction:column !important;align-items:flex-start !important;}
.heroCenterLogo{display:block !important;width:160px !important;height:auto !important;object-fit:contain !important;align-self:center !important;margin:0 0 26px !important;filter:drop-shadow(0 10px 22px rgba(0,0,0,.12));position:relative;z-index:2;}
.heroCopy h1{width:100% !important;}
.hero::after{opacity:.20 !important;right:5% !important;top:250px !important;width:270px !important;height:240px !important;}
@media(max-width:800px){
  .hero{padding-top:138px !important;}
  .heroCenterLogo{width:108px !important;margin:0 0 18px !important;}
  .hero::after{opacity:.14 !important;right:2% !important;top:220px !important;width:135px !important;height:120px !important;}
}


/* final correction: use only grey logo centered above headline */
.hero{padding-top:250px !important;min-height:640px !important;}
.heroCopy{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:flex-start !important;max-width:860px !important;margin:0 auto !important;text-align:center !important;}
.heroCopy h1,.heroCopy .lead,.heroLocation,.heroCopy .actions{width:100% !important;text-align:center !important;}
.heroCopy h1{max-width:860px !important;margin:0 auto 18px !important;}
.heroCopy .lead{max-width:720px !important;margin-left:auto !important;margin-right:auto !important;}
.heroLocation{margin-top:20px !important;}
.heroCenterLogo{display:none !important;}
.hero::after{content:"" !important;position:absolute !important;left:50% !important;right:auto !important;transform:translateX(-50%) !important;top:118px !important;width:310px !important;height:275px !important;background:url('assets/hero-logo-grey.png') center/contain no-repeat !important;opacity:.26 !important;z-index:0 !important;box-shadow:none !important;border:none !important;}
@media(max-width:800px){
  .hero{padding-top:138px !important;min-height:auto !important;}
  .heroCopy{max-width:100% !important;}
  .heroCopy .lead{max-width:100% !important;}
  .hero::after{left:50% !important;right:auto !important;transform:translateX(-50%) !important;top:70px !important;width:190px !important;height:168px !important;opacity:.22 !important;}
}


/* --- Strict no-overlap hero spacing --- */
.hero{position:relative !important; padding-top:360px !important; padding-bottom:78px !important; min-height:760px !important;}
.hero::before{top:10px !important; left:50% !important; transform:translateX(-50%) !important; width:100% !important; text-align:center !important; font-size:clamp(126px,17vw,255px) !important; line-height:.82 !important; z-index:0 !important;}
.hero::after{content:"" !important; position:absolute !important; left:50% !important; right:auto !important; transform:translateX(-50%) !important; top:145px !important; width:285px !important; height:245px !important; background:url('assets/hero-logo-grey.png') center/contain no-repeat !important; opacity:.28 !important; z-index:0 !important; border:none !important; box-shadow:none !important; animation:none !important;}
.heroCopy{position:relative !important; z-index:2 !important; max-width:900px !important; margin:0 auto !important; text-align:center !important; align-items:center !important;}
.heroCopy h1{margin:0 auto 20px !important; max-width:900px !important; text-align:center !important;}
.heroCopy .lead{margin-left:auto !important; margin-right:auto !important; max-width:720px !important; text-align:center !important;}
.heroLocation{margin:20px auto 0 !important; text-align:center !important;}
.heroCopy .actions{justify-content:center !important; width:100% !important;}

@media(max-width:800px){
  .hero{padding-top:235px !important; padding-bottom:54px !important; min-height:auto !important;}
  .hero::before{top:4px !important; font-size:clamp(76px,16vw,118px) !important;}
  .hero::after{top:92px !important; width:175px !important; height:150px !important; opacity:.24 !important;}
  .heroCopy h1{max-width:100% !important; text-align:center !important;}
  .heroCopy .lead,.heroLocation{text-align:center !important; max-width:100% !important;}
  .heroCopy .actions{align-items:center !important; justify-content:center !important;}
}


/* final spacing fix: grey logo fully freestanding */
.hero{padding-top:392px !important; min-height:790px !important;}
.hero::before{top:-2px !important;}
.hero::after{top:178px !important; width:270px !important; height:232px !important; opacity:.27 !important;}
@media(max-width:800px){.hero{padding-top:250px !important; min-height:auto !important;} .hero::before{top:0 !important;} .hero::after{top:100px !important; width:160px !important; height:138px !important; opacity:.23 !important;}}


/* extra spacing + more prominent grey logo */
.hero{padding-top:448px !important; padding-bottom:82px !important; min-height:860px !important;}
.hero::after{top:192px !important; width:312px !important; height:268px !important; opacity:.38 !important;}
.heroCopy h1{margin-bottom:22px !important;}
.heroCopy .lead{margin-top:2px !important;}
@media(max-width:800px){.hero{padding-top:292px !important; padding-bottom:58px !important;} .hero::after{top:116px !important; width:182px !important; height:156px !important; opacity:.33 !important;}}

/* logo color matched closer to grey ATEMA lettering */
.hero::after{opacity:.46 !important;}

/* final logo refinement: lighter grey and equal bar bottoms */
.hero::after{opacity:.50 !important;}
