:root{--ink:#192220;--muted:#55625d;--paper:#fff;--soft:#f1f4f2;--line:#d4dcd7;--accent:#b1915d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}img{display:block;max-width:100%;width:100%;object-fit:cover}header{display:flex;align-items:center;justify-content:space-between;padding:24px 5.5%;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.brand{font:italic 36px Georgia,serif;text-decoration:none;white-space:nowrap}.brand span{font:12px Arial,sans-serif;letter-spacing:3px;margin-left:12px}nav{display:flex;align-items:center;gap:30px}nav a{font-size:14px;text-decoration:none}.nav-cta{border:1px solid var(--ink);padding:10px 18px}.menu{display:none}.skip{position:fixed;top:-100px}.skip:focus{top:0;z-index:20;background:white;padding:20px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:710px}.hero-copy{padding:85px 9% 55px 11%}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;line-height:1.7;margin:0 0 22px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1;margin:0}h1{font-size:clamp(48px,5.8vw,86px);letter-spacing:-2.5px}em{font-weight:400;color:#7d6543}.intro{font-size:19px;max-width:390px;margin:30px 0}.button{display:inline-block;background:var(--ink);color:white;text-decoration:none;padding:15px 23px;font-size:14px;border:1px solid var(--ink);cursor:pointer}.button:hover{background:#34453c}.hero-note{font-size:12px;color:var(--muted);max-width:330px;margin-top:35px}.hero-photo{position:relative;overflow:hidden}.hero-photo img{height:100%;position:absolute;object-position:40% center}.hero-photo span{position:absolute;bottom:25px;left:30px;right:30px;color:#fff;font:italic 23px Georgia;text-shadow:0 1px 6px #000;background:#192220a8;padding:10px 14px}.ribbon{display:flex;justify-content:space-between;gap:20px;padding:25px 7%;border-bottom:1px solid var(--line);font-size:14px}.section{padding:90px 7%;scroll-margin-top:15px}h2{font-size:clamp(36px,4vw,58px);letter-spacing:-1.5px}h3{font-size:30px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:45px}.section-title>p{max-width:350px;color:var(--muted);margin:0}.gallery{display:grid;grid-template-columns:1fr .8fr 1fr;gap:18px;align-items:center}.gallery a{overflow:hidden}.gallery img{height:420px;transition:transform .3s}.gallery a:nth-child(2) img{height:510px}.gallery a:hover img{transform:scale(1.025)}.gallery-footer{display:flex;justify-content:space-between;margin-top:25px;font-size:14px;color:var(--muted)}.services{background:var(--soft)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:48px}.service-grid article{border-top:1px solid #89988f;padding-top:25px}.number{font-size:13px;color:var(--muted);display:block;margin-bottom:22px}.service-grid p{font-size:16px}.service-grid a,.text-link{font-size:14px;font-weight:600}.price{font-family:Georgia,serif;font-size:25px!important;margin:30px 0 20px}.price small{font:14px/1.6 Arial;display:block;margin-top:8px;color:var(--muted)}.included{display:grid;grid-template-columns:1fr 2fr;border-top:1px solid var(--line);padding-top:35px;gap:40px;margin-top:55px}.included h3{font-size:25px}.included p{margin:0;max-width:750px}.photobox{background:var(--ink);color:white;display:grid;grid-template-columns:2fr 1fr;gap:45px;padding:40px;margin-top:45px}.photobox p{max-width:690px}.photobox>div:last-child{text-align:right}.light{background:#fff;color:var(--ink);border-color:#fff}.light:hover{background:#e1e9e4}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.portrait{background:var(--soft);padding:35px}.portrait img{aspect-ratio:1;max-width:400px;margin:auto}.about p:not(.eyebrow){max-width:570px}.about .text-link{display:inline-block;margin-top:15px}.process{border-top:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:50px}.steps span{font-size:12px;letter-spacing:1px;color:var(--muted)}.steps h3{font-size:27px;margin-top:20px}.steps p{font-size:16px}.faq{background:var(--soft);display:grid;grid-template-columns:1fr 1.6fr;gap:70px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:17px}details p{font-size:16px;color:var(--muted)}.contact{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1.3fr;gap:75px}.contact em{color:#d4ba90}.contact>div>p:not(.eyebrow){max-width:380px}.contact>div>a{display:block;font-size:16px;margin-top:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:14px;margin-bottom:16px}input,select,textarea{width:100%;display:block;margin-top:6px;padding:12px;background:#fff;color:var(--ink);border:1px solid #839087;border-radius:0;font-size:16px;min-width:0}textarea{resize:vertical}.form-note{font-size:13px;color:#d4dcd7;margin:16px 0 0}footer{padding:40px 7%;display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center}footer p,footer small,footer a:not(.brand){font-size:13px}footer p{margin:0;text-align:right}footer div{display:flex;gap:25px}footer small{text-align:right;color:var(--muted)}@media(min-width:1600px){main,header,footer{max-width:1800px;margin:auto}}@media(max-width:900px){header{padding:18px 5%}.brand{font-size:28px}.brand span{font-size:10px;letter-spacing:2px}nav{gap:16px}.hero{min-height:590px}.hero-copy{padding:55px 9%}h1{font-size:58px}.section{padding:65px 5%}.service-grid,.steps{gap:25px}.about{gap:35px}.contact{gap:35px}.ribbon{font-size:12px}.gallery img{height:310px}.gallery a:nth-child(2) img{height:390px}}@media(max-width:650px){html{scroll-padding-top:85px}header{flex-wrap:wrap}.menu{display:block;background:white;border:1px solid var(--line);padding:8px 12px;font-size:14px}nav{display:none;width:100%;padding-top:20px;flex-wrap:wrap}nav.open{display:flex}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:48px 6% 32px}h1{font-size:57px;letter-spacing:-2px}.intro{font-size:18px}.hero-photo{height:440px}.hero-photo span{font-size:20px;left:18px;right:18px;bottom:18px}.hero-note{margin:22px 0 0}.ribbon{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:22px 6%;font-size:13px}.section{padding:55px 6%}.section-title{display:block;margin-bottom:30px}.section-title>p{margin-top:22px}.gallery{grid-template-columns:1fr 1fr;gap:12px}.gallery a:first-child{grid-column:1/-1}.gallery img{height:250px}.gallery a:first-child img{height:300px}.gallery a:nth-child(2) img{height:250px}.gallery-footer{gap:20px;font-size:12px}.service-grid,.steps{grid-template-columns:1fr;gap:35px}.service-grid p{max-width:550px}.included,.photobox,.about,.faq,.contact{grid-template-columns:1fr;gap:25px}.photobox{padding:25px}.photobox>div:last-child{text-align:left}.photobox .price{margin-top:0}.portrait{padding:20px;max-width:360px}.about{gap:35px}.steps{gap:25px}.faq{gap:20px}.contact{gap:35px}.form-row{grid-template-columns:1fr;gap:0}footer{display:flex;flex-direction:column;align-items:flex-start;padding:35px 6%}footer p,footer small{text-align:left}footer div{gap:18px;flex-wrap:wrap}.eyebrow{font-size:12px;letter-spacing:1.5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.wedding-packages{margin-top:65px;padding-top:45px;border-top:1px solid var(--line)}.wedding-packages>h3{font-size:38px;max-width:700px}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}.package-grid article{background:white;border:1px solid var(--line);padding:28px;display:flex;flex-direction:column}.package-grid h3{font:28px/1.2 Georgia,serif;margin:0;min-height:68px}.package-price{font:42px/1.1 Georgia,serif;margin:24px 0}.package-grid article>p:not(.eyebrow):not(.package-price){font-size:16px}.package-grid ul{padding-left:20px;font-size:15px;margin:10px 0 30px;flex:1}.package-grid li{margin-bottom:10px}.package-grid .button{text-align:center}.package-note{font-size:15px;max-width:940px;margin:25px 0 0}@media(max-width:900px){.package-grid{grid-template-columns:1fr}.package-grid h3{min-height:0}.package-grid article{padding:25px}.package-grid .button{align-self:flex-start}}

/* Preserve the full composition of Reza's photographs. */
.hero{min-height:0;align-items:center;background:#f6f5f1}.hero-copy{padding-top:60px;padding-bottom:60px}.hero-photo{padding:28px 28px 64px}.hero-photo img{position:static;height:auto;aspect-ratio:3/2;object-fit:contain}.hero-photo span{left:28px;right:28px;bottom:12px;background:none;color:var(--ink);text-shadow:none;font-size:18px;text-align:center;padding:0}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.hero-actions .text-link{font-size:14px}.gallery{align-items:start}.gallery a{background:#f6f5f1;display:flex;align-items:center;justify-content:center;min-height:360px}.gallery img,.gallery a:nth-child(2) img{height:auto;max-height:510px;object-fit:contain}.gallery a:hover img{transform:none}.package-grid article{box-shadow:0 8px 25px #19222006}.package-grid article:nth-child(2){border-color:#8c744f}.package-grid article .button{margin-top:auto}.button:focus-visible,nav a:focus-visible{outline:3px solid #b1915d}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d4ba90}#form-status{font-size:14px;line-height:1.6}.contact form{min-width:0}footer a{overflow-wrap:anywhere}@media(max-width:900px){.hero{min-height:0}.hero-copy{padding:40px 9%}.hero-photo{padding:18px 18px 60px}.gallery a{min-height:260px}}@media(max-width:650px){.hero-copy{padding:36px 6% 28px}.hero-photo{height:auto;width:100%;padding:0 6% 48px}.hero-photo img{height:auto}.hero-photo span{left:6%;right:6%;bottom:12px;font-size:17px}h1{font-size:clamp(40px,10.5vw,57px)}.hero-actions{gap:16px}.gallery a{min-height:0}.gallery img,.gallery a:first-child img,.gallery a:nth-child(2) img{height:auto}.gallery-footer{flex-wrap:wrap}.package-grid .button{width:100%}.brand span{margin-left:6px;letter-spacing:1.5px}header .brand{font-size:clamp(22px,6vw,28px)}.photobox{overflow-wrap:anywhere}}

.hero-photo img{aspect-ratio:auto}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px}.gallery a{min-height:0;background:transparent}.gallery img,.gallery a:nth-child(2) img{max-height:none;height:auto}.gallery a:nth-child(3),.gallery a:nth-child(4){max-width:85%;justify-self:center}@media(max-width:650px){.gallery{gap:14px}.gallery a:first-child{grid-column:auto}.gallery a:nth-child(3),.gallery a:nth-child(4){max-width:100%}.gallery img,.gallery a:first-child img,.gallery a:nth-child(2) img{height:auto}}

.hero-location{display:block;font:600 16px/1.5 Arial,sans-serif;letter-spacing:0;margin-bottom:20px}.family-story{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px}.family-story figure{margin:0}.family-story img{height:auto;object-fit:contain}.family-story figcaption{font-size:14px;color:var(--muted);margin-top:12px}.family-story h2{font-size:clamp(34px,3.4vw,50px)}.regions{border-top:1px solid var(--line)}.regions h2{max-width:1000px}.region-intro{max-width:850px;margin-top:28px}.region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 55px;margin:35px 0}.region-grid article{border-top:1px solid var(--line);padding-top:25px}.region-grid h3{font-size:28px}.region-grid p{font-size:16px}nav{gap:22px}@media(max-width:1000px){nav{gap:12px}nav a{font-size:14px}.brand span{letter-spacing:1px}.family-story{gap:30px}}@media(max-width:760px){header{flex-wrap:wrap}.menu{display:block;background:white;border:1px solid var(--line);padding:8px 12px;font-size:14px}nav{display:none;width:100%;padding-top:20px;flex-wrap:wrap}nav.open{display:flex}}@media(max-width:650px){.family-story,.region-grid{grid-template-columns:1fr}.family-story{gap:25px}.region-grid{gap:20px}.region-grid h3{font-size:26px}}

