/* STUDIO composition and content, on the NOIR palette. */
body.studio-noir{background:#10100e;color:#efe9dd;--motion-x:0;--motion-y:0;--scroll-shift:0;--velocity:0;color-scheme:dark}
.studio-noir .nav{background:#10100ef2;color:#efe9dd;border-color:#efe9dd25}.studio-noir .nav .logo{background:transparent;padding:0}.studio-noir .studio-topline,.studio-noir .studio-hero-bottom{border-color:#d1be9f45}.studio-noir .studio-topline{color:var(--sand)}.studio-noir .studio-headline .light{color:var(--sand)}.studio-noir .studio-headline h1 em{color:var(--pink)}.studio-noir .studio-headline h1>span>svg{color:var(--sand);animation:ci-slow-color 17s ease-in-out infinite,hex-breathe 13s ease-in-out infinite;transform-origin:center}.studio-noir .studio-headline{isolation:isolate}.studio-noir .studio-collage{isolation:isolate;transition:none;--motion-x:0;--motion-y:0;--scroll-shift:0}.studio-noir .main-print{box-shadow:0 25px 65px #0008;position:relative;z-index:2;animation:noir-card-breathe 13s ease-in-out infinite;will-change:transform;translate:calc(var(--motion-x)*-5px) calc(var(--motion-y)*-4px + var(--scroll-shift)*-9px)}.studio-noir .floating-print{z-index:4;animation:noir-secondary-float 11s ease-in-out infinite;will-change:transform;translate:calc(var(--motion-x)*9px) calc(var(--motion-y)*7px + var(--scroll-shift)*15px);box-shadow:0 20px 60px #0009}.studio-noir .collage-caption{color:var(--sand);z-index:5}.studio-noir .solid-link{background:var(--sand);color:var(--espresso)}.studio-noir .solid-link:hover{background:var(--pink)}.studio-noir .edition{color:var(--sand)}.studio-noir .manifesto{background:#322923;isolation:isolate}.studio-noir .manifesto>div:not(.manifesto-orbit){z-index:1}.studio-noir .manifesto-words{color:#d1be9f16}.studio-noir .manifesto-text{position:relative}.studio-noir .showcase{background:#151410}.studio-noir .case-slide{background:#302b24;color:var(--ivory)}.studio-noir .case-visual{background:#28251f}.studio-noir .case-yourzone{background:#282a22}.studio-noir .case-raum{background:#322923}.studio-noir .studio-services{background:#10100e}.studio-noir .accordion{border-top-color:#d1be9f70}.studio-noir .accordion details{border-bottom-color:#d1be9f45}.studio-noir .number{color:var(--sand)}.studio-noir .plus{color:var(--pink)}.studio-noir .detail-body small{color:var(--sand)}.studio-noir .gallery-section{background:#27211d;border-block:1px solid #d1be9f20}.studio-noir .studio-personal{background:#10100e;position:relative;overflow:hidden;isolation:isolate}.studio-noir .studio-personal h2 em{color:var(--sand)}.studio-noir .studio-personal>div:not(.personal-mark){position:relative;z-index:1}.studio-noir .contact{background:#7d765a;color:var(--ivory);position:relative;overflow:hidden}.studio-noir .contact h2 em{color:var(--sand)}.studio-noir .contact h2>svg{animation:ci-slow-color 19s ease-in-out infinite,noir-contact-hex 16s ease-in-out infinite}.studio-noir footer{border-color:#d1be9f30}.studio-noir .to-top{background:var(--espresso)}
.motion-scene{position:absolute;inset:-10% -6% -3% -9%;pointer-events:none;z-index:1;--motion-x:0;--motion-y:0;--scroll-shift:0}.motion-plane{position:absolute;will-change:translate;translate:calc(var(--motion-x)*var(--depth,1)*15px) calc(var(--motion-y)*var(--depth,1)*12px + var(--scroll-shift)*var(--depth,1)*18px)}.motion-plane>svg{width:100%;height:100%;overflow:visible}.plane-orbit{inset:-6% -8%;z-index:0}.plane-orbit svg{animation:orbit-drift 24s ease-in-out infinite}.orbit-ink{fill:none;stroke:var(--pink);stroke-width:1.5;opacity:.7;stroke-dasharray:1050 400;animation:ci-stroke-color 19s ease-in-out infinite,orbit-trace 45s linear infinite}.orbit-faint{fill:none;stroke:var(--sand);stroke-width:.7;opacity:.26;stroke-dasharray:3 12}.plane-hex{width:22%;height:24%;right:-4%;top:-1%;z-index:3}.plane-hex svg{animation:hex-breathe 15s ease-in-out infinite}.plane-hex path{fill:none;stroke:var(--sand);stroke-width:.8;animation:ci-stroke-color 18s ease-in-out infinite}.plane-star{width:13%;height:13%;left:-6%;top:46%;z-index:3}.plane-star svg{animation:star-drift 12s ease-in-out infinite}.plane-star path{fill:var(--pink);animation:ci-fill-color 16s ease-in-out infinite}.plane-shards{width:25%;height:25%;left:8%;bottom:0;z-index:3}.shard-a{fill:var(--sand);transform-origin:50% 50%;animation:shard-fan 10s ease-in-out infinite,ci-fill-color 20s ease-in-out infinite}.shard-b{fill:var(--khaki);transform-origin:50% 50%;animation:shard-fan 13s ease-in-out -4s infinite}.shard-c{fill:var(--pink);transform-origin:50% 50%;animation:shard-fan 11s ease-in-out -7s infinite,ci-fill-color 18s ease-in-out -6s infinite}.manifesto-orbit{position:absolute;right:-12%;top:8%;width:55%;height:90%;z-index:0;opacity:.23;pointer-events:none;translate:0 calc(var(--scroll-shift)*18px)}.manifesto-orbit svg{width:100%;height:100%;animation:orbit-drift 29s ease-in-out infinite;overflow:visible}.manifesto-orbit ellipse{fill:none;stroke:var(--pink);stroke-width:1.3;animation:ci-stroke-color 21s infinite}.manifesto-orbit path{fill:none;stroke:var(--sand);stroke-width:.6}.studio-noir .personal-mark{display:block;position:absolute!important;right:-30px;top:35px;width:220px;height:220px;opacity:.09;pointer-events:none;z-index:0!important}.personal-mark svg{width:100%;height:100%;fill:var(--sand);animation:star-drift 25s ease-in-out infinite,ci-fill-color 23s ease-in-out infinite}.studio-noir .image-rail button{position:relative}.studio-noir .image-rail button:nth-child(3n+1) img{animation:gallery-breathe 14s ease-in-out infinite}.studio-noir .image-rail button:nth-child(3n+2) img{animation:gallery-breathe 17s ease-in-out -5s infinite}.studio-noir .image-rail button:nth-child(3n) img{animation:gallery-breathe 16s ease-in-out -9s infinite}
/* Actual graphic areas of existing artwork, isolated in native SVG layers. */
.studio-noir .live-poster{display:block;width:100%;height:auto;aspect-ratio:864/1536;background:#080808}.live-poster .poster-layer{transform-box:view-box;transform-origin:50% 57%;will-change:transform}.live-poster .poster-lift{animation:poster-lift 9s ease-in-out infinite}.live-poster .poster-rays{animation:poster-rays 7s ease-in-out infinite}.live-poster .poster-base{opacity:1}.live-poster .poster-ray{fill:var(--pink);animation:ci-fill-color 18s ease-in-out infinite}
@keyframes noir-card-breathe{0%,100%{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(-3.8deg) translateY(-7px)}}@keyframes noir-secondary-float{0%,100%{transform:rotate(11deg) translateY(0)}50%{transform:rotate(8.5deg) translateY(-12px)}}@keyframes orbit-drift{0%,100%{transform:rotate(-7deg) scale(.98)}50%{transform:rotate(9deg) scale(1.02)}}@keyframes orbit-trace{to{stroke-dashoffset:-1450}}@keyframes hex-breathe{0%,100%{transform:rotate(14deg) scale(1)}50%{transform:rotate(24deg) scale(.95)}}@keyframes star-drift{0%,100%{transform:rotate(-8deg) scale(.93)}50%{transform:rotate(17deg) scale(1.05)}}@keyframes shard-fan{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(7deg) translateY(-5px)}}@keyframes noir-contact-hex{0%,100%{transform:rotate(15deg) translateY(0)}50%{transform:rotate(22deg) translateY(-6px)}}@keyframes ci-slow-color{0%,100%{color:#d1be9f}35%{color:#ca6faa}70%{color:#efe9dd}}@keyframes ci-fill-color{0%,100%{fill:#ca6faa}38%{fill:#d1be9f}72%{fill:#7d765a}}@keyframes ci-stroke-color{0%,100%{stroke:#ca6faa}38%{stroke:#d1be9f}72%{stroke:#7d765a}}@keyframes gallery-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes poster-lift{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(0,-5px) rotate(.4deg)}}@keyframes poster-rays{0%,100%{opacity:.5;transform:scale(.97)}50%{opacity:.9;transform:scale(1.04)}}
@media(max-width:700px){.studio-noir .studybar{height:auto;min-height:42px}.studio-noir .studybar>a{max-width:90px}.studio-noir .studybar>div{gap:11px}.studio-noir .studybar>div a{font-size:6px;white-space:nowrap}.studio-noir .studio-collage{width:76%;margin-top:-35px}.plane-star{left:-3%;top:42%;width:12%;height:12%}.plane-hex{right:-1%;width:20%}.manifesto-orbit{width:100%;right:-50%;opacity:.16}.studio-noir .personal-mark{width:150px;height:150px;top:auto;bottom:40px}.studio-noir .contact h2{font-size:18vw}}
@media(prefers-reduced-motion:reduce){.studio-noir *,.studio-noir *::before,.studio-noir *::after{animation:none!important;transition:none!important;translate:0 0!important}.studio-noir .motion-plane{translate:0 0!important}}
/* Original image fragments, independently articulated. */
.original-layers{display:block;width:100%;height:auto;overflow:visible;isolation:isolate;--art-x:0;--art-y:0;--art-scroll:0;--art-speed:0}.main-print>.original-layers,.floating-print>.original-layers{aspect-ratio:1}.image-rail button>.original-layers{width:100%;height:100%;max-height:none;object-fit:contain}.image-rail button:has(.scene-heart),.image-rail button:has(.scene-camera){align-self:center}.art-part{transform-box:view-box;will-change:transform;translate:calc(var(--art-x)*var(--part-depth,1)*7px) calc(var(--art-y)*var(--part-depth,1)*6px + var(--art-scroll)*var(--part-depth,1)*5px)}.float-star{--part-depth:1.5;animation:original-star 11s ease-in-out infinite}.float-portrait{--part-depth:.45;animation:original-lion 13s ease-in-out infinite}.hand-left{--part-depth:.7;animation:original-left-hand 8s ease-in-out infinite}.hand-right{--part-depth:.9;animation:original-right-hand 9s ease-in-out -3s infinite}.ink-drop{--part-depth:1.2;animation:original-drop 6s ease-in-out infinite}.nib-sway{--part-depth:.4;animation:original-nib 10s ease-in-out infinite}.index-press{--part-depth:.25;animation:original-shutter 7s ease-in-out infinite}.ribbon-wave{--part-depth:1.3;animation:original-ribbon 9s ease-in-out infinite}.mark-rock{--part-depth:1;animation:original-mark 8s ease-in-out infinite}.puzzle-top{--part-depth:.9;animation:original-puzzle-top 9s ease-in-out infinite}.puzzle-bottom{--part-depth:1.2;animation:original-puzzle-bottom 9s ease-in-out infinite}.typing-left{--part-depth:.5;animation:original-typing-left 4.5s ease-in-out infinite}.typing-right{--part-depth:.65;animation:original-typing-right 4.5s ease-in-out -2.25s infinite}.clock-piece{--part-depth:1.1;animation:original-clock 10s ease-in-out infinite}.original-layers[data-offscreen="true"] .art-part{animation-play-state:paused}.original-layers .ci-pink-detail{fill:var(--pink);mix-blend-mode:color;opacity:.6;animation:ci-fill-color 18s ease-in-out infinite}.studio-noir .main-print,.studio-noir .floating-print{animation:none;translate:0 0;will-change:auto}.studio-noir .main-print{transform:rotate(-5deg)}.studio-noir .floating-print{transform:rotate(11deg)}.studio-noir .image-rail button img{animation:none!important}.studio-noir .main-print .original-layers{background:#e7d9bd}.studio-noir .floating-print .original-layers{background:#482c23}.original-layers>image{pointer-events:none}.extra-kinetic{overflow:visible}.dialog-kinetic{width:min(620px,100%);margin:0 auto}.studio-noir dialog{background:#1d1b17;color:var(--ivory)}.studio-noir .dialog-close{background:#1d1b17;color:var(--ivory);border-color:#d1be9f70}.studio-noir .dialog-tags{border-color:#d1be9f55}
@keyframes original-star{0%,100%{transform:rotate(0deg) scale(1)}50%{transform:rotate(13deg) scale(.94)}}@keyframes original-lion{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(0,-6px) rotate(.55deg)}}@keyframes original-left-hand{0%,100%{transform:rotate(0deg)}50%{transform:rotate(-1.3deg)}}@keyframes original-right-hand{0%,100%{transform:rotate(0deg)}50%{transform:rotate(1.2deg)}}@keyframes original-drop{0%,48%,100%{transform:translateY(0) scale(1)}65%{transform:translateY(7px) scale(.95,1.06)}82%{transform:translateY(2px) scale(1)}}@keyframes original-nib{0%,100%{transform:rotate(0deg)}50%{transform:rotate(-1deg)}}@keyframes original-shutter{0%,37%,57%,100%{transform:translate(0,0)}44%,49%{transform:translate(0,5px)}}@keyframes original-ribbon{0%,100%{transform:rotate(0) translateY(0)}50%{transform:rotate(-1deg) translateY(-4px)}}@keyframes original-mark{0%,100%{transform:rotate(0)}50%{transform:rotate(1.5deg)}}@keyframes original-puzzle-top{0%,15%,85%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(-2px,-11px) rotate(-.6deg)}}@keyframes original-puzzle-bottom{0%,15%,85%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(2px,8px) rotate(.5deg)}}@keyframes original-typing-left{0%,40%,100%{transform:rotate(0)}20%{transform:rotate(-1.15deg)}60%{transform:rotate(.4deg)}}@keyframes original-typing-right{0%,40%,100%{transform:rotate(0)}20%{transform:rotate(1.1deg)}60%{transform:rotate(-.4deg)}}@keyframes original-clock{0%,15%,85%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(8px,-9px) rotate(1.5deg)}}
@media(prefers-reduced-motion:reduce){.studio-noir .art-part{animation:none!important;transform:none!important;translate:0 0!important}.studio-noir .ci-pink-detail{animation:none!important}}
.studio-noir .case-zellsius,.studio-noir .case-digital,.studio-noir .case-guides,.studio-noir .case-ruecken{background:#302b24;color:#efe9dd}.studio-noir .case-zellsius .case-visual,.studio-noir .case-digital .case-visual,.studio-noir .case-guides .case-visual,.studio-noir .case-ruecken .case-visual{background:#22251f}.studio-noir .case-waldglueck{background:#2f3328;color:#efe9dd}.studio-noir .case-copy h3{font-size:clamp(29px,3.2vw,49px)}
.studio-noir .nav .live-logo{background:transparent;padding:0;width:108px;height:90px;overflow:visible;filter:drop-shadow(0 4px 12px #0002)}.live-logo image{pointer-events:none}@media(max-width:700px){.studio-noir .nav .live-logo{width:80px;height:67px}}@media(prefers-reduced-motion:reduce){.studio-noir .live-logo{filter:none}}
/* Contact buttons: two independent outlines, original platform symbols. */
.studio-noir .hex-contact-row{display:flex;align-items:start;justify-content:flex-start;gap:clamp(22px,3.6vw,56px);margin-top:48px;padding-top:38px;border-top:1px solid #efe9dd45}.hex-contact{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:72px;--symbol-color:#fff;text-align:center;touch-action:manipulation}.hex-contact-art{position:relative;display:block;width:86px;height:100px;transition:transform .5s cubic-bezier(.2,.65,.25,1)}.hex-contact-frame{width:100%;height:100%;display:block;overflow:visible}.hex-contact-frame path{fill:none;vector-effect:non-scaling-stroke;stroke-linejoin:miter}.hex-outer{stroke:#fff;stroke-width:1.25}.hex-inner{stroke:#ca6faa;stroke-width:1.5}.hex-contact-symbol{position:absolute;width:31px;height:31px;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--symbol-color);transition:color .65s ease,filter .65s ease}.hex-contact-label{font-size:10px;letter-spacing:.04em;color:#fff;line-height:1.5}.hex-contact:hover .hex-contact-art,.hex-contact:focus-visible .hex-contact-art{transform:translateY(-4px)}.hex-contact:hover .hex-contact-symbol,.hex-contact:focus-visible .hex-contact-symbol{filter:drop-shadow(0 0 8px #ca6faa30)}.hex-contact:focus-visible{outline-offset:9px;outline-color:white}.hex-contact:active .hex-contact-art{transform:translateY(-1px) scale(.97)}@media(max-width:700px){.studio-noir .hex-contact-row{justify-content:space-between;gap:8px;margin-top:35px;padding-top:28px}.hex-contact{min-width:0;gap:11px}.hex-contact-art{width:clamp(54px,16vw,76px);height:clamp(63px,18.56vw,88px)}.hex-contact-symbol{width:25px;height:25px}.hex-contact-label{font-size:9px}}@media(prefers-reduced-motion:reduce){.hex-contact-art,.hex-contact-symbol{transition:none!important;transform:none}.hex-contact-symbol{transform:translate(-50%,-50%)}.hex-contact:hover .hex-contact-art,.hex-contact:focus-visible .hex-contact-art{transform:none}}
/* Requested contact treatment: white symbols, black on interaction. */
.studio-noir .hex-contact-block{margin-top:48px;padding-top:34px;border-top:1px solid #efe9dd45}.studio-noir .hex-contact-heading{font-family:Montserrat,Arial,sans-serif;font-weight:800;font-size:clamp(25px,2.5vw,36px);letter-spacing:-.045em;line-height:1.2;margin:0 0 27px;color:#fff}.studio-noir .hex-contact-block .hex-contact-row{margin-top:0;padding-top:0;border-top:0}.studio-noir .hex-contact-symbol{color:#fff;transition:color .25s ease;filter:none}.studio-noir .hex-contact:hover .hex-contact-symbol,.studio-noir .hex-contact:active .hex-contact-symbol,.studio-noir .hex-contact:focus-visible .hex-contact-symbol{color:#000;filter:none}@media(max-width:700px){.studio-noir .hex-contact-block{margin-top:35px;padding-top:28px}.studio-noir .hex-contact-heading{margin-bottom:23px}}
/* Clearly separate the social area from the contact invitation. */
.studio-noir section.hex-contact-block{margin:0;padding:54px var(--pad) 58px;background:#ca6faa;border-top:0;color:#10100e}.studio-noir .hex-contact-block .hex-contact-row{justify-content:flex-start;margin:0;padding:0;border:0}.studio-noir .hex-contact-block .hex-inner{stroke:#d1be9f}.studio-noir .hex-contact-block .hex-outer{stroke:#fff}.studio-noir .hex-contact-block .hex-contact-label{color:#10100e}.studio-noir .legal-footer{background:#10100e;padding:28px var(--pad);display:flex;justify-content:flex-start;align-items:center;gap:32px;border:0;color:#efe9dd;font-size:11px}.studio-noir .legal-footer a{padding:10px 0}.studio-noir .legal-footer a:hover{color:#ca6faa}
/* Compact dropdown anchored to the sticky header. */
.studio-noir .mobile-menu{position:fixed;inset:auto;left:auto;bottom:auto;right:var(--pad);top:94px;width:min(290px,calc(100vw - 44px));height:auto;max-height:calc(100svh - 115px);overflow-y:auto;padding:12px 20px;background:#322923;color:#efe9dd;border:1px solid #d1be9f55;box-shadow:0 18px 45px #0004;z-index:79}.studio-noir .mobile-menu a{display:block;font:600 16px/1.4 Montserrat,Arial,sans-serif;letter-spacing:-.025em;padding:15px 2px;border-bottom:1px solid #d1be9f25}.studio-noir .mobile-menu a:last-child{border-bottom:0}.studio-noir .mobile-menu a:hover,.studio-noir .mobile-menu a:focus-visible{color:#ca6faa}.studio-noir .nav nav{gap:28px;margin-right:5vw}
@media(max-width:700px){.studio-noir section.hex-contact-block{padding-top:34px;padding-bottom:38px}.studio-noir .hex-contact-block .hex-contact-row{justify-content:space-between}.studio-noir .mobile-menu{top:94px;right:22px;max-width:290px}.studio-noir .legal-footer{padding-top:18px;padding-bottom:18px}}
/* TATENDRANG navigation panel: compact, editorial, with a cut corner. */
.studio-noir .mobile-menu{width:min(350px,calc(100vw - 32px));padding:16px 18px 12px;background:linear-gradient(135deg,#322923fa,#1a1815fa);border:1px solid #d1be9f80;border-top:2px solid #ca6faa;box-shadow:0 18px 55px #0006;backdrop-filter:blur(20px);transform-origin:calc(100% - 28px) 0;animation:td-menu-open .32s cubic-bezier(.2,.65,.25,1) both;clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,0 100%)}.menu-panel-heading{display:flex;align-items:center;gap:9px;padding:2px 4px 15px;color:#d1be9f;font:600 8px/1.4 Inter,Arial,sans-serif;letter-spacing:.18em}.menu-heading-hex{width:7px;height:8px;background:#ca6faa;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.menu-heading-rule{height:1px;background:#d1be9f40;flex:1;margin-left:7px}.studio-noir .mobile-menu a{position:relative;display:flex;align-items:center;gap:11px;padding:14px 4px;min-height:65px;border-bottom:1px solid #d1be9f30;overflow:hidden;color:#efe9dd;transition:background .25s,color .25s}.studio-noir .mobile-menu a::before{content:'';position:absolute;left:0;top:16px;bottom:16px;width:2px;background:#ca6faa;opacity:0;transform:scaleY(.4);transition:opacity .25s,transform .25s}.studio-noir .mobile-menu a:hover,.studio-noir .mobile-menu a:focus-visible{background:#d1be9f0a;color:#efe9dd}.studio-noir .mobile-menu a:hover::before,.studio-noir .mobile-menu a:focus-visible::before{opacity:1;transform:scaleY(1)}.menu-number{font:400 8px/1 Inter,Arial,sans-serif;letter-spacing:0;color:#d1be9f90;width:13px;flex-shrink:0}.menu-item-icon{width:28px;height:32px;flex-shrink:0;color:#d1be9f;transition:color .25s,transform .35s}.menu-item-hex{stroke:#ca6faa;stroke-width:.7}.menu-item-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.menu-item-title{font:600 17px/1.2 Montserrat,Arial,sans-serif;letter-spacing:-.03em}.menu-item-desc{font:400 9px/1.4 Inter,Arial,sans-serif;letter-spacing:.015em;color:#d1be9fc0}.menu-arrow{width:15px;height:15px;flex-shrink:0;margin-left:auto;color:#d1be9f;transition:transform .3s,color .3s}.mobile-menu a:hover .menu-arrow,.mobile-menu a:focus-visible .menu-arrow{color:#ca6faa;transform:translate(2px,-2px)}.mobile-menu a:hover .menu-item-icon,.mobile-menu a:focus-visible .menu-item-icon{color:#fff;transform:translateY(-1px)}.mobile-menu a:active{background:#ca6faa15}.studio-noir .menu-btn{font-family:Montserrat,Arial,sans-serif;font-weight:600;letter-spacing:-.02em;transition:color .25s}.studio-noir .menu-btn[aria-expanded="true"]{color:#ca6faa}@keyframes td-menu-open{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:700px){.studio-noir .mobile-menu{right:16px;max-height:calc(100svh - 115px)}.menu-item-title{font-size:16px}.studio-noir .mobile-menu a{min-height:63px}}@media(prefers-reduced-motion:reduce){.studio-noir .mobile-menu{animation:none!important}.studio-noir .mobile-menu *{transition:none!important}}
/* Personal section: original shooting photograph with an editorial collage. */
.studio-noir .personal-editorial{position:relative;isolation:isolate;overflow:hidden;background:#10100e;min-height:940px;padding-top:95px;padding-bottom:100px}.studio-noir .personal-editorial .personal-portrait{position:absolute!important;inset:0 0 0 32%;width:68%;height:100%;z-index:0!important;pointer-events:none}.personal-portrait>svg{display:block;width:100%;height:100%;overflow:hidden;filter:contrast(1.04)}.studio-noir .personal-editorial .personal-shade{position:absolute!important;inset:0;z-index:1!important;pointer-events:none;background:linear-gradient(90deg,#10100e 0%,#10100efc 24%,#10100ed9 43%,#10100e42 66%,#10100e08 100%),linear-gradient(0deg,#10100e 0%,#10100e99 9%,transparent 38%,transparent 85%,#10100e55 100%)}.studio-noir .personal-editorial>.eyebrow{position:relative;z-index:4;margin-bottom:40px;color:#d1be9f}.studio-noir .personal-editorial>.personal-editorial-copy{display:block;position:relative;z-index:4;max-width:680px;margin-top:0}.studio-noir .personal-editorial h2{font-size:clamp(38px,4.4vw,66px);max-width:680px;line-height:1.08;text-wrap:balance}.studio-noir .personal-editorial h2 em{color:#d1be9f;font-weight:300}.personal-editorial .personal-copy{max-width:440px;margin-top:40px}.personal-editorial .personal-copy p{font-size:14px;line-height:1.9;color:#efe9dd}.personal-editorial .under-link{margin-top:10px;color:#efe9dd}.studio-noir .personal-editorial>.personal-art-direction{position:absolute!important;inset:0;z-index:3!important;pointer-events:none;display:block}.personal-art-direction svg{position:absolute;height:auto;overflow:visible}.personal-pen{width:clamp(42px,5.8vw,83px);left:63%;bottom:11%;transform:rotate(-17deg);filter:drop-shadow(0 10px 12px #0006);animation:personal-pen-drift 12s ease-in-out infinite}.personal-puzzle{width:clamp(60px,8.5vw,125px);left:57%;top:55%;transform:rotate(13deg);filter:drop-shadow(0 12px 20px #0007);animation:personal-puzzle-drift 14s ease-in-out infinite}.personal-spark{width:clamp(34px,4.2vw,62px);right:4%;top:10%;transform:rotate(10deg);opacity:.86;animation:star-drift 18s ease-in-out infinite}.personal-ci-slice{position:absolute;right:-30px;bottom:8%;width:180px;height:85px;background:#ca6faa;clip-path:polygon(15% 0,100% 26%,87% 100%,0 75%);opacity:.64;transform:rotate(-13deg);mix-blend-mode:color}.portrait-lapel,.portrait-sleeve{transition:opacity .8s ease}
@keyframes personal-pen-drift{0%,100%{transform:translateY(0) rotate(-17deg)}50%{transform:translateY(-6px) rotate(-14deg)}}@keyframes personal-puzzle-drift{0%,100%{transform:translateY(0) rotate(13deg)}50%{transform:translateY(7px) rotate(9deg)}}
@media(min-width:1500px){.studio-noir .personal-editorial{min-height:1050px}.studio-noir .personal-editorial .personal-portrait{left:36%;width:64%}}
@media(max-width:1000px) and (min-width:701px){.studio-noir .personal-editorial{min-height:850px}.studio-noir .personal-editorial .personal-portrait{left:23%;width:77%}.studio-noir .personal-editorial>.personal-editorial-copy{max-width:560px}.personal-editorial .personal-copy{max-width:390px}.personal-puzzle{left:72%;top:61%}.personal-pen{left:83%;bottom:11%}}
@media(max-width:700px){.studio-noir .personal-editorial{min-height:0;padding-top:38px;padding-bottom:60px}.studio-noir .personal-editorial .personal-portrait{inset:0 0 auto 0;width:100%;height:620px}.personal-portrait>svg{width:100%;height:100%}.studio-noir .personal-editorial .personal-shade{background:linear-gradient(0deg,#10100e 0%,#10100e 34%,#10100ef5 43%,#10100eb5 57%,#10100e40 75%,#10100e30 100%),linear-gradient(90deg,#10100e85 0%,transparent 55%)}.studio-noir .personal-editorial>.eyebrow{margin-bottom:0;font-size:8px;letter-spacing:.16em;max-width:150px;line-height:1.8}.studio-noir .personal-editorial>.personal-editorial-copy{padding-top:275px;max-width:none}.studio-noir .personal-editorial h2{font-size:clamp(32px,8.5vw,47px);line-height:1.08;text-wrap:balance}.personal-editorial .personal-copy{margin-top:30px;max-width:none}.personal-editorial .personal-copy p{font-size:13px;line-height:1.85}.personal-editorial .under-link{font-size:12px}.personal-spark{right:6%;top:90px;width:32px;opacity:.7}.personal-puzzle{left:5%;top:190px;width:61px;opacity:.9;transform:rotate(-13deg)}.personal-pen{left:auto;right:5%;top:290px;bottom:auto;width:38px;opacity:.72;transform:rotate(18deg)}.personal-ci-slice{right:-15px;top:230px;bottom:auto;width:110px;height:55px;opacity:.45}}
@media(prefers-reduced-motion:reduce){.personal-art-direction *{animation:none!important}}
.studio-noir .personal-editorial>.personal-portrait,.studio-noir .personal-editorial>.personal-shade,.studio-noir .personal-editorial>.personal-art-direction{display:block;margin:0;gap:0}
/* Original cut-out motifs orbit the portrait, each on its own motion plane. */
.studio-noir .personal-editorial>.personal-symbols{z-index:3!important;perspective:1000px}.personal-symbols .personal-symbol{position:absolute;filter:drop-shadow(0 16px 22px #0007);pointer-events:none}.personal-symbols svg{position:static;display:block;width:100%;height:auto;overflow:visible}.symbol-heart{width:clamp(160px,22vw,315px);right:1%;top:47%}.symbol-lion{width:clamp(125px,17vw,240px);right:34%;top:12%}.symbol-laptop{width:clamp(145px,20vw,280px);right:25%;bottom:5%}.symbol-rock{transform-origin:center;animation:personal-symbol-rock 13s ease-in-out infinite}.symbol-lion .symbol-rock{animation-duration:17s;animation-delay:-5s}.symbol-laptop .symbol-rock{animation-duration:15s;animation-delay:-9s}.symbol-reaction{transform:perspective(900px) rotateY(calc(var(--symbol-x,0)*9deg)) rotateX(calc(var(--symbol-y,0)*-7deg)) translateY(calc(var(--symbol-scroll,0)*-12px));transition:transform .45s ease-out}.symbol-orbits{transform-origin:638px 570px;animation:personal-orbit-rock 18s ease-in-out infinite}.personal-symbols .star{transform-origin:866px 325px;animation:personal-orbit-rock 12s ease-in-out infinite}.personal-symbols .nib{transform-origin:633px 846px;animation:personal-orbit-rock 14s ease-in-out infinite}@keyframes personal-symbol-rock{0%,100%{transform:rotate(-7deg) rotateY(-9deg) rotateX(3deg)}50%{transform:rotate(6deg) rotateY(10deg) rotateX(-4deg)}}@keyframes personal-orbit-rock{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}
@media(max-width:1000px) and (min-width:701px){.symbol-heart{right:0;top:49%;width:190px}.symbol-lion{right:43%;top:10%;width:155px}.symbol-laptop{right:20%;bottom:5%;width:185px}}
@media(max-width:700px){.personal-symbols .symbol-heart{width:132px;right:-8px;top:202px;bottom:auto}.personal-symbols .symbol-lion{width:112px;left:1%;right:auto;top:94px}.personal-symbols .symbol-laptop{width:125px;left:5%;right:auto;top:235px;bottom:auto}.studio-noir .personal-editorial>.personal-editorial-copy{padding-top:335px}}
@media(prefers-reduced-motion:reduce){.personal-symbols *{animation:none!important;transition:none!important}.symbol-reaction{transform:none!important}}
/* Fine positioning around Roland's face and the new growth motif. */
.personal-symbols .symbol-lion{right:36%;top:10%}.personal-symbols .symbol-heart{right:5%;top:52%}.personal-symbols .symbol-growth{width:clamp(125px,16vw,225px);right:1%;top:5%}.symbol-growth .symbol-rock{animation-duration:16s;animation-delay:-3s}.growth-plant{transform-origin:501px 583px;animation:personal-orbit-rock 15s ease-in-out infinite}.growth-can-hand{transform-origin:1050px 200px;animation:personal-orbit-rock 11s ease-in-out infinite}.growth-drop{animation:personal-growth-drop 4s ease-in-out infinite}@keyframes personal-growth-drop{0%,100%{transform:translateY(-4px);opacity:.8}65%{transform:translateY(9px);opacity:1}}
@media(max-width:1000px) and (min-width:701px){.personal-symbols .symbol-lion{right:45%;top:8%}.personal-symbols .symbol-heart{right:4%;top:54%}.personal-symbols .symbol-growth{width:160px;right:1%;top:6%}}
@media(max-width:700px){.personal-symbols .symbol-lion{left:-.5%;right:auto;top:84px}.personal-symbols .symbol-heart{right:2%;top:228px}.personal-symbols .symbol-growth{width:96px;right:2%;top:47px}}
/* Motifs respond independently to touch, mouse and keyboard. */
.personal-symbols .personal-symbol{pointer-events:auto;cursor:pointer;touch-action:pan-y;-webkit-tap-highlight-color:transparent;border-radius:20%;outline-offset:8px}.personal-symbol:focus-visible{outline:1px solid #d1be9f}.personal-symbols .symbol-tint-flood{flood-color:var(--symbol-tint,#ca6faa);flood-opacity:0;transition:flood-color .5s ease,flood-opacity .45s ease}.personal-symbols .personal-symbol.is-tinted .symbol-tint-flood,.personal-symbols .personal-symbol:focus-visible .symbol-tint-flood{flood-opacity:.48}.symbol-lion{--symbol-tint:#7d765a}.symbol-heart{--symbol-tint:#d1be9f}.symbol-laptop{--symbol-tint:#ca6faa}.symbol-growth{--symbol-tint:#322923}.studio-noir .personal-editorial-copy{pointer-events:none}.personal-editorial-copy h2,.personal-editorial-copy p,.personal-editorial-copy a{pointer-events:auto}
@media(hover:hover){.personal-symbols .personal-symbol:hover .symbol-tint-flood{flood-opacity:.48}}
@media(max-width:700px) and (orientation:portrait){.personal-symbols .symbol-lion{left:8%;right:auto;top:56px;bottom:auto}}
@media(orientation:landscape) and (max-width:1200px) and (max-height:600px){.personal-symbols .symbol-lion{left:22%;right:auto;top:auto;bottom:12%;width:145px}}
/* More visible choreography: quicker cycles and wider turns on each motif. */
.personal-symbols .symbol-rock{animation-duration:5.2s;animation-timing-function:ease-in-out}.personal-symbols .symbol-lion .symbol-rock{animation-duration:6.2s;animation-delay:-1.8s}.personal-symbols .symbol-laptop .symbol-rock{animation-duration:4.8s;animation-delay:-2.6s}.personal-symbols .symbol-growth .symbol-rock{animation-duration:5.7s;animation-delay:-1.2s}.personal-symbols .symbol-orbits{animation-duration:6.4s}.personal-symbols .star{animation-duration:3.8s}.personal-symbols .nib{animation-duration:4.6s}.personal-symbols .growth-plant{animation-duration:5.5s}.personal-symbols .growth-can-hand{animation-duration:4.3s}.personal-symbols .growth-drop{animation-duration:2.2s}.personal-symbols .symbol-reaction{transform:perspective(900px) rotateY(calc(var(--symbol-x,0)*16deg)) rotateX(calc(var(--symbol-y,0)*-12deg)) translateY(calc(var(--symbol-scroll,0)*-20px));transition:transform .25s ease-out}
@keyframes personal-symbol-rock{0%,100%{transform:rotate(-12deg) rotateY(-19deg) rotateX(7deg)}50%{transform:rotate(11deg) rotateY(21deg) rotateX(-8deg)}}
@keyframes personal-orbit-rock{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(10deg)}}
@keyframes personal-growth-drop{0%,100%{transform:translateY(-7px);opacity:.75}65%{transform:translateY(18px);opacity:1}}
@media(prefers-reduced-motion:reduce){.personal-symbols .symbol-reaction{transform:none!important}}
/* Aligned frame alternation. The entire motif keeps its existing motion. */
.lion-glasses-frame,.lion-roar-frame,.laptop-open-frame{opacity:0;pointer-events:none}.lion-glasses-frame{animation:lion-glasses-frames 5.6s steps(1,end) infinite}.lion-roar-frame{animation:lion-roar-frames 5.6s steps(1,end) infinite}.laptop-open-frame{animation:laptop-open-frames 4.4s steps(1,end) -.8s infinite}
@keyframes lion-glasses-frames{0%,16%{opacity:0}17%{opacity:1}33%{opacity:0}72%{opacity:1}83%,100%{opacity:0}}
@keyframes lion-roar-frames{0%,42%{opacity:0}43%{opacity:1}64%,100%{opacity:0}}
@keyframes laptop-open-frames{0%,19%{opacity:0}20%{opacity:1}52%{opacity:0}70%{opacity:1}88%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.lion-glasses-frame,.lion-roar-frame,.laptop-open-frame{animation:none!important;opacity:0}}
/* Hero expression sequence and independently changing CI paper background. */
.hero-lion-smile-frame,.hero-lion-tongue-frame{opacity:0}.hero-lion-smile-frame{animation:hero-lion-smile 3.6s steps(1,end) infinite}.hero-lion-tongue-frame{animation:hero-lion-tongue 3.6s steps(1,end) infinite}.hero-expression-lion .hero-paper-color,.hero-expression-lion .layer-underpaint>path{animation:hero-ci-paper 5.4s ease-in-out infinite}
@keyframes hero-lion-smile{0%,19%{opacity:0}20%{opacity:1}43%,100%{opacity:0}}
@keyframes hero-lion-tongue{0%,47%{opacity:0}48%{opacity:1}72%,100%{opacity:0}}
@keyframes hero-ci-paper{0%,100%{fill:#d1be9f}33%{fill:#ca6faa}66%{fill:#7d765a}}
.studio-noir .studio-headline h1>span>svg.hero-exit-hex{color:#d1be9f;transform-box:fill-box;transform-origin:center;animation:hero-exit-float 4.6s ease-in-out infinite,hero-exit-color 3.6s ease-in-out infinite;will-change:transform}
@keyframes hero-exit-float{0%,100%{transform:perspective(450px) translateY(0) rotate(-19deg) rotateY(-22deg) rotateX(8deg)}50%{transform:perspective(450px) translateY(-10px) rotate(26deg) rotateY(26deg) rotateX(-10deg)}}
@keyframes hero-exit-color{0%,100%{color:#d1be9f}50%{color:#fff}}
@media(prefers-reduced-motion:reduce){.hero-lion-smile-frame,.hero-lion-tongue-frame{animation:none!important;opacity:0}.hero-expression-lion .hero-paper-color{fill:#d1be9f}.studio-noir .studio-headline h1>span>svg.hero-exit-hex{transform:none!important}}

/* Fast heart sequence: half-full, full, two overflow drops, original. */
.personal-symbols .heart-liquid-frame{opacity:0;animation:heart-liquid-states 2.1s steps(1,end) infinite}.personal-symbols .heart-liquid-level{transform-box:view-box;transform:translateY(290px);animation:heart-liquid-rise 2.1s steps(1,end) infinite}.personal-symbols .heart-liquid-surface{opacity:0;animation:heart-liquid-surface-state 2.1s steps(1,end) infinite}.heart-overflow-orchid,.heart-overflow-highlight,.heart-overflow-ivory{opacity:0;transform-box:view-box;transform-origin:0px 50px}.heart-overflow-orchid,.heart-overflow-highlight{animation:heart-overflow-pink 2.1s ease-out infinite}.heart-overflow-ivory{animation:heart-overflow-sand 2.1s ease-out infinite}
@keyframes heart-liquid-states{0%,11%{opacity:0}12%{opacity:1}89%,100%{opacity:0}}
@keyframes heart-liquid-rise{0%,11%{transform:translateY(600px)}12%{transform:translateY(290px)}39%{transform:translateY(0)}89%,100%{transform:translateY(600px)}}
@keyframes heart-liquid-surface-state{0%,11%{opacity:0}12%{opacity:1}39%,100%{opacity:0}}
@keyframes heart-overflow-pink{0%,48%{opacity:0;transform:translateY(112px) scale(.55)}54%{opacity:1}67%{opacity:1;transform:translateY(-25px) scale(1)}82%{opacity:1;transform:translateY(-2px) scale(.95)}90%,100%{opacity:0;transform:translateY(20px) scale(.8)}}
@keyframes heart-overflow-sand{0%,57%{opacity:0;transform:translateY(125px) scale(.55)}63%{opacity:1}76%{opacity:1;transform:translateY(-18px) scale(1)}88%{opacity:1;transform:translateY(5px) scale(.9)}94%,100%{opacity:0;transform:translateY(26px) scale(.8)}}
@media(prefers-reduced-motion:reduce){.personal-symbols .heart-liquid-frame,.personal-symbols .heart-liquid-surface,.heart-overflow-orchid,.heart-overflow-highlight,.heart-overflow-ivory{animation:none!important;opacity:0}}

@media(prefers-reduced-motion:reduce){.symbol-heart image[filter="url(#heart-empty-ink)"]{filter:none}}

/* Manifesto lettering: alternating CI ivory and white. */
.studio-noir .manifesto-words{color:#d1be9f;animation:manifesto-ivory-white 3.2s ease-in-out infinite}
@keyframes manifesto-ivory-white{0%,100%{color:#d1be9f}50%{color:#fff}}
@media(prefers-reduced-motion:reduce){.studio-noir .manifesto-words{animation:none!important;color:#d1be9f}}

/* Responsive portrait composition. A reserved lower band keeps desktop motifs
   outside the copy; narrow portrait screens use a separate visual stage. */
#roland.personal-editorial{min-height:940px;padding-top:95px;padding-bottom:340px}
#roland.personal-editorial>.personal-editorial-copy{width:50%;max-width:640px;padding-top:0}
#roland.personal-editorial h2{font-size:clamp(40px,4.2vw,64px);max-width:100%}
#roland.personal-editorial .personal-copy{max-width:440px}
#roland.personal-editorial .personal-symbols .symbol-lion{left:12%;right:auto;top:auto;bottom:5%;width:clamp(150px,14vw,200px)}
#roland.personal-editorial .personal-symbols .symbol-laptop{left:auto;right:39%;top:auto;bottom:4%;width:clamp(170px,17vw,235px)}
#roland.personal-editorial .personal-symbols .symbol-heart{left:auto;right:4%;top:50%;bottom:auto;width:clamp(175px,18vw,245px)}
#roland.personal-editorial .personal-symbols .symbol-growth{left:auto;right:2%;top:5%;bottom:auto;width:clamp(130px,15vw,210px)}
/* Tablet/narrow-window portrait: artwork stage above the full-width copy. */
@media(min-width:701px) and (max-width:1099px) and (orientation:portrait){
 #roland.personal-editorial{min-height:0;padding-top:45px;padding-bottom:70px}
 #roland.personal-editorial .personal-portrait{inset:0 0 auto 0;width:100%;height:880px}
 #roland.personal-editorial>.eyebrow{margin-bottom:0;max-width:250px}
 #roland.personal-editorial>.personal-editorial-copy{width:100%;max-width:none;padding-top:620px}
 #roland.personal-editorial h2{font-size:clamp(40px,5.5vw,58px);max-width:900px}
 #roland.personal-editorial .personal-copy{max-width:730px}
 #roland.personal-editorial .personal-shade{background:linear-gradient(0deg,#10100e 0%,#10100e 24%,#10100ef0 39%,#10100e77 58%,#10100e20 80%),linear-gradient(90deg,#10100e90,transparent 70%)}
 #roland.personal-editorial .personal-symbols .symbol-lion{left:5%;right:auto;top:190px;bottom:auto;width:145px}
 #roland.personal-editorial .personal-symbols .symbol-laptop{left:5%;right:auto;top:420px;bottom:auto;width:165px}
 #roland.personal-editorial .personal-symbols .symbol-heart{left:auto;right:4%;top:465px;bottom:auto;width:175px}
 #roland.personal-editorial .personal-symbols .symbol-growth{left:auto;right:3%;top:100px;bottom:auto;width:140px}
}
/* Phone portrait: retain the approved composition and its face clearance. */
@media(max-width:700px) and (orientation:portrait){
 #roland.personal-editorial{min-height:0;padding-top:38px;padding-bottom:60px}
 #roland.personal-editorial .personal-portrait{inset:0 0 auto 0;width:100%;height:620px}
 #roland.personal-editorial>.personal-editorial-copy{width:100%;max-width:none;padding-top:335px}
 #roland.personal-editorial h2{font-size:clamp(32px,8.5vw,47px)}
 #roland.personal-editorial .personal-copy{max-width:none}
 #roland.personal-editorial .personal-symbols .symbol-lion{left:8%;right:auto;top:56px;bottom:auto;width:112px}
 #roland.personal-editorial .personal-symbols .symbol-laptop{left:5%;right:auto;top:235px;bottom:auto;width:125px}
 #roland.personal-editorial .personal-symbols .symbol-heart{left:auto;right:2%;top:228px;bottom:auto;width:132px}
 #roland.personal-editorial .personal-symbols .symbol-growth{left:auto;right:2%;top:47px;bottom:auto;width:96px}
}
/* Phone landscape: compact two-column copy/photo and a separate bottom band. */
@media(orientation:landscape) and (max-width:1200px) and (max-height:600px){
 #roland.personal-editorial{min-height:0;padding-top:48px;padding-bottom:270px}
 #roland.personal-editorial .personal-portrait{inset:0 0 0 40%;width:60%;height:100%}
 #roland.personal-editorial>.eyebrow{margin-bottom:28px;max-width:250px}
 #roland.personal-editorial>.personal-editorial-copy{width:50%;max-width:530px;padding-top:0}
 #roland.personal-editorial h2{font-size:clamp(29px,4.1vw,43px)}
 #roland.personal-editorial .personal-copy{max-width:440px;margin-top:28px}
 #roland.personal-editorial .personal-copy p{font-size:12px;line-height:1.8}
 #roland.personal-editorial .personal-shade{background:linear-gradient(90deg,#10100e 0%,#10100efa 29%,#10100ecc 48%,#10100e33 75%,#10100e08),linear-gradient(0deg,#10100e 0%,#10100e77 15%,transparent 50%)}
 #roland.personal-editorial .personal-symbols .symbol-lion{left:11%;right:auto;top:auto;bottom:6%;width:125px}
 #roland.personal-editorial .personal-symbols .symbol-laptop{left:auto;right:39%;top:auto;bottom:4%;width:155px}
 #roland.personal-editorial .personal-symbols .symbol-heart{left:auto;right:3%;top:auto;bottom:7%;width:145px}
 #roland.personal-editorial .personal-symbols .symbol-growth{left:auto;right:1.5%;top:4%;bottom:auto;width:110px}
}
/* Tablet landscape retains the desktop composition, with smaller motifs. */
@media(min-width:1000px) and (max-width:1399px) and (min-height:601px) and (orientation:landscape){
 #roland.personal-editorial .personal-symbols .symbol-lion{left:11%;right:auto;top:auto;bottom:5%;width:160px}
 #roland.personal-editorial .personal-symbols .symbol-laptop{right:37%;width:190px}
 #roland.personal-editorial .personal-symbols .symbol-heart{right:2%;top:51%;width:180px}
 #roland.personal-editorial .personal-symbols .symbol-growth{right:1.5%;width:145px}
}

/* Reserve space for the manifesto line and a clear gap to the next section. */
.studio-noir .manifesto{padding-bottom:calc(9.5vw + clamp(70px,6vw,100px))}
.studio-noir .manifesto-words{bottom:clamp(24px,2.8vw,44px);left:var(--pad)}
@media(max-width:700px){.studio-noir .manifesto{padding-bottom:calc(10vw + 75px)}.studio-noir .manifesto-words{bottom:26px;left:22px}}

/* Visit links: rotate the hexagon frame independently of its upright icon. */
.studio-noir #besuche-uns .hex-contact:nth-child(1){--hex-angle:-14deg}
.studio-noir #besuche-uns .hex-contact:nth-child(2){--hex-angle:10deg}
.studio-noir #besuche-uns .hex-contact:nth-child(3){--hex-angle:-7deg}
.studio-noir #besuche-uns .hex-contact:nth-child(4){--hex-angle:19deg}
.studio-noir #besuche-uns .hex-contact-frame{transform:rotate(var(--hex-angle));transform-origin:50% 50%}
.studio-noir #besuche-uns .hex-contact-frame .hex-inner{fill:#000}
.studio-noir #besuche-uns .hex-contact-symbol{color:#fff}
.studio-noir #besuche-uns .hex-contact:is(:hover,:focus-visible,:active) .hex-contact-symbol{color:#ca6faa}

/* Menu hexagons share the visit-link geometry; icons stay upright. */
#compact-menu .menu-item-art{position:relative;display:block;width:32px;height:37px;flex-shrink:0}
#compact-menu>a:nth-of-type(1){--menu-hex-angle:-14deg}
#compact-menu>a:nth-of-type(2){--menu-hex-angle:10deg}
#compact-menu>a:nth-of-type(3){--menu-hex-angle:-7deg}
#compact-menu>a:nth-of-type(4){--menu-hex-angle:19deg}
#compact-menu .menu-hex-frame{display:block;width:100%;height:100%;overflow:visible;transform:rotate(var(--menu-hex-angle));transform-origin:50% 50%}
#compact-menu .menu-hex-frame path{vector-effect:non-scaling-stroke;stroke-linejoin:miter}
#compact-menu .menu-hex-outer{stroke:#fff;stroke-width:1;fill:none}
#compact-menu .menu-hex-inner{fill:#ca6faa;stroke:#ca6faa;stroke-width:1}
#compact-menu .menu-item-symbol{position:absolute;left:50%;top:50%;width:26px;height:26px;transform:translate(-50%,-50%);color:#fff;transition:color .2s ease}
#compact-menu>a:is(:hover,:focus-visible,:active) .menu-item-symbol{color:#000}
@media(prefers-reduced-motion:reduce){#compact-menu .menu-item-symbol{transition:none}}
