:root{--navy:#0b2f55;--blue:#145f9c;--sky:#eaf3f9;--white:#fff;--ink:#132231;--muted:#63717d;--line:#d8e1e8;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"DM Sans",Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Manrope",Arial,sans-serif;line-height:1.08;letter-spacing:-.035em}h2{font-size:clamp(2.1rem,4.2vw,4rem);font-weight:600}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - var(--max))/2));background:#fff;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--navy);color:white;font:700 21px/1 Manrope}.brand-name{font:500 21px/1 Manrope;letter-spacing:-.04em}.brand-name b{color:var(--blue)}nav{display:flex;align-items:center;gap:38px;font-size:.92rem;font-weight:500}nav a:not(.nav-cta):hover{color:var(--blue)}.nav-cta{padding:12px 20px;border:1px solid var(--navy);border-radius:4px}.nav-cta:hover{background:var(--navy);color:white}.menu-button{display:none;border:0;background:none;padding:10px}.menu-button span:not(.sr-only){display:block;width:24px;height:2px;background:var(--navy);margin:5px}.hero{min-height:calc(100vh - 88px);position:relative;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,30,52,.9) 0%,rgba(9,39,68,.7) 35%,rgba(9,35,58,.12) 66%)}.hero-copy{position:relative;width:min(var(--max),calc(100% - 64px));margin:0 auto;color:#fff;padding:64px 0}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:600;color:var(--blue);margin-bottom:28px}.hero .eyebrow{color:#abd7f1}.hero h1{font-size:clamp(2.7rem,5.7vw,5.8rem);font-weight:500;max-width:940px;margin-bottom:28px}.hero h1 em{font-family:Georgia,serif;font-weight:400}.lead{font-size:clamp(1.05rem,1.5vw,1.25rem);max-width:570px;color:#e1eaf0}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:42px}.button{display:inline-flex;padding:15px 24px;border-radius:4px;font-weight:600}.button-primary{background:white;color:var(--navy)}.button-primary:hover{background:#dcecf6}.text-link{font-weight:600}.text-link span{margin-left:7px}.hero-note{position:absolute;right:max(32px,calc((100vw - var(--max))/2));bottom:36px;color:white;display:flex;gap:14px;align-items:flex-start;font-size:.88rem}.hero-note span{color:#9ed0ed;font-weight:600}.hero-note p{margin:0;line-height:1.45}.intro,.process{max-width:var(--max);margin:0 auto;padding:130px 32px;display:grid;grid-template-columns:1fr 2fr;gap:80px}.intro h2{margin-bottom:32px}.intro>div>p{max-width:700px;color:var(--muted);font-size:1.12rem}.services{background:var(--navy);color:#fff;padding:120px max(32px,calc((100vw - var(--max))/2))}.section-kicker.light{color:#8ec3e4}.section-head{display:flex;justify-content:space-between;gap:70px;align-items:end}.section-head h2{margin-bottom:0}.section-head>p{max-width:390px;color:#b9c8d5}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:72px;border-top:1px solid #365574}.service-grid article{padding:38px 36px 15px 0;border-right:1px solid #365574;margin-right:36px;position:relative}.service-grid article:last-child{border:0;margin-right:0}.service-grid article>span{position:absolute;right:36px;color:#7ca9c7;font-size:.78rem}.service-icon{font-size:2.3rem;color:#8ec3e4;margin:25px 0 42px}.service-grid h3{font-size:1.5rem}.service-grid p{color:#b9c8d5;min-height:76px}.service-grid a{display:inline-block;margin-top:20px;font-weight:600;font-size:.9rem}.process-title{position:sticky;top:130px;align-self:start}.process ol{list-style:none;margin:0;padding:0}.process li{display:grid;grid-template-columns:62px 1fr;gap:10px;border-top:1px solid var(--line);padding:30px 0}.process li>span{color:var(--blue);font-size:.8rem;font-weight:600}.process h3{font-size:1.35rem;margin-bottom:10px}.process li p{color:var(--muted);margin:0;max-width:520px}.contact{text-align:center;background:var(--blue);color:#fff;padding:110px 30px}.contact h2{font-size:clamp(2.6rem,5vw,4.8rem);margin-bottom:25px}.contact>p:not(.section-kicker){color:#d8ebf6;font-size:1.1rem}.button-white{background:#fff;color:var(--navy);margin-top:20px}.button-white:hover{background:var(--sky)}footer{max-width:var(--max);margin:auto;padding:60px 32px 35px;display:grid;grid-template-columns:1.2fr 1.5fr 1fr auto;align-items:center;gap:35px;color:var(--muted)}.footer-brand{color:var(--ink)}footer p,footer small{margin:0}.footer-links{display:flex;gap:24px}.footer-links a:hover{color:var(--blue)}
@media(max-width:800px){.site-header{height:72px;padding:0 20px}.menu-button{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;padding:24px;background:white;box-shadow:0 12px 24px #09233d20;flex-direction:column;align-items:stretch;gap:6px}nav.open{display:flex}nav a{padding:12px}.nav-cta{text-align:center;margin-top:8px}.hero{min-height:720px}.hero-copy{width:calc(100% - 40px);padding-bottom:150px}.hero-shade{background:linear-gradient(90deg,rgba(7,30,52,.88),rgba(7,30,52,.4))}.hero h1{font-size:clamp(2.6rem,12vw,4.2rem)}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-note{left:20px;right:auto}.intro,.process{padding:85px 24px;grid-template-columns:1fr;gap:25px}.section-head{display:block}.section-head>p{margin-top:24px}.services{padding:85px 24px}.service-grid{grid-template-columns:1fr}.service-grid article{border-right:0;border-bottom:1px solid #365574;margin:0;padding:32px 0}.service-grid article:last-child{border-bottom:0}.service-grid p{min-height:auto}.process-title{position:static}.contact{padding:85px 24px}footer{grid-template-columns:1fr;padding:48px 24px;gap:22px}.footer-links{order:4}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.broker{display:grid;grid-template-columns:1.15fr .85fr;min-height:620px;background:var(--sky)}.broker-photo{min-height:560px;overflow:hidden}.broker-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.broker-copy{padding:100px max(32px,calc((100vw - var(--max))/2));padding-left:clamp(45px,6vw,95px);align-self:center}.broker-copy h2{margin-bottom:28px}.broker-copy>p:not(.section-kicker){max-width:520px;color:var(--muted);font-size:1.08rem}.broker-contact{display:flex;flex-direction:column;gap:7px;margin-top:32px;font-weight:600;color:var(--navy)}.broker-contact a:hover{color:var(--blue)}.legal{padding:90px max(32px,calc((100vw - var(--max))/2));background:#f5f8fa}.legal-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:60px;border-top:1px solid var(--line);padding-top:38px}.legal h2{font-size:clamp(2rem,3vw,3.2rem);margin-bottom:10px}.legal h3{font-size:1rem;letter-spacing:0;margin-bottom:13px}.legal p,.legal address{font-style:normal;color:var(--muted);margin:0}.legal a{color:var(--blue)}
@media(max-width:800px){.broker{grid-template-columns:1fr}.broker-photo{min-height:440px}.broker-copy{padding:70px 24px}.legal{padding:70px 24px}.legal-grid{grid-template-columns:1fr;gap:35px}}
.image-credit{position:absolute;left:12px;bottom:8px;color:rgba(255,255,255,.72);font-size:.72rem;z-index:2}.image-credit:hover{color:#fff}
.broker-photo picture{display:block;width:100%;height:100%}.legal .permit{margin-top:18px;color:var(--ink)}
@media(max-width:800px){.broker-photo{min-height:560px}.broker-photo img{object-position:center 35%}}

/* Photos support the content of each section. */
.intro{grid-template-columns:1fr 1.6fr;align-items:center}
.intro-visual img{display:block;width:100%;height:auto;border-radius:4px}
.broker{grid-template-columns:1fr 1fr;min-height:0}
.broker-photo{min-height:0;display:flex;align-items:center;background:#244b48}
.broker-photo img{display:block;width:100%;height:auto;object-fit:contain}
.broker-copy{padding-top:70px;padding-bottom:70px;min-width:0}
.broker-contact a,.legal a{overflow-wrap:anywhere}
.services .section-head{align-items:center}
.services-intro{display:grid;grid-template-columns:140px minmax(0,250px);gap:24px;align-items:center;flex-shrink:0}
.services-intro img{width:140px;height:auto;display:block;border-radius:4px}
.services-intro p{color:#b9c8d5;margin:0}
.process-title{position:static}
.process-photo{display:block;width:100%;max-width:280px;height:auto;border-radius:4px;margin-top:32px}
.contact{display:grid;grid-template-columns:280px minmax(0,660px);gap:clamp(32px,6vw,88px);align-items:center;justify-content:center;text-align:left;padding-left:32px;padding-right:32px}
.contact-photo{display:block;width:100%;height:auto;border-radius:4px}
.contact-copy>p:not(.section-kicker){color:#d8ebf6;font-size:1.1rem}
@media(max-width:1050px){.services .section-head{display:block}.services-intro{margin-top:32px;max-width:520px;grid-template-columns:120px 1fr}.services-intro img{width:120px}}
@media(max-width:800px){.intro{grid-template-columns:1fr}.intro-visual img{max-width:520px}.broker{grid-template-columns:1fr}.broker-photo{min-height:0}.broker-photo img{height:auto}.broker-copy{padding:55px 24px}.process-photo{max-width:240px}.contact{grid-template-columns:1fr;padding:70px 24px;gap:32px}.contact-photo{max-width:240px}.contact-copy{min-width:0}.contact h2{font-size:clamp(2.3rem,10vw,4rem)}}

/* Immobilienverkauf */
nav a[aria-current="page"]{color:var(--blue);text-decoration:underline;text-underline-offset:6px}
.sales-heading{background:var(--sky);padding:48px max(24px,calc((100vw - 1120px)/2)) 85px}
.sales-back{display:inline-block;color:var(--muted);font-size:.9rem;margin-bottom:52px}
.sales-heading h1{font-size:clamp(2.3rem,4.5vw,4.6rem);font-weight:500;line-height:1.15;margin-bottom:32px}
.sales-heading h1 em{font-family:Georgia,serif;font-weight:400;color:var(--blue)}
.sales-lead{max-width:790px;font-size:1.15rem;margin:0;color:#465b6a}
.sales-content{max-width:1040px;padding:40px 24px;margin:auto}
.sales-section{display:grid;grid-template-columns:70px minmax(0,1fr);gap:30px;padding:65px 0;border-bottom:1px solid var(--line)}
.sales-section:last-child{border-bottom:0}
.sales-number{font-size:.9rem;color:var(--blue);padding-top:8px}
.sales-section h2,.sales-personal h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.2;margin-bottom:26px}
.sales-section p,.sales-personal p:not(.section-kicker){color:#4d606d;font-size:1.08rem;line-height:1.8}
.sales-section p:last-child{margin-bottom:0}.sales-section strong{color:var(--navy)}
.sales-personal{max-width:1240px;margin:0 auto;padding:35px 24px 100px;display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:center}
.sales-personal img{width:100%;height:auto;display:block;border-radius:4px}
.sales-cta{text-align:center;background:var(--blue);color:#fff;padding:80px 24px}
.sales-cta h2{font-size:clamp(2rem,3.5vw,3.4rem);max-width:850px;margin:0 auto 20px}.sales-cta p{font-size:1.15rem;margin-bottom:12px}
@media(max-width:800px){.sales-heading{padding-top:30px;padding-bottom:55px}.sales-back{margin-bottom:35px}.sales-heading h1{font-size:clamp(2rem,7vw,3.4rem)}.sales-content{padding-top:5px;padding-bottom:5px}.sales-section{grid-template-columns:1fr;gap:12px;padding:42px 0}.sales-personal{grid-template-columns:1fr;gap:32px;padding-top:30px;padding-bottom:55px}.sales-personal img{max-width:480px}.sales-cta{padding:60px 24px}}

@media(min-width:801px) and (max-width:1100px){.site-header{padding:0 20px}nav{gap:18px;font-size:.875rem}.brand{gap:8px}.brand-name{font-size:19px}}

/* Keep the full width of the telephone portrait; trim only the empty ceiling. */
.contact-photo{aspect-ratio:853/1080;object-fit:cover;object-position:center bottom}
