/* Nordraum Sanierung · dark redesign. Original hero styling and JS are preserved. */
:root{
  --rd-bg:#131615;--rd-surface:#1c201e;--rd-raised:#242925;--rd-text:#f0efe8;
  --rd-body:#c7cbc4;--rd-muted:#a8aea5;--rd-accent:#cfad79;--rd-hover:#e4c796;
  --rd-line:#414940;--rd-error:#ffb6ab;--rd-success:#b9d3ad;
}
body.redesign{background:var(--rd-bg);color:var(--rd-body)}
/* Main text / background: 15.8:1; body: 11.0:1; muted: 8.0:1; accent: 8.5:1. */
@media(scripting:none){
 .redesign .nav-toggle,.redesign #contactForm{display:none}
 .redesign .site-header{position:relative}
 .redesign .site-header .shell{flex-wrap:wrap}
 .redesign .site-header .nav{display:flex;position:static;flex-wrap:wrap;order:3;width:100%;padding-block:16px}
}
/* Keep original inherited hero variables, metrics and button styles intact. */
.redesign .site-header{background:var(--rd-bg);border-color:var(--rd-line)}
.redesign .site-header .nav a{color:var(--rd-body)}
.redesign .site-header .nav a:hover{color:var(--rd-accent)}
.redesign .site-header .header-cta .btn{background:var(--rd-accent);color:var(--rd-bg);border-radius:2px}
.redesign .site-header .header-cta .btn:hover{background:var(--rd-hover)}
.redesign .site-header .brand img{width:100%;object-fit:contain}
.redesign .site-footer{background:var(--rd-bg);border-top:1px solid var(--rd-line)}
.redesign :is(.site-footer,.site-header,.rd-container,.rd-feature,.rd-about,#stimmen,#faq,#kontakt) :focus-visible{outline:3px solid var(--rd-accent);outline-offset:4px}
.rd-container{width:min(1440px,100%);padding-inline:clamp(22px,5.4vw,76px);margin-inline:auto}
.rd-container h2,.rd-feature h2,.rd-about h2{
  color:var(--rd-text);font-family:'Newsreader',Georgia,serif;font-weight:400;
  font-size:clamp(38px,4.6vw,68px);line-height:1.06;letter-spacing:-.035em;text-wrap:balance
}
.rd-container h2 em,.rd-feature h2 em,.rd-about h2 em{font-weight:400;font-style:normal;color:var(--rd-accent)}
.rd-link{display:inline-flex;gap:30px;align-items:center;color:var(--rd-text);font-size:17px;font-weight:600;min-height:44px;border-bottom:1px solid var(--rd-line);padding-block:12px}
.rd-link span{color:var(--rd-accent);transition:transform .25s}
.rd-link:hover span{transform:translate(3px,-3px)}
.rd-link:hover{border-color:var(--rd-accent)}
.rd-button{display:inline-flex;gap:40px;align-items:center;justify-content:space-between;min-height:52px;padding:15px 25px;border:1px solid var(--rd-accent);border-radius:2px;background:var(--rd-accent);color:var(--rd-bg);font-weight:600;font-size:16px;transition:background .2s}
.rd-button:hover{background:var(--rd-hover)}
.rd-button:active{transform:translateY(1px)}
.rd-button--outline{color:var(--rd-text);background:var(--rd-bg);border-color:var(--rd-muted)}
.rd-button--outline:hover{background:var(--rd-surface);border-color:var(--rd-accent)}
/* Three actual proof points anchor the transition out of the original hero. */
.rd-trust{border-top:1px solid var(--rd-line);border-bottom:1px solid var(--rd-line);background:var(--rd-surface)}
.rd-trust__grid{display:grid;grid-template-columns:1fr 1fr 1fr;padding-block:33px}
.rd-trust__grid>div{display:flex;align-items:center;gap:23px;padding:4px 30px;border-right:1px solid var(--rd-line)}
.rd-trust__grid>div:first-child{padding-left:0}.rd-trust__grid>div:last-child{border:0;padding-right:0}
.rd-trust strong{font-family:'Newsreader',Georgia,serif;font-size:43px;line-height:1.1;white-space:nowrap;color:var(--rd-text);font-weight:400}
.rd-trust strong span{color:var(--rd-accent);font-size:25px}.rd-trust__grid>div:last-child strong{font-size:30px;white-space:normal;max-width:110px}
.rd-trust p{font-size:14px;line-height:1.5;color:var(--rd-muted)}.rd-trust a{color:var(--rd-body);text-decoration:underline;text-underline-offset:3px}
.rd-intro{padding-block:120px 108px}
.rd-intro__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:90px;align-items:center}
.rd-intro h2{font-size:clamp(42px,5.2vw,76px)}.rd-intro__grid>div{max-width:470px}
.rd-intro__grid p{font-size:19px;line-height:1.75}.rd-intro__grid p+p{margin-top:17px}.rd-intro .rd-link{margin-top:24px}
.rd-services{display:grid;grid-template-columns:5fr 6fr;gap:clamp(40px,7vw,100px);padding-bottom:124px;align-items:start}
.rd-services__visual{position:relative;margin-top:8px;overflow:hidden;border-radius:3px}
.rd-services__visual>img{height:750px;width:100%;object-fit:cover}
.image-note{position:absolute;bottom:0;left:0;right:0;padding:100px 30px 30px;background:linear-gradient(transparent,rgba(8,12,10,.95));color:var(--rd-text)}
.image-note span{font-size:13px;letter-spacing:.08em}.image-note p{font-family:'Newsreader',Georgia,serif;font-size:31px;line-height:1.15;margin-top:8px}
.section-lead{font-size:19px;line-height:1.65;max-width:53ch;margin-top:25px}
.service-list{margin-top:33px;border-bottom:1px solid var(--rd-line)}
.service-item{border-top:1px solid var(--rd-line);padding:0}
.service-item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:75px;padding-block:17px;font-size:25px;font-weight:500;color:var(--rd-text);cursor:pointer;line-height:1.3}
.service-item summary::-webkit-details-marker{display:none}
.service-item summary span{color:var(--rd-accent);font-size:25px;transition:transform .25s}
.service-item[open] summary span{transform:rotate(45deg)}
.service-item p{max-width:49ch;line-height:1.7;margin-bottom:12px}
.service-item>a{display:inline-block;color:var(--rd-accent);padding-block:6px 24px;font-size:16px}
.service-item summary:hover{color:var(--rd-accent)}.scope-note{font-size:14px;line-height:1.65;color:var(--rd-muted);margin-top:22px}
.service-item .faq-liste{margin:14px 0}
.service-item .faq-liste li{color:var(--rd-body)}
.service-item .faq-liste li::before{background:var(--rd-accent)}
.service-item strong{color:var(--rd-text)}
.rd-portfolio{padding-block:112px 124px;border-top:1px solid var(--rd-line)}
.rd-section-head{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:55px}
.rd-section-head>p{font-size:18px;color:var(--rd-muted);max-width:350px;line-height:1.7;padding-bottom:5px}
.work-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:40px;row-gap:72px}
.work{grid-column:span 4;min-width:0}
.work--1{grid-column:span 7}.work--2{grid-column:9/span 4;margin-top:100px}
.work--6{grid-column:1/-1;display:grid;grid-template-columns:7fr 5fr;gap:45px;align-items:center}
.work__image{display:block;overflow:hidden;position:relative;border-radius:3px;background:var(--rd-surface)}
.work__image img{width:100%;height:340px;object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.work--1 .work__image img{height:480px}.work--2 .work__image img{height:470px}
.work--6 .work__image img{height:360px}.work--6 .work__caption{padding-inline:25px}
.work__image:hover img{transform:scale(1.035)}
.work__caption{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:23px}
.work__place{font-size:13px;color:var(--rd-accent);margin-bottom:6px}
.work h3{font-family:'Newsreader',Georgia,serif;color:var(--rd-text);font-size:30px;font-weight:400;line-height:1.2}
.work__caption h3+p{font-size:14px;color:var(--rd-muted);margin-top:9px}
.round-link{flex-shrink:0;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--rd-line);border-radius:50%;color:var(--rd-accent);font-size:23px}
.round-link:hover{background:var(--rd-accent);color:var(--rd-bg)}
.rd-feature{position:relative;min-height:640px;display:flex;align-items:end;isolation:isolate}
.rd-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.rd-feature:after{position:absolute;content:'';inset:0;background:linear-gradient(90deg,rgba(8,12,10,.92),rgba(8,12,10,.68) 53%,rgba(8,12,10,.18));z-index:-1}
.rd-feature__body{padding-block:90px}
.rd-feature h2{max-width:770px}.rd-feature p{max-width:450px;margin-top:28px;font-size:20px;color:var(--rd-text)}
.rd-feature .rd-button{margin-top:34px}
.rd-transform{padding-block:125px}
.transform-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}
.transform-pair img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:3px}
.transform-pair figcaption{display:flex;align-items:center;gap:20px;justify-content:space-between;padding-top:18px;color:var(--rd-text);font-weight:600}
.transform-pair figcaption span{color:var(--rd-muted);font-size:14px;font-weight:400}
.rd-about{background:var(--rd-surface);padding-block:110px}
.rd-about__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}
.rd-about__grid>div>p{max-width:51ch;line-height:1.75}.rd-about__grid .section-lead{margin-bottom:22px}
.rd-about .rd-link{margin-top:20px}
.rd-about__image img{width:100%;height:610px;object-fit:cover;border-radius:3px}.rd-about__image figcaption{font-size:14px;color:var(--rd-muted);padding-top:15px}
.rd-signoff{border-top:1px solid var(--rd-line);padding-top:25px;margin-top:35px;display:grid;gap:3px}
.rd-signoff strong{font-size:23px;color:var(--rd-text);font-weight:500}.rd-signoff span{font-size:14px;color:var(--rd-muted)}
.rd-process{padding-block:120px}
.rd-steps{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:28px;padding:0;margin:0}
.rd-steps li{border-top:1px solid var(--rd-line);padding-top:22px}
.rd-steps li>span{font-family:'Newsreader',Georgia,serif;font-size:40px;color:var(--rd-accent);font-weight:400}
.rd-steps h3{font-size:23px;color:var(--rd-text);font-weight:500;margin-block:20px 10px}.rd-steps p{font-size:16px;line-height:1.65}
.redesign #stimmen{background:var(--rd-surface);padding-block:100px}
.redesign #stimmen .shell{max-width:1440px;padding-inline:clamp(22px,5.4vw,76px)}
.redesign #stimmen .d-2{font-size:clamp(38px,4.6vw,64px);font-weight:400;color:var(--rd-text)}
.redesign #stimmen .rev-summary{border-color:var(--rd-line)}.redesign #stimmen .rev-score{color:var(--rd-accent)}
.redesign #stimmen .quotes{grid-template-columns:repeat(2,1fr);gap:25px}
.redesign #stimmen .quote{background:transparent;border:1px solid var(--rd-line);border-radius:3px;padding:32px}
.redesign #stimmen .quote p{color:var(--rd-body)}
.redesign #stimmen .quote .quote__stars,.redesign #stimmen .rev-stars{color:var(--rd-accent)}
.redesign #stimmen .quote .quote__src,.redesign #stimmen .quote .quote__rating{color:var(--rd-muted)}
.rd-region{padding-block:110px}
.rd-region>div{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:center}
.rd-region h2{font-size:clamp(36px,4vw,56px)}.rd-region>div>p{max-width:48ch;font-size:18px;line-height:1.75}
.redesign #faq{background:var(--rd-bg);padding-block:0 100px}
.redesign #faq .shell{display:grid;grid-template-columns:4fr 6fr;column-gap:80px;max-width:1440px;padding-inline:clamp(22px,5.4vw,76px)}
.redesign #faq .faq-kurz__kopf{grid-row:span 2}
.redesign #faq .d-2{font-weight:400;font-size:clamp(36px,4vw,56px);color:var(--rd-text)}
.redesign #faq .lead{font-size:18px;margin-top:25px;color:var(--rd-muted)}
.redesign #faq :is(summary,.faq-item__frage){color:var(--rd-text)}
.redesign #faq .faq-item{border-color:var(--rd-line)}
.redesign #faq .faq-item__antwort p,.redesign #faq .faq-item__antwort li{color:var(--rd-body)}
.redesign #faq :is(.faq-item__zeichen,.tlink){color:var(--rd-accent)}
.redesign #kontakt{background:var(--rd-surface)}
.redesign #kontakt .shell{max-width:1440px;padding-inline:clamp(22px,5.4vw,76px)}
.redesign #kontakt .display{color:var(--rd-text);font-weight:400}
.redesign #kontakt :is(.contact__claim,.contact__area,.contact-info a,.contact-info span){color:var(--rd-body)}
.redesign #kontakt .contact-info b{color:var(--rd-muted)}
.redesign #kontakt .form{background:var(--rd-bg);border:1px solid var(--rd-line);border-radius:3px}
.redesign #kontakt :is(.form h3,.field label,.consent label){color:var(--rd-text)}
.redesign #kontakt :is(.field input,.field textarea,.field select){background:var(--rd-raised);border:1px solid var(--rd-line);color:var(--rd-text);border-radius:2px}
.redesign #kontakt input::placeholder,.redesign #kontakt textarea::placeholder{color:var(--rd-muted)}
.redesign #kontakt .btn--primary{background:var(--rd-accent);color:var(--rd-bg);border-radius:2px}
.redesign #kontakt :is(.form__hint,.form-status){color:var(--rd-muted)}
.redesign #kontakt :is(.consent a,.form__hint a){color:var(--rd-accent)}
.redesign #kontakt .form-status.is-error,.redesign #kontakt .consent.invalid label{color:var(--rd-error)}
.redesign #kontakt .field.invalid :is(input,select,textarea){border-color:var(--rd-error)}
.redesign #kontakt .form-status.is-ok{color:var(--rd-success)}
.redesign #kontakt .form-done p{color:var(--rd-body)}
.redesign #kontakt .form-done a{color:var(--rd-accent)}
/* Related pages share the dark palette; hero remains isolated on the homepage. */
body.redesign-sub{
 --paper:var(--rd-bg);--paper-shade:var(--rd-surface);--paper-card:var(--rd-raised);
 --paper-line:var(--rd-line);--ink:var(--rd-text);--ink-body:var(--rd-body);--ink-quiet:var(--rd-muted);
 --coal:var(--rd-bg);--coal-deep:var(--rd-bg);--coal-raised:var(--rd-surface);
 --copper:var(--rd-accent);--copper-warm:var(--rd-accent);
 --error:var(--rd-error);--ok:var(--rd-success)
}
.redesign-sub .display{font-weight:400}.redesign-sub .pf{background:transparent;border-color:var(--rd-line)}
.redesign-sub .pf__body{padding-inline:0}.redesign-sub .proj-hero{padding-block:70px 90px}
.redesign-sub .proj-hero__grid{gap:70px}
.redesign-sub .content a{color:var(--rd-accent)}
.redesign-sub .btn--primary{background:var(--rd-accent);color:var(--rd-bg);border-radius:2px}
.redesign-sub .faq-hinweis{background:var(--rd-surface);color:var(--rd-body);border-color:var(--rd-line)}
.redesign-sub .faq-frage-stellen{background:var(--rd-surface)}
@media(min-width:861px) and (max-width:1100px){
.rd-trust__grid>div{gap:15px;padding-inline:20px}.rd-trust strong{font-size:34px}
.rd-intro__grid,.rd-about__grid{gap:50px}.rd-services{gap:45px}.work-grid{column-gap:25px}
.rd-steps{gap:17px}.rd-steps h3{font-size:20px}
}
@media(max-width:860px){
 .redesign .site-header .nav{background:var(--rd-bg);border-color:var(--rd-line)}
 .redesign .nav-toggle{color:var(--rd-text)}
 .rd-trust__grid{grid-template-columns:1fr;gap:0;padding-block:12px}
 .rd-trust__grid>div,.rd-trust__grid>div:first-child,.rd-trust__grid>div:last-child{padding:21px 0;border-right:0;border-bottom:1px solid var(--rd-line);display:grid;grid-template-columns:1fr 1.1fr}
 .rd-trust__grid>div:last-child{border-bottom:0}.rd-trust__grid>div:last-child strong{max-width:none;font-size:32px}
 .rd-trust strong{font-size:38px}
 .rd-intro{padding-block:80px}.rd-intro__grid{grid-template-columns:1fr;gap:28px}.rd-intro__grid>div{max-width:600px}
 .rd-services{grid-template-columns:1fr;padding-bottom:70px;gap:45px}
 .rd-services__visual{order:2}.rd-services__visual>img{height:480px;object-position:center 60%}
 .rd-services__body{order:1}.section-lead{font-size:18px}
 .rd-portfolio{padding-block:75px}.rd-section-head{display:block;margin-bottom:35px}.rd-section-head>p{margin-top:25px}
 .work-grid{gap:45px 24px}.work{grid-column:span 6}.work--1{grid-column:span 6}.work--2{grid-column:span 6;margin-top:65px}
 .work--6{display:block;grid-column:span 6}.work--6 .work__caption{padding-inline:0}
 .work__image img,.work--1 .work__image img,.work--2 .work__image img,.work--6 .work__image img{height:330px}
 .work h3{font-size:27px}.round-link{width:44px;height:44px}
 .rd-feature{min-height:550px}.rd-feature__body{padding-block:60px}
 .rd-transform{padding-block:75px}.transform-pair figcaption{align-items:start;flex-direction:column;gap:4px}
 .rd-about{padding-block:75px}.rd-about__grid{grid-template-columns:1fr;gap:40px}.rd-about__image{order:-1}
 .rd-about__image img{height:550px}.rd-process{padding-block:75px}.rd-steps{grid-template-columns:1fr;gap:0}
 .rd-steps li{display:grid;grid-template-columns:44px 1fr;gap:8px 20px;padding-block:22px}.rd-steps h3{margin:6px 0}.rd-steps li>span{grid-row:span 2}
 .rd-steps li p{grid-column:2}
 .redesign #stimmen{padding-block:70px}.redesign #stimmen .quotes{grid-template-columns:1fr}
 .rd-region{padding-block:75px}.rd-region>div{grid-template-columns:1fr;gap:25px}
 .redesign #faq{padding-bottom:75px}.redesign #faq .shell{display:block}.redesign #faq .faq-kurz__kopf{max-width:100%}
 .redesign-sub .proj-hero__grid{gap:35px}
}
@media(max-width:620px){
 .work-grid{display:block}.work{margin:0 0 42px}.work__image img,.work--1 .work__image img,.work--2 .work__image img,.work--6 .work__image img{height:350px}
 .work--1 .work__image img{height:300px}
 .work__caption{padding-top:18px}.work__caption h3+p{font-size:13px}
 .rd-services__visual>img{height:450px}.service-item summary{font-size:22px}
 .rd-feature{min-height:540px}.rd-feature:after{background:rgba(8,12,10,.78)}
 .rd-feature p{font-size:18px}
 .transform-pair{grid-template-columns:1fr;gap:30px}
 .rd-about__image img{height:460px}
 .redesign #stimmen .quote{padding:25px}
 .redesign #kontakt .form{padding:25px 20px}
}
.redesign #faq .btn--ghost{color:var(--rd-text);border-color:var(--rd-line)}
.redesign #faq .btn--ghost:hover{color:var(--rd-bg);background:var(--rd-accent)}
.redesign #kontakt .form__hint a{text-decoration:underline;text-underline-offset:3px}
@media(prefers-reduced-motion:reduce){
 .rd-link span,.work__image img,.service-item summary span{transition:none}
 .work__image:hover img{transform:none}
}
