:root{--ink:#09090b;--paper:#f5f3ee;--red:#a82b75;--blue:#43358f;--gold:#d99336;--line:rgba(255,255,255,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#fff;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}.noise{position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.035;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='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.site-header{position:fixed;z-index:15;top:0;left:0;width:100%;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);background:rgba(9,9,11,.55)}.brand{display:flex;align-items:center;gap:12px;font-size:.8rem;font-weight:800;letter-spacing:.18em}.brand-mark{display:grid;place-items:center;width:42px;height:42px;background:var(--red);font-size:1.2rem;letter-spacing:-.08em}.site-header nav{display:flex;align-items:center;gap:30px;font-size:.82rem;font-weight:700;letter-spacing:.08em}.nav-cta{border:1px solid rgba(255,255,255,.7);padding:11px 18px;border-radius:99px}.menu{display:none;background:none;border:0}.hero{min-height:100svh;position:relative;overflow:hidden;display:flex;align-items:center;padding:120px 6vw 70px;background:radial-gradient(circle at 78% 48%,#3a0b18 0,transparent 27%),linear-gradient(125deg,#09090b 55%,#17080d)}.hero-copy{position:relative;z-index:3}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.3em;color:#c8c8cc}.hero h1{font-size:clamp(4.3rem,10vw,9.5rem);line-height:.78;letter-spacing:-.075em;margin:28px 0 42px;text-transform:uppercase}.hero h1 em{font-family:Georgia,serif;font-weight:400;text-transform:none;color:var(--red);white-space:nowrap}.hero-actions{display:flex;gap:14px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 22px;border-radius:99px;font-size:.85rem;font-weight:800}.button.primary{background:var(--paper);color:var(--ink)}.button.ghost{border:1px solid #666}.kinetic-type{position:absolute;right:-2vw;top:22%;height:56%;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-4deg);opacity:.13}.kinetic-type span{font-size:clamp(5rem,10vw,10rem);font-weight:900;line-height:.7;letter-spacing:-.08em;-webkit-text-stroke:1px #fff;color:transparent}.hero-orbit{position:absolute;border:1px solid rgba(255,48,79,.45);border-radius:50%;right:7%;top:23%;animation:spin 18s linear infinite}.orbit-one{width:34vw;height:34vw}.orbit-two{width:24vw;height:24vw;right:12%;top:29%;animation-direction:reverse}.hero-orbit:after{content:"";position:absolute;width:13px;height:13px;border-radius:50%;background:var(--red);top:15%;left:8%;box-shadow:0 0 30px var(--red)}@keyframes spin{to{transform:rotate(360deg)}}.scroll-note{position:absolute;bottom:30px;right:5vw;font-size:.67rem;letter-spacing:.18em;color:#aaa;display:flex;gap:11px;align-items:center}.scroll-note span{width:42px;height:1px;background:#aaa}.marquee{background:var(--red);color:var(--ink);overflow:hidden;padding:19px 0;font-size:1.05rem;font-weight:900;letter-spacing:.05em;white-space:nowrap}.marquee-track{display:inline-flex;gap:28px;align-items:center;animation:marquee 25s linear infinite}.marquee i{font-style:normal}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:110px 6vw}.section-no{font-size:.68rem;letter-spacing:.25em;color:#8e8e94;border-top:1px solid #333;padding-top:16px;margin-bottom:70px}.intro{background:var(--paper);color:var(--ink)}.intro .section-no{border-color:#bbb;color:#626268}.intro-grid{display:grid;grid-template-columns:1.5fr .75fr;gap:9vw}.intro h2,.section-head h2,.program h2,.contact h2{font-size:clamp(3.2rem,7vw,7.7rem);line-height:.92;letter-spacing:-.065em;margin:0}.intro h2 span{color:var(--red);font-family:Georgia,serif;font-style:italic;font-weight:400}.intro-copy{font-size:1.1rem;line-height:1.65;padding-top:14px;color:#39393c}.intro-copy p+ p{font-weight:800;color:var(--ink);margin-top:28px}.stats{margin-top:100px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #aaa}.stats div{padding:30px 20px 0 0;border-right:1px solid #ccc}.stats strong{display:block;font-size:clamp(2.6rem,5vw,5rem);letter-spacing:-.06em}.stats span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:#606065}.projects{background:#0d0d10}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:80px}.section-head .section-no{margin-bottom:35px}.section-head p{width:320px;color:#a1a1a7;line-height:1.6}.project-stack{display:grid;gap:24px}.project-card{min-height:520px;position:sticky;top:105px;display:grid;grid-template-columns:.7fr .9fr 1.1fr;align-items:end;padding:32px;color:#fff;overflow:hidden}.project-card.red{background:var(--red)}.project-card.blue{background:var(--blue);top:125px}.project-card.gold{background:var(--gold);top:145px;color:var(--ink)}.project-card h3{font-size:clamp(4rem,8vw,8rem);line-height:.77;letter-spacing:-.075em;margin:0 0 28px}.project-card p{max-width:380px;line-height:1.55;margin:0}.project-meta{position:absolute;top:30px;left:32px;right:32px;display:flex;justify-content:space-between;font-size:.68rem;font-weight:800;letter-spacing:.2em}.project-visual{position:relative;align-self:center;justify-self:center;width:270px;height:270px;border:2px solid currentColor;border-radius:50%;display:grid;place-items:center;animation:float 4s ease-in-out infinite}.project-visual .case{font-size:7rem}.project-visual .ring{position:absolute;width:120%;height:50%;border:1px solid currentColor;border-radius:50%;transform:rotate(-25deg)}.clock span{position:absolute;font-family:Georgia,serif;font-size:2rem}.clock span:nth-child(1){left:12px}.clock span:nth-child(2){top:8px}.clock span:nth-child(3){right:12px}.globe span{font-size:6rem;font-weight:900;letter-spacing:-.12em}@keyframes float{50%{transform:translateY(-14px) rotate(3deg)}}.program{background:var(--paper);color:var(--ink)}.program .section-no{border-color:#aaa;color:#626268}.program-title{margin-bottom:90px}.program h2 i{font-family:Georgia,serif;font-weight:400;color:var(--blue)}.services{border-top:1px solid #aaa}.services article{display:grid;grid-template-columns:70px 1.2fr 1fr 40px;align-items:center;padding:30px 0;border-bottom:1px solid #bbb;transition:.25s}.services article:hover{padding-left:16px;background:#ece9e2}.services span{font-size:.7rem}.services h3{font-size:clamp(1.4rem,2.5vw,2.4rem);margin:0}.services p{color:#555;line-height:1.5}.services b{font-size:1.5rem}.manifesto{min-height:84vh;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:var(--blue)}.manifesto-line{font-size:clamp(4rem,11vw,12rem);font-weight:900;letter-spacing:-.08em;line-height:.84;white-space:nowrap}.manifesto-line.right{text-align:right}.manifesto-line span{font-family:Georgia,serif;font-weight:400;font-style:italic;color:transparent;-webkit-text-stroke:1px white}.manifesto-center{position:absolute;inset:0;display:grid;place-items:center;font-size:22rem;font-weight:900;opacity:.1;transform:rotate(-12deg)}.contact{background:var(--ink);padding-top:140px}.contact h2{font-size:clamp(4.2rem,10vw,10rem);margin:30px 0 70px}.contact h2 em{font-family:Georgia,serif;font-weight:400;color:var(--red)}.contact-link{display:flex;justify-content:space-between;align-items:center;padding:28px 0;border-top:1px solid #555;border-bottom:1px solid #555;font-size:clamp(1.2rem,3vw,2.5rem)}.contact-bottom{display:flex;justify-content:space-between;margin-top:70px;color:#aaa;line-height:1.6}.contact-bottom div{display:flex;gap:25px}footer{padding:25px 4vw;border-top:1px solid #333;display:flex;justify-content:space-between;font-size:.68rem;letter-spacing:.15em;color:#888}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.site-header{height:72px}.site-header nav{position:absolute;top:72px;left:0;right:0;background:#0b0b0d;display:none;flex-direction:column;align-items:flex-start;padding:30px 5vw}.site-header nav.open{display:flex}.menu{display:block}.menu span{display:block;width:27px;height:2px;background:#fff;margin:6px}.hero{padding-left:5vw}.hero h1{font-size:clamp(3.7rem,17vw,6rem)}.hero-orbit{width:80vw;height:80vw;right:-38%;top:29%}.orbit-two{width:60vw;height:60vw;right:-28%;top:36%}.hero-actions{flex-direction:column;align-items:flex-start}.kinetic-type{display:none}.section{padding:80px 5vw}.section-no{margin-bottom:45px}.intro-grid,.project-card{grid-template-columns:1fr}.intro-copy{padding-top:40px}.stats{grid-template-columns:1fr 1fr}.stats div{min-height:130px}.section-head{display:block}.section-head p{width:auto;margin-top:30px}.project-card{min-height:690px;align-content:end}.project-visual{position:absolute;top:100px;right:-45px;width:230px;height:230px;opacity:.55}.project-card h3{font-size:4.5rem}.services article{grid-template-columns:40px 1fr 28px;gap:8px}.services article p{grid-column:2/4;margin-bottom:0}.contact-bottom{display:block}.contact-bottom div{margin-top:35px}.manifesto-center{font-size:13rem}footer{gap:20px}.brand span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* TT Dance Company brand system */
.brand{height:70px;gap:0}
.brand img{width:104px;height:64px;object-fit:contain}
.brand-mark{display:none}
.hero{background:radial-gradient(circle at 78% 48%,#321358 0,transparent 29%),linear-gradient(125deg,#09090b 55%,#190b1b)}
.hero-logo{position:absolute;right:5vw;top:18%;width:min(38vw,560px);height:68%;object-fit:contain;opacity:.17;filter:drop-shadow(0 0 40px rgba(168,43,117,.35))}
.structure{background:#151018}
.structure-head{display:grid;grid-template-columns:1.4fr .6fr;gap:8vw;align-items:end;margin-bottom:70px}
.structure-head h2{font-size:clamp(3rem,6.5vw,7rem);line-height:.93;letter-spacing:-.06em;margin:0}
.structure-head h2 em{font-family:Georgia,serif;font-weight:400;color:#c33b91}
.structure-head p{color:#b6acb6;line-height:1.65}
.structure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.structure-card{min-height:390px;border:1px solid #4b394b;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(150deg,rgba(255,255,255,.045),transparent)}
.structure-card.primary-card{background:linear-gradient(145deg,#a82b75,#43358f);border:0}
.structure-card span{font-size:.7rem;font-weight:800;letter-spacing:.2em;margin-bottom:auto;color:#c9bdc8}
.structure-card.primary-card span{color:#fff}
.structure-card h3{font-size:clamp(1.8rem,3vw,3.2rem);line-height:.98;letter-spacing:-.04em;margin:30px 0 18px}
.structure-card p{color:#bfb4be;line-height:1.55;margin:0}
.structure-card.primary-card p{color:#fff}
.founder{position:relative;background:#f5f3ee;color:#09090b;overflow:hidden}
.founder .section-no{border-color:#bbb;color:#626268}
.founder-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:stretch}
.founder-signature{position:relative;min-height:680px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#251437,#a82b75 52%,#43358f);overflow:hidden}
.founder-photo{margin:0}
.founder-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 47%}
.founder-photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,9,11,.04) 45%,rgba(23,8,26,.86) 100%),linear-gradient(115deg,rgba(168,43,117,.12),transparent 55%)}
.founder-initials{position:relative;z-index:1;color:#fff;font-size:clamp(8rem,17vw,17rem);font-weight:900;letter-spacing:-.14em;transform:translateX(-.07em)}
.founder-years{position:absolute;z-index:1;left:28px;bottom:28px;color:#fff;font-size:.67rem;font-weight:800;letter-spacing:.2em}
.founder-content{padding:35px 0}
.founder-role{font-size:.7rem;font-weight:800;letter-spacing:.22em;color:#7c2870}
.founder h2{font-size:clamp(4rem,8vw,8.5rem);line-height:.78;letter-spacing:-.075em;margin:38px 0 45px;text-transform:uppercase}
.founder h2 em{font-family:Georgia,serif;font-weight:400;text-transform:none;color:#a82b75}
.founder-lead{font-size:clamp(1.35rem,2.2vw,2.15rem)!important;line-height:1.28!important;color:#18131a!important;letter-spacing:-.025em}
.founder-content>p{max-width:760px;font-size:1.05rem;line-height:1.7;color:#4a444a}
.founder-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid #aaa}
.founder-facts div{padding:22px 16px 0 0;border-right:1px solid #bbb}
.founder-facts strong,.founder-facts span{display:block}
.founder-facts strong{font-size:1.35rem;color:#812662}
.founder-facts span{margin-top:8px;font-size:.7rem;line-height:1.4;text-transform:uppercase;letter-spacing:.1em;color:#666}
@media(max-width:800px){
  .brand{height:58px}.brand img{width:86px;height:54px}
  .hero-logo{right:-25%;top:21%;width:90vw;height:56%;opacity:.13}
  .structure-head,.structure-grid{grid-template-columns:1fr}
  .structure-grid{gap:12px}.structure-card{min-height:320px}
  .founder-layout{grid-template-columns:1fr}.founder-signature{min-height:500px}.founder-photo img{object-position:center 48%}.founder-content{padding-top:25px}
  .founder-facts{grid-template-columns:1fr}.founder-facts div{padding:18px 0;border-right:0;border-bottom:1px solid #ccc}
}