/* Gallery: one landscape lead, then three equally sized portrait photographs. */
.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.gallery a:first-child{grid-column:1/-1}.gallery a,.gallery a:nth-child(3),.gallery a:nth-child(4){width:100%;max-width:100%;justify-self:stretch}.gallery img,.gallery a:first-child img,.gallery a:nth-child(2) img{width:100%;height:auto;max-height:none;object-fit:contain}@media(max-width:650px){.gallery{grid-template-columns:minmax(0,1fr);gap:22px}.gallery a:first-child{grid-column:auto}}

/* Give the photography a distinct, dark exhibition space. */
#arbeiten{background:#192220;color:#fff}#arbeiten .eyebrow{color:#d4ba90}#arbeiten .section-title>p,#arbeiten .gallery-footer{color:#d9e2dc}#arbeiten .gallery-footer{border-top:1px solid #526158;padding-top:22px}.family-story{background:#e5ece8}.family-story figure{border-bottom:4px solid #9a7743;padding-bottom:16px}.family-story figcaption{color:#3d5146}.about .portrait{background:#192220;padding:18px}.about .portrait img{aspect-ratio:1;object-fit:contain}.regions{background:#f1f4f2}.region-grid article{border-top:2px solid #b1915d}.hero{background:#fff}.hero-photo{background:#e5ece8}.hero-note{font-size:14px}.section-title .eyebrow,.family-story .eyebrow{font-size:14px;letter-spacing:1.5px}

