/* Homepage finale. No shared header, project, service or legacy form selectors. */
.hero-mockup-page .rest-home .rest-finale {background:#f2f1eb;background-image:none;color:#071c2d;}
.home-contact {padding-block:64px 72px;border-top:1px solid #c6d0d3;color:#071c2d;}
.home-contact .inquiry-marker {display:flex;align-items:center;gap:26px;margin-bottom:30px;font-size:10px;font-weight:700;letter-spacing:.11em;line-height:1.5;color:#254055;}
.home-contact .inquiry-marker .rule {background:#c6d0d3;}
.home-contact .inquiry-layout {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(50px,7vw,112px);align-items:start;}
.home-contact h2 {margin:0;font-size:clamp(38px,2.8vw,42px);font-weight:800;line-height:1.12;letter-spacing:-.045em;max-width:13ch;text-wrap:balance;}
.home-contact .inquiry-intro>p {margin:24px 0 0;max-width:360px;font-size:15px;line-height:1.8;color:#53616b;}
.home-contact .inquiry-direct {margin:32px 0 0;padding:24px 0 0;border-top:1px solid #c6d0d3;max-width:360px;}
.home-contact .inquiry-direct>div+div {margin-top:18px;}
.home-contact .inquiry-direct dt {margin:0 0 4px;font-size:9px;font-weight:600;line-height:1.6;letter-spacing:.1em;text-transform:uppercase;color:#60717c;}
.home-contact .inquiry-direct dd {margin:0;}
.home-contact .inquiry-direct a {display:inline-flex;align-items:center;min-height:34px;font-size:16px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere;}
.home-contact .inquiry-direct a:hover {color:#0967d9;}
.home-contact .inquiry-form {margin:0;min-width:0;}
.home-contact .inquiry-row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.home-contact .inquiry-field {display:block;margin:0 0 19px;font-size:12px;font-weight:600;line-height:1.5;color:#173043;min-width:0;}
.home-contact .inquiry-field .inquiry-optional {color:#60717c;font-weight:400;font-size:11px;}
.home-contact .inquiry-field input:not([type=file]),.home-contact .inquiry-field textarea {
  display:block;width:100%;min-width:0;border:1px solid #b9c7cc;border-radius:0;
  background:#fafaf7;color:#071c2d;padding:12px 13px;margin-top:8px;
  font:400 16px/1.5 Manrope,Arial,sans-serif;box-shadow:none;appearance:none;
}
.home-contact .inquiry-field input:not([type=file]) {height:48px;}
.home-contact .inquiry-field textarea {min-height:120px;resize:vertical;}
.home-contact .inquiry-field textarea::placeholder {color:#6c7b84;opacity:1;font-size:14px;}
.home-contact .inquiry-field input:focus-visible,.home-contact .inquiry-field textarea:focus-visible {outline:2px solid #0967d9;outline-offset:2px;border-color:#0967d9;}
.home-contact .inquiry-field [aria-invalid=true] {border-color:#a63829!important;}
.home-contact .inquiry-error {display:block;font-size:12px;font-weight:400;line-height:1.5;color:#a63829;}
.home-contact .inquiry-error:not(:empty) {margin-top:6px;}
.home-contact .inquiry-file {margin-bottom:20px;padding-top:2px;}
.home-contact .inquiry-file label {display:block;margin:0;color:#173043;font-size:12px;font-weight:600;line-height:1.5;}
.home-contact .inquiry-file-control {position:relative;display:inline-flex;align-items:center;min-height:42px;max-width:100%;border:1px solid #a5b6bf;padding:9px 13px;margin-top:9px;color:#173043;font-size:12px;font-weight:600;}
.home-contact .inquiry-file-control:focus-within {outline:2px solid #0967d9;outline-offset:3px;}
.home-contact .inquiry-file input {position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;font-size:16px;cursor:pointer;}
.home-contact .inquiry-file-hint {margin:8px 0 0;font-size:11px;line-height:1.6;color:#60717c;}
.home-contact .inquiry-file-selected {display:flex;align-items:center;gap:12px;margin-top:5px;min-width:0;}
.home-contact #inquiryFileName {font-size:11px;line-height:1.6;color:#53616b;overflow-wrap:anywhere;min-width:0;}
.home-contact #inquiryRemoveFile {border:0;background:none;padding:8px 0;min-height:36px;color:#173043;text-decoration:underline;text-underline-offset:3px;font-size:11px;cursor:pointer;white-space:nowrap;}
.home-contact .inquiry-privacy {margin:0 0 19px;font-size:11px;line-height:1.7;color:#53616b;}
.home-contact .inquiry-privacy a {color:inherit;text-underline-offset:3px;}
.home-contact .inquiry-submit {--action-surface:#0967d9;--line:#0967d9;color:#fff;min-height:52px;font-size:14px;}
.home-contact .inquiry-submit .action-label {padding:0 22px;}
.home-contact .inquiry-submit .action-arrow {display:grid;place-items:center;flex:0 0 auto;width:52px;min-width:52px;height:52px;border-left:1px solid #ffffff55;}
.home-contact .inquiry-submit .icon {width:22px;height:22px;}
.home-contact .inquiry-submit:disabled {opacity:.7;cursor:wait;}
.home-contact .inquiry-submit:focus-visible {outline:2px solid #0967d9;outline-offset:4px;}
.home-contact #inquiryStatus {margin-top:18px;padding:13px 16px;border-left:2px solid #a63829;background:#fff8f4;color:#723023;font-size:13px;line-height:1.7;}
.home-contact #inquiryStatus[data-state=success] {border-color:#2a6857;background:#e7f0e9;color:#245444;}
.home-contact .inquiry-honeypot {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.home-contact .inquiry-no-js {font-size:13px;line-height:1.7;color:#53616b;}
.home-footer {background:#071d2b;color:#eaf0f2;padding-block:46px 0;}
.home-footer .home-footer-layout {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.55fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);padding-bottom:33px;}
.home-footer .home-footer-logo {display:block;width:200px;max-width:100%;height:auto;}
.home-footer .home-footer-company {margin:21px 0 0;color:#a7bac5;font-size:12px;line-height:1.8;}
.home-footer .home-footer-company strong {display:block;font-weight:550;color:#eaf0f2;margin-bottom:5px;}
.home-footer .home-footer-company address {font-style:normal;}
.home-footer .home-footer-heading {display:block;margin:0 0 12px;font-size:9px;font-weight:600;line-height:1.6;letter-spacing:.11em;text-transform:uppercase;color:#93aab8;}
.home-footer .home-footer-nav a {display:flex;align-items:center;min-height:36px;font-size:13px;line-height:1.5;text-decoration:none;}
.home-footer .home-footer-contact>a {display:flex;align-items:center;min-height:36px;width:fit-content;max-width:100%;font-size:14px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere;}
.home-footer .home-footer-area {margin:17px 0 0;font-size:12px;line-height:1.8;color:#a7bac5;}
.home-footer .home-footer-region .home-footer-area {margin:0;}
.home-footer a:hover {color:#8ccaff;}
.home-footer a:focus-visible {outline:2px solid #8ccaff;outline-offset:4px;}
.home-footer .home-footer-bottom {display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;border-top:1px solid #334a58;color:#a7bac5;font-size:10px;line-height:1.6;}
.home-footer .home-footer-legal {display:flex;align-items:center;gap:26px;flex-wrap:wrap;}
.home-footer .home-footer-legal a {display:inline-flex;align-items:center;min-height:44px;text-decoration:none;}
.home-footer .home-footer-top {display:inline-flex;align-items:center;gap:16px;min-height:44px;text-decoration:none;font-size:11px;white-space:nowrap;}
.home-footer .home-footer-top-icon {display:grid;place-items:center;width:38px;height:38px;border:1px solid #4e6878;flex:0 0 auto;}
.home-footer .home-footer-top-icon .icon {width:19px;height:19px;}
.inquiry-privacy-page {background:#f2f1eb;color:#071c2d;}
.inquiry-privacy-page .privacy-header {display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px;background:#071d2b;color:#eaf0f2;}
.inquiry-privacy-page .privacy-header img {width:180px;height:auto;}
.inquiry-privacy-page .privacy-header>a:last-child {font-size:13px;text-underline-offset:4px;}
.inquiry-privacy-page .privacy-content {max-width:760px;padding-block:60px 72px;}
.inquiry-privacy-page .privacy-content h1 {font-size:clamp(30px,3vw,42px);line-height:1.15;}
.inquiry-privacy-page .privacy-content h2 {font-size:20px;line-height:1.35;letter-spacing:-.02em;margin:28px 0 12px;}
.inquiry-privacy-page .privacy-content p {font-size:14px;line-height:1.85;margin-top:14px;color:#4f5d68;}
.inquiry-privacy-page .privacy-content a {text-underline-offset:3px;}
@media(min-width:701px) and (max-width:1023px) {
  .home-contact {padding-block:56px;}
  .home-contact .inquiry-layout {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px;}
  .home-contact .inquiry-row {grid-template-columns:1fr;gap:0;}
  .home-footer .home-footer-layout {grid-template-columns:1fr 1fr;gap:32px;}
  .home-footer .home-footer-identity {grid-column:1/-1;display:flex;align-items:start;gap:50px;}
  .home-footer .home-footer-company {margin-top:0;}
}
@media(max-width:700px) {
  .home-contact {padding-block:44px;}
  .home-contact .inquiry-marker {gap:16px;font-size:9px;margin-bottom:24px;}
  .home-contact .inquiry-layout {display:block;}
  .home-contact h2 {font-size:clamp(29px,8vw,32px);max-width:19ch;text-wrap:pretty;}
  .home-contact .inquiry-intro>p {font-size:14px;line-height:1.7;margin-top:20px;max-width:none;}
  .home-contact .inquiry-direct {display:flex;flex-wrap:wrap;gap:15px 30px;max-width:none;padding-top:20px;margin-top:23px;}
  .home-contact .inquiry-direct>div+div {margin-top:0;}
  .home-contact .inquiry-direct a {font-size:15px;min-height:34px;}
  .home-contact .inquiry-form {margin-top:30px;}
  .home-contact .inquiry-row {grid-template-columns:1fr;gap:0;}
  .home-contact .inquiry-field {margin-bottom:17px;}
  .home-contact .inquiry-file {margin-bottom:17px;}
  .home-contact .inquiry-submit {width:100%;}
  .home-contact .inquiry-submit .action-label {flex:1;text-align:left;padding-left:18px;}
  .home-footer {padding-top:33px;}
  .home-footer .home-footer-layout {grid-template-columns:minmax(0,1fr);gap:26px;padding-bottom:24px;}
  .home-footer .home-footer-identity {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px;align-items:start;}
  .home-footer .home-footer-logo {width:160px;}
  .home-footer .home-footer-company {margin-top:0;font-size:11px;line-height:1.8;}
  .home-footer .home-footer-heading {margin-bottom:8px;}
  .home-footer .home-footer-nav {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;}
  .home-footer .home-footer-nav a {min-height:38px;}
  .home-footer .home-footer-contact>a {min-height:34px;}
  .home-footer .home-footer-area {margin-top:12px;}
  .home-footer .home-footer-bottom {gap:15px;min-height:75px;padding-block:12px;}
  .home-footer .home-footer-legal {display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:18px;row-gap:0;font-size:9px;}
  .home-footer .home-footer-legal>span:first-child {flex-basis:100%;}
  .home-footer .home-footer-legal a {min-height:30px;white-space:nowrap;}
  .home-footer .home-footer-top {font-size:10px;gap:10px;}
  .inquiry-privacy-page .privacy-header img {width:140px;}
  .inquiry-privacy-page .privacy-content {padding-block:38px 44px;}
}

/* Homepage-only architectural detail in the open column beside the form. */
.hero-mockup-page #kontakt .inquiry-drawing{display:none}
@media(min-width:1024px){
.hero-mockup-page #kontakt .inquiry-drawing{display:block;width:min(100%,420px);margin-top:35px;color:#637e8c;pointer-events:none}
.hero-mockup-page #kontakt .inquiry-drawing svg{display:block;width:100%;height:auto}
}
