/*
Theme Name: RS Photographie – PhotoFocus
Template: photofocus
Version: 1.0.0
Description: Individuelle Fotografie-Gestaltung auf Basis des kostenlosen PhotoFocus-Themes.
*/
:root{--rs-bg:#1c1d1c;--rs-surface:#242624;--rs-text:#f1eee7;--rs-muted:#b5b8b1;--rs-accent:#c6af8e}
body,.site,.site-content,.site-footer,#masthead{background:var(--rs-bg);color:var(--rs-text)}
body,button,input,textarea{font-family:Arial,Helvetica,sans-serif;font-size:16px}
h1,h2,h3,h4,.site-title{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.025em}
a{color:var(--rs-text)}a:hover,a:focus{color:var(--rs-accent)}
#masthead{position:relative;border-bottom:1px solid #ffffff12}
.site-header-main .wrapper{max-width:1440px;padding:18px 4%;align-items:center}
.custom-logo{width:100px!important;max-height:65px;object-fit:contain}.site-identity{display:none}
.main-navigation a{font-family:Arial,Helvetica,sans-serif;font-size:14px;letter-spacing:.01em;text-transform:none}
.custom-header{min-height:640px;height:78vh;max-height:900px;background:#191b19}
.custom-header .wrapper,.custom-header-media{height:100%;min-height:inherit}
.custom-header .wp-custom-header img{object-fit:cover;object-position:65% 42%}
.custom-header-overlay{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.18) 75%)!important;opacity:1!important}
.custom-header-content{padding:80px 6%!important;min-height:inherit;display:flex;align-items:center}
.custom-header-content-wrapper{max-width:700px!important;text-align:left!important;margin:0!important}
.custom-header .entry-title{font-size:clamp(38px,4.6vw,70px)!important;font-weight:400;line-height:1.13;text-transform:none;letter-spacing:-.025em}
.custom-header .section-description{max-width:490px;font-size:18px;line-height:1.7;color:#e0e1dc}
.custom-header .section-subtitle{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#d3bea0}
.custom-header .more-link,.button,.wp-block-button__link{border:1px solid #c6af8e;background:transparent;color:#f1eee7;border-radius:0;font-size:13px;letter-spacing:.07em;padding:15px 25px;box-shadow:none}
.site-content{padding:70px 0}.site-content>.wrapper{max-width:1320px;width:90%;padding:0}
.no-sidebar .content-area,.no-sidebar-full-width .content-area{width:100%;max-width:none}
.home .entry-header{display:none}.entry-content{max-width:none!important;width:100%!important}
.entry-title{font-size:clamp(34px,4vw,56px)}.entry-header{text-align:left;margin-bottom:32px}
.entry-content>p{color:var(--rs-muted);max-width:760px;line-height:1.8}
.rs-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--rs-accent)!important;margin-bottom:16px}
.rs-section-title{font-size:clamp(30px,3.5vw,46px);margin:0 0 24px}.rs-intro{margin-bottom:42px}
.rs-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;margin:40px 0 64px}
.rs-card{display:block;text-decoration:none!important;background:transparent;min-width:0}
.rs-card img{display:block;width:100%;height:300px;object-fit:cover;transition:opacity .25s ease}
.rs-card:hover img{opacity:.8}.rs-card h3{font-size:27px;margin:18px 0 6px}.rs-card p{font-size:13px;color:var(--rs-muted);margin:0}.rs-card span{float:right;color:var(--rs-accent)}
.rs-about{border-top:1px solid #ffffff20;padding-top:44px;margin-top:48px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.rs-about img{width:100%;height:auto}.rs-about p{color:var(--rs-muted)}
.rs-gallery{gap:20px!important;align-items:start}.rs-gallery figure{flex-grow:0!important}.rs-gallery img{object-fit:contain!important;height:auto!important;max-height:650px}
.rs-back{font-size:13px;color:var(--rs-accent)!important}.site-info{color:var(--rs-muted);font-size:12px;padding:30px}.site-footer{border-top:1px solid #ffffff20}
.entry-meta,.entry-footer,.post-navigation{display:none}
@media(max-width:1000px){.rs-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-header{min-height:560px;height:70vh}.custom-header-content-wrapper{max-width:560px!important}}
@media(max-width:640px){.site-header-main .wrapper{padding:12px 5%}.custom-logo{width:78px!important}.custom-header{height:650px;min-height:0;max-height:85vh}.custom-header-content{padding:50px 6%!important}.custom-header .entry-title{font-size:40px!important}.custom-header .section-description{font-size:15px}.custom-header-overlay{background:rgba(0,0,0,.55)!important}.rs-card-grid{grid-template-columns:1fr;gap:30px}.rs-card img{height:320px}.rs-about{grid-template-columns:1fr;gap:24px}.site-content{padding:40px 0}.rs-gallery figure{width:100%!important}.main-navigation a{font-size:16px}.menu-inside-wrapper{background:#1c1d1c}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.header-media .more-link .readmore{border:0!important;padding:0!important;border-radius:0!important;background:none!important;text-transform:none!important}
.wp-lightbox-overlay .scrim{background-color:#141514!important;opacity:.98!important}
.wp-lightbox-overlay button{color:#f1eee7!important;fill:#f1eee7!important;background:transparent!important;border:0!important}
@media(max-width:640px){.custom-header .entry-title{font-size:34px!important;hyphens:none;overflow-wrap:normal}.custom-header .section-description{color:#eee!important}}
/* Helle Designvariante */
:root{--rs-bg:#fafaf8;--rs-surface:#f0f0ec;--rs-text:#252724;--rs-muted:#686d65;--rs-accent:#80704f}
html body,.site,.site-content,.site-footer,#masthead,.site-header-main{background:var(--rs-bg);color:var(--rs-text)}
body,h1,h2,h3,h4,h5,h6,.entry-title,.entry-title a,.site-title,.site-title a,.main-navigation a,.entry-content a,.site-info,.site-info a{color:var(--rs-text)}
#masthead{border-bottom:1px solid #dedfd9}.main-navigation a:hover,.main-navigation .current-menu-item>a{color:#80704f}
.site-header-main .site-identity{display:block}.site-header-main .custom-logo-link{display:none}
.custom-header{background:#eeefeb}.custom-header-overlay{background:linear-gradient(90deg,rgba(250,250,248,.97) 0%,rgba(250,250,248,.85) 32%,rgba(250,250,248,.2) 70%,rgba(250,250,248,.05) 100%)!important}
.custom-header .entry-title,.custom-header .section-title,.custom-header .section-description,.custom-header .section-description p{color:#252724!important;text-shadow:none}
.custom-header .section-subtitle{color:#716448!important}.custom-header .more-link,.custom-header .more-link .readmore{color:#252724!important;border-color:#80704f!important;background:transparent!important}
.custom-header .more-link:hover{background:#e7e5dc!important}
.rs-card h3,.rs-section-title{color:#252724}.rs-card p,.entry-content>p,.rs-about p{color:var(--rs-muted)}
.rs-about,.site-footer{border-color:#dedfd9}.rs-card img{background:#eeeeea}.site-info{color:#686d65}
.main-navigation ul ul,.menu-inside-wrapper,.search-container,.search-container input{background:#fafaf8!important;color:#252724!important}
#menu-toggle,#search-toggle,.menu-toggle,.search-toggle{color:#252724!important;background:transparent!important}
#menu-toggle svg,#search-toggle svg{fill:currentColor}.site-header-menu .menu-inside-wrapper a{color:#252724}
.wp-lightbox-overlay .scrim{background-color:#fafaf8!important}.wp-lightbox-overlay button{color:#252724!important;fill:#252724!important}
@media(max-width:640px){.custom-header-overlay{background:rgba(250,250,248,.82)!important}.custom-header .section-description{color:#383c35!important}.site-title{font-size:18px!important}.site-header-main .site-identity{display:block!important}.menu-inside-wrapper{background:#fafaf8!important}}
/* Lesbarer Kontrast gegenüber den Theme-Standardfarben. */
#masthead .site-title a,#masthead .site-title a:visited{color:#252724!important}
.custom-header .entry-summary,.custom-header .entry-summary p,.custom-header-content p{color:#383c35!important}
#site-navigation a,#site-navigation .current-menu-item>a{color:#252724!important}
#site-navigation a:hover{color:#80704f!important}
/* Colors of Walls: drei Bilder je Reihe, auch auf schmalen Bildschirmen. */
.wp-block-gallery.rs-colors-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,2vw,20px)!important;align-items:start}
.wp-block-gallery.rs-colors-gallery>figure.wp-block-image{width:100%!important;margin:0!important;min-width:0}
.wp-block-gallery.rs-colors-gallery>figure.wp-block-image img{width:100%;height:auto!important;max-height:none;object-fit:contain!important}
#post-170 .entry-content>p.rs-colors-intro{margin-left:auto;margin-right:auto;text-align:center}
.wp-block-gallery.rs-colors-gallery>figure.wp-block-image:nth-last-child(2){grid-column:1}
.wp-block-gallery.rs-colors-gallery>figure.wp-block-image:last-child{grid-column:3}
/* Crossen: vier Bilder je Reihe, ohne Beschnitt. */
.wp-block-gallery.rs-crossen-gallery{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(5px,1.5vw,20px)!important;align-items:start}
.wp-block-gallery.rs-crossen-gallery>figure.wp-block-image{width:100%!important;margin:0!important;min-width:0}
.wp-block-gallery.rs-crossen-gallery>figure.wp-block-image img{width:100%;height:auto!important;max-height:none;object-fit:contain!important}
/* Crossen: Abschlussreihe mit fünf Hochformaten, das fünfte in der Mitte. */
.wp-block-gallery.rs-crossen-gallery{grid-template-columns:repeat(20,minmax(0,1fr))}
.wp-block-gallery.rs-crossen-gallery>figure.wp-block-image{grid-column:span 5}
.wp-block-gallery.rs-crossen-gallery>figure.wp-block-image:nth-last-child(-n+5){grid-column:span 4;align-self:start}
.wp-block-gallery.rs-crossen-gallery>figure.wp-block-image:nth-last-child(5){grid-column:1 / span 4}
/* Galerie: drei vollständige Bilder pro Reihe und zentrierte Originaltexte. */
.wp-block-gallery.rs-three-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(6px,2vw,20px)!important;align-items:start}
.wp-block-gallery.rs-three-gallery>figure.wp-block-image{width:100%!important;margin:0!important;min-width:0}
.wp-block-gallery.rs-three-gallery>figure.wp-block-image img{width:100%;height:auto!important;max-height:none;object-fit:contain!important}
.entry-content>p.rs-gallery-intro{margin-left:auto;margin-right:auto;text-align:center}
/* Bildtexte stehen unter dem Foto und bleiben vollständig lesbar. */
.wp-block-gallery.rs-gallery figure.wp-block-image{flex-direction:column;justify-content:flex-start}
.wp-block-gallery.rs-gallery figure.wp-block-image>figcaption{position:static!important;inset:auto!important;box-sizing:border-box;width:100%;max-height:none!important;margin:8px 0 0!important;padding:0 4px!important;background:none!important;color:var(--rs-muted)!important;text-align:center!important;font-size:14px;line-height:1.5;overflow:visible!important;white-space:normal}
/* Einheitliche Schrift für Bildtexte in Galerie und Einzelansicht. */
.wp-block-gallery.rs-gallery figure.wp-block-image>figcaption,.rs-lightbox-caption{font-family:Arial,Helvetica,sans-serif!important;font-style:normal!important;font-weight:400!important;text-shadow:none!important;letter-spacing:normal}
.wp-lightbox-overlay.active .lightbox-image-container{bottom:100px!important}
.wp-lightbox-overlay.active .lightbox-image-container img{max-height:calc(100dvh - 180px)!important;object-fit:contain!important}
.rs-lightbox-caption{position:absolute;z-index:100000;bottom:20px;left:10%;width:80%;margin:0;text-align:center;color:#686d65;font-size:16px;line-height:1.5;max-height:75px;overflow:auto}
/* Norway: centered dedication above the image, including on small screens. */
.page-id-156 .rs-lightbox-title{position:absolute;z-index:2000003;top:24px;left:60px;right:60px;margin:0;text-align:center;font-family:Arial,Helvetica,sans-serif;font-size:clamp(20px,4vw,28px);line-height:1.3;color:#252724;pointer-events:none}
html body.page-id-156 .wp-lightbox-overlay.active .lightbox-image-container{top:80px!important;bottom:100px!important;left:50px!important;right:50px!important;width:auto!important;height:auto!important;transform:none!important;animation:none!important}
html body.page-id-156 .wp-lightbox-overlay.active .lightbox-image-container img{max-height:calc(100dvh - 200px)!important}
/* Rubriken bleiben auch in einem schmaleren Vorschaufenster sichtbar. */
#primary-menu-wrapper .menu-toggle-wrapper{display:none!important}
#primary-menu-wrapper .menu-inside-wrapper{position:static!important;transform:none!important;visibility:visible!important;opacity:1!important;height:auto!important;max-height:none!important;width:auto!important;display:block!important;overflow:visible!important;padding:0!important;box-shadow:none!important;border:0!important}
#site-header-menu{display:flex!important;align-items:center;max-width:100%}
#site-navigation #primary-menu{display:flex!important;flex-wrap:wrap;justify-content:center;gap:0; margin:0}
#site-navigation #primary-menu>li{float:none;display:block;border:0}
#site-navigation #primary-menu>li>a{padding:12px 14px;font-size:14px}
@media(max-width:1100px){.site-header-main .wrapper{flex-wrap:wrap;justify-content:center}#site-header-menu{width:100%;justify-content:center}.site-branding{margin-right:auto;margin-left:auto}#site-navigation #primary-menu>li>a{padding:9px 10px}}
html body .wp-lightbox-overlay.active .rs-lightbox-caption{z-index:2000003}
html body .wp-lightbox-overlay.active .lightbox-image-container img{max-height:calc(100dvh - 180px)!important;max-width:calc(100vw - 100px)!important;width:auto!important;height:auto!important;margin:auto;object-fit:contain!important}
html body .wp-lightbox-overlay.active .lightbox-image-container figure{display:flex;align-items:center;justify-content:center}
html body .wp-lightbox-overlay.active .lightbox-image-container img{min-height:0!important;min-width:0!important}
/* Safari: keine vererbte 350px-Begrenzung oder Float-Breiten im Hauptmenü. */
#masthead #primary-menu-wrapper .menu-inside-wrapper{max-width:none!important;float:none!important;min-width:0}
#masthead #primary-menu-wrapper{flex:0 0 auto;min-width:0;width:auto}
#masthead #site-header-menu{flex-wrap:nowrap;margin-right:0;min-width:0}
#masthead #site-navigation{width:auto;float:none}
#masthead #site-navigation #primary-menu>li{flex:0 0 auto;width:auto}
#masthead #site-navigation #primary-menu>li>a{white-space:nowrap}
@media(min-width:1101px){
 #masthead .site-header-main .wrapper{flex-wrap:nowrap;gap:24px}
 #masthead .site-branding{flex:0 0 auto;margin-right:auto}
 #masthead #site-header-menu{flex:0 0 auto;width:auto}
 #masthead #site-navigation #primary-menu{flex-wrap:nowrap}
}
@media(max-width:1100px){
 #masthead #site-header-menu{flex:1 1 100%;width:100%}
 #masthead #primary-menu-wrapper{flex:1 1 auto}
}
/* Inhalte der persönlichen Seiten, ohne Änderungen an den Galerien. */
.rs-about-page,.rs-contact-page{max-width:960px;margin:0 auto}
.rs-about-page>figure{max-width:760px;margin:0 auto 40px}
.rs-about-page>p{max-width:760px;margin:0 auto 24px;line-height:1.8;color:var(--rs-muted)}
.rs-contact-link{display:inline-block;padding:12px 20px;border:1px solid var(--rs-accent)}
.rs-contact-page>figure{max-width:800px;margin:0 auto 40px}
.rs-contact-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;text-align:center;margin:32px 0 48px}
.rs-contact-details h2{font-size:24px}.rs-contact-details p{font-size:15px;overflow-wrap:anywhere}
.rs-contact-form{max-width:760px;margin:0 auto}.rs-contact-form>label{display:block;margin:20px 0 8px}
.rs-contact-form>input,.rs-contact-form>textarea{width:100%;padding:12px;background:white;color:var(--rs-text);border:1px solid #bbbdb5;border-radius:0}
.rs-contact-form .rs-consent{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6}.rs-consent input{margin-top:5px;flex:none}
.rs-contact-form button{background:#252724;color:#fff;border:0;padding:14px 28px;cursor:pointer}
.rs-form-notice{padding:16px;background:#eeefe8;color:#252724;border-left:3px solid #80704f}
@media(max-width:640px){.rs-contact-details{grid-template-columns:1fr;gap:12px}}
/* Vier Bilder je Reihe ausschließlich für die neuen Lost-Places-Galerien. */
.wp-block-gallery.rs-four-gallery{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(5px,1.5vw,20px)!important;align-items:start}
.wp-block-gallery.rs-four-gallery>figure.wp-block-image{width:100%!important;margin:0!important;min-width:0}
.wp-block-gallery.rs-four-gallery>figure.wp-block-image img{width:100%;height:auto!important;max-height:none;object-fit:contain!important}
/* Menschen: Überschriften, Texte und Galeriekarten mittig ausrichten. */
:is(#post-5,#post-174,#post-175) .entry-header,
:is(#post-5,#post-174,#post-175) .entry-content{text-align:center}
:is(#post-5,#post-174,#post-175) .entry-content>p{margin-left:auto;margin-right:auto}
#post-5 .rs-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin-left:auto;margin-right:auto}
#post-5 .rs-card h3 span{float:none;display:inline-block;margin-left:10px}
@media(max-width:640px){#post-5 .rs-card-grid{grid-template-columns:1fr;max-width:420px}}
/* Kontaktbild mittig, auch bei der inneren WordPress-Gruppenstruktur. */
#post-10 .rs-contact-page figure.wp-block-image{max-width:800px;margin-left:auto!important;margin-right:auto!important;text-align:center}
#post-10 .rs-contact-page figure.wp-block-image img{display:block;margin-left:auto;margin-right:auto}
.rs-impressum{max-width:800px;margin-left:auto;margin-right:auto;line-height:1.8;color:var(--rs-muted)}
.rs-impressum h2{font-size:26px;margin-top:32px}.rs-impressum a{overflow-wrap:anywhere;text-decoration:underline}
/* Paired photographer logos follow the title's font size on every screen. */
#masthead .site-title a{display:inline-flex;align-items:center;justify-content:center;gap:.4em;white-space:nowrap}
#masthead .site-title a::before,#masthead .site-title a::after{content:"";display:block;flex:0 0 auto;width:1.523em;height:1em;background:url('assets/rs-logo-schwarz.png') center/contain no-repeat}
