:root{--paper:#f3f1eb;--paper-deep:#e7e4dc;--ink:#182327;--muted:#5f6a6c;--blue:#285f73;--blue-deep:#152f39;--line:#c9cac4;--white:#fcfbf7;--serif:"Newsreader",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}img{display:block;max-width:100%}::selection{background:var(--blue);color:var(--white)}.shell{width:min(100% - 64px,1280px);margin-inline:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:var(--ink);color:white;padding:.75rem 1rem}.skip-link:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease}.site-header.scrolled{background:color-mix(in srgb,var(--paper) 88%,transparent);border-color:var(--line);backdrop-filter:blur(14px)}.header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;gap:12px;align-items:center;text-decoration:none;font-weight:600;letter-spacing:-.03em}.brand-mark{width:43px;height:43px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:var(--blue-deep);color:var(--white);border-radius:50%;font-size:13px;line-height:43px;text-align:center}.brand-mark span:first-child{border-right:1px solid rgb(255 255 255/.25)}.brand-word{font-size:18px}.nav{display:flex;align-items:center;gap:30px;font-size:14px}.nav a{text-decoration:none;position:relative}.nav a:not(.nav-contact)::after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--ink);transition:right .25s ease}.nav a:hover::after{right:0}.nav-contact{border:1px solid var(--ink);border-radius:99px;padding:10px 16px;transition:color .2s ease,background .2s ease}.nav-contact:hover{color:var(--white);background:var(--ink)}
.hero{min-height:calc(100svh - 86px);padding:clamp(70px,9vw,130px) 0 70px;display:grid;grid-template-columns:1.1fr .72fr .2fr;gap:clamp(26px,5vw,76px);align-items:center}.eyebrow,.section-label,.project-type{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:600}.eyebrow{color:var(--blue);margin-bottom:32px}h1,h2,h3,p{text-wrap:pretty}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}h1{margin:0;font-size:clamp(68px,8.5vw,132px);line-height:.84}h1 em,h2 em{color:var(--blue);font-weight:400}.hero-intro{max-width:570px;margin:36px 0 0;color:var(--muted);font-size:clamp(17px,1.5vw,20px);line-height:1.55}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:36px;flex-wrap:wrap}.button{min-height:52px;display:inline-flex;align-items:center;gap:28px;padding:0 22px;text-decoration:none;border-radius:2px;font-size:14px;font-weight:500;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--blue-deep);color:var(--white)}.button-dark:hover{background:var(--blue)}.text-link,.inline-arrow{text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px;font-size:14px}.text-link span{display:inline-block;transition:transform .2s ease}.text-link:hover span{transform:translate(2px,2px)}.hero-portrait{margin:0;align-self:center}.image-frame{overflow:hidden;aspect-ratio:.79;background:#d1cec4}.image-frame img{width:100%;height:100%;object-fit:cover;object-position:52% center;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.hero-portrait:hover img{transform:scale(1.025)}.hero-portrait figcaption{color:var(--muted);font-size:11px;margin-top:10px}.hero-note{align-self:end;padding-bottom:12px}.hero-note span{font-family:var(--serif);color:var(--blue)}.hero-note p{font-size:11px;line-height:1.7;text-transform:uppercase;letter-spacing:.08em;writing-mode:vertical-rl;transform:rotate(180deg)}
.section-rule{border-top:1px solid var(--line)}.statement{padding:clamp(90px,12vw,170px) 0}.statement-grid,.experience-grid,.elsewhere-grid,.contact-grid{display:grid;grid-template-columns:.4fr 1.15fr;gap:8vw}.section-label{padding-top:10px;color:var(--blue)}.statement h2,.experience h2,.elsewhere h2,.contact h2{margin:0;font-size:clamp(44px,6vw,82px);line-height:1}.statement h2{max-width:940px}.statement-grid>div>p{max-width:690px;margin:36px 0 0 auto;color:var(--muted);font-size:19px}
.work{padding:96px 0 120px}.section-heading{display:flex;justify-content:space-between;padding-bottom:34px}.section-count{margin:0;color:var(--muted);font-size:12px}.project-list{border-top:1px solid var(--ink)}.project{min-height:286px;position:relative;display:grid;grid-template-columns:60px 1fr 280px;gap:40px;align-items:center;border-bottom:1px solid var(--line);padding:38px 0;overflow:hidden}.project::before{content:"";position:absolute;inset:0;background:var(--paper-deep);transform:translateX(-101%);transition:transform .5s cubic-bezier(.2,.7,.2,1)}.project:hover::before{transform:translateX(0)}.project>*:not(.project-hit){position:relative;z-index:1}.project-hit{position:absolute;inset:0;z-index:2}.project-copy a{position:relative;z-index:3}.project-number{align-self:start;font-family:var(--serif);color:var(--blue)}.project-type{color:var(--muted);margin-bottom:15px}.project h3{font-family:var(--serif);font-size:clamp(44px,5vw,72px);font-weight:400;letter-spacing:-.04em;line-height:1;margin:0 0 18px}.project-copy>p:not(.project-type){color:var(--muted);max-width:610px;margin:0 0 20px}.project-links{display:flex;gap:20px}.project-links a,.inline-arrow{font-size:13px}.project-symbol{width:230px;height:180px;justify-self:end;display:grid;place-items:center;transition:transform .45s cubic-bezier(.2,.7,.2,1)}.project:hover .project-symbol{transform:rotate(-2deg) scale(1.03)}.venture-symbol{background:var(--blue)}.die-face{width:88px;aspect-ratio:1;border:2px solid var(--white);border-radius:12px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:14px;transform:rotate(8deg)}.die-face i{width:9px;height:9px;border-radius:50%;background:var(--white);place-self:center}.die-face i:nth-child(1){grid-area:1/1}.die-face i:nth-child(2){grid-area:1/3}.die-face i:nth-child(3){grid-area:2/2}.die-face i:nth-child(4){grid-area:3/1}.die-face i:nth-child(5){grid-area:3/3}.runway-symbol{background:#cbd9d9;position:relative;overflow:hidden;grid-template-columns:repeat(3,1fr);padding:0 48px;gap:12px}.runway-symbol::before{content:"";position:absolute;width:78px;height:230px;border:2px solid var(--blue-deep);transform:perspective(180px) rotateX(50deg);top:26px}.runway-symbol span{height:2px;width:28px;background:var(--blue-deep);z-index:1}.startline-symbol{background:#ded7c7;position:relative}.startline-symbol span{font-family:var(--serif);font-size:110px;line-height:1;color:var(--blue-deep)}.startline-symbol i{position:absolute;width:58px;height:1px;background:var(--blue);bottom:30px;right:38px;transform:rotate(-45deg)}.startline-symbol i::after{content:"";position:absolute;right:0;top:-4px;border:solid var(--blue);border-width:1px 1px 0 0;width:8px;height:8px;transform:rotate(45deg)}
.experience{padding:clamp(90px,12vw,160px) 0}.experience h2{margin:26px 0 54px;max-width:520px}.portrait-small{margin:0;width:min(100%,360px);aspect-ratio:1;overflow:hidden;filter:grayscale(12%)}.portrait-small img{width:100%;height:100%;object-fit:cover}.timeline{border-top:1px solid var(--ink)}.timeline article{display:grid;grid-template-columns:56px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:34px 0 38px}.timeline-index{font-family:var(--serif);color:var(--blue)}.timeline h3{margin:0 0 10px;font-size:20px;font-weight:500}.timeline p{margin:0;color:var(--muted);max-width:620px}
.investing{background:var(--blue-deep);color:var(--white);padding:clamp(100px,13vw,180px) 0}.investing-inner{display:grid;grid-template-columns:1fr 1.8fr;column-gap:8vw}.section-label.light{color:#a8c1c8}.investing h2{font-size:clamp(62px,9vw,130px);line-height:.84;margin:0}.investing h2 em{color:#9fc6d2}.investing-inner>p:not(.section-label){grid-column:2;color:#b6c4c7;max-width:520px;margin:40px 0 32px;font-size:18px}.investing ul{grid-column:2;display:flex;list-style:none;gap:10px;padding:0;margin:0 0 38px;flex-wrap:wrap}.investing li{border:1px solid #60777e;border-radius:99px;padding:9px 16px;font-size:13px}.investing .button{grid-column:2;justify-self:start}.button-light{background:var(--white);color:var(--blue-deep)}
.elsewhere{padding:clamp(90px,11vw,150px) 0 0;overflow:hidden}.elsewhere-grid{grid-template-columns:.4fr 1fr .5fr;align-items:start}.elsewhere p:not(.section-label){color:var(--muted);max-width:650px;margin:30px 0;font-size:18px}.cat-line{min-height:400px;align-self:end;position:relative}.cat{position:absolute;left:50%;bottom:-22px;width:142px;height:240px;border-radius:50% 50% 10px 10px;background:#161b1b;transform:translateX(-50%)}.cat-ear{position:absolute;top:-24px;width:58px;height:62px;background:#161b1b;clip-path:polygon(0 0,100% 86%,0 100%)}.cat-ear.left{left:2px}.cat-ear.right{right:2px;transform:scaleX(-1)}.cat-face{position:absolute;width:82px;height:66px;top:28px;left:30px;background:var(--white);clip-path:polygon(12% 0,88% 0,77% 100%,50% 72%,23% 100%)}.cat-face i{position:absolute;top:18px;width:9px;height:9px;border-radius:50%;background:#708c38;box-shadow:inset 3px 0 #111}.cat-face i:first-child{left:19px}.cat-face i:nth-child(2){right:19px}.cat-face b{position:absolute;width:8px;height:5px;background:#d99d9d;left:37px;top:38px;border-radius:50%}.cat-chest{position:absolute;width:72px;height:130px;left:35px;top:91px;background:var(--white);clip-path:polygon(20% 0,80% 0,100% 100%,0 100%)}.cat-tail{position:absolute;width:85px;height:150px;border:18px solid #161b1b;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;right:-58px;bottom:20px;transform:rotate(20deg)}
.contact{padding:clamp(90px,12vw,160px) 0}.contact-actions{display:flex;flex-direction:column;border-top:1px solid var(--ink);margin-top:52px}.contact-actions a{display:flex;justify-content:space-between;gap:20px;padding:19px 2px;border-bottom:1px solid var(--line);text-decoration:none;font-size:clamp(16px,2vw,22px);transition:padding .2s ease,color .2s ease}.contact-actions a:hover{padding-left:12px;color:var(--blue)}
.site-footer{background:#dedbd2;padding:54px 0 34px;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:.8fr 1fr 1.2fr auto;gap:45px;align-items:start;font-size:12px;color:var(--muted)}.footer-brand .brand-mark{width:58px;height:58px;line-height:58px}.footer-grid address{font-style:normal}.company-meta{display:flex;flex-direction:column;gap:5px}.company-meta a{text-underline-offset:3px}.copyright{margin:0;align-self:end}
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}[data-reveal][data-delay="1"]{transition-delay:.1s}[data-reveal][data-delay="2"]{transition-delay:.2s}[data-reveal].is-visible{opacity:1;transform:translateY(0)}
.policy-page{padding:70px 0 120px}.policy-content{max-width:840px}.policy-content h1{font-size:clamp(54px,8vw,96px);margin:20px 0}.policy-content h2{font:400 32px/1.1 var(--serif);letter-spacing:-.03em;margin:56px 0 12px}.policy-content h3{margin:28px 0 8px;font-size:17px}.policy-content p{color:var(--muted);line-height:1.75}.policy-content a{color:var(--blue)}.policy-updated{font-size:13px}.policy-summary{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);margin:48px 0;padding:0 0 34px}.policy-summary h2{color:var(--blue)}
@media(max-width:980px){.hero{grid-template-columns:1fr .65fr}.hero-note{display:none}h1{font-size:clamp(64px,10vw,100px)}.project{grid-template-columns:45px 1fr 220px;gap:24px}.project-symbol{width:200px;height:155px}.statement-grid,.experience-grid,.elsewhere-grid,.contact-grid{grid-template-columns:.3fr 1fr;gap:6vw}.elsewhere-grid{grid-template-columns:.3fr 1fr}.cat-line{grid-column:2;min-height:280px}.footer-grid{grid-template-columns:.5fr 1fr 1.2fr}.copyright{grid-column:3}}
@media(max-width:700px){.shell{width:min(100% - 36px,1280px)}.header-inner{min-height:70px}.nav a:not(.nav-contact){display:none}.nav-contact{padding:8px 14px}.hero{min-height:auto;padding:56px 0 80px;grid-template-columns:1fr}h1{font-size:clamp(60px,20vw,90px)}.hero-intro{margin-top:28px}.hero-portrait{width:78%;justify-self:end;margin-top:20px}.statement-grid,.experience-grid,.elsewhere-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.statement h2,.experience h2,.elsewhere h2,.contact h2{font-size:clamp(43px,13vw,66px)}.statement-grid>div>p{margin-left:0}.work{padding:72px 0 90px}.project{grid-template-columns:28px 1fr;padding:34px 0;min-height:0}.project-symbol{grid-column:2;justify-self:stretch;width:100%;margin-top:12px}.project-copy>p:not(.project-type){font-size:14px}.project h3{font-size:46px}.portrait-small{width:68%}.investing-inner{grid-template-columns:1fr}.investing h2,.investing-inner>p:not(.section-label),.investing ul,.investing .button{grid-column:1}.investing h2{margin-top:32px;font-size:clamp(60px,18vw,94px)}.elsewhere-grid{grid-template-columns:1fr}.cat-line{grid-column:1;min-height:280px}.footer-grid{grid-template-columns:1fr 1fr;gap:34px 20px}.company-meta{grid-column:1/-1}.copyright{grid-column:2;grid-row:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}

/* Compatibility layout for the preserved Copenhagen Runway legal pages. */
.container{width:min(100% - 64px,1280px);margin-inline:auto}
.policy-content{margin-left:max(32px,calc((100vw - 1280px)/2))}
.footer-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:28px}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{color:var(--muted)}
@media(max-width:700px){.container{width:min(100% - 36px,1280px)}.policy-content{margin-inline:auto}.footer-inner{flex-direction:column}}

/* Final editorial details */
:root{--scroll-progress:0%}
body::before{content:"";position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.scroll-progress{position:fixed;top:0;left:0;z-index:80;width:var(--scroll-progress);height:2px;background:var(--blue);transition:width .08s linear}
.image-frame{clip-path:polygon(0 0,100% 0,100% 94%,92% 100%,0 100%)}
.cat-line{min-height:400px;align-self:end;position:relative;margin:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center}
.cat-line::before{content:"";position:absolute;width:250px;height:250px;border:1px solid var(--line);border-radius:50%;bottom:58px;left:50%;transform:translateX(-50%)}
.cat-line img{position:relative;width:min(100%,280px);max-height:390px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 22px 18px rgb(24 35 39/.10));transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.cat-line:hover img{transform:translateY(-5px) rotate(1deg)}
.cat-line figcaption{position:relative;margin-top:8px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.project h3,.contact-actions a{text-decoration-thickness:1px;text-underline-offset:5px}
.project:focus-within{outline:2px solid var(--blue);outline-offset:4px}
@media(max-width:700px){.cat-line{min-height:340px}.cat-line img{max-height:330px}.cat-line::before{width:210px;height:210px}}

/* Elegant standalone monogram and personal facts */
.brand-mark{width:46px;height:46px;display:grid;place-items:center;background:transparent;color:var(--blue-deep);border:1px solid color-mix(in srgb,var(--blue-deep) 50%,transparent);border-radius:50%;line-height:normal;transition:background .25s ease,color .25s ease,transform .25s ease}
.brand-mark svg{width:32px;height:32px;overflow:visible}.brand-mark path{fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.brand:hover .brand-mark{background:var(--blue-deep);color:var(--paper);transform:rotate(-4deg)}
.footer-brand .brand-mark{width:58px;height:58px;line-height:normal}.footer-brand .brand-mark svg{width:39px;height:39px}
.fact-list{margin:38px 0 32px;border-top:1px solid var(--ink)}
.fact-list p{display:grid;grid-template-columns:42px 1fr;gap:18px;margin:0!important;padding:18px 0;border-bottom:1px solid var(--line);font-size:16px!important;color:var(--ink)!important}
.fact-list span{font-family:var(--serif);color:var(--blue);font-size:14px}
.fact-list .fact-copy{font-family:var(--sans);color:var(--ink);font-size:16px}
.fact-copy a{display:inline-block;margin-left:8px;color:var(--blue);font-size:12px;text-underline-offset:4px;white-space:nowrap}
.fact-list .cat-fact{grid-template-columns:42px 1fr 86px;align-items:center;padding-block:10px}
.cat-fact>img{width:76px;height:92px;justify-self:end;object-fit:contain;filter:drop-shadow(0 8px 8px rgb(24 35 39/.09))}
@media(max-width:700px){.fact-copy a{display:block;margin:7px 0 0;white-space:normal}.fact-list .cat-fact{grid-template-columns:32px 1fr 62px;gap:12px}.cat-fact>img{width:58px;height:76px}}

/* Typographic DC ligature */
.brand-monogram{position:relative;display:block;width:54px;height:40px;color:var(--blue-deep);font-family:var(--serif);font-size:39px;font-weight:500;line-height:1;letter-spacing:-.08em}
.brand-monogram span{position:absolute;top:0;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.brand-monogram span:first-child{left:0}
.brand-monogram span:last-child{left:23px;color:var(--blue)}
.brand-monogram::after{content:"";position:absolute;left:1px;bottom:-3px;width:45px;height:1px;background:var(--blue-deep);transform-origin:left;transition:transform .3s ease}
.brand:hover .brand-monogram span:first-child{transform:translateX(-2px)}
.brand:hover .brand-monogram span:last-child{transform:translateX(2px)}
.brand:hover .brand-monogram::after{transform:scaleX(.58)}
.footer-brand .brand-monogram{font-size:47px;width:66px;height:48px}.footer-brand .brand-monogram span:last-child{left:28px}.footer-brand .brand-monogram::after{width:55px}
.portrait-casual{width:min(100%,420px);aspect-ratio:.82;overflow:visible}
.portrait-casual img{aspect-ratio:.82;object-fit:cover;object-position:52% center}
.portrait-casual figcaption{margin-top:9px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.cutout-frame{position:relative;aspect-ratio:.88;background:transparent;clip-path:none;overflow:visible}
.cutout-frame::before{content:"";position:absolute;z-index:-1;left:13%;right:8%;bottom:7%;height:56%;border-radius:50%;background:radial-gradient(ellipse at center,rgb(40 95 115/.09),transparent 70%);filter:blur(8px)}
.cutout-frame::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--blue-deep) 16% 84%,transparent)}
.cutout-frame img{position:absolute;z-index:1;left:-7%;bottom:1px;width:114%;height:auto;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 18px rgb(21 47 57/.10));transform-origin:center bottom}
.hero-portrait:hover .cutout-frame img{transform:translateY(-3px) scale(1.008)}
.venture-parent{grid-template-rows:auto auto;padding-bottom:58px}
.venture-parent::before{display:none}
.games-shelf{grid-column:2/4;margin-top:22px;padding-top:28px;border-top:1px solid var(--line)}
.games-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.games-heading span{font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.game-card{display:grid;grid-template-columns:1fr;background:var(--blue-deep);color:var(--white);text-decoration:none;overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.game-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgb(21 47 57/.17)}
.game-card>img{width:100%;height:auto;aspect-ratio:2.65/1;object-fit:cover;object-position:center 47%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.game-card:hover>img{transform:scale(1.025)}
.game-card-copy{display:grid;grid-template-columns:74px 1fr;gap:28px;padding:34px 38px 32px}
.game-card-copy>span{font-family:var(--serif);color:#9fc6d2}
.game-parent{margin:0 0 10px!important;color:#9fc6d2!important;font-size:10px!important;text-transform:uppercase;letter-spacing:.12em}
.game-card h4{font:400 clamp(36px,4vw,58px)/1 var(--serif);letter-spacing:-.035em;margin:0 0 16px}
.game-card p{max-width:590px;color:#b8c7ca;margin:0 0 26px;font-size:14px}
.game-card strong{font-size:12px;font-weight:500;border-bottom:1px solid #71878d;padding-bottom:4px}
.game-card:not(:has(>img)) .game-card-copy{padding-block:42px}
@media(max-width:700px){.games-shelf{grid-column:2}.games-heading{align-items:flex-start;gap:15px}.games-heading span{text-align:right}.game-card>img{aspect-ratio:1.65/1;object-position:center}.game-card-copy{grid-template-columns:1fr;gap:8px;padding:28px 22px}.game-card-copy>span{font-size:12px}.venture-parent{padding-bottom:40px}.hero-portrait{width:min(100%,360px);justify-self:center;margin-inline:auto}.cutout-frame{aspect-ratio:.92}.cutout-frame img{left:0;width:100%;bottom:1px}.cutout-frame::before{left:8%;right:8%}}
