/*
Theme Name: Room4Sound
Author: Room4Sound
Description: Erste Layoutversion für Room4Sound. Helle Studio-Website mit Projekten und Produktion.
Version: 0.70.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: room4sound
*/
:root{--bg:#f3f2ee;--ink:#252725;--muted:#666b66;--line:#d8d7d1;--accent:#285c60}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button{font:inherit}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.header{border-bottom:1px solid var(--line)}.header-inner{display:grid;grid-template-columns:150px 1fr 150px;align-items:center;min-height:136px;gap:24px}.brand{display:block;width:98px;height:94px;overflow:hidden}.brand img{width:130px;height:130px;max-width:none;margin:-18px 0 0 -16px;mix-blend-mode:multiply}.nav ul{list-style:none;padding:0;margin:0;display:flex;justify-content:center;gap:27px}.nav a,.nav summary{font-size:12px;font-weight:600;letter-spacing:.075em;text-transform:uppercase;cursor:pointer}.nav details{position:relative}.nav summary{list-style:none}.nav summary:after{content:' +';color:var(--accent)}.nav details[open] summary:after{content:' −'}.nav .submenu{position:absolute;z-index:5;top:36px;left:-20px;min-width:210px;padding:16px 20px;background:var(--bg);border:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.languages{justify-self:end;font-size:12px;letter-spacing:.08em;display:flex;gap:12px}.languages .current{border-bottom:2px solid var(--accent)}.languages .preview{color:#8b8e89}.menu-button{display:none}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--accent)}.hero{padding:90px 0 76px;display:grid;grid-template-columns:1.35fr 1fr;gap:80px;align-items:center}h1{font-size:clamp(44px,5.4vw,76px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:22px 0 28px}p{margin:0 0 22px}.intro{max-width:520px;color:var(--muted);font-size:18px}.button{display:inline-block;border-bottom:1px solid var(--accent);padding:8px 0;font-size:13px}.button span{margin-left:28px}.studio-art{height:390px;background:#e4e5de;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:10px;padding:35px}.studio-art i{display:block;width:17px;background:var(--accent);opacity:.8;transform:skewY(-12deg)}.studio-art:after{content:'RAUM FÜR KLANG';position:absolute;bottom:24px;left:28px;font-size:10px;letter-spacing:.22em;color:var(--accent)}.areas{border-top:1px solid var(--line);padding:48px 0 70px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:32px}.section-heading h2{font-size:27px;letter-spacing:-.03em;font-weight:500;margin:0}.section-heading small{color:var(--muted)}.cards{display:grid;grid-template-columns:1fr 1fr;gap:44px}.card{border-top:1px solid var(--line);padding-top:22px}.card .number{font-size:11px;color:var(--accent)}h3{font-size:34px;font-weight:500;letter-spacing:-.04em;margin:12px 0}.card p{color:var(--muted);max-width:430px}.tags{display:flex;flex-wrap:wrap;gap:9px 20px;font-size:12px}.reference{border-top:1px solid var(--line);padding:42px 0 60px}.reference p{color:var(--muted)}.contact-strip{background:var(--ink);color:var(--bg);padding:45px 0}.contact-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.contact-inner h2{font-size:32px;font-weight:400;margin:0;letter-spacing:-.03em}.contact-inner .button{border-color:#b6ccca}.footer{padding:27px 0;font-size:11px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:24px}.footer nav{display:flex;gap:22px}.page-content{min-height:55vh;padding:70px 0;max-width:850px}.page-content h1{font-size:52px}.page-content a{text-decoration:underline}.notice{font-size:12px;color:var(--muted)}
@media(max-width:1050px){.wrap{width:calc(100% - 44px)}.header-inner{grid-template-columns:110px 1fr 75px;gap:12px}.nav ul{gap:15px}.nav a,.nav summary{font-size:10px}.hero{gap:35px}.studio-art{height:340px}}@media(max-width:760px){.header-inner{grid-template-columns:1fr auto auto;min-height:112px}.brand{transform:scale(.85);transform-origin:left center}.menu-button{display:block;background:none;border:1px solid var(--line);padding:7px 12px;font-size:12px;grid-column:3;grid-row:1}.languages{grid-column:2;grid-row:1}.nav{display:none;grid-column:1/-1;padding:0 0 24px}.nav.is-open{display:block}.nav ul{flex-direction:column;gap:19px}.nav a,.nav summary{font-size:13px}.nav .submenu{position:static;margin-top:12px;border:0;border-left:1px solid var(--line);padding:4px 20px}.hero{padding:48px 0;grid-template-columns:1fr;gap:35px}h1{font-size:49px}.intro{font-size:16px}.studio-art{height:230px}.cards{grid-template-columns:1fr;gap:34px}.section-heading small{display:none}.contact-inner{align-items:flex-start;flex-direction:column}.footer-inner{flex-direction:column;gap:10px}.areas{padding:35px 0 45px}}

.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.screen-reader-text:focus{position:fixed;top:10px;left:10px;width:auto;height:auto;clip-path:none;background:white;padding:12px;z-index:99}a:focus-visible,summary:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}

