:root{--ink:#10100f;--paper:#f2f0ea;--wine:#7f2432;--line:#10100f40}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.topbar{height:92px;padding:18px 2.2vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:absolute;inset:0 0 auto;z-index:10}.brand img{width:min(360px,30vw);display:block}.topbar nav{display:flex;gap:28px;font-size:13px;text-transform:uppercase}.menu-cta{justify-self:end;border-bottom:1px solid;padding-bottom:4px;font-size:13px;text-transform:uppercase}.hero{min-height:100svh;padding:142px 2.2vw 32px;position:relative;overflow:hidden;display:flex;flex-direction:column}.eyebrow,.section-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase}.hero-title{margin-top:auto;font-size:clamp(58px,10.2vw,155px);line-height:.78;letter-spacing:-.075em;font-weight:800;display:flex;flex-direction:column;z-index:2}.hero-title .indent{margin-left:14vw}.hero-title .accent{color:var(--wine);margin-left:3vw}.hero-mark{position:absolute;width:clamp(190px,28vw,430px);right:6vw;top:23%;transform:rotate(8deg)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:32px;padding-left:55%;text-transform:uppercase;font-size:13px;line-height:1.45}.round-link{width:58px;height:58px;border:1px solid;border-radius:50%;display:grid;place-items:center;font-size:24px}.ticker{overflow:hidden;background:var(--wine);color:white;padding:15px 0 12px;font-weight:700;font-size:21px;white-space:nowrap;transform:rotate(-1.2deg) scale(1.02)}.ticker div{width:max-content;animation:marquee 22s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.manifesto{padding:150px 4vw 110px;min-height:90vh}.manifesto h2{font-size:clamp(48px,7.4vw,112px);line-height:.95;letter-spacing:-.055em;font-weight:500;margin:90px 0 0 12vw;max-width:1100px}.manifesto-note{margin:90px 4vw 0 auto;max-width:420px;display:grid;grid-template-columns:130px 1fr;gap:30px;border-top:1px solid;padding-top:12px;font-size:13px;line-height:1.5}.manifesto-note p{margin:0}.services{background:var(--ink);color:var(--paper);padding:100px 3vw 120px}.services-head{display:flex;justify-content:space-between;margin-bottom:90px}.services-head>p:last-child{font-size:28px;line-height:1.05;margin:0;text-align:right}.service{display:grid;grid-template-columns:80px 1fr 360px 40px;align-items:center;gap:20px;border-top:1px solid #f2f0ea4d;padding:31px 0;transition:.3s}.service:last-child{border-bottom:1px solid #f2f0ea4d}.service:hover{color:#d9a6ae;padding-left:18px}.service h3{font-size:clamp(36px,5.3vw,82px);line-height:.9;letter-spacing:-.05em;font-weight:500;margin:0}.service p{max-width:310px;font-size:14px;line-height:1.55}.service b{font-size:30px;font-weight:400}.editorial{display:grid;grid-template-columns:1.05fr .9fr 1.05fr;min-height:720px}.poster{padding:38px;min-height:650px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line)}.poster small{font-size:12px;letter-spacing:.12em}.poster strong{font-size:clamp(90px,12vw,180px);line-height:.8;letter-spacing:-.08em}.poster p{font-size:20px;max-width:260px;line-height:1.1}.poster-two{background:var(--wine);color:white;justify-content:center;align-items:center;position:relative}.poster-two img{width:85%;filter:brightness(0) invert(1)}.poster-two small{position:absolute;left:30px;bottom:30px}.poster-three{background:#d7d0c5}.contact{background:var(--wine);color:white;min-height:92vh;padding:80px 3vw 30px;display:flex;flex-direction:column}.contact h2{margin:auto 0 70px;font-size:clamp(52px,8.2vw,125px);letter-spacing:-.065em;line-height:.9;font-weight:500}.contact h2 em{font-family:Georgia,serif;font-weight:400}.contact>a{font-size:clamp(27px,4vw,60px);border-block:1px solid #ffffffa6;padding:24px 0 20px;display:flex;justify-content:space-between}.contact-foot{margin-top:55px;display:flex;justify-content:space-between;font-size:12px;text-transform:uppercase}
@media(max-width:800px){.topbar{height:74px;grid-template-columns:1fr auto}.brand img{width:220px}.topbar nav{display:none}.menu-cta{font-size:10px}.hero{padding-top:112px}.hero-title{margin-top:36vh;font-size:16vw;line-height:.83}.hero-title .indent{margin-left:0}.hero-mark{width:220px;right:-30px;top:18%}.hero-bottom{padding-left:0}.manifesto{padding:100px 6vw 80px}.manifesto h2{margin:70px 0 0;font-size:13vw}.manifesto-note{margin-top:70px;grid-template-columns:1fr}.services{padding:70px 5vw}.service{grid-template-columns:42px 1fr 24px}.service p{grid-column:2/4;margin:0 0 10px}.editorial{grid-template-columns:1fr}.poster{min-height:72vh;border-right:0;border-bottom:1px solid var(--line)}.contact{min-height:100svh;padding:65px 5vw 25px}.contact-foot{flex-wrap:wrap;gap:15px 30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}}
.portal-lines{position:absolute;right:5vw;top:19%;width:31vw;height:43vh}.portal-lines i{position:absolute;inset:0;border:2px solid var(--wine);border-bottom:0;border-radius:50% 50% 0 0}.portal-lines i:nth-child(2){inset:38px}.portal-lines i:nth-child(3){inset:76px}.portal-word{font-size:clamp(82px,10vw,150px);font-weight:800;line-height:.68;letter-spacing:-.09em}.portal-word em{font-family:Georgia,serif;font-weight:400}@media(max-width:800px){.portal-lines{width:58vw;height:28vh;right:-8vw;top:18%}.portal-lines i:nth-child(2){inset:24px}.portal-lines i:nth-child(3){inset:48px}}
.brand{display:block;width:min(360px,30vw);height:58px;overflow:hidden}.brand img{width:100%;height:100%;object-fit:contain;object-position:left center}@media(max-width:800px){.brand{width:220px;height:44px}}
.poster-two{background:#171615}.poster-two img{width:85%;filter:none;object-fit:contain}
.hero-mark{width:clamp(180px,19vw,290px);right:3vw;top:13%;transform:none;z-index:1}.hero-title{position:relative;z-index:2}@media(max-width:800px){.hero-mark{width:145px;right:2vw;top:13%}}
.hero-title{font-size:clamp(56px,9.35vw,142px)}.hero-mark{width:clamp(220px,24vw,360px);right:2vw;top:18%}@media(max-width:800px){.hero-title{font-size:14.7vw}.hero-mark{width:180px;right:-1vw;top:20%}}
.hero-mark{right:4.5vw;top:32%;z-index:3}@media(max-width:800px){.hero-mark{right:-2vw;top:30%;z-index:3}}
.hero-note{transform:translateY(-28px)}@media(max-width:800px){.hero-note{transform:translateY(-16px)}}
.ticker div{display:flex;width:max-content}.ticker span{display:block;flex:none;padding-right:1.2em}
.manifesto{padding-top:82px;padding-bottom:72px;min-height:auto}.manifesto h2{margin-top:48px}.manifesto-note{margin-top:52px}@media(max-width:800px){.manifesto{padding-top:64px;padding-bottom:58px}.manifesto h2{margin-top:42px}.manifesto-note{margin-top:44px}}
.manifesto{padding-top:48px;padding-bottom:48px}.manifesto h2{font-size:clamp(42px,6.6vw,98px);line-height:1;letter-spacing:-.025em;margin-top:28px}.manifesto-note{margin-top:30px}@media(max-width:800px){.manifesto{padding-top:42px;padding-bottom:42px}.manifesto h2{font-size:11.5vw;line-height:1.02;letter-spacing:-.018em;margin-top:26px}.manifesto-note{margin-top:28px}}
.hero-title{letter-spacing:-.032em}.manifesto h2{letter-spacing:-.008em}.service h3{letter-spacing:-.018em}.poster strong{letter-spacing:-.032em}.contact h2{letter-spacing:-.025em}.contact>a{letter-spacing:-.01em}@media(max-width:800px){.hero-title{letter-spacing:-.022em}.manifesto h2{letter-spacing:0}.service h3{letter-spacing:-.01em}.contact h2{letter-spacing:-.015em}}
.formats{background:#d7d0c5;padding:90px 3vw 110px}.formats-intro{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-bottom:90px}.formats-intro h2{font-size:clamp(38px,5vw,76px);line-height:1.02;letter-spacing:-.015em;font-weight:500;margin:0}.formats article{display:grid;grid-template-columns:70px 1.2fr 1fr 180px;gap:28px;align-items:center;padding:30px 0;border-top:1px solid var(--ink)}.formats article:last-child{border-bottom:1px solid var(--ink)}.formats article>span{font-size:12px}.formats h3{font-size:clamp(30px,4vw,58px);font-weight:500;line-height:.95;letter-spacing:-.012em;margin:0}.formats article p{max-width:420px;font-size:15px;line-height:1.5}.formats article b{font-size:22px;text-align:right;letter-spacing:.04em}@media(max-width:800px){.formats{padding:62px 5vw 70px}.formats-intro{grid-template-columns:1fr;margin-bottom:56px}.formats-intro h2{font-size:10.5vw}.formats article{grid-template-columns:36px 1fr}.formats article p,.formats article b{grid-column:2}.formats article b{text-align:left;font-size:16px}.formats h3{font-size:10vw}}
.service{grid-template-columns:70px minmax(300px,1.25fr) minmax(260px,.8fr) 110px}.service b{font-size:13px;letter-spacing:.08em;text-align:right}@media(max-width:800px){.service{grid-template-columns:38px 1fr}.service h3,.service p,.service b{grid-column:2}.service b{text-align:left;margin-top:8px}}
.contact-ticker{background:var(--paper);color:var(--wine);border-block:2px solid var(--wine);transform:rotate(1deg) scale(1.02);font-size:clamp(22px,2.2vw,36px);padding:19px 0 16px}.contact-ticker div{animation-direction:reverse;animation-duration:30s}
.contact-links{display:flex;gap:36px;margin-top:32px;font-size:clamp(18px,2vw,28px)}.contact-links a{border-bottom:1px solid transparent;padding-bottom:4px}.contact-links a:hover{border-color:currentColor}@media(max-width:800px){.contact-links{flex-direction:column;gap:12px;margin-top:26px}}
.legal-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:34px;font-size:12px;text-transform:uppercase}.legal-links a{border-bottom:1px solid #ffffff80;padding-bottom:3px}.legal-links a:hover{border-color:white}@media(max-width:800px){.legal-links{flex-direction:column;align-items:flex-start;gap:10px;margin-top:28px;font-size:11px}}
.hero-title{font-size:clamp(52px,8.15vw,124px);line-height:.88;letter-spacing:-.015em}@media(max-width:800px){.hero-title{font-size:13.2vw;line-height:.9;letter-spacing:-.01em}}
.hero{min-height:calc(100svh - 62px);padding-bottom:18px}.hero-mark{width:clamp(270px,28vw,430px);right:8vw;top:34%;z-index:1}.hero-title{z-index:2}.hero-bottom{margin-top:20px}@media(max-width:800px){.hero{min-height:calc(100svh - 58px);padding-bottom:14px}.hero-mark{width:215px;right:-2vw;top:32%;z-index:1}.hero-title{z-index:2}}
.topbar{position:fixed;height:68px;padding-top:10px;padding-bottom:10px;background:rgba(242,240,234,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.brand{width:min(290px,25vw);height:46px}.hero{padding-top:104px}@media(max-width:800px){.topbar{height:58px;padding-top:7px;padding-bottom:7px}.brand{width:190px;height:38px}.hero{padding-top:88px}}
.to-top{position:fixed;right:22px;bottom:22px;width:52px;height:52px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;background:rgba(242,240,234,.92);color:var(--ink);font-size:25px;z-index:20;transition:.2s}.to-top:hover{background:var(--wine);border-color:var(--wine);color:white;transform:translateY(-3px)}@media(max-width:800px){.to-top{right:14px;bottom:14px;width:44px;height:44px;font-size:21px}}
.hero-mark{right:11vw}@media(max-width:800px){.hero-mark{right:3vw}}
.contact h2{font-size:clamp(42px,6.4vw,96px);line-height:.98;letter-spacing:-.012em}@media(max-width:800px){.contact h2{font-size:11.5vw;line-height:1;letter-spacing:-.008em}}
.services{padding-top:58px;padding-bottom:68px}.services-head{margin-bottom:42px}.services-head>p:last-child{font-size:23px}.service{padding:20px 0}.service h3{font-size:clamp(32px,4vw,60px);line-height:.96}.service p{margin:8px 0}@media(max-width:800px){.services{padding-top:48px;padding-bottom:54px}.services-head{margin-bottom:34px}.services-head>p:last-child{font-size:19px}.service{padding:18px 0}.service h3{font-size:9vw}}
.contact>a{background:var(--paper);color:var(--wine);border:0;padding:22px 28px;align-items:center;transition:.25s}.contact>a span{width:54px;height:54px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:28px}.contact>a:hover{background:var(--ink);color:white;padding-left:38px}@media(max-width:800px){.contact>a{padding:18px 20px;font-size:8vw}.contact>a span{width:42px;height:42px;font-size:22px}.contact>a:hover{padding-left:24px}}
.contact>a{border-radius:0 76px 0 76px;padding-left:46px;padding-right:34px;box-shadow:12px 12px 0 rgba(16,16,15,.16)}.contact>a:hover{transform:translate(-4px,-4px);box-shadow:16px 16px 0 rgba(16,16,15,.2)}@media(max-width:800px){.contact>a{border-radius:0 48px 0 48px;padding-left:25px;padding-right:18px;box-shadow:7px 7px 0 rgba(16,16,15,.16)}}
.round-link,.to-top,.contact>a span{border-radius:0;clip-path:polygon(11px 0,100% 0,100% calc(100% - 11px),calc(100% - 11px) 100%,0 100%,0 11px)}.round-link,.to-top{background:var(--paper)}.round-link:hover,.to-top:hover{clip-path:polygon(0 0,100% 0,100% 100%,100% 100%,0 100%,0 0)}.contact>a span{background:var(--wine);color:white;border:0}.contact>a:hover span{background:white;color:var(--ink)}
.round-link,.to-top,.contact>a span{clip-path:none;border:0;border-radius:0;position:relative;background-color:transparent;background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-position:left top,right top,left bottom,right bottom,left top,left bottom,right top,right bottom;background-size:30% 1px,30% 1px,30% 1px,30% 1px,1px 30%,1px 30%,1px 30%,1px 30%;background-repeat:no-repeat;transition:background-size .3s ease,color .2s,transform .2s}.round-link:hover,.to-top:hover,.contact>a:hover span{clip-path:none;background-color:transparent;background-size:50% 1px,50% 1px,50% 1px,50% 1px,1px 50%,1px 50%,1px 50%,1px 50%;color:currentColor}.contact>a span{color:var(--wine)}.contact>a:hover span{color:white}
.to-top{background-color:var(--paper);color:var(--wine);box-shadow:0 5px 18px rgba(16,16,15,.18)}.to-top:hover{background-color:var(--wine);color:white}
.to-top{position:fixed;right:22px;bottom:22px;z-index:20}@media(max-width:800px){.to-top{right:14px;bottom:14px}}
.footer-top{padding-bottom:3px;border-bottom:1px solid transparent;transition:border-color .2s}.footer-top:hover{border-color:currentColor}
.brand img{clip-path:none;transform:none}
html,body{max-width:100%;overflow-x:hidden}
@media(max-width:800px){.hero{min-height:auto}.hero-mark{width:130px;top:96px;right:4vw}.hero-title{margin-top:42px;align-items:flex-start;text-align:left;font-size:10.6vw;line-height:.96}.hero-title .indent,.hero-title .accent{margin-left:0}}
@media(max-width:800px){.manifesto{padding:32px 6vw 34px}.manifesto h2{font-size:7.8vw;line-height:1.08;margin-top:20px}.manifesto-note{margin-top:22px;gap:12px}}
@media(max-width:800px){.services-head{align-items:flex-start;gap:18px}.services-head .section-label{white-space:nowrap;flex:none;line-height:1.2}}
@media(max-width:800px){.services-head{align-items:center;gap:10px}.services-head>p:last-child{font-size:10.5px;line-height:1.2;white-space:nowrap;text-align:right}.services-head>p:last-child br{display:none}}
@media(max-width:800px){.services-head{display:block;position:relative;min-height:64px;margin-bottom:26px}.services-head .section-label{position:absolute;left:0;top:0}.services-head>p:last-child{position:absolute;right:0;bottom:0;font-size:14px;line-height:1.15;white-space:normal;text-align:right}.services-head>p:last-child br{display:block}}
@media(max-width:800px){.service:nth-child(2) h3{font-size:7.8vw;white-space:nowrap}}
@media(max-width:800px){.contact h2{font-size:9vw;line-height:1.06;letter-spacing:0;margin-bottom:42px}}
@media(max-width:800px){.contact-foot .footer-top{margin-left:auto;text-align:right}}
.legal-bottom{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line)}.legal-bottom .legal-date{margin:0}.legal-top{margin-left:auto;font-size:12px;text-transform:uppercase;border-bottom:1px solid;padding-bottom:3px;white-space:nowrap}.legal-top:hover{color:var(--wine)}
:root{--wine:#002354}
.service:hover{color:#7fa7da}
.partners{padding:46px 0 40px;border-bottom:1px solid var(--line);--partner-gap:clamp(20px,2.5vw,44px)}.partners-head{display:flex;align-items:baseline;justify-content:space-between;gap:30px;margin:0 3vw 24px}.partners-head h2{margin:0;font-size:28px;line-height:1;font-weight:500;letter-spacing:-.01em}.partners-list{overflow:hidden}.partners-track{display:flex;width:max-content;animation:partners-marquee 34s linear infinite}.partners-group{display:flex;align-items:center;gap:var(--partner-gap);padding-right:var(--partner-gap)}.partner{width:clamp(105px,9.5vw,155px);height:94px;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.partner img{display:block;width:auto;height:auto;max-width:100%;max-height:68px;object-fit:contain;object-position:center;transition:transform .25s ease,opacity .25s ease}.partner:hover img{transform:translateY(-4px);opacity:.78}@keyframes partners-marquee{to{transform:translateX(-50%)}}@media(max-width:800px){.partners{padding:34px 0 38px;--partner-gap:34px}.partners-head{margin:0 5vw 28px}.partners-head h2{font-size:22px}.partners-track{animation-duration:28s}.partner{width:clamp(140px,calc(45vw - 17px),180px);height:82px}.partner img{max-width:88%;max-height:59px}}@media(prefers-reduced-motion:reduce){.partners-track{animation:none}}
.partner:has(img[src*="09-orkestr-klassika"]){height:112px}.partner img[src*="09-orkestr-klassika"]{max-height:108px}@media(max-width:800px){.partner:has(img[src*="09-orkestr-klassika"]){height:100px}.partner img[src*="09-orkestr-klassika"]{max-height:94px}}
.service{position:relative}.service-anchor{position:absolute;inset:0;z-index:2}.service:has(.service-anchor){cursor:pointer}.service:has(.service-anchor):focus-within{outline:2px solid #7fa7da;outline-offset:5px}.projects{padding:76px 3vw 100px;background:var(--paper)}.projects-head{display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:start;margin-bottom:52px}.projects-head h2{margin:0;font-size:clamp(42px,6vw,88px);line-height:.92;font-weight:500;letter-spacing:-.025em}.projects-head div>p{max-width:520px;margin:20px 0 0;font-size:15px;line-height:1.5}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.project-card{margin:0;overflow:hidden}.project-card img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .45s ease}.project-card:hover img{transform:scale(1.025)}.project-card figcaption{display:flex;justify-content:space-between;padding:10px 2px 0;font-size:11px;letter-spacing:.08em;text-transform:uppercase}@media(max-width:800px){.projects{padding:52px 5vw 64px}.projects-head{grid-template-columns:1fr;gap:20px;margin-bottom:34px}.projects-head h2{font-size:11vw}.projects-head div>p{margin-top:14px}.project-grid{grid-template-columns:1fr;gap:28px}.project-card figcaption{padding-top:9px}}
@media(min-width:801px) and (max-width:1100px) and (orientation:portrait){.hero{min-height:auto;padding:104px 3vw 24px}.hero-mark{width:230px;top:250px;right:9vw}.hero-title{margin-top:300px;font-size:8.6vw;line-height:.9}.hero-bottom{margin-top:28px;padding-left:52%}}
.projects-page{min-height:100svh;background:var(--paper)}.projects-topbar{background:rgba(242,240,234,.96)}.projects-intro{padding:150px 3vw 72px;border-bottom:1px solid var(--line)}.projects-intro h1{margin:36px 0 20px;font-size:clamp(74px,13vw,190px);line-height:.76;letter-spacing:-.06em;text-transform:uppercase}.projects-intro>p:last-child{max-width:440px;margin:0 0 0 auto;font-size:16px;line-height:1.5}.projects-footer{display:flex;justify-content:space-between;padding:30px 3vw 34px;border-top:1px solid var(--line);font-size:12px;text-transform:uppercase}.projects-footer a{border-bottom:1px solid;padding-bottom:3px}@media(max-width:800px){.projects-intro{padding:112px 5vw 50px}.projects-intro h1{margin-top:30px;font-size:20vw}.projects-intro>p:last-child{margin-left:0;font-size:14px}.projects-footer{padding:24px 5vw 28px}}
.projects-page main{padding-top:129px}.project-nav{position:fixed;top:68px;left:0;right:0;z-index:11;display:flex;flex-wrap:wrap;gap:10px 22px;min-height:61px;padding:22px 3vw;border-bottom:1px solid var(--line);background:rgba(242,240,234,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:12px;text-transform:uppercase}.project-nav a{border-bottom:1px solid;padding-bottom:3px}.project-category{padding:72px 3vw 88px;border-bottom:1px solid var(--line);scroll-margin-top:139px}.project-category[hidden]{display:none}.project-category-head{display:grid;grid-template-columns:1fr 2fr;align-items:end;gap:30px;margin-bottom:34px}.project-category-head .section-label{text-align:left}.project-category h2{margin:0;font-size:clamp(30px,3vw,44px);line-height:.95;font-weight:500;letter-spacing:-.025em;text-align:right}.project-category .project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.project-card{background:#e8e5dd}.project-card img{aspect-ratio:4/3;object-fit:contain}.project-card figcaption{display:none!important}@media(max-width:1100px){.project-category h2{font-size:24px}}@media(max-width:800px){.projects-page main{padding-top:140px}.project-nav{top:58px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;min-height:82px;padding:18px 5vw}.project-nav a{width:max-content;max-width:100%}.project-category{padding:42px 5vw 54px;scroll-margin-top:150px}.project-category-head{grid-template-columns:90px minmax(0,1fr);gap:12px;margin-bottom:25px}.project-category-head .section-label{white-space:nowrap;margin:0}.project-category h2{font-size:18px;line-height:1;white-space:nowrap}.project-category .project-grid{grid-template-columns:1fr 1fr;gap:8px}.project-card img{aspect-ratio:4/3;object-fit:contain}}
.legal-page{min-height:100svh;padding:110px 5vw 70px;background:var(--paper)}.legal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}.legal-header img{width:min(290px,55vw)}.legal-header a:last-child{font-size:12px;text-transform:uppercase;border-bottom:1px solid}.legal-content{max-width:920px;margin:70px auto 0}.legal-content h1{font-size:clamp(38px,6vw,76px);line-height:.95;font-weight:500;letter-spacing:-.025em;margin:0 0 50px}.legal-content h2{font-size:21px;margin:34px 0 12px}.legal-content p,.legal-content li{font-size:15px;line-height:1.65}.legal-content ul{padding-left:22px}.legal-date{margin-top:48px;color:#555}@media(max-width:800px){.legal-page{padding:82px 5vw 50px}.legal-header img{width:185px}.legal-content{margin-top:44px}.legal-content h1{font-size:10vw;margin-bottom:34px}.legal-content h2{font-size:18px}}
.hero-mark{width:clamp(210px,20vw,340px);right:1.5vw}@media(max-width:800px){.hero-mark{width:130px;right:4vw}}
