/* Costello: fluid forms, fractured order, and a little room to breathe. */
:root{
  --ink:#21152c;--muted:#66556f;--soft:#eee3ef;--white:#fffdf8;
  --violet:var(--navy);--gold:var(--accent);--light:var(--paper);
  --deep:color-mix(in srgb,var(--navy) 42%,#150c21);
  --label:color-mix(in srgb,var(--navy) 82%,#21152c);
  --line:color-mix(in srgb,var(--navy) 20%,transparent);
  --depth-shadow:0 24px 60px #2d103d15,0 4px 12px #2d103d0b;
}
body{background:var(--paper);color:var(--ink)}
a,button{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid var(--violet);outline-offset:5px}
.site-footer :focus-visible,.journal-band :focus-visible,.bottom-cta :focus-visible{outline-color:var(--gold)}
::selection{background:var(--gold);color:#24102e}
.top-rule{background:var(--gold);height:5px}
.site-header{height:88px;padding-inline:4.5vw;background:color-mix(in srgb,var(--paper) 92%,transparent);border-bottom:1px solid var(--line);box-shadow:0 5px 30px #26113209}
.brand{gap:10px}.brand-mark{width:56px;height:56px;border:0;background:transparent;overflow:hidden;border-radius:50%;flex-shrink:0}
.brand-mark img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.brand-name{color:var(--violet);letter-spacing:.17em;font-size:14px}
.brand-name small{color:#68536f;font-size:6.5px;letter-spacing:.12em}
.desktop-nav{gap:clamp(11px,1.2vw,21px)}.desktop-nav a{color:#46334f;font-size:9px;letter-spacing:.07em}
.desktop-nav a.active,.desktop-nav a:hover{color:var(--violet)}
.desktop-nav a:after{background:var(--violet);height:3px;border-radius:3px}
.command-launch{border-color:var(--line);border-radius:20px;background:#ffffff55;color:var(--violet)}
.command-launch kbd{color:#68536f}.command-launch:hover{background:var(--violet);color:var(--gold)}
.owner-pill{color:var(--violet);border-color:var(--violet);border-radius:18px}
.mobile-nav{background:var(--paper);border-color:var(--line)}.mobile-nav a{color:var(--violet)}
.hero{grid-template-columns:1.02fr .98fr;background:var(--paper);color:var(--ink);min-height:740px;overflow:hidden}
.hero-copy{background:none;padding:78px 4vw 35px 6vw;z-index:2}
.hero .eyebrow{color:var(--violet);font-size:9px;font-weight:700;letter-spacing:.17em}
.gold-line{background:var(--violet);width:32px}
.hero-index{color:#75647c;font-size:8px;margin-block:28px 20px;line-height:1.8}
.index-separator{color:var(--violet)}
.hero h1{color:var(--violet);font-size:clamp(54px,5.65vw,92px);line-height:1.02;font-weight:500;letter-spacing:-.065em;max-width:11.7ch;margin-bottom:25px;text-wrap:balance}
.hero-deck{color:#594761;font-size:15px;line-height:1.85;max-width:445px}
.hero-cta{flex-wrap:wrap;gap:22px;margin-top:14px}
.hero .text-link{color:var(--violet);font-size:9px;letter-spacing:.05em}
.btn{border-radius:10px 3px 15px 3px;min-height:53px;letter-spacing:.07em;font-size:10px}
.btn-gold{color:#251131;background:var(--gold);box-shadow:4px 5px 0 color-mix(in srgb,var(--violet) 25%,transparent)}
.btn-gold:hover{background:color-mix(in srgb,var(--gold) 75%,#fff);box-shadow:7px 9px 0 color-mix(in srgb,var(--violet) 20%,transparent)}
.hero .btn-gold{background:var(--violet);color:var(--white);box-shadow:5px 6px 0 var(--gold)}
.hero .btn-gold:hover{background:var(--deep);box-shadow:7px 9px 0 var(--gold)}
.btn-outline{border-color:var(--gold);color:var(--paper);background:transparent}
.btn-outline-dark{border-color:var(--violet);color:var(--violet)}
.text-link.dark{color:var(--violet)}
.hero-bottom{color:#6f5c76;margin-top:auto;padding-top:40px;font-size:8px;letter-spacing:.09em}
.identity-art{background:var(--violet);border:0;isolation:isolate;min-height:740px;overflow:hidden;border-radius:45% 0 0 7% / 18% 0 0 12%;perspective:1100px}
.identity-art:before{width:540px;aspect-ratio:1;left:auto;right:-45%;top:28%;border:65px solid var(--gold);border-radius:50%;box-shadow:none;opacity:.9;animation:none;z-index:-1}
.identity-art:after{inset:0;background:linear-gradient(145deg,#ffffff0a,transparent 45%,#16032240);pointer-events:none;z-index:-1}
.identity-stage{position:absolute;inset:100px 7% 128px;display:grid;place-items:center;transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),35px);transition:transform .65s var(--ease);z-index:2}
.emblem-plinth{width:100%;max-width:500px;aspect-ratio:1;overflow:hidden;background:#fff6e8;border:9px solid #fff6e8;border-radius:40% 24% 37% 20% / 29% 42% 22% 38%;box-shadow:18px 28px 0 #21033833,0 40px 70px #19002344,inset 0 0 0 1px #ffffff80;transform:rotate(-7deg);animation:emblem-breathe 9s ease-in-out infinite}
.identity-emblem{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transform:rotate(7deg) scale(.96)}
.identity-stage .hero-photo{width:100%;height:100%;object-fit:cover;filter:none;position:static}
.depth-orbit{position:absolute;border-radius:50%;pointer-events:none}
.orbit-back{width:480px;aspect-ratio:1;left:-110px;top:90px;border:1px solid #f6d3ff66;transform:rotate(-23deg) scaleX(.77);box-shadow:0 0 0 26px #ffffff05,0 0 0 52px #ffffff04;z-index:0}
.orbit-front{width:280px;aspect-ratio:1;right:-120px;bottom:50px;border:33px solid var(--gold);box-shadow:0 20px 30px #21033830;z-index:3;transform:rotate(30deg) scaleX(.62)}
.hero-art-top{left:22%;right:7%;top:48px;gap:20px;color:#efddf5;font-size:8px;letter-spacing:.1em;line-height:1.8}
.hero-art-top>span:last-child{text-align:right;max-width:145px}
.hero-art-caption{left:11%;right:12%;bottom:46px}
.hero-art-caption>span{color:var(--gold);font-size:8px;letter-spacing:.17em}
.hero-art-caption>div{color:var(--paper);font-size:clamp(22px,2.15vw,34px);font-style:italic;font-weight:400;margin-top:10px;max-width:330px}
.art-corner{right:30px;bottom:40px;color:var(--gold);font-size:34px}
@keyframes emblem-breathe{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-13px) rotate(-4deg)}}
.manifesto-strip{position:relative;z-index:3;background:var(--deep);color:var(--paper);border:0;box-shadow:0 12px 35px #250e3020;padding-block:27px}
.manifesto-strip span:first-child{color:var(--gold);font-size:9px}.manifesto-strip p{font-size:15px;font-weight:400;line-height:1.65}.manifesto-icon{color:var(--gold);animation:none}
.identity-thread{display:flex;justify-content:space-between;gap:24px;padding:19px 5.5vw;color:var(--violet);border-bottom:1px solid var(--line);font-family:"DM Mono",monospace;font-size:8px;letter-spacing:.08em;background:color-mix(in srgb,var(--gold) 16%,var(--paper))}
.identity-thread>span:last-child{opacity:.65}
.section{position:relative}.overline{color:var(--label)}
.section-heading{border-color:var(--line)}
.section-heading h2,.inner-hero h1,.about-content h2,.newsletter-feature-content h2{color:var(--violet);font-weight:500;letter-spacing:-.045em}
.section-heading h2{font-size:clamp(40px,4.4vw,70px)}
.gold-period{color:var(--violet)}
.work-card,.entry-card{border:1px solid #e6d7e8;border-bottom:1px solid #d5bddb;background:#fffdf8;border-radius:24px 6px 24px 6px;box-shadow:0 6px 0 #e8d9e733,0 16px 35px #33113d08;padding:14px 14px 24px;transition:translate .4s var(--ease),box-shadow .4s var(--ease),border-color .4s}
.work-card:nth-child(2){margin-top:28px}.work-card:nth-child(3){margin-top:56px}
.work-card:hover,.entry-card:hover{translate:0 -8px;box-shadow:0 9px 0 #dec6e533,0 30px 50px #33113d18;border-color:#bc91cc}
.work-visual,.entry-image{border-radius:15px 3px 17px 3px;overflow:hidden}
.work-abstract,.work-card:nth-child(2n) .work-abstract,.work-card:nth-child(3n) .work-abstract{background:var(--violet);color:var(--gold)}
.work-card:nth-child(2n) .work-abstract{background:var(--gold);color:var(--violet)}
.work-card:nth-child(3n) .work-abstract{background:var(--deep);color:var(--gold)}
.work-abstract:before{content:"";position:absolute;inset:20% -25% -40% 25%;border:45px solid currentColor;opacity:.16;border-radius:45% 55% 30% 70%;transform:rotate(-25deg)}
.abstract-glyph{color:inherit;position:relative;z-index:1;text-shadow:8px 13px 0 #17021d22;font-variant-emoji:text}
.abstract-lines{opacity:.18;transform:rotate(15deg)}
.work-arrow{background:var(--paper);color:var(--violet);border-radius:50%;box-shadow:0 5px 12px #1d022d20}
.work-number{color:var(--paper);mix-blend-mode:difference}
.work-meta,.entry-meta,.entry-tags{color:var(--violet)}
.work-card h3,.entry-card h2{color:var(--ink);font-weight:500}.work-card p,.entry-card p{color:#66556d}
.entry-image.no-image{background:var(--violet)}.entry-image.no-image>span{color:var(--gold)}
.journal-band{position:relative;isolation:isolate;background:var(--deep);color:var(--paper);overflow:hidden;border-radius:8vw 0 0 0;margin-top:30px;box-shadow:0 -15px 0 color-mix(in srgb,var(--violet) 13%,var(--paper))}
.journal-band:before{content:"";position:absolute;z-index:-1;left:-150px;bottom:-220px;width:600px;height:600px;border:85px solid #b659d50e;border-radius:40% 60% 50% 50%;transform:rotate(-25deg)}
.journal-intro h2{font-weight:400;letter-spacing:-.04em}.journal-intro h2 em{color:var(--gold)}
.journal-intro p,.note-row p{color:#dbcbe2}.note-kind,.journal-note-bottom,.note-placeholder span,.note-placeholder small{color:#c5a8d1}
.note-placeholder{background:#ffffff04;border:1px solid #ab78bd66;border-radius:28px 5px 28px 5px;box-shadow:16px 18px 0 #0e011924}
.note-arrow,.note-num{color:var(--gold)}.note-row{border-color:#ffffff25}
.discipline-grid{gap:20px;border:0}.discipline{border:1px solid #ddcce1;border-radius:38px 8px 38px 8px;background:#fffdf8;box-shadow:var(--depth-shadow)}
.discipline:nth-child(2){border-radius:8px 38px 8px 38px}.discipline h3{color:var(--violet);font-weight:500}
.discipline p{color:#66556d}.discipline-glyph,.discipline-arrow,.discipline-no{color:var(--violet)}
.discipline:hover{background:var(--violet)}.discipline:hover h3,.discipline:hover p{color:var(--paper)}
.discipline:hover .discipline-glyph,.discipline:hover .discipline-arrow,.discipline:hover .discipline-no{color:var(--gold)}
.about-section{position:relative;isolation:isolate;background:color-mix(in srgb,var(--violet) 7%,var(--paper));border:0;overflow:hidden;border-radius:0 8vw 0 0}
.about-section:before{content:"";position:absolute;z-index:-1;width:400px;height:400px;right:-230px;top:-230px;border:70px solid var(--gold);border-radius:50%;opacity:.45}
.about-content p{color:#58445f}.about-chips span{color:var(--violet);background:#fffdf8;border-color:#d4bcde;border-radius:20px;box-shadow:0 3px 8px #31123d06}
.decorative-initial{width:min(100%,280px);height:auto;line-height:1;transform:rotate(-10deg);border-radius:35% 20% 40% 25%;overflow:hidden;box-shadow:14px 18px 0 #52117b0b;margin:25px 0}
.decorative-initial img{width:100%;mix-blend-mode:multiply}.about-vertical{color:#745d80}
.newsletter-feature{background:var(--gold);border:0;position:relative;box-shadow:0 18px 45px #32123d15}
.newsletter-feature-content p,.newsletter-fine{color:#493344}.newsletter-feature .btn-gold{background:var(--violet);color:var(--paper);box-shadow:5px 6px 0 #6b368f30}
.newsletter-ornament{background:var(--violet);border:0;border-radius:45% 0 0 5%;isolation:isolate}
.newsletter-ornament:before{content:"";position:absolute;z-index:-1;width:320px;height:320px;border:1px solid #ffffff30;border-radius:50%;box-shadow:0 0 0 35px #ffffff04,0 0 0 70px #ffffff03}
.newsletter-seal{width:245px;height:245px;border:0;border-radius:40% 25% 35% 20%;overflow:hidden;transform:rotate(12deg);box-shadow:18px 20px 0 #21033830;background:#fff6e8;display:block}
.newsletter-seal img{width:100%;height:100%;mix-blend-mode:multiply;transform:rotate(-12deg) scale(.94)}
.newsletter-ornament>span{color:var(--paper);font-size:8px;letter-spacing:.13em;margin-top:30px}
.bottom-cta{background:var(--deep);position:relative;isolation:isolate;overflow:hidden}
.bottom-cta h2{font-weight:400;letter-spacing:-.04em}.bottom-cta p{color:#d8c7df}
.bottom-cta:before{content:"";position:absolute;z-index:-1;inset:auto -140px -290px auto;width:480px;height:480px;border:90px solid #ffc40009;border-radius:40% 60% 40% 60%;transform:rotate(35deg)}
.site-footer{background:var(--deep);border-top:1px solid #ffffff20}
.footer-brand{display:inline-flex;align-items:center;gap:15px;letter-spacing:-.03em;font-size:clamp(36px,4.5vw,64px)}
.footer-emblem{width:64px;height:64px;overflow:hidden;border-radius:50%;background:#fff6e8}.footer-emblem img{width:100%;height:100%}
.footer-brand>span:last-child{color:var(--gold);margin-left:-15px}.footer-top p{color:#d8c7df}
.footer-grid a,.footer-bottom{color:#d8c7df}.footer-grid>div>span,.footer-bottom a{color:var(--gold)}
.footer-contact small{color:#bba2c6}.footer-grid a:hover{color:var(--gold)}
.inner-hero{position:relative;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--violet) 5%,var(--paper))}
.inner-hero:after{content:"";position:absolute;z-index:-1;width:350px;height:350px;border:55px solid color-mix(in srgb,var(--violet) 9%,transparent);right:-60px;top:-120px;border-radius:40% 60% 35% 65%;transform:rotate(25deg)}
.inner-hero>p,.article-summary,.newsletter-signup p{color:#66556d}.item-count{color:#786080}.thin-rule{background:var(--line)}
.search-box{border-color:var(--line)}.search-box input{color:var(--ink)}
.article-wrap{position:relative}.article-header h1{color:var(--violet);font-weight:500;letter-spacing:-.045em}.article-content{color:#382b3f}
.article-content h2,.article-content h3,.article-content a{color:var(--violet)}
.article-content blockquote{background:color-mix(in srgb,var(--violet) 5%,var(--paper));border-color:var(--violet);border-radius:0 18px 18px 0}
.article-external{background:#eee3ef;border-radius:24px 5px 24px 5px}.article-end{color:var(--violet);border-color:var(--line)}
.newsletter-page-intro,.terminal-hero{background:var(--deep)}.newsletter-quote{color:var(--gold)}
.newsletter-signup,.auth-card{border-radius:28px 6px 28px 6px;box-shadow:var(--depth-shadow);border:1px solid var(--line)}
.auth-mark{color:var(--violet)}.auth-card h1,.dashboard h1{color:var(--violet)}
.editor-form label,.newsletter-form>label:not(.consent-label){color:var(--violet)}
.editor-form input,.editor-form textarea,.editor-form select,.newsletter-form>input,.newsletter-form>select,.inline-form input,.inline-form select{border-color:#b59ac1;background:#fffdf8;border-radius:5px;color:var(--ink)}
.terminal-stamp{color:var(--gold);border-color:#ad84be}.terminal-stamp span{color:#d4c0df}
.terminal-toolbar,.terminal-console{background:var(--deep)}.terminal-toolbar>span:last-child{color:#d4c0df}
.market-table th{background:#ede1ef;color:var(--violet)}.market-table td:first-child span,.market-table .thesis{color:#66556d}.market-table tbody tr:hover{background:#f1e8f2}
.terminal-disclaimer,.briefing-disclaimer{color:#66556d}.headline small,.briefing-section-label,.headline-index{color:var(--violet)}.headline:hover{background:#eee3ef}
.topic-controls a.selected{background:var(--violet);color:var(--paper);border-color:var(--violet)}
.palette-panel{border:1px solid #b99ac7;border-radius:24px 6px 24px 6px;box-shadow:0 35px 100px #19072560}.palette-item:hover,.palette-item:focus{background:var(--violet);color:var(--paper)}
.palette-item:hover small{color:var(--gold)}
@media(min-width:1600px){.hero{min-height:850px}.identity-art{min-height:850px}.identity-stage{inset:125px 10% 145px}}
@media(max-width:1180px){.desktop-nav{display:none}.menu-trigger{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:0;padding:10px}.menu-trigger span{display:block;width:24px;height:2px;background:var(--violet)}.mobile-nav.open{display:grid;position:sticky;top:88px;z-index:39;grid-template-columns:repeat(4,1fr);padding:20px 5vw;gap:20px}.hero h1{font-size:clamp(55px,6vw,74px)}.identity-stage{inset:125px 5% 150px}.hero-art-top{left:22%;font-size:7px}.identity-art{min-height:740px}}
@media(max-width:800px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:65px 7vw 34px}.hero h1{font-size:clamp(57px,9vw,80px);max-width:13ch}.hero-deck{max-width:540px}.hero-bottom{padding-top:30px;margin-top:14px}.identity-art{min-height:640px;border-radius:18% 0 0 0 / 10% 0 0 0}.identity-stage{inset:80px 17% 120px}.emblem-plinth{max-width:440px}.hero-art-top{left:14%;right:7%;font-size:8px}.hero-art-caption{left:7%;bottom:35px}.hero-art-caption>div{font-size:29px}.orbit-back{left:-30px;top:100px}.hero-art:before{right:-30%;top:15%}.work-card:nth-child(2),.work-card:nth-child(3){margin-top:0}.journal-band{border-radius:50px 0 0 0}.discipline-grid{gap:16px}.discipline{border:1px solid #ddcce1}.about-section{border-radius:0 50px 0 0}.decorative-initial{max-width:180px}.newsletter-ornament{border-radius:60px 0 0 0}.identity-thread{font-size:7px;padding-inline:7vw}.identity-thread>span:last-child{display:none}}
@media(max-width:480px){.site-header{height:77px;padding-inline:18px;gap:12px}.brand-mark{width:47px;height:47px}.brand-name{font-size:12px}.brand-name small{font-size:5.6px}.nav-actions{gap:6px}.command-launch{width:33px;padding:0;justify-content:center}.command-launch kbd{display:none}.mobile-nav.open{top:77px;grid-template-columns:repeat(2,1fr);gap:16px}.hero-copy{padding-top:45px}.hero h1{font-size:clamp(49px,12vw,61px);line-height:1.04}.hero .eyebrow{font-size:7px}.hero-index{font-size:6.5px}.hero-deck{font-size:14px}.hero-cta{align-items:flex-start;gap:24px}.hero-bottom{font-size:6px}.identity-art{min-height:530px}.identity-stage{inset:100px 9% 130px}.hero-art-top{font-size:6px;top:37px}.hero-art-caption>div{font-size:25px;max-width:260px}.hero-art-caption{bottom:37px}.hero-art:before{width:360px;right:-65%;border-width:50px}.orbit-front{width:180px;border-width:22px;right:-90px;bottom:60px}.orbit-back{width:350px;left:-80px;top:80px}.section-heading h2{font-size:40px}.footer-brand{font-size:36px}.footer-emblem{width:48px;height:48px}.footer-grid{gap:28px 18px}.footer-bottom{line-height:1.8}.manifesto-strip p{font-size:13px}.article-header h1{font-size:43px}.newsletter-seal{width:200px;height:200px}}
@media(prefers-reduced-motion:reduce){.emblem-plinth{animation:none;transform:rotate(-5deg)}.identity-stage{transform:none!important;transition:none}.work-card:hover,.entry-card:hover{translate:none}.btn:hover{transform:none}html{scroll-behavior:auto}}

.btn>span,.text-link>span,.work-arrow,.manifesto-icon,.art-corner,.note-arrow,.note-num,.discipline-arrow{font-family:Arial,sans-serif}

.arrow-icon{width:17px;height:17px;display:inline-block;vertical-align:middle;flex-shrink:0}.work-arrow{display:grid;place-items:center}.work-arrow .arrow-icon{width:18px;height:18px}.manifesto-icon .arrow-icon{width:26px;height:26px}
