/*
Theme Name: Baurecht Ostsee
Theme URI: https://baurecht-ostsee.de
Author: Helena Jakobs und Alexander Jakobs
Description: Individuelles Block-Theme für Baurecht Ostsee mit Startinhalten, lokaler Schrift und Kontaktformular. Einrichtung unter Design > Baurecht Ostsee.
Version: 1.1.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: baurecht-ostsee
Tags: full-site-editing, block-patterns, custom-colors, custom-logo, editor-style
*/
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url('assets/manrope.ttf') format('truetype')}
:root{--navy:var(--wp--preset--color--navy,#103447);--petrol:var(--wp--preset--color--petrol,#175a68);--blue:var(--wp--preset--color--blue,#477486);--sand:var(--wp--preset--color--sand,#f4f1eb);--ink:var(--wp--preset--color--ink,#24343a);--line:#d8e2e3;--muted:#4b646d;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:#fff;font-family:Manrope,Arial,sans-serif;line-height:1.65;font-size:18px}h1,h2,h3,h4{color:var(--navy);line-height:1.17;letter-spacing:-.035em;font-weight:600}h1{font-size:clamp(2.7rem,5.4vw,5rem);margin:0 0 26px}h2{font-size:clamp(2rem,3.1vw,3rem);margin:0 0 24px}h3{font-size:1.5rem;margin:0 0 15px}p{margin:0 0 22px}a{color:var(--petrol);text-underline-offset:4px}a:hover{color:var(--navy)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ae6926;outline-offset:5px}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.wp-site-blocks{padding:0}.wp-site-blocks>*,.wp-block-template-part{margin-block-start:0}.wp-block-group{box-sizing:border-box}.bo-wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.bo-section{padding-block:88px}.bo-sand{background:var(--sand)}.bo-soft{background:#eef4f4}.bo-eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800;color:var(--petrol);margin-bottom:20px}.bo-lead{font-size:clamp(1.13rem,1.6vw,1.35rem);line-height:1.65}.bo-small{font-size:14px;line-height:1.7;color:var(--muted)}.bo-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.bo-grid>*{min-width:0;margin-block-start:0}.bo-three{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.bo-three>*{min-width:0;margin-block-start:0}.bo-intro{max-width:760px;margin-bottom:42px}.bo-button,.wp-block-button__link{display:inline-flex;gap:14px;align-items:center;justify-content:center;min-height:50px;padding:13px 23px;background:var(--petrol);color:white;border:1px solid var(--petrol);border-radius:3px;font-size:15px;font-weight:700;text-decoration:none;line-height:1.5;transition:background .15s,transform .15s}.bo-button:hover,.wp-block-button__link:hover{background:var(--navy);color:#fff;border-color:var(--navy)}.bo-button.secondary,.is-style-outline .wp-block-button__link{background:transparent;color:var(--petrol);border:1px solid #9bb0b6}.bo-buttons,.wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0}.bo-header{border-bottom:1px solid #e4e9e8;background:white}.bo-header-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:114px}.bo-brand{display:flex;align-items:center;gap:18px;text-decoration:none}.bo-logo-crop{position:relative;width:129px;height:100px;overflow:hidden;display:block;flex-shrink:0}.bo-logo-crop img{position:absolute;max-width:none;width:186px;height:186px;left:-27px;top:-44px}.bo-brand-tag{font-size:10px;font-weight:700;letter-spacing:.12em;line-height:1.8;text-transform:uppercase;border-left:1px solid var(--line);padding-left:18px;color:var(--muted)}.bo-nav{display:flex;align-items:center;gap:26px}.bo-nav a{font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.bo-nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}.bo-nav .bo-button{font-size:13px;padding:11px 18px;min-height:44px}.bo-menu-toggle{display:none;border:1px solid var(--line);padding:10px 15px;background:white;color:var(--navy);border-radius:3px;min-height:44px}.bo-skip{position:fixed;top:-100px;left:20px;background:var(--navy);color:white;padding:15px;z-index:10000}.bo-skip:focus{top:20px;color:white}.bo-hero{background:linear-gradient(110deg,#f9f8f5 0%,#f4f1eb 70%,#eaf0ef 100%);padding:68px 0 60px}.bo-hero-grid{display:grid;grid-template-columns:1.17fr 1fr;gap:68px;align-items:center}.bo-hero-grid>*{min-width:0;margin:0}.bo-hero h1{max-width:630px}.bo-hero-copy .bo-lead{max-width:590px}.bo-location{font-size:12px;color:var(--muted);padding-top:20px;border-top:1px solid #cdd8d7;max-width:530px;margin:27px 0 0}.bo-portrait{position:relative;background:#d8e4e5;aspect-ratio:4/4.55;border-radius:3px 3px 70px 3px;overflow:hidden;isolation:isolate}.bo-portrait img{height:100%;width:100%;object-fit:cover;object-position:center 30%;display:block}.bo-portrait-caption{position:absolute;bottom:20px;left:20px;right:20px;background:#fff;padding:20px 24px;box-shadow:0 5px 28px #10344710}.bo-portrait-caption strong{display:block;font-size:20px;color:var(--navy)}.bo-portrait-caption span{font-size:12px;color:var(--muted)}.bo-maritime{width:100%;height:100%;display:block}.bo-trust{border-bottom:1px solid var(--line);padding:23px 0}.bo-trust .bo-wrap{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;font-size:12px;color:var(--muted);font-weight:600}.bo-trust span:before{content:'—';color:var(--petrol);margin-right:10px}.bo-services{gap:20px}.bo-service-card{padding:34px;border:1px solid var(--line);border-radius:3px;background:white;transition:box-shadow .15s}.bo-service-card:hover{box-shadow:0 10px 30px #10344709}.bo-service-card .bo-eyebrow{margin-bottom:23px;color:var(--blue)}.bo-service-card p{font-size:16px;max-width:500px}.bo-service-card a{font-size:14px;font-weight:800}.bo-service-card h3 a{font-size:inherit;text-decoration:none;color:var(--navy);font-weight:600}.bo-profile-grid{align-items:start;gap:80px}.bo-profile-title{font-size:clamp(2rem,3vw,2.8rem)}.bo-steps{counter-reset:step}.bo-step{border-top:1px solid #a9bcbc;padding-top:26px}.bo-step .bo-eyebrow{font-size:16px;letter-spacing:0}.bo-step p{font-size:16px}.bo-region-box{background:#dce8e8;padding:48px;border-radius:3px;display:flex;flex-direction:column;justify-content:center;min-height:340px}.bo-region-box p:last-child{margin-bottom:0}.bo-place{display:block;color:var(--navy);font-size:27px;padding:10px 0;border-bottom:1px solid #b3c8ca;letter-spacing:-.025em}.bo-region-box .bo-eyebrow{margin-bottom:13px}.bo-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.bo-post-card{border-top:3px solid var(--petrol);padding:26px 0 0}.bo-post-card h3{font-size:22px;line-height:1.4;letter-spacing:-.025em}.bo-post-card h3 a{text-decoration:none;color:var(--navy)}.bo-post-card p{font-size:15px}.bo-post-card .bo-small{font-size:12px}.bo-cta{background:var(--navy);color:white;padding:62px 0}.bo-cta h2,.bo-cta h3,.bo-cta a{color:white}.bo-cta p{color:#d8e5e8}.bo-cta .bo-grid{align-items:center;grid-template-columns:1.6fr 1fr}.bo-cta .bo-buttons{justify-content:flex-end}.bo-cta .bo-button{background:white;color:var(--navy);border-color:white}.bo-footer{background:#f8f8f5;padding:58px 0 22px}.bo-footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:40px}.bo-footer strong{font-size:16px;color:var(--navy)}.bo-footer p,.bo-footer a{font-size:13px}.bo-footer a{display:inline-block;margin-bottom:7px}.bo-footer-bottom{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;font-size:11px;color:var(--muted)}.bo-footer-legal{display:flex;gap:22px}.bo-footer-legal a{font-size:12px}.bo-page-head{padding:64px 0 54px;background:var(--sand)}.bo-page-head h1{font-size:clamp(2.3rem,4.5vw,3.7rem);max-width:880px;margin-bottom:22px}.bo-page-head .bo-lead{max-width:800px}.bo-breadcrumb{font-size:12px;margin-bottom:25px}.bo-reading{max-width:760px;margin-inline:auto}.bo-reading h2{font-size:30px;margin-top:45px}.bo-reading h3{margin-top:32px}.bo-reading ul{padding-left:25px;margin-bottom:30px}.bo-reading li{padding-left:5px;margin-bottom:12px}.bo-reading a{text-decoration:underline}.bo-reading>.wp-block-group{margin-block:30px}.bo-note{background:var(--sand);padding:26px;border-left:3px solid var(--petrol);margin:32px 0}.bo-note p:last-child{margin:0}.bo-article-header{padding:64px 0 30px}.bo-article-header h1{font-size:clamp(2.2rem,4.2vw,3.5rem)}.bo-article-content{padding-bottom:80px}.bo-article-meta{font-size:13px;color:var(--muted);margin:24px 0}.bo-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.bo-field.full{grid-column:1/-1}.bo-field label{display:block;font-size:14px;font-weight:700;margin-bottom:8px;color:var(--navy)}.bo-field input,.bo-field textarea,.bo-field select{width:100%;padding:13px 14px;border:1px solid #a7b9bd;border-radius:2px;background:white;color:var(--ink);font-size:16px;min-height:49px}.bo-field textarea{min-height:155px;resize:vertical}.bo-field small{font-size:12px;color:var(--muted)}.bo-form-note{font-size:13px;color:var(--muted);margin-top:24px}.bo-form-message{padding:23px;background:#e9f3ed;border-left:4px solid #286645;margin-bottom:28px}.bo-form-error{background:#fff0ec;border-color:#963b2c}.bo-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.bo-contact-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:70px}.bo-contact-aside{padding:30px;background:var(--sand);align-self:start}.bo-contact-aside p,.bo-contact-aside a{font-size:15px}.bo-empty{padding:25px 0}.bo-pagination{margin:40px 0}.bo-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;border:1px solid var(--line);margin:3px}.bo-pagination .current{background:var(--petrol);color:white}.bo-screen-reader,.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bo-search form{display:flex;gap:10px}.bo-search input[type=search]{width:100%;padding:13px;border:1px solid #a7b9bd;min-width:0}.bo-search button{border:0}.wp-block-post-content{margin:0}.wp-block-post-title a{text-decoration:none}.wp-block-post-content>.bo-section,.wp-block-post-content>.bo-hero,.wp-block-post-content>.bo-trust,.wp-block-post-content>.bo-page-head,.wp-block-post-content>.bo-cta{margin-block:0}.wp-block-separator{border:0;border-top:1px solid var(--line);margin:35px 0}.editor-styles-wrapper .bo-section{padding-block:50px}.editor-styles-wrapper .bo-wrap{max-width:1160px}.editor-styles-wrapper .bo-header a,.editor-styles-wrapper .bo-footer a{pointer-events:none}
@media(min-width:1500px){.bo-hero{padding-block:80px}.bo-hero h1{font-size:80px}}
@media(max-width:1050px){.bo-brand-tag{display:none}.bo-nav{gap:18px}.bo-hero-grid{gap:38px}.bo-hero h1{font-size:58px}.bo-profile-grid{gap:42px}.bo-contact-layout{gap:35px}}
@media(max-width:800px){.bo-wrap{width:calc(100% - 40px)}.bo-header-inner{min-height:94px;position:relative;flex-wrap:wrap;padding-block:6px}.bo-logo-crop{width:106px;height:80px}.bo-logo-crop img{width:154px;height:154px;left:-23px;top:-37px}.bo-menu-toggle{display:block}.bo-nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:16px}.bo-js .bo-nav{display:none}.bo-js .bo-nav.is-open{display:flex}.bo-nav a{padding:13px 4px;font-size:16px}.bo-nav .bo-button{margin-top:8px;font-size:15px}.bo-hero{padding:43px 0}.bo-hero-grid{grid-template-columns:1fr;gap:40px}.bo-hero h1{font-size:clamp(43px,9vw,62px)}.bo-portrait{max-width:520px;aspect-ratio:1.05/1;width:100%;margin-inline:auto}.bo-section{padding-block:58px}.bo-grid,.bo-three{grid-template-columns:1fr;gap:28px}.bo-services{gap:16px}.bo-service-card{padding:27px}.bo-profile-grid{gap:30px}.bo-trust .bo-wrap{gap:10px;flex-direction:column}.bo-post-grid{grid-template-columns:1fr;gap:35px}.bo-cta .bo-grid{grid-template-columns:1fr}.bo-cta .bo-buttons{justify-content:flex-start;margin-bottom:0}.bo-footer-grid{grid-template-columns:1fr 1fr;gap:30px}.bo-footer-grid>div:first-child{grid-column:1/-1}.bo-page-head{padding:42px 0}.bo-contact-layout{grid-template-columns:1fr}.bo-region-box{padding:30px;min-height:0}.bo-article-header{padding-top:44px}.bo-article-content{padding-bottom:50px}}
@media(max-width:480px){.bo-wrap{width:calc(100% - 32px)}.bo-form-grid{grid-template-columns:1fr;gap:18px}.bo-field.full{grid-column:auto}.bo-buttons,.wp-block-buttons{gap:10px}.bo-button,.wp-block-button__link{padding:12px 16px;font-size:14px}.bo-footer-grid{grid-template-columns:1fr}.bo-footer-grid>div:first-child{grid-column:auto}.bo-footer-bottom{flex-direction:column}.bo-portrait-caption{padding:15px;bottom:15px;left:15px;right:15px}.bo-portrait-caption strong{font-size:18px}.bo-service-card h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media print{.bo-header,.bo-footer,.bo-cta,.bo-menu-toggle,.bo-buttons{display:none}.bo-section{padding:20px 0}.bo-wrap{width:100%}.bo-reading{max-width:none}body{font-size:11pt}h1{font-size:26pt}}

.bo-trust p{margin:0}.bo-trust p:before{content:"—";margin-right:10px;color:var(--petrol)}

/* Joint practice, v1.1 */
.bo-team-portraits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch;width:100%;max-width:920px;margin-inline:auto}
.bo-person-card{background:white;border:1px solid var(--line);border-radius:3px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.bo-person-card>img{display:block;width:100%;aspect-ratio:4/4.6;object-fit:cover;object-position:center 22%;height:auto;max-height:560px}
.bo-person-caption{padding:24px;display:flex;flex:1;flex-direction:column;gap:8px;font-size:14px;line-height:1.55;color:var(--muted)}
.bo-person-caption>strong{font-size:23px;line-height:1.2;color:var(--navy);letter-spacing:-.025em}
.bo-person-caption>.bo-person-role{margin-bottom:4px}
.bo-person-caption>a{display:inline-flex;align-items:center;min-height:44px;margin-top:auto;padding-top:12px;font-size:13px;font-weight:700;gap:8px}
.bo-hero-grid{grid-template-columns:1.02fr 1.08fr;gap:45px}
.bo-hero .bo-team-portraits{gap:16px}.bo-hero .bo-person-caption{padding:16px;font-size:12px;gap:6px}.bo-hero .bo-person-caption>strong{font-size:18px}.bo-hero .bo-person-card>img{aspect-ratio:3/4;object-position:center 20%}
.bo-contact-person{border-bottom:1px solid var(--line);margin-bottom:22px}.bo-contact-person h3{font-size:21px}.bo-contact-person h3 a{font-size:inherit;text-decoration:none;color:var(--navy)}
.bo-footer-person{line-height:1.65}.bo-team-text{align-self:start}.bo-grid>.bo-person-card{max-width:460px}
@media(max-width:1050px) and (min-width:801px){.bo-hero-grid{gap:26px}.bo-hero .bo-person-caption{padding:12px;font-size:11px}.bo-hero .bo-person-caption>strong{font-size:17px}}
@media(max-width:800px){.bo-hero-grid{grid-template-columns:1fr}.bo-hero .bo-team-portraits{max-width:570px}.bo-person-caption{padding:20px;font-size:13px}.bo-person-caption>strong{font-size:20px}.bo-hero .bo-person-caption{padding:16px;font-size:13px}.bo-grid>.bo-person-card{width:100%;margin-inline:auto}}
@media(max-width:480px){.bo-team-portraits{gap:12px}.bo-person-caption,.bo-hero .bo-person-caption{padding:13px;font-size:12px}.bo-person-caption>strong,.bo-hero .bo-person-caption>strong{font-size:18px}}
@media(max-width:350px){.bo-team-portraits{grid-template-columns:1fr}.bo-person-card>img{aspect-ratio:1/1}}
