/* Image-led edition: full-width photography, clear readable overlays. */
.image-led .site-header{min-height:112px}.image-led .brand{flex-basis:155px}.image-led .brand img{width:155px}.image-stage{position:relative;isolation:isolate;overflow:hidden;background:#1e302d;color:#fff}.image-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.stage-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,22,27,.74),rgba(9,22,27,.2) 70%),linear-gradient(0deg,rgba(9,22,27,.56),transparent 50%);z-index:-1;pointer-events:none}.visual-hero{min-height:690px;height:calc(100svh - 112px);max-height:1020px;display:flex;align-items:center}.visual-hero>img{object-position:50% 57%}.hero-content{padding-block:70px 140px}.hero-content h1{font-size:clamp(62px,6.6vw,112px);font-weight:500;letter-spacing:-.064em;line-height:1.04;margin:25px 0 30px;color:#fff}.image-stage .eyebrow{color:#f0e7df}.hero-content>p:not(.eyebrow){max-width:490px;font-size:16px;line-height:1.8;color:#e4e7e5}.stage-actions{display:flex;align-items:center;gap:30px;margin-top:32px}.image-stage .button{background:var(--wine);border-color:var(--wine);color:#fff}.image-stage .button:hover{background:#b73655;border-color:#b73655}.stage-link{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;min-height:46px;border-bottom:1px solid #cbd2ce;color:#fff;padding-block:10px}.stage-link span{font-size:21px}.stage-link:hover{color:#fff;border-color:#fff}.hero-bottom{position:absolute;bottom:30px;left:0;right:0;display:flex;justify-content:space-between;gap:30px;font-size:10px;color:#dddeda}.hero-bottom>a{color:#e1e2dc;max-width:290px;text-align:right}.image-led .offer-strip{padding-block:28px}.image-led .offer-strip a{font-size:12px}.rental-section{padding-block:100px 70px}.image-section-heading{display:grid;grid-template-columns:1fr 2fr;gap:50px;align-items:start;margin-bottom:46px}.image-section-heading>.eyebrow{padding-top:10px}.image-section-heading h2{font-size:clamp(37px,4.1vw,65px)}.image-section-heading p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:540px;margin-top:24px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.service-card{min-height:600px;display:flex;align-items:end}.service-card .stage-shade{background:linear-gradient(0deg,rgba(8,22,27,.94),rgba(8,22,27,.52) 45%,rgba(8,22,27,.03) 78%)}.service-card>img{transition:transform .8s;object-position:center}.service-card:hover>img{transform:scale(1.025)}.service-copy{padding:45px 42px 48px;width:100%;max-width:600px}.service-copy h3{font-size:clamp(30px,2.7vw,43px);line-height:1.15;letter-spacing:-.045em;margin:16px 0 20px;color:#fff}.service-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#e1e5e4;max-width:420px}.service-copy .stage-link{margin-top:19px}.service-card .eyebrow{font-size:10px}.project-intro{display:grid;grid-template-columns:1fr 2fr;gap:25px 50px;padding-block:30px 70px}.project-intro>.eyebrow{grid-row:1/3;padding-top:12px}.project-intro>p:last-child{grid-column:2;font-size:15px;color:var(--muted);max-width:570px}.project-stage{height:740px;display:flex;align-items:center}.project-stage>img{object-position:center 50%}.project-stage .stage-shade{background:linear-gradient(90deg,rgba(16,20,20,.84),rgba(16,20,20,.2) 80%)}.project-stage-copy{padding-block:90px}.project-stage-copy h2{color:#fff;font-size:clamp(48px,5.5vw,84px);max-width:860px;line-height:1.08;margin:27px 0}.project-stage-copy>p:not(.eyebrow){font-size:15px;max-width:520px;line-height:1.9;color:#e4e3db}.schreinerei-gallery{padding-block:85px 95px}.gallery-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:35px}.gallery-heading h2{font-size:clamp(40px,4vw,60px);margin-top:23px}.gallery-heading>p{max-width:380px;font-size:13px;color:var(--muted);line-height:1.9}.comparison-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:24px}.comparison-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:17px 0;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:-1px;min-height:48px}.comparison-tabs button[aria-pressed=true]{border-color:var(--wine);color:var(--wine)}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.compare-frame{position:relative;margin:0}.gallery-open{padding:0;border:0;background:var(--navy);display:block;width:100%;position:relative;overflow:hidden;color:white}.compare-open{aspect-ratio:4/3}.gallery-open>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-open:hover>img{transform:scale(1.025)}.compare-frame figcaption{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:13px;font-weight:600;padding:15px 0 5px}.compare-frame figcaption span{font-size:10px;font-weight:400;color:var(--muted)}.compare-frame>.ai-marker{bottom:53px}.zoom-icon{position:absolute;right:20px;top:15px;font-size:25px;text-shadow:0 1px 10px #000;line-height:1.5}.project-gallery{display:grid;grid-template-columns:1fr 1fr .95fr;grid-template-rows:330px 300px;gap:22px;margin-top:42px}.gallery-tile{position:relative;overflow:hidden}.gallery-tile .gallery-open{height:100%}.tile-garten-vision{grid-column:1/3}.tile-treppe-vision{grid-column:3;grid-row:1/3}.gallery-tile-title{position:absolute;bottom:26px;left:26px;right:26px;font-size:22px;letter-spacing:-.03em;line-height:1.35;text-align:left;z-index:1}.gallery-tile .gallery-open:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(7,19,21,.75));pointer-events:none}.gallery-outro{display:flex;justify-content:space-between;gap:40px;align-items:center;padding-top:35px}.gallery-outro p{font-size:14px;line-height:1.9;color:var(--muted)}.skyforest-stage{min-height:720px;height:85svh;max-height:950px;display:flex;align-items:center}.skyforest-stage>img{object-position:center 55%}.skyforest-stage .stage-shade{background:linear-gradient(90deg,rgba(8,24,30,.78),rgba(8,24,30,.15) 80%)}.skyforest-copy{padding-block:80px}.skyforest-copy h2{font-size:clamp(48px,5.4vw,87px);color:white;line-height:1.08;margin:28px 0}.skyforest-copy>p:not(.eyebrow){font-size:15px;color:#e3e7e7;max-width:430px;line-height:1.9;margin-bottom:30px}.image-led .contact-section{padding-block:88px}.site-footer{flex-wrap:wrap;padding-block:28px;row-gap:12px}.site-footer nav{flex-wrap:wrap;align-items:center;gap:23px}.site-footer nav button{background:none;border:0;color:inherit;padding:12px 0;font-size:inherit}.site-footer nav button:hover{color:var(--wine)}
/* Keep the requested visible AI glyph exactly 7px on every photograph. */
.image-stage>.ai-marker{right:12px;bottom:12px}.image-stage>.ai-marker img,.gallery-dialog .ai-marker img{width:7px;height:auto}.service-card>.ai-marker{right:8px;bottom:8px}.gallery-open:focus-visible{outline:3px solid var(--wine);outline-offset:-5px}.gallery-dialog{border:0;background:#111c22;color:#fff;width:min(1440px,96vw);max-width:none;max-height:94svh;padding:55px 30px 20px;overflow:auto}.gallery-dialog::backdrop{background:rgba(5,12,18,.92)}.gallery-close{position:absolute;right:25px;top:8px;display:flex;align-items:center;gap:15px;background:none;border:0;color:white;font-size:11px;min-height:40px}.gallery-close span{font-size:28px}.lightbox-image{position:relative;display:flex;justify-content:center;align-items:center;background:#0c1419;height:calc(90svh - 145px)}.lightbox-image>img{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain}.lightbox-image>.ai-marker{bottom:12px;right:12px}.gallery-dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:13px}.gallery-dialog-bottom p{font-size:12px;text-align:center;line-height:1.7}.gallery-dialog-bottom button{background:none;border:1px solid #72808a;color:#fff;width:44px;height:44px;flex-shrink:0;font-size:24px}.gallery-dialog button:hover{color:#ecc9d3}.gallery-dialog :focus-visible{outline-color:#fff}
/* Same simple choices as Hahnenklee; this site has only one optional service. */
.consent-dialog{width:min(610px,calc(100vw - 36px));max-width:none;max-height:calc(100svh - 36px);border:1px solid #d4d9d5;margin:auto;background:var(--paper);color:var(--ink);padding:0;box-shadow:0 24px 100px #06151f40}.consent-dialog::backdrop{background:rgba(9,25,34,.54);backdrop-filter:blur(3px)}.consent-inner{padding:35px 34px 27px}.consent-inner h2{font-size:35px;letter-spacing:-.05em;margin:13px 0 16px}.consent-inner>p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted)}.consent-actions{display:flex;gap:9px;margin-top:25px}.consent-actions button{flex:1;border:1px solid var(--navy);background:transparent;color:var(--navy);padding:12px 10px;min-height:46px;font-size:11px;font-weight:600;line-height:1.5}.consent-actions button:hover{background:var(--navy);color:white}.consent-links{display:flex;gap:20px;align-items:center;margin-top:15px;font-size:10px;color:var(--muted)}.consent-links>a,.consent-links>button{padding-block:10px}.consent-links>button{margin-left:auto;background:none;border:0;color:inherit;font:inherit}.consent-options{margin-top:23px;border-top:1px solid var(--line)}.consent-option{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 0;border-bottom:1px solid var(--line)}.consent-option strong{display:block;font-size:12px}.consent-option small{display:block;font-size:10px;color:var(--muted);margin-top:5px;line-height:1.75;max-width:330px}.always-on{font-size:10px;white-space:nowrap;color:var(--muted)}.consent-option input{appearance:none;position:relative;flex-shrink:0;width:40px;height:23px;border-radius:20px;border:1px solid #8c979d;background:#c3c9c8;margin:0;cursor:pointer}.consent-option input:before{content:"";display:block;position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:white;transition:transform .15s}.consent-option input:checked{background:var(--navy);border-color:var(--navy)}.consent-option input:checked:before{transform:translateX(17px)}.consent-provider{font-size:10px;padding-top:12px}.consent-provider a{text-decoration:underline;text-underline-offset:3px}.legal-page .consent-inner h2{margin:13px 0 16px;font-size:35px}.legal-page .legal-download{margin-block:24px}.legal-page .legal-summary{padding:22px;border-left:2px solid var(--wine);background:var(--soft);margin:25px 0}.legal-page ol,.legal-page ul{font-size:14px;color:var(--muted);padding-left:23px}.legal-page li{margin-block:10px}.legal-page .legal-meta{font-size:11px}.legal-page .source-links{font-size:11px}.legal-page .source-links a{overflow-wrap:anywhere}
@media(max-width:1150px){.visual-hero{min-height:630px}.service-card{min-height:530px}.service-copy{padding:32px}.service-copy h3{font-size:32px}.project-gallery{grid-template-rows:280px 250px}.gallery-tile-title{font-size:18px;left:20px;bottom:24px}.project-stage{height:650px}.image-section-heading,.project-intro{grid-template-columns:.8fr 2fr;gap:30px}.skyforest-stage{min-height:640px}.site-footer nav{gap:17px}}
@media(max-width:850px){.visual-hero{min-height:650px;height:80svh}.hero-content h1{font-size:70px}.hero-content>p:not(.eyebrow){font-size:15px}.hero-bottom>a{max-width:250px}.image-section-heading,.project-intro{grid-template-columns:1fr;gap:22px}.project-intro>.eyebrow{grid-row:auto}.project-intro>p:last-child{grid-column:auto}.rental-section{padding-block:65px 45px}.project-intro{padding-block:25px 50px}.service-grid{gap:16px}.service-card{min-height:520px}.service-copy{padding:26px}.service-copy h3{font-size:28px}.service-copy>p:not(.eyebrow){font-size:12px}.service-copy .eyebrow{font-size:9px}.project-stage-copy>p:not(.eyebrow){max-width:490px}.gallery-heading{gap:35px}.gallery-heading>p{max-width:300px;font-size:12px}.comparison-grid{gap:16px}.compare-frame figcaption{align-items:start;flex-direction:column;gap:2px}.compare-frame>.ai-marker{bottom:65px}.project-gallery{grid-template-rows:230px 220px;gap:16px}.gallery-tile-title{font-size:17px;left:17px;right:17px}.schreinerei-gallery{padding-block:60px}.gallery-outro p{font-size:12px}.skyforest-copy h2{font-size:58px}.skyforest-copy>p:not(.eyebrow){font-size:14px}.image-led .contact-section{padding-block:60px}}
@media(max-width:600px){.image-led .site-header{min-height:100px;padding-bottom:12px}.image-led .brand{flex-basis:126px}.image-led .brand img{width:126px}.visual-hero{min-height:620px;height:calc(100svh - 146px);max-height:800px;align-items:center}.visual-hero>img{object-position:48% center}.stage-shade{background:linear-gradient(90deg,rgba(8,23,29,.65),rgba(8,23,29,.3)),linear-gradient(0deg,rgba(8,23,29,.6),transparent 80%)}.hero-content{padding-block:45px 125px}.hero-content h1{font-size:clamp(39px,11.6vw,65px);line-height:1.08;margin:23px 0}.hero-content>.eyebrow{font-size:8px}.hero-content>p:not(.eyebrow){font-size:13px;line-height:1.85;max-width:290px}.hero-content>p br{display:none}.stage-actions{align-items:start;flex-direction:column;gap:13px;margin-top:25px}.stage-actions .button{font-size:11px;min-height:49px;padding:13px 18px}.stage-link{font-size:11px;min-height:42px;gap:24px}.hero-bottom{bottom:29px;flex-direction:column;gap:6px;font-size:8px}.hero-bottom>a{text-align:left;max-width:270px;line-height:1.8}.image-led .offer-strip{padding-block:18px;gap:8px 18px}.image-led .offer-strip a{font-size:10px;min-height:35px}.rental-section{padding-block:48px 35px}.image-section-heading{gap:16px;margin-bottom:28px}.image-section-heading h2{font-size:32px}.image-section-heading p:not(.eyebrow){font-size:13px;margin-top:20px;line-height:1.9}.service-grid{grid-template-columns:1fr;gap:18px}.service-card{min-height:500px}.service-copy{padding:28px 25px 34px}.service-copy h3{font-size:30px;margin-block:16px}.service-copy>p:not(.eyebrow){font-size:13px;line-height:1.85}.service-copy .stage-link{margin-top:15px}.service-card .stage-shade{background:linear-gradient(0deg,rgba(8,22,27,.94),rgba(8,22,27,.62) 45%,rgba(8,22,27,.02) 90%)}.project-intro{padding-block:12px 42px;gap:17px}.project-intro h2{font-size:34px}.project-intro>p:last-child{font-size:13px;line-height:1.9}.project-stage{height:auto;min-height:650px}.project-stage>img{object-position:49% center}.project-stage .stage-shade{background:linear-gradient(90deg,rgba(16,20,20,.74),rgba(16,20,20,.28)),linear-gradient(0deg,rgba(16,20,20,.55),transparent)}.project-stage-copy{padding-block:65px}.project-stage-copy h2{font-size:clamp(37px,10.2vw,60px);line-height:1.1;margin-block:24px}.project-stage-copy>p:not(.eyebrow){font-size:13px;line-height:1.9}.project-stage-copy .stage-actions{margin-top:26px}.schreinerei-gallery{padding-block:48px 50px}.gallery-heading{display:block;margin-bottom:25px}.gallery-heading h2{font-size:36px;margin-top:19px}.gallery-heading>p{max-width:none;font-size:12px;margin-top:20px}.comparison-tabs{gap:23px;margin-bottom:18px}.comparison-tabs button{font-size:10px;padding-block:13px}.comparison-grid{grid-template-columns:1fr;gap:23px}.compare-open{aspect-ratio:4/3}.compare-frame figcaption{flex-direction:row;align-items:center;padding-top:12px;font-size:12px}.compare-frame figcaption span{font-size:9px}.compare-frame>.ai-marker{bottom:37px;right:2.4px}.project-gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 260px 250px;gap:14px;margin-top:32px}.tile-garten-vision{grid-column:1/3;grid-row:auto}.tile-treppe-vision{grid-column:2;grid-row:2/4}.tile-baustelle{grid-column:1;grid-row:2}.tile-fassade-vision{grid-column:1;grid-row:3}.gallery-tile-title{font-size:15px;left:14px;right:14px;bottom:29px}.zoom-icon{font-size:22px;right:13px;top:10px}.gallery-outro{flex-direction:column;align-items:start;gap:18px;padding-top:24px}.skyforest-stage{min-height:670px;height:auto}.skyforest-stage>img{object-position:54% center}.skyforest-stage .stage-shade{background:linear-gradient(90deg,rgba(8,24,30,.72),rgba(8,24,30,.25)),linear-gradient(0deg,rgba(8,24,30,.35),transparent)}.skyforest-copy{padding-block:70px}.skyforest-copy h2{font-size:clamp(39px,10.2vw,60px);line-height:1.12;margin-block:24px}.skyforest-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:310px}.skyforest-copy .button{font-size:11px}.image-stage>.ai-marker{right:2.4px;bottom:2.4px}.image-led .contact-section{padding-block:48px}.site-footer nav{gap:4px 18px}.site-footer nav button,.site-footer nav a{min-height:40px}.gallery-dialog{width:100vw;max-width:100vw;max-height:100svh;height:100svh;padding:56px 12px 12px;margin:0}.lightbox-image{height:calc(100svh - 165px)}.gallery-close{right:15px}.gallery-dialog-bottom{gap:12px}.gallery-dialog-bottom p{font-size:10px}.gallery-dialog-bottom button{width:42px;height:42px}.consent-inner{padding:26px 23px 21px}.consent-dialog{width:calc(100vw - 28px);max-height:calc(100svh - 28px)}.consent-inner h2,.legal-page .consent-inner h2{font-size:29px}.consent-inner>p:not(.eyebrow){font-size:11px;line-height:1.9}.consent-actions{flex-direction:column;gap:8px;margin-top:20px}.consent-actions button{min-height:44px;font-size:11px}.consent-option{gap:18px}.consent-option small{font-size:10px}.consent-links{font-size:10px}.always-on{font-size:9px}.legal-page ol,.legal-page ul{font-size:13px}.legal-page .legal-summary{padding:16px}}
@media(prefers-reduced-motion:reduce){.service-card:hover>img,.gallery-open:hover>img{transform:none}}
.lightbox-image{width:fit-content;max-width:100%;height:auto;margin-inline:auto}.lightbox-image>img{max-height:calc(90svh - 145px);max-width:100%;height:auto;width:auto}.legal-page h1{overflow-wrap:anywhere}.legal-date{font-size:12px}.withdrawal-form{border:1px solid var(--line);padding:24px;margin-top:24px}
@media(max-width:600px){.lightbox-image>img{max-height:calc(100svh - 165px)}.withdrawal-form{padding:18px}.legal-page .legal-download{white-space:normal;line-height:1.6}}
@media print{.site-header,.site-footer,.consent-dialog,.gallery-dialog,.legal-download{display:none!important}.legal-page{background:#fff}.legal-page main{max-width:none;padding:0}.legal-page h2{break-after:avoid}.legal-page p{orphans:3;widows:3}.legal-page .page-shell{width:100%}}
