/*! 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,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y: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-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::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]){appearance:button}::file-selector-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}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@font-face{font-family:Amatic SC;font-style:normal;font-display:swap;font-weight:700;src:url(../assets/fonts/amatic-sc-700.woff2)format("woff2")}@font-face{font-family:Dream Avenue;font-style:normal;font-display:swap;font-weight:400;src:url(../assets/fonts/dream-avenue-regular.woff2)format("woff2")}:root{--ink:#1c2b35;--ink-soft:#293e4d;--blue:#4d7892;--blue-light:#7ca0b4;--paper:#d9d9d7;--paper-bright:#ececea;--line:#eff2f175;--white:#f7f6f2;--shadow:0 30px 80px #030c1340;--font-display:"Dream Avenue", DreamAvenue, Didot, "Bodoni 72", Georgia, serif;--font-body:"Menco Medium", Menco, "Trebuchet MS", Arial, sans-serif;--font-heading:"Brown Pro ExtraBold Condensed", "Brown Pro Extra Bold Condensed", "Arial Narrow", Impact, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%;scroll-padding-top:92px;overflow-x:clip}body{background:var(--ink);max-width:100%;color:var(--white);font-family:var(--font-body);margin:0;overflow-x:clip}main{width:100%;overflow-x:clip}body::selection{background:var(--blue-light);color:var(--ink)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}.site-header{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#162631c7;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:28px;width:min(100% - 40px,1240px);min-height:56px;padding:8px 10px 8px 18px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 16px 50px #020a0f33}.brand{background:var(--paper);width:38px;height:38px;color:var(--ink);letter-spacing:.08em;border-radius:50%;flex:none;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:14px;display:grid}.site-header nav{scrollbar-width:none;justify-content:flex-end;gap:clamp(12px,2vw,30px);width:100%;display:flex;overflow-x:auto}.site-header nav::-webkit-scrollbar{display:none}.site-header nav a{color:#ffffffc2;font-family:var(--font-heading);letter-spacing:.055em;text-transform:uppercase;flex:none;padding:10px 0;font-size:13px;font-weight:520;transition:color .18s;position:relative}.site-header nav a:after{content:"";background:var(--paper);transform-origin:100%;height:1px;transition:transform .22s;position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--white)}.site-header nav a:hover:after,.site-header nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.dark-section{position:relative;overflow:hidden}.hero{isolation:isolate;place-items:center;min-height:100svh;padding:110px clamp(28px,6vw,90px) 70px;display:grid}.hero:before,.hero:after{z-index:-1;aspect-ratio:1;content:"";border:1px solid #ffffff21;border-radius:50%;width:min(38vw,520px);position:absolute}.hero:before{top:15%;right:-18%}.hero:after{bottom:-25%;left:-10%}.hero-name{color:#ffffffb3;letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:13px;font-weight:600;position:absolute;top:108px;left:clamp(28px,6vw,90px)}.hero-title-wrap{z-index:2;text-align:center;justify-items:center;display:grid;position:relative}.hero-kicker{color:#ffffff9e;letter-spacing:.23em;text-transform:uppercase;margin:0 0 18px;font-size:12px}.hero h1,.project-intro h2,footer h2{font-family:var(--font-display);font-weight:400}.hero h1{letter-spacing:.012em;width:max-content;margin:0;font-size:clamp(78px,15vw,220px);line-height:.84;transform:translate(.018em)}.scroll-hint{color:#ffffffbd;letter-spacing:.12em;text-transform:uppercase;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:18px;width:max-content;margin:42px auto 0;padding:12px 18px;font-size:12px;transition:background .18s,color .18s;display:flex}.scroll-hint:hover,.scroll-hint:focus-visible{background:var(--paper);color:var(--ink)}.glow{z-index:-1;filter:blur(46px);opacity:.6;pointer-events:none;background:#5897ba8f;border-radius:50%;width:300px;height:300px;position:absolute}.glow-hero{background:radial-gradient(circle,#5d96b2 0,#365f7640 58%,#0000 78%);width:min(60vw,740px);height:min(48vw,540px);top:50%;left:50%;transform:translate(-50%,-50%)}.glow-left{top:30%;left:-180px}.glow-right{bottom:10%;right:-130px}.about-shell,.project,footer{padding:clamp(50px,9vw,130px) clamp(18px,5vw,72px)}.paper-panel{background:var(--paper);width:min(100%,1320px);box-shadow:var(--shadow);color:var(--ink);border-radius:clamp(30px,5vw,72px);margin:0 auto;padding:clamp(28px,5vw,76px)}.eyebrow{letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px;font-size:12px;font-weight:640}.about-shell{z-index:1;background:var(--ink);isolation:isolate;padding-top:clamp(68px,8vw,112px);padding-bottom:clamp(24px,3vw,44px);overflow:hidden}.about-panel{--about-panel-gutter:clamp(32px, 5vw, 72px);z-index:2;padding:var(--about-panel-gutter) var(--about-panel-gutter) clamp(46px, 5.4vw, 76px);background:#d2d2d2;border-radius:clamp(46px,6vw,86px) clamp(46px,6vw,86px) 14px 14px;position:relative;overflow:visible}.about-intro{z-index:2;background:var(--blue);min-height:250px;color:var(--white);border-radius:clamp(28px,3.6vw,48px);grid-template-columns:clamp(155px,14vw,190px) minmax(0,1fr);align-items:center;gap:clamp(26px,3.5vw,50px);padding:clamp(24px,3.2vw,44px);display:grid;position:relative;overflow:hidden}.about-portrait{aspect-ratio:.82;background:#d7d7d7;border-radius:34px;justify-content:center;align-items:flex-end;width:100%;height:auto;padding:16px 12px 0;display:flex;overflow:hidden}.about-portrait img{object-fit:contain;object-position:center bottom;width:100%;height:100%}.about-intro-copy{z-index:2;max-width:840px;padding-right:clamp(78px,11vw,150px);position:relative}.about-intro h2{font-family:var(--font-display);letter-spacing:-.025em;margin:0 0 18px;font-size:clamp(42px,5vw,76px);font-weight:400;line-height:.9}.about-intro p{color:#ffffffe6;max-width:850px;margin:0;font-size:clamp(13px,1.24vw,17px);line-height:1.48}.about-intro p+p{margin-top:5px}.about-bird{z-index:20;pointer-events:none;width:clamp(370px,34vw,485px);height:auto;position:absolute;top:clamp(18px,2.1vw,32px);right:clamp(-126px,-7.6vw,-82px)}.about-details{z-index:2;border-top:1px solid #1c2c38b8;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"contact languages soft""education.interests""technical technical technical";gap:clamp(38px,4.5vw,60px) clamp(30px,5vw,76px);margin-top:clamp(34px,4vw,54px);padding-top:clamp(28px,3.4vw,44px);display:grid;position:relative}.about-card{min-width:0}.contact-card{grid-area:contact}.language-card{grid-area:languages}.soft-skills-card{grid-area:soft}.education-card{grid-area:education}.interests-card{grid-area:interests}.technical-card{grid-area:technical}.about-card-icon{object-fit:contain;object-position:left bottom;width:52px;height:44px;margin-bottom:10px;display:block}.about-card h3,.photo-category h3{font-family:var(--font-heading);letter-spacing:.055em;text-transform:uppercase;margin:0 0 18px;font-size:clamp(24px,2.25vw,34px);font-weight:800;line-height:.9}.about-card p,.about-card a,.about-card dt,.about-card dd,.about-card li{color:#203541;font-size:clamp(13px,1.2vw,17px);line-height:1.48}.about-card a{overflow-wrap:anywhere;width:max-content;max-width:100%;display:block}.about-card a:hover,.about-card a:focus-visible{color:var(--blue)}.about-card dl{margin:0}.about-card dl div{grid-template-columns:minmax(72px,.58fr) 1.42fr;gap:8px;display:grid}.about-card dt{font-weight:700}.about-card dd{margin:0}.about-card dd:before{content:"-";margin-right:10px}.soft-skills-card ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px;margin:0;padding:0;list-style:none;display:grid}.education-entry{margin-bottom:24px}.education-entry p{margin:0}.education-entry strong,.education-entry span{display:block}.education-entry strong{font-weight:700}.education-copy{margin-top:7px!important}.interests-card{min-height:330px;padding-left:0;position:relative}.interests-heading-icon{width:68px}.interests-cloud{z-index:4;top:84px;right:calc(-1 * var(--about-panel-gutter) - 34px);width:clamp(650px,57vw,820px);max-width:none;height:auto;display:block;position:absolute}.technical-heading{margin-bottom:18px}.technical-heading .about-card-icon{width:62px;height:62px;margin-bottom:10px}.technical-heading h3{margin-bottom:0}.software-grid{grid-template-columns:repeat(5,minmax(84px,1fr));gap:clamp(12px,1.6vw,24px);width:min(100%,700px);display:grid}.software-skill{min-width:0}.software-icon{aspect-ratio:1;width:100%;max-width:96px;display:block}.software-stars{width:100%;max-width:105px;height:auto;margin-top:12px;display:block}@media (width>=769px) and (height<=850px){.about-shell{padding-top:52px;padding-bottom:32px}.about-panel{padding:clamp(42px,4.5vw,64px) clamp(42px,4.5vw,64px) 56px}.about-intro{min-height:218px;padding:22px 28px}.about-portrait{width:170px;height:auto}.about-intro h2{margin-bottom:12px;font-size:clamp(44px,4.3vw,62px)}.about-intro p{font-size:clamp(12px,1.05vw,14px);line-height:1.38}.about-details{gap:28px clamp(28px,4.5vw,64px);margin-top:26px;padding-top:22px}.about-card-icon{width:44px;height:38px;margin-bottom:7px}.about-card h3{margin-bottom:12px;font-size:clamp(22px,1.9vw,28px)}.about-card p,.about-card a,.about-card dt,.about-card dd,.about-card li{font-size:clamp(12px,1vw,14px);line-height:1.38}.education-entry{margin-bottom:16px}.interests-card{min-height:270px}.interests-cloud{top:68px;right:calc(-1 * var(--about-panel-gutter) - 30px);width:clamp(610px,54vw,760px)}.technical-heading{margin-bottom:14px}.technical-heading .about-card-icon{width:50px;height:50px;margin-bottom:5px}.software-grid{width:min(100%,680px)}.software-icon{max-width:78px}.software-stars{max-width:88px;margin-top:8px}}.web-project{z-index:3;background:var(--ink);isolation:isolate;min-height:100vh;padding:clamp(32px,4vw,58px) clamp(24px,6vw,92px) clamp(16px,1.6vw,24px);position:relative;overflow:visible}.web-project:before,.web-project:after,.web-glow-top{display:none}.web-earth{z-index:10;pointer-events:none;width:min(29vw,395px);height:auto;position:absolute;top:clamp(12px,2vw,28px);right:clamp(2px,.8vw,12px);transform:translateY(-50%)}.web-intro-layout{z-index:4;width:min(100%,1120px);margin:0 auto;position:relative}.web-title-block{grid-template-columns:clamp(420px,39vw,486px) minmax(175px,215px);align-items:center;gap:clamp(18px,2.2vw,30px);width:min(100% - clamp(20px,3.5vw,48px),860px);margin-left:clamp(20px,3.5vw,48px);display:grid;transform:translateY(clamp(-22px,-2vw,-12px))}.web-number-card{background:var(--blue);border-radius:12px;grid-template-columns:clamp(70px,7vw,92px) 1px minmax(0,1fr);align-items:center;gap:clamp(13px,1.4vw,19px);min-height:clamp(172px,15vw,194px);padding:clamp(18px,1.8vw,24px) clamp(22px,2.2vw,30px);display:grid;position:relative}.web-number{z-index:2;font-family:var(--font-display);letter-spacing:.018em;font-size:clamp(72px,7.4vw,102px);font-weight:400;line-height:.82;position:relative;top:auto;left:auto}.web-title-block h2{font-family:var(--font-display);letter-spacing:.018em;margin:0;font-size:clamp(76px,7.5vw,100px);font-weight:400;line-height:.78;transform:translateY(-2px)}.web-title-block h2 span{display:block}.web-title-block h2 span+span{margin-top:.14em}.web-title-divider{background:#eff2f19e;width:1px;height:clamp(132px,12vw,154px);display:block}.web-description-block{width:100%;margin:0}.web-description-rule{display:none}.web-description-block .eyebrow{color:var(--white);margin-bottom:8px;font-size:clamp(9px,.78vw,11px)}.web-intro-description{width:100%}.web-intro-description p{color:#ffffffed;margin:0 0 5px;font-size:clamp(10px,.86vw,12px);line-height:1.36}.web-intro-description>p:last-child{margin-bottom:0}.web-divider{background:#eff2f1b3;width:min(100%,1120px);height:1px;margin:clamp(32px,4vw,54px) auto clamp(30px,3.8vw,50px)}.web-styleguide{isolation:isolate;grid-template-columns:minmax(330px,.9fr) minmax(480px,1.5fr);grid-template-areas:"brand values""concept palette""components photos";align-items:start;gap:clamp(20px,2.4vw,30px) clamp(36px,4vw,54px);width:min(100%,1100px);margin:0 auto;display:grid;position:relative}.web-style-title{color:#d2d2d2;width:min(100%,1100px);font-family:var(--font-heading);letter-spacing:.035em;text-transform:uppercase;margin:0 auto clamp(18px,2vw,28px);font-size:clamp(32px,3.3vw,48px);font-weight:800;line-height:.9}.web-style-title span{color:var(--blue-light);font-family:var(--font-display);letter-spacing:.02em;text-transform:none;font-size:.86em;font-weight:400}.web-style-circle{z-index:-1;opacity:.82;pointer-events:none;width:clamp(210px,24vw,320px);height:auto;position:absolute;top:-54px;left:calc(50% - 50vw);transform:translate(-8%)}.web-brand-column{grid-area:brand}.web-logo-row{grid-template-columns:.78fr .78fr 1.14fr;gap:10px;display:grid}.web-logo-card,.web-type-card,.web-palette,.web-components{color:#1d1d1b;background:#d2d2d2}.web-styleguide p,.web-styleguide a,.web-styleguide button,.web-styleguide figcaption,.web-styleguide strong,.web-styleguide span{font-family:var(--font-body)}.web-logo-card{border-radius:12px;justify-content:center;align-items:center;min-height:130px;margin:0;padding:6px 15px 6px 8px;display:flex}.web-logo-card img{object-fit:contain;object-position:center;width:100%;height:114px}.web-type-card{border-radius:12px;min-height:130px;padding:7px 12px 6px}.web-type-card p{border-bottom:1px solid #1d1d1b59;margin:0;padding:7px 0}.web-type-card p:last-child{border-bottom:0}.web-type-card strong,.web-type-card span{font-size:11px;line-height:1.25;display:block}.web-type-card strong{color:#315927}.web-concept{grid-area:concept;align-self:center;width:94%;margin:0 auto;padding-left:8px}.web-concept h3{margin:0 0 10px;font-size:17px;font-weight:500}.web-concept p{color:#ffffffad;margin:0;font-size:14px;line-height:1.45}.web-values{grid-area:values;grid-template-columns:repeat(6,minmax(0,1fr));justify-self:stretch;gap:10px 12px;width:100%;display:grid}.web-values span{color:#1d1d1b;letter-spacing:.02em;text-align:center;text-transform:uppercase;background:#d2d2d2;border-radius:10px;grid-column:span 2;place-items:center;min-width:0;padding:10px 16px 8px;font-family:Amatic SC,Arial Narrow,Impact,sans-serif;font-size:clamp(20px,1.85vw,27px);font-weight:700;display:grid}.web-values span:nth-last-child(-n+2){grid-column:span 3}.web-palette{border-radius:12px;grid-area:palette;grid-template-columns:repeat(5,minmax(70px,1fr));justify-self:stretch;gap:clamp(10px,1.4vw,18px);width:100%;padding:12px 16px 10px;display:grid}.palette-item{text-align:center;min-width:0;margin:0}.palette-item img{aspect-ratio:1;object-fit:contain;width:68%;margin:0 auto 5px;display:block}.palette-item strong,.palette-item span{font-size:9px;line-height:1.25;display:block}.palette-item strong{font-weight:500}.web-components{border-radius:12px;grid-area:components;height:205px;min-height:205px;padding:14px 16px 13px}.component-icons{grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:12px;height:48px;display:grid}.component-icons img{object-fit:contain;width:32px;height:34px;margin:0 auto}.component-icons img:last-child,.component-icons .component-welfare-icon{width:36px;height:36px}.component-rule{background:#1d1d1b73;height:1px;margin:6px 0 10px}.component-states{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.component-states>div{justify-items:center;gap:8px;font-size:12px;display:grid}.component-states a{color:#315927}.component-states button{color:#1d1d1b;background:0 0;border:1px solid #8d5635;border-radius:999px;min-width:84px;padding:6px 14px;font-family:inherit}.component-states .state-hover a{border-bottom:1px solid #315927}.component-states .state-hover button{background:#8d5635}.component-states .state-active a{color:#1d1d1b}.component-states .state-active button{background:#8d5635;border-color:#1d1d1b}.web-photo-row{grid-area:photos;grid-template-columns:repeat(3,minmax(0,1fr));justify-self:stretch;align-items:stretch;gap:4px;width:100%;height:205px;min-height:205px;display:grid}.web-photo-row figure{background:0 0;height:205px;margin:0;padding:0;overflow:visible}.web-photo-row img{object-fit:contain;object-position:center bottom;width:100%;height:100%;display:block}.web-photo-row figure:first-child img,.web-photo-row figure:last-child img{object-position:center bottom;width:84%;margin-inline:auto}.web-process{z-index:2;width:min(100%,1120px);margin:0 auto;position:relative}.process-pen-divider{grid-template-columns:clamp(38px,4.9vw,64px) clamp(4px,.45vw,6px) clamp(168px,18vw,224px) clamp(4px,.45vw,6px) minmax(0,1fr);align-items:start;width:100%;min-height:clamp(188px,19vw,224px);margin-top:clamp(54px,7vw,90px);display:grid}.process-pen-line{z-index:1;background:#eff2f1b8;height:1px;margin-top:clamp(62px,6.6vw,82px);position:relative}.process-pen-line:first-child{width:calc(100% + clamp(18px,2.2vw,28px))}.process-pen-line:last-child{width:calc(100% + clamp(18px,2.2vw,28px));margin-left:clamp(-28px,-2.2vw,-18px)}.process-pen-gap{min-width:0}.process-pen{z-index:2;pointer-events:none;width:100%;height:auto;display:block;transform:translateY(-38px)}.process-sketches,.process-wireframe,.process-screen{isolation:isolate;position:relative}.process-sketches{padding-top:0}.process-heading{z-index:4;position:relative}.process-heading h3{color:#d2d2d2;font-family:var(--font-heading);letter-spacing:.015em;margin:0;font-size:clamp(58px,6.3vw,88px);font-weight:800;line-height:.86}.process-heading-left{min-height:108px;margin-top:clamp(-116px,-9vw,-92px);padding:0 0 0 clamp(184px,20vw,252px)}.process-circle{z-index:-1;opacity:.82;pointer-events:none;width:clamp(220px,26vw,360px);height:auto;position:absolute}.process-circle-right{top:120px;right:calc(50% - 50vw);transform:translate(8%)scaleX(-1)}.process-circle-left{left:calc(50% - 50vw);transform:translate(-8%)}.sketch-layout{z-index:2;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr) minmax(185px,.64fr);align-items:center;gap:clamp(22px,3vw,42px);min-height:500px;padding:24px 12px 16px;display:grid;position:relative}.sketch-pair{--sketch-height:clamp(330px, 34vw, 392px);width:100%;height:var(--sketch-height);margin:0;display:block;position:relative}.sketch-pair-scribble{transform:translate(clamp(10px,1.5vw,18px))}.sketch-pair>img{object-fit:contain;object-position:center;width:auto;min-width:0;display:block}.sketch-pair .sketch-desktop{height:100%;margin:0 auto}.sketch-pair .sketch-mobile{z-index:3;height:68%;position:absolute;bottom:-4%;left:-1%}.sketch-pair-scribble .sketch-desktop{background:#f7f7f3;border:2px solid #111b22;border-radius:14px;box-shadow:0 2px #111b22}.sketch-pair-scribble .sketch-mobile{box-shadow:none;background:0 0}.responsive-note{color:#f7f6f2e6;align-self:center}.responsive-note h4{margin:0 0 22px;font-size:clamp(15px,1.35vw,19px);font-weight:700}.responsive-note p{margin:0;font-size:clamp(13px,1.15vw,16px);line-height:1.58}.process-divider{width:100%;margin-top:clamp(48px,6vw,76px);margin-bottom:0}.process-wireframe{padding-top:clamp(52px,6vw,84px)}.process-heading-centered{text-align:center;transform:translateY(24px)}.process-circle-wireframe{top:250px}.wireframe-layout{z-index:2;grid-template-columns:minmax(210px,.82fr) minmax(340px,1.35fr) minmax(210px,.82fr);align-items:stretch;gap:clamp(32px,4.5vw,66px);margin-top:clamp(42px,5vw,64px);display:grid;position:relative}.wireframe-page{z-index:3;align-self:center;width:100%;margin:0;position:relative}.wireframe-page img{width:100%;height:auto;display:block;box-shadow:0 12px 30px #02090e33}.wireframe-notes{z-index:10;min-height:100%;position:relative}.wireframe-note{z-index:4;background:var(--blue);width:100%;min-height:132px;color:var(--white);border-radius:14px;padding:18px 20px;position:absolute}.wireframe-notes-left .wireframe-note:first-child{top:-13%}.wireframe-notes-left .wireframe-note:last-child{top:39%}.wireframe-notes-right .wireframe-note:first-child{top:10%}.wireframe-notes-right .wireframe-note:last-child{bottom:11%;right:0}.wireframe-notes-left{transform:translate(-14px)}.wireframe-notes-right{transform:translate(14px)}.wireframe-note h4,.wireframe-note p{margin:0}.wireframe-note h4{margin-bottom:4px;font-size:14px;font-weight:700}.wireframe-note p{font-size:13px;line-height:1.45}.wireframe-arrow{z-index:20;pointer-events:none;max-width:none;height:auto;position:absolute;overflow:visible}.wireframe-notes-left .wireframe-arrow{width:clamp(76px,7.5vw,98px);top:32%;right:calc(-1*clamp(76px,7.5vw,98px) - 10px)}.wireframe-notes-right .wireframe-arrow{width:clamp(72px,7vw,92px);top:28%;left:calc(-1*clamp(72px,7vw,92px) - 10px)}.arrow-action{transform:translateY(4px);top:31%!important}.arrow-logo{transform:translateY(-4px)}.arrow-footer{top:20%!important}.wireframe-down-arrow{width:50px;height:auto;margin:18px auto -8px;display:block;overflow:visible}.process-screen{padding-top:clamp(22px,3vw,38px)}.screen-showcase{z-index:2;justify-content:center;align-items:center;min-height:clamp(470px,48vw,550px);display:flex;position:relative}.screen-glow{z-index:1;filter:blur(18px);background:radial-gradient(#5b97b7e0 0%,#4c7f9d94 42%,#4c7f9d29 66%,#0000 78%);border-radius:50%;width:72%;height:46%;position:absolute;top:21%;left:50%;transform:translate(-50%,-50%)}.screen-page-frame{z-index:4;width:min(36%,400px);display:block;position:relative;overflow:visible}.screen-page{width:100%;height:auto;display:block}.screen-device{z-index:2;border-radius:clamp(18px,2.1vw,30px);height:clamp(220px,25vw,280px);position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.screen-device img{width:auto;max-width:none;height:auto;display:block}.screen-laptop{width:min(32%,360px);left:15.5%}.screen-laptop img{width:122%;transform:translate(-15%,-18%)}.screen-phone{width:min(20%,220px);right:19%}.screen-phone img{width:112%;transform:translate(-4%,-6%)}.process-heading-screen{text-align:center;margin-top:-40px}.brand-panel{isolation:isolate;position:relative;overflow:visible}.section-orb{z-index:-1;opacity:.78;pointer-events:none;width:clamp(250px,27vw,420px);height:auto;position:absolute}.section-orb-left{left:clamp(-185px,-11vw,-115px)}.section-orb-right{right:clamp(-185px,-11vw,-115px);transform:scaleX(-1)}.light-orb-layer{z-index:0;border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.light-orb{opacity:1;width:clamp(250px,27vw,420px);height:auto;position:absolute}.light-orb-left{left:clamp(-105px,-6.75vw,-63px)}.light-orb-right{right:clamp(-105px,-6.75vw,-63px);transform:scaleX(-1)}.about-orb-left{top:40%}.about-orb-right{top:77%}.brand-orb-top-left{top:38%}.brand-orb-top-right{top:72%}.brand-intro-layout{align-items:center;min-height:clamp(250px,25vw,310px);padding-right:clamp(230px,25vw,330px);display:flex;position:relative}.brand-title-block{z-index:2;grid-template-columns:clamp(370px,35vw,430px) minmax(170px,210px);align-items:center;gap:clamp(24px,2.7vw,36px);width:min(100%,790px);display:grid;position:relative;transform:translateY(calc(clamp(-30px,-2.2vw,-18px) - 22px))}.brand-number-card{background:var(--blue);min-height:clamp(178px,16vw,198px);color:var(--white);border-radius:12px;grid-template-columns:clamp(88px,8.2vw,108px) 1px minmax(0,1fr);align-items:center;gap:clamp(16px,1.7vw,24px);padding:clamp(22px,2.2vw,30px) clamp(26px,2.5vw,36px);display:grid}.brand-number{font-family:var(--font-display);letter-spacing:.018em;font-size:clamp(76px,7.8vw,106px);font-weight:400;line-height:.82}.brand-title-divider{background:#eff2f19e;width:1px;height:clamp(136px,12vw,158px);display:block}.brand-description-block .eyebrow{margin-bottom:9px;font-size:clamp(9px,.78vw,11px);color:var(--white)!important}.brand-description-block>p:not(.eyebrow){color:#ffffffed;margin:0 0 8px;font-size:clamp(10px,.86vw,12px);line-height:1.4}.brand-description-block .status-note{color:#ffffffb8!important;margin-bottom:0!important;font-size:9px!important}.brand-title-block h2{color:var(--ink);font-family:var(--font-display);letter-spacing:.025em;margin:0;font-size:clamp(74px,7.4vw,98px);font-weight:400;line-height:.78}.brand-title-block h2 span{display:block}.brand-title-block h2 span+span{margin-top:.08em}.brand-rocket{z-index:1;pointer-events:none;width:min(35vw,380px);max-width:none;height:auto;position:absolute;top:50%;right:clamp(-96px,-6.2vw,-58px);transform:translateY(calc(-48% - -1*clamp(-30px,-2.2vw,-18px) - 22px))}.brand-projects{z-index:2;border-top:1px solid #1c2c3866;position:relative}.brand-case{padding-top:clamp(36px,5vw,66px)}.brand-case+.brand-case{border-top:1px solid #1c2c3866;margin-top:clamp(56px,8vw,108px);padding-top:clamp(48px,6vw,82px)}.brand-case-dark{isolation:isolate;width:min(100%,1320px);margin:0 auto;padding:clamp(58px,7vw,96px) clamp(28px,5vw,76px) clamp(72px,8vw,110px);position:relative}.releaf-orb-left{top:18%}.releaf-orb-right{bottom:5%}.brand-case-dark .brand-case-header .eyebrow{color:var(--blue-light)}.brand-case-dark .brand-case-header h3{color:var(--paper)}.brand-panel-foodwise{border-radius:0 0 clamp(30px,5vw,72px) clamp(30px,5vw,72px);margin-top:0;overflow:hidden}.foodwise-orb-left{top:8%}.foodwise-orb-right{bottom:4%}.brand-case-foodwise{z-index:2;padding-top:0;position:relative}.foodwise-placeholder{background:linear-gradient(135deg,#4d789214,#0000 55%),#f7f6f257;border:1px solid #1c2c3833;border-radius:18px;place-items:center;min-height:clamp(340px,42vw,560px);display:grid}.foodwise-placeholder p{color:#1c2c387a;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:clamp(13px,1.2vw,17px)}.brand-case-header{z-index:2;margin-bottom:clamp(24px,3vw,38px);position:relative}.brand-case-header .eyebrow{color:var(--blue);margin-bottom:8px}.brand-case-header h3{color:var(--ink);font-family:var(--font-display);letter-spacing:.01em;margin:0;font-size:clamp(54px,7vw,96px);font-weight:400;line-height:.9}.brand-showcase{z-index:2;position:relative;overflow:visible}.brand-showcase-virtual,.brand-showcase-releaf{aspect-ratio:2}.releaf-copy,.virtual-copy{display:none}.brand-asset{min-width:0;margin:0;position:absolute}.brand-asset img{width:100%;height:auto;display:block}.brand-showcase-virtual .brand-asset-style{z-index:2;width:28%;bottom:0;left:auto;right:0}.brand-showcase-virtual .brand-asset-letterhead{z-index:1;width:22%;bottom:0;left:36%;right:auto}.brand-showcase-virtual .brand-asset-card{z-index:3;width:28%;bottom:0;left:0;right:auto}.brand-showcase-releaf .brand-asset-style{z-index:4;width:28%;top:auto;bottom:0;right:0}.brand-showcase-releaf .brand-asset-letterhead{z-index:1;width:20.5%;top:0;left:10%}.brand-showcase-releaf .brand-asset-card{z-index:2;width:26%;top:0;left:29%}.brand-showcase-releaf .brand-asset-mockup{z-index:5;width:38%;bottom:0;left:26%}.brand-showcase-releaf .brand-asset-envelope{z-index:2;width:25%;top:34%;left:30%}.brand-showcase-releaf .brand-asset-envelope-copy{z-index:2;width:25%;top:57.5%;left:8%}.project{min-height:100vh}.project-intro{z-index:2;grid-template-columns:240px 1fr;align-items:end;gap:clamp(24px,5vw,90px);width:min(100%,1200px);margin:0 auto clamp(56px,8vw,110px);display:grid;position:relative}.project-number{color:var(--paper);letter-spacing:-.09em;justify-content:center;align-self:stretch;align-items:flex-start;font-family:Didot,"Bodoni 72",Georgia,serif;font-size:clamp(100px,14vw,210px);line-height:.72;display:flex}.project-copy{grid-template-columns:minmax(0,1fr) minmax(240px,340px);align-items:end;gap:clamp(24px,5vw,72px);display:grid}.project-copy .eyebrow{color:var(--blue-light);grid-column:1/-1;margin-bottom:-4px}.project-intro h2{letter-spacing:-.065em;margin:0;font-size:clamp(64px,10vw,152px);line-height:.82}.project-description{border-top:1px solid var(--line);padding:20px 0 4px}.project-description p{color:#ffffffb3;margin:0 0 12px;font-size:14px;line-height:1.7}.status-note{letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--blue-light)!important;font-size:11px!important}.project-canvas{background:#ffffff09;border:1px solid #ffffff1f;border-radius:42px;width:min(100%,1160px);margin:0 auto;padding:clamp(28px,5vw,64px)}.canvas-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;margin-bottom:34px;padding-bottom:24px;display:flex}.canvas-header p{color:#ffffff8c;margin:0;font-size:12px}.canvas-header .eyebrow{color:var(--white)}.web-grid,.brand-layout{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.placeholder{background:linear-gradient(135deg, #ffffff29, transparent), var(--blue);border:1px solid #fff3;border-radius:26px;align-items:flex-end;min-height:170px;padding:18px;display:flex;position:relative;overflow:hidden}.placeholder:after{content:"";opacity:.32;border:1px solid;border-radius:50%;width:44px;height:44px;position:absolute;top:24px;right:24px}.placeholder span{z-index:1;letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:600;position:relative}.placeholder-tall{min-height:290px}.screen-block{grid-column:1/-1;padding-top:24px}.screen-block>p{margin:0 0 26px;font-family:Georgia,serif;font-size:clamp(36px,7vw,78px)}.screen-preview{aspect-ratio:16/8;background:var(--paper);border-radius:22px;flex-direction:column;gap:16px;padding:22px;display:flex;box-shadow:0 24px 70px #0000003b}.screen-nav{background:var(--ink);border-radius:8px;height:9%}.screen-hero{background:linear-gradient(90deg, #fff6, transparent), var(--blue);border-radius:12px;flex:1}.screen-columns{grid-template-columns:repeat(3,1fr);gap:14px;height:28%;display:grid}.screen-columns span{border:1px solid #1c2c3833;border-radius:10px}.light-project{padding-inline:clamp(18px,5vw,72px)}.light-project .paper-panel{padding-top:clamp(62px,9vw,120px)}#brand-design{padding-top:clamp(18px,5vw,72px)}#brand-design .brand-panel{padding-top:clamp(46px,5vw,70px)}#brand-design>.brand-panel:first-child{border-radius:clamp(30px,5vw,72px) clamp(30px,5vw,72px) 0 0}.light-project .project-intro{width:100%}.light-project .project-number,.light-project .project-copy,.light-project .project-intro h2{color:var(--ink)}.light-project .project-copy .eyebrow,.light-project .status-note{color:var(--blue)!important}.light-project .project-description{border-color:#1c2c3847}.light-project .project-description p{color:#1c2c38ad}.brand-layout{grid-template-columns:repeat(6,1fr)}.brand-layout .placeholder{color:var(--white);grid-column:span 3}.brand-layout .placeholder:nth-child(3),.brand-layout .placeholder:nth-child(4),.brand-layout .placeholder:nth-child(5){grid-column:span 2}#editorial-design{isolation:isolate;padding-top:clamp(48px,7vw,96px)}.editorial-orb-left{top:31%}.editorial-orb-right{top:69%}.editorial-intro-layout{z-index:3;position:relative}.editorial-title-block{grid-template-columns:clamp(420px,39vw,486px) minmax(270px,340px);width:min(100% - clamp(20px,3.5vw,48px),1040px)}.editorial-title-block h2{font-size:clamp(68px,6.4vw,92px)}.editorial-note{z-index:1;pointer-events:none;width:min(38vw,470px);height:auto;position:absolute;top:50%;right:clamp(-105px,-7vw,-68px);transform:translateY(-50%)}.editorial-divider{background:#eff2f1b3;width:min(100%,1120px);height:1px;margin:clamp(34px,4.5vw,62px) auto clamp(54px,7vw,96px)}.editorial-stage{z-index:2;width:min(100%,1240px);margin:0 auto;position:relative}.editorial-cover-composition{grid-template-columns:minmax(650px,845px) minmax(220px,280px);justify-content:center;align-items:center;gap:clamp(18px,2.4vw,36px);width:min(100%,1160px);margin-inline:auto;display:grid}.editorial-magazine-wrap{width:100%;min-width:0;position:relative}.editorial-magazine-toggle{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.editorial-magazine{cursor:pointer;-webkit-tap-highlight-color:transparent;display:block}.magazine-book{aspect-ratio:2978/2105;perspective:2200px;width:100%;transform-style:preserve-3d;display:block;position:relative}.magazine-page,.magazine-turning-page{width:50%;height:100%;position:absolute;top:0;left:50%}.magazine-page{background:#fff;overflow:hidden;box-shadow:18px 10px 30px #0000003d}.magazine-page-left-static{z-index:4;opacity:0;visibility:hidden;transition:opacity 80ms linear,visibility 0s linear 80ms;left:0}.magazine-page-right{z-index:1;opacity:0;visibility:hidden;transition:opacity .18s 2.12s,visibility 0s linear 2.3s}.magazine-turning-page{z-index:3;transform-origin:0;transform-style:preserve-3d;will-change:transform;transition:transform 2.3s cubic-bezier(.2,.72,.16,1),box-shadow 2.3s;transform:rotateY(.01deg);box-shadow:18px 8px 22px #0000004d}.magazine-face{backface-visibility:hidden;background:#fff;display:block;position:absolute;inset:0;overflow:hidden}.magazine-cover-front{transform:rotateY(0)translateZ(.5px)}.magazine-page-left{transform:rotateY(180deg)translateZ(.5px)}.magazine-page img,.magazine-face img{object-fit:cover;width:100%;height:100%;display:block}.magazine-spine{z-index:5;opacity:0;background:linear-gradient(90deg,#0000003d,#fff3,#0003);width:2px;transition:opacity .5s 1.08s;position:absolute;top:0;bottom:0;left:50%;transform:translate(-1px)}.editorial-magazine-toggle:checked+.editorial-magazine .magazine-turning-page{transform:rotateY(-180deg);box-shadow:-12px 8px 20px #00000042}.editorial-magazine-toggle:checked+.editorial-magazine .magazine-page-right,.editorial-magazine-toggle:checked+.editorial-magazine .magazine-page-left-static{opacity:1;visibility:visible}.editorial-magazine-toggle:checked+.editorial-magazine .magazine-page-right{transition-delay:0s}.editorial-magazine-toggle:checked+.editorial-magazine .magazine-page-left-static{transition:opacity .18s 2.12s,visibility 0s linear 2.12s}.editorial-magazine-toggle:checked+.editorial-magazine .magazine-spine{opacity:1}.editorial-magazine-toggle:focus-visible+.editorial-magazine{outline-offset:10px;border-radius:2px;outline:2px solid #eff2f1eb}.editorial-magazine-hint{color:#ffffff9e;letter-spacing:.14em;text-align:center;text-transform:uppercase;min-height:20px;margin-top:16px;font-size:11px;font-weight:600;line-height:1.5;display:block}.magazine-hint-open,.editorial-magazine-toggle:checked+.editorial-magazine .magazine-hint-closed{display:none}.editorial-magazine-toggle:checked+.editorial-magazine .magazine-hint-open{display:inline}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.editorial-concept{align-self:center}.editorial-concept h3{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 18px;font-size:clamp(20px,2.2vw,30px);font-weight:500}.editorial-concept p{color:#ffffffb8;margin:0 0 14px;font-size:clamp(12px,1.25vw,15px);line-height:1.62}.photo-panel{isolation:isolate;position:relative;overflow:hidden}.photo-intro-layout{z-index:2;min-height:clamp(270px,26vw,330px);margin-bottom:clamp(42px,6vw,82px);padding-right:0;position:relative}.photo-title-block{width:min(100%,880px)}.photo-orb-left{top:14%}.photo-orb-right{top:54%}.photo-category{z-index:2;background:var(--ink);width:min(84%,1040px);color:var(--white);border-radius:0 40px 40px 0;margin:0 0 0 calc(-1*clamp(28px,5vw,76px));padding:clamp(32px,5vw,68px);position:relative}.photo-category-offset{border-radius:40px 0 0 40px;margin-top:72px;margin-left:auto;margin-right:calc(-1*clamp(28px,5vw,76px))}.photo-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.25vw,22px);display:grid}.photo-row-landscape{grid-template-columns:repeat(3,minmax(0,1fr));width:calc(75% - 6px);margin-left:auto}.photo-frame{aspect-ratio:2/3;background:#d2d2d2;margin:0;overflow:hidden;box-shadow:7px 9px 15px #00000061}.photo-frame img{object-fit:cover;width:100%;height:100%;display:block}.photo-row .photo-frame:nth-child(2) img{object-position:62% center}.photo-row .photo-frame:nth-child(4) img{object-position:56% center}.photo-category-offset h3{text-align:right}.photo-row .placeholder{background:linear-gradient(to top, #071722a6, transparent), linear-gradient(145deg, var(--blue), #b7c4c8);min-height:260px}.photo-row .placeholder:nth-child(2n){background:linear-gradient(to top, #071722a6, transparent), linear-gradient(145deg, #9eb6c0, var(--ink-soft))}footer{flex-direction:column;justify-content:center;min-height:70vh;display:flex}footer h2{letter-spacing:-.06em;max-width:920px;margin:0 0 42px;font-size:clamp(58px,10vw,144px);line-height:.9}footer>a{color:#ffffffb8;border-bottom:1px solid #ffffff80;width:max-content;padding-bottom:8px;font-size:clamp(16px,2.4vw,28px)}.footer-bottom{color:#ffffff80;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #ffffff38;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin-top:14vh;padding-top:20px;font-size:12px;display:grid}.footer-bottom>a:last-child{justify-self:end}.font-credit{letter-spacing:.06em;text-align:center;margin:0;font-size:9px}.font-credit a{text-underline-offset:.22em;text-decoration:underline}@media (width<=768px){.site-header{align-items:flex-start}.site-header nav{justify-content:flex-start}.project-intro,.project-copy{grid-template-columns:1fr}.about-intro{grid-template-columns:150px 1fr}.about-intro-copy{padding-right:82px}.about-details{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"contact languages""soft education""interests interests""technical technical"}.project-number{justify-content:flex-start;min-height:120px}.project-copy{gap:28px}.project-copy .eyebrow{margin-bottom:-8px}.project-intro h2{font-size:clamp(66px,16vw,130px)}.editorial-cover-composition{grid-template-columns:minmax(220px,1fr);width:min(100%,820px)}.editorial-title-block{grid-template-columns:minmax(390px,440px) minmax(230px,280px)}.editorial-note{width:min(38vw,330px);right:-84px}.editorial-concept{grid-column:1/-1;width:min(100%,560px);margin:22px auto 0}.photo-row{grid-template-columns:repeat(2,1fr)}.photo-row-landscape{grid-template-columns:repeat(2,1fr);width:100%}.web-project{padding-top:92px}.web-earth{width:min(40vw,340px);top:-132px;right:4px;transform:none}.web-intro-layout{width:min(100%,850px)}.web-title-block{grid-template-columns:minmax(390px,440px) minmax(150px,185px);gap:20px;width:min(100% - 18px,760px);margin-left:24px;transform:translateY(-18px)}.web-title-block.editorial-title-block{grid-template-columns:minmax(390px,440px) minmax(230px,280px);width:min(100% - 18px,820px)}.web-number-card{grid-template-columns:72px 1px minmax(0,1fr);min-height:184px}.web-title-block h2{font-size:clamp(60px,8vw,72px)}.web-styleguide{grid-template-columns:1fr;grid-template-areas:"brand""concept""values""palette""components""photos"}.web-style-circle{top:-36px;left:calc(50% - 50vw);transform:translate(-8%)}.web-brand-column{display:block}.web-concept{width:100%;margin-top:0}}@media (width<=620px){html{scroll-padding-top:78px}.site-header{gap:14px;width:calc(100% - 20px);min-height:50px;padding:6px 8px 6px 12px;top:10px}.brand{width:36px;height:36px}.site-header nav a{font-size:10px}.hero{min-height:88svh}.hero-name{top:92px}.hero h1{font-size:clamp(68px,25vw,118px)}.paper-panel{border-radius:28px}.web-project{padding:112px 20px 108px}.web-earth{width:min(62vw,250px);top:-82px;right:10px;transform:none}.web-title-block{grid-template-columns:1fr;gap:18px;width:100%;margin-left:0;transform:none}.editorial-note{width:min(86vw,420px);margin:-30px -42px 0 auto;display:block;position:relative;top:auto;right:auto;transform:none}.web-number-card{grid-template-columns:62px 1px minmax(0,1fr);gap:12px;min-height:188px;padding:18px}.web-number{font-size:clamp(58px,18vw,78px);top:auto;left:auto}.web-title-block h2{grid-row:1;font-size:clamp(52px,16vw,72px);transform:none}.web-description-block{margin:0}.web-description-block .eyebrow{margin-bottom:10px;font-size:10px}.web-intro-description p{margin-bottom:9px;font-size:10.5px;line-height:1.4}.web-brand-column{display:block}.web-logo-row{grid-template-columns:repeat(2,1fr)}.web-type-card{grid-column:1/-1}.web-concept{margin-top:30px}.web-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.web-values span{grid-column:auto;padding-inline:12px}.web-values span:nth-last-child(-n+2){grid-column:auto}.web-values span:last-child{grid-column:1/-1}.web-palette{grid-template-columns:repeat(2,1fr);gap:18px}.palette-item:last-child{grid-column:1/-1;width:50%;margin:0 auto}.web-components{padding-inline:12px}.component-icons{gap:6px}.component-icons img{width:30px;height:34px}.component-icons img:last-child{width:36px;height:36px}.component-states{gap:4px}.component-states button{min-width:72px;padding-inline:12px}.web-photo-row{gap:10px;min-height:150px}.web-photo-row figure{height:150px}.about-intro{border-radius:22px;grid-template-columns:1fr;padding:28px}.about-portrait{width:150px;height:205px}.about-bird{width:270px;top:-2px;right:-68px}.about-intro-copy{padding-right:0}.about-details{grid-template-columns:1fr;grid-template-areas:"contact""languages""soft""education""interests""technical";row-gap:48px}.interests-card{min-height:300px;padding-left:0}.interests-cloud{width:calc(100% + 36px);margin-top:4px;position:relative;top:auto;right:auto}.software-grid{grid-template-columns:repeat(3,minmax(70px,1fr))}.project-intro{margin-bottom:54px}.project-description{padding-top:16px}.web-grid,.brand-layout{grid-template-columns:1fr}.brand-layout .placeholder{grid-column:auto!important}.canvas-header{flex-direction:column}.screen-preview{aspect-ratio:4/5}.screen-columns{grid-template-columns:1fr}.photo-category,.photo-category-offset{border-radius:0;width:auto;margin-left:calc(-1*clamp(28px,5vw,76px));margin-right:calc(-1*clamp(28px,5vw,76px))}.photo-row{grid-template-columns:1fr}.footer-bottom{grid-template-columns:1fr auto;align-items:flex-start}.font-credit{text-align:left;grid-area:2/1/auto/-1}.footer-bottom>a:last-child{grid-area:1/2}}@media (width<=768px){.brand-intro-layout{min-height:260px;padding-right:180px}.photo-intro-layout{padding-right:0}.brand-title-block{grid-template-columns:minmax(335px,385px) minmax(145px,175px);gap:22px}.brand-number-card{grid-template-columns:72px 1px minmax(0,1fr);min-height:176px}.brand-title-divider{height:138px}.brand-title-block h2{font-size:clamp(62px,8.2vw,76px)}.brand-rocket{width:250px;right:-58px}.brand-showcase-virtual .brand-asset-card{width:29%}.brand-showcase-releaf .brand-asset-card{width:25%}.process-pen-divider{grid-template-columns:40px 6px 174px 6px minmax(0,1fr)}.process-heading-left{margin-top:-96px;padding-left:194px}.sketch-layout{grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}.responsive-note{text-align:center;grid-column:1/-1;width:min(100%,620px);margin:18px auto 0}.wireframe-layout{grid-template-columns:minmax(140px,.75fr) minmax(290px,1.4fr) minmax(140px,.75fr);gap:28px}.wireframe-note{min-height:118px;padding:14px}.wireframe-note p{font-size:11px}.wireframe-arrow{width:76px}.wireframe-notes-left .wireframe-arrow{right:-86px}.wireframe-notes-right .wireframe-arrow{left:-82px}.screen-showcase{min-height:470px}}@media (width<=620px){.brand-intro-layout{flex-direction:column;align-items:stretch;gap:18px;min-height:0;padding-right:0;display:flex}.brand-title-block{grid-template-columns:1fr;gap:26px;transform:none}.brand-number-card{grid-template-columns:72px 1px minmax(0,1fr);min-height:176px}.brand-title-block h2{font-size:clamp(66px,22vw,92px)}.brand-rocket{width:min(68vw,240px);margin:-54px -38px 0 auto;position:relative;top:auto;right:auto;transform:none}.brand-showcase-virtual,.brand-showcase-releaf{aspect-ratio:auto;grid-template-columns:1fr;gap:26px;min-height:0;display:grid}.virtual-copy,.releaf-copy{width:min(100%,420px);margin-inline:auto;display:block;position:relative;inset:auto}.brand-showcase-virtual .brand-asset-style,.brand-showcase-virtual .brand-asset-letterhead,.brand-showcase-virtual .brand-asset-card,.brand-showcase-releaf .brand-asset-style,.brand-showcase-releaf .brand-asset-letterhead,.brand-showcase-releaf .brand-asset-card,.brand-showcase-releaf .brand-asset-mockup,.brand-showcase-releaf .brand-asset-envelope{width:min(100%,420px);margin-inline:auto;position:relative;inset:auto}.brand-showcase-releaf .brand-asset-envelope-copy{display:none}.process-heading h3{font-size:clamp(44px,13vw,66px)}.process-heading-left{min-height:90px;margin-top:-64px;padding:0 0 0 92px}.process-pen-divider{grid-template-columns:23px 4px 104px 4px minmax(0,1fr);min-height:134px}.process-pen-line{margin-top:40px}.process-circle{width:230px}.process-circle-right{top:250px;right:calc(50% - 50vw);transform:translate(8%)scaleX(-1)}.sketch-layout{grid-template-columns:1fr;gap:46px;min-height:0;padding-inline:0}.sketch-pair{--sketch-height:clamp(280px, 82vw, 350px);width:min(100%,340px);margin:0 auto}.responsive-note{text-align:left;margin-top:0}.responsive-note h4{margin-bottom:12px}.process-divider{margin-top:60px}.process-heading-centered{text-align:left}.wireframe-layout{flex-direction:column;margin-top:34px;display:flex}.wireframe-page{order:-1;width:min(100%,360px);margin:0 auto 8px}.wireframe-notes{grid-template-columns:1fr;gap:16px;padding:0;display:grid;transform:none}.wireframe-note{min-height:auto;position:relative;top:auto!important;bottom:auto!important;right:auto!important}.wireframe-note p{font-size:12px}.wireframe-arrow{display:none}.wireframe-down-arrow{width:42px;margin-top:24px}.process-circle-wireframe{top:560px}.screen-showcase{min-height:410px}.screen-glow{width:104%;height:47%;top:23%}.screen-page{width:100%}.screen-page-frame{width:47%}.screen-laptop{width:31%;left:11.5%}.screen-phone{width:23%;right:8%}.process-heading-screen{margin-top:-30px}}@media (width>=769px) and (width<=1599px){.about-orb-left{top:calc(40% - 113px)}.about-orb-right{top:calc(77% - 113px)}.web-styleguide{row-gap:18px}.web-logo-card,.web-type-card{min-height:116px}.web-logo-card img{height:100px}.web-type-card p{padding-block:5px}.web-values{gap-block:8px}.web-values span{padding-block:8px 6px}.web-palette{padding-block:8px 7px}.web-components,.web-photo-row,.web-photo-row figure{height:176px;min-height:176px}.web-components{padding-block:10px}.component-icons{height:40px}.component-rule{margin-block:4px 6px}.component-states>div{gap:6px;font-size:11px}.component-states button{padding-block:5px}.sketch-layout{min-height:450px;margin-bottom:-40px;transform:translateY(-40px)}.wireframe-layout{transform-origin:top;margin-bottom:-78px;transform:scale(.88)}.wireframe-note{min-height:116px;padding:15px 17px}.process-heading-screen{margin-top:-54px}.brand-orb-top-left{top:calc(38% - 113px)}.brand-orb-top-right{top:calc(72% - 113px)}.brand-showcase-virtual{aspect-ratio:2.28}.virtual-copy{color:#1c2b35d1;width:18%;display:block;position:absolute;top:20%;left:0}.virtual-copy .eyebrow{color:var(--blue);margin-bottom:11px;font-size:11px}.virtual-copy>p:last-child{margin:0;font-size:13px;line-height:1.5}.brand-showcase-virtual .brand-asset-style{width:24%;left:auto;right:0}.brand-showcase-virtual .brand-asset-letterhead{width:18%;left:22%;right:auto}.brand-showcase-virtual .brand-asset-card{width:25%;left:43%;right:auto}.brand-showcase-releaf{aspect-ratio:2.35}.releaf-copy{color:#f7f6f2d1;width:18%;display:block;position:absolute;top:20%;left:0}.releaf-copy .eyebrow{color:var(--blue-light);margin-bottom:11px;font-size:11px}.releaf-copy>p:last-child{margin:0;font-size:13px;line-height:1.5}.brand-showcase-releaf .brand-asset-style{width:24%}.brand-showcase-releaf .brand-asset-letterhead{width:14%;left:24%}.brand-showcase-releaf .brand-asset-card{width:20%;left:40%}.brand-showcase-releaf .brand-asset-mockup{width:30%;left:35%}.brand-showcase-releaf .brand-asset-envelope{width:20%;top:26%;left:40%}.brand-showcase-releaf .brand-asset-envelope-copy{width:20%;top:auto;bottom:0;left:24%}.editorial-note{right:clamp(-150px,-10vw,-120px)}}@media (width>=1600px){:root{--wide-shell-gutter:5.83333vw;--wide-inner-gutter:4.16667vw}.site-header{min-height:76px;width:calc(100% - (2 * var(--wide-shell-gutter)));gap:36px;max-width:none;padding:12px 18px 12px 24px}.brand{width:50px;height:50px;font-size:17px}.site-header nav{gap:clamp(22px,2.1vw,40px)}.site-header nav a{font-size:16px}.hero{padding-right:var(--wide-shell-gutter);padding-left:var(--wide-shell-gutter)}.hero:before,.hero:after{width:min(44vw,780px)}.hero:before{right:-19%}.hero:after{bottom:-31%;left:-8%}.hero-name{left:var(--wide-shell-gutter)}.hero-kicker{font-size:14px}.hero h1{font-size:clamp(220px,13.5vw,270px)}.scroll-hint{padding:16px 25px;font-size:16px}.about-shell,.project,footer{padding-right:var(--wide-shell-gutter);padding-left:var(--wide-shell-gutter)}.paper-panel{width:100%;max-width:none;padding-right:var(--wide-inner-gutter);padding-left:var(--wide-inner-gutter)}.about-panel{--about-panel-gutter:var(--wide-inner-gutter);background:#d2d2d2;padding-bottom:132px}.about-orb-left{top:calc(40% - 113px)}.about-orb-right{top:calc(77% - 113px)}.about-intro{grid-template-columns:clamp(210px,12.5vw,250px) minmax(0,1fr);gap:clamp(48px,3.4vw,66px)}.about-intro-copy{max-width:1120px;padding-right:clamp(150px,10vw,200px)}.about-intro h2{font-size:clamp(76px,4.5vw,90px)}.about-intro p,.about-card p,.about-card a,.about-card dt,.about-card dd,.about-card li{font-size:clamp(17px,1vw,20px)}.about-bird{width:clamp(485px,31vw,610px)}.about-card-icon{width:64px;height:54px}.about-card h3,.photo-category h3{font-size:clamp(34px,2vw,40px)}.interests-card{min-height:410px}.interests-cloud{width:clamp(820px,54vw,1040px)}.technical-heading .about-card-icon{width:74px;height:74px}.software-grid{width:min(100%,1023px)}.software-icon{max-width:122px}.software-stars{max-width:132px}.web-project{padding-right:var(--wide-shell-gutter);padding-left:var(--wide-shell-gutter)}.web-intro-layout,.web-divider,.web-styleguide,.web-process{width:calc(100% - (2 * var(--wide-inner-gutter)));max-width:none}.web-title-block{grid-template-columns:minmax(610px,1.46fr) minmax(240px,.54fr);align-items:center;gap:clamp(30px,2.4vw,46px);width:min(74%,1160px);max-width:none;margin-left:clamp(48px,3.5vw,70px)}.web-number-card{grid-template-columns:116px 1px minmax(0,1fr);gap:24px;min-height:264px;padding:30px 38px}.web-number{font-size:126px}.web-title-divider{height:212px}.web-description-block .eyebrow{font-size:13px}.web-intro-description p{font-size:16.5px;line-height:1.46}.web-title-block h2{font-size:clamp(116px,6.6vw,132px)}.web-earth{width:min(25vw,480px);right:0}.web-styleguide{grid-template-columns:minmax(460px,.9fr) minmax(680px,1.5fr);gap:30px 70px}.web-style-circle{width:410px}.web-logo-card,.web-type-card{min-height:148px}.web-logo-card img{height:130px}.web-concept h3{font-size:21px}.web-concept p{font-size:17px}.web-concept{width:min(92%,570px);padding-left:0}.web-values{grid-template-columns:repeat(12,minmax(0,1fr));gap:12px 10px}.web-values span{grid-column:span 4;justify-self:center;width:min(100%,218px);padding:11px 20px 9px;font-size:clamp(27px,1.65vw,33px)}.web-values span:nth-last-child(-n+2){grid-column:auto}.web-values span:nth-child(4){grid-column:3/7}.web-values span:nth-child(5){grid-column:7/11}.web-palette{padding:10px 20px 9px}.palette-item strong,.palette-item span{font-size:12px}.web-components,.web-photo-row,.web-photo-row figure{height:230px;min-height:230px}.web-components{flex-direction:column;justify-content:space-evenly;padding:20px 22px 18px;display:flex}.component-icons{width:100%;height:58px}.component-icons img{width:43px;height:46px}.component-icons img:last-child,.component-icons .component-welfare-icon{width:49px;height:49px}.component-states>div{gap:14px;font-size:15px}.component-rule{width:100%;margin:0}.component-states{width:100%}.component-states button{min-width:112px;padding:9px 18px}.web-photo-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;overflow:visible}.web-photo-row figure{place-items:end center;display:grid}.web-photo-row img{object-position:center bottom!important}.web-photo-row figure:first-child img{width:82%;transform:translate(6%)}.web-photo-row figure:nth-child(2) img{width:82%}.web-photo-row figure:last-child img{width:82%;transform:translate(-6%)}.process-pen-divider{grid-template-columns:84px 8px 294px 8px minmax(0,1fr);min-height:290px}.process-pen-line{margin-top:108px}.process-heading h3{font-size:clamp(92px,5.5vw,108px)}.process-circle{width:450px}.process-heading-left{min-height:142px;margin-top:-148px;padding-left:326px}.sketch-layout{grid-template-columns:minmax(390px,1fr) minmax(390px,1fr) minmax(255px,.64fr);gap:54px;min-height:610px;margin-bottom:-74px;transform:translateY(-74px)}.sketch-pair{--sketch-height:470px}.responsive-note h4{font-size:23px}.responsive-note p{font-size:18px}.wireframe-layout{transform-origin:top;grid-template-columns:minmax(300px,.82fr) minmax(480px,1.35fr) minmax(300px,.82fr);gap:88px;margin-bottom:-112px;transform:scale(.84)}.wireframe-note{border-radius:16px;min-height:146px;padding:18px 22px}.wireframe-note h4{font-size:18px}.wireframe-note p{font-size:16px}.wireframe-notes-left{transform:translate(-18px)}.wireframe-notes-right{transform:translate(18px)}.wireframe-notes-left .wireframe-arrow{width:132px;right:-146px}.wireframe-notes-right .wireframe-arrow{width:125px;left:-139px}.wireframe-down-arrow{width:66px}.screen-showcase{min-height:700px}.screen-page-frame{width:36%}.screen-device{border-radius:36px;height:378px}.screen-laptop{width:32%}.screen-phone{width:20%}.process-heading-screen{margin-top:-24px}#brand-design .brand-panel{padding-top:76px}.brand-orb-top-left{top:calc(38% - 113px)}.brand-orb-top-right{top:calc(72% - 113px)}.brand-intro-layout{min-height:390px;padding-right:0}.brand-title-block{grid-template-columns:minmax(570px,1.42fr) minmax(240px,.58fr);gap:46px;width:min(74%,1160px);margin-left:clamp(48px,3.5vw,70px)}.brand-number-card{grid-template-columns:145px 1px minmax(0,1fr);gap:24px;min-height:236px;padding:28px 38px}.brand-number{font-size:126px}.brand-title-divider{height:188px}.brand-description-block .eyebrow{font-size:13px}.brand-description-block>p:not(.eyebrow){font-size:15px}.brand-description-block .status-note{font-size:11px!important}.brand-title-block h2{font-size:clamp(116px,6.6vw,132px)}.brand-rocket{width:500px;right:-120px}.brand-case-header h3{font-size:108px}.brand-case-dark{width:100%;max-width:none;padding-right:var(--wide-inner-gutter);padding-left:var(--wide-inner-gutter)}.brand-showcase-virtual{aspect-ratio:2.28}.virtual-copy{color:#1c2b35d1;width:18%;display:block;position:absolute;top:20%;left:0}.virtual-copy .eyebrow{color:var(--blue);margin-bottom:14px;font-size:13px}.virtual-copy>p:last-child{margin:0;font-size:16px;line-height:1.55}.brand-showcase-virtual .brand-asset-style{width:24%;left:auto;right:0}.brand-showcase-virtual .brand-asset-letterhead{width:18%;left:22%;right:auto}.brand-showcase-virtual .brand-asset-card{width:25%;left:43%;right:auto}.brand-showcase-releaf{aspect-ratio:2.35}.releaf-copy{color:#f7f6f2d1;width:18%;display:block;position:absolute;top:22%;left:0}.releaf-copy .eyebrow{color:var(--blue-light);margin-bottom:14px;font-size:13px}.releaf-copy>p:last-child{margin:0;font-size:16px;line-height:1.55}.brand-showcase-releaf .brand-asset-style{width:24%;top:auto;bottom:0;right:0}.brand-showcase-releaf .brand-asset-letterhead{width:14%;top:0;left:24%}.brand-showcase-releaf .brand-asset-card{width:20%;top:0;left:40%}.brand-showcase-releaf .brand-asset-mockup{width:30%;bottom:0;left:35%}.brand-showcase-releaf .brand-asset-envelope{width:20%;top:26%;left:40%}.brand-showcase-releaf .brand-asset-envelope-copy{width:20%;top:auto;bottom:0;left:24%}.project-intro,.project-canvas,.editorial-stage{width:calc(100% - (2 * var(--wide-inner-gutter)));max-width:none}.project-intro{grid-template-columns:310px 1fr}.project-number{font-size:250px}.project-intro h2{font-size:178px}.project-description p{font-size:17px}.section-orb,.light-orb{width:470px}.light-orb-left{left:-118px}.light-orb-right{right:-118px}.editorial-intro-layout,.editorial-divider{width:calc(100% - (2 * var(--wide-inner-gutter)));max-width:none}.editorial-title-block{grid-template-columns:minmax(570px,1.42fr) minmax(240px,.58fr);gap:46px;width:min(74%,1160px);max-width:none;margin-left:clamp(48px,3.5vw,70px)}.editorial-number-card{grid-template-columns:145px 1px minmax(0,1fr);gap:24px;min-height:236px;padding:28px 38px}.editorial-number{font-size:126px}.editorial-title-divider{height:188px}.editorial-description-block .eyebrow{font-size:13px}.editorial-intro-description p{font-size:15px;line-height:1.46}.editorial-title-block h2{font-size:clamp(116px,6.6vw,132px)}.editorial-note{width:520px;right:-206px}.editorial-cover-composition{grid-template-columns:minmax(884px,1040px) minmax(320px,400px);justify-content:center;gap:48px;width:min(100%,1580px);margin-inline:auto}.editorial-concept h3{font-size:32px}.editorial-concept p{font-size:16px}.photo-intro-layout{min-height:390px}.photo-title-block{grid-template-columns:minmax(570px,1.42fr) minmax(240px,.58fr);gap:46px;width:min(74%,1160px);margin-left:clamp(48px,3.5vw,70px)}.photo-category{width:82%;max-width:none}.photo-row{gap:24px}.placeholder{min-height:225px}.placeholder-tall{min-height:385px}.photo-row .placeholder{min-height:340px}}@media (width>=769px){.about-panel{padding-bottom:clamp(54px,4vw,72px)}.about-details{grid-template-areas:"contact languages soft""education interests technical";gap:clamp(26px,2.5vw,40px) clamp(30px,4vw,68px);margin-top:clamp(26px,2.2vw,38px);padding-top:clamp(22px,2vw,32px)}.about-card-icon{width:46px;height:39px;margin-bottom:7px}.about-card h3{margin-bottom:12px;font-size:clamp(24px,1.7vw,31px)}.about-card p,.about-card a,.about-card dt,.about-card dd,.about-card li{font-size:clamp(12px,.88vw,15px);line-height:1.38}.education-entry{margin-bottom:14px}.interests-card{min-height:0}.interests-heading-icon{width:54px}.interests-cloud{width:min(100%,350px);margin-top:3px;position:relative;top:auto;right:auto}.technical-heading{margin-bottom:12px}.technical-heading .about-card-icon{width:50px;height:50px;margin-bottom:4px}.software-grid{grid-template-columns:repeat(5,minmax(42px,1fr));gap:clamp(7px,.7vw,12px);width:100%}.software-icon{max-width:66px}.software-stars{max-width:70px;margin-top:7px}.web-style-title{margin-bottom:clamp(14px,1.4vw,22px);font-size:clamp(31px,2.65vw,43px)}.web-styleguide{row-gap:clamp(12px,1.15vw,18px)}.web-logo-card,.web-type-card{min-height:112px}.web-logo-card img{height:96px}.web-type-card p{padding-block:4px}.web-values{gap-block:7px}.web-values span{padding-block:7px 5px}.web-palette{padding-block:7px 6px}.web-components,.web-photo-row,.web-photo-row figure{height:170px;min-height:170px}.web-components{padding-block:9px}.component-icons{height:38px}.component-rule{margin-block:4px 6px}.component-states>div{gap:5px;font-size:11px}.component-states button{padding-block:4px}.web-photo-row figure:first-child img,.web-photo-row figure:last-child img{width:72%;margin-inline:auto;transform:none}.web-photo-row figure:nth-child(2) img{width:66%;margin-inline:auto}.brand-showcase-virtual,.brand-showcase-releaf{margin-bottom:-76px;transform:translateY(-76px)}.brand-showcase-virtual .brand-asset-letterhead{left:27%}.brand-showcase-virtual .brand-asset-card{left:48%}.brand-showcase-releaf .brand-asset-letterhead{left:27%}.brand-showcase-releaf .brand-asset-card,.brand-showcase-releaf .brand-asset-envelope:not(.brand-asset-envelope-copy){left:43%}.brand-showcase-releaf .brand-asset-mockup{left:38%}.brand-showcase-releaf .brand-asset-envelope:not(.brand-asset-envelope-copy){transform:translateY(38px)}.brand-showcase-releaf .brand-asset-envelope-copy{left:27%}.editorial-note{transform:translate(57px,-50%)}}@media (width>=1600px){.web-style-title{width:calc(100% - (2 * var(--wide-inner-gutter)));max-width:none}}@media (width>=769px){.site-header{width:calc(100% - 32px);max-width:none;padding-left:18px;padding-right:max(14px,50vw - 626px)}.hero-name{left:34px}.about-intro{grid-template-columns:clamp(170px,11.5vw,220px) minmax(0,1fr);gap:clamp(62px,5.2vw,100px)}.about-intro-copy{max-width:980px;padding-right:clamp(220px,18vw,260px);transform:translate(20px)}.about-intro h2{margin-bottom:14px;font-size:clamp(48px,4vw,72px)}.about-intro p{font-size:clamp(12px,.98vw,16px);line-height:1.44}.about-portrait{aspect-ratio:.82}.about-bird{width:clamp(518px,47.6vw,679px);top:clamp(42px,4vw,72px);right:clamp(-280px,-18vw,-210px)}.about-orb-left{transform:translateY(-113px)}.about-orb-right{transform:translateY(-113px)scaleX(-1)}.web-earth{width:min(22vw,304px);top:clamp(68px,6vw,104px);transform:translateY(-28%)}.web-title-block{grid-template-columns:clamp(370px,35vw,430px) minmax(170px,210px);gap:clamp(24px,2.7vw,36px);width:min(100%,790px);margin-left:clamp(20px,1.6vw,24px)}.web-number-card{grid-template-columns:clamp(88px,8.2vw,108px) 1px minmax(0,1fr);gap:clamp(16px,1.7vw,24px);min-height:clamp(198px,18vw,222px);padding:clamp(22px,2.2vw,30px) clamp(26px,2.5vw,36px)}.web-number{font-size:clamp(76px,7.8vw,106px)}.web-title-divider{height:clamp(156px,14vw,180px)}.web-title-block h2{font-size:clamp(74px,7.4vw,98px)}.process-pen{transform:translateY(-19px)}.arrow-action{transform:translateY(23px)}.brand-showcase-releaf .brand-asset-letterhead{left:29%}.brand-showcase-releaf .brand-asset-card{top:-2%;left:46%}.brand-showcase-releaf .brand-asset-mockup{left:41%}.brand-showcase-releaf .brand-asset-envelope:not(.brand-asset-envelope-copy){left:46%}.brand-showcase-releaf .brand-asset-envelope-copy{left:30%}.photo-intro-layout{position:relative}.photo-one-line{z-index:1;opacity:.86;pointer-events:none;width:clamp(185px,18vw,300px);height:auto;position:absolute;bottom:0;right:1%}.photo-category{margin-left:calc(-10px - clamp(28px,5vw,76px))}.photo-category-offset{margin-left:auto;margin-right:calc(-10px - clamp(28px,5vw,76px))}}@media (width>=1600px){.site-header{padding-right:calc(var(--wide-shell-gutter) + 2px)}.hero-name{left:42px}.about-intro{grid-template-columns:205px minmax(0,1fr);gap:112px}.about-intro-copy{max-width:1020px;padding-right:260px;transform:translate(24px)}.about-intro h2{font-size:72px}.about-intro p{font-size:16px}.about-bird{width:clamp(679px,43.4vw,854px);top:66px}.web-earth{width:min(19.25vw,369px);top:104px;right:10px}.web-title-block{grid-template-columns:minmax(570px,1.42fr) minmax(240px,.58fr);gap:46px;width:min(74%,1160px);margin-left:clamp(48px,3.5vw,70px)}.web-number-card{grid-template-columns:145px 1px minmax(0,1fr);gap:24px;min-height:264px;padding:28px 38px}.web-number{font-size:126px}.web-title-divider{height:212px}.web-title-block h2{font-size:clamp(116px,6.6vw,132px)}.photo-category{margin-left:calc(0px - var(--wide-inner-gutter) - 12px)}.photo-category-offset{margin-right:calc(0px - var(--wide-inner-gutter) - 12px);margin-left:auto}}@media (width>=769px) and (width<=1599px){.about-bird{width:clamp(370px,34vw,485px);transform:translate(-85px,-18px)}}@media (width>=769px){.interests-cloud{width:min(169%,592px);max-width:none;margin-top:3px;margin-left:50%;transform:translate(-50%)}.web-earth{transform:translate(-38px,calc(-28% - 19px))}.web-photo-row figure:nth-child(2) img{transform:translateY(38px);object-position:center center!important}.photo-one-line{width:clamp(160px,15.5vw,255px)}}@media (width>=1600px){.about-bird{width:clamp(485px,31vw,610px);transform:translate(-133px,-20px)}}@media (width>=769px){.about-bird{transform:translate(-123px,-18px)}.interests-cloud{width:min(219.7%,770px)}.web-styleguide{grid-template-rows:auto auto auto;row-gap:clamp(34px,3vw,46px)}.web-values{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1.15vw,16px)}.web-values span,.web-values span:nth-child(4),.web-values span:nth-child(5),.web-values span:nth-last-child(-n+2){grid-column:auto;width:100%;padding-left:clamp(8px,1vw,14px);padding-right:clamp(8px,1vw,14px)}.web-palette{align-items:center;min-height:126px;padding-left:clamp(16px,1.8vw,24px);padding-right:clamp(16px,1.8vw,24px)}.web-components,.web-photo-row{align-self:start}.process-sketches{margin-top:clamp(38px,3.2vw,52px)}.photo-one-line{width:clamp(123px,11.9vw,196px)}}@media (width>=1600px){.about-bird{transform:translate(-133px,-20px)}}@media (width<=620px){.process-pen{transform:translateY(-18px)}.process-heading-centered{transform:translateY(12px)}}.line-art-svg{display:block;overflow:visible}.line-art-stroke{stroke-linecap:round;stroke-linejoin:round}.line-art-cloud{overflow:visible}.line-art-cloud-fill,.line-art-cloud-stroke{width:100%;height:auto;display:block}.line-art-cloud-stroke{pointer-events:none;position:absolute;inset:0;overflow:visible}.line-art-enabled [data-line-art] .line-art-stroke,.line-art-enabled[data-line-art] .line-art-stroke{stroke-dasharray:var(--line-art-length,1);stroke-dashoffset:var(--line-art-length,1)}.line-art-enabled [data-line-art].is-drawn .line-art-stroke,.line-art-enabled[data-line-art].is-drawn .line-art-stroke{animation:line-art-draw var(--line-art-stroke-duration,var(--line-art-duration,4s)) cubic-bezier(.37, 0, .63, 1) var(--line-art-stroke-delay,0s) forwards}.about-bird{--line-art-duration:4.8s}.line-art-cloud{--line-art-duration:5.4s}.process-pen{--line-art-duration:4.6s}.wireframe-arrow{--line-art-duration:3.4s}@keyframes line-art-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-line-art] .line-art-stroke,[data-line-art].line-art-stroke{stroke-dasharray:none!important;stroke-dashoffset:0!important}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@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}


/* Extend the original compact layout rules through portrait-tablet widths. */
@media (max-width:768px){html{scroll-padding-top:78px}.site-header{gap:14px;width:calc(100% - 20px);min-height:50px;padding:6px 8px 6px 12px;top:10px}.brand{width:36px;height:36px}.site-header nav a{font-size:10px}.hero{min-height:88svh}.hero-name{top:92px}.hero h1{font-size:clamp(68px,25vw,118px)}.paper-panel{border-radius:28px}.web-project{padding:112px 20px 108px}.web-earth{width:min(62vw,250px);top:-82px;right:10px;transform:none}.web-title-block{grid-template-columns:1fr;gap:18px;width:100%;margin-left:0;transform:none}.editorial-note{width:min(86vw,420px);margin:-30px -42px 0 auto;display:block;position:relative;top:auto;right:auto;transform:none}.web-number-card{grid-template-columns:62px 1px minmax(0,1fr);gap:12px;min-height:188px;padding:18px}.web-number{font-size:clamp(58px,18vw,78px);top:auto;left:auto}.web-title-block h2{grid-row:1;font-size:clamp(52px,16vw,72px);transform:none}.web-description-block{margin:0}.web-description-block .eyebrow{margin-bottom:10px;font-size:10px}.web-intro-description p{margin-bottom:9px;font-size:10.5px;line-height:1.4}.web-brand-column{display:block}.web-logo-row{grid-template-columns:repeat(2,1fr)}.web-type-card{grid-column:1/-1}.web-concept{margin-top:30px}.web-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.web-values span{grid-column:auto;padding-inline:12px}.web-values span:nth-last-child(-n+2){grid-column:auto}.web-values span:last-child{grid-column:1/-1}.web-palette{grid-template-columns:repeat(2,1fr);gap:18px}.palette-item:last-child{grid-column:1/-1;width:50%;margin:0 auto}.web-components{padding-inline:12px}.component-icons{gap:6px}.component-icons img{width:30px;height:34px}.component-icons img:last-child{width:36px;height:36px}.component-states{gap:4px}.component-states button{min-width:72px;padding-inline:12px}.web-photo-row{gap:10px;min-height:150px}.web-photo-row figure{height:150px}.about-intro{border-radius:22px;grid-template-columns:1fr;padding:28px}.about-portrait{width:150px;height:205px}.about-bird{width:270px;top:-2px;right:-68px}.about-intro-copy{padding-right:0}.about-details{grid-template-columns:1fr;grid-template-areas:"contact" "languages" "soft" "education" "interests" "technical";row-gap:48px}.interests-card{min-height:300px;padding-left:0}.interests-cloud{width:calc(100% + 36px);margin-top:4px;position:relative;top:auto;right:auto}.software-grid{grid-template-columns:repeat(3,minmax(70px,1fr))}.project-intro{margin-bottom:54px}.project-description{padding-top:16px}.web-grid,.brand-layout{grid-template-columns:1fr}.brand-layout .placeholder{grid-column:auto!important}.canvas-header{flex-direction:column}.screen-preview{aspect-ratio:4/5}.screen-columns{grid-template-columns:1fr}.photo-category,.photo-category-offset{border-radius:0;width:auto;margin-left:calc(-1*clamp(28px,5vw,76px));margin-right:calc(-1*clamp(28px,5vw,76px))}.photo-row{grid-template-columns:1fr}.footer-bottom{grid-template-columns:1fr auto;align-items:flex-start}.font-credit{text-align:left;grid-area:2/1/auto/-1}.footer-bottom>a:last-child{grid-area:1/2}}
@media (max-width:768px){.brand-intro-layout{flex-direction:column;align-items:stretch;gap:18px;min-height:0;padding-right:0;display:flex}.brand-title-block{grid-template-columns:1fr;gap:26px;transform:none}.brand-number-card{grid-template-columns:72px 1px minmax(0,1fr);min-height:176px}.brand-title-block h2{font-size:clamp(66px,22vw,92px)}.brand-rocket{width:min(68vw,240px);margin:-54px -38px 0 auto;position:relative;top:auto;right:auto;transform:none}.brand-showcase-virtual,.brand-showcase-releaf{aspect-ratio:auto;grid-template-columns:1fr;gap:26px;min-height:0;display:grid}.virtual-copy,.releaf-copy{width:min(100%,420px);margin-inline:auto;display:block;position:relative;inset:auto}.brand-showcase-virtual .brand-asset-style,.brand-showcase-virtual .brand-asset-letterhead,.brand-showcase-virtual .brand-asset-card,.brand-showcase-releaf .brand-asset-style,.brand-showcase-releaf .brand-asset-letterhead,.brand-showcase-releaf .brand-asset-card,.brand-showcase-releaf .brand-asset-mockup,.brand-showcase-releaf .brand-asset-envelope{width:min(100%,420px);margin-inline:auto;position:relative;inset:auto}.brand-showcase-releaf .brand-asset-envelope-copy{display:none}.process-heading h3{font-size:clamp(44px,13vw,66px)}.process-heading-left{min-height:90px;margin-top:-64px;padding:0 0 0 92px}.process-pen-divider{grid-template-columns:23px 4px 104px 4px minmax(0,1fr);min-height:134px}.process-pen-line{margin-top:40px}.process-circle{width:230px}.process-circle-right{top:250px;right:calc(50% - 50vw);transform:translate(8%)scaleX(-1)}.sketch-layout{grid-template-columns:1fr;gap:46px;min-height:0;padding-inline:0}.sketch-pair{--sketch-height:clamp(280px,82vw,350px);width:min(100%,340px);margin:0 auto}.responsive-note{text-align:left;margin-top:0}.responsive-note h4{margin-bottom:12px}.process-divider{margin-top:60px}.process-heading-centered{text-align:left}.wireframe-layout{flex-direction:column;margin-top:34px;display:flex}.wireframe-page{order:-1;width:min(100%,360px);margin:0 auto 8px}.wireframe-notes{grid-template-columns:1fr;gap:16px;padding:0;display:grid;transform:none}.wireframe-note{min-height:auto;position:relative;top:auto!important;bottom:auto!important;right:auto!important}.wireframe-note p{font-size:12px}.wireframe-arrow{display:none}.wireframe-down-arrow{width:42px;margin-top:24px}.process-circle-wireframe{top:560px}.screen-showcase{min-height:410px}.screen-glow{width:104%;height:47%;top:23%}.screen-page{width:100%}.screen-page-frame{width:47%}.screen-laptop{width:31%;left:11.5%}.screen-phone{width:23%;right:8%}.process-heading-screen{margin-top:-30px}}
@media (max-width:768px){.process-pen{transform:translateY(-18px)}.process-heading-centered{transform:translateY(12px)}}

