/* Final review: shared, accessible interaction states and responsive layout. */
.btn.btn-outline:hover,.btn.btn-outline:focus-visible,.hr-need-body .hr-need-link:hover,.hr-need-body .hr-need-link:focus-visible{background:#a74727;color:#fff;border-color:#a74727;box-shadow:none;}
a:focus-visible,button:focus-visible{outline:2px solid #a74727;outline-offset:4px;}
.factory-marks .factory-marks-title{font-size:13px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;margin:0 0 24px;color:var(--ink-600);text-align:center;}
.home-review .hr-partner-top h2{font-size:clamp(40px,4.5vw,60px);}
.home-review .hr-partner-top em{font-size:1.16em;white-space:normal;text-wrap:balance;}
@media(min-width:981px){.contact-aside>.reveal:last-child{flex:1;display:flex;min-height:0;}.contact-aside .contact-photo--lg{flex:1;aspect-ratio:auto;min-height:420px;}.contact-aside .contact-photo img{position:absolute;inset:0;}}
@media(min-width:801px){.home-review .hr-partner-top{grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);}.home-review .hr-partner-top h2{max-width:none;}}
html[lang=de] .hr-entry-intro h2{max-width:15ch;}
html[lang=de] .hr-partner-top em{font-size:1.08em;}
@media(max-width:800px){
 body{zoom:1;} .container{width:100%;padding-inline:24px;}
 .home-review h2,.home-review .hr-partner-top h2{font-size:clamp(32px,5.5vw,44px);line-height:1.13;}
 .home-review .hr-partner-top em{white-space:normal;text-wrap:balance;}
 .home-review #starting-points{background:var(--bone-50);padding:52px 0;}
 .hr-entry-layout,.hr-partner-top,.hr-responsibilities{display:grid;grid-template-columns:1fr;gap:28px;}
 .hr-entry-intro h2{max-width:20ch;margin-bottom:0;}.hr-needs-list{min-height:0;}
 .hr-need>button{font-size:18px;gap:14px;padding:20px 0;min-height:56px;}
 .hr-need-body{padding-left:36px;}.hr-need-body .hr-need-link{min-height:44px;white-space:normal;text-align:center;}
 .hr-partner-photo{margin:0;}.hr-responsibilities{gap:16px;}.hr-responsibilities article{padding:24px;}
 .home-review .hr-work .hr-heading,.home-review .hr-heading{grid-template-columns:1fr;gap:20px;}
 .home-review .hr-base-examples{border:0;padding:0;margin:0;}.hr-base-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px;}
 .home-review .hr-base-grid img{height:auto;aspect-ratio:1;object-fit:contain;padding:12px;}
 .hr-process-photos{gap:20px;}.hr-steps{grid-template-columns:1fr 1fr;gap:24px;}
 .factory-marks-row{display:grid;grid-template-columns:1fr 1fr;gap:28px;justify-items:center;}.factory-marks-row img{width:100%;max-width:160px;height:90px;}
 .tm-editorial{height:auto!important;grid-template-columns:1fr!important;}.tm-editorial-copy{padding:32px 24px!important;align-items:center;text-align:center;min-height:320px;justify-content:center;}
 .tm-editorial-mark{position:static!important;height:36px;}.tm-editorial-quote{margin:16px 0 0!important;font-size:22px!important;max-width:32ch;}.tm-editorial-meta{margin:20px 0 0!important;justify-content:center;}.tm-editorial-controls{margin:28px 0 0!important;justify-content:center;}.tm-editorial-photo{height:260px;min-height:0;}
 .home-review .faq-preview-layout{grid-template-columns:1fr;gap:24px;}.home-review .faq-preview-copy{position:static;min-height:0;text-align:center;align-items:center;}.home-review #faq .btn{display:flex;width:fit-content;margin-inline:auto;}
 .final-cta-inner{grid-template-columns:1fr!important;gap:28px!important;}.final-cta-actions{justify-content:flex-start;}.home-review .final-cta-inner h2{margin-bottom:0;}
 .contact-form{padding:24px;}.contact-grid{gap:28px;}.contact-photo--lg{aspect-ratio:4/3;}.contact-email{overflow-wrap:anywhere;}
 .field input,.field select,.field textarea{min-width:0;font-size:16px;}.field-row,.field{min-width:0;}
 .lr-filterbar{flex-wrap:wrap;overflow:visible!important;gap:8px;}.lr-filter-label{width:100%;}.lr-filter{min-height:44px;white-space:normal;text-align:left;}.lr-result-count{margin-left:0;}
 .lr-card h3{font-size:20px;}.lr-card-top{flex-wrap:wrap;gap:8px;}
}
@media(max-width:520px){
 .container{padding-inline:20px;}.home-review h2,.home-review .hr-partner-top h2{font-size:34px;}

 .hr-steps{grid-template-columns:1fr;}.hr-steps article{padding-top:20px;}.hr-steps p{max-width:none;}
 .home-review section.hr-work,.home-review section.hr-support,.home-review section.hr-process{padding:52px 0;}
 .home-review .hr-need-body p{font-size:16px;}.hr-need-body{padding-left:0;}
 .contact-form{padding:20px;}.field-row{grid-template-columns:1fr;}
 .lr-filter{font-size:14px;padding:9px 12px;}.lr-hero h1{font-size:clamp(40px,10vw,56px);}
 .lr-drawer-panel{width:100%;max-width:100%;}.btn{min-height:44px;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important;}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}}
@media(max-width:800px){.home-video-hero{min-height:100svh;}.home-video-hero__inner{padding-top:100px;padding-bottom:40px;}}
.home-video-hero__play{width:44px;height:44px;font-size:18px;right:18px;bottom:16px;padding:0;}
@media(max-width:800px){.home-video-hero__inner{padding-bottom:76px;}}
.factory-video-play{left:auto;top:auto;right:18px;bottom:16px;transform:none;width:44px;height:44px;font-size:18px;padding:0;}
/* German compound words must fit small screens without shrinking type. */
html[lang=de] h1,html[lang=de] h2,html[lang=de] h3{hyphens:auto;overflow-wrap:break-word;}
@media(max-width:800px){.nav-mobile{max-height:calc(100svh - 70px);overflow-y:auto;}}
/* September 13: entry heading uses the same section-title scale. */
.home-review .hr-entry-intro h2{font-size:clamp(40px,4.5vw,60px);line-height:1.12;}
@media(max-width:800px){.home-review .hr-entry-intro h2{font-size:clamp(32px,5.5vw,44px);line-height:1.13;}}
@media(max-width:520px){.home-review .hr-entry-intro h2{font-size:34px;}}
