/*
Theme Name: GOBAT Studio
Author: GOBAT GmbH
Description: Fotografisches Portal mit drei Bereichen und bearbeitbaren WordPress-Seiten.
Version: 1.9.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: gobat-studio
*/
:root{--ink:#102e3a;--paper:#f7f6f2;--gold:#cb9c66;--line:#dcded9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit}img{max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.12;font-weight:500}h1{font-size:clamp(40px,5.5vw,80px);letter-spacing:-.045em;margin:24px 0}h1 em{font-style:normal;color:#e3bd91}h2{font-size:clamp(30px,3.4vw,48px);letter-spacing:-.035em;margin-bottom:28px}h3{font-size:25px;letter-spacing:-.02em}p{margin-bottom:20px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;font-size:28px;font-weight:800;letter-spacing:.12em;white-space:nowrap}.brand small{font-size:10px;letter-spacing:.08em;margin-left:8px;font-weight:400}.nav{display:flex;gap:28px;align-items:center}.nav a{text-decoration:none;font-size:13px}.nav a:hover,.nav a[aria-current=page]{color:#8b5828}.hero{background-size:cover;background-position:center;color:white}.entrance{min-height:620px;padding-top:90px;display:flex;flex-direction:column;justify-content:space-between}.entrance>.wrap:first-child{width:min(1200px,calc(100% - 80px))}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.2em;color:#e3bd91;margin-bottom:16px}.eyebrow.dark{color:#916138}.lead{font-size:19px;line-height:1.65;max-width:660px;color:#e0e7e7}.textlink{display:inline-block;text-decoration:none;border-bottom:1px solid #9dadae;padding:10px 0;font-size:14px;margin:10px 0 35px}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff40;padding:20px 0;font-size:11px;letter-spacing:.08em}.section{padding-top:80px;padding-bottom:80px}.section+.section{border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px}.section-heading>p{font-size:14px;color:#64727a}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.portal{background:white;text-decoration:none;display:block;border:1px solid var(--line);transition:transform .2s}.portal:hover{transform:translateY(-5px)}.portal img{width:100%;height:235px;object-fit:cover;display:block}.portal-text{padding:30px;position:relative}.number{font-size:12px;color:#996b40;letter-spacing:.1em;display:block;margin-bottom:20px}.portal p{font-size:14px;color:#5a6c73;max-width:220px;margin-bottom:22px}.arrow{font-size:28px;display:block;text-align:right}.statement{border-top:1px solid var(--line);padding:65px 0 80px}.statement-text{font-size:clamp(26px,3vw,42px);line-height:1.3;max-width:850px;letter-spacing:-.025em}.statement>p:last-child{max-width:650px;color:#5a6c73}.subhero{padding:95px 0 85px;min-height:470px}.large{font-size:23px;line-height:1.6}.narrow{max-width:860px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.panel{border-top:2px solid var(--gold);padding:28px 22px;background:#eeefea}.panel p{font-size:15px;color:#4d626b;margin-bottom:0}.note{padding:35px;background:#e9ede9}.note ul{padding-left:20px;margin:0}.inline-image{width:100%;height:390px;object-fit:cover}.cta{background:var(--ink);color:white;padding:65px 0}.cta>.wrap{display:flex;align-items:center;justify-content:space-between;gap:45px}.cta h2{max-width:650px;margin-bottom:18px}.cta p:last-child{color:#cad7da;margin-bottom:0}.button{display:inline-flex;gap:25px;align-items:center;background:#dfb27f;color:#152c36;text-decoration:none;padding:17px 24px;font-size:14px;white-space:nowrap}.darkbutton{background:var(--ink);color:white}.contact-line{margin-top:70px;border-top:1px solid var(--line);padding-top:32px}.contact-line span{display:block;letter-spacing:.16em;font-size:11px}.contact-line>a{font-size:clamp(20px,3vw,38px);text-decoration:none}.contact-line p{font-size:13px;color:#5a6c73;margin-top:15px}.site-footer{padding:45px 0 25px;border-top:1px solid var(--line)}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer-top p{font-size:13px}.footer-bottom{margin-top:35px;border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:#62747a}.footer-bottom a{margin-right:20px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;z-index:99;padding:10px}a:focus-visible{outline:3px solid #b17b43;outline-offset:5px}.plain{padding:70px 0;min-height:50vh}.admin-bar .site-header{top:32px}@media(max-width:850px){.wrap,.entrance>.wrap:first-child{width:calc(100% - 40px)}.header-inner{align-items:flex-start;padding:22px 0;flex-direction:column;gap:16px}.nav{gap:18px;flex-wrap:wrap}.nav a{font-size:12px}.entrance{min-height:570px;padding-top:60px}.grid{grid-template-columns:1fr}.portal{display:grid;grid-template-columns:42% 58%}.portal img{height:100%;min-height:245px}.portal-text{padding:22px}.section{padding:50px 0}.section-heading{display:block}.section-heading>p br{display:none}.columns{grid-template-columns:1fr;gap:25px}.cta>.wrap{display:block}.cta .button{margin-top:25px}.subhero{min-height:400px;padding:60px 0}.hero-bottom{font-size:9px}.panel{padding:25px}.large{font-size:20px}}@media(max-width:440px){.portal{display:block}.portal img{height:190px;min-height:0}.portal-text{padding:25px}.hero-bottom{display:block}.hero-bottom span{display:block}.nav{gap:12px}.lead{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portal{transition:none}}

.gobat-logo{width:76px;height:76px;object-fit:contain;display:block}.header-inner{min-height:110px}.site-footer .gobat-logo{width:90px;height:90px}.company-details a{text-underline-offset:4px}.footer-top>div{font-size:14px}.entrance{background-position:center 58%}@media(max-width:850px){.header-inner{flex-direction:row;align-items:center;gap:20px}.nav{max-width:235px;justify-content:flex-end}.gobat-logo{width:65px;height:65px;min-width:65px}}

.header-controls{display:flex;align-items:center;justify-content:flex-end;gap:26px}.language-switch{display:flex;gap:3px;flex-shrink:0;border:1px solid var(--line);padding:4px}.language-switch a,.language-switch span{padding:6px 9px;font-size:12px;font-weight:700;text-decoration:none;line-height:1.4}.language-switch a[aria-current=page]{background:var(--ink);color:white}.language-switch span{color:#8a9293}.header-controls .nav{flex-wrap:wrap;justify-content:flex-end}@media(max-width:1050px){.header-controls{gap:14px}.nav{gap:16px}}@media(max-width:850px){.header-controls{flex-direction:column;align-items:flex-end;gap:12px}.header-controls .nav{max-width:260px}.header-inner{align-items:flex-start}.language-switch a,.language-switch span{padding:7px 10px}}

.entrance{background-color:#091c26;background-repeat:no-repeat;background-size:cover,auto 100%;background-position:center,right center}.entrance h1{max-width:900px}@media(max-width:850px){.entrance{background-size:cover,cover;background-position:center,center 42%}}

/* Full-width Elbphilharmonie hero */
.entrance{background-size:cover,cover;background-position:center,center 32%;background-repeat:no-repeat}@media(max-width:850px){.entrance{background-position:center,center 42%}}

.about-strip{display:flex;align-items:center;gap:24px;padding:21px 26px;border:1px solid var(--line);background:#eeefea;text-decoration:none;margin-bottom:54px}.about-strip strong{font-size:20px;font-weight:500;white-space:nowrap}.about-strip>span{font-size:14px;color:#52676e}.about-strip .about-arrow{margin-left:auto;font-size:26px}.about-strip:hover{background:#e5e9e4}.business-portals{grid-template-columns:repeat(2,minmax(0,1fr))}.business-portals .portal img{height:285px}.business-portals .portal p{max-width:none}.gobat-map{height:380px;border:1px solid var(--line);background:linear-gradient(130deg,#e6ebe5,#f4f1e9);overflow:hidden}.map-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px}.map-placeholder h3{margin-bottom:12px}.map-placeholder p{max-width:540px;font-size:14px}.map-pin{font-size:40px;color:#916138;line-height:1.2;margin-bottom:16px}.map-load{border:0;cursor:pointer;font:inherit;font-size:14px}.map-load:focus-visible{outline:3px solid #b17b43;outline-offset:5px}.gobat-map iframe{width:100%;height:100%;border:0;display:block}.map-directions{margin-top:18px;font-size:14px}@media(max-width:850px){.business-portals{grid-template-columns:1fr}.business-portals .portal{display:block}.business-portals .portal img{height:230px}.about-strip{gap:12px;flex-wrap:wrap;padding:18px;margin-bottom:36px}.about-strip>span:not(.about-arrow){order:3;flex-basis:100%}.gobat-map{height:400px}}

.department-banner{padding:30px 34px;background:#102e3a;color:#fff;border-left:5px solid #d9aa72;margin-bottom:48px}.department-banner strong{display:block;font-size:clamp(22px,2.4vw,32px);font-weight:700;line-height:1.25}.department-banner p{color:#dae3e4;font-size:16px;max-width:850px;margin:14px 0 0}@media(max-width:850px){.department-banner{padding:24px;margin-bottom:32px}}

/* Compact contact layout; applies to both languages and existing pages. */
main:has(.contact-line) .section{padding-top:56px;padding-bottom:56px}
main:has(.contact-line) .section h2{font-size:clamp(25px,2.3vw,32px);line-height:1.25;letter-spacing:-.025em;margin-bottom:24px}
main:has(.contact-line) .section h3{font-size:20px;line-height:1.35;margin-bottom:12px}
main:has(.contact-line) .columns{gap:24px}
main:has(.contact-line) .columns>div{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);padding:28px}
main:has(.contact-line) .columns p{font-size:15px;color:#52676e}
main:has(.contact-line) .button{padding:13px 18px;font-size:13px}
main:has(.contact-line) .contact-line{margin-top:28px;padding:22px 26px;border:1px solid var(--line);background:#e9ede9}
main:has(.contact-line) .contact-line span{font-size:10px;font-weight:700;color:#687b81;margin-bottom:4px}
main:has(.contact-line) .contact-line>a{font-size:20px;font-weight:500;letter-spacing:0;overflow-wrap:anywhere}
main:has(.contact-line) .contact-line p{margin:6px 0 0;font-size:12px}
main:has(.contact-line) .company-details .grid{gap:0;border-top:1px solid var(--line);padding-top:26px}
main:has(.contact-line) .company-details .grid>div{padding:0 26px;border-left:1px solid var(--line)}
main:has(.contact-line) .company-details .grid>div:first-child{padding-left:0;border-left:0}
main:has(.contact-line) .company-details p,main:has(.contact-line) .company-details a{font-size:15px}
main:has(.contact-line) .company-details a{overflow-wrap:anywhere}
@media(max-width:850px){
 main:has(.contact-line) .section{padding-top:38px;padding-bottom:38px}
 main:has(.contact-line) .columns>div{padding:22px}
 main:has(.contact-line) .company-details .grid>div{padding:20px 0;border-left:0;border-bottom:1px solid var(--line)}
 main:has(.contact-line) .company-details .grid>div:first-child{padding-top:0}
 main:has(.contact-line) .contact-line{padding:20px}
 main:has(.contact-line) .contact-line>a{font-size:18px}
}

.supplier-banner{background:#102e3a;color:#fff;border-left:5px solid #d9aa72;padding:48px}.supplier-banner h2{font-weight:700;max-width:850px}.supplier-banner>p:not(.eyebrow){max-width:820px;color:#dce6e8;font-size:17px}.supplier-banner .button{margin-top:12px}@media(max-width:850px){.supplier-banner{padding:28px 24px}.supplier-banner h2{font-size:30px}.supplier-banner>p:not(.eyebrow){font-size:16px}.supplier-banner .button{white-space:normal;gap:16px}}

.gobat-global-development .note p{font-size:16px}.gobat-global-development .note a{font-weight:700;text-underline-offset:4px}

/* Remove the introductory department banner on existing homepages too. */
.department-banner{display:none}