/* Keep the animated sphere centered on the wordmark while its two original
   light states crossfade in a calm ten-second loop. */
.hero-title-wrap {
  z-index: 2;
}

.hero-heading-stage {
  display: grid;
  place-items: center;
  position: relative;
  isolation: isolate;
}

.hero-heading-stage h1 {
  z-index: 2;
  position: relative;
}

/* The orb deliberately extends beyond the heading stage. Keep the supporting
   title copy and call to action above that complete animated area. */
.hero-kicker,
.scroll-hint {
  z-index: 3;
  position: relative;
}

.hero-orb {
  z-index: 0;
  pointer-events: none;
  width: clamp(330px, 58vw, 760px);
  aspect-ratio: 289.89 / 309.07;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hero-orb-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: absolute;
  inset: 0;
}

.hero-orb-right {
  opacity: 0;
  transform: scaleX(-1);
  animation: hero-orb-crossfade 10s ease-in-out infinite;
}

@keyframes hero-orb-crossfade {
  0%,
  100% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
}

/* Style tile refinements. */
.web-palette {
  align-items: center;
  min-height: 144px;
  padding-top: 16px;
  padding-bottom: 16px;
}

.palette-item img {
  /* Paw artwork remains exactly the same size. */
  flex: none;
}

.component-icons {
  transform: translateY(-4px);
}