/* Fixed white header, compact while scrolling */
body{padding-top:137px}.header{position:fixed;inset:0 0 auto;z-index:1000;background:#fff}.header-inner{min-height:136px;transition:min-height .22s ease}.brand{transition:transform .22s ease;transform-origin:left center}.nav{display:block}.nav .submenu{background:#fff}.header.is-compact .header-inner{min-height:86px}.header.is-compact .brand{transform:scale(.68)}html{scroll-padding-top:105px}.admin-bar .header{top:32px}
@media(max-width:760px){body{padding-top:113px}.header-inner{min-height:112px}.header.is-compact .header-inner{min-height:76px}.header.is-compact .brand{transform:scale(.60)}.nav{display:none}.nav.is-open{display:block;max-height:calc(100dvh - 140px);overflow-y:auto}.header.is-compact .nav.is-open{max-height:calc(100dvh - 105px)}}
@media(min-width:761px){.nav{display:block!important}}
@media(min-width:761px) and (max-width:1050px){.header-inner{grid-template-columns:95px 1fr 65px}.nav ul{gap:12px}}
@media(max-width:782px){.admin-bar .header{top:46px}}
@media(max-width:600px){#wpadminbar{position:fixed}}
@media(prefers-reduced-motion:reduce){.header-inner,.brand{transition:none}}

/* Navigation: consistent baseline and clear interaction */
.header-inner{grid-template-columns:110px minmax(0,1fr) 80px;gap:20px}.nav>ul{align-items:center;gap:25px;flex-wrap:nowrap}.nav>ul>li{display:flex;align-items:center;margin:0;padding:0}.nav a,.nav summary{font-size:14px;line-height:1.4;font-weight:600;letter-spacing:.045em;color:var(--ink)}.nav>ul>li>a,.nav summary{display:block;padding:12px 0;white-space:nowrap}.nav>ul>li>a{position:relative}.nav>ul>li>a:after{content:'';position:absolute;left:0;right:0;bottom:5px;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.nav>ul>li>a:hover:after,.nav>ul>li>a:focus-visible:after{transform:scaleX(1)}.nav a:hover,.nav summary:hover{color:var(--accent)}.nav summary:after,.nav details[open] summary:after{content:'⌄';display:inline-block;margin-left:7px;font-size:12px}.nav summary::-webkit-details-marker{display:none}.nav .submenu{top:100%;left:-20px;gap:0;min-width:225px;padding:10px 20px;box-shadow:0 12px 22px #2527250d}.nav .submenu li{display:block}.nav .submenu a{display:block;padding:10px 0;font-size:13px;letter-spacing:.02em;text-transform:none}.nav .submenu a:hover{color:var(--accent);background:#f3f2ee}.nav details[open]>summary{color:var(--accent)}
@media(min-width:761px) and (max-width:1050px){.header-inner{grid-template-columns:85px minmax(0,1fr) 65px;gap:10px}.nav>ul{gap:14px}.nav a,.nav summary{font-size:12px;letter-spacing:.015em}}
@media(max-width:760px){.header-inner{grid-template-columns:1fr auto auto}.menu-button{display:none}.languages{grid-column:3}.nav,.nav.is-open{display:block;grid-column:1/-1;padding:0 0 15px;max-height:none;overflow:visible}.nav>ul{flex-direction:row;justify-content:flex-start;align-items:center;gap:10px 18px;flex-wrap:wrap}.nav a,.nav summary{font-size:12px;letter-spacing:.015em}.nav>ul>li>a,.nav summary{padding:5px 0}.nav .submenu{position:absolute;top:100%;left:0;margin:0;padding:10px 16px;border:1px solid var(--line);max-width:calc(100vw - 44px);min-width:180px}.header.is-compact .nav.is-open{max-height:none}body{padding-top:165px}html{scroll-padding-top:155px}}
@media(prefers-reduced-motion:reduce){.nav>ul>li>a:after{transition:none}}

@media(min-width:761px) and (max-width:1050px){.header-inner{grid-template-columns:75px minmax(0,1fr) 60px;gap:8px}.nav>ul{gap:12px}.nav a,.nav summary{font-size:11px;letter-spacing:.01em}}

/* Studio hero */
.hero{grid-template-columns:1fr 1.1fr;gap:48px;padding:76px 0}.hero h1{font-size:clamp(38px,4.5vw,62px);line-height:1.13;letter-spacing:-.045em;margin:22px 0 25px}.hero h1 span{display:block;margin-top:.15em}.hero-services{font-size:13px;color:var(--muted);line-height:2;max-width:520px;margin:0}.hero-services span{color:#a4a9a3;padding:0 4px}.hero-picture{display:block;overflow:hidden;background:#dedfd8}.hero-picture img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
@media(max-width:1050px){.hero{gap:28px}.hero h1{font-size:clamp(34px,4.5vw,48px)}}@media(max-width:760px){.hero{grid-template-columns:1fr;padding:42px 0;gap:32px}.hero h1{font-size:clamp(34px,7.4vw,52px)}.hero-services{font-size:13px}.hero-picture{width:100%}}

.hero h1 span{font-size:.76em;line-height:1.18;letter-spacing:-.04em}.card h3{max-width:480px}

.mastering-intro{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:60px;padding:75px 0 55px}.mastering-intro h1{font-size:clamp(40px,4.5vw,64px)}.mastering-lead{font-size:18px;color:var(--muted);max-width:520px}.mastering-cover{display:block;width:100%;height:auto}.mastering-story{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;border-top:1px solid var(--line);padding:45px 0}.mastering-page h2{font-size:34px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 24px}.mastering-story p{color:var(--muted)}.mastering-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:60px}.mastering-gallery figure{margin:0}.mastering-gallery img{display:block;width:100%;height:auto}.mastering-gallery figcaption{font-size:12px;color:var(--muted);padding-top:10px}.mastering-prices{max-width:1000px;padding:40px 0 60px;border-top:1px solid var(--line)}.mastering-prices>.eyebrow{margin-bottom:16px}.price-note,.payment-note{color:var(--muted);font-size:13px}.price-row{display:grid;grid-template-columns:1fr auto;gap:30px;border-top:1px solid var(--line);padding:24px 0}.price-row h3{font-size:20px;letter-spacing:-.02em;margin:0 0 5px}.price-row p{font-size:14px;color:var(--muted);margin:0;max-width:580px}.price-value{text-align:right;white-space:nowrap}.price-value strong{display:block;font-size:23px;font-weight:500}.price-value small{font-size:12px;font-weight:400}.price-value span{display:block;font-size:12px;color:var(--muted)}.mastering-notes{display:grid;grid-template-columns:1fr 1fr;gap:35px;background:#e8e9e2;padding:28px;margin:20px 0 55px}.mastering-notes h3{font-size:20px;margin:0 0 10px}.mastering-notes p{font-size:14px;margin:0;color:var(--muted)}.payment-note{margin-top:20px}.test-master{border-left:3px solid var(--accent);padding:10px 28px;margin-top:38px}.test-master h3{font-size:29px;margin:10px 0}.test-master p{margin:0;color:var(--muted)}@media(max-width:760px){.mastering-intro,.mastering-story{grid-template-columns:1fr;gap:25px;padding:40px 0}.mastering-gallery{grid-template-columns:1fr;gap:25px;padding-bottom:40px}.mastering-notes{grid-template-columns:1fr;padding:22px;gap:25px}.price-row{grid-template-columns:1fr;gap:12px}.price-value{text-align:left}.mastering-page h2{font-size:29px}.mastering-prices{padding-top:32px}}

.mastering-tone{background:#e8e9e2;margin-bottom:40px}.mastering-tone .mastering-story{border-top:0;padding-top:50px}.mastering-tone .mastering-gallery{padding-bottom:50px}.mastering-prices{border-top:0}@media(max-width:760px){.mastering-tone .mastering-story{padding-top:36px}.mastering-tone .mastering-gallery{padding-bottom:36px}}

.cover-carousel{margin:38px 0 42px;padding-top:26px;border-top:1px solid var(--line)}.cover-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.cover-heading h3{font-size:21px;letter-spacing:-.02em;margin:0}.cover-controls{display:flex;gap:8px}.cover-controls button{border:1px solid var(--line);background:transparent;width:36px;height:36px;cursor:pointer;color:var(--ink);font-size:20px;line-height:1}.cover-controls button:hover{background:var(--accent);border-color:var(--accent);color:white}.cover-controls button:disabled{opacity:.3;cursor:default}.cover-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;list-style:none;margin:0;padding:0 0 12px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.cover-track li{flex:0 0 160px;scroll-snap-align:start}.cover-track img{width:160px;height:160px;object-fit:contain;display:block;background:transparent}.cover-track:focus-visible{outline:2px solid var(--accent);outline-offset:5px}@media(max-width:760px){.cover-track{gap:14px}.cover-track li{flex-basis:140px}.cover-track img{width:140px;height:140px}.cover-heading h3{font-size:18px}}

.cover-carousel{max-width:660px;margin-left:auto;margin-right:auto}.cover-track{gap:20px;scrollbar-width:none}.cover-track::-webkit-scrollbar{display:none}.cover-track li{flex:0 0 calc((100% - 40px)/3);min-width:0}.cover-track img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}.cover-controls .cover-pause{width:auto;min-width:52px;padding:0 9px;font-size:11px}@media(max-width:520px){.cover-track{gap:14px}.cover-track li{flex-basis:calc((100% - 14px)/2)}.cover-heading{gap:10px}.cover-heading h3{font-size:16px}.cover-controls{gap:5px}.cover-controls button{width:30px;height:32px}}

.cover-controls{display:none}

.home-areas-tone{background:#e8e9e2}.home-areas-tone .areas{border-top:0}.home-areas-tone .card{border-color:#c9ccc3}

/* Current destination and parent menu indicator. */
.nav>ul>li>a.is-current:after{transform:scaleX(1)}.nav a.is-current{color:var(--accent)}.nav summary{position:relative}.nav details.is-current-group>summary{color:var(--accent)}.nav details.is-current-group>summary:before{content:'';position:absolute;left:0;right:0;bottom:5px;height:2px;background:var(--accent);transform:scaleX(1);transform-origin:left;transition:transform .18s ease}.nav details.is-current-group[open]>summary:before{transform:scaleX(0)}.nav .submenu a.is-current{font-weight:700;background:#f3f2ee}@media(prefers-reduced-motion:reduce){.nav details.is-current-group>summary:before{transition:none}}

.hero h1.hero-brand-title .hero-city{display:inline;font-size:.48em;font-weight:400;letter-spacing:-.02em;line-height:inherit;margin:0;white-space:nowrap;color:var(--muted)}

.mastering-intro h1{margin-bottom:12px}.mastering-subtitle{font-size:clamp(23px,2.5vw,32px);font-weight:400;line-height:1.3;letter-spacing:-.025em;color:var(--muted);margin:0 0 26px}

/* Pending update: show the new Home studio photograph at its full 4:3 ratio. */
.hero-picture img{aspect-ratio:4/3}

.contact-page-intro{padding:70px 0 45px}.contact-page-intro h1{margin:20px 0 15px}.contact-copy{max-width:640px;color:var(--muted);font-size:17px}.contact-copy .button{color:var(--accent)}.contact-photo{padding-bottom:65px}.contact-photo img{display:block;width:100%;height:auto}@media(max-width:760px){.contact-page-intro{padding-top:40px}.contact-copy{font-size:16px}.contact-photo{padding-bottom:40px}}

.contact-title{padding-top:48px}.contact-title h1{margin:0 0 30px}.contact-page .contact-photo{padding-bottom:0}.contact-page-intro{padding-top:42px;padding-bottom:65px}@media(max-width:760px){.contact-title{padding-top:32px}.contact-title h1{margin-bottom:24px}.contact-page-intro{padding-top:30px}}

.contact-hero{position:relative;margin-top:42px;isolation:isolate}.contact-hero h1{position:absolute;z-index:2;left:clamp(24px,5vw,70px);top:50%;transform:translateY(-50%);margin:0;color:#f8f7f2;text-shadow:0 2px 18px #0008;font-size:clamp(44px,6vw,80px);line-height:1.1}.contact-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0003,transparent 75%);pointer-events:none;z-index:1}.contact-hero picture{display:block}@media(max-width:760px){.contact-hero{margin-top:28px}.contact-hero img{min-height:210px;object-fit:cover}.contact-hero h1{left:24px}}

.contact-hero h1{left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;width:calc(100% - 48px)}@media(max-width:760px){.contact-hero h1{left:50%}}

.mixing-page h2{font-size:34px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 24px}.mixing-gallery figure{display:flex;flex-direction:column}.mixing-gallery img{aspect-ratio:3/2;object-fit:contain;background:#e8e9e2}.mixing-gallery figcaption{margin-top:auto}.mixing-fields{padding:12px 0 65px}.mixing-fields>.eyebrow{margin-bottom:18px}.mixing-field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:35px}.mixing-field-grid article{border-top:1px solid var(--line);padding-top:20px}.mixing-field-grid h3{font-size:25px;margin:0 0 15px}.mixing-field-grid p{font-size:15px;color:var(--muted)}.mixing-inquiry{max-width:760px;margin:25px 0 0;color:var(--muted);font-size:15px}@media(max-width:760px){.mixing-field-grid{grid-template-columns:1fr;gap:20px}.mixing-page h2{font-size:29px}.mixing-fields{padding-bottom:40px}}

.hero-profile{color:var(--muted);font-size:14px;line-height:1.8;margin:0;max-width:550px}.hero-profile .hero-profile-name{font-size:19px;font-weight:500;color:var(--ink);white-space:nowrap}.hero-profile-divider{padding:0 5px;color:#a4a9a3}.insights-title{font-size:29px;font-weight:500;letter-spacing:-.03em;margin:0 0 18px}@media(max-width:760px){.hero-profile{font-size:13px}.hero-profile .hero-profile-name{font-size:18px}}

/* Compact mobile header with collapsed navigation. */
@media(max-width:760px){.header-inner{grid-template-columns:1fr auto auto}.menu-button{display:block;grid-column:3;grid-row:1}.languages{grid-column:2;grid-row:1}.nav{display:none;grid-column:1/-1;padding:0 0 22px}.nav.is-open{display:block;max-height:calc(100dvh - 140px);overflow-y:auto}.header.is-compact .nav.is-open{max-height:calc(100dvh - 105px)}.nav>ul{flex-direction:column;align-items:stretch;gap:12px}.nav>ul>li{display:block}.nav a,.nav summary{font-size:14px}.nav>ul>li>a,.nav summary{padding:8px 0}.nav .submenu{position:static;min-width:0;max-width:none;margin-top:6px;padding:4px 0 4px 18px;border:0;border-left:1px solid var(--line);box-shadow:none;gap:0}.nav .submenu a{font-size:13px}.nav>ul>li>a{width:fit-content}.nav details.is-current-group>summary:before{right:auto;width:100%}body{padding-top:113px}}

.mixing-gallery img{aspect-ratio:4/3;object-fit:cover}

.contact-hero h1{font-size:clamp(32px,4vw,52px)}.contact-copy .contact-email{font-size:clamp(22px,3.2vw,34px);font-weight:500;line-height:1.4;letter-spacing:-.02em;padding:10px 0;overflow-wrap:anywhere}.contact-copy .contact-email span{margin-left:12px}

.references-intro{padding:65px 0 25px}.references-intro h1{margin:20px 0}.references-featured{padding-bottom:65px}.references-page h2{font-size:34px;font-weight:500;letter-spacing:-.03em;line-height:1.2;margin:0 0 10px}.references-page h2 span{font-size:.65em;color:var(--muted)}.references-subtitle{font-size:18px;color:var(--muted);margin-bottom:32px}.reference-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}.reference-poster{aspect-ratio:2/3;display:flex;align-items:center;justify-content:center}.reference-poster img{width:100%;height:100%;object-fit:contain}.reference-card h3{font-size:20px;line-height:1.3;letter-spacing:-.02em;margin:20px 0 12px}.reference-card p{font-size:12px;color:var(--muted);line-height:1.9}.references-list-tone{background:#e8e9e2}.references-list-section{padding:50px 0}.synchron-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 35px}.synchron-list li{border-top:1px solid #c9ccc3;padding:13px 0}.synchron-list span{display:block;font-size:15px}.synchron-list small{font-size:12px;color:var(--muted)}.references-more{font-size:14px;color:var(--muted);margin:25px 0 0}@media(max-width:1000px){.reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.synchron-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.references-intro{padding-top:35px}.reference-grid{grid-template-columns:1fr;gap:30px}.reference-poster{max-width:310px;margin:auto}.references-page h2{font-size:28px}.synchron-list{grid-template-columns:1fr}.references-featured{padding-bottom:35px}}

.references-music{padding:50px 0}

.music-reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.music-reference{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line);padding-top:24px}.music-reference-cover{width:min(100%,280px);height:auto;aspect-ratio:1;object-fit:contain;margin-bottom:10px}.music-reference h3{font-size:25px;line-height:1.3;margin:14px 0}.music-reference p{font-size:14px;color:var(--muted);line-height:1.9}@media(max-width:760px){.music-reference-grid{grid-template-columns:1fr;gap:28px}}

.music-reference-cover{width:200px;max-width:100%;height:200px;object-fit:contain}.music-reference-grid{align-items:start}

.reference-poster{aspect-ratio:800/1132;overflow:hidden}.reference-poster img{object-fit:cover;object-position:center top}

.hero-personal-intro{max-width:550px;margin:24px 0 0;color:var(--muted);font-size:16px;line-height:1.75}@media(max-width:760px){.hero-personal-intro{font-size:15px}}

/* Align the Home introduction with the top of the photograph. */
.hero{align-items:start}

/* Full-width contact banner directly below the fixed header. */
.contact-page .contact-banner{width:100%;max-width:none;margin:0;padding:0}.contact-banner picture{display:block}.contact-banner img{display:block;width:100%;height:clamp(190px,29vw,430px);object-fit:cover;object-position:center}.contact-page-intro h1{color:#252725;margin:0 0 18px;font-size:clamp(36px,4vw,52px);line-height:1.15}.contact-page-intro{padding-top:38px}

/* Compact reference lists: details follow the name inline. */
.synchron-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 22px}.synchron-list li{padding:8px 0;line-height:1.5}.synchron-list span{display:inline;font-size:13px}.synchron-list small{display:inline;font-size:12px}.references-list-section{padding-top:38px;padding-bottom:38px}@media(max-width:1000px){.synchron-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.synchron-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}}@media(max-width:400px){.synchron-list{grid-template-columns:1fr}}

/* Compact music references, four across on desktop. */
.music-reference-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px}.music-reference{padding-top:16px;min-width:0}.music-reference-cover{width:100%;max-width:200px;height:auto;aspect-ratio:1;object-fit:contain;margin-bottom:4px}.music-reference h3{font-size:18px;line-height:1.3;margin:12px 0 9px;letter-spacing:-.02em;overflow-wrap:anywhere}.music-reference p{font-size:12px;line-height:1.7;margin-bottom:0}@media(max-width:1000px){.music-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 20px}}@media(max-width:760px){.music-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.music-reference h3{font-size:16px}.music-reference p{font-size:11px}}@media(max-width:380px){.music-reference-grid{grid-template-columns:1fr}.music-reference-cover{max-width:180px}}

.film-intro{padding:65px 0 50px}.film-intro h1{margin:22px 0 16px}.film-intro-copy{max-width:820px;color:var(--muted);font-size:17px;line-height:1.8}.film-services-tone{background:#e8e9e2}.film-services{padding:45px 0}.film-synchron-page h2{font-size:32px;font-weight:500;letter-spacing:-.03em;line-height:1.2;margin:0 0 25px}.film-services ul{padding:0;margin:0;list-style:none;max-width:950px;display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.film-services li{padding:15px 0;border-top:1px solid #c9ccc3;font-size:16px}.film-projects{padding:45px 0 60px}.film-projects .button{margin-top:22px}.film-contact-copy{max-width:640px;font-size:14px;margin:14px 0 0;color:#d8d7d1}@media(max-width:760px){.film-intro{padding:38px 0}.film-intro-copy{font-size:16px}.film-services ul{grid-template-columns:1fr}.film-synchron-page h2{font-size:28px}}

.film-photos{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-bottom:50px}.film-photos figure{margin:0}.film-photos img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.film-photos figcaption{font-size:12px;color:var(--muted);padding-top:10px}@media(max-width:760px){.film-photos{grid-template-columns:1fr;gap:25px;padding-bottom:35px}}

.film-intro{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.film-intro-photo{display:block}.film-intro-photo img{display:block;width:100%;height:auto}.film-intro-copy{font-size:16px}@media(max-width:760px){.film-intro{grid-template-columns:1fr;gap:28px}}

.film-services-tone + .film-photos{padding-top:45px}

.film-intro h1{font-size:clamp(34px,3.8vw,50px)}.sounddesign-page h2{font-size:34px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 24px}.sounddesign-live{padding-bottom:50px}.sounddesign-live figure{margin:0;max-width:750px}.sounddesign-live img{display:block;width:100%;height:auto}.sounddesign-live figcaption{font-size:12px;color:var(--muted);padding-top:10px}@media(max-width:760px){.sounddesign-page h2{font-size:29px}.sounddesign-live{padding-bottom:35px}}

.sounddesign-live{display:grid;grid-template-columns:1fr 1fr;gap:30px}.sounddesign-live figure{max-width:none}.sounddesign-live img{aspect-ratio:3/2;object-fit:contain}@media(max-width:760px){.sounddesign-live{grid-template-columns:1fr}}

.production-related{padding:35px 0 42px;border-bottom:1px solid var(--line)}.production-related h2{font-size:20px;font-weight:500;letter-spacing:-.02em;margin:0 0 20px}.production-related-links{display:flex;flex-wrap:wrap;gap:16px 35px}.production-related-links a{font-size:15px;border-bottom:1px solid var(--line);padding:5px 0}.production-related-links a:hover{border-color:var(--accent)}

/* Smaller editorial headings, retaining Room4Sound as the main visual title. */
.card h3{font-size:27px;line-height:1.25}.references-intro h1,.page-content h1{font-size:42px}.references-page h2,.mastering-page h2,.mixing-page h2,.film-synchron-page h2,.sounddesign-page h2{font-size:27px}.mastering-subtitle{font-size:clamp(21px,2.2vw,27px)}.insights-title{font-size:27px}.references-inline-list{font-size:14px;line-height:1.9;color:var(--muted);margin:0}.insights-covers{display:grid;grid-template-columns:repeat(4,minmax(0,140px));gap:24px;margin:22px 0 25px}.insights-covers figure{margin:0;min-width:0}.insights-covers img{display:block;width:100%;height:140px;object-fit:contain;object-position:center}.insights-covers figcaption{font-size:11px;line-height:1.4;color:var(--muted);margin-top:9px}@media(max-width:760px){.card h3{font-size:24px}.references-intro h1,.page-content h1{font-size:36px}.references-inline-list{font-size:13px;line-height:1.85}.insights-covers{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.insights-covers img{height:auto;aspect-ratio:1;object-fit:contain}.insights-covers figcaption{font-size:10px}}

/* Consistent page titles; Home branding keeps its own typography. */
.mastering-intro h1,.film-intro h1,.references-intro h1,.contact-page-intro h1,.page-content h1{font-size:clamp(40px,4.5vw,64px);line-height:1.08;letter-spacing:-.055em;font-weight:500}

.culture-projects-intro{padding:65px 0 30px}.culture-projects h1{font-size:clamp(40px,4.5vw,64px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:22px 0}.citizen-project{padding:35px 0 55px;background:#e8e9e2}.citizen-project h2{font-size:30px;font-weight:500;line-height:1.25;letter-spacing:-.03em;margin:18px 0 24px}.citizen-summary{max-width:850px;font-size:19px;line-height:1.7}.citizen-description{max-width:850px;color:var(--muted)}.citizen-description h3{font-size:23px;color:var(--ink);margin:25px 0 14px}.citizen-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:35px 0}.citizen-facts>div{border-top:1px solid #c9ccc3;padding-top:14px}.citizen-facts dt{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.citizen-facts dd{margin:0;font-size:14px}.citizen-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.citizen-gallery figure{margin:0}.citizen-gallery img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}@media(max-width:760px){.culture-projects-intro{padding-top:38px}.citizen-project h2{font-size:25px}.citizen-summary{font-size:17px}.citizen-facts{grid-template-columns:1fr 1fr}.citizen-gallery{grid-template-columns:1fr 1fr;gap:14px}}

.projects-overview-title{font-size:27px;font-weight:500;letter-spacing:-.03em;margin:20px 0 15px}.projects-overview-copy{max-width:850px;font-size:17px;color:var(--muted);line-height:1.75;margin-bottom:10px}.citizen-facts{grid-template-columns:repeat(3,minmax(0,1fr));margin:25px 0 30px}.citizen-description + .citizen-gallery{margin-top:30px}@media(max-width:760px){.citizen-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-overview-copy{font-size:16px}}@media(max-width:400px){.citizen-facts{grid-template-columns:1fr}}

.citizen-zoom{display:block;cursor:zoom-in}.photo-dialog{border:0;padding:48px 14px 14px;background:#171a17;color:white;width:fit-content;max-width:96vw;max-height:94dvh}.photo-dialog::backdrop{background:#000c}.photo-dialog>img{display:block;width:auto;height:auto;max-width:90vw;max-height:calc(90dvh - 65px);object-fit:contain}.photo-dialog-close{position:absolute;top:9px;right:12px;color:white;background:transparent;border:1px solid #777;padding:4px 10px;cursor:pointer;font-size:13px}.photo-is-open{overflow:hidden}@media(max-width:760px){.citizen-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.citizen-gallery img{aspect-ratio:3/4;height:auto}}

.workshops-intro{padding:65px 0 30px}.workshops-intro h1{font-size:clamp(40px,4.5vw,64px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:22px 0}.playtronica-workshop{padding:35px 0 55px;background:#e8e9e2}.playtronica-workshop h2{font-size:30px;font-weight:500;line-height:1.25;letter-spacing:-.03em;margin:18px 0 24px}.workshop-lead{max-width:850px;font-size:19px;line-height:1.7}.workshop-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:30px 0 35px}.workshop-facts>div{border-top:1px solid #c9ccc3;padding-top:14px}.workshop-facts dt{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.workshop-facts dd{margin:0;font-size:14px}.workshop-concept{max-width:850px;color:var(--muted);line-height:1.8}.workshop-concept h3{font-size:23px;color:var(--ink);margin:28px 0 14px}@media(max-width:760px){.workshops-intro{padding-top:38px}.playtronica-workshop h2{font-size:25px}.workshop-lead{font-size:17px}.workshop-facts{grid-template-columns:1fr 1fr}}@media(max-width:400px){.workshop-facts{grid-template-columns:1fr}}

.events-intro{padding:65px 0 30px}.events-intro h1{font-size:clamp(40px,4.5vw,64px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:22px 0}.sonic-event{padding:35px 0 55px;background:#e8e9e2}.sonic-event-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;align-items:start}.sonic-event h2{font-size:30px;font-weight:500;line-height:1.25;letter-spacing:-.03em;margin:18px 0 25px}.event-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 0 30px}.event-facts>div{border-top:1px solid #c9ccc3;padding-top:12px}.event-facts dt{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:7px}.event-facts dd{margin:0;font-size:14px}.event-description{color:var(--muted);line-height:1.8}.event-poster{margin:0;max-width:420px;justify-self:end}.event-poster img{display:block;width:100%;height:auto}.event-poster figcaption{font-size:12px;color:var(--muted);padding-top:10px}@media(max-width:760px){.events-intro{padding-top:38px}.sonic-event-grid{grid-template-columns:1fr;gap:25px}.sonic-event h2{font-size:25px}.event-poster{max-width:240px;justify-self:start}}

.partners-intro{padding:65px 0 30px}.partners-intro h1{font-size:clamp(40px,4.5vw,64px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:22px 0}.partners-section{background:#e8e9e2;padding:40px 0 50px}.partner-entry{max-width:850px}.partner-entry h2{font-size:30px;line-height:1.25;letter-spacing:-.03em;font-weight:500;margin:18px 0 24px}.partner-entry p{color:var(--muted);font-size:17px;line-height:1.8}@media(max-width:760px){.partners-intro{padding-top:38px}.partner-entry h2{font-size:25px}.partner-entry p{font-size:16px}}

.partner-logo{display:block;width:150px;max-width:40vw;height:auto;margin-bottom:26px}

.partner-entry{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:40px;max-width:none;align-items:start}.partner-entry .partner-logo{width:200px;max-width:100%;margin:0}.about-intro{padding:65px 0 40px}.about-intro h1{font-size:clamp(40px,4.5vw,64px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:22px 0 28px}.about-intro>p{max-width:850px;font-size:18px;line-height:1.8;color:var(--muted)}.about-profiles{background:#e8e9e2;padding:45px 0 55px}.about-person{display:grid;grid-template-columns:300px minmax(0,1fr);gap:45px;align-items:start;padding-bottom:40px;margin-bottom:40px;border-bottom:1px solid #c9ccc3}.about-person:last-child{padding-bottom:0;margin-bottom:0;border-bottom:0}.about-portrait{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.about-person h2{font-size:30px;font-weight:500;letter-spacing:-.03em;line-height:1.2;margin:0 0 12px}.about-person p{max-width:720px;color:var(--muted);line-height:1.8}.about-person .about-birth{font-size:12px;margin-bottom:22px}@media(max-width:760px){.partner-entry{grid-template-columns:1fr;gap:24px}.partner-entry .partner-logo{width:140px}.about-intro{padding-top:38px}.about-person{grid-template-columns:1fr;gap:24px}.about-portrait{max-width:220px}.about-person h2{font-size:26px}.about-intro>p{font-size:16px}}

.partner-entry + .partner-entry{margin-top:40px;padding-top:40px;border-top:1px solid #c9ccc3}.partner-entry .partner-logo{aspect-ratio:1;object-fit:contain}

.partner-entry .partner-zm-icon{width:96px;justify-self:center}.partner-carrier{font-size:14px!important}@media(max-width:760px){.partner-entry .partner-zm-icon{justify-self:start}}

.partner-entry .partner-zm-icon{width:200px;justify-self:end}@media(max-width:760px){.partner-entry .partner-zm-icon{width:140px;justify-self:start}}

.workshop-body{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr);gap:40px;align-items:start}.workshop-body .workshop-concept{max-width:none;line-height:1.65}.workshop-body .workshop-concept h3{margin-top:0}.workshop-body .workshop-concept p{margin-bottom:16px}.workshop-photo{margin:0;max-width:360px;justify-self:end}.workshop-photo img{display:block;width:100%;height:auto}@media(max-width:760px){.workshop-body{grid-template-columns:1fr;gap:24px}.workshop-photo{max-width:220px;justify-self:start}}

/* Compact, left-aligned film posters on mobile, matching Events. */
@media(max-width:760px){.reference-poster{width:240px;max-width:100%;margin-left:0;margin-right:0}}

.partner-logo-figure{margin:0;justify-self:end;max-width:200px}.partner-logo-figure figcaption{font-size:12px;line-height:1.5;color:var(--muted);margin-top:10px}@media(max-width:760px){.partner-logo-figure{justify-self:start;max-width:140px}}

.partner-entry h2 .partner-title-detail{font-size:.65em;line-height:1.4;font-weight:400;letter-spacing:0;color:var(--muted)}

.playtronica-workshop .workshop-facts + .workshop-photo{margin:0 0 30px;justify-self:start}.workshop-body{grid-template-columns:1fr}.workshop-body .workshop-concept{max-width:850px}

.workshop-body{grid-template-columns:minmax(220px,1fr) minmax(0,1.7fr);gap:40px;align-items:start}.workshop-body>.workshop-photo{margin:0;justify-self:start;width:100%;max-width:360px}.workshop-body .workshop-concept{max-width:none}@media(max-width:760px){.workshop-body{grid-template-columns:1fr;gap:24px}.workshop-body>.workshop-photo{max-width:220px}}

.partner-entry .partner-people{font-size:14px;margin-top:-10px;margin-bottom:22px;color:var(--muted)}

.media-resilience-project{background:var(--bg);border-top:1px solid var(--line)}.project-subtitle{font-size:17px;color:var(--muted);margin-top:-10px;margin-bottom:24px}

.nature-workshop{background:var(--bg);border-top:1px solid var(--line)}.nature-workshop .button{margin-top:10px}

.nature-gallery{margin:30px 0 25px}.nature-gallery img{aspect-ratio:4/3}

.workshops-overview-label{font-size:15px;color:var(--muted);margin:0 0 8px}

/* Partner headings above; logo left of copy. */
.partner-entry{display:block}.partner-heading{margin-bottom:24px}.partner-heading h2{margin-bottom:14px}.partner-content{display:grid;grid-template-columns:180px minmax(0,1fr);gap:35px;align-items:start}.partner-content>.partner-logo,.partner-content>.partner-logo-figure{width:180px;max-width:100%;justify-self:start;margin:0}.partner-content .partner-logo-figure .partner-logo{width:100%}.partner-content .partner-text p:first-child{margin-top:0}@media(max-width:760px){.partner-content{grid-template-columns:1fr;gap:22px}.partner-content>.partner-logo,.partner-content>.partner-logo-figure{width:140px}.partner-heading{margin-bottom:20px}}

#playtronica .citizen-gallery{margin:30px 0 25px}

.contact-copy .contact-owner{font-size:14px;line-height:1.7;margin-top:24px;margin-bottom:0}.contact-owner span{color:var(--ink)}

.replay-project + .citizen-project{background:var(--bg);border-top:1px solid var(--line)}.replay-project ~ .media-resilience-project{background:#e8e9e2}

.replay-project ~ .media-resilience-project{background:var(--bg)}.media-resilience-project + #citizen-game{background:#e8e9e2;border-top:1px solid var(--line)}

.projects-intro-with-photo{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:60px;padding-bottom:50px}.projects-overview-photo{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center 55%}@media(max-width:760px){.projects-intro-with-photo{grid-template-columns:1fr;gap:24px;padding-bottom:32px}.projects-overview-photo{max-width:420px}}

/* Slightly richer colour for the project overview photo in both languages. */
.projects-overview-photo{filter:saturate(1.25)}

.film-direction-photo{filter:saturate(.82)}

/* Gentle red correction for the home portrait; preserve its luminance. */
.hero-picture{position:relative;isolation:isolate}.hero-picture::after{content:"";position:absolute;inset:0;background:rgba(190,30,55,.04);mix-blend-mode:color;pointer-events:none}

.r4s-section{padding-top:40px;padding-bottom:40px}.r4s-editable>p,.r4s-editable>h1,.r4s-editable>h2,.r4s-editable>h3,.r4s-editable>.wp-block-image,.r4s-editable>.wp-block-gallery,.r4s-editable>.partner-entry{width:min(1240px,calc(100% - 80px));margin-left:auto;margin-right:auto}.r4s-editable>.partner-entry{margin-top:35px;margin-bottom:35px}@media(max-width:1050px){.r4s-editable>p,.r4s-editable>h1,.r4s-editable>h2,.r4s-editable>h3,.r4s-editable>.wp-block-image,.r4s-editable>.wp-block-gallery,.r4s-editable>.partner-entry{width:calc(100% - 44px)}}

.r4s-editable>.wp-block-columns,.r4s-editable>.wp-block-group:not(.alignfull),.r4s-editable>.wp-block-list{width:min(1240px,calc(100% - 80px));margin-left:auto;margin-right:auto}@media(max-width:1050px){.r4s-editable>.wp-block-columns,.r4s-editable>.wp-block-group:not(.alignfull),.r4s-editable>.wp-block-list{width:calc(100% - 44px)}}
