:root{--ink:#0d0e10;--ink-2:#141619;--well:#1a1d20;--paper:#ededec;--paper-2:#b9bdc0;--muted:#7e858b;--line:#2a2e32;--hair:#1e2225;--accent:#67a69c;--accent-hover:#8fc7bd;--pad:clamp(14px, 2.2vw, 34px);--gutter:clamp(6px, .7vw, 12px);--section-gap:clamp(46px, 5vw, 88px);--band:clamp(250px, 30vw, 430px);--band-sm:clamp(88px, 10vw, 148px);--header-h:58px;--track:.15em;--fs-label:clamp(9px, .7vw, 10px);--fs-small:clamp(13px, .95vw, 15px);--fs-body:clamp(15px, 1vw, 17px);--fs-lead:clamp(20px, 2vw, 33px);--fs-h3:clamp(18px, 1.7vw, 27px);--fs-h2:clamp(28px, 3.4vw, 58px);--fs-h1:clamp(42px, 7vw, 128px);--fs-display:clamp(58px, 12vw, 210px)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 18px);background:var(--ink)}body{background:var(--ink);min-height:100vh;color:var(--paper);font-family:var(--font-archivo), Arial, sans-serif;font-size:var(--fs-body);text-rendering:geometricprecision;margin:0;line-height:1.45;overflow-x:clip}body::selection{background:var(--paper);color:var(--ink)}a{color:inherit}img,video{max-width:100%;display:block}button,input,textarea,select{font:inherit}p,h1,h2,h3,dl,dd,figure,ul,ol{margin:0}ul,ol{padding:0;list-style:none}.skip-link{left:var(--pad);z-index:20;background:var(--paper);color:var(--ink);padding:8px 12px;position:absolute;top:10px;transform:translateY(-140%)}.skip-link:focus{transform:translateY(0)}.shell{width:min(100% - (var(--pad) * 2), 1880px);margin-inline:auto}.site-header{z-index:100;height:var(--header-h);background:color-mix(in srgb, var(--ink) 82%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header,.site-header *{pointer-events:auto}.header-inner{justify-content:space-between;align-items:center;gap:18px;height:100%;display:flex}.wordmark,.nav a{font-size:var(--fs-small);font-weight:600;text-decoration:none}.nav{gap:clamp(18px,2.8vw,56px);display:flex}.nav a:hover,.wordmark:hover{color:var(--accent-hover)}.label{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;font-weight:700;display:inline-block}.lead{max-width:54ch;font-size:var(--fs-lead);letter-spacing:-.025em;line-height:1.16}.prose{max-width:66ch;color:var(--paper-2);font-size:var(--fs-small)}.btn{border:1px solid var(--line);min-height:38px;font-size:var(--fs-small);justify-content:center;align-items:center;padding:9px 15px;font-weight:600;text-decoration:none;transition:color .16s,background .16s,border-color .16s;display:inline-flex}.btn--solid{background:var(--paper);color:var(--ink);border-color:var(--paper)}.btn--ghost{color:var(--paper);background:0 0}.btn:hover{border-color:var(--accent);color:var(--accent-hover)}.btn--solid:hover{background:var(--accent-hover);color:var(--ink)}.media{background:var(--well);aspect-ratio:var(--ar,4 / 5);position:relative;overflow:hidden}.media>img,.media>video,.media>.hero-video{object-fit:cover;object-position:var(--pos,center);width:100%;height:100%}.media--tall{--ar:4 / 5}.media--portrait{--ar:3 / 4}.media--reference{--ar:2 / 3}.media--wide{--ar:16 / 9}.media--vertical,.media--9x16{--ar:9 / 16}.media--square{--ar:1 / 1}.media--contain>img,.media--contain>video{object-fit:contain}.media-note{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;margin-top:7px;font-weight:700}.hero{padding-top:clamp(26px,3.4vw,54px)}.hero-grid{gap:var(--gutter);margin-bottom:var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,.62fr);align-items:stretch;display:grid}.hero-copy{flex-direction:column;gap:clamp(14px,1.7vw,24px);padding-right:clamp(0px,2vw,32px);display:flex}.hero-copy>:last-child{margin-top:auto}.hero-name{font-size:var(--fs-display);letter-spacing:-.04em;margin-top:6px;font-weight:500;line-height:.9}.hero-secondary{max-width:52ch;color:var(--muted);font-size:var(--fs-small);margin-top:10px}.hero-actions{flex-wrap:wrap;gap:8px;display:flex}.hero-media{aspect-ratio:9/16;--pos:center 22%;place-self:start end;width:clamp(170px,18vw,245px);height:auto}.hero-meta{border-top:1px solid var(--line);margin-top:9px;padding-top:9px}.strip{gap:var(--gutter);height:var(--band-sm);display:flex}.strip .media{aspect-ratio:auto;flex:1 1 0;min-width:0;height:100%}@media (min-width:1200px){.hero-name{white-space:nowrap}}.section{margin-top:var(--section-gap)}.section-head{grid-template-columns:minmax(120px,.22fr) minmax(0,1fr);align-items:start;gap:clamp(18px,2.5vw,48px);margin-bottom:clamp(18px,2.2vw,34px);display:grid}.section-title{max-width:22ch;font-size:var(--fs-h2);letter-spacing:-.03em;font-weight:500;line-height:1.03}.selected-work-section .section-title{max-width:34ch}.work-list{gap:clamp(26px,3vw,46px);display:grid}.work-media-link{text-decoration:none;display:block}.work-media{gap:var(--gutter);height:var(--band);display:flex}.work-media .media,.work-media .media-block{flex:1 1 0;min-width:0;height:100%}.work-media .media{aspect-ratio:auto}.work-media .wide{flex:1.85 1 0}.work:not(:nth-child(2)) .work-media{justify-content:flex-start}.work:not(:nth-child(2)) .work-media .media{aspect-ratio:9/16;flex:none;width:auto}.work-bar{border-top:1px solid var(--line);grid-template-columns:38px minmax(0,1fr);align-items:start;gap:4px clamp(16px,2vw,30px);margin-top:12px;padding-top:10px;display:grid}.work-info{min-width:0}.work-copy-grid{grid-template-columns:minmax(0,1.25fr) minmax(180px,.75fr);align-items:start;gap:10px clamp(18px,3vw,56px);margin-top:clamp(8px,.9vw,14px);display:grid}.work-index{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);font-weight:700}.work-title{max-width:100%;font-size:var(--fs-h2);letter-spacing:-.02em;white-space:nowrap;font-weight:500;line-height:1.15;text-decoration:none;display:inline-block}.work-title:after{content:"↗";color:var(--accent);margin-left:.22em;font-size:.72em;line-height:1;transition:color .17s,transform .17s;display:inline-block}.work-title:hover:after{color:var(--accent-hover);transform:translate(3px,-3px)}.work-desc{color:var(--paper-2);font-size:var(--fs-small)}.work-note{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;margin-top:6px;font-weight:700}.tags{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;flex-direction:column;gap:3px;font-weight:700;display:flex}.project-page:not(.project-page-byredo-gypsy-water) .media--tall,.project-page:not(.project-page-byredo-gypsy-water) .media--portrait,.project-page:not(.project-page-byredo-gypsy-water) .media--reference,.project-page:not(.project-page-byredo-gypsy-water) .media--square,.project-page .sheet .media{--ar:9 / 16}.project-page-byredo-gypsy-water .sheet-3,.project-page-wind-study .sheet-3{--detail-target-h:clamp(320px, 37vw, 665px);--detail-target-w-34:clamp(240px, 27.75vw, 499px);--detail-target-w-916:clamp(180px, 20.8vw, 374px);justify-content:center;align-items:flex-start;margin-inline:auto;display:flex}.project-page-byredo-gypsy-water .sheet-3 .media-block{flex:0 1 var(--detail-target-w-34);width:var(--detail-target-w-34)}.project-page-byredo-gypsy-water .sheet-3 .media{--ar:3 / 4}.project-page-wind-study .sheet-3 .media-block{flex:0 1 var(--detail-target-w-916);width:var(--detail-target-w-916)}.project-page-byredo-gypsy-water .band--sm,.project-page-wind-study .band,.project-page-character-consistency-motion .band--tall{--bh:clamp(320px, 37vw, 665px)}.project-page:not(.project-page-byredo-gypsy-water) .band .media,.project-page:not(.project-page-byredo-gypsy-water) .band .media-block>.media{aspect-ratio:9/16}@media (hover:hover){.work-media .media>img,.work-media .media>video{transition:opacity .3s}.work:hover .work-media .media>img,.work:hover .work-media .media>video{opacity:.82}.work:hover .work-media .media:hover>img,.work:hover .work-media .media:hover>video{opacity:1}}.capability-phrase{font-size:var(--fs-h2);letter-spacing:-.01em;font-weight:500}.capability-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(20px,2.4vw,44px);display:grid}.capability-list li{border-top:1px solid var(--hair);grid-template-columns:34px minmax(0,1fr);align-items:baseline;gap:6px;padding-block:12px;display:grid}.capability-list li:nth-child(-n+3){border-top-color:var(--line)}.capability-num{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);font-weight:700}.capability-name{font-size:var(--fs-h3);letter-spacing:-.01em;font-weight:400}.tools-grid{flex-wrap:wrap;align-items:baseline;gap:10px clamp(18px,2.2vw,40px);display:flex}.tools-grid li{font-size:var(--fs-h3)}.contact{margin-top:var(--section-gap);border-top:1px solid var(--line);padding-block:clamp(34px,4vw,62px) clamp(16px,2vw,26px)}.contact-inner{grid-template-columns:minmax(0,1fr) minmax(0,auto);align-items:end;gap:clamp(20px,3vw,60px);display:grid}.contact-headline{letter-spacing:-.03em;max-width:16ch;margin-top:8px;font-size:clamp(32px,4.8vw,86px);font-weight:500;line-height:1.02}.contact-links{flex-wrap:wrap;gap:clamp(16px,2.4vw,44px);display:flex}.contact-link{gap:2px;text-decoration:none;display:grid}.contact-link span:last-child{border-bottom:1px solid var(--line);font-size:var(--fs-h3);padding-bottom:2px;transition:border-color .16s,color .16s}.contact-link:hover span:last-child{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.contact-foot{border-top:1px solid var(--hair);color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-top:clamp(28px,3.4vw,52px);padding-top:12px;font-weight:700;display:flex}.contact-foot a{text-decoration:none}.contact-foot a:hover{color:var(--accent-hover)}.cs-hero{padding-block:clamp(22px,2.6vw,44px) clamp(18px,2vw,30px)}.cs-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:clamp(16px,2.4vw,48px);display:grid}.back-link{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;margin-bottom:clamp(22px,3vw,48px);font-weight:700;text-decoration:none;display:inline-block}.back-link:hover{color:var(--accent-hover)}.cs-title{max-width:18ch;font-size:var(--fs-h1);letter-spacing:-.03em;margin-top:8px;font-weight:500;line-height:1.02}.cs-flag{border:1px solid var(--line);color:var(--paper-2);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;margin-top:10px;padding:4px 9px;font-weight:700;display:inline-block}.cs-meta{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px clamp(16px,2vw,32px);margin-top:clamp(20px,2.4vw,36px);padding-top:10px;display:grid}.cs-meta dt{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;margin-bottom:3px;font-weight:700}.cs-meta dd{color:var(--paper-2);font-size:var(--fs-small)}.cs-arc{font-size:var(--fs-h3);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px;font-weight:500;display:flex}.cs-arc span{color:var(--muted)}.grid-2,.grid-3,.grid-6,.sheet{gap:var(--gutter);display:grid}.grid-2,.sheet-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3,.sheet-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-6,.sheet-6{grid-template-columns:repeat(6,minmax(0,1fr))}.band{--bh:clamp(190px, 21vw, 320px);align-items:flex-start;gap:var(--gutter);flex-wrap:wrap;display:flex}.band--sm{--bh:clamp(150px, 16vw, 240px)}.band--tall{--bh:clamp(230px, 26vw, 400px)}.band .media,.band .media-block>.media{width:auto;max-width:none;height:var(--bh);aspect-ratio:var(--ar,4 / 5)}.band-head{border-top:1px solid var(--line);align-items:baseline;gap:12px;margin-bottom:12px;padding-top:9px;display:flex}.band-head h3{font-size:var(--fs-h3);font-weight:600}.trio{grid-template-columns:minmax(140px,190px) minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(16px,2.2vw,40px);display:grid}.stack-head{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;margin-bottom:8px;font-weight:700}.two-col{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(18px,2.4vw,48px);display:grid}.spec-list li{border-top:1px solid var(--hair);grid-template-columns:minmax(130px,200px) minmax(0,1fr);gap:4px clamp(14px,1.8vw,28px);padding-block:10px;display:grid}.spec-list li:first-child{border-top-color:var(--line)}.spec-term{font-size:var(--fs-small);font-weight:700}.spec-desc{color:var(--paper-2);font-size:var(--fs-small)}.check-list li{border-top:1px solid var(--hair);color:var(--paper-2);font-size:var(--fs-small);padding-block:7px}.check-list li:first-child{border-top-color:var(--line)}.step-list{counter-reset:step;columns:2;column-gap:clamp(18px,2.4vw,48px)}.step-list li{border-top:1px solid var(--hair);break-inside:avoid;color:var(--paper-2);font-size:var(--fs-small);grid-template-columns:34px minmax(0,1fr);gap:6px;padding-block:10px;display:grid}.step-list li:first-child,.step-list li:nth-child(4){border-top-color:var(--line)}.step-list li:before{counter-increment:step;content:counter(step, decimal-leading-zero);color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);font-weight:700}.outcome{max-width:56ch;font-size:var(--fs-lead);letter-spacing:-.01em;line-height:1.4}.project-nav{margin-top:var(--section-gap);border-top:1px solid var(--line);padding-block:clamp(18px,2.2vw,32px)}.project-nav-inner{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.project-nav a{text-decoration:none}.project-nav .next{text-align:right;gap:3px;display:grid}.project-nav .next strong{border-bottom:1px solid var(--line);font-size:var(--fs-h3);padding-bottom:2px;font-weight:500}.project-nav .next:hover strong{border-bottom-color:var(--accent-hover);color:var(--accent-hover)}.project-nav .back{color:var(--muted);font-size:var(--fs-label);letter-spacing:var(--track);text-transform:uppercase;font-weight:700}.project-nav .back:hover{color:var(--accent-hover)}.only-narrow{display:none}@media (max-width:1100px){.work-bar{grid-template-columns:34px minmax(0,1fr)}.capability-list{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-list li:nth-child(3){border-top-color:var(--hair)}.trio{grid-template-columns:minmax(130px,170px) minmax(0,1fr)}.trio>:nth-child(3){grid-column:2}.sheet-6{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:900px){.hero-grid,.cs-hero-grid,.two-col{grid-template-columns:minmax(0,1fr)}.hero-media{justify-self:start;width:clamp(170px,42vw,260px)}.hero-copy{padding-right:0}.strip .media:nth-child(n+7){display:none}.band{--bh:clamp(160px, 24vw, 240px)}.trio{grid-template-columns:minmax(0,1fr)}.trio>:nth-child(3){grid-column:1}.trio .media{max-width:170px}}@media (max-width:700px){:root{--header-h:48px;--gutter:6px}.section-head{grid-template-columns:minmax(0,1fr)}.only-wide{display:none}.only-narrow{display:block}.work-media{flex-wrap:wrap;height:auto}.work-media .media,.work-media .media-block{flex:1 1 calc(50% - var(--gutter));height:auto}.work-media .media{aspect-ratio:9/16}.work:nth-child(2) .work-media .media{aspect-ratio:4/5}.work-media .wide{flex:100%}.work-media .wide.media{aspect-ratio:16/9}.work-title{white-space:normal}.work-copy-grid{grid-template-columns:minmax(0,1fr)}.tags{flex-flow:wrap;gap:4px 16px}.strip{flex-wrap:wrap;height:auto}.strip .media{flex:1 1 calc(25% - var(--gutter));aspect-ratio:1;height:auto}.strip .media:nth-child(n+5){display:none}.grid-6,.grid-3,.sheet-3{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-6{grid-template-columns:repeat(3,minmax(0,1fr))}.band{--bh:clamp(150px, 34vw, 210px)}.project-page-byredo-gypsy-water .sheet-3,.project-page-wind-study .sheet-3{justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.project-page-byredo-gypsy-water .sheet-3 .media-block{flex-basis:clamp(190px,56vw,280px);width:clamp(190px,56vw,280px)}.project-page-wind-study .sheet-3 .media-block{flex-basis:clamp(150px,42vw,220px);width:clamp(150px,42vw,220px)}.project-page-byredo-gypsy-water .band--sm,.project-page-wind-study .band,.project-page-character-consistency-motion .band--tall{--bh:clamp(260px, 62vw, 410px)}.capability-list{grid-template-columns:minmax(0,1fr)}.capability-list li:nth-child(2),.capability-list li:nth-child(3){border-top-color:var(--hair)}.spec-list li{grid-template-columns:minmax(0,1fr)}.project-nav-inner{flex-direction:column;align-items:flex-start}.project-nav .next{text-align:left}.contact-inner{grid-template-columns:minmax(0,1fr);align-items:start}}@media (max-width:480px){.hero-actions .btn{flex:100%}.cs-title{max-width:none}.sheet-6,.sheet-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}video[autoplay]{animation:none}}