/* 0.4 cm is approximately 15 px on screen. This continues the previous
   adjustment and places the pen/line between heading and sketches. */
@media (min-width: 769px) {
  .process-pen {
    transform: translateY(8px);
  }
}

@media (max-width: 768px) {
  .process-pen {
    transform: translateY(-3px);
  }
}

/* Move only the word, leaving the pen, its line and the sketch layout intact. */
.process-heading-left h3 {
  transform: translateY(-19px);
}

/* The four explanatory arrows stay static. Only the long transition arrow
   is drawn, and it is 0.3 s quicker than its previous 3.4 s timing. */
.wireframe-arrow .line-art-stroke {
  animation: none !important;
  stroke-dasharray: none !important;
  stroke-dashoffset: 0 !important;
}

.transition-arrow {
  --line-art-duration: 3.1s;
}

/* Preserve the most recent photography refinements. */
.photo-folders-overview {
  position: relative;
  z-index: 2;
  width: min(100%, 1180px);
  margin: clamp(52px, 6vw, 82px) auto clamp(74px, 8vw, 112px);
}

.photo-folders-heading {
  margin-bottom: clamp(24px, 3vw, 38px);
}

.photo-folders-heading .eyebrow {
  color: var(--ink-soft);
  margin-bottom: 12px;
}

