/* Approved MZ service-page rhythm, adapted to each existing page type. */
.ruhe-page main h2{font-weight:500;font-size:clamp(30px,3.4vw,44px);line-height:1.24;letter-spacing:-.025em}
.ruhe-page main h3{font-weight:500;line-height:1.4}
.ruhe-page .section-heading{max-width:none;text-align:left;margin-bottom:40px}
.ruhe-page .section-heading:after{display:none}
.ruhe-page .section-heading p{margin-left:0;margin-right:0;max-width:55ch;font-size:16px;line-height:1.85}
.ruhe-page .content-section,.ruhe-page .material-section,.ruhe-page .projects-section,.ruhe-page .team-section,.ruhe-page .services-section,.ruhe-page .portfolio-section,.ruhe-page .trust-section,.ruhe-page .faq-section,.ruhe-page .testimonial-section{padding-block:96px;min-height:0}
.ruhe-page .quality-eyebrow{font-size:11px!important;letter-spacing:.13em}
.ruhe-page .split{gap:10%;align-items:center}
.ruhe-page .split p{font-size:16px;line-height:1.85}
.ruhe-page .split .media-slot{border-radius:0;height:540px}
.ruhe-page .quality-editorial-hero{padding-block:80px}
.ruhe-page .quality-editorial-hero h1{font-weight:500}
.ruhe-page .quality-editorial-figure>img,.ruhe-page .quality-service-image,.ruhe-page .portfolio-tile{border-radius:0}
.ruhe-page .quality-service-copy{padding-top:27px}
.ruhe-page .quality-service-card h3{font-size:28px;font-weight:500}
.ruhe-page .quality-service-image img{height:430px}
.ruhe-page .quality-detail-grid .portfolio-tile,.ruhe-page .quality-detail-grid .quality-detail:last-child .portfolio-tile{height:400px}
.ruhe-page .quality-detail h3{font-size:19px;font-weight:500}
.ruhe-page .trust-card h3,.ruhe-page .pillar h3{font-size:21px;font-weight:500}
.ruhe-page .trust-card p,.ruhe-page .pillar p{font-size:15px;line-height:1.8}
.ruhe-page .trust-card .line-icon,.ruhe-page .pillar .line-icon{width:38px;height:38px;stroke-width:1.4}
.ruhe-page .trust-grid,.ruhe-page .pillars{gap:50px}
.ruhe-page .faq-section>.wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:start}
.ruhe-page .faq-section .section-heading{margin:0}
.ruhe-page .faq-list{margin:0;max-width:none}
.ruhe-page .faq-list summary{background:transparent;padding:18px 0;font-weight:400;font-size:15px;line-height:1.7;min-height:70px}
.ruhe-page .faq-list details{border:0;border-bottom:1px solid #d7d0c8;border-radius:0;background:transparent}
.ruhe-page .faq-list details p{padding:4px 0 25px;font-size:15px;line-height:1.85}
.ruhe-page .faq-list .plus{height:28px;width:28px;background:transparent;color:#981b1f}
.ruhe-page .testimonial-section blockquote{padding:0;border:0;background:transparent;border-radius:0;max-width:820px;min-height:0;margin:auto}
.ruhe-page .cta-section{padding-block:96px;border:0}
.ruhe-page .cta-inner{display:flex;flex-direction:column;align-items:center;gap:30px;text-align:center;max-width:800px}
.ruhe-page .cta-inner h2{font-size:clamp(30px,3.4vw,44px);font-weight:500;margin-inline:auto}
.ruhe-page .cta-inner p{font-size:16px;line-height:1.85;max-width:50ch;margin:25px auto 0}
.ruhe-page .cta-inner>.button{margin:0}
.ruhe-page .area-entry-inner{align-items:center;gap:60px}
.ruhe-page .quality-principal-members .team-member{border:0;padding:0}
.ruhe-page .quality-principal-members{margin-top:40px}
.ruhe-page .quality-support-heading{margin-top:50px}
.ruhe-page .contact-section{padding-block:96px}
.ruhe-page .contact-aside{background:transparent;border:0;padding:0 0 0 30px;min-width:0}
.ruhe-page .contact-grid{gap:8%}
.ruhe-page .contact-aside h3{font-size:21px}
.ruhe-page .contact-aside p{font-size:15px;line-height:1.85}
.ruhe-page .ruhe-form-intro{margin-bottom:35px;font-size:16px;line-height:1.85;max-width:55ch}
.ruhe-page .ruhe-project-intro{font-size:16px;line-height:1.85;max-width:60ch;margin-bottom:42px}
.ruhe-page .project-overview{gap:7%}
.ruhe-page .project-overview .media-slot{height:460px;border-radius:0}
.ruhe-page .project-overview h3{font-size:23px;margin-top:25px}
.ruhe-page .project-overview p{font-size:15px;line-height:1.8}
.ruhe-page .project-overview a{font-size:14px;text-underline-offset:5px}
.ruhe-page .material-section .media-slot{border-radius:0}
.ruhe-page .area-group,.ruhe-page .area-intro{padding-block:85px}
.ruhe-page .area-list{row-gap:5px}
.ruhe-page .area-list a{border-radius:0;min-height:70px}
.ruhe-page .area-name{font-weight:500}
/* Local differences and source-based information remain in their existing order. */
.ruhe-page .ort-intro,.ruhe-page .ort-context,.ruhe-page .ort-role,.ruhe-page .ort-choices,.ruhe-page .ort-faq{padding-block:80px}
.ruhe-page .ort-local,.ruhe-page .ort-area-nav{padding-block:40px}
.ruhe-page .ort-context h2{max-width:900px;margin-bottom:28px}
.ruhe-page .ort-context-lead{max-width:76ch;font-size:16px;line-height:1.85}
.ruhe-page .ort-context-grid{gap:55px;margin-top:38px}
.ruhe-page .ort-context-grid h3{font-size:20px;font-weight:500}
.ruhe-page .ort-context-grid p,.ruhe-page .ort-context-prep p{font-size:15px;line-height:1.85}
.ruhe-page .ort-choices .section-heading{margin-bottom:40px}
.ruhe-page .ort-choices .ort-icon{width:38px;height:38px;stroke-width:1.4}
.ruhe-page .ort-choices .ort-card h3{font-size:20px;font-weight:500}
.ruhe-page .ort-choices .ort-card p{font-size:15px;line-height:1.8}
.ruhe-page .ort-role .split{align-items:start}
.ruhe-page .ort-role h2{font-size:clamp(28px,3vw,38px)}
.ruhe-page .ort-links a{font-size:14px;text-underline-offset:4px}
@media(max-width:1050px){.ruhe-page .content-section,.ruhe-page .material-section,.ruhe-page .projects-section,.ruhe-page .team-section,.ruhe-page .services-section,.ruhe-page .portfolio-section,.ruhe-page .trust-section,.ruhe-page .faq-section,.ruhe-page .testimonial-section,.ruhe-page .contact-section,.ruhe-page .cta-section{padding-block:76px}.ruhe-page .trust-grid,.ruhe-page .pillars{gap:30px}.ruhe-page .split{gap:7%}.ruhe-page .quality-service-image img{height:360px}.ruhe-page .project-overview .media-slot{height:390px}}
@media(max-width:740px){.ruhe-page main h2{font-size:31px}.ruhe-page main h3{font-size:20px}.ruhe-page .section-heading{margin-bottom:30px}.ruhe-page .content-section,.ruhe-page .material-section,.ruhe-page .projects-section,.ruhe-page .team-section,.ruhe-page .services-section,.ruhe-page .portfolio-section,.ruhe-page .trust-section,.ruhe-page .faq-section,.ruhe-page .testimonial-section,.ruhe-page .contact-section,.ruhe-page .cta-section{padding-block:52px}.ruhe-page .quality-editorial-hero{padding-block:42px}.ruhe-page .split{gap:30px}.ruhe-page .split p{font-size:15px}.ruhe-page .split .media-slot{height:390px}.ruhe-page .quality-service-image img{height:310px}.ruhe-page .quality-service-card h3{font-size:25px}.ruhe-page .quality-detail-grid .portfolio-tile,.ruhe-page .quality-detail-grid .quality-detail:last-child .portfolio-tile{height:300px}.ruhe-page .trust-grid,.ruhe-page .pillars{gap:30px}.ruhe-page .faq-section>.wrap{grid-template-columns:1fr;gap:25px}.ruhe-page .faq-list summary,.ruhe-page .faq-list details p{font-size:14px}.ruhe-page .cta-inner{align-items:flex-start;text-align:left;gap:27px}.ruhe-page .cta-inner h2{font-size:31px}.ruhe-page .cta-inner p{font-size:15px;margin:22px 0 0}.ruhe-page .area-entry-inner{gap:28px}.ruhe-page .contact-aside{padding:0}.ruhe-page .contact-grid{gap:42px}.ruhe-page .ruhe-form-intro,.ruhe-page .ruhe-project-intro{font-size:15px}.ruhe-page .project-overview{gap:40px}.ruhe-page .project-overview .media-slot{height:350px}.ruhe-page .area-group,.ruhe-page .area-intro{padding-block:50px}.ruhe-page .ort-intro,.ruhe-page .ort-context,.ruhe-page .ort-role,.ruhe-page .ort-choices,.ruhe-page .ort-faq{padding-block:52px}.ruhe-page .ort-context-grid{gap:28px;margin-top:28px}.ruhe-page .ort-context h2{font-size:29px}.ruhe-page .ort-context-lead{font-size:15px}.ruhe-page .ort-context-grid h3{font-size:20px}.ruhe-page .ort-local,.ruhe-page .ort-area-nav{padding-block:28px}.ruhe-page .ort-choices .ort-card{grid-template-columns:38px minmax(0,1fr);column-gap:22px}.ruhe-page .ort-choices .ort-icon{width:34px;height:34px}.ruhe-page .ort-role h2{font-size:29px}}
@media(max-width:360px){.ruhe-page main h2,.ruhe-page .cta-inner h2{font-size:28px}}

.ruhe-page.quality-page-exklusive-baeder .san-visual-interlude img{object-position:center 78%}

/* Restore the requested start-page icon strip and curated four-image gallery. */
.ruhe-page.quality-page-startseite .competence-strip{min-height:0;padding:44px 0;background:#fff;border-bottom:1px solid #eee9e2}
.ruhe-page.quality-page-startseite .competence-inner{grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.ruhe-page.quality-page-startseite .competence-item{font-size:13px;font-weight:400;letter-spacing:0;line-height:1.5;gap:15px}
.ruhe-page.quality-page-startseite .competence-item .line-icon{width:40px;height:40px;stroke:#981b1f;stroke-width:1.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.ruhe-page .home-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:0}
.ruhe-page .home-detail-grid .portfolio-column{display:flex;flex-direction:column;gap:24px}
.ruhe-page .home-detail-gallery .home-detail-tall{height:520px}
.ruhe-page .home-detail-gallery .home-detail-short{height:280px}
.ruhe-page .home-detail-gallery .media-slot{height:100%;border-radius:0;overflow:hidden}
.ruhe-page .home-detail-gallery img{width:100%;height:100%;object-fit:cover;object-position:center}
.ruhe-page .home-detail-gallery .home-detail-short img{object-position:center 58%}
.ruhe-page .home-detail-gallery .portfolio-tile:focus-visible{outline:2px solid #981b1f;outline-offset:5px}
@media(max-width:740px){.ruhe-page.quality-page-startseite .competence-strip{padding:32px 0}.ruhe-page.quality-page-startseite .competence-inner{grid-template-columns:repeat(6,minmax(0,1fr));gap:27px 8px}.ruhe-page.quality-page-startseite .competence-item{grid-column:span 2;font-size:11px;gap:10px;margin:0}.ruhe-page.quality-page-startseite .competence-item:nth-child(4){grid-column:2/span 2;margin:0}.ruhe-page.quality-page-startseite .competence-item:nth-child(5){grid-column:4/span 2;margin:0}.ruhe-page.quality-page-startseite .competence-item .line-icon{width:32px;height:32px}.ruhe-page .home-detail-grid{gap:12px}.ruhe-page .home-detail-grid .portfolio-column{display:flex;gap:12px}.ruhe-page .home-detail-gallery .home-detail-tall{height:280px}.ruhe-page .home-detail-gallery .home-detail-short{height:170px}.ruhe-page .home-detail-gallery .center-action{margin-top:30px}}

/* Larger complete team portrait on the company page; keep all four people. */
.ruhe-page.quality-page-ueber-uns .quality-editorial-hero>.wrap{width:min(1440px,calc(100% - 80px));max-width:none}
.ruhe-page.quality-page-ueber-uns .quality-editorial-inner{grid-template-columns:1fr;gap:48px}
.ruhe-page.quality-page-ueber-uns .quality-editorial-copy{width:100%;max-width:1152px;margin-inline:auto}
.ruhe-page.quality-page-ueber-uns .quality-editorial-hero h1{max-width:1000px}
.ruhe-page.quality-page-ueber-uns .quality-lead{max-width:62ch}
.ruhe-page.quality-page-ueber-uns .quality-team-figure{padding:0;background:transparent;width:100%}
.ruhe-page.quality-page-ueber-uns .quality-editorial-figure.quality-team-figure>img{display:block;width:100%;height:auto;aspect-ratio:auto;max-height:none;object-fit:contain;border-radius:0}
/* Source-labelled, manually verified Google review excerpts. */
.ruhe-page .google-reviews-head{display:flex;align-items:center;justify-content:space-between;gap:45px;margin-bottom:45px}
.ruhe-page .google-reviews-head h2{margin:0}
.ruhe-page .google-rating-overview{text-align:right;flex-shrink:0}
.ruhe-page .google-rating-value{display:flex;justify-content:flex-end;align-items:baseline;gap:9px;margin:0}
.ruhe-page .google-rating-value strong{font-size:42px;line-height:1.1;font-weight:500}
.ruhe-page .google-rating-value>span{font-size:13px;color:#59534e}
.ruhe-page .google-stars{color:#8d6316;font-size:20px;letter-spacing:3px;line-height:1.5;margin:12px 0}
.ruhe-page .google-rating-overview>a{font-size:13px;text-underline-offset:4px}
.ruhe-page .google-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.ruhe-page .google-review-card{margin:0;padding:28px;border:1px solid #dfd8cf;background:#fff;min-width:0}
.ruhe-page .google-review-card figcaption{display:flex;align-items:center;gap:14px}
.ruhe-page .review-avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:#f1ece4;color:#38312b;font-size:14px}
.ruhe-page .google-review-card cite{display:block;font-style:normal;font-weight:500;font-size:15px;line-height:1.4}
.ruhe-page .review-source-label{display:block;font-size:12px;color:#625c56;margin-top:4px}
.ruhe-page .google-review-card .google-stars{margin:23px 0 17px;font-size:18px}
.ruhe-page .google-review-card blockquote{padding:0;margin:0;border:0;background:transparent;min-height:0;text-align:left}
.ruhe-page .google-review-card blockquote p{font-size:18px;line-height:1.75;font-weight:400;margin:0}
.ruhe-page .google-reviews-bottom{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:28px}
.ruhe-page .google-reviews-bottom p{font-size:12px;color:#625c56;margin:0}
.ruhe-page .google-reviews-bottom .quality-text-link{font-size:14px}
@media(max-width:1050px){.ruhe-page .google-review-grid{gap:18px}.ruhe-page .google-review-card{padding:22px}.ruhe-page .google-review-card blockquote p{font-size:16px}}
@media(max-width:740px){.ruhe-page.quality-page-ueber-uns .quality-editorial-hero>.wrap{width:calc(100% - 40px)}.ruhe-page.quality-page-ueber-uns .quality-editorial-inner{gap:30px}.ruhe-page .google-reviews-head{display:block;margin-bottom:30px}.ruhe-page .google-rating-overview{text-align:left;margin-top:28px}.ruhe-page .google-rating-value{justify-content:flex-start}.ruhe-page .google-review-grid{grid-template-columns:1fr;gap:18px}.ruhe-page .google-review-card{padding:25px}.ruhe-page .google-review-card blockquote p{font-size:17px}.ruhe-page .google-reviews-bottom{display:block}.ruhe-page .google-reviews-bottom .quality-text-link{margin-top:20px}}

.ruhe-page .google-rating-overview .google-review-count{font-size:13px;line-height:1.6;margin:7px 0 0}
