/*
Theme Name: F. Schmidt Architektur
Author: F. Schmidt
Description: Eigenständiges Testtheme zur lokalen Architekturvorschau. Kein automatischer Import und keine automatische Veröffentlichung.
Version: 0.6.6
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: fs-architektur
*/
body.admin-bar .site-header{scroll-margin-top:32px}
.fs-default{min-height:50vh;padding-top:70px;padding-bottom:70px}
#inhalt .wp-block-group > .wp-block-group__inner-container{display:contents}
.project-facts .fs-fact-label{font-size:11px;color:var(--muted);margin:0}
.project-facts .fs-fact-value{font-size:11px;margin:0}
.fs-legal-page{padding-top:65px;padding-bottom:80px;max-width:1000px}
.fs-legal-page h1{font-size:clamp(42px,6vw,76px);margin:0 0 35px;line-height:1.1}
.fs-legal-page h2{font-size:28px;margin:40px 0 15px;letter-spacing:-.03em}
.fs-legal-page p{font-size:15px;line-height:1.8;margin:18px 0}
.fs-legal-page a{text-decoration:underline;text-underline-offset:3px}
.fs-review-note{background:#f3ead9;padding:20px;border-left:3px solid #b69b66}

/* Editable core/image blocks preserve the established FS composition. */
.wp-block-image.fs-media{margin:0;max-width:none}
.wp-block-image.fs-media img{display:block;width:100%;max-width:100%}
.wp-block-image.fs-media>a{display:block;width:100%}
.wp-block-image.fs-media .wp-element-caption{margin:14px 0 0;font:inherit;font-size:10px;line-height:1.7;color:var(--muted)}
.wp-block-image.fs-media.cover-photo>a{height:100%}
.project-diptych .wp-block-image.fs-media>a,.featured .wp-block-image.feature-image>a{height:100%}
.wp-block-image.fs-media.feature-image,.wp-block-image.fs-media.detail-image{position:relative;overflow:hidden}
.wp-block-image.fs-media.feature-image .wp-element-caption,.wp-block-image.fs-media.detail-image .wp-element-caption{position:absolute;bottom:20px;left:22px;margin:0;background:#fafaf8e8;padding:8px 10px;font-size:8px;pointer-events:none}
.wp-block-image.fs-photo.project-hero{aspect-ratio:auto;overflow:visible}
.wp-block-image.fs-photo.project-hero>a{aspect-ratio:2;overflow:hidden}
.wp-block-image.fs-photo.project-hero img{height:100%;object-fit:cover}
.wp-block-image.fs-photo>a{cursor:zoom-in}
.wp-block-image.fs-photo.tall,.wp-block-image.fs-photo.small{height:auto;aspect-ratio:auto}
.wp-block-image.fs-photo.tall>a{aspect-ratio:0.8}
.wp-block-image.fs-photo.small>a{aspect-ratio:1.2}
.wp-block-image.fs-photo.tall img,.wp-block-image.fs-photo.small img{height:100%;object-fit:cover}
.wp-block-image.office-portrait{overflow:visible}
.wp-block-image.office-portrait img{width:100%;height:auto;aspect-ratio:0.8;object-fit:cover}
.fs-template-plans{padding-top:60px;padding-bottom:70px}
.fs-template-plans .wp-block-image{max-width:850px;margin:30px auto}
.fs-template-plans img{object-fit:contain}
.project-title-row>*{min-width:0}
.project-head h1{overflow-wrap:anywhere}
.project-facts .wp-block-group{gap:14px}
.project-facts .fs-fact-label{flex:0 0 82px}
.project-facts .fs-fact-value{min-width:0;text-align:right;overflow-wrap:anywhere}
@media(max-width:700px){
 .wp-block-image.fs-photo.project-hero>a{aspect-ratio:.95}
 .wp-block-image.fs-photo.tall>a{aspect-ratio:1.1}
 .wp-block-image.fs-photo.small>a{aspect-ratio:1.2}
}

/* Editorial refinement: readable copy, quiet spacing, usable small screens. */
.statement p:not(.eyebrow),.principle p,.feature-description,
.body-columns p,.development p:not(.eyebrow),.services-intro p,
.service-step p,.services-references p,.overview-intro{font-size:15px;line-height:1.8}
.feature-description{max-width:48ch}
.body-columns{column-gap:30px;row-gap:20px}
.section-top{align-items:baseline}
.wp-block-image.fs-media .wp-element-caption{font-size:12px;line-height:1.65}
.wp-block-image.fs-media.office-portrait{max-width:300px;margin:28px 0 0}
.wp-block-image.office-portrait .wp-element-caption{font-size:13px;color:var(--ink)}
.wp-block-image.office-portrait .wp-element-caption span{font-size:11px;color:var(--muted)}
.wp-block-image.fs-photo.goegele-hero>a{aspect-ratio:1.72}
.wp-block-image.fs-photo.goegele-hero img{object-fit:contain}
.contact-bottom{font-size:12px;line-height:1.7}
.contact-bottom a{display:inline-flex;align-items:center;min-height:32px}
.plan-open,.drawing-note{font-size:12px;line-height:1.7}
.drawing-buttons button{min-height:44px;font-size:12px}
.text-link:focus-visible,.cover-link:focus-visible{outline-offset:5px}
.project-diptych a:focus-visible img{transform:scale(1.025)}
@media(max-width:700px){
 .section-top{display:block}
 .section-top .eyebrow{font-size:10px;margin-bottom:18px}
 .section-top h2{font-size:40px;line-height:1.05}
 .project-diptych{grid-template-columns:minmax(0,1fr);gap:18px}
 .project-diptych .wp-block-image.fs-media.feature-image{aspect-ratio:1.1}
 .project-diptych .wp-block-image.fs-media.detail-image{aspect-ratio:1.6}
 .project-diptych .wp-block-image.fs-media .wp-element-caption{font-size:10px;bottom:12px;left:12px;padding:8px 10px}
 .feature-meta{margin-top:25px}
 .feature-meta .eyebrow{font-size:10px;line-height:1.7}
 .feature-meta h3{font-size:32px;line-height:1.12}
 .feature-meta .text-link,.services-home-link{font-size:13px}
 .text-link,.cover-link,.contact-bottom a,.services-home-link a{min-height:44px}
 .principle p,.statement p:not(.eyebrow),.feature-description,.body-columns p,
 .development p:not(.eyebrow),.services-intro p,.service-step p{font-size:15px;line-height:1.8}
 .principles-grid{gap:30px}
 .wp-block-image.fs-photo.goegele-hero>a{aspect-ratio:1.4}
 .plan-select-label{font-size:12px}
 .plan-select{font-size:14px;min-height:48px}
 .plan-view img.drawing-image{height:auto;min-height:250px;max-height:480px;aspect-ratio:1}
 .plan-overview-card span{font-size:12px;line-height:1.6}
 .contact-bottom{gap:22px;font-size:12px}
 .contact-top{gap:26px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .project-diptych img{transition:none}
 .project-diptych a:hover img,.project-diptych a:focus-visible img{transform:none}
}

.fs-contact-form{padding:55px 0 65px;max-width:1000px;scroll-margin-top:35px}
.fs-contact-form h3{font-size:clamp(25px,3vw,38px);letter-spacing:-.035em;line-height:1.15;margin:0 0 30px;color:inherit}
.fs-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 32px}
.fs-form-grid label{display:block;font-size:13px;line-height:1.6;color:inherit}
.fs-form-wide{grid-column:1/-1}
.fs-form-grid p{margin:0}
.fs-contact-form input:not([type=submit]),.fs-contact-form select,.fs-contact-form textarea{display:block;box-sizing:border-box;width:100%;margin-top:8px;background:#fff;color:#17251c;border:1px solid #ccd3cc;border-radius:0;padding:13px 14px;font:inherit;font-size:16px;line-height:1.4;min-height:48px}
.fs-contact-form textarea{min-height:155px;resize:vertical}
.fs-contact-form input:focus,.fs-contact-form select:focus,.fs-contact-form textarea:focus{outline:2px solid #e8c78d;outline-offset:3px}
.fs-contact-form .fs-form-privacy,.fs-contact-form .fs-form-demo{font-size:12px;line-height:1.7;margin:20px 0;max-width:780px}
.fs-contact-form .fs-form-privacy a{text-decoration:underline;text-underline-offset:3px}
.fs-contact-form .fs-form-demo{padding:13px 16px;border-left:2px solid #d9c296;color:#f2dfb9;background:#ffffff08}
.fs-contact-form .wpcf7-submit{appearance:none;cursor:pointer;min-height:48px;padding:13px 25px;background:#f4f4ed;color:#1e3024;border:1px solid #f4f4ed;border-radius:0;font:inherit;font-size:14px}
.fs-contact-form .wpcf7-submit:hover{background:#dce5db}
.fs-contact-form .wpcf7-response-output{margin:20px 0!important;padding:15px!important;font-size:14px;line-height:1.6}
.fs-contact-form .wpcf7-not-valid-tip{color:#ffd6c7;font-size:12px;margin-top:6px}
@media(max-width:650px){.fs-form-grid{grid-template-columns:1fr;gap:20px}.fs-contact-form{padding:35px 0 45px}.fs-contact-form .wpcf7-submit{width:100%}}