.photo-folders-heading h3 {
  color: var(--ink);
  font-family: var(--font-display);
  font-size: clamp(48px, 5.7vw, 82px);
  font-weight: 400;
  letter-spacing: -0.018em;
  line-height: 0.94;
  margin: 0;
}

.photo-folders-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 360px));
  justify-content: center;
  column-gap: clamp(24px, 2.5vw, 34px);
  row-gap: clamp(30px, 3.8vw, 50px);
}

.photo-folder-card {
  appearance: none;
  isolation: isolate;
  contain: paint;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(28, 43, 53, 0.08);
  border-radius: clamp(14px, 1.5vw, 20px);
  background: rgba(244, 244, 241, 0.26);
  box-shadow: none;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.photo-folder-card:hover,
.photo-folder-card:focus-visible {
  transform: translateY(-5px);
  border-color: rgba(77, 120, 146, 0.32);
  box-shadow: none;
}

.photo-folder-card:focus-visible,
.photo-subcategory-card:focus-visible,
.photo-album-scroll-button:focus-visible,
.photo-gallery-to-albums:focus-visible,
.photo-back-button:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 4px;
}

.photo-folder-media {
  display: grid;
  width: 100%;
  height: clamp(215px, 19vw, 280px);
  gap: 4px;
  overflow: hidden;
  background: rgba(28, 43, 53, 0.08);
}

