@font-face{font-family:"Cormorant Garamond";src:url("../fonts/cormorant-garamond-latin-wght-normal.woff2") format("woff2");font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url("../fonts/cormorant-garamond-latin-wght-italic.woff2") format("woff2");font-style:italic;font-weight:300 700;font-display:swap}
@font-face{font-family:"Inter";src:url("../fonts/inter-latin-wght-normal.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}

:root{--bg:#f5f6f3;--soft:#ecefea;--panel:rgba(247,248,245,.9);--ink:#181b19;--muted:#696f6a;--quiet:#969b96;--line:rgba(24,27,25,.13);--line-light:rgba(24,27,25,.075);--white:#fff;--side:236px;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;min-width:320px;color:var(--ink);background:var(--bg);font-family:var(--sans);font-size:15px;line-height:1.7;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;transition:opacity .42s ease}
.js body{opacity:0}.js body.is-ready{opacity:1}body.page-leaving{opacity:0}
::selection{color:#fff;background:#424944}img{max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:1px solid var(--ink);outline-offset:5px}
.skip-link{position:fixed;z-index:2000;top:10px;left:10px;padding:10px 14px;color:#fff;background:var(--ink);transform:translateY(-140%);transition:transform .18s}.skip-link:focus{transform:none}

/* Permanent editorial navigation */
.site-sidebar{position:fixed;z-index:100;inset:0 auto 0 0;width:var(--side);overflow-y:auto;border-right:1px solid var(--line-light);background:var(--panel);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.sidebar-inner{display:flex;min-height:100%;flex-direction:column;padding:34px 31px 27px}.brand{display:inline-flex;width:fit-content;align-items:center;gap:13px;margin-bottom:39px}.brand-logo{display:block;width:48px;height:43px;object-fit:contain;opacity:.82}.brand-copy{display:grid;gap:1px;line-height:1.15}.brand-name{font-family:var(--serif);font-size:19px;font-weight:500}.brand-role{color:var(--muted);font-size:8px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.sidebar-nav{display:grid;gap:26px}.nav-group{display:grid;gap:8px}.nav-heading{margin:0 0 2px;color:var(--quiet);font-size:9px;font-weight:600;letter-spacing:.19em;text-transform:uppercase}.nav-link{position:relative;width:fit-content;color:#343936;font-family:var(--serif);font-size:16px;line-height:1.35}.nav-link::after{position:absolute;right:0;bottom:-2px;left:0;height:1px;background:currentColor;content:"";transform:scaleX(0);transform-origin:right;transition:transform .36s var(--ease)}.nav-link:hover::after,.nav-link[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}.nav-secondary{gap:7px;padding-top:5px;border-top:1px solid var(--line-light)}
.sidebar-bottom{display:grid;gap:15px;margin-top:auto;padding-top:36px}.language-switch{display:flex;align-items:center;gap:7px;color:var(--quiet);font-size:9px;font-weight:600;letter-spacing:.15em}.language-button{padding:0;border:0;color:inherit;background:none;cursor:pointer}.language-button:hover,.language-button.is-active{color:var(--ink)}.instagram-link{width:fit-content;color:var(--muted);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.instagram-link:hover{color:var(--ink)}.mobile-header,.sidebar-close{display:none}
.site-main,.site-footer{margin-left:var(--side)}

/* Home hero */
.hero{position:relative;min-height:100svh;overflow:hidden;color:#fff;background:#252c2d}.hero-image-wrap{position:absolute;inset:-4%;overflow:hidden}.hero-image{width:100%;height:100%;object-fit:cover;object-position:50% 52%;transform:scale(1.045);will-change:transform}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,14,15,.13),transparent 43%),linear-gradient(0deg,rgba(8,11,12,.58),rgba(8,11,12,.04) 57%)}
.hero-copy{position:absolute;z-index:2;right:clamp(28px,7.2vw,112px);bottom:clamp(46px,9vh,96px);left:clamp(28px,7.2vw,112px);max-width:820px}.hero-kicker,.eyebrow{display:block;margin-bottom:14px;font-size:9px;font-weight:600;letter-spacing:.25em;text-transform:uppercase}.hero-title{max-width:800px;margin:0;font-family:var(--serif);font-size:clamp(55px,8vw,116px);font-weight:400;letter-spacing:-.035em;line-height:.82}.hero-subtitle{margin:25px 0 0 4px;font-size:clamp(10px,1.1vw,13px);font-weight:500;letter-spacing:.19em;line-height:1.6;text-transform:uppercase}.hero-location{position:absolute;z-index:2;right:clamp(24px,4.5vw,72px);bottom:29px;color:rgba(255,255,255,.68);font-size:8px;letter-spacing:.18em;text-transform:uppercase}

/* Home portfolio sequence */
.home-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(300px,1.4fr);gap:clamp(35px,9vw,145px);align-items:start;max-width:1280px;margin:0 auto;padding:clamp(110px,15vw,220px) clamp(28px,7vw,104px)}.section-number{color:var(--quiet);font-size:9px;font-weight:600;letter-spacing:.2em}.home-intro h2,.page-title,.content-title,.feature-title{font-family:var(--serif);font-weight:400;letter-spacing:-.025em}.home-intro h2{max-width:720px;margin:0;font-size:clamp(39px,5.6vw,76px);line-height:1.02}.home-intro p{max-width:620px;margin:30px 0 0;color:var(--muted);font-size:clamp(14px,1.25vw,17px);line-height:1.9}
.feature-list{display:grid;gap:clamp(120px,18vw,250px);padding:35px clamp(28px,7vw,104px) clamp(130px,18vw,240px)}.feature{display:grid;grid-template-columns:minmax(0,1.46fr) minmax(250px,.74fr);gap:clamp(35px,8vw,130px);align-items:center;max-width:1320px;margin:0 auto}.feature:nth-child(even){grid-template-columns:minmax(250px,.74fr) minmax(0,1.46fr)}.feature:nth-child(even) .feature-media{grid-column:2;grid-row:1}.feature:nth-child(even) .feature-copy{grid-column:1;grid-row:1}.feature-media{position:relative;overflow:hidden;background:var(--soft)}.feature-media img{display:block;width:100%;height:auto;transition:transform 1.4s var(--ease)}.feature:hover .feature-media img{transform:scale(1.012)}.feature-copy{max-width:380px}.feature-copy .eyebrow,.page-intro .eyebrow,.content-section .eyebrow{color:var(--quiet)}.feature-title{margin:0;font-size:clamp(43px,5.2vw,72px);line-height:.95}.feature-copy p{margin:24px 0 0;color:var(--muted);line-height:1.85}
.text-link{position:relative;display:inline-flex;align-items:center;gap:13px;margin-top:28px;padding-bottom:3px;border-bottom:1px solid var(--line);font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.text-link::after{content:"↗";font-size:12px;transition:transform .28s var(--ease)}.text-link:hover{border-color:var(--ink)}.text-link:hover::after{transform:translate(2px,-2px)}

/* Interior page and galleries */
.page-intro{display:grid;grid-template-columns:minmax(0,.65fr) minmax(300px,1.35fr);gap:clamp(35px,9vw,145px);align-items:end;max-width:1280px;min-height:66vh;margin:0 auto;padding:clamp(145px,18vw,240px) clamp(28px,7vw,104px) clamp(85px,10vw,145px)}.page-intro>*{min-width:0}.page-intro-side{align-self:start;padding-top:13px}.page-title{max-width:800px;margin:0;font-size:clamp(60px,9vw,132px);line-height:.82}.page-lead{max-width:660px;margin:34px 0 0;color:var(--muted);font-size:clamp(15px,1.35vw,18px);line-height:1.9}
.gallery-stream{display:grid;gap:clamp(95px,14vw,205px);max-width:1440px;margin:0 auto;padding:20px clamp(24px,6vw,92px) clamp(135px,18vw,250px)}.gallery-block{width:100%}.gallery-block--full{max-width:1160px;margin:0 auto}.gallery-block--pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,6vw,95px);align-items:start}.gallery-block--pair .gallery-frame:nth-child(2){margin-top:clamp(40px,8vw,120px)}.gallery-block--pair:nth-child(4n) .gallery-frame:first-child{margin-top:clamp(35px,6vw,90px)}.gallery-block--pair:nth-child(4n) .gallery-frame:nth-child(2){margin-top:0}.gallery-frame{margin:0;overflow:hidden;background:var(--soft)}.gallery-frame img{display:block;width:100%;height:auto}

/* Text pages */
.content-wrap{max-width:1320px;margin:0 auto;padding:0 clamp(28px,7vw,104px) clamp(125px,16vw,225px)}.content-image-wide{margin:0 0 clamp(90px,13vw,180px);overflow:hidden;background:var(--soft)}.content-image-wide img,.content-image img{display:block;width:100%;height:auto}.content-section{display:grid;grid-template-columns:minmax(0,.75fr) minmax(320px,1.25fr);gap:clamp(40px,9vw,145px);align-items:start;padding:clamp(65px,9vw,120px) 0;border-top:1px solid var(--line-light)}.content-title{max-width:580px;margin:0;font-size:clamp(40px,5.1vw,68px);line-height:1}.content-copy{max-width:660px;color:var(--muted);font-size:15px;line-height:1.95}.content-copy p{margin:0 0 1.35em}.content-copy p:last-child{margin-bottom:0}.content-split{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:clamp(45px,9vw,135px);align-items:center;margin:clamp(60px,10vw,150px) 0}.content-split--reverse .content-image{grid-column:2;grid-row:1}.content-split--reverse .content-copy-panel{grid-column:1;grid-row:1}.content-copy-panel{max-width:500px}.content-copy-panel .content-title{margin-bottom:28px}
.portrait-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(340px,1.1fr);gap:clamp(50px,10vw,150px);align-items:start}.portrait-image{position:sticky;top:60px;overflow:hidden;background:var(--soft)}.portrait-image img{display:block;width:100%;height:auto}.about-copy{padding-top:clamp(20px,6vw,75px)}.about-copy .content-title{margin-bottom:38px}.about-copy p{margin:0 0 1.55em;color:var(--muted);font-size:15px;line-height:1.95}.about-facts{display:grid;gap:20px;margin:48px 0 0;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fact-row{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:baseline}.fact-label{color:var(--quiet);font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.fact-value{font-family:var(--serif);font-size:19px}
.contact-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(360px,1.22fr);gap:clamp(60px,11vw,170px);align-items:start}.contact-details{display:grid;gap:30px}.contact-detail{display:grid;gap:5px}.contact-detail-label{color:var(--quiet);font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}.contact-detail a,.contact-detail span{width:fit-content;font-family:var(--serif);font-size:clamp(21px,2.1vw,29px);line-height:1.25}.contact-detail a{border-bottom:1px solid transparent}.contact-detail a:hover{border-color:var(--line)}.contact-form{display:grid;gap:29px}.form-row{display:grid;gap:9px}.form-row label{color:var(--quiet);font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}.form-row input,.form-row textarea{width:100%;padding:12px 0 13px;border:0;border-bottom:1px solid var(--line);border-radius:0;outline:0;background:transparent;font-family:var(--serif);font-size:22px}.form-row textarea{min-height:150px;resize:vertical}.form-row input:focus,.form-row textarea:focus{border-color:var(--ink)}.form-submit{display:inline-flex;width:fit-content;align-items:center;gap:14px;padding:13px 0 8px;border:0;border-bottom:1px solid var(--ink);background:none;font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;cursor:pointer}.form-submit::after{content:"↗";font-size:13px}.form-note{margin:-9px 0 0;color:var(--quiet);font-size:11px;line-height:1.7}
.cta-panel{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;margin-top:clamp(80px,12vw,170px);padding:clamp(45px,7vw,95px);border:1px solid var(--line-light);background:rgba(255,255,255,.35)}.cta-panel h2{max-width:760px;margin:0;font-family:var(--serif);font-size:clamp(36px,5vw,66px);font-weight:400;line-height:1}.privacy-copy{max-width:760px}.privacy-copy h2{margin:55px 0 18px;font-family:var(--serif);font-size:34px;font-weight:400}.privacy-copy p{color:var(--muted);line-height:1.9}

/* Footer and motion */
.site-footer{padding:0 clamp(28px,7vw,104px) 34px}.footer-inner{display:flex;max-width:1320px;align-items:center;justify-content:space-between;gap:25px;margin:0 auto;padding-top:26px;border-top:1px solid var(--line-light);color:var(--quiet);font-size:9px;letter-spacing:.11em;text-transform:uppercase}.footer-links{display:flex;gap:20px}.footer-links a:hover{color:var(--ink)}
.reveal{opacity:0;filter:blur(6px);transition:opacity 1.25s var(--ease),filter 1.4s var(--ease)}.reveal.is-visible{opacity:1;filter:blur(0)}.reveal-mask{clip-path:inset(0 0 100% 0);transition:opacity 1.25s var(--ease),filter 1.4s var(--ease),clip-path 1.45s var(--ease)}.reveal-mask.is-visible{clip-path:inset(0)}.hero-copy.reveal{filter:blur(9px);transition-duration:1.7s;transition-delay:.15s}.hero-copy.reveal.is-visible{filter:blur(0)}.noscript{position:fixed;z-index:3000;right:20px;bottom:20px;max-width:420px;padding:14px 18px;border:1px solid var(--line);background:#fff;box-shadow:0 15px 50px rgba(0,0,0,.12)}

@media(min-width:981px){
  html[lang="de"] body[data-gallery="nightscapes"] .page-intro{grid-template-columns:minmax(0,.38fr) minmax(0,1.62fr);gap:clamp(35px,5vw,80px)}
  html[lang="de"] body[data-gallery="nightscapes"] .page-title{max-width:none;font-size:clamp(58px,5.9vw,94px);white-space:nowrap}
}
@media(max-width:980px){
  :root{--side:0px}.site-sidebar{width:min(84vw,330px);visibility:hidden;box-shadow:30px 0 90px rgba(20,23,21,.12);opacity:0;transform:translateX(-105%);transition:transform .48s var(--ease),opacity .26s,visibility 0s linear .48s}body.menu-open{overflow:hidden}body.menu-open .site-sidebar{visibility:visible;opacity:1;transform:none;transition-delay:0s}.sidebar-close{position:absolute;top:28px;right:23px;display:grid;width:34px;height:34px;place-items:center;border:0;background:none;font-size:23px;cursor:pointer}
  .mobile-header{position:fixed;z-index:90;top:0;right:0;left:0;display:flex;height:65px;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid rgba(25,28,26,.08);background:rgba(247,248,245,.86);backdrop-filter:blur(16px)}.mobile-brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:17px}.mobile-brand img{width:30px;height:29px;object-fit:contain;opacity:.8}.mobile-menu-button{display:flex;align-items:center;gap:10px;padding:8px 0;border:0;background:none;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.mobile-menu-button::after{width:24px;height:1px;background:var(--ink);box-shadow:0 6px 0 var(--ink);content:""}
  .site-main,.site-footer{margin-left:0}.hero{padding-top:65px}.home-intro,.page-intro{grid-template-columns:1fr;gap:24px}.page-intro{min-height:58vh;padding-top:155px}.feature,.feature:nth-child(even){grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:45px}.content-section,.portrait-layout,.contact-grid{grid-template-columns:1fr}.portrait-image{position:static;max-width:720px}.about-copy{padding-top:20px}
}
@media(max-width:720px){
  html[lang="de"] body[data-gallery="nightscapes"] .page-title{max-width:100%;font-size:clamp(31px,10vw,46px);line-height:.95;letter-spacing:-.035em;white-space:nowrap}
  .hero{display:grid;min-height:0;padding-top:65px;background:#252c2d}.hero-image-wrap{position:relative;inset:auto;aspect-ratio:3/2;overflow:hidden}.hero-image{width:100%;height:100%;object-fit:cover;object-position:center;transform:none!important;will-change:auto}.hero-overlay{display:none}.hero-copy{position:relative;right:auto;bottom:auto;left:auto;max-width:none;padding:34px 22px 40px}.hero-title{font-size:clamp(50px,17vw,78px);line-height:.85}.hero-subtitle{max-width:290px;margin-top:21px;font-size:9px}.hero-location{display:none}.home-intro{padding-top:105px;padding-bottom:120px}.feature-list{gap:125px}.feature,.feature:nth-child(even){display:flex;flex-direction:column;gap:30px;align-items:stretch}.feature:nth-child(even) .feature-media,.feature:nth-child(even) .feature-copy{grid-column:auto;grid-row:auto}.feature-copy{max-width:520px}.feature-title{font-size:49px}.page-title{font-size:clamp(56px,19vw,88px)}.gallery-stream{gap:85px}.gallery-block--pair{grid-template-columns:1fr;gap:70px}.gallery-block--pair .gallery-frame:nth-child(2),.gallery-block--pair:nth-child(4n) .gallery-frame:first-child{margin-top:0}.content-split,.content-split--reverse{display:flex;flex-direction:column;gap:42px;align-items:stretch}.content-split--reverse .content-image,.content-split--reverse .content-copy-panel{grid-column:auto;grid-row:auto}.cta-panel{grid-template-columns:1fr;align-items:start}.fact-row{grid-template-columns:96px 1fr}.contact-detail a,.contact-detail span{overflow-wrap:anywhere}.footer-inner{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0ms!important;animation-duration:.01ms!important}.reveal,.reveal-mask{opacity:1;filter:none;clip-path:none}}
