:root{--paper:#f6f8fe;--ink:#0d1c33;--muted:#4e6383;--line:#bbceea;--green:#dfe9fc;--olive:#295fb5;--orange:#f98fbf;--dark:#163f7e;--font:'DM Sans','Noto Sans SC',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}img{max-width:100%;display:block}.container{width:min(1320px,calc(100% - 80px));margin-inline:auto}.skip-link{position:absolute;top:-60px;left:16px;background:var(--ink);color:white;padding:10px 16px;z-index:30}.skip-link:focus{top:10px}.site-header{position:relative;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:15px;white-space:nowrap}.brand-mark{font-size:27px;font-weight:700;letter-spacing:-.12em}.brand-mark span{color:var(--orange);padding-inline:3px}.brand-caption{font-size:10px;font-weight:700;letter-spacing:.16em;color:#666f67}.main-nav{display:flex;align-items:center;gap:38px;font-size:13px;font-weight:600}.main-nav>a:not(.nav-contact):hover{color:var(--olive)}.nav-contact{border:1px solid #8b9ec5;border-radius:100px;padding:12px 19px}.nav-contact span{margin-left:12px}.nav-contact:hover{background:var(--green)}.menu-button{display:none}.hero{min-height:760px;display:grid;grid-template-columns:1.05fr .95fr;column-gap:5%;position:relative;padding-top:100px;padding-bottom:95px}.hero-copy{position:relative;z-index:1;padding-top:52px}.hero-kicker,.eyebrow,.small-label,.card-category{font-size:11px;font-weight:700;letter-spacing:.14em}.hero-kicker{display:flex;align-items:center;gap:10px;color:#354669;letter-spacing:.07em}.live-dot{width:7px;height:7px;border-radius:50%;background:#4f6aa1;box-shadow:0 0 0 4px #becbe5}.hero h1{font-size:clamp(48px,5.2vw,84px);line-height:1.18;letter-spacing:-.085em;margin:29px 0 28px;font-weight:700;white-space:nowrap}.hero h1 .muted{color:#4b6494}.italic-accent{font-style:normal;color:#3f547c;position:relative}.italic-accent:after{content:'';position:absolute;left:7%;right:1%;bottom:-10px;height:12px;border-top:3px solid var(--orange);border-radius:50%;transform:rotate(-3deg)}.hero-description{max-width:500px;font-size:16px;line-height:1.95;color:#5e655e}.hero-actions{display:flex;align-items:center;gap:29px;margin-top:34px}.primary-button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;background:var(--dark);color:#fff;padding:17px 22px;border-radius:3px;font-size:13px;font-weight:600;transition:transform .2s,background .2s}.primary-button:hover{transform:translateY(-3px);background:#2a3954}.primary-button span{font-size:18px;font-weight:400}.subtle-link,.text-link{font-size:13px;font-weight:700;border-bottom:1px solid #5572aa;padding-bottom:7px}.subtle-link span,.text-link span{margin-left:8px}.subtle-link:hover,.text-link:hover{color:var(--olive)}.sample-note{font-size:11px;color:#8d938a;margin-top:34px}.hero-composition{height:536px;align-self:start;position:relative;overflow:hidden;background:#b6c5e2;border-radius:220px 220px 5px 5px}.composition-grid{position:absolute;inset:0;background-image:linear-gradient(#90a4c855 1px,transparent 1px),linear-gradient(90deg,#90a4c855 1px,transparent 1px);background-size:42px 42px;opacity:.42}.composition-sun{position:absolute;width:340px;height:340px;border-radius:50%;background:#f599c6;right:-45px;top:37px}.composition-arch{position:absolute;left:-90px;bottom:-104px;width:310px;height:460px;background:#5d7aae;border-radius:170px 170px 0 0;transform:rotate(-24deg)}.composition-card{position:absolute;top:95px;left:24%;width:58%;height:336px;background:#f2f5fa;box-shadow:20px 25px 0 #3b5076;transform:rotate(-8deg);padding:28px;display:flex;flex-direction:column;justify-content:space-between}.composition-card .small-label{color:#788579;font-size:9px}.composition-lines{font-size:clamp(46px,4vw,70px);line-height:.99;font-weight:700;letter-spacing:-.08em;color:#182131}.composition-lines em{font-style:normal;color:#ef69aa}.card-foot{font-size:10px;letter-spacing:.12em;color:#798177}.composition-spark{position:absolute;color:#e5ebf9;font-size:73px;right:29px;top:45px}.composition-bottom{position:absolute;bottom:24px;right:28px;font-size:10px;font-weight:700;letter-spacing:.14em;color:#222d43}.composition-bottom span{margin-left:10px}.hero-index{position:absolute;left:0;right:0;bottom:35px;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;color:#818981;font-size:10px;font-weight:700;letter-spacing:.12em}.section{padding:115px 0}.works-section{background:#e6eaf3}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:40px}.eyebrow{color:#4b6596;margin:0 0 20px}.section-heading h2,.about-copy h2,.contact-inner h2{font-size:clamp(42px,4.1vw,66px);letter-spacing:-.075em;line-height:1.2;margin:0}.heading-period{color:var(--orange)}.section-heading>p{max-width:310px;color:#7a8177;line-height:1.8;font-size:13px;margin:0 0 9px}.filter-row{display:flex;gap:8px;margin-bottom:26px;flex-wrap:wrap}.filter{border:1px solid #a4b3d1;background:transparent;border-radius:100px;padding:9px 17px;font-size:11px;color:#6c746a;font-weight:600}.filter:hover,.filter.active{color:#fff;background:var(--dark);border-color:var(--dark)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.project-card{display:block;min-width:0}.project-card[hidden]{display:none}.project-card-feature{grid-column:1/-1}.project-art{height:342px;position:relative;overflow:hidden;transition:filter .25s}.project-card:hover .project-art{filter:saturate(1.15)}.project-card-feature .project-art{height:460px}.art-atlas{background:radial-gradient(circle at 20% 17%,#94a6c8 0 12%,transparent 13%),linear-gradient(130deg,#6681b3,#bac5dc 54%,#7f94be)}.atlas-window{position:absolute;width:min(65%,720px);height:78%;left:18%;top:16%;background:#eff2f8;border:1px solid #b4c0d9;border-radius:12px;box-shadow:25px 28px 0 #41557f55;overflow:hidden}.window-dots{height:37px;border-bottom:1px solid #bcc9de;display:flex;gap:5px;align-items:center;padding-left:15px}.window-dots i{width:7px;height:7px;background:#aebcd7;border-radius:50%}.atlas-sidebar{position:absolute;top:37px;bottom:0;width:24%;border-right:1px solid #c1cce0;padding:30px 19px}.atlas-sidebar b{display:block;height:8px;background:#bdc8dd;margin-bottom:18px;width:80%;border-radius:9px}.atlas-sidebar b:nth-child(2){width:55%}.atlas-sidebar b:nth-child(3){width:67%}.atlas-map{position:absolute;left:24%;right:0;top:37px;bottom:0;background-image:linear-gradient(#c5cfe1 1px,transparent 1px),linear-gradient(90deg,#c5cfe1 1px,transparent 1px);background-size:40px 40px}.atlas-map span{position:absolute;width:82px;height:53px;border-radius:8px;background:#f6f8fc;border:1px solid #8b9ec5;box-shadow:0 5px 12px #34456620}.atlas-map span:nth-child(1){top:18%;left:17%}.atlas-map span:nth-child(2){top:47%;left:43%;background:#dee4f0}.atlas-map span:nth-child(3){top:21%;right:9%;background:#c0cde8}.atlas-map span:nth-child(4){bottom:11%;left:13%}.atlas-map span:nth-child(5){bottom:8%;right:5%}.atlas-label{position:absolute;left:29%;bottom:12px;font-size:9px;letter-spacing:.14em;color:#48608f;font-weight:700}.art-fieldnotes{background:#b7c5e1;display:grid;place-items:center}.art-fieldnotes:before{content:'';position:absolute;width:230px;height:230px;border-radius:50%;background:#eaa4c6;right:12%;top:-80px}.book-cover{position:relative;z-index:1;width:240px;height:286px;background:#1d2941;color:#bacae9;transform:rotate(-11deg);box-shadow:20px 20px 0 #627baf;padding:27px;display:flex;flex-direction:column;justify-content:space-between}.book-cover span{font-size:43px;line-height:.9;font-weight:700;letter-spacing:-.08em}.book-cover small{font-size:8px;letter-spacing:.12em;line-height:1.5}.book-shadow{position:absolute;width:240px;height:50px;border-radius:50%;background:#748cb988;bottom:14px;filter:blur(12px)}.art-tinytools{background:#abbfe4;display:grid;place-items:center}.art-tinytools:before,.art-tinytools:after{content:'';position:absolute;border:2px solid #ecf1f9;border-radius:50%;width:340px;height:340px}.art-tinytools:after{width:480px;height:480px}.tiny-window{position:relative;z-index:1;width:270px;height:252px;background:#f8f9fc;border-radius:17px;box-shadow:17px 19px 0 #6f88b7;padding:22px;text-align:center;transform:rotate(6deg)}.tiny-header{display:flex;justify-content:space-between;font-size:11px;color:#465d8a;font-weight:700}.tiny-header span{color:#5e7fbf}.tiny-clock{margin-top:26px;font-size:69px;letter-spacing:-.09em;font-weight:700;color:#20335a}.tiny-clock span{color:#7d96c7}.tiny-progress{height:8px;border-radius:8px;background:#dae2f3;margin:9px 15px 17px}.tiny-progress i{display:block;width:62%;height:100%;background:#7491c7;border-radius:8px}.tiny-caption{font-size:10px;color:#6f87b6}.project-info{display:flex;justify-content:space-between;gap:20px;padding:22px 0 12px}.card-category{color:#4d679a;font-size:10px}.project-info h3{font-size:21px;letter-spacing:-.04em;margin:8px 0 7px}.project-info p{font-size:12px;color:#7b8279;margin:0}.circle-arrow{flex:0 0 36px;width:36px;height:36px;border:1px solid #97a7ca;border-radius:50%;display:grid;place-items:center;font-size:19px;transition:background .2s,transform .2s}.project-card:hover .circle-arrow{background:var(--green);transform:translate(2px,-2px)}.journal-section{background:var(--paper)}.article-list{border-top:1px solid var(--line)}.article-row{display:grid;grid-template-columns:70px minmax(0,1fr) 100px 38px;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:35px 4px;transition:padding .2s,background .2s}.article-row:hover{padding-left:16px;background:#e4eaf2}.article-number{align-self:start;color:#6a84b4;font-size:12px}.article-main h3{font-size:24px;letter-spacing:-.045em;margin:9px 0 8px}.article-main p{font-size:12px;color:#7a8279;margin:0}.article-read{font-size:11px;color:#8c958a}.article-arrow{font-size:25px;font-weight:400;justify-self:end}.section-footnote{font-size:11px;color:#999f95;margin-top:18px}.about-section{background:#bdc8df;padding:115px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.about-visual{height:470px;position:relative;background:#93a5c9;overflow:hidden}.about-visual:before{content:'';position:absolute;width:340px;height:340px;border-radius:50%;border:80px solid #dee4f0;left:-100px;top:36px}.about-visual:after{content:'';position:absolute;width:220px;height:350px;background:#4b6596;border-radius:150px 150px 0 0;right:40px;bottom:-100px;transform:rotate(28deg)}.about-symbol{position:absolute;z-index:1;font-size:210px;line-height:1;color:#a7bff0;right:55px;top:50px;transform:rotate(12deg)}.about-visual-caption{position:absolute;z-index:2;left:28px;bottom:25px;color:#25324a;font-size:10px;font-weight:700;letter-spacing:.15em}.about-copy h2{margin-bottom:30px}.about-copy h2 span{color:#41557f}.about-copy>p:not(.eyebrow){max-width:490px;font-size:14px;color:#37496d;line-height:2;margin:0 0 16px}.about-copy .text-link{display:inline-block;margin-top:20px}.contact-section{background:#151d2b;color:#ebeef7;overflow:hidden}.contact-inner{min-height:492px;padding-top:102px;padding-bottom:95px;position:relative}.contact-inner .eyebrow{color:#8398c1}.contact-inner h2{font-size:clamp(42px,4.5vw,70px);position:relative;z-index:1}.contact-inner h2 span{color:#f17db5}.contact-inner>p:not(.eyebrow){font-size:13px;color:#9cadce;margin:25px 0}.contact-placeholder{display:inline-flex;align-items:center;gap:10px;border:1px solid #4f699b;padding:14px 20px;font-size:13px;color:#b6c3da}.contact-placeholder span{font-size:19px}.contact-decoration{position:absolute;font-size:390px;line-height:1;color:#243047;right:0;top:30px}.site-footer{background:#111722;color:#9aabcc}.footer-inner{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-footer .brand-mark{color:#ebeef7}.site-footer .brand-caption{color:#637eb0}.footer-inner p,.footer-inner>a:last-child{font-size:10px;letter-spacing:.04em}.footer-inner>a:last-child:hover{color:white}.detail-top{padding-top:70px;padding-bottom:72px}.back-link{font-size:12px;color:#445b88;font-weight:700}.back-link:hover{text-decoration:underline}.detail-meta{display:flex;gap:20px;color:#4b6596;font-size:11px;font-weight:700;letter-spacing:.08em;margin-top:75px}.detail-top h1{font-size:clamp(44px,6vw,86px);line-height:1.18;letter-spacing:-.075em;max-width:970px;margin:22px 0 27px}.detail-lede{font-size:18px;line-height:1.9;color:#697369;max-width:720px;margin:0}.detail-art{height:420px;position:relative;overflow:hidden;display:grid;place-items:center}.detail-art.art-atlas{background:linear-gradient(115deg,#5672aa,#bac6e0)}.detail-art.art-fieldnotes{background:#e6a8c5}.detail-art.art-tinytools{background:#8ba5d7}.detail-art:before{content:'';width:330px;height:330px;border:70px solid #d4baba66;border-radius:50%;transform:rotate(-30deg)}.detail-art .art-orbit{position:absolute;width:480px;height:480px;border:1px solid #d4baba99;border-radius:50%}.detail-art span{position:absolute;color:#fff;font-size:17px;letter-spacing:.24em;font-weight:700}.detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:42px;padding-bottom:42px;border-bottom:1px solid var(--line)}.detail-facts div{display:flex;flex-direction:column;gap:9px}.detail-facts span{font-size:11px;color:#929b90}.detail-facts strong{font-size:14px}.article-body{max-width:780px;padding-top:85px;padding-bottom:90px}.article-body section+section{margin-top:52px}.article-body h2{font-size:29px;letter-spacing:-.05em;margin:0 0 18px}.article-body p{font-size:16px;line-height:2.1;color:#59645a;margin:0}.detail-end{border-top:1px solid var(--line);padding-top:30px;padding-bottom:95px}.not-found{min-height:65vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.not-found h1{font-size:40px;letter-spacing:-.05em}.not-found .text-link{margin-top:20px}@media(max-width:1000px){.hero{min-height:690px;padding-top:60px}.hero-copy{padding-top:48px}.hero h1{font-size:clamp(45px,5.2vw,67px)}.hero-composition{height:480px}.composition-card{left:20%;width:65%}.composition-lines{font-size:55px}}@media(max-width:760px){.container{width:min(100% - 40px,580px)}.header-inner{height:70px}.brand-caption{display:none}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:transparent;width:40px;height:40px;padding:7px}.menu-button span{width:24px;height:2px;background:var(--ink)}.main-nav{display:none;position:absolute;left:0;right:0;top:70px;background:var(--paper);border-bottom:1px solid var(--line);padding:22px 20px 28px;flex-direction:column;align-items:stretch;gap:20px}.main-nav.open{display:flex}.nav-contact{align-self:flex-start}.hero{display:block;padding-top:48px;padding-bottom:90px;min-height:0}.hero-copy{padding-top:0}.hero-kicker{font-size:10px}.hero h1{font-size:clamp(40px,9vw,62px);white-space:normal;margin-top:22px}.hero-description{font-size:14px}.hero-actions{gap:24px}.hero-composition{margin-top:55px;height:400px;border-radius:180px 180px 4px 4px}.composition-card{height:280px;top:65px;width:57%;left:23%}.composition-lines{font-size:49px}.composition-sun{width:260px;height:260px}.composition-arch{height:360px;width:220px}.hero-index{bottom:26px}.section{padding:75px 0}.section-heading{align-items:start;display:block;margin-bottom:28px}.section-heading h2,.about-copy h2{font-size:45px}.section-heading>p{margin-top:14px}.project-grid{grid-template-columns:1fr;gap:30px}.project-card-feature{grid-column:auto}.project-art,.project-card-feature .project-art{height:300px}.atlas-window{width:74%;left:13%}.project-info h3{font-size:19px}.article-row{grid-template-columns:34px 1fr 22px;gap:10px;padding:28px 0}.article-main h3{font-size:19px}.article-read{display:none}.article-arrow{font-size:20px}.about-section{padding:75px 0}.about-grid{grid-template-columns:1fr;gap:44px}.about-visual{height:320px}.about-copy>p:not(.eyebrow){font-size:13px}.contact-inner{min-height:460px;padding-top:75px}.contact-inner h2{font-size:43px}.contact-decoration{font-size:220px;right:-55px;top:170px}.footer-inner{padding-block:25px;min-height:0;flex-wrap:wrap}.footer-inner p{width:100%;order:3;margin:0}.detail-top{padding-top:40px;padding-bottom:55px}.detail-meta{margin-top:60px}.detail-top h1{font-size:46px}.detail-lede{font-size:15px}.detail-art{height:280px}.detail-facts{grid-template-columns:1fr;gap:22px}.article-body{padding-top:65px;padding-bottom:70px}.article-body h2{font-size:24px}.article-body p{font-size:15px}}@media(max-width:390px){.hero h1{font-size:37px}.hero-actions{gap:16px}.primary-button{gap:20px;padding:15px}.hero-composition{height:330px}.composition-card{height:225px;top:55px;padding:18px}.composition-lines{font-size:40px}.composition-spark{font-size:50px}.project-art,.project-card-feature .project-art{height:250px}.book-cover{width:190px;height:230px}.book-cover span{font-size:34px}.tiny-window{transform:scale(.8) rotate(6deg)}.contact-inner h2{font-size:37px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Keep the footer at the viewport bottom when content is short. */
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}body>main{flex:1 0 auto}body>.site-header,body>.site-footer{flex-shrink:0}