.photo-folder-mosaic {
  grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

.photo-folder-mosaic .photo-folder-main {
  grid-row: 1 / -1;
}

.photo-folder-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.photo-folder-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: clamp(82px, 7vw, 100px);
  padding: 18px clamp(20px, 2vw, 28px);
  background: rgba(239, 240, 238, 0.72);
  backdrop-filter: blur(12px);
}

.photo-folder-title-row {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.photo-folder-title-row h4,
.photo-folder-title-row > span {
  color: var(--ink);
  font-family: var(--font-heading);
  font-size: clamp(24px, 2vw, 32px);
  font-weight: 800;
  letter-spacing: 0.035em;
  line-height: 1;
  margin: 0;
}

.photo-folder-arrow {
  color: var(--blue);
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1;
  transition: transform 180ms ease;
}

.photo-folder-card:hover .photo-folder-arrow,
.photo-folder-card:focus-visible .photo-folder-arrow {
  transform: translateX(5px);
}

.photography-browser {
  scroll-margin-top: 104px;
}

.photo-detail-view {
  position: relative;
  z-index: 2;
  width: min(100%, 1180px);
  margin: clamp(52px, 6vw, 82px) auto clamp(74px, 8vw, 112px);
}

.photo-detail-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
  margin-bottom: clamp(26px, 3vw, 42px);
}

