/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ivory:#f6f4ef;--paper:#fbfaf7;--ink:#09213a;--muted:#66717b;--line:#dcdedb;--coral:#f05a3c;--coral-text:#bf402a;--coral-on-blue:#f4775c;--blue:#062d4a;--sans:var(--font-dm-sans),Arial,Helvetica,sans-serif;--serif:var(--font-dm-serif),Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-shell>main{flex:1}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:70px;padding:0 4.5vw;display:flex}.wordmark{letter-spacing:-.04em;font-size:17px;font-weight:700}.main-nav{align-items:center;gap:clamp(20px,2.8vw,48px);margin-left:auto;margin-right:28px;display:flex}.main-nav a{color:var(--ink);white-space:nowrap;font-size:13px;position:relative}.main-nav a:after{background:var(--coral);content:"";transform-origin:0;width:100%;height:2px;transition:transform .25s;position:absolute;bottom:-26px;left:0;transform:scaleX(0)}.main-nav a:hover:after,.main-nav a.active:after{transform:scaleX(1)}.menu-button{background:var(--blue);cursor:pointer;border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:42px;height:42px;display:flex}.menu-button span{background:#fff;width:15px;height:1px;display:block}.header-actions{align-items:center;gap:22px;display:flex}.language-flag{align-items:center;padding:5px 0;display:flex}.language-flag svg{outline:1px solid #09213a20;display:block;overflow:hidden}.language-flag:focus-visible{outline:2px solid var(--coral);outline-offset:5px}.language-switcher{color:#76808a;letter-spacing:.08em;align-items:center;gap:5px;font-size:10px;display:flex}.language-switcher a{transition:color .2s}.language-switcher a.active,.language-switcher a:hover{color:var(--ink);font-weight:700}.mobile-menu{position:relative}.mobile-menu summary{list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-nav{background:var(--paper);border:1px solid var(--line);z-index:10;gap:0;min-width:190px;padding:8px;display:grid;position:absolute;top:52px;right:0;box-shadow:0 12px 28px #09213a1f}.mobile-nav a{border-bottom:1px solid var(--line);padding:11px 10px;font-size:13px}.mobile-nav a:last-child{border-bottom:0}.mobile-nav a.active,.mobile-nav a:hover{color:var(--coral-text)}@media (min-width:821px){.mobile-menu{display:none}}.hero{grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:5vw;min-height:555px;padding:64px 4.5vw 28px;display:grid}.hero-copy{align-self:center;padding:8px 0 52px}.eyebrow,.section-kicker{color:var(--coral-text);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.hero h1{font-family:var(--serif);letter-spacing:-.07em;white-space:nowrap;max-width:none;margin:28px 0 30px;font-size:clamp(50px,6.6vw,122px);font-weight:400;line-height:.88}.hero h2{font-family:var(--serif);letter-spacing:-.045em;max-width:650px;margin:0;font-size:clamp(25px,2.8vw,44px);font-weight:400;line-height:1.05}.accent-line{background:var(--coral);width:31px;height:3px;margin:29px 0 22px;display:block}.hero-intro{color:#364452;max-width:600px;margin:0;font-size:clamp(17px,1.3vw,20px);line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px 30px;margin-top:30px;display:flex}.hero-secondary-actions{align-items:center;gap:24px;display:flex}.hero-secondary-actions .text-link{white-space:nowrap}.button{border-radius:7px;align-items:center;gap:20px;padding:14px 18px;font-size:14px;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:#0a4368}.text-link{border-bottom:1px solid #84909b;gap:12px;width:fit-content;padding-bottom:8px;font-size:13px;display:inline-flex}.text-link:hover{border-color:var(--coral-text);color:var(--coral-text)}.hero-portrait{aspect-ratio:3213/2285;align-self:center;height:auto;min-height:0;position:relative;overflow:hidden}.portrait-backdrop{background:#062d4a;display:block;position:absolute;inset:0}.hero-portrait img{z-index:1;width:100%;height:auto;display:block;position:relative}.portrait-label{display:none}.section-frame{width:91%;max-width:1280px;margin-inline:auto}.projects-section{border-top:1px solid var(--line);padding:24px 0 48px}.simple-page-header{padding:46px 0 20px}.simple-page-title{color:var(--ink);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.simple-page-header>p{color:#56636e;max-width:620px;margin:12px 0 0;font-size:16px;line-height:1.5}.section-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.home-content{background:#fff;padding:70px 0 24px}.home-content .projects-section{border:0;padding:0 0 76px}.projects-title{letter-spacing:-.055em;margin:0;font-size:clamp(28px,3.3vw,48px);font-weight:600;line-height:1.1}.home-content .section-heading{align-items:end;margin-bottom:36px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px;display:grid}.project-card{min-width:0;display:block;position:relative}.project-stage{aspect-ratio:1.65;isolation:isolate;background:#e9f0eb;border-radius:16px;transition:transform .35s;position:relative;overflow:hidden}.project-card:hover .project-stage{transform:translateY(-5px)}.project-card:focus-visible{outline:3px solid var(--coral);outline-offset:8px;border-radius:16px}.stage-arrow{z-index:3;background:#ffffffa6;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:24px;transition:transform .3s,background .3s;display:flex;position:absolute;top:20px;right:20px}.project-card:hover .stage-arrow{background:#fff;transform:rotate(45deg)}.project-card-copy{padding:24px 2px 0}.project-card-website .project-stage{background:#edf1f2}.project-card-website .project-stage>img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.project-card h3{font-family:var(--sans);letter-spacing:-.055em;margin:0 0 12px;font-size:clamp(26px,2.6vw,40px);font-weight:600;line-height:1.1}.project-card p{color:#64707b;max-width:440px;margin:0;font-size:14px;line-height:1.6}.project-card-rallye .project-stage{color:#345340;background:#eaf0df}.route-art{width:100%;height:100%;position:absolute}.brand-tile{z-index:2;border-radius:24%;width:21%;transition:transform .4s;display:block;position:absolute;top:47%;left:50%;overflow:hidden;transform:translate(-50%,-50%)rotate(-9deg);box-shadow:0 22px 45px #09213a20}.brand-tile img{width:100%;display:block}.project-card:hover .brand-tile{transform:translate(-50%,-50%)rotate(0)scale(1.05)}.project-card-dhbw .project-stage{color:#55548c;background:#eeeefa}.planner-art{background:#ffffff80;border:1px solid #fff;border-radius:14px;width:68%;height:68%;padding:18px;position:absolute;top:27%;left:20%;transform:rotate(-9deg)}.planner-days{letter-spacing:.1em;justify-content:space-around;font-size:9px;font-weight:600;display:flex}.planner-blocks{background:repeating-linear-gradient(90deg,#0000 0 calc(20% - 1px),#dcddec calc(20% - 1px) 20%);height:90%;margin-top:14px;position:relative}.planner-blocks i{background:#c9c5eb;border-radius:5px;width:16%;height:27%;position:absolute;top:3%;left:2%}.planner-blocks i:nth-child(2){background:#b5c6df;top:34%;left:22%}.planner-blocks i:nth-child(3){height:45%;top:6%;left:42%}.planner-blocks i:nth-child(4){background:#d9c6df;top:50%;left:62%}.planner-blocks i:nth-child(5){background:#b5c6df;top:12%;left:82%}.planner-blocks i:nth-child(6){height:20%;top:68%;left:2%}.project-card-dhbw .brand-tile{top:50%;left:37%;transform:translate(-50%,-50%)rotate(7deg)}.project-card-magnets .project-stage{color:#846248;background:#f9f5ef}.product-orbit{border:1px solid #ddcbbb;border-radius:50%;width:75%;height:130%;position:absolute;top:17%;left:21%}.product-orbit:after{content:"";border:1px solid #ddcbbb;border-radius:50%;position:absolute;inset:24px}.magnet-montage{object-fit:contain;z-index:2;width:70%;height:85%;transition:transform .4s;position:absolute;top:14%;left:15%}.project-card:hover .magnet-montage{transform:rotate(-4deg)scale(1.06)}.project-card-web .project-stage{color:#d8e8ef;background:#092e47}.project-card-web .stage-arrow{color:#fff;background:#ffffff18}.project-card-web:hover .stage-arrow{color:#092e47}.web-art{letter-spacing:-.1em;justify-content:center;align-items:center;gap:10px;height:100%;padding-top:18px;font-size:clamp(65px,10vw,150px);font-weight:400;display:flex}.web-asterisk{color:#f8ab8b;flex-shrink:0;width:.9em;height:.9em;transition:transform .7s;display:inline-block}.project-card:hover .web-asterisk{transform:rotate(90deg)}.internet-visual{display:none}.home-content .journal-section{border:1px solid #e5e8eb;border-left:0;border-right:0;margin-bottom:32px;padding:38px 0}.home-content .journal-feature h2{font-family:var(--sans);letter-spacing:-.045em;max-width:640px;font-size:clamp(22px,2.4vw,34px);font-weight:500;line-height:1.2}.home-content .secondary-link{border-top:0;padding:18px 0}@media (prefers-reduced-motion:reduce){.project-card *,.project-card:hover *{transition:none}}.journal-section{border:1px solid var(--line);grid-template-columns:160px 1fr auto;align-items:center;gap:28px;margin-bottom:24px;padding:24px 30px;display:grid}.journal-date{color:#67727d;white-space:nowrap;margin:20px 0 0;font-size:12px}.journal-date span{background:var(--coral);vertical-align:middle;border-radius:50%;width:5px;height:5px;margin-left:8px;display:inline-block}.journal-feature h2{font-family:var(--serif);letter-spacing:-.035em;margin:0 0 7px;font-size:25px;font-weight:400}.journal-feature p{color:#67727d;margin:0;font-size:13px}.journal-link{justify-self:end}.secondary-links{grid-template-columns:1fr 1fr;gap:12px;margin:0 4.5vw 50px;display:grid}.secondary-link{border-bottom:1px solid var(--line);border-top:1px solid var(--line);grid-template-columns:34px 1fr auto;align-items:center;gap:15px;padding:15px 10px;font-size:14px;transition:color .2s;display:grid}.secondary-link:hover{color:var(--coral-text)}.camera-mark,.product-mark{font-size:22px}.site-footer{background:var(--blue);color:#cbd7df;margin:0;padding:52px 4.5vw 22px}.footer-main{grid-template-columns:1.3fr 1fr 1fr;gap:40px;display:grid}.footer-label{color:var(--coral-on-blue);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:700}.footer-title{color:var(--paper);font-family:var(--serif);margin:0 0 8px;font-size:25px}.footer-copy{color:#b9c8d2;max-width:260px;margin:0;font-size:12px;line-height:1.5}.footer-nav{grid-template-columns:1fr 1fr;align-content:start;gap:8px;display:grid}.footer-nav a,.footer-contact a,.footer-socials a{font-size:12px}.footer-nav a:hover,.footer-contact a:hover,.footer-socials a:hover,.footer-bottom a:hover{color:var(--coral-on-blue)}.footer-contact>a{color:var(--paper);margin-bottom:14px;display:block}.footer-socials{gap:14px;display:flex}.footer-bottom{letter-spacing:.04em;border-top:1px solid #dbe6ed38;justify-content:space-between;align-items:center;margin-top:44px;padding-top:16px;font-size:11px;display:flex}.footer-bottom nav{align-items:center;gap:14px;display:flex}.page-intro{border-bottom:1px solid var(--line);padding:48px 0 38px}.page-intro h1,.detail-hero h1{font-family:var(--serif);letter-spacing:-.07em;max-width:900px;margin:22px 0 24px;font-size:clamp(46px,6vw,88px);font-weight:400;line-height:.92}.page-intro-copy{color:#56636e;max-width:660px;margin:0;font-size:18px;line-height:1.55}.project-index{padding:30px 0 78px}.detail-hero{grid-template-columns:minmax(0,1fr) 260px;align-items:end;gap:50px;padding:86px 0 56px;display:grid}.detail-intro{color:#56636e;font-family:var(--serif);max-width:700px;margin:0 0 30px;font-size:25px;line-height:1.1}.detail-image{object-fit:contain;width:100%;max-height:220px}.detail-content{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);gap:80px;padding:42px 0 88px;display:grid}.detail-copy>p{font-family:var(--serif);letter-spacing:-.03em;max-width:700px;margin:0;font-size:28px;line-height:1.15}.detail-side{border-left:1px solid var(--line);padding-left:28px}.detail-links{gap:12px;margin:16px 0 42px;display:grid}.updates-kicker{margin-top:30px}.updates-list p{border-bottom:1px solid var(--line);color:#56636e;margin:0;padding:12px 0;font-size:13px;line-height:1.45}.availability-note{border-left:3px solid var(--coral);gap:5px;margin-top:34px;padding:12px 0 12px 16px;display:grid}.availability-note strong{font-family:var(--serif);font-size:24px;font-weight:400}.availability-note span{color:#56636e;font-size:13px}.article-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:30px 0 88px;display:grid}.article-card{border:1px solid var(--line);padding:28px}.article-meta{color:var(--coral-text);letter-spacing:.12em;text-transform:uppercase;margin:0 0 34px;font-size:10px;font-weight:700}.article-card h2{font-family:var(--serif);letter-spacing:-.04em;margin:0 0 12px;font-size:30px;font-weight:400;line-height:1}.article-card>p:not(.article-meta){color:#56636e;margin:0 0 28px;line-height:1.5}.archive-note{border:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:88px;padding:38px;display:flex}.archive-note h2{font-family:var(--serif);letter-spacing:-.05em;margin:8px 0 10px;font-size:38px;font-weight:400}.archive-note p:not(.section-kicker){color:#56636e;margin:0}.archive-mark{color:var(--ink);font-family:var(--serif);text-align:right;font-size:64px;line-height:.75}.archive-mark span{color:var(--coral-text);font-family:var(--sans);letter-spacing:.14em;font-size:10px}.photo-archive{width:91%;max-width:1600px;margin-inline:auto;padding:18px 0 88px}.about-grid{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);align-items:start;gap:clamp(32px,4vw,60px);padding:36px 0 72px;display:grid}.about-grid img{aspect-ratio:3213/2285;background:var(--blue);object-fit:contain;width:100%;height:auto;display:block}.about-grid p{font-family:var(--serif);letter-spacing:-.04em;max-width:650px;margin:0 0 32px;font-size:30px;line-height:1.1}.about-copy p{color:#3f4d59;font-family:var(--sans);letter-spacing:0;max-width:none;margin:0 0 20px;font-size:17px;line-height:1.6}.about-copy .about-lead{color:var(--ink);font-family:var(--serif);letter-spacing:-.03em;max-width:none;font-size:clamp(22px,2vw,28px);line-height:1.4}.about-copy h2{font-family:var(--serif);letter-spacing:-.04em;margin:36px 0 14px;font-size:30px;font-weight:400}.skill-list{border-top:1px solid var(--line);max-width:650px;margin:0 0 30px;padding:0;list-style:none}.skill-list li{border-bottom:1px solid var(--line);color:#3f4d59;padding:12px 0;font-size:14px}.contact-card{border-top:1px solid var(--line);margin-bottom:88px;padding:42px 0}.contact-email{font-family:var(--serif);letter-spacing:-.06em;margin:18px 0 14px;font-size:clamp(34px,5vw,70px);display:block}.contact-email:hover{color:var(--coral-text)}.contact-card p:last-child{color:#56636e;margin:0}.legal-content{padding:32px 0 88px}.legal-document{border:1px solid var(--line);max-width:760px;padding:32px}.legal-document h2{font-family:var(--serif);margin:34px 0 8px;font-size:27px;font-weight:400}.legal-document h2:first-of-type{margin-top:10px}.legal-document p{color:#56636e;white-space:pre-line;overflow-wrap:anywhere;margin:0 0 14px;line-height:1.7}.legal-links{margin:12px 0 0;padding:0;list-style:none}.legal-links li+li{margin-top:8px}.legal-links a{text-underline-offset:3px;overflow-wrap:anywhere;text-decoration:underline}.legal-links a:hover{color:var(--coral-text)}.legal-document section+section{margin-top:32px}.legal-document .legal-updated{border-top:1px solid var(--line);margin-top:32px;padding-top:20px;font-size:13px}@media (max-width:920px){.main-nav{gap:15px;margin-right:20px}.hero{grid-template-columns:1fr;gap:30px;padding-top:42px}.hero-portrait{justify-self:end;width:100%;max-width:650px;height:auto}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-section{grid-template-columns:140px 1fr auto}.detail-hero,.detail-content{gap:35px}}@media (max-width:640px){.site-header{height:62px;padding:0 20px}.main-nav{display:none}.header-actions{gap:14px}.mobile-menu .menu-button{width:38px;height:38px}.hero{flex-direction:column;padding:42px 20px 24px;display:flex}.hero-copy{padding-bottom:5px}.hero h1{margin-top:22px;font-size:clamp(38px,12vw,72px)}.hero h2{font-size:30px}.hero-portrait{width:calc(100% + 40px);height:auto;margin:0 -20px}.hero-portrait img{width:100%;height:auto}.section-frame{width:calc(100% - 40px);margin-inline:auto}.section-heading{flex-direction:column;align-items:flex-start;gap:15px}.simple-page-header{padding:34px 0 16px}.simple-page-header>p{font-size:15px}.project-grid{grid-template-columns:1fr}.journal-section{flex-direction:column;align-items:start;gap:18px;padding:20px;display:flex}.journal-feature h2{font-size:28px}.journal-link{justify-self:start}.secondary-links{margin:0 20px 35px;display:block}.secondary-link+.secondary-link{border-top:0}.footer-main{grid-template-columns:1fr;gap:28px}.footer-nav{max-width:280px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:14px}.footer-bottom nav{flex-wrap:wrap;gap:8px 12px}.page-intro{padding:58px 0 38px}.page-intro h1,.detail-hero h1{font-size:48px}.page-intro-copy{font-size:16px}.project-index{padding-top:22px}.photo-archive{width:calc(100% - 40px);padding:8px 0 62px}.detail-hero{flex-direction:column;align-items:flex-start;padding:58px 0 38px;display:flex}.detail-intro{font-size:23px}.detail-image{order:-1;align-self:center;max-width:230px;max-height:180px}.detail-content{flex-direction:column;gap:42px;padding:30px 0 62px;display:flex}.detail-copy>p{font-size:25px}.detail-side{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.article-list{grid-template-columns:1fr;padding-top:22px}.article-card{padding:22px}.archive-note{flex-direction:column;align-items:flex-start;gap:36px;margin-bottom:62px;padding:24px}.archive-mark{align-self:flex-end;font-size:52px}.about-grid{grid-template-columns:1fr;gap:28px;padding:22px 0 62px}.about-grid img{height:auto}.about-grid p{font-size:26px}.about-copy p{font-size:16px}.about-copy h2{font-size:28px}.contact-card{margin-bottom:62px;padding:28px 0}.contact-email{overflow-wrap:anywhere;font-size:38px}.legal-content{padding:22px 0 62px}.legal-document{padding:22px}.home-content{padding:42px 0 8px}.home-content .section-heading{align-items:flex-start;gap:18px;margin-bottom:26px}.home-content .projects-section{padding-bottom:48px}.project-grid{gap:34px}.project-stage{aspect-ratio:1.35;border-radius:12px}.stage-arrow{width:36px;height:36px;top:14px;right:14px}.brand-tile{width:24%}.web-art{font-size:100px}.project-card-copy{padding-top:20px}.project-card h3{font-size:29px}.project-card p{font-size:14px}.home-content .journal-section{padding:28px 0}}.journal-page{background:#fff;padding:64px 4.5vw 100px}.newspaper-article{max-width:1080px;margin:0 auto}.story-header{max-width:720px;margin:0 auto 36px}.story-header h1{letter-spacing:-.045em;text-wrap:balance;margin:0 0 22px;font-family:Georgia,Times New Roman,serif;font-size:clamp(40px,5vw,64px);font-weight:400;line-height:1.08}.story-meta{color:#66717b;font-family:var(--sans);flex-wrap:wrap;gap:8px 20px;font-size:13px;line-height:1.6;display:flex}.story-meta a:hover{text-underline-offset:3px;text-decoration:underline}.story-header .story-back{margin-bottom:28px}.story-body{color:#273540;font-family:Georgia,Times New Roman,serif;font-size:19px;line-height:1.8}.story-body>p,.story-body>h2,.story-body>h3,.story-list{max-width:720px;margin-left:auto;margin-right:auto}.story-body>p{margin-top:0;margin-bottom:23px}.story-section-start{max-width:720px;margin:64px auto 25px}.story-section-start h2{color:var(--ink);letter-spacing:-.025em;text-wrap:pretty;margin:0;font-size:34px;font-weight:400;line-height:1.22}.story-body>h3{color:var(--ink);font-family:var(--sans);letter-spacing:-.025em;margin-top:42px;margin-bottom:20px;font-size:22px;font-weight:600;line-height:1.35}.story-list{margin-top:26px;margin-bottom:28px;padding-left:24px;list-style:outside}.story-list li{margin-bottom:12px;padding-left:8px}.story-list li::marker{color:#80939f}.story-thesis{border-left:3px solid var(--coral);color:var(--ink);letter-spacing:-.01em;max-width:860px;margin:38px auto 48px;padding:4px 0 4px 30px;font-size:25px;line-height:1.55}.story-panels{border-top:1px solid #dce1e4;border-bottom:1px solid #dce1e4;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 40px;margin:36px 0 40px;padding:32px 0;display:grid}.story-panel{min-width:0}.story-panel h4{color:var(--ink);font-family:var(--sans);letter-spacing:-.02em;margin:0 0 14px;font-size:17px;font-weight:600;line-height:1.45}.story-panel p{color:#53616b;white-space:pre-line;margin:0;font-size:17px;line-height:1.7}.story-panel p+p{margin-top:14px}.story-body [data-source-text]{white-space:pre-line}.essay-art{border-radius:3px;width:100%;height:auto;display:block}.story-opening-art{max-width:720px;margin:0 auto 28px}.story-opening-art .essay-art{height:180px}.essay-illustration{width:100%;display:block}.essay-illustration>summary{cursor:help;border-radius:3px;list-style:none;display:block;position:relative}.essay-illustration>summary::-webkit-details-marker{display:none}.essay-illustration>summary:focus-visible{outline:2px solid var(--coral);outline-offset:4px}.essay-ai-note{color:#fff;font-family:var(--sans);opacity:0;pointer-events:none;background:#09213ae8;border-radius:4px;padding:5px 9px;font-size:11px;font-weight:400;line-height:1.4;position:absolute;bottom:10px;right:10px}.essay-illustration[open] .essay-ai-note{opacity:1}.essay-illustration>summary:focus-visible .essay-ai-note{opacity:1}@media (hover:hover){.essay-illustration>summary:hover .essay-ai-note{opacity:1}}.story-panels-illustrated{border:0;gap:44px 40px;margin:36px 0 48px;padding:0}.story-panel>.essay-illustration{margin-bottom:24px}.story-panel>.essay-illustration .essay-art{height:164px}.story-interlude{margin:60px 0 32px}.story-interlude .essay-art{background:#f2f0e8;height:210px}.story-economic-cycle{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;max-width:860px;margin:32px auto;padding:26px 0;display:grid}.story-economic-step{position:relative}.story-economic-step>svg{color:var(--ink);width:48px;height:48px;margin-bottom:14px;display:block}.story-economic-step>p{margin:0;font-size:17px;line-height:1.6}.story-cycle-arrow{color:#a6b2b8;font-family:var(--sans);position:absolute;top:8px;right:-22px}@media (max-width:640px){.journal-page{padding:32px 20px 62px}.story-header{margin-bottom:30px;padding-bottom:0;display:block}.story-header h1{margin-bottom:22px;font-size:43px;line-height:1.08}.story-opening-art .essay-art{height:150px}.story-body{font-size:18px;line-height:1.75}.story-section-start{margin-top:44px}.story-section-start h2{font-size:29px}.story-body>h3{margin-top:32px;font-size:21px}.story-thesis{margin:30px 0;padding-left:20px;font-size:22px}.story-panels{grid-template-columns:1fr;gap:28px;margin:28px 0;padding:28px 0}.story-panels-illustrated{gap:36px;padding:0}.story-panel>.essay-illustration{margin-bottom:20px}.story-panel>.essay-illustration .essay-art{height:150px}.story-interlude{margin-top:40px}.story-interlude .essay-art{height:170px}.story-economic-cycle{grid-template-columns:1fr;gap:24px}.story-economic-step{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:16px;display:grid}.story-economic-step>svg{width:40px;height:40px;margin:0}.story-cycle-arrow{display:none}}.journal-index-page{background:#fff;padding:56px 4.5vw 80px}.journal-index-inner{max-width:1100px;margin:auto}.journal-feature-card{background:#f1f4f6;border-radius:20px;grid-template-columns:240px minmax(0,1fr);transition:box-shadow .35s,transform .35s;display:grid;overflow:hidden}.journal-feature-card:hover{transform:translateY(-4px);box-shadow:0 20px 55px #09213a12}.journal-feature-card:focus-visible{outline:3px solid var(--coral);outline-offset:7px}.journal-cover{aspect-ratio:1;color:#e5edf1;isolation:isolate;background:#082c44;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.cover-year{letter-spacing:-.07em;z-index:1;font-size:clamp(80px,11vw,165px);font-weight:500;line-height:.9;position:relative}.cover-year>span{color:#f6a788;text-align:center;margin-top:12px;font-family:Georgia,serif;font-size:1.15em;font-weight:400;display:block}.cover-orbit{border:1px solid #ffffff25;border-radius:50%;width:85%;height:85%;transition:transform .8s;position:absolute}.cover-orbit-one{transform:rotate(-35deg)scaleX(.55)}.cover-orbit-two{transform:rotate(35deg)scaleX(.55)}.journal-feature-card:hover .cover-orbit-one{transform:rotate(-15deg)scaleX(.55)}.journal-feature-card:hover .cover-orbit-two{transform:rotate(55deg)scaleX(.55)}.cover-dot{background:#f6a788;border-radius:50%;width:12px;height:12px;position:absolute;top:22%;right:18%}.journal-feature-copy{align-self:center;padding:28px 36px}.journal-feature-copy h1{letter-spacing:-.04em;text-wrap:balance;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,2.6vw,38px);font-weight:400;line-height:1.12}.journal-feature-copy>p{color:#66717b;margin:0;font-family:Georgia,serif;font-size:20px;line-height:1.5}.journal-read-link{justify-content:space-between;align-items:center;margin-top:24px;font-size:13px;font-weight:600;display:flex}.journal-read-arrow{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:28px;transition:background .25s,color .25s,transform .25s;display:flex}.journal-feature-card:hover .journal-read-arrow{background:var(--ink);color:#fff;transform:rotate(45deg)}.story-back{color:#66717b;font-family:var(--sans);align-items:center;gap:12px;margin-bottom:38px;font-size:13px;transition:color .2s;display:inline-flex}.story-back>span{color:var(--ink);background:#f1f4f6;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.story-back:hover{color:var(--ink)}@media (max-width:640px){.journal-index-page{padding:40px 20px 62px}.journal-feature-card{border-radius:12px;grid-template-columns:100px minmax(0,1fr)}.journal-cover{aspect-ratio:1.4}.cover-year{align-items:center;gap:18px;font-size:85px;display:flex}.cover-year>span{margin-top:0}.journal-feature-copy{padding:22px}.journal-feature-copy h1{margin:0;font-size:26px}.journal-feature-copy>p{font-size:19px}.journal-read-link{margin-top:24px}.story-back{margin-bottom:28px}}@media (prefers-reduced-motion:reduce){.journal-feature-card,.journal-feature-card *,.story-back{transition:none}}.contact-page{background:radial-gradient(at 95% 20%,#dbe7ec 0,#0000 54%),radial-gradient(at 8% 95%,#f6e2d8 0,#0000 48%),#f1f2ed;align-items:center;min-height:530px;padding:64px 0;display:flex;position:relative;overflow:hidden}.contact-content{grid-template-columns:minmax(0,1.4fr) minmax(240px,.7fr);align-items:center;gap:64px;width:91%;max-width:1280px;margin-inline:auto;padding:0;display:grid;position:relative}.contact-content h1{letter-spacing:-.055em;text-wrap:balance;margin:0 0 36px;font-size:clamp(38px,4.6vw,66px);font-weight:500;line-height:1.08}.email-reveal-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:32px;padding:17px 22px;font-size:15px;transition:background .2s;display:inline-flex}.email-reveal-button:hover{background:#164762}:is(.email-reveal-button:focus-visible,.revealed-email:focus-visible){outline:2px solid var(--coral);outline-offset:5px}.revealed-email{letter-spacing:-.035em;overflow-wrap:anywhere;align-items:center;gap:18px;max-width:100%;font-size:clamp(22px,3vw,40px);display:inline-flex}.revealed-email>span{font-size:22px}.email-reveal-compact{margin-bottom:14px}.email-reveal-compact .email-reveal-button{color:var(--paper);background:0 0;border-bottom:1px solid #ffffff50;border-radius:0;gap:12px;padding:0 0 6px;font-size:12px}.email-reveal-compact .email-reveal-button:hover{border-color:var(--coral-on-blue);color:var(--coral-on-blue)}.email-reveal-compact .revealed-email{color:var(--paper);letter-spacing:0;gap:10px;font-size:12px}.email-reveal-compact .revealed-email>span{font-size:14px}.contact-art{aspect-ratio:1;justify-content:center;align-items:center;width:100%;max-width:360px;display:flex;position:relative}.contact-art svg{filter:drop-shadow(0 18px 18px #19374718);z-index:1;width:100%;position:relative;transform:rotate(-9deg)}.contact-orbit{border:1px solid #9db2ba70;border-radius:50%;position:absolute;inset:0}.contact-orbit:after{content:"";border:1px solid #9db2ba40;border-radius:50%;position:absolute;inset:20px}@media (max-width:640px){.contact-page{min-height:0;padding:44px 0 50px}.contact-content{grid-template-columns:1fr;gap:28px;width:calc(100% - 40px)}.contact-copy{order:1}.contact-content h1{margin-bottom:28px;font-size:39px}.contact-art{justify-self:center;max-width:185px}.revealed-email{gap:10px}}.home-journal{padding-bottom:56px}.home-article-preview{background:#f1f4f6;border-radius:18px;grid-template-columns:240px minmax(0,1fr);transition:transform .3s,box-shadow .3s;display:grid;overflow:hidden}.home-article-preview .journal-cover{aspect-ratio:1}.home-article-preview .cover-year{align-items:center;gap:10px;font-size:58px;display:flex}.home-article-preview .cover-year>span{margin-top:0}.home-article-text{justify-content:space-between;align-items:center;gap:32px;padding:36px 44px;display:flex}.home-article-text h3{letter-spacing:-.04em;text-wrap:balance;max-width:720px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,3.2vw,44px);font-weight:400;line-height:1.15}.home-article-arrow{background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:28px;transition:background .25s,color .25s,transform .25s;display:flex}.home-article-preview:hover{transform:translateY(-3px);box-shadow:0 16px 40px #09213a12}.home-article-preview:hover .home-article-arrow{background:var(--ink);color:#fff;transform:rotate(45deg)}.home-article-preview:focus-visible{outline:3px solid var(--coral);outline-offset:6px}@media (max-width:920px) and (min-width:641px){.home-article-preview{grid-template-columns:190px minmax(0,1fr)}.home-article-text{gap:20px;padding:26px}}@media (max-width:640px){.home-journal{padding-bottom:32px}.home-article-preview{border-radius:12px;grid-template-columns:1fr}.home-article-preview .journal-cover{aspect-ratio:2}.home-article-preview .cover-year{font-size:70px}.home-article-text{align-items:flex-end;gap:20px;padding:26px}.home-article-text h3{font-size:29px}.home-article-arrow{width:40px;height:40px;font-size:24px}}@media (prefers-reduced-motion:reduce){.home-article-preview,.home-article-preview *{transition:none}}.home-journal-heading{letter-spacing:-.035em;margin:0 0 22px;font-size:22px;font-weight:500;line-height:1.2}.journal-index-intro{color:var(--ink);letter-spacing:-.035em;text-wrap:pretty;max-width:1040px;margin:0 0 40px;font-size:clamp(26px,2.8vw,38px);font-weight:500;line-height:1.35}.photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:4px;column-gap:16px;display:grid}.photo-thumbnail{cursor:zoom-in;background:#e3e5e5;border:0;border-radius:8px;align-self:start;width:100%;padding:0;display:block;overflow:hidden}.photo-thumbnail picture,.photo-thumbnail img{width:100%;height:auto;display:block}.photo-thumbnail img{transition:filter .3s}.photo-thumbnail:hover img{filter:brightness(.94)}.photo-thumbnail:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.photo-lightbox{color:#fff;background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:24px;inset:0}.photo-lightbox::backdrop{background:#061623ee}.photo-lightbox-layout{pointer-events:none;grid-template-rows:minmax(0,1fr) auto;max-width:1400px;height:100%;margin:auto;padding:48px 0 0;display:grid}.photo-full-image{object-fit:contain;pointer-events:auto;align-self:center;width:auto;max-width:100%;height:auto;max-height:100%;margin:auto;display:block}.photo-close{color:#fff;cursor:pointer;pointer-events:auto;background:#ffffff18;border:0;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:32px;display:flex;position:absolute;top:16px;right:24px}.photo-viewer-controls{justify-content:center;align-items:center;gap:24px;padding-top:18px;display:flex}.photo-viewer-controls span{font-variant-numeric:tabular-nums;font-size:13px}.photo-viewer-controls button{color:#fff;cursor:pointer;pointer-events:auto;background:#ffffff18;border:0;border-radius:50%;width:44px;height:44px;font-size:22px}.photo-lightbox button:focus-visible{outline-offset:3px;outline:2px solid #fff}@media (max-width:1100px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:8px}.photo-thumbnail{border-radius:5px}.photo-lightbox{padding:16px}.photo-close{right:16px}}@media (prefers-reduced-motion:reduce){.photo-thumbnail img{transition:none}}.journal-feature-card .journal-cover{aspect-ratio:auto;min-height:240px}.journal-feature-card .cover-year{align-items:center;gap:10px;font-size:65px;display:flex}.journal-feature-card .cover-year>span{margin-top:0}@media (max-width:640px){.journal-index-intro{margin-bottom:28px;font-size:27px}.journal-feature-card .journal-cover{min-height:210px}.journal-feature-card .cover-year{font-size:36px;display:block}.journal-feature-card .cover-year>span{margin-top:12px}.journal-feature-card .journal-read-arrow{width:38px;height:38px;font-size:23px}}@media (min-width:1100px) and (orientation:landscape){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project-stage{aspect-ratio:1.4;border-radius:12px}.project-card-copy{padding-top:20px}.project-card h3{font-size:clamp(23px,1.8vw,30px)}.project-card p{font-size:13px;line-height:1.55}.stage-arrow{width:34px;height:34px;font-size:21px;top:14px;right:14px}.brand-tile{width:28%}.web-art{gap:6px;font-size:clamp(65px,6vw,110px)}.planner-art{padding:12px}.planner-days{font-size:8px}.planner-blocks{margin-top:10px}}.experience-page{background:#fff}.experience-frame{width:91%;max-width:1280px;margin-inline:auto}.experience-hero{grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:60px;padding:52px 0 50px;display:grid}.experience-back{color:#687681;margin-bottom:26px;font-size:12px;display:inline-block}.experience-hero h1{letter-spacing:-.065em;text-wrap:balance;margin:0 0 24px;font-size:clamp(40px,5vw,72px);font-weight:500;line-height:1.07}.experience-hero p{color:#566773;max-width:700px;margin:0;font-size:18px;line-height:1.65}.experience-app-mark{aspect-ratio:1;background:#eaf0df;border-radius:50%;justify-content:center;align-items:center;display:flex}.experience-app-mark img{border-radius:23%;width:46%;transform:rotate(-9deg);box-shadow:0 20px 35px #09213a18}.experience-dhbw-planner .experience-app-mark{background:#eeedf8}.experience-links{flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;display:flex}.experience-links a{background:#f0f3f5;border-radius:8px;padding:12px 16px;font-size:13px;transition:background .2s}.experience-links a:first-child{background:var(--ink);color:#fff}.experience-links a:hover{color:var(--ink);background:#dce5e9}.app-screens{background:linear-gradient(110deg,#edf1e7,#f5f7f1);padding:34px 0 20px;overflow:hidden}.experience-dhbw-planner .app-screens{background:linear-gradient(110deg,#ecebf6,#f5f5fb)}.screens-viewport{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000);mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000)}.screens-track{width:max-content;animation:55s linear infinite screen-loop;display:flex}.screens-group{flex-shrink:0;gap:24px;padding-right:24px;display:flex}.screen-phone{cursor:zoom-in;background:#fff;border:6px solid #172832;border-radius:28px;flex-shrink:0;width:210px;padding:0;overflow:hidden;box-shadow:0 12px 24px #09213a13}.screen-phone img{width:100%;height:auto;display:block}.screen-phone:focus-visible{outline:3px solid var(--coral);outline-offset:4px}.app-screens:hover .screens-track,.app-screens:focus-within .screens-track,.app-screens.is-paused .screens-track{animation-play-state:paused}.screens-pause{color:#566773;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;margin:20px auto 0;padding:8px 12px;font-size:11px;display:flex}@keyframes screen-loop{to{transform:translate(-50%)}}.experience-audience{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 50px;padding:58px 0;display:grid}.experience-audience>div{border-bottom:1px solid #e4e9ec;padding-bottom:26px}.experience-audience h2,.magnet-details h2{letter-spacing:-.035em;margin:0 0 14px;font-size:24px;font-weight:500;line-height:1.2}.experience-audience p,.magnet-details p{color:#566773;margin:0;font-size:15px;line-height:1.7}.experience-audience a{margin-top:18px;font-size:12px;display:inline-block}.experience-chat{color:#fff;background:#092e47;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;margin-bottom:70px;padding:36px;display:grid}.experience-chat h2{letter-spacing:-.04em;margin:0 0 14px;font-size:30px;font-weight:500}.experience-chat p{color:#c7d6df;max-width:740px;margin:0;font-size:15px;line-height:1.7}.experience-chat>a{color:var(--ink);background:#fff;border-radius:8px;padding:14px 18px;font-size:13px}.experience-magnets .experience-hero{grid-template-columns:minmax(0,1fr) minmax(300px,.8fr)}.experience-product-image{background:#f9f5ef;border-radius:18px;align-items:center;min-height:320px;padding:24px;display:flex;overflow:hidden}.experience-product-image img{width:100%;height:auto;display:block}.magnet-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 50px;padding:8px 0 64px;display:grid}.magnet-order{background:#f5ede6;border-radius:12px;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:14px 24px;margin-top:10px;padding:28px;display:flex}.magnet-order p{color:var(--ink);width:100%;font-size:18px}.magnet-order span{color:#6b6b65;font-size:13px}.magnet-order a{background:var(--ink);color:#fff;border-radius:8px;margin-left:auto;padding:12px 16px;font-size:13px}@media (max-width:640px){.experience-frame{width:calc(100% - 40px)}.experience-hero,.experience-magnets .experience-hero{grid-template-columns:1fr;gap:24px;padding:32px 0}.experience-hero h1{font-size:42px}.experience-hero p{font-size:16px}.experience-app-mark{display:none}.experience-links{gap:8px}.experience-links a{padding:11px 12px;font-size:12px}.app-screens{padding:24px 0 12px}.screen-phone{border-width:4px;border-radius:22px;width:160px}.screens-group{gap:16px;padding-right:16px}.experience-audience{grid-template-columns:1fr;gap:28px;padding:34px 0}.experience-chat{grid-template-columns:1fr;gap:24px;margin-bottom:40px;padding:24px}.experience-chat h2{font-size:26px}.experience-chat>a{justify-self:start}.experience-product-image{min-height:0}.magnet-details{grid-template-columns:1fr;gap:28px;padding-bottom:40px}.magnet-order{padding:22px}.magnet-order a{margin-left:0}}@media (prefers-reduced-motion:reduce){.screens-track{animation:none}.screens-viewport{overflow-x:auto}}.project-card-ai .project-stage{color:#234b64;background:#e2ebf1}.ai-art{justify-content:center;align-items:center;height:100%;display:flex}.ai-art svg{width:58%;height:58%}.web-page-heading{padding:52px 0 40px}.web-page-heading h1{letter-spacing:-.065em;margin:0 0 24px;font-size:clamp(44px,5vw,72px);font-weight:500}.web-page-heading>p{color:#566773;max-width:700px;font-size:18px;line-height:1.65}.web-case{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(28px,4vw,52px);padding:0 0 48px;display:grid}.web-case-preview{background:#efe9dd;border:10px solid #efe9dd;border-radius:14px;display:block;position:relative;overflow:hidden}.web-case-preview img{width:100%;height:auto;display:block}.web-case-preview>span{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:24px;display:flex;position:absolute;bottom:20px;right:20px}.web-case h2{letter-spacing:-.05em;margin:0 0 18px;font-size:36px;font-weight:500}.web-case p{color:#566773;margin:0 0 24px;font-size:16px;line-height:1.7}.web-contact{border-top:1px solid #e4e9ec;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:30px 0 60px;display:flex}.web-contact p{letter-spacing:-.035em;margin:0;font-size:22px}.web-contact a{background:var(--ink);color:#fff;border-radius:8px;padding:14px 18px;font-size:13px}@media (min-width:1100px) and (max-width:1279px) and (orientation:landscape){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1280px) and (orientation:landscape){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.web-page-heading{padding:32px 0 24px}.web-case{grid-template-columns:1fr;gap:26px;padding-bottom:36px}.web-case h2{font-size:30px}.web-contact{padding-bottom:40px}}.header-projects{align-items:center;gap:5px;display:flex}.project-menu{position:relative}.project-menu summary{cursor:pointer;justify-content:center;align-items:center;width:22px;height:30px;font-size:15px;list-style:none;display:flex}.project-menu summary::-webkit-details-marker{display:none}.project-dropdown{z-index:20;background:#fff;border:1px solid #e3e8eb;border-radius:12px;flex-direction:column;gap:0;min-width:180px;padding:8px;display:flex;position:absolute;top:38px;left:-35px;box-shadow:0 16px 35px #09213a15}.project-dropdown a{border-radius:7px;padding:12px}.project-dropdown a:hover{background:#f0f3f5}.project-dropdown a:after{display:none}.project-subnav{background:#fff;border-bottom:1px solid #e6eaed;gap:8px;padding:14px 4.5vw;display:flex}.project-subnav a{color:#687681;border-radius:7px;padding:9px 15px;font-size:13px}.project-subnav a.active{color:var(--ink);background:#e9eff3}.project-subnav a:hover{color:var(--ink);background:#f1f4f6}.mobile-project-area{padding-left:24px!important}.article-prompt{background:#edf2f5;border-radius:12px;margin:30px 0;overflow:hidden}.article-prompt pre{font-family:var(--sans);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;padding:26px;font-size:15px;line-height:1.7}.article-prompt>div{border-top:1px solid #dce4e9;flex-wrap:wrap;align-items:center;gap:16px;padding:16px 26px;display:flex}.article-prompt button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:12px 16px;font-size:13px}.article-prompt [role=status]{color:#53616b;font-size:13px}@media (max-width:640px){.project-subnav{padding:10px 20px}.project-subnav a{padding:9px 12px;font-size:12px}}.web-article-page{background:#fff;padding:42px 4.5vw 72px}.web-article{max-width:1080px;margin:auto}.web-article h1{letter-spacing:-.045em;text-wrap:balance;max-width:950px;margin:0 0 24px;font-family:Georgia,serif;font-size:clamp(40px,5vw,70px);font-weight:400;line-height:1.1}.web-article-lead{color:#667681;max-width:850px;margin:0 0 36px;font-size:21px;line-height:1.6}.web-article-image{border:10px solid #eee9df;border-radius:12px;width:100%;height:auto;margin:0 0 40px;display:block}.web-article-body{max-width:740px;margin:auto}.web-article-body>p{color:#3c4c59;margin:0 0 24px;font-size:18px;line-height:1.8}.web-article-body h2{letter-spacing:-.04em;margin:42px 0 20px;font-size:29px;font-weight:500;line-height:1.25}@media (max-width:640px){.web-article-page{padding:30px 20px 45px}.web-article-lead{font-size:18px}.web-article-body>p{font-size:17px}.web-article-body h2{font-size:25px}.article-prompt pre{padding:20px}}.mobile-nav>div>a{display:block}.web-case h2{font-size:30px;line-height:1.2}@media (hover:hover) and (pointer:fine){.project-dropdown:before{content:"";height:16px;position:absolute;top:-16px;left:0;right:0}}.about-grid>*,.web-case>*,.experience-hero>*,.contact-content>*,.footer-main>*{min-width:0}.about-copy{max-width:740px}.about-grid img{border-radius:12px}.about-grid p{text-wrap:pretty}.web-case h2{text-wrap:pretty;font-size:clamp(26px,2.3vw,32px)}.web-case p{text-wrap:pretty;max-width:65ch}.web-case+.web-case{border-top:1px solid var(--line);padding-top:40px}@media (min-width:641px) and (max-width:1000px){.experience-hero{grid-template-columns:minmax(0,1fr) 180px;gap:32px}.experience-magnets .experience-hero{grid-template-columns:1fr}.experience-product-image{max-width:560px;min-height:0}.experience-chat{grid-template-columns:1fr;gap:24px}.experience-chat>a{justify-self:start}.contact-content{grid-template-columns:minmax(0,1fr) 210px;gap:32px}.footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-main>:first-child{grid-column:1/-1}}@media (max-width:980px){.about-grid,.web-case{grid-template-columns:1fr;gap:28px}.about-grid img{max-width:420px}.about-copy{max-width:740px}.about-copy .about-lead{font-size:24px;line-height:1.4}.web-case-preview{max-width:640px}.web-case p{max-width:70ch}.page-intro{padding:36px 0 24px}.page-intro h1{margin:12px 0 16px}}@media (max-width:820px){.main-nav{display:none}.site-header{height:64px}.header-actions{gap:16px}.detail-content,.detail-hero{grid-template-columns:1fr;gap:28px}.detail-side{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}}@media (max-width:640px){.about-grid{padding:28px 0 48px}.about-grid img{max-width:360px}.about-copy .about-lead{font-size:22px;line-height:1.4}.web-case h2{font-size:26px}.web-case+.web-case{padding-top:28px}}.home-photography{border-top:1px solid var(--line);padding:30px 0 48px}.home-photography h2{letter-spacing:-.03em;margin:0 0 14px;font-size:20px;font-weight:500}.home-photography p{color:#5c6871;max-width:740px;margin:0 0 16px;font-size:15px;line-height:1.75}.home-photography .home-photography-clients{color:var(--ink)}.home-photography .text-link{font-size:13px}.journal-archive-list{margin-top:38px}.journal-archive-entry{border-top:1px solid var(--line);grid-template-columns:165px minmax(0,1fr) 24px;align-items:baseline;gap:20px;padding:24px 0;display:grid}.journal-archive-entry time,.archive-article header time{color:#66717b;font-size:13px}.journal-archive-entry h2{letter-spacing:-.025em;margin:0;font-size:20px;font-weight:500;line-height:1.4}.journal-archive-entry:hover h2{color:var(--coral-text)}.journal-archive-entry:focus-visible{outline:2px solid var(--coral);outline-offset:5px}.archive-article-page{background:#fff;padding:55px 24px 90px}.archive-article{max-width:900px;margin:auto}.archive-article header{margin-bottom:38px}.archive-article header time{margin:8px 0 16px;display:block}.archive-article h1{font-family:var(--serif);letter-spacing:-.035em;text-wrap:balance;max-width:850px;margin:0;font-size:clamp(30px,4vw,48px);font-weight:400;line-height:1.15}.archive-article-body{color:#273540;font-size:17px;line-height:1.85}.archive-article-body p,.archive-article-body>ol,.archive-article-body>ul{max-width:720px;margin:0 auto 24px}.archive-article-body strong{font-weight:600}.archive-article-body h2{font-family:var(--serif);max-width:720px;margin:48px auto 24px;scroll-margin-top:90px;font-size:29px;font-weight:400;line-height:1.3}.archive-article-body a{text-underline-offset:3px;overflow-wrap:anywhere;text-decoration:underline}.archive-article-body figure{min-width:0;margin:28px 0}.archive-article-body img{border-radius:4px;width:100%;height:auto;display:block}.archive-article-body figcaption{color:#66717b;margin-top:8px;font-size:12px;line-height:1.55}.archive-article-body .archive-gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.archive-article-body .archive-gallery>figure{margin:0}.archive-article-body .archive-gallery:has(>figure:only-child){grid-template-columns:1fr}.archive-article-body video{width:100%;max-height:650px;margin:24px auto;display:block}.archive-article-body hr{border:0;border-top:1px solid var(--line);margin:32px 0}.archive-video{aspect-ratio:16/9;color:#fff;background:#092d44;margin:32px 0 12px}.archive-video iframe{border:0;width:100%;height:100%}.archive-video-placeholder{text-align:center;height:100%;position:relative;overflow:hidden}.archive-video-poster{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.archive-video-placeholder:after{content:"";pointer-events:none;background:linear-gradient(#09213a08 30%,#09213a45 65%,#09213ad9);position:absolute;inset:0}.archive-video-placeholder button{z-index:1;width:100%;height:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;inset:0}.archive-video-play{background:#fff;border-radius:50%;place-items:center;width:76px;height:76px;transition:transform .2s;display:grid;box-shadow:0 4px 24px #09213a35}.archive-video-placeholder button:hover .archive-video-play{transform:scale(1.08)}.archive-video-placeholder button:focus-visible{outline:3px solid var(--coral);outline-offset:-6px}.archive-video-placeholder p{z-index:2;color:#fff;pointer-events:none;margin:0;font-size:12px;line-height:1.5;position:absolute;bottom:22px;left:20px;right:20px}@media (max-width:640px){.journal-archive-entry{grid-template-columns:minmax(0,1fr) 22px;gap:8px 16px;padding:20px 0}.journal-archive-entry time{grid-column:1/-1}.journal-archive-entry h2{font-size:18px}.archive-article-page{padding:30px 20px 60px}.archive-article-body{font-size:16px}.archive-article-body .archive-gallery{gap:10px}.archive-article-body h2{font-size:25px}.archive-video-play{width:58px;height:58px}.archive-video-placeholder p{font-size:11px;bottom:12px;left:12px;right:12px}}.translation-notice{color:#66717b;font-family:var(--sans);max-width:720px;margin:18px 0 0;font-size:13px;line-height:1.65}.translation-notice a{color:inherit;text-underline-offset:3px;text-decoration:underline}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
