
:root{--navy:#1f376f;--navy2:#13254e;--gold:#c99742;--gold2:#e0b663;--cream:#f7f4ee;--ink:#17213a;--muted:#6c7482;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.05}em{font-style:italic;color:var(--gold)}
.header{height:88px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);z-index:20;border-bottom:1px solid rgba(31,55,111,.08)}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--navy)}.brand img{width:46px;height:46px;object-fit:contain}.brand span{display:flex;align-items:baseline;gap:8px}.brand b{font:700 25px Georgia}.brand small{font-size:11px;letter-spacing:.2em}
nav{display:flex;align-items:center;gap:28px}nav a{color:var(--ink);text-decoration:none;font-size:13px}nav a:hover{color:var(--gold)}.nav-cta{border:1px solid var(--gold);padding:11px 18px}.menu{display:none;background:none;border:0;font-size:24px}
.hero{min-height:calc(100vh - 88px);display:grid;grid-template-columns:1.15fr .85fr;align-items:center;padding:7vw 8vw;background:linear-gradient(135deg,#fff 0%,#fff 58%,var(--cream) 58%,var(--cream) 100%);overflow:hidden}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;color:var(--gold);margin-bottom:22px}.hero h1{font-size:clamp(52px,6.4vw,96px);letter-spacing:-.045em;margin-bottom:28px}.lead{max-width:670px;color:var(--muted);font-size:18px}.actions{display:flex;gap:12px;margin-top:38px}.btn{display:inline-block;padding:15px 22px;text-decoration:none;border:1px solid var(--gold);font-weight:700;font-size:13px;letter-spacing:.04em;cursor:pointer}.gold{background:var(--gold);color:#fff}.gold:hover{background:var(--navy);border-color:var(--navy)}.ghost{color:var(--navy);background:#fff}.hero-art{position:relative;display:grid;place-items:center;min-height:480px}.hero-art img{width:min(420px,80%);position:relative;z-index:2;filter:drop-shadow(0 25px 35px rgba(18,36,77,.12))}.halo{position:absolute;width:430px;height:430px;border:1px solid rgba(201,151,66,.28);border-radius:50%}.halo:after{content:"";position:absolute;inset:35px;border:1px solid rgba(31,55,111,.12);border-radius:50%}
.trust{height:88px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:center;gap:38px;text-transform:uppercase;letter-spacing:.18em;font-size:12px}.trust i{width:5px;height:5px;border-radius:50%;background:var(--gold)}
.section{padding:110px 8vw}.intro{background:#fff}.section-head{max-width:760px}.section-head h2{font-size:clamp(42px,5vw,72px);letter-spacing:-.035em}.section-text{max-width:720px;margin:0 0 60px auto;color:var(--muted);font-size:17px}.cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ddd;border-left:1px solid #ddd}.card{padding:38px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;min-height:280px;transition:.35s}.card:hover{background:var(--cream);transform:translateY(-4px)}.card b,.steps b{color:var(--gold);font-size:12px}.card h3{font-family:Georgia;font-size:25px;margin-top:36px}.card p{color:var(--muted);font-size:14px}.card a{color:var(--navy);font-weight:700;text-decoration:none;font-size:13px}
.dark{background:var(--navy2);color:#fff;padding:110px 8vw}.dark .section-head h2{color:#fff}.dark-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:10vw;margin-top:60px}.dark-grid>p{color:#cbd1dc;font-size:17px}.lines div{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.18)}.lines b{color:var(--gold);font-size:11px}
.lawyer{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:center;background:var(--cream)}.portrait{min-height:580px;background:linear-gradient(145deg,#e9e4da,#fff);display:grid;place-items:center;border-bottom:5px solid var(--gold)}.portrait-placeholder{text-align:center;color:#9b978f;letter-spacing:.2em}.portrait-placeholder small{letter-spacing:.08em}.lawyer-copy h2{font-size:clamp(42px,5vw,70px)}.lawyer-copy h3{font:28px Georgia;margin-top:42px;margin-bottom:5px}.role{color:var(--gold);font-size:13px;font-weight:700}.lawyer-copy>p:not(.eyebrow):not(.role):not(.note){color:var(--muted);max-width:600px}.note{font-size:12px;border-left:2px solid var(--gold);padding-left:15px;color:var(--muted);margin-top:30px}
.process{background:#fff}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ddd;margin-top:60px}.steps div{background:#fff;padding:42px}.steps h3{font:24px Georgia;margin-top:30px}.steps p{color:var(--muted);font-size:14px}
.contact{padding:110px 8vw;background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact h2{font-size:clamp(42px,5vw,70px)}.contact-copy>p{max-width:540px;color:var(--muted)}.contact-data{margin-top:50px}.contact-data p{color:var(--navy);font-weight:700}.contact-data small{display:block;color:var(--gold);font-size:10px;letter-spacing:.18em}.form{background:#fff;padding:42px;box-shadow:0 20px 60px rgba(20,35,65,.08)}.form label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;margin-bottom:22px}.form input:not([type=checkbox]),.form textarea{width:100%;border:0;border-bottom:1px solid #cfd2d8;padding:11px 2px;font:15px Arial;outline:none;background:transparent}.form input:focus,.form textarea:focus{border-color:var(--gold)}.check{display:flex!important;gap:10px;font-weight:400!important;letter-spacing:0!important;color:var(--muted)}.check input{margin-top:5px}.check a{color:var(--navy)}.form-note{display:block;color:var(--muted);margin-top:15px}
footer{padding:55px 8vw;background:#101b35;color:#cbd1dc;display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center}footer a{color:#fff;text-decoration:none;margin-right:22px;font-size:12px}.footer-brand{display:flex;align-items:center;gap:12px;color:#fff}.footer-brand img{width:42px;height:42px;object-fit:contain}.footer-brand b{font:24px Georgia}footer small{opacity:.6}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.header{height:74px;padding:0 5vw}.brand small{display:none}.menu{display:block}nav{display:none;position:absolute;top:74px;left:0;right:0;background:#fff;padding:24px 5vw;flex-direction:column;align-items:flex-start;border-bottom:1px solid #ddd}nav.open{display:flex}.hero{grid-template-columns:1fr;padding:70px 6vw;background:linear-gradient(180deg,#fff 0%,#fff 65%,var(--cream) 65%)}.hero-art{min-height:330px}.hero-art img{width:250px}.halo{width:300px;height:300px}.trust{gap:14px;font-size:9px}.section,.dark,.contact{padding:75px 6vw}.cards{grid-template-columns:1fr}.dark-grid,.lawyer,.contact{grid-template-columns:1fr}.portrait{min-height:420px}.steps{grid-template-columns:1fr}footer{grid-template-columns:1fr}.actions{flex-direction:column;align-items:flex-start}}

.quote-band{padding:95px 12vw;text-align:center;background:#fff;position:relative;overflow:hidden}.quote-band:before,.quote-band:after{content:"";position:absolute;top:50%;width:14vw;height:1px;background:var(--gold);opacity:.55}.quote-band:before{left:0}.quote-band:after{right:0}.quote-mark{font:90px Georgia;color:var(--gold);height:55px;line-height:1}.quote-band blockquote{max-width:980px;margin:15px auto 20px;font:italic clamp(30px,4vw,52px)/1.25 Georgia;color:var(--navy2)}.quote-band p{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}

/* Premium refinement v3 */
body{background:#fbfaf7}.header{box-shadow:0 8px 30px rgba(20,35,65,.035)}
.hero{position:relative}.hero:before{content:"";position:absolute;left:8vw;bottom:8%;width:74px;height:1px;background:var(--gold)}
.hero-copy{position:relative;z-index:3}.hero .lead{line-height:1.85}.hero-art img{transition:transform .7s cubic-bezier(.2,.8,.2,1)}.hero-art:hover img{transform:translateY(-8px) scale(1.015)}
.halo{animation:floatHalo 7s ease-in-out infinite}@keyframes floatHalo{50%{transform:translateY(-10px) scale(1.025)}}
.core-label{margin:55px 0 14px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.24em}
.card{position:relative;overflow:hidden;background:#fff}.card:before{content:"";position:absolute;left:0;top:0;width:0;height:3px;background:linear-gradient(90deg,var(--navy),var(--gold));transition:.4s}.card:hover:before{width:100%}
.card.core{background:linear-gradient(145deg,#fff,#faf7f0)}.service-tag{position:absolute;right:26px;top:28px;color:var(--gold);font-size:9px;font-weight:800;letter-spacing:.16em}
.quote-band{position:relative;padding:115px 12vw;text-align:center;background:#fff;overflow:hidden;border-top:1px solid rgba(201,151,66,.18);border-bottom:1px solid rgba(201,151,66,.18)}
.quote-band:before,.quote-band:after{content:"";position:absolute;top:50%;width:13vw;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.quote-band:before{left:0}.quote-band:after{right:0;transform:rotate(180deg)}
.quote-mark{font:100px Georgia;color:rgba(201,151,66,.22);height:55px;line-height:1}
.quote-band blockquote{max-width:980px;margin:10px auto 26px;font:italic clamp(30px,4vw,56px)/1.28 Georgia;color:var(--navy2);letter-spacing:-.025em}
.quote-band>p{margin:0;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.quote-band>p small{font-size:9px;opacity:.75}
.dark{position:relative;overflow:hidden}.dark:after{content:"SB";position:absolute;right:-20px;bottom:-115px;font:240px Georgia;color:rgba(255,255,255,.025);pointer-events:none}
.contact{background:linear-gradient(135deg,#f7f4ee 0%,#f7f4ee 62%,#efe8dc 62%)}.form{border-top:4px solid var(--gold)}
@media(max-width:900px){.quote-band{padding:75px 8vw}.quote-band:before,.quote-band:after{display:none}.service-tag{right:20px}.core-label{margin-top:35px}}

.service-heading{display:grid;grid-template-columns:80px 1fr;gap:28px;align-items:start;margin:60px 0 28px;padding-top:32px;border-top:1px solid rgba(31,55,111,.15)}
.service-heading>span{font:42px Georgia;color:rgba(201,151,66,.55)}.service-heading .eyebrow{margin-bottom:8px}.service-heading h3{font:34px Georgia;margin:0 0 8px;color:var(--navy2)}.service-heading p:last-child{max-width:700px;color:var(--muted)}
.service-cards .core{background:linear-gradient(145deg,#fff,#faf7f0);box-shadow:inset 0 3px 0 rgba(201,151,66,.5)}
@media(max-width:900px){.service-heading{grid-template-columns:48px 1fr}.service-heading>span{font-size:30px}.service-heading h3{font-size:28px}}

/* v5: motto immediately visible */
.top-motto{min-height:58px;padding:10px 6vw;background:var(--navy2);color:#fff;display:flex;align-items:center;justify-content:center;gap:14px;text-align:center;border-bottom:2px solid var(--gold);position:relative;z-index:10}
.top-motto .motto-mark{font:42px/1 Georgia;color:var(--gold);transform:translateY(5px)}
.top-motto p{margin:0;font:italic 18px/1.35 Georgia;letter-spacing:.005em}
.top-motto .motto-author{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);white-space:nowrap}
.top-motto .motto-author small{font-size:8px;opacity:.75}
@media(max-width:700px){.top-motto{padding:12px 5vw;gap:8px;flex-wrap:wrap}.top-motto .motto-mark{display:none}.top-motto p{width:100%;font-size:15px}.top-motto .motto-author{font-size:8px}}

/* v6 Kanzleidaten and cleaner service cards */
.service-heading{grid-template-columns:1fr}.service-cards .card{padding-top:42px}.lines div{align-items:center}
.lawyer-wide{display:block;background:linear-gradient(120deg,var(--cream),#fff)}.lawyer-wide .lawyer-copy{max-width:900px;margin:0 auto}.lawyer-wide .lawyer-copy>p:not(.eyebrow):not(.role):not(.office-note){max-width:780px;font-size:17px;line-height:1.8}
.experience{display:flex;align-items:center;gap:18px;margin:38px 0;padding:24px 0;border-top:1px solid rgba(201,151,66,.35);border-bottom:1px solid rgba(201,151,66,.35);max-width:420px}
.experience strong{font:64px/1 Georgia;color:var(--gold)}.experience span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}
.office-note{max-width:780px;color:var(--navy)!important;background:#fff;padding:22px 26px;border-left:3px solid var(--gold);box-shadow:0 12px 35px rgba(20,35,65,.05)}
.contact-data a{color:var(--navy);text-decoration:none}.contact-data a:hover{color:var(--gold)}

.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important}.form-status{margin-top:14px;font-size:13px}.form-status.success{color:#1f6b45}.form-status.error{color:#9b2c2c}
.cookie-mini{position:fixed;left:22px;bottom:22px;z-index:9999;width:min(430px,calc(100vw - 44px));background:#fff;border:1px solid rgba(31,55,111,.12);box-shadow:0 18px 60px rgba(19,37,78,.16);padding:18px 20px;display:none;gap:16px;align-items:center}.cookie-mini.show{display:flex}.cookie-mini strong{font-family:Georgia;color:var(--navy2)}.cookie-mini p{margin:4px 0 0;font-size:11px;line-height:1.5;color:var(--muted)}.cookie-actions{display:flex;gap:7px;flex-direction:column}.cookie-actions button{border:0;background:var(--navy);color:#fff;padding:8px 12px;font-size:10px;cursor:pointer}.cookie-actions .ghost{background:#fff;color:var(--navy);border:1px solid #ddd}
.cookie-reopen{position:fixed;right:12px;bottom:12px;z-index:9990;border:1px solid #ddd;background:rgba(255,255,255,.94);color:var(--navy);padding:7px 10px;font-size:9px;text-transform:uppercase;cursor:pointer}.cookie-modal{position:fixed;inset:0;z-index:10000;background:rgba(13,25,52,.45);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:20px}.cookie-modal.show{display:flex}.cookie-panel{position:relative;width:min(620px,100%);background:#fff;padding:38px}.cookie-panel h2{font:34px Georgia;color:var(--navy2)}.cookie-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:30px;cursor:pointer}.cookie-row{display:flex;justify-content:space-between;gap:25px;padding:20px 0;border-top:1px solid #eee}.cookie-row p{font-size:12px;color:var(--muted)}.cookie-row>span{font-size:10px;white-space:nowrap;color:var(--gold);font-weight:700;text-transform:uppercase}.cookie-row.muted{opacity:.65}.cookie-legal{font-size:11px}
@media(max-width:600px){.cookie-mini{left:12px;bottom:12px;width:calc(100vw - 24px);flex-direction:column;align-items:stretch}.cookie-mini.show{display:flex}.cookie-actions{flex-direction:row}.cookie-panel{padding:28px 22px}.cookie-row{flex-direction:column;gap:5px}}