.photo-detail-header .eyebrow,
.photo-gallery-heading .eyebrow {
  color: var(--ink-soft);
  margin-bottom: 10px;
}

.photo-detail-header h3,
.photo-gallery-heading h4 {
  color: var(--ink);
  font-family: var(--font-display);
  font-weight: 400;
  letter-spacing: -0.018em;
  line-height: 0.94;
  margin: 0;
}

.photo-detail-header h3 {
  font-size: clamp(48px, 5.7vw, 82px);
}

.photo-back-button {
  appearance: none;
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(28, 43, 53, 0.16);
  border-radius: 999px;
  background: rgba(247, 246, 242, 0.48);
  color: var(--ink);
  cursor: pointer;
  padding: 11px 17px;
  font-size: 13px;
  transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.photo-back-button:hover {
  background: var(--ink);
  color: var(--white);
  transform: translateX(-3px);
}

.photo-subcategory-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(10px, 1.25vw, 17px);
  margin-bottom: clamp(42px, 5vw, 72px);
}

.photo-subcategory-card {
  --photo-album-radius: clamp(13px, 1.3vw, 18px);
  appearance: none;
  position: relative;
  isolation: isolate;
  contain: paint;
  min-width: 0;
  aspect-ratio: 0.76;
  overflow: hidden;
  border: 1px solid rgba(28, 43, 53, 0.1);
  border-radius: var(--photo-album-radius);
  background: var(--ink);
  color: var(--white);
  cursor: pointer;
  text-align: left;
  box-shadow: none;
  transition: transform 200ms ease, border-color 200ms ease,
    opacity 200ms ease, filter 200ms ease;
}

