/* Verbindliche Schriftrollen und Inhaltsachsen für alle Web-Gens-Seiten.
   Die Hintergründe bleiben vollbreit. Nur die Inhalte erhalten ein gemeinsames Raster. */
body.site-2026 {
  --content-width:1480px;
  --gutter:clamp(20px,4vw,64px);
  --page-inset:max(var(--gutter),calc((100% - var(--content-width))/2));
  --section-space:clamp(48px,6vw,80px);
  --section-space-compact:var(--section-space);
  --section-space-balanced:var(--section-space);
  --type-title:clamp(2.25rem,4.6vw,4rem);
  --heading-section:clamp(1.875rem,3.2vw,2.75rem);
  --heading-feature:clamp(1.375rem,2vw,1.625rem);
  --type-body:1.0625rem;
  --type-detail:1rem;
  --type-small:.875rem;
  --moss:#53614f;
  --button-size:1rem;
  font-size:var(--type-body);
  line-height:1.75;
}

/* Gleiche linke und rechte Inhaltskante, auch auf sehr breiten Bildschirmen. */
.site-2026 :is(.home-intro,.service-intro,.about-studio,.crumbs,.page-route,.sec-head,.gallery-intro,.gallery-picker,.gallery-layout,.gallery-select,.reference-crosslink,.project-case-layout,.home-check-section,.foot-grid,.foot-bottom,.error-index,.pricebox-wrap,.catalog-list,.gallery-catalog-intro) {padding-inline:var(--page-inset)}
.site-2026 .home-offers :is(.offer-grid,.offer-bottom,.offer-help){padding-inline:var(--page-inset)}
.site-2026 .home-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;padding-block:var(--section-space)}
.site-2026 .service-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;padding-block:var(--section-space)}
.site-2026 .intro-content{padding:0}
.site-2026 .intro-canvas{max-width:680px;margin-inline:auto}
.site-2026 .service-intro-visual{width:100%;max-width:640px;margin-inline:auto}
.site-2026 .incl,.site-2026 .sym{margin-inline:var(--page-inset);margin-bottom:var(--section-space);gap:24px}
.site-2026 .steps{padding:0 var(--page-inset) var(--section-space);gap:32px}
.site-2026 .pricebox-wrap{padding-bottom:var(--section-space)}
.site-2026 .sec-head{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding-top:var(--section-space);padding-bottom:40px}
.site-2026 .website-gallery .sec-head{padding-bottom:40px}
.site-2026 .sec-head>h2{max-width:24ch;margin-inline:auto}
.site-2026 .sec-head>.mono{max-width:60ch;text-align:center;text-transform:none;letter-spacing:0}
.site-2026 .gallery-intro{max-width:none;text-align:center}
.site-2026 .gallery-intro>p,.site-2026 .gallery-intro>span{max-width:65ch;margin-inline:auto}
.site-2026 .gallery-picker{justify-content:center}
.site-2026 .gallery-overview-link{margin:0 var(--page-inset) 24px;text-align:center}
.site-2026 section#faq{padding:var(--section-space) var(--page-inset);gap:64px}
.site-2026 #faq>.sec-head{padding:0;text-align:left;align-items:start}
.site-2026 #faq>.sec-head h2{margin-inline:0}
.site-2026 #faq>.sec-head .mono{text-align:left}
.site-2026 .duo,.site-2026 .site-plan,.site-2026 .contact{padding-inline:var(--page-inset)}
.site-2026 .duo-main,.site-2026 .duo-side,.site-2026 .site-plan-copy,.site-2026 .site-plan-map,.site-2026 .contact-copy,.site-2026 .contact form{min-width:0}
.site-2026 .duo-main .prose{padding:var(--section-space) 40px var(--section-space) 0;max-width:none}
.site-2026 .prose>p,.site-2026 .prose>ol{max-width:65ch}
.site-2026 .duo-main>.work-note{margin:0 40px var(--section-space) 0}
.site-2026 .duo-side{padding:var(--section-space) 0 var(--section-space) 40px;background:transparent}
.site-2026 .site-plan-copy{padding:var(--section-space) 40px var(--section-space) 0}
.site-2026 .site-plan-map{padding:var(--section-space) 0 var(--section-space) 40px;background:transparent}
.site-2026 .contact-copy{padding:var(--section-space) 48px var(--section-space) 0}
.site-2026 .contact form{padding:var(--section-space) 0 var(--section-space) 48px}
.site-2026 .home-offers .offer-bundle{padding:40px 32px 40px 0}
.site-2026 .home-offers .offer-clarity{padding:40px 0 40px 32px}
.site-2026 .gallery-catalog-intro{text-align:center;padding-block:var(--section-space)}
.site-2026 .gallery-catalog-intro p{margin-inline:auto}
.site-2026 .gallery-catalog-intro h1{margin-inline:auto}
.site-2026 .site-plan-pages{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.site-2026 .site-plan-page,.site-2026 .site-plan-page:nth-last-child(-n+2){grid-column:auto;padding:24px}
.site-2026 .site-plan-page:last-child{grid-column:1/-1}

/* Eine Grössenstufe pro Rolle statt einzelner Werte je Unterseite. */
body.site-2026 h1,body.site-2026 .home-intro h1.display,body.site-2026 .service-intro h1.display,body.site-2026 .gallery-catalog-intro h1{font-size:var(--type-title);line-height:1.1;letter-spacing:-.035em;text-wrap:balance}
body.site-2026 main :is(h2.display,.about-copy h2,.check-intro h2,.prose h2,.contact-copy h2,.site-plan-copy h2){font-size:var(--heading-section);line-height:1.15;letter-spacing:-.025em}
body.site-2026 main :is(.incl-item h3,.sym-item h3,.step h3,.website-cost-note h3,.price-reference-note h3,.work-note h3,.prose h3,.site-plan-home h3,.project-case-copy h3,.catalog-list h2){font-size:var(--heading-feature);line-height:1.3;letter-spacing:-.015em}
body.site-2026 .home-offers :is(.offer-card h3,.offer-bottom h3),body.site-2026 .discount-copy>h3{font-size:var(--heading-feature);line-height:1.3}
body.site-2026 #ueber.about-studio .together h3{font-size:var(--heading-feature);line-height:1.3;max-width:24ch}
body.site-2026 .support-topic h3{font-size:1.25rem;line-height:1.5;overflow-wrap:anywhere}
body.site-2026 .site-plan-page h3{font-size:1.125rem;line-height:1.4}
body.site-2026 main :is(.studio-steps h4,.offer-note h4){font-size:var(--type-body);line-height:1.5}
body.site-2026 main :is(.intro-lead,.service-intro-lead){font-size:1.125rem;line-height:1.75;max-width:45ch}
body.site-2026 main :is(.about-copy p,.studio-steps p,.incl-item p,.sym-item p,.step p,.prose p,.prose li,.faq-list .faq-a,.support-topic-answer,.gallery-intro>p,.gallery-description,.project-case-copy p,.project-decisions dd,.check-intro p,.contact-copy p,.website-cost-note p,.price-reference-note p,.work-note p,.work-note li,.site-plan-copy p,.site-plan-home p,.catalog-list p,.gallery-catalog-intro p){font-size:var(--type-body);line-height:1.75}
body.site-2026 .home-offers :is(.offer-intro>p,.check-list li,.offer-note p,.bundle-copy p,.offer-clarity p){font-size:var(--type-body);line-height:1.75}
body.site-2026 main :is(.pricebox li,.preis-hinweis,.preis-hinweis p,.gallery-notes dd,.gallery-notes dt,.gallery-notes>summary,.project-decisions dt,.site-plan-page p,.check-help,.check-intro .check-instruction,.form-unavailable,.service-board p,.service-board-list li,.document-index a,.document-index summary){font-size:var(--type-detail);line-height:1.7}
body.site-2026.site-document :is(p,li),body.site-2026.site-questionnaire .intro{font-size:var(--type-body);line-height:1.8}
body.site-2026.site-document h2{font-size:var(--heading-feature);line-height:1.35}

/* Kleine Hinweise bleiben gut lesbar. Die Schriften in Miniaturbildern sind Bildinhalt. */
body.site-2026 main .mono,body.site-2026 main :is(.section-kicker,.intro-eyebrow,.service-visual-label,.service-board-kicker,.gallery-category,.tag,.studio-note,.studio-steps li>span,.form-note,.site-plan-note,.project-case-visual figcaption,.gallery-window-footer>span,.gallery-style,.intro-showcase-caption,.intro-window-bar,.intro-window-label,.intro-window-label>span){font-size:var(--type-small);line-height:1.6;letter-spacing:.025em}
body.site-2026 .home-offers :is(.offer-top .mono,.offer-bottom .mono,.price-label,.price-caption,.price>span,.price .price-period,.second-price small,.bundle-price span){font-size:var(--type-small);line-height:1.6;letter-spacing:0}
body.site-2026 #ueber :is(.together-kicker,.portrait figcaption){font-size:var(--type-small);line-height:1.6;letter-spacing:.025em}
body.site-2026 main :is(.service-intro-price>span,.gallery-intro>span,.reference-discount>.discount-scope,.discount-prices span,.service-board-list li>span,.service-board-steps li>span,.hosting-network small,.service-board-tags>span,.panel-head .mono,.badge,.check-meta){font-size:var(--type-small);line-height:1.65;letter-spacing:0}
body.site-2026 .sec-head>.mono,body.site-2026 #faq>.sec-head .mono{font-size:var(--type-body);line-height:1.7;letter-spacing:0}
body.site-2026 .crumbs{font-size:var(--type-small);line-height:1.7;letter-spacing:.025em}
body.site-2026 .gallery-window-bar{font-size:var(--type-small);line-height:1.5;flex-wrap:wrap;gap:8px 16px}
body.site-2026 .gallery-window-bar>.mono{font-size:var(--type-small);line-height:1.5}
body.site-2026 .gallery-window-dots{font-size:10px;letter-spacing:2px}
body.site-2026 .intro-window-bar{height:36px;padding-inline:12px}
body.site-2026 .intro-window-label{padding:10px 12px;flex-wrap:wrap}

/* Preise: normaler Zeichenabstand und eine eigene, zentrierte Abrechnungszeile. */
body.site-2026 .pricebox-head{text-align:center;justify-items:center;padding:32px;gap:12px}
body.site-2026 .pricebox .big{font-size:clamp(2.5rem,4vw,3.5rem);line-height:1.1;letter-spacing:-.035em;max-width:100%}
body.site-2026 .pricebox .big>span{display:block;margin-top:12px;font-family:"Instrument Sans",sans-serif;font-size:var(--type-detail);font-weight:400;letter-spacing:normal;line-height:1.5}
body.site-2026 .pricebox .big>span:empty{display:none}
body.site-2026 .pricebox-head>.mono:last-child:not(:first-child){font-size:var(--type-detail);letter-spacing:normal;line-height:1.6;max-width:40ch}
body.site-2026 .discount-copy>p{font-size:var(--type-body);line-height:1.75}
body.site-2026 .discount-prices>p{font-size:var(--type-detail);line-height:1.7}
body.site-2026 .reference-discount{padding:var(--section-space) var(--page-inset)}
body.site-2026 .reference-discount :is(.discount-copy,.discount-prices,.discount-scope){margin-inline:auto;text-align:center}
body.site-2026 .discount-number{letter-spacing:-.035em;line-height:1.1}
body.site-2026 .discount-number>span{letter-spacing:normal}

/* Wiedererkennbare Bedienelemente und lesbare Formulare. */
body.site-2026 .btn,body.site-2026 .home-offers .offer-card .btn,body.site-2026 .check-form button{font-size:var(--type-detail);line-height:1.5;min-height:52px;white-space:normal}
body.site-2026 main :is(.intro-price,.intro-showcase-link,.service-design-caption,.service-intro-price strong,.service-board-link,.studio-contact,.offer-detail,.second-price a,.reference-crosslink>.plain,.gallery-detail>a,.catalog-list>article>a:last-child,.support-topic-answer>a,.back){font-size:var(--type-detail);line-height:1.65}
body.site-2026 .home-offers :is(.offer-detail,.second-price a,.offer-help a strong,.offer-help>p){font-size:var(--type-detail);line-height:1.65}
body.site-2026 .home-offers .offer-help a>span{font-size:var(--type-small);line-height:1.65}
body.site-2026 .page-route>a{font-size:var(--type-detail);line-height:1.5;gap:12px;min-width:0;overflow-wrap:break-word}
body.site-2026 .page-route>a>span:first-child{font-size:var(--type-small)}
body.site-2026 .gallery-picker>button{font-size:var(--type-detail);line-height:1.5}
body.site-2026 .gallery-preview-open{font-size:var(--type-small);line-height:1.5}
body.site-2026 .faq-list summary{font-size:var(--type-body);line-height:1.6}
body.site-2026 .panel-row,body.site-2026 .panel-row .val{font-size:var(--type-detail);line-height:1.5}
body.site-2026 .contact-copy .direct{font-family:"Instrument Sans",sans-serif;font-size:var(--type-body);line-height:1.8;overflow-wrap:anywhere}
body.site-2026 .contact form :is(input:not([type="checkbox"]),textarea){font-size:var(--type-body);line-height:1.5}
body.site-2026 .contact form :is(label .mono,.form-note,label.consent){font-size:var(--type-small);line-height:1.65;letter-spacing:.025em}
body.site-2026 .foot-brand p,body.site-2026 .foot-col a,body.site-2026 .foot-col span:not(.foot-head){font-size:var(--type-detail);line-height:1.7}
body.site-2026 :is(.foot-head,.foot-brand .foot-love,.foot-bottom){font-size:var(--type-small);line-height:1.7;letter-spacing:.025em;color:#c1cec5}
body.site-2026 main :is(a.plain,.error-index a,.check-shortcut){font-size:var(--type-detail);line-height:1.65}
body.site-2026 .home-offers .second-price>div{font-size:var(--type-detail);line-height:1.65}
body.site-2026 .home-offers .second-price>span,body.site-2026 .home-offers .offer-help .check-shortcut{font-size:var(--type-detail);line-height:1.65}
body.site-2026 .incl-item .mono{font-size:var(--type-small);line-height:1.7;letter-spacing:.025em}
body.site-2026 main :is(.gallery-scope,.project-capture-note,.project-address,.frage .num,.note),body.site-2026 .home-check-section .check-kicker,body.site-2026 .sym-item .mono,body.site-2026 .catalog-list .section-kicker{font-size:var(--type-small);line-height:1.7;letter-spacing:.025em}
body.site-2026 main .website-gallery .gallery-scope{width:min(70ch,calc(100% - 2 * var(--gutter)));max-width:none;margin-inline:auto;text-align:center;font-size:var(--type-detail);padding-bottom:var(--section-space)}
body.site-2026 main small{font-size:var(--type-small);line-height:1.7}

@media(min-width:1201px){
  .site-2026>header{padding-inline:var(--page-inset)}
  .site-2026>header .logo{padding-left:0;padding-right:24px}
  .site-2026>header nav a{padding-inline:16px;font-size:15px;line-height:1.5}
}
@media(max-width:1100px){
  .site-2026 .site-plan{grid-template-columns:minmax(0,1fr)}
  .site-2026 .site-plan-copy{padding:var(--section-space) 0 32px;border-right:0}
  .site-2026 .site-plan-map{padding:32px 0 var(--section-space)}
}
@media(max-width:820px){
  .site-2026 .home-intro,.site-2026 .service-intro{grid-template-columns:minmax(0,1fr);gap:40px}
  .site-2026 .service-intro-visual,.site-2026 .intro-showcase{max-width:640px;margin-inline:auto}
  .site-2026 .duo,.site-2026 .contact{grid-template-columns:minmax(0,1fr)}
  .site-2026 .duo-main .prose,.site-2026 .contact-copy{padding:var(--section-space) 0 32px}
  .site-2026 .duo-side,.site-2026 .contact form{padding:32px 0 var(--section-space)}
  .site-2026 .duo-main>.work-note{margin:0 0 32px}
  .site-2026 .home-offers .offer-bottom{grid-template-columns:minmax(0,1fr)}
  .site-2026 .home-offers .offer-bundle,.site-2026 .home-offers .offer-clarity{padding:32px 0;border-right:0}
  .site-2026 .home-offers .offer-clarity{border-top:1px solid var(--line)}
  .site-2026 section#faq{grid-template-columns:minmax(0,1fr);gap:32px}
  .site-2026 .sec-head,.site-2026 .website-gallery .sec-head{padding-bottom:32px}
}
@media(max-width:600px){
  body.site-2026{--type-body:1rem}
  .site-2026 .incl,.site-2026 .sym{gap:16px}
  body.site-2026 .page-route>a{font-size:14px;gap:8px;align-items:center}
  body.site-2026 .page-route>a>span:first-child{display:none}
  body.site-2026 .intro-window-bar>span:not(.intro-window-dots){font-size:12px}
  body.site-2026 .intro-window-label{font-size:13px;padding:8px}
  body.site-2026 .intro-window-label>span{display:none}
  body.site-2026 .gallery-window-bar>.mono{width:100%;text-align:center}
  body.site-2026 .gallery-window-footer>span:nth-child(2){display:none}
  body.site-2026 .pricebox-head{padding:24px}
  .site-2026 .site-plan-pages{grid-template-columns:minmax(0,1fr)}
  .site-2026 .service-board-tags{flex-wrap:wrap}
  body.site-2026 .panel-row{flex-wrap:wrap;gap:8px 16px}
  body.site-2026 .panel-head{flex-wrap:wrap;gap:12px}
  .site-2026 .service-board-number{gap:16px}
}
