/* Original letter shapes, never a typeset approximation of the NRG mark. */
.hero-brand .hero-lockup{display:inline-flex;align-items:center;gap:13px}
.hero-lockup img{width:57px;height:auto}
.hero-lockup b{font-size:11px;letter-spacing:.16em}
.group-portal h2{display:flex;align-items:center;gap:.28em}
.group-portal h2 .portal-wordmark{display:block;width:2.63em;height:auto;flex:0 0 auto}
.group-portal h2 strong{font-size:1em}

/* The cooperation strip is part of the first screen, below the two doors. */
/* Clip the oversized video without creating an inner scroll container for #bereiche. */
.cinema-hero.group-hero{min-height:calc(100svh - 89px);height:auto;justify-content:flex-start;overflow:clip}
.group-content{padding-top:clamp(26px,3.8svh,42px);padding-bottom:24px;flex:1;display:flex;flex-direction:column;justify-content:center}
.group-hero h1{font-size:clamp(60px,7vw,104px);line-height:1.08;margin-bottom:22px;max-width:1320px;text-wrap:initial;hyphens:none}
.group-hero h1 span{display:inline-block;max-width:100%;background:linear-gradient(90deg,#6cb043 0%,#6cb043 1.5635%,#69ae43 4.6904%,#62a941 7.8174%,#5ba542 10.9443%,#54a03e 14.0713%,#4d9c40 17.1982%,#47973e 20.3252%,#40923e 23.4522%,#3a8f3e 26.5791%,#328a3c 29.7061%,#2b853b 32.833%,#26813c 35.96%,#1e7d3b 39.0869%,#187839 42.2139%,#10733a 45.3408%,#0b6f39 48.4678%,#076d3d 51.5947%,#076c44 54.7217%,#076b49 57.8487%,#086a51 60.9756%,#09695b 64.1026%,#096860 67.2295%,#096766 70.3565%,#0a676c 73.4834%,#0a6675 76.6104%,#0b667b 79.7373%,#0b6482 82.8643%,#0c648a 85.9912%,#0b6490 89.1182%,#0b6297 92.2452%,#0c629f 95.3721%,#0c61a2 98.4991%,#0c61a2 100%);background-clip:text;-webkit-background-clip:text;filter:brightness(1.4);color:transparent;-webkit-text-fill-color:transparent}
.group-intro-row{display:flex;align-items:center;justify-content:space-between;gap:40px}
.group-hero .group-lead{font-size:14px;line-height:1.7;max-width:890px}
.competence-partner{flex:0 0 185px;width:185px;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.competence-partner img{display:block;width:100%;height:auto;filter:brightness(0) invert(1);opacity:.95}
.group-choice-intro{margin:21px 0 12px}
.group-portal{padding:20px 25px 18px}
.group-portal h2{font-size:clamp(32px,3vw,44px);margin:17px 0 10px}
.group-portal p{font-size:13px;line-height:1.6;margin-bottom:14px;max-width:470px}
.group-portal .portal-arrow{width:32px;height:32px}
.group-portal .portal-bottom{font-size:11px}
.group-trust.trust-ribbon{flex:0 0 auto;width:100%;padding:12px 0 19px;border:0;background:#fff;color:var(--ink);margin-top:auto}
.group-trust-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:13px}
.group-trust-heading>span{font-size:9px;font-weight:750;letter-spacing:.15em;color:#4c6455}
.group-motion-controls{display:flex;align-items:center;gap:12px}
.group-motion-controls .film-toggle,.group-motion-controls .ticker-toggle{position:static;min-height:0;line-height:1.3;font-size:8px;color:#526459;background:transparent;border:0;padding:2px 0;box-shadow:none}
.group-motion-controls .film-toggle{display:flex;gap:6px}
.group-motion-controls .ticker-toggle{min-width:50px;border-left:1px solid #d6dfd8;padding-left:12px;border-radius:0}
.group-trust .trust-track{animation-duration:50s}
.group-trust .trust-group{gap:52px;padding-right:52px}
.group-trust-logo{display:flex;align-items:center;justify-content:center;width:145px;flex:0 0 145px;height:38px}
.group-trust-logo img{display:block;width:145px;height:38px;object-fit:contain}
.group-trust .trust-marquee{mask-image:linear-gradient(90deg,transparent,#000 4% 96%,transparent)}
.group-hero .cinema-edge{position:absolute;bottom:0;height:4px}

/* The invoice's continuous frame and energy illustration become the footer. */
.site-footer.document-footer{padding:9px;background:linear-gradient(100deg,#6cb043 0%,#076d3d 50%,#0c61a2 100%);color:var(--ink)}
.footer-sheet{background:#fff;border-radius:27px;padding:58px 0 24px;overflow:hidden}
.footer-statement{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;border-bottom:1px solid #d6e3da;padding-bottom:0;margin-bottom:43px}
.footer-statement>p{font-size:clamp(31px,3.5vw,53px);line-height:1.07;letter-spacing:-.055em;font-weight:780;flex:0 0 auto;color:#162b23;margin:0 0 30px}
.footer-statement>p span{color:#5b8068}
.footer-statement>img{display:block;width:54%;max-width:735px;height:auto;margin-bottom:-1px}
.document-footer .footer-top{display:grid;grid-template-columns:1.25fr 1fr 1fr 1.25fr;gap:30px}
.document-footer .footer-brand img{width:134px;height:auto}
.document-footer .footer-area{font-size:9px;letter-spacing:.23em;margin-top:12px;color:#37583f}
.document-footer .footer-brand p{font-size:14px;line-height:1.65;max-width:260px;margin-top:17px;color:#56685d}
.document-footer .footer-group{border-left:1px solid #d1dfd5;padding-left:25px;display:block;grid-column:auto}
.document-footer .footer-group h3{font-size:10px;letter-spacing:.08em;color:#326c42;margin-bottom:20px}
.document-footer .footer-group a,.document-footer .footer-group p{font-size:12px;line-height:1.75;color:#47584d}
.document-footer .footer-group p{margin-bottom:13px}
.document-footer .footer-group a{margin-bottom:10px}
.document-footer .footer-group a:hover{color:#086b48}
.document-footer .footer-bottom{margin-top:40px;padding-top:22px;border-top:1px solid #d6e3da;color:#63746a;font-size:10px}
.document-footer .footer-bottom a{color:#4d6356}

@media(min-width:1051px) and (max-height:800px){
  .group-content{padding-top:24px;padding-bottom:20px}
  .group-hero h1{font-size:clamp(60px,6.5vw,92px);margin-bottom:18px}
  .group-choice-intro{margin-top:16px}
  .competence-partner{flex-basis:165px;width:165px;padding:0}
  .group-hero .group-lead{font-size:13px;max-width:850px}
  .group-portal{padding:17px 25px 15px}
  .group-portal h2{font-size:38px;margin:15px 0 9px}
  .group-portal p{font-size:12px;line-height:1.6;margin-bottom:12px}
  .group-trust.trust-ribbon{padding:9px 0 14px}.group-trust-heading{margin-bottom:10px}
}
@media(max-width:1050px){
  .group-intro-row{gap:24px}.competence-partner{width:160px;flex-basis:160px}
  .group-hero h1{font-size:clamp(54px,7.8vw,82px)}
  .group-portal{padding:22px}.group-portal h2{font-size:32px}
  .document-footer .footer-top{grid-template-columns:1fr 1fr;gap:35px}
  .document-footer .footer-brand{grid-column:auto}.document-footer .footer-group:nth-child(3){border:0;padding:0}
  .footer-statement{gap:25px}.footer-statement>p{font-size:38px}
}
@media(max-width:800px){
  .cinema-hero.group-hero{min-height:calc(100svh - 79px)}
  .group-content{padding-top:28px;padding-bottom:23px}
  .hero-lockup img{width:50px}.hero-lockup b{font-size:10px}
  .group-hero h1{font-size:clamp(44px,8.4vw,67px);line-height:1.08}
  .group-hero .group-lead{font-size:12px;line-height:1.65}
  .competence-partner{width:145px;flex-basis:145px;padding:0}
    .group-choice-intro{flex-direction:row;align-items:center;gap:15px;margin:22px 0 12px}
  .group-choice-intro>span:last-child{font-size:10px}
  .group-trust.trust-ribbon{padding:10px 0 15px}
  .group-trust-heading{margin-bottom:12px;gap:10px}
  .group-trust-heading>span{font-size:8px;letter-spacing:.1em}
  .group-trust .trust-group{gap:33px;padding-right:33px}
  .group-trust-logo{width:120px;flex-basis:120px;height:30px}
  .group-trust-logo img{width:120px;height:30px}
  .group-trust .trust-track{animation-duration:42s}
  .footer-sheet{padding-top:38px;padding-bottom:85px;border-radius:20px}
  .footer-statement{align-items:start;flex-direction:column;gap:28px;margin-bottom:35px}
  .footer-statement>p{font-size:39px;margin:0}
  .footer-statement>img{width:100%;max-width:600px;align-self:flex-end}
}
@media(max-width:560px){
  .group-content{padding-top:22px;padding-bottom:18px}
  .group-hero h1{font-size:clamp(28px,9.6vw,54px);line-height:1.08;letter-spacing:-.055em;margin-bottom:18px}
  .group-intro-row{gap:15px;align-items:center}
  .group-hero .group-lead{font-size:12px;line-height:1.55;flex:1;min-width:0}
  .competence-partner{width:117px;flex-basis:117px;padding:0}
    .group-choice-intro{margin-top:18px;margin-bottom:10px}
  .group-choice-intro>span:first-child{font-size:8px}.group-choice-intro>span:last-child{display:none}
  .group-portals{gap:11px}
  .group-portal{padding:15px 18px;border-radius:19px}
  .group-portal .portal-label{font-size:7px;letter-spacing:.09em;gap:8px}
  .group-portal h2{font-size:29px;margin:12px 0 7px;gap:.28em}
  .group-portal p{font-size:12px;line-height:1.5;max-width:calc(100% - 18px);margin:0}
  .group-portal .portal-bottom{position:absolute;right:14px;bottom:15px}
  .group-portal .portal-bottom>span:first-child{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
  .group-portal .portal-arrow{width:25px;height:25px}.group-portal .portal-arrow svg{width:14px;height:14px}
  .group-trust-heading>span{font-size:7px;letter-spacing:.06em}
  .group-motion-controls{gap:9px}.group-motion-controls .film-toggle,.group-motion-controls .ticker-toggle{font-size:7px}
  .group-motion-controls .ticker-toggle{padding-left:9px;min-width:42px}
  .site-footer.document-footer{padding:6px}
  .footer-sheet{border-radius:17px}
  .document-footer .footer-top{gap:30px 20px}
  .document-footer .footer-brand{grid-column:1/-1}
  .document-footer .footer-brand img{width:126px}
  .document-footer .footer-brand p{max-width:320px}
  .document-footer .footer-group{padding-left:0;border:0}
  .document-footer .footer-group:last-child{grid-column:1/-1;padding-top:25px;border-top:1px solid #d1dfd5}
  .document-footer .footer-group h3{font-size:9px}
  .document-footer .footer-group a,.document-footer .footer-group p{font-size:11px}
  .footer-statement>p{font-size:37px}
}
@media(prefers-reduced-motion:reduce){.group-trust .trust-track{animation:none}.group-trust .trust-marquee{mask-image:none;overflow-x:auto}}
@media print{.group-trust{break-inside:avoid}.document-footer .footer-sheet{padding-bottom:20px}.group-motion-controls{display:none}.portal-wordmark,.hero-lockup img{filter:invert(1)}}

@media print{.group-hero h1 span{background:none;color:#076d3d;-webkit-text-fill-color:#076d3d}}

/* Leave ink space around gradient glyphs, including overhang from tight tracking. */
.group-hero h1{line-height:1.08}
.group-hero h1 span{padding:.06em .06em .18em;margin:-.06em -.06em -.18em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