.photo-subcategory-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid transparent;
  border-radius: inherit;
  pointer-events: none;
  transition: border-color 180ms ease;
}

.photo-subcategory-card:hover,
.photo-subcategory-card.is-active {
  transform: translateY(-5px);
  box-shadow: none;
}

.photo-subcategory-card.is-active::after {
  border-color: var(--blue);
}

.photo-subcategory-card.is-active {
  z-index: 1;
  opacity: 1;
  filter: none;
}

.photo-subcategory-card.is-muted {
  opacity: 0.56;
  filter: grayscale(0.3) saturate(0.72);
  transform: translateY(0) scale(0.985);
}

.photo-subcategory-card.is-muted:hover,
.photo-subcategory-card.is-muted:focus-visible {
  opacity: 0.82;
  filter: grayscale(0.08) saturate(0.92);
}

.photo-subcategory-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.94;
  transition: transform 400ms ease, opacity 200ms ease;
}

.photo-subcategory-card:hover img,
.photo-subcategory-card.is-active img {
  transform: scale(1.045);
  opacity: 1;
}

.photo-subcategory-label {
  position: absolute;
  inset: auto 0 0;
  display: grid;
  gap: 4px;
  min-height: 76px;
  padding: 16px 15px 14px;
  border-radius: 0 0 var(--photo-album-radius) var(--photo-album-radius);
  background: linear-gradient(180deg, rgba(20, 35, 45, 0.72), rgba(20, 35, 45, 0.97));
}

