@font-face{font-family:Aminute;src:url(../fonts/Aminute.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
:root{--ink:#1e1e1e;--cream:#fffff0;--purple:#9326ff;--lav:#d9b8ff;--yellow:#ffff00;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*:before,*:after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:var(--ink);color:var(--ink);font-family:Aminute,"Trebuchet MS",sans-serif;font-synthesis:none;font-size:1.1rem;line-height:1.35}
a{color:inherit;text-decoration:none}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--ink);height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 26px}
header img{height:54px;width:54px;display:block}
.burger{background:none;border:0;width:44px;height:44px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:0}
.burger i{display:block;height:2px;background:var(--cream);transition:transform .25s,opacity .25s}
.burger[aria-expanded=true] i:nth-child(1){transform:translateY(12px) rotate(45deg)}.burger[aria-expanded=true] i:nth-child(2){opacity:0}
.burger[aria-expanded=true] i:nth-child(3){transform:translateY(-12px) rotate(-45deg)}
.burger:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
#menu{position:fixed;left:0;right:0;top:calc(112px + env(safe-area-inset-top,0px));z-index:9;background:var(--purple);padding:22px 36px 30px;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .45s cubic-bezier(.7,0,.2,1),visibility 0s .45s}
#menu.open{visibility:visible;clip-path:inset(0);transition:clip-path .45s cubic-bezier(.7,0,.2,1),visibility 0s}
#menu a{display:block;color:var(--cream);font-size:2.4rem;text-transform:uppercase;padding:8px 0;line-height:1.1;transition:color .2s,padding-left .3s cubic-bezier(.2,.7,.2,1)}
#menu a:after{content:"›";display:inline-block;font-size:1.6rem;margin-left:16px;vertical-align:middle;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
#menu.open a{animation:menu-in .45s cubic-bezier(.2,.7,.2,1) backwards}
#menu.open a:nth-child(1){animation-delay:.1s}#menu.open a:nth-child(2){animation-delay:.16s}#menu.open a:nth-child(3){animation-delay:.22s}#menu.open a:nth-child(4){animation-delay:.28s}#menu.open a:nth-child(5){animation-delay:.34s}
@keyframes menu-in{from{opacity:0;transform:translateY(18px)}}
#menu a:hover,#menu a:focus-visible{color:var(--yellow);padding-left:14px}
#menu a:hover:after,#menu a:focus-visible:after{transform:translateX(10px)}
.hero{padding:0 64px;height:335px;display:flex;align-items:flex-end}
.hero h1{margin:0;font-weight:400;font-size:clamp(4rem,10vw,8.2rem);line-height:1;padding-bottom:30px}
.page{background:var(--cream);min-height:780px}
.crumb{padding:18px 64px 0;font-size:1.25rem}
.crumb span{margin:0 6px}
.srv{display:grid;grid-template-columns:minmax(0,720px) 1fr;gap:60px;padding:62px 90px 108px}
.srv h2{margin:40px 0 18px;font-weight:400;font-size:3.2rem;line-height:1.1;background:linear-gradient(90deg,var(--purple) 15%,var(--lav) 85%);-webkit-background-clip:text;background-clip:text;color:transparent}
.srv h2:first-child{margin-top:0}
.srv p{margin:0;font-family:Helvetica,Arial,sans-serif;font-weight:400;font-size:1.35rem;line-height:1.3}
.swirl{align-self:center;justify-self:center;width:min(405px,100%);height:auto;display:block}
.about{padding:20px 64px 90px;font-family:Helvetica,Arial,sans-serif;font-size:1.65rem;line-height:1.6;max-width:1366px}
.about h2{font-size:2.4rem;margin:36px 0 0;font-weight:700;line-height:1.2}
.about p{margin:0}
.about .lead{font-size:2.3rem;line-height:1.3}
.about .lead b{font-weight:700}
.pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;margin-top:30px;font-size:1.3rem}
.pillars div{border:2px solid var(--ink);padding:22px;min-height:150px}
.vid{position:relative;height:720px;height:min(720px,calc(100svh - 112px - env(safe-area-inset-top,0px)));min-height:320px;background:#1e1e1e;overflow:hidden}.vid:after{content:"";position:absolute;inset:0;background:rgba(30,30,30,.35);pointer-events:none}.sl{position:absolute;inset:0;opacity:0;transition:opacity .8s}.sl.on{opacity:1}.sl video,.sl img{width:100%;height:100%;object-fit:cover;display:block}.sl.fit img{object-fit:contain}.dots{position:absolute;left:64px;bottom:28px;z-index:2;display:flex;gap:12px}.dots button{width:14px;height:14px;border-radius:50%;border:2px solid var(--cream);background:transparent;padding:0;cursor:pointer}.dots button[aria-current=true]{background:var(--cream)}.dots button:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}@media(max-width:900px){.dots{left:28px}}
.empty{padding:60px 64px;font-size:1.4rem;max-width:760px}
footer{background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1fr auto auto;gap:60px;padding:26px 33px 90px;min-height:480px}
footer .logo{width:112px;display:block;margin-bottom:26px}
footer nav a{display:block;text-transform:uppercase;font-size:.95rem;padding:7px 0;transition:color .2s,padding-left .3s cubic-bezier(.2,.7,.2,1)}
footer nav a:hover{color:var(--yellow);padding-left:8px}
.ct a.mail,.soc a,.crumb a{transition:color .2s}
.ct a.mail:hover,.soc a:hover{color:var(--yellow)}
.crumb a:hover{color:var(--purple)}
footer h3{margin:0 0 22px;font-weight:400;font-size:1.6rem;text-transform:uppercase}
.ct{width:285px;font-size:.78rem;line-height:1.3}
.ct u{display:block;font-size:1.05rem;margin-bottom:12px}
.ct .row{display:flex;gap:10px;align-items:center;margin:20px 0;font-size:1.05rem}
.ct a.mail{font-size:1.05rem}
.soc{display:flex;gap:18px}
svg{display:block}
.view{display:none}.view.on{display:block}
@media(max-width:900px){
 .srv{grid-template-columns:1fr;padding:40px 28px}.swirl{width:240px}
 .hero,.crumb,.about,.empty{padding-left:28px;padding-right:28px}
 footer{grid-template-columns:1fr;gap:34px}
 #menu a{font-size:1.9rem}
}