/* Format-matched photo rows preserve the full compositions. */
.gallery.gallery-curated{display:flex;flex-direction:column;gap:28px}.gallery-curated .photo-row{display:grid;width:100%;gap:24px;align-items:start}.gallery-curated .photo-row-portraits{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-curated .photo-row-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-curated .photo-row-wide{grid-template-columns:minmax(0,1fr)}.gallery-curated .photo-row a,.gallery-curated .photo-row a:first-child{grid-column:auto;width:100%;max-width:100%;display:block;background:none}.gallery-curated .photo-row img{width:100%;height:auto;max-height:none;object-fit:contain}.gallery-curated .photo-row-wide a{max-width:1200px;justify-self:center}.gallery-curated .photo-row-wide img{max-height:none}.hero-photo img{width:100%;height:auto;object-fit:contain}@media(max-width:650px){.gallery.gallery-curated{gap:22px}.gallery-curated .photo-row,.gallery-curated .photo-row-portraits,.gallery-curated .photo-row-pair{grid-template-columns:minmax(0,1fr);gap:22px}}

.service-title-link{font:inherit!important;text-decoration:none}.service-title-link:hover{text-decoration:underline}.service-links{display:flex;flex-wrap:wrap;gap:16px 28px;margin-top:30px}.service-links a{font-size:16px}.detail-intro{max-width:1200px}.detail-intro h1{font-size:clamp(38px,5.5vw,76px);letter-spacing:-1.5px}.detail-intro .intro{max-width:740px}.detail-photo{padding:0 7%;max-width:1300px;margin:0 auto}.detail-photo img{height:auto;object-fit:contain}.detail-soft{background:var(--soft)}.detail-contact{border-top:1px solid var(--line)}.detail-contact .button{margin-top:16px}.detail-nav{display:flex!important;flex-wrap:wrap}@media(max-width:760px){.detail-nav{gap:16px;padding-top:12px}.detail-photo{padding:0 6%}.detail-intro h1{letter-spacing:-1px}}

/* Regional pages extend the existing forest-green photography identity. */
.hero h1{font-size:clamp(34px,3.4vw,54px);line-height:1.12;letter-spacing:-1.5px}
.hero-subtitle{display:block;margin-top:16px;font-size:.9em;line-height:1.18}
.hero-copy .intro{max-width:520px;font-size:18px}
.hero-copy{padding-top:48px;padding-bottom:48px}
.story-intro,.local-story{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;align-items:start}
.story-intro p:first-child,.local-story>div>p:first-child{margin-top:0}
.story-intro h2,.local-story h2,.local-approach h2{font-size:clamp(32px,3.6vw,52px)}
.story-intro strong{font-weight:600}
.local-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center}
.local-hero h1{font-size:clamp(36px,3.6vw,58px);line-height:1.12;letter-spacing:-1.2px}
.local-hero .intro{max-width:660px;font-size:18px;margin:26px 0}
.local-hero figure,.local-approach figure{margin:0;min-width:0}
.local-hero img,.local-approach img{height:auto;object-fit:contain;width:100%}
.local-hero figure:has(img[height="2880"]){max-width:390px;justify-self:center}
.local-hero figcaption,.local-approach figcaption{font-size:14px;color:var(--muted);padding-top:12px}
.local-story{background:var(--soft);border-top:1px solid var(--line)}
.local-story p{max-width:680px}
.local-approach{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:65px}
.local-approach figure:has(img[height="2880"]){max-width:420px;justify-self:center}
.local-approach p{max-width:620px}
.reviews{background:var(--ink);color:white}
.reviews>.eyebrow{color:#d4ba90}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin:36px 0}
.review-grid figure{margin:0;border-top:1px solid #748279;padding-top:26px}
.review-grid blockquote{font:25px/1.4 Georgia,serif;margin:0 0 24px}
.review-grid figcaption{font-size:15px;color:#e3ebe6}
.review-grid figcaption span{font-size:14px;color:#c9d4cd}
.region-grid h3 a{text-decoration:none}
.region-grid h3 a:hover{text-decoration:underline}
#hochzeitsgalerie{background:var(--ink);color:white}
#hochzeitsgalerie>.eyebrow{color:#d4ba90}
#hochzeitsgalerie>p{max-width:680px}
#hochzeitsgalerie .gallery{margin-top:36px}
.section>.wedding-packages{margin-top:0;padding-top:0;border-top:0}
.local-hero>*{min-width:0}
.hero-copy,.local-story>div,.local-approach>div{min-width:0}
nav a{white-space:nowrap}
:focus-visible{outline:3px solid #ad8750;outline-offset:5px}
@media(max-width:1100px){header{flex-wrap:wrap}.menu{display:block;background:#fff;border:1px solid var(--line);padding:10px 16px;font-size:16px;min-height:44px}nav{display:none;width:100%;padding-top:18px;gap:8px 20px;flex-wrap:wrap}nav.open{display:flex}nav a{padding:10px 0;font-size:16px;min-height:44px}nav .nav-cta{padding:10px 16px}.local-hero{gap:32px}.story-intro,.local-story,.local-approach{gap:38px}}
@media(max-width:760px){.local-hero,.story-intro,.local-story,.local-approach{grid-template-columns:minmax(0,1fr);gap:28px}.local-hero h1{font-size:clamp(33px,7.5vw,49px);letter-spacing:-.8px}.local-hero figure{width:100%}.local-hero figure:has(img[height="2880"]){max-width:440px}.local-approach figure:has(img[height="2880"]){max-width:440px}.review-grid{grid-template-columns:1fr;gap:28px}.review-grid blockquote{font-size:24px}.story-intro h2 br{display:none}.hero h1{font-size:clamp(33px,7.4vw,46px);letter-spacing:-.8px}.hero-subtitle{margin-top:14px}.region-grid{grid-template-columns:1fr}.detail-intro h1{font-size:clamp(34px,7.4vw,50px)}.hero-actions .button{max-width:100%;text-align:center}.local-hero .eyebrow{font-size:13px;letter-spacing:1px}}
@media(max-width:380px){header .brand{font-size:22px}.brand span{font-size:9px;letter-spacing:1px;margin-left:4px}.menu{padding:8px 10px}.hero h1{font-size:32px}.local-hero h1{font-size:32px}.button{padding:14px 18px}h2{font-size:34px}}
/* Full author-supplied city stories: calm editorial rhythm, readable columns. */
.city-intro{max-width:660px;margin:26px 0;font-size:18px}
.city-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:60px;border-top:1px solid var(--line);padding-top:60px;padding-bottom:60px}
.city-story:nth-of-type(even){background:var(--soft)}
.city-story h2{font-size:clamp(30px,3.1vw,46px);line-height:1.18;letter-spacing:-.7px;max-width:520px;overflow-wrap:break-word}
.city-copy{max-width:700px;min-width:0}.city-copy p:first-child{margin-top:0}.city-copy p:last-child{margin-bottom:0}.city-copy p{margin:0 0 22px}.city-copy li{margin-bottom:8px}.city-copy ul{padding-left:24px}
.city-photo{background:var(--ink);color:#fff;text-align:center;padding-top:50px;padding-bottom:50px}.city-photo figure{max-width:720px;margin:0 auto 24px}.city-photo img{height:auto;object-fit:contain;max-height:850px}.city-photo figcaption{font-size:14px;margin-top:14px;color:#d9e2dc}
.city-contact{background:#e5ece8!important}.city-contact-links{margin-top:24px!important;overflow-wrap:anywhere}.city-service-links{display:flex;flex-wrap:wrap;gap:20px 36px;padding-top:30px;padding-bottom:30px;border-top:1px solid var(--line)}
@media(max-width:760px){.city-story{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:42px;padding-bottom:42px}.city-story h2{font-size:clamp(29px,6.7vw,38px)}.city-intro{font-size:17px}.city-photo{padding-top:36px;padding-bottom:36px}.city-copy .button{max-width:100%;text-align:center}}

/* Premium package spans the existing three-card comparison. */
.package-grid .package-premium{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;background:var(--ink);color:#fff;border:1px solid var(--ink);padding:40px}
.package-premium .eyebrow{color:#e1c798;font-size:14px}.package-premium h3{font-size:clamp(32px,3vw,44px);min-height:0}.package-premium .package-price{font-size:48px}.package-premium p,.package-premium ul{font-size:16px}.package-premium ul{margin-top:0}.premium-backup{border-top:1px solid #7d8a83;padding-top:22px;margin-top:22px}.premium-backup h4{font:26px/1.25 Georgia,serif;margin:0 0 12px}.premium-backup p{margin-top:0}.package-premium .premium-frame{font-size:14px;color:#dde5e0}.package-premium .button{background:white;color:var(--ink);border-color:white}.package-premium .button:hover{background:#e5ece8}.premium-intro,.premium-details{min-width:0}
@media(max-width:900px){.package-grid .package-premium{grid-template-columns:minmax(0,1fr);gap:24px;padding:28px}.package-premium .button{max-width:100%;white-space:normal}}

.backup-note{border-top:1px solid var(--line);margin-top:28px;padding-top:26px}.backup-note h3{font-size:28px;line-height:1.2}.backup-note p{font-size:16px}

/* Verified regional portfolio photographs retain their full composition. */
.regional-work{border-top:1px solid var(--line)}
.regional-work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px;margin-top:36px}
.regional-work-grid figure{margin:0;min-width:0}
.regional-work-grid img{display:block;width:100%;height:auto}
.regional-work-grid figcaption{font-size:16px;line-height:1.5;margin-top:12px}
.regional-work-links{display:flex;flex-wrap:wrap;gap:16px 28px;margin-top:28px}
@media(max-width:650px){.regional-work-grid{grid-template-columns:minmax(0,1fr);gap:30px}}
.lohne-reportage{margin-top:48px;padding-top:36px;border-top:1px solid var(--line)}
.lohne-reportage h3{font-size:clamp(28px,3vw,38px);line-height:1.2}
.lohne-reportage>p{max-width:760px}

/* Shared navigation and revised package headings. */
#navigation{flex-wrap:wrap;gap:14px} .package-grid article>h3{font-family:Georgia,serif;font-size:28px;line-height:1.2} h1{text-wrap:balance} .family-story figure img{height:auto;max-height:720px;object-fit:contain} .detail-photo figure img{height:auto;max-height:800px;object-fit:contain}

.photobox-price-card{padding:32px;background:var(--soft);align-self:start}.photobox-price-card h3{font-size:32px;line-height:1.2}

.contact-reviews{margin:28px 0;padding:20px 0;border-top:1px solid currentColor}.contact-reviews p{font-size:16px;max-width:38em}.contact-reviews a{font-size:16px;text-underline-offset:4px}

button:disabled{opacity:.6;cursor:not-allowed}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Audit: visible review action and stable narrow layouts. */
.reviews .button{background:#fff;color:var(--ink);border-color:#fff}.reviews .button:hover{background:#e5ece8}footer div{flex-wrap:wrap} .service-grid h3 a{font:inherit} .section>h1{overflow-wrap:break-word} select:disabled{background:#e1e9e4;color:#55625d}

.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5}.consent input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;padding:0}.consent a,.form-note a{color:inherit;text-decoration:underline}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}#form-status{margin-top:14px;font-weight:600}

/* Lesbare Kundenstimmen, auch auf schmalen Displays. */
.review-grid{gap:20px}.review-grid figure{padding:24px;border:1px solid #748279;border-radius:12px;background:rgba(255,255,255,.04);min-width:0}.review-grid blockquote{font-size:clamp(20px,2vw,24px);line-height:1.55;overflow-wrap:anywhere}.review-grid figcaption{line-height:1.6}
@media(max-width:760px){.review-grid{grid-template-columns:1fr}.review-grid figure{padding:22px}}

/* Gestaltung aus rezas-homepage Kopie; bestehende Struktur und Inhalte bleiben erhalten. */
:root{--ink:#30382e;--muted:#60685b;--paper:#f7f5ee;--soft:#e9e9df;--line:#d9dccc;--accent:#626e55;--olive:#626e55}
body{background:var(--paper);font-size:15px;line-height:1.65}header{background:var(--paper);padding:24px 6%;position:relative;min-height:90px}.brand{font-size:34px;line-height:1}.brand span{display:block;font:9px Arial,sans-serif;letter-spacing:4px;margin:10px 0 0;text-align:center}.eyebrow{font-size:10px!important;letter-spacing:2.6px!important;text-transform:uppercase;font-weight:400}em{color:var(--olive)}h1,h2,h3{line-height:1.08}h2{font-size:clamp(34px,4vw,52px)}h3{font-size:28px}p{color:var(--muted)}.button,.nav-cta{background:var(--olive);border-color:var(--olive);color:white;padding:14px 23px;font-size:12px}.button:hover,.nav-cta:hover{background:#45513e}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}nav a{font-size:12px}.menu{background:var(--paper);color:var(--ink)}.hero{background:var(--paper);grid-template-columns:46% 54%;padding:42px 6% 50px;gap:32px;min-height:0}.hero-copy{padding:0 20px 0 0}.hero h1{font-size:clamp(42px,4.7vw,68px);letter-spacing:-2px}.hero-copy .intro{font-size:14px;max-width:400px;margin:28px 0}.hero-location{font-size:13px;font-weight:400}.hero-photo{background:none;padding:0;overflow:visible;margin-bottom:50px}.hero-photo img{border-radius:180px 180px 2px 2px;width:100%;height:auto;max-height:710px;object-fit:contain}.hero-photo span{font:11px/1.5 Arial,sans-serif;background:var(--paper);color:var(--ink);padding:14px 18px;left:0;right:0;bottom:-45px;text-align:center;letter-spacing:1px}.hero-note{font-size:11px;margin-top:22px}.hero-actions .text-link{font-size:12px;font-weight:400}.ribbon{font-size:11px;border-top:1px solid var(--line);padding:22px 6%}.section{padding:80px 6%}.section-title>p,.steps p,.region-grid p,.service-grid p{font-size:14px}.section-title{gap:35px}.service-grid{gap:24px}.service-grid article{padding:28px;border:1px solid var(--line)}.services,.regions,.family-story,.detail-soft,.about{background:var(--soft)}.number{font:italic 32px Georgia;color:#8b967e}.package-grid article{background:var(--paper);box-shadow:none;border-color:var(--line);padding:30px}.package-grid article:nth-child(3){background:#eeeee6;border-color:#aab49c}.package-grid article:nth-child(2){border-color:var(--line)}.package-grid h3{font-size:27px}.package-price{font-size:38px}.package-grid article>p:not(.eyebrow):not(.package-price),.package-grid ul{font-size:13px}.package-note{font-size:13px}.photobox{background:#303b2d}.photobox p{color:#c8cebf}.about{gap:9%;padding:75px 12%;grid-template-columns:1fr 1fr}.about .portrait{background:none;padding:0}.about .portrait img{border-radius:2px 2px 130px 2px;object-fit:contain}.about p:not(.eyebrow){font-size:14px}.reviews{background:#eeeee6;color:var(--ink)}.reviews>.eyebrow{color:var(--muted)}.review-grid{gap:24px}.review-grid figure{border:1px solid var(--line);background:var(--paper);padding:28px}.review-grid blockquote{font-size:24px}.review-grid figcaption,.review-grid figcaption span{color:var(--muted);font-size:12px}.faq{background:var(--paper)}summary{font:20px/1.4 Georgia}details p{font-size:14px}.contact{background:#303b2d;color:var(--paper);gap:8%;grid-template-columns:1fr 1fr}.contact p{color:#c8cebf}.contact em{color:#b9c3aa}.contact label{font-size:12px}.contact input,.contact textarea,.contact select{background:transparent;border-color:#78836d;color:var(--paper);font-size:14px}.contact select option{background:var(--paper);color:var(--ink)}.contact .button{background:var(--paper);color:var(--ink);border-color:var(--paper)}.contact .form-note{font-size:11px}.contact a{font-size:14px}.region-grid article{border-color:var(--line)}#arbeiten,#hochzeitsgalerie{background:var(--paper);color:var(--ink)}#arbeiten .eyebrow,#hochzeitsgalerie>.eyebrow{color:var(--muted)}#arbeiten .section-title>p,#arbeiten .gallery-footer{color:var(--muted)}#arbeiten .gallery-footer{border-color:var(--line)}.family-story figure{border-color:var(--olive)}.family-story figcaption{color:var(--muted)}.local-hero img,.detail-photo img{border-radius:120px 120px 2px 2px}.local-hero{background:var(--paper)}.local-story{background:var(--soft)}.detail-photo{max-width:1000px}.new-story{background:var(--soft)}.new-story .gallery{margin-top:35px}.new-story .photo-row-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.new-story-link{display:inline-block;margin-top:26px}.new-story .photo-row a{background:none}.detail-contact .button{margin-top:20px}footer{border-top:1px solid var(--line);font-size:11px}footer .brand{font-size:28px}footer p,footer small,footer a:not(.brand){font-size:11px}footer div{flex-wrap:wrap}#agb-wortlaut{font-size:15px;max-width:900px;margin:auto}main:has(#agb-wortlaut) h1{font-size:clamp(34px,5vw,60px);margin-bottom:40px;overflow-wrap:anywhere}:focus-visible{outline-color:var(--olive)}.preview-notice{border:1px solid #78836d;padding:15px;color:#c8cebf;font-size:12px}
@media(min-width:1500px){main,header,footer{max-width:1600px;margin:auto}}@media(min-width:1101px){nav{gap:22px}}
@media(max-width:1100px){header{padding:20px 6%}nav a{font-size:14px}.hero{gap:25px}.hero h1{font-size:clamp(38px,5vw,58px)}.hero-photo img{border-radius:140px 140px 2px 2px}}
@media(max-width:800px){.hero{display:grid;grid-template-columns:1fr;padding:35px 6% 40px;gap:32px}.hero-copy{padding:0}.hero h1{font-size:clamp(40px,8.8vw,62px)}.hero-photo{max-width:580px;width:100%;justify-self:center}.hero-photo img{max-height:700px}.section{padding:60px 6%}.about,.contact{grid-template-columns:1fr;padding:50px 6%;gap:35px}.about .portrait{max-width:400px}.review-grid{grid-template-columns:1fr}.service-grid,.steps{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}.faq{grid-template-columns:1fr}.section-title{display:block}.section-title>p{margin-top:20px}.new-story .photo-row-pair{grid-template-columns:1fr}.ribbon{flex-wrap:wrap}.local-hero,.local-story,.local-approach{grid-template-columns:1fr}footer{padding:30px 6%}.hero-copy .intro{max-width:100%}.story-intro{grid-template-columns:1fr;gap:25px}.brand{font-size:28px}.brand span{margin:8px 0 0;font-size:9px;letter-spacing:3px}}

/* Finale Palette: Creme, Oliv, sichtbare Goldakzente und Weiß. */
:root{--gold:#ad8546;--gold-dark:#85612d;--gold-light:#d6ba85;--white:#fff}
header{border-bottom:2px solid var(--gold-light)}.brand{color:var(--gold-dark)}.brand span{color:var(--ink)}.eyebrow{color:var(--gold-dark)}.hero-photo img{border:4px solid var(--gold-light);padding:6px;background:var(--white)}.hero-photo span{color:var(--gold-dark)}.ribbon{background:var(--white);border-top:1px solid var(--gold-light);border-bottom:1px solid var(--gold-light)}.service-grid article,.package-grid article,.review-grid figure{background:var(--white);border:1px solid var(--gold-light);border-top:3px solid var(--gold)}.package-grid article:nth-child(3){background:var(--white);border:2px solid var(--gold)}.package-grid article:nth-child(2){border-color:var(--gold-light);border-top-color:var(--gold)}.number{color:var(--gold-dark)}.section-title:before{content:none}.region-grid article{border-top:2px solid var(--gold)}.about .portrait img{border:3px solid var(--gold-light);padding:7px;background:var(--white)}.local-hero figure,.detail-photo figure{padding:8px;border:1px solid var(--gold-light);background:var(--white)}.new-story .photo-row img{border:2px solid var(--gold-light);padding:7px;background:var(--white)}.family-story figure{border-color:var(--gold)}.button,.nav-cta{box-shadow:inset 0 0 0 1px #c6ac7870}.contact .button,.photobox .button.light{background:var(--white);border:2px solid var(--gold-light);color:var(--ink)}.contact .eyebrow{color:var(--gold-light)}.contact input:focus-visible,.contact select:focus-visible,.contact textarea:focus-visible{outline-color:var(--gold-light)}.google-stars{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:22px 0}.google-stars .stars{font-size:28px;line-height:1;letter-spacing:5px;color:var(--gold-dark)}.google-stars small{font-size:12px;color:var(--muted)}.reviews{background:#f0eee7}footer{background:var(--white);border-top:2px solid var(--gold-light)}.text-link{text-decoration-color:var(--gold)}
@media(max-width:650px){.hero-photo img{padding:4px;border-width:3px}.google-stars .stars{font-size:26px}.new-story .photo-row img{padding:4px}.local-hero figure,.detail-photo figure{padding:5px}}

/* Warmes Sandbeige; Creme, Weiß und Gold bleiben als Begleitfarben. */
:root{--olive:#DED2BF;--accent:#DED2BF;--soft:#f1ece4;--ink:#38332d;--muted:#655e54;--line:#d8cdbd;--theme-text:#6b5943;--theme-ink:#38332d;--theme-border:#b5a58e;--theme-hover:#cdbda5}
em{color:var(--theme-text)}
.button,.nav-cta{background:var(--accent);border-color:var(--theme-border);color:var(--theme-ink)}
.button:hover,.nav-cta:hover{background:var(--theme-hover);color:var(--theme-ink)}
.button.light{background:var(--white);color:var(--theme-ink)}
.contact,.photobox{background:#DED2BF;color:var(--theme-ink)}
.contact p,.photobox p{color:#574d40}
.contact em{color:var(--theme-text)}
.contact .eyebrow,.photobox .eyebrow{color:var(--gold-dark)}
.contact input,.contact textarea,.contact select{background:#ffffffb8;border-color:var(--theme-border);color:var(--theme-ink)}
.contact select option{background:var(--white);color:var(--theme-ink)}
.contact input::placeholder,.contact textarea::placeholder{color:#6b6052}
.contact .form-note,.contact .preview-notice{color:#574d40}
.preview-notice{border-color:var(--theme-border)}
.contact input[type="checkbox"]{accent-color:var(--theme-text)}
.contact .button,.photobox .button.light{background:var(--white);color:var(--theme-ink)}
.contact .button:hover,.photobox .button.light:hover{background:var(--paper)}
.city-contact{background:var(--soft)!important}
select:disabled{background:var(--soft);color:var(--muted)}
:focus-visible,.button:focus-visible,nav a:focus-visible{outline-color:var(--theme-text)}

/* Datenschutzhinweise: lesbare Textbreite. */
.privacy-policy{max-width:980px;margin:0 auto}.privacy-policy h1{font-size:clamp(34px,5vw,60px);overflow-wrap:anywhere}.privacy-policy h2{font-size:clamp(27px,3vw,36px);line-height:1.25;margin-top:42px}.privacy-policy h3{font-size:24px;line-height:1.3;margin-top:26px}.privacy-policy p{max-width:76ch;font-size:16px;line-height:1.75}.privacy-policy a{overflow-wrap:anywhere;text-underline-offset:3px}.privacy-policy strong{color:var(--ink)}

.legal-page h2{overflow-wrap:anywhere;hyphens:auto}

/* Christians Hochzeit: Originalbilder in Farbe und Schwarz-Weiß. */
.christian-story{background:var(--soft);border-top:1px solid var(--line)}
.christian-intro{max-width:780px}.christian-location{font-size:14px;color:var(--muted);margin-bottom:36px}
.christian-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.christian-story figure{margin:0;min-width:0}.christian-story figure a{display:block}
.christian-story img{display:block;width:100%;height:auto}.christian-story figcaption{font-size:14px;line-height:1.5;margin-top:12px}
.christian-closing{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:40px;align-items:start}
.christian-review{padding:32px 0;margin-top:32px!important;border-top:1px solid var(--line)}
.christian-review blockquote{font:clamp(23px,2.2vw,32px)/1.45 Georgia,serif;margin:0;overflow-wrap:anywhere}
.christian-review .text-link{display:inline-block;margin-top:20px}.christian-contact{display:inline-block;margin-top:32px}
@media(max-width:650px){.christian-portraits,.christian-closing{grid-template-columns:minmax(0,1fr);gap:28px}.christian-closing{margin-top:28px}.christian-review{padding:24px 0;margin-top:24px!important}}



/* Schwarzes eigenes Logo ohne Hintergrundfläche. */
header .brand,footer .brand{display:block;flex-shrink:0;font-size:inherit;line-height:0}
.brand .brand-logo{display:block;width:340px;max-width:100%;height:auto;object-fit:contain}
footer .brand .brand-logo{width:260px}
@media(max-width:800px){header .brand .brand-logo{width:250px}footer .brand .brand-logo{width:230px}}
@media(max-width:380px){header .brand .brand-logo{width:190px}}

/* Freigegebene Porträts aus Hannahs Familienshooting. */
.hannah-story{background:var(--soft);border-top:1px solid var(--line)}
.hannah-story>p{max-width:780px}.shoot-location{font-size:14px;color:var(--muted)}
.hannah-review{margin:40px 0 28px;padding:28px 0;border-top:1px solid var(--line);max-width:800px}
.hannah-review blockquote{font:clamp(23px,2.2vw,32px)/1.45 Georgia,serif;margin:0;overflow-wrap:anywhere}
.hannah-review figcaption{font-size:14px;line-height:1.5;margin-top:16px}.hannah-review .text-link{display:inline-block;margin-top:20px}

/* Instagram: großer, direkt erreichbarer Profil-Link auf jeder Seite. */
.instagram-banner{display:flex;align-items:center;gap:18px;background:var(--accent);color:var(--ink);padding:17px 6%;text-decoration:none;border-bottom:1px solid var(--theme-border);min-height:82px}
.instagram-icon{display:block;width:44px;height:44px;flex:0 0 44px}
.instagram-banner-copy{display:flex;flex-direction:column;gap:2px;line-height:1.4}
.instagram-banner-copy strong{font:600 18px/1.4 Arial,sans-serif}.instagram-banner-copy>span{font:14px/1.4 Arial,sans-serif;color:var(--theme-text)}
.instagram-banner-action{margin-left:auto;white-space:nowrap;font:600 14px/1.4 Arial,sans-serif;display:flex;align-items:center;gap:10px}.instagram-banner-action>span{font-size:24px}
.instagram-banner:hover{background:#d4c5af}.instagram-banner:focus-visible,.instagram-link:focus-visible{outline:3px solid var(--theme-text);outline-offset:-5px}
.instagram-link,footer a.instagram-link,.contact a.instagram-link{display:inline-flex;align-items:center;gap:12px;min-height:60px;text-decoration:none;color:var(--ink);font:600 17px/1.4 Arial,sans-serif;padding:10px 14px;border:1px solid var(--theme-border);border-radius:4px;background:var(--soft)}
.instagram-link small,footer .instagram-link small{display:block;font:13px/1.4 Arial,sans-serif;color:var(--muted);text-align:left}.instagram-link .instagram-icon{width:36px;height:36px;flex-basis:36px}.instagram-link:hover{background:var(--accent)}
.contact a.instagram-link{margin-top:24px}footer div{align-items:center}
@media(min-width:1500px){.instagram-banner{max-width:1600px;margin:auto}}
@media(max-width:650px){.instagram-banner{padding:14px 6%;gap:12px}.instagram-banner-copy strong{font-size:16px}.instagram-banner-copy>span{font-size:13px}.instagram-banner-action{font-size:0;gap:0}.instagram-banner-action>span{font-size:26px}}

/* Sichtbare Rückmeldung nach einer erfolgreichen Anfrage. */
.confirmation{background:var(--soft);padding-top:55px;padding-bottom:65px;scroll-margin-top:20px}.confirmation-card{max-width:850px;margin:auto;background:var(--white);border:1px solid var(--theme-border);border-top:4px solid var(--gold);padding:42px}.confirmation-check{display:block;width:52px;height:52px;color:var(--theme-text);margin-bottom:22px}.confirmation h1{font-size:clamp(34px,4.2vw,56px);line-height:1.12;letter-spacing:-1px;margin:16px 0 24px}.confirmation p{font-size:16px;max-width:70ch}.confirmation-booking{padding:20px;background:var(--soft);border-left:3px solid var(--gold);margin:26px 0}.confirmation-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:28px 0}.confirmation .confirmation-contact{font-size:14px;border-top:1px solid var(--line);padding-top:22px}.confirmation-email-warning{padding:16px;border:1px solid var(--theme-border)}#form-status:not(:empty){padding:16px;border:1px solid var(--theme-border);background:var(--white);font-size:16px;font-weight:600}
@media(max-width:650px){.confirmation{padding:28px 6% 38px}.confirmation-card{padding:24px 20px}.confirmation-actions{gap:18px}.confirmation .confirmation-actions .button{width:100%;text-align:center}.confirmation-contact a{overflow-wrap:anywhere}}

/* Clearer reading hierarchy and a dedicated pricing page. */
main:not(:has(.privacy-policy)):not(:has(#agb-wortlaut)) p:not(.eyebrow):not(.price):not(.package-price):not(.hero-note):not(.form-note){font-size:17px;line-height:1.72}
main .reading-highlight{font-size:1.12em;font-weight:700;color:var(--ink)}
main .contact .reading-highlight,main .photobox .reading-highlight{color:inherit}
main .key-message{font-size:clamp(21px,2.1vw,27px)!important;line-height:1.45!important;color:var(--ink);padding:20px 0;border-top:2px solid var(--gold-light)}
main .eyebrow{font-size:12px!important;letter-spacing:2px!important;font-weight:600}
.hero-copy .intro{font-size:18px!important;max-width:510px}.ribbon{font-size:16px;font-weight:600;line-height:1.5}.hero-note{font-size:15px}.text-link{font-size:16px!important}.button,.nav-cta{font-size:15px}
header nav{gap:17px;flex-wrap:wrap}header nav a{font-size:14px}header nav a[aria-current="page"]{font-weight:700;text-decoration:underline}
.price-guide{margin-top:40px;padding:36px;background:var(--white);border:1px solid var(--gold-light);border-top:3px solid var(--gold)}.price-guide h2{font-size:clamp(29px,3vw,40px)}.price-guide p{max-width:72ch}.price-guide .button{margin-top:8px}
.pricing-page .wedding-packages{margin-top:0}.pricing-jumps{display:flex!important;gap:12px;flex-wrap:wrap;margin-top:28px;padding:0}.pricing-jumps a{border:1px solid var(--gold);padding:10px 18px;text-decoration:none;font-size:16px;font-weight:600;background:var(--white)}
.pricing-page .shooting-prices{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-page .package-grid ul{font-size:16px;line-height:1.7}.pricing-page .package-grid .package-price{font-size:42px}.pricing-page .price{font-size:30px!important}.pricing-page .price small{font-size:16px}
@media(max-width:1180px){header{flex-wrap:wrap}.menu{display:block;background:var(--paper);border:1px solid var(--line);padding:9px 14px;font-size:16px}header #navigation{display:none;width:100%;padding-top:20px}header #navigation.open{display:flex}}
@media(max-width:650px){main .reading-highlight{font-size:1.06em}.ribbon{font-size:15px}.price-guide{padding:26px 22px}.pricing-page .shooting-prices{grid-template-columns:1fr}.pricing-jumps a{font-size:15px}.key-message{font-size:22px!important}}

/* Die echte Fotobox, der Aufbau und die mitgebrachten Accessoires. */
.fotobox-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:7%;padding-top:55px;padding-bottom:65px}
.fotobox-intro h1{font-size:clamp(42px,4.5vw,66px);letter-spacing:-1.6px;line-height:1.08}.fotobox-intro .intro{max-width:510px;font-size:19px!important;line-height:1.65}.fotobox-intro figure{margin:0;max-width:470px;width:100%;justify-self:center}.fotobox-intro figure img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:24px;border:1px solid var(--gold-light)}.fotobox-intro figcaption{font-size:14px;color:var(--theme-text);text-align:center;margin-top:12px}.fotobox-real-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:35px}.fotobox-real-gallery figure{margin:0;min-width:0}.fotobox-real-gallery figure img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;border-radius:14px}.fotobox-real-gallery figcaption{font-size:16px;line-height:1.5;margin-top:15px;color:var(--muted)}.fotobox-real-gallery figcaption strong{display:block;font-size:20px;color:var(--ink);margin-bottom:5px}
@media(max-width:800px){.fotobox-intro{grid-template-columns:1fr;gap:32px;padding-top:35px;padding-bottom:48px}.fotobox-intro figure{max-width:440px}.fotobox-real-gallery{grid-template-columns:1fr;gap:35px}.fotobox-real-gallery figure{max-width:500px;width:100%;margin:auto}}

/* Hochzeit: lokale Schrift, warmes Gold und eine kompakte Seitenübersicht. */
@font-face{font-family:"Instrument Serif";src:url("fonts/InstrumentSerif-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("fonts/InstrumentSerif-Italic.ttf") format("truetype");font-style:italic;font-weight:400;font-display:swap}
:root{--gold:#af8540;--gold-dark:#805b25;--gold-light:#d8be87;--paper:#faf7f0;--soft:#f0e7d9;--ink:#352e26;--muted:#675d50;--line:#d8c6a7;--display:"Instrument Serif",Georgia,serif}
body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--paper)}
h1,h2,h3,h4,.review-grid blockquote,.christian-review blockquote,.hannah-review blockquote,summary{font-family:var(--display);font-weight:400;letter-spacing:-.025em}
em{color:var(--gold-dark)}
header.wedding-header{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:22px 6%;min-height:0;position:relative;z-index:30;border:0;background:var(--paper)}
header.wedding-header:after{content:"";height:1px;position:absolute;bottom:0;left:6%;right:6%;background:linear-gradient(90deg,#b58b41,#dfc997 65%,transparent)}
.header-brand{min-width:0}.wedding-header .brand{display:block;line-height:0}.wedding-header .brand-logo{width:380px;height:auto;max-width:100%}.home-page .wedding-header .brand-logo{width:440px}
.header-actions{display:flex;align-items:center;gap:32px;flex-shrink:0}.header-inquiry{font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--gold);padding:12px 0;white-space:nowrap}.header-inquiry span{margin-left:16px;color:var(--gold-dark);font-size:21px}
.site-menu{border:0;padding:0}.site-menu>summary{display:flex;align-items:center;gap:13px;list-style:none;cursor:pointer;min-height:58px;padding:15px 23px;border:1px solid #ad8546;border-radius:30px;background:linear-gradient(120deg,#ead8b0,#d4b373);color:#3b2b15;font:600 16px/1.3 system-ui,sans-serif;letter-spacing:.02em;box-shadow:0 6px 16px #8c692016}
.site-menu>summary::-webkit-details-marker{display:none}.site-menu>summary:after{content:none}.site-menu>summary svg{width:22px;height:22px;flex-shrink:0}.site-menu>summary:hover{background:#e2c58e}.site-menu>summary:focus-visible,.menu-panel a:focus-visible,.menu-close:focus-visible{outline:3px solid #805b25;outline-offset:5px}
.menu-backdrop{position:fixed;inset:0;background:#29211875;z-index:90;cursor:pointer}
.menu-panel{position:fixed;top:0;right:0;bottom:0;width:min(580px,100%);padding:32px 40px;overflow-y:auto;overscroll-behavior:contain;z-index:91;background:var(--paper);border-left:1px solid var(--gold);box-shadow:-20px 0 70px #251b1533;outline:0}
.menu-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.menu-top .eyebrow{margin:0;font-size:11px!important;color:var(--gold-dark)}.menu-close{display:none;align-items:center;justify-content:center;min-width:46px;height:46px;border:1px solid var(--gold-light);border-radius:50%;background:transparent;color:var(--ink);font:32px/1 system-ui;cursor:pointer}.menu-enhanced .menu-close{display:flex}
.menu-panel h2{font-size:62px;line-height:.98;margin:0}.menu-panel .menu-intro{font-size:15px;line-height:1.6;margin:20px 0 26px}.menu-is-open{overflow:hidden}
header.wedding-header #navigation{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;align-items:stretch;margin:0}
header.wedding-header #navigation a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:19px 16px;min-height:77px;min-width:0;background:#f0e7d9;border:1px solid #d0b788;border-radius:3px;text-decoration:none;color:var(--ink);font:500 17px/1.3 system-ui,sans-serif;transition:background .18s,border-color .18s}
header.wedding-header #navigation .nav-arrow{font-size:23px;color:var(--gold-dark)}header.wedding-header #navigation a:hover,header.wedding-header #navigation a[aria-current="page"]{background:#e6d4b2;border-color:var(--gold-dark);text-decoration:none}
header.wedding-header #navigation .nav-cta{font-size:16px;background:#4b3a24;color:#fff6e5;border-color:#4b3a24;padding:19px 16px;box-shadow:none}header.wedding-header #navigation .nav-cta .nav-arrow{color:#e5c990}
.menu-personal{font-size:14px;line-height:1.8;margin:30px 0 0;border-top:1px solid var(--line);padding-top:22px}.menu-personal a{font-weight:600;text-decoration-color:var(--gold)}
.hero{position:relative;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:42px 6% 65px;gap:6%;background:radial-gradient(ellipse at 88% 40%,#dfc38b40 0,transparent 60%),var(--paper)}
.hero-copy{padding:0;min-width:0}.hero h1{font-family:var(--display);font-size:clamp(54px,5.7vw,88px);letter-spacing:-.025em;line-height:1.01}.hero-hometown{display:block}.hero-specialty{display:block;margin-top:22px;font-size:.7em;line-height:1.12}.hero-specialty em{display:block}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px;font-size:11px!important;letter-spacing:.16em!important}.hero-copy .eyebrow:before{content:"";height:1px;width:34px;background:var(--gold);flex-shrink:0}.hero-copy .intro{max-width:490px;margin:25px 0!important;line-height:1.65!important;font-size:17px!important}.hero-note{font-size:13px;color:var(--gold-dark)}
.hero-photo{margin:0 0 35px;isolation:isolate}.hero-photo:before{content:"";position:absolute;inset:16px -14px -14px 16px;border:1px solid var(--gold);border-radius:190px 190px 8px 8px;z-index:-1}.hero-photo img{border:1px solid var(--gold-light);padding:5px;background:#fffaf0;border-radius:180px 180px 5px 5px;max-height:680px;object-fit:contain}.hero-photo span{background:transparent;font-size:11px;color:var(--gold-dark);bottom:-43px}
.button{background:linear-gradient(115deg,#e7ce99,#cda561);border:1px solid #ad8546;border-radius:3px;color:#3a2c18;padding:15px 24px;font-family:inherit;font-size:15px;font-weight:600;box-shadow:0 6px 16px #8c692012}.button:hover{background:#d8b879;color:#302211}.button:focus-visible{outline:3px solid var(--gold-dark);outline-offset:4px}.hero-actions .text-link{font-size:15px!important;font-weight:500;text-decoration-color:var(--gold)}
.ribbon{background:#eadcc3;border-top:1px solid #d0b582;border-bottom:1px solid #d0b582;font-size:14px;font-weight:500;padding:21px 6%;color:#514129;gap:16px}.ribbon span{display:flex;align-items:center;gap:12px}.ribbon span:before{content:"✧";color:var(--gold-dark);font-size:21px}
.section h2{font-size:clamp(42px,4.8vw,68px)}.section h3{font-size:34px}.section-title .eyebrow,.section>.eyebrow{color:var(--gold-dark)}.section-title{margin-bottom:38px}.section .number{color:var(--gold-dark);font-family:var(--display)}
.service-grid article,.review-grid figure{border:1px solid #d1b988;border-radius:18px 18px 3px 3px;box-shadow:0 10px 30px #82612c08;background:#fffcf6}.service-grid article{border-top:3px solid var(--gold)}.services,.regions,.about,.new-story{background:#f0e7d9}.region-grid article{border-color:var(--gold)}.about .portrait img{border-color:var(--gold-light)}
.contact{background:#e7d6b9;border-top:1px solid #bea16b}.contact em{color:var(--gold-dark)}.contact .button,.photobox .button.light{background:linear-gradient(115deg,#e7ce99,#cda561);border:1px solid #ad8546;color:#3a2c18}.contact input,.contact textarea,.contact select{border-color:#b69a69}.key-message{border-top-color:var(--gold)!important}
footer{background:#f3eadb;border-top:2px solid var(--gold);padding:0 6% 30px}.footer-social{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:55px 0 42px;margin-bottom:36px;border-bottom:1px solid #cfb581}.footer-social>div{display:block}.footer-social .eyebrow{margin:0 0 15px;color:var(--gold-dark);font-size:11px}.footer-social h2{font:52px/1 var(--display);letter-spacing:-.025em}.footer-social p:not(.eyebrow){font-size:15px;color:var(--muted);margin:18px 0 0}footer .footer-social .instagram-link{background:linear-gradient(115deg,#e7ce99,#d7b777);border:1px solid #ad8546;min-height:68px;padding:13px 22px;font:600 16px/1.3 system-ui,sans-serif;border-radius:4px}footer .footer-social .instagram-link small{font-size:13px;margin-top:4px;color:#584124}footer .brand-logo{width:250px}footer>div:not(.footer-social){gap:20px}footer>div:not(.footer-social) a{font-size:13px}footer>p,footer>small{font-size:13px}
@media(min-width:1500px){header.wedding-header{padding-top:24px;padding-bottom:24px}}
@media(max-width:900px){header.wedding-header{padding:20px 6%;gap:20px}.home-page .wedding-header .brand-logo{width:370px}.wedding-header .brand-logo{width:330px}.header-actions{gap:22px}.header-inquiry{display:none}.hero h1{font-size:clamp(52px,7.5vw,72px)}.hero-photo:before{right:-9px;bottom:-9px}.ribbon{display:grid;grid-template-columns:1fr 1fr}.hero{gap:5%}}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding:36px 6% 65px;gap:32px}.hero-copy .intro{max-width:100%}.hero-photo{width:100%;max-width:520px;justify-self:center;margin:0 0 40px}.hero-photo img{max-height:650px}.hero-actions{gap:20px}.hero h1{max-width:640px}.hero-specialty{margin-top:16px}.hero-photo span{bottom:-40px}}
@media(max-width:600px){header.wedding-header{padding:18px 6%;align-items:center;gap:15px}.home-page .wedding-header .brand-logo,.wedding-header .brand-logo{width:280px}.header-brand{flex:1}.header-actions{gap:0}.site-menu>summary{flex-direction:column;gap:5px;padding:11px 14px;border-radius:15px;font-size:12px;min-width:67px}.site-menu>summary svg{width:21px;height:21px}.hero h1{font-size:clamp(48px,12.3vw,68px)}.hero-copy .eyebrow{font-size:10px!important;letter-spacing:.12em!important;gap:9px}.hero-copy .eyebrow:before{width:22px}.hero-specialty{font-size:.72em}.hero-copy .intro{font-size:16px!important}.hero{padding-top:30px}.ribbon{padding:18px 6%;font-size:12px;gap:15px}.ribbon span{gap:7px}.ribbon span:before{font-size:17px}.menu-panel{padding:24px}.menu-panel h2{font-size:53px}.menu-top{margin-bottom:22px}.menu-panel .menu-intro{font-size:14px;margin:18px 0 22px}header.wedding-header #navigation a{padding:17px 13px;font-size:16px;min-height:70px}header.wedding-header #navigation .nav-cta{font-size:15px;padding:17px 13px}.menu-personal{margin-top:24px}.footer-social{padding:40px 0 30px;gap:25px}.footer-social h2{font-size:46px}footer .footer-social .instagram-link{font-size:15px;padding:13px 16px}.footer-social .instagram-icon{width:31px;height:31px;flex-basis:31px}.section h2{font-size:43px}.section h3{font-size:31px}}
@media(max-width:360px){.menu-panel{padding:20px}.menu-panel h2{font-size:47px}header.wedding-header #navigation{gap:9px}header.wedding-header #navigation a{font-size:15px;padding:15px 11px}header.wedding-header #navigation .nav-cta{font-size:14px;padding:15px 11px}.hero h1{font-size:46px}.hero-copy .eyebrow{letter-spacing:.06em!important}.hero-photo:before{right:-7px;bottom:-7px}.site-menu>summary{min-width:62px;padding:10px 12px}}
.about .portrait img{height:auto;aspect-ratio:1}
header.wedding-header #navigation a{white-space:normal}
header.wedding-header #navigation .nav-label{min-width:0;overflow-wrap:normal;white-space:normal}
header.wedding-header #navigation .nav-arrow{flex:0 0 auto}
.site-menu:not(.menu-enhanced)[open]>summary{position:fixed;right:20px;top:20px;bottom:auto;z-index:92;visibility:visible}
/* Auf dem Handy bleibt das Logo groß; das Menü ist am rechten Rand erreichbar. */
@media(max-width:600px){header.wedding-header{justify-content:center;gap:0;padding:18px 6%}.header-brand{flex:0 1 auto}.home-page .wedding-header .brand-logo{width:310px}.wedding-header .brand-logo{width:290px}.header-actions{width:0;flex:0 0 0}.site-menu>summary{position:fixed;right:18px;bottom:22px;z-index:50;flex-direction:row;gap:10px;border-radius:30px;font-size:14px;min-height:52px;padding:13px 19px;box-shadow:0 6px 24px #4b351f33}.site-menu[open]>summary{visibility:hidden}footer{padding-bottom:100px}.hero{padding-top:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