.photo-album-carousel {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(9px, 1.15vw, 16px);
  margin-bottom: clamp(42px, 5vw, 72px);
}

.photo-album-carousel .photo-subcategory-grid {
  display: flex;
  gap: clamp(10px, 1.25vw, 17px);
  min-width: 0;
  margin-bottom: 0;
  padding: 8px 4px 18px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  overscroll-behavior-inline: contain;
}

.photo-album-carousel .photo-subcategory-grid::-webkit-scrollbar {
  display: none;
}

.photo-album-carousel .photo-subcategory-card {
  flex: 0 0 clamp(145px, 15.1vw, 180px);
  aspect-ratio: 0.76;
  scroll-snap-align: start;
}

.photo-album-scroll-button {
  appearance: none;
  display: grid;
  place-items: center;
  width: clamp(40px, 3.8vw, 50px);
  aspect-ratio: 1;
  border: 1px solid rgba(28, 43, 53, 0.16);
  border-radius: 50%;
  background: rgba(247, 246, 242, 0.84);
  color: var(--ink);
  cursor: pointer;
  font-size: clamp(19px, 1.8vw, 24px);
  line-height: 1;
  transition: transform 180ms ease, background 180ms ease, color 180ms ease;
}

.photo-album-scroll-button:hover {
  transform: scale(1.06);
  background: var(--ink);
  color: var(--white);
}

.photo-album-scroll-button > span {
  display: grid;
  place-items: center;
  width: 1em;
  height: 1em;
  line-height: 1;
  transform: translateY(-0.1em);
}

.photo-subcategory-label strong {
  font-family: var(--font-heading);
  font-size: clamp(16px, 1.3vw, 21px);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.05;
}

.photo-subcategory-label small {
  color: rgba(247, 246, 242, 0.72);
  font-size: 11px;
}

.photo-gallery {
  border-top: 1px solid rgba(28, 43, 53, 0.16);
  padding-top: clamp(28px, 3vw, 42px);
}

.photo-album-carousel,
.photo-detail-view > .photo-subcategory-grid {
  scroll-margin-top: clamp(78px, 8vw, 110px);
}

.photo-gallery-to-albums {
  appearance: none;
  display: grid;
  place-items: center;
  width: clamp(42px, 4vw, 52px);
  aspect-ratio: 1;
  margin: clamp(24px, 3vw, 42px) 0 0 auto;
  border: 1px solid rgba(28, 43, 53, 0.16);
  border-radius: 50%;
  background: rgba(247, 246, 242, 0.84);
  color: var(--ink);
  cursor: pointer;
  font-size: clamp(20px, 1.8vw, 25px);
  line-height: 1;
  transition: transform 180ms ease, background 180ms ease, color 180ms ease;
}

.photo-gallery-to-albums > span {
  display: grid;
  place-items: center;
  width: 1em;
  height: 1em;
  line-height: 1;
  transform: translateY(-0.08em);
}

.photo-gallery-to-albums:hover {
  background: var(--ink);
  color: var(--white);
  transform: translateY(-3px);
}

.photo-gallery-heading {
  position: relative;
  padding-right: 90px;
  margin-bottom: clamp(22px, 2.4vw, 34px);
}

.photo-gallery-heading h4 {
  font-size: clamp(42px, 4.8vw, 70px);
}

.photo-gallery-heading > span {
  position: absolute;
  top: 50%;
  right: 0;
  color: var(--ink-soft);
  font-size: 12px;
  transform: translateY(-50%);
}

.photo-gallery-grid {
  --photo-gallery-gap: clamp(10px, 1.25vw, 17px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--photo-gallery-gap);
  align-items: stretch;
}

.photo-gallery-item {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  margin: 0;
  overflow: hidden;
  border-radius: clamp(14px, 1.5vw, 20px);
  background: rgba(28, 43, 53, 0.1);
  box-shadow: 0 12px 30px rgba(28, 43, 53, 0.1);
}

.photo-gallery-open {
  appearance: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: zoom-in;
}

.photo-gallery-open:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: -4px;
}

.photo-gallery-grid-template {
  display: block;
  position: relative;
}

.photo-gallery-grid-template .photo-gallery-item {
  position: absolute;
  aspect-ratio: auto;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.photo-gallery-media {
  position: absolute;
  inset: 0;
  display: block;
  overflow: hidden;
  transition: transform 320ms ease;
}

.photo-gallery-media > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.photo-gallery-source {
  position: absolute;
  left: var(--photo-source-left);
  top: var(--photo-source-top);
  width: var(--photo-source-width);
  height: var(--photo-source-height);
}

.photo-gallery-source > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: fill;
}

.photo-gallery-source[data-photo-rotation="270"] > img {
  inset: auto;
  left: 100%;
  top: 0;
  width: var(--photo-rotated-image-width);
  height: auto;
  transform: rotate(90deg);
  transform-origin: 0 0;
}

.photo-gallery-item:hover .photo-gallery-media {
  transform: scale(1.055);
}

.photo-gallery-empty {
  display: grid;
  place-items: center;
  min-height: 220px;
  border: 1px solid rgba(28, 43, 53, 0.12);
  border-radius: clamp(14px, 1.5vw, 20px);
  background: rgba(239, 240, 238, 0.52);
  color: var(--ink-soft);
  text-align: center;
  padding: 30px;
}

body.photo-lightbox-open {
  overflow: hidden;
}

.photo-lightbox[hidden] {
  display: none;
}

.photo-lightbox {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: clamp(18px, 3vw, 46px);
  background: rgba(7, 16, 23, 0.94);
  backdrop-filter: blur(10px);
}

.photo-lightbox-dialog {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(12px, 2vw, 30px);
  width: min(100%, 1600px);
  max-height: 92vh;
}

.photo-lightbox-stage {
  position: relative;
  display: grid;
  place-items: center;
  min-width: 0;
  margin: 0;
}

.photo-lightbox-image {
  display: block;
  max-width: 100%;
  max-height: calc(92vh - 58px);
  object-fit: contain;
  transition: opacity 160ms ease;
}

.photo-lightbox.is-loading .photo-lightbox-image {
  opacity: 0.28;
}

.photo-lightbox.is-loading .photo-lightbox-stage::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 34px;
  aspect-ratio: 1;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: var(--white);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: photo-lightbox-spin 700ms linear infinite;
}

@keyframes photo-lightbox-spin {
  to {
    transform: translate(-50%, -50%) rotate(1turn);
  }
}

.photo-lightbox-caption {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
  padding-top: 12px;
  color: rgba(255, 255, 255, 0.76);
  font-size: 12px;
  line-height: 1.4;
}

.photo-lightbox-caption [data-photo-lightbox-counter] {
  flex: none;
  color: var(--white);
}

.photo-lightbox-nav,
.photo-lightbox-close {
  appearance: none;
  display: grid;
  place-items: center;
  width: clamp(42px, 4vw, 56px);
  aspect-ratio: 1;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  color: var(--white);
  cursor: pointer;
  font: inherit;
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1;
  transition: transform 180ms ease, background 180ms ease, border-color 180ms ease;
}

.photo-lightbox-nav:hover,
.photo-lightbox-close:hover {
  border-color: rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.18);
  transform: scale(1.06);
}

.photo-lightbox-nav > span {
  display: grid;
  place-items: center;
  width: 1em;
  height: 1em;
  line-height: 1;
  transform: translateY(-0.1em);
}

.photo-lightbox-nav:focus-visible,
.photo-lightbox-close:focus-visible {
  outline: 2px solid var(--white);
  outline-offset: 4px;
}

.photo-lightbox-close {
  position: fixed;
  top: clamp(16px, 2.4vw, 34px);
  right: clamp(16px, 2.4vw, 34px);
  z-index: 1;
}

.photo-intro-layout {
  margin-bottom: 0;
}

.photo-divider {
  width: min(100%, 1120px);
  height: 1px;
  margin: 1cm auto 0;
  background: rgba(28, 44, 56, 0.4);
}

.photo-divider + #photography-browser-root .photo-folders-overview {
  margin-top: 1cm;
}

.photo-panel > .light-orb-layer {
  z-index: 0;
}

.photo-panel > .photo-intro-layout,
.photo-panel > .photo-divider,
.photo-panel > #photography-browser-root {
  position: relative;
  z-index: 1;
}

@media (min-width: 769px) {
  .photo-one-line {
    bottom: 2cm;
  }
}

@media (min-width: 1600px) {
  .photo-divider {
    width: calc(100% - (2 * var(--wide-inner-gutter)));
    max-width: none;
  }
}

@media (min-width: 1600px) {
  .web-palette {
    min-height: 150px;
  }
}

@media (max-width: 768px) {
  .photo-folders-grid {
    grid-template-columns: repeat(2, minmax(0, 400px));
  }

  .photo-folder-media {
    height: clamp(195px, 30vw, 255px);
  }

  .photo-subcategory-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .photo-subcategory-card {
    aspect-ratio: 0.92;
  }

  .photo-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .photo-folders-overview {
    margin-top: 44px;
  }

  .photo-folders-grid {
    grid-template-columns: minmax(0, 400px);
  }

  .photo-folder-media {
    height: clamp(215px, 66vw, 270px);
  }

  .photo-folder-label {
    min-height: 76px;
  }

  .photo-detail-header {
    display: grid;
  }

  .photo-back-button {
    grid-row: 1;
    width: max-content;
  }

  .photo-subcategory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .photo-subcategory-card {
    aspect-ratio: 0.86;
  }

  .photo-album-carousel {
    gap: 7px;
  }

  .photo-album-carousel .photo-subcategory-card {
    flex-basis: min(44vw, 170px);
    aspect-ratio: 0.86;
  }

  .photo-album-scroll-button {
    width: 36px;
  }

  .photo-gallery-heading {
    padding-right: 0;
  }

  .photo-gallery-heading > span {
    position: static;
    display: block;
    margin-top: 10px;
    transform: none;
  }

  .photo-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .photo-gallery-grid-template {
    display: block;
    columns: 2;
    column-gap: var(--photo-gallery-gap);
    aspect-ratio: auto !important;
  }

  .photo-gallery-grid-template .photo-gallery-item {
    position: relative;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: auto;
    margin-bottom: var(--photo-gallery-gap);
    break-inside: avoid;
  }

  /* On compact layouts each photograph is a standalone image rather than a
     crop inside the desktop collage. Preserve its natural aspect ratio. */
  .photo-gallery-grid-template .photo-gallery-open,
  .photo-gallery-grid-template .photo-gallery-media,
  .photo-gallery-grid-template .photo-gallery-source {
    position: relative;
    inset: auto;
    display: block;
    width: 100%;
    height: auto;
  }

  .photo-gallery-grid-template .photo-gallery-media > img,
  .photo-gallery-grid-template .photo-gallery-source > img,
  .photo-gallery-grid-template .photo-gallery-source[data-photo-rotation="270"] > img {
    position: static;
    inset: auto;
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    transform: none;
  }

  .photo-lightbox {
    padding: 58px 12px 18px;
  }

  .photo-lightbox-dialog {
    display: block;
    width: 100%;
  }

  .photo-lightbox-image {
    max-height: calc(100vh - 128px);
  }

  .photo-lightbox-nav {
    position: absolute;
    top: 50%;
    z-index: 1;
    width: 38px;
    transform: translateY(-50%);
    background: rgba(7, 16, 23, 0.64);
  }

  .photo-lightbox-nav:hover {
    transform: translateY(-50%) scale(1.06);
  }

  .photo-lightbox-prev {
    left: 6px;
  }

  .photo-lightbox-next {
    right: 6px;
  }

  .photo-lightbox-caption {
    padding-inline: 8px;
  }
}

#fotografie .brand-description-block > .status-note {
  display: none;
}
