@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap");
:root{--ink:#211b30;--muted:#696479;--lavender:#8359dd;--rose:#f45b9b;--lilac:#a987ff;--cyan:#86e7f0;--bg:#fbfafd;--line:#eae5f1;--dark:#151127;--dark2:#24203c;--surface:#fff;--radius:24px;--radius-sm:15px;--shadow:0 13px 45px rgba(54,32,92,.07);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3{font-family:"Space Grotesk",system-ui,sans-serif;letter-spacing:-.045em;line-height:1.13}
h1{font-size:clamp(2.8rem,5.8vw,5.8rem);font-weight:700}
h2{font-size:clamp(2rem,3.55vw,3.7rem);font-weight:700}
h3{font-size:1.3rem;font-weight:700}
p{color:inherit}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
:focus-visible{outline:3px solid #8b5cff;outline-offset:4px}
::selection{background:#b7a0ff;color:#120d26}
.container{width:min(1190px,calc(100% - 64px));margin-inline:auto}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{position:fixed;top:-80px;left:10px;z-index:9999;background:white;padding:12px 16px;border:2px solid #8b5cff;border-radius:10px}
.skip-link:focus{top:10px}
.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.15em;color:var(--lavender)}
.eyebrow-light{color:#bda3ff}
.announcement{min-height:36px;display:flex;gap:13px;align-items:center;justify-content:center;padding:7px 20px;background:#19152b;color:#e8e3f7;font-size:.7rem;letter-spacing:.015em}
.announcement strong{font-size:.64rem;letter-spacing:.1em;color:#fff}
.announcement-light,.update-dot{width:7px;height:7px;background:#61e3bd;border-radius:50%;box-shadow:0 0 0 4px rgba(97,227,189,.14);flex-shrink:0}
.announcement a{display:inline-flex;align-items:center;gap:5px;color:#c8b5ff;font-weight:800;margin-left:20px}
.announcement a svg{width:13px;height:13px}
.announcement a:hover{color:#fff}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.header-inner{width:min(1320px,calc(100% - 64px));margin:auto;height:76px;display:flex;align-items:center;gap:30px;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;text-align:left}
.brand-symbol{width:42px;height:42px;display:grid;place-items:center;background:linear-gradient(140deg,#9c6bfa,#6d4cdb);color:#fff;border-radius:13px;box-shadow:0 5px 12px rgba(117,76,215,.22);transform:rotate(-7deg)}
.brand-symbol svg{transform:rotate(7deg)}
.brand-type{display:flex;flex-direction:column;line-height:1.13;gap:4px}
.brand-type strong{font-family:"Space Grotesk",sans-serif;font-size:1.12rem;letter-spacing:-.06em;white-space:nowrap}
.brand-dot{color:var(--rose)}
.brand-type small{font-size:.52rem;font-weight:800;letter-spacing:.2em;color:#8a8397;white-space:nowrap}
.desktop-nav{display:flex;align-items:center;gap:27px}
.nav-link{color:#595168;font-size:.84rem;font-weight:800;white-space:nowrap;position:relative;display:inline-flex;align-items:center;min-height:44px}
.nav-link.active,.nav-link:hover{color:#6f46c7}
.desktop-nav .nav-link.active:after{content:"";position:absolute;bottom:6px;height:3px;left:3px;right:3px;border-radius:3px;background:#976cf5}
.header-actions{display:flex;align-items:center;gap:10px}
.search-trigger{border:1px solid #e7e0ed;border-radius:11px;padding:8px 10px;min-height:42px;display:flex;align-items:center;gap:9px;color:#777084;font-size:.75rem}
.search-trigger:hover{background:#f3ecff;color:#6945c8}
.search-trigger kbd{border:1px solid #ded5ea;border-radius:5px;font-size:.66rem;line-height:1;padding:4px 7px;color:#88809b;background:#f8f5fc}
.mobile-toggle{display:none;background:none;border:0;width:45px;height:45px;align-items:center;justify-content:center;color:var(--ink)}
.mobile-nav{display:none}
.home-hero{overflow:hidden;color:#fff;background:radial-gradient(circle at 76% 21%,#30284d,transparent 38%),linear-gradient(128deg,#151127,#231a3c 57%,#17122a);position:relative}
.home-hero:before{content:"";position:absolute;inset:0;opacity:.13;pointer-events:none;background-image:radial-gradient(#e6d8ff 1px,transparent 1px);background-size:29px 29px;mask-image:linear-gradient(100deg,transparent 18%,#000)}
.hero-grid{min-height:580px;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:40px;align-items:center;padding-top:62px;padding-bottom:52px}
.hero-copy{position:relative;z-index:2}
.hero-kicker{font-size:.69rem;font-weight:800;letter-spacing:.17em;color:#c6b5f5;display:flex;align-items:center;gap:10px;margin-bottom:18px}
.sparkle-dot{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:#392e60;border:1px solid #7861bb}
.sparkle-dot:after{content:"✦";line-height:1;color:#e4bfff}
.hero-copy h1{font-size:clamp(3rem,4.5vw,5rem);margin:0 0 18px;line-height:1.01;letter-spacing:-.073em;max-width:690px}
.grad{background:linear-gradient(95deg,#ef9ec8,#a896fb 75%,#95dcfb);color:transparent;background-clip:text;-webkit-background-clip:text}
.hero-claim{font-family:"Space Grotesk",sans-serif;font-size:clamp(1.25rem,2.3vw,2.12rem);line-height:1.27;font-weight:500;letter-spacing:-.038em;margin-bottom:18px;color:#f7f4ff}
.hero-claim em{color:#e9b0df;font-style:normal}
.hero-intro{color:#c8c0d8;font-size:1.04rem;line-height:1.75;max-width:530px;margin-bottom:27px}
.hero-search{max-width:520px;min-height:59px;background:#fff;color:#8b8697;border-radius:13px;display:flex;align-items:center;gap:12px;padding:7px 7px 7px 17px;box-shadow:0 12px 37px rgba(8,6,17,.22)}
.hero-search>svg{flex-shrink:0}
.hero-search input{min-width:0;flex:1;background:transparent;border:0;outline:0;font-size:.88rem;color:var(--ink);height:40px}
.hero-search input::placeholder{color:#918b9e}
.hero-search button{width:45px;height:45px;border:0;border-radius:10px;color:#fff;background:#8b5de5;display:grid;place-items:center;transition:transform .2s,background .2s}
.hero-search button:hover{background:#6d40d8;transform:translateX(2px)}
.hero-cta{display:flex;flex-wrap:wrap;gap:11px;margin:23px 0 27px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;font-weight:800;font-size:.85rem;min-height:48px;padding:11px 19px;border-radius:11px;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:17px}
.btn-primary{background:linear-gradient(100deg,#8a5ae1,#a474ff);color:#fff;box-shadow:0 7px 17px rgba(123,72,215,.2)}
.btn-primary:hover{background:#7446d5;box-shadow:0 11px 28px rgba(123,72,215,.32)}
.btn-ghost{color:#eee6ff;background:transparent;border:1px solid #675778}
.btn-ghost:hover{background:#352949}
.btn-light{background:#fff;color:#39255e}
.btn-light:hover{background:#f7f0ff}
.hero-facts{display:flex;gap:30px;flex-wrap:wrap;margin-top:25px}
.hero-facts>div{display:flex;flex-direction:column;gap:0;border-left:1px solid #504767;padding-left:15px}
.hero-facts strong{font-family:"Space Grotesk",sans-serif;color:#fff;font-size:1.43rem;letter-spacing:-.05em}
.hero-facts span{font-size:.7rem;color:#aaa1bc}
.hero-visual{min-height:465px;position:relative;display:flex;align-items:center;justify-content:center}
.hero-art{position:relative;width:min(100%,565px);aspect-ratio:1.16;overflow:hidden;border:7px solid rgba(255,255,255,.1);border-radius:32px;box-shadow:0 45px 80px rgba(1,1,14,.43);transform:rotate(2deg);background:linear-gradient(140deg,#bb87ff,#ff8ac2)}
.hero-art img{height:100%;width:100%;object-fit:cover;object-position:center 19%}
.hero-orbit{border:1px solid rgba(202,162,255,.2);border-radius:50%;position:absolute;pointer-events:none}
.hero-orbit-a{height:550px;width:550px}
.hero-orbit-b{height:730px;width:730px;border-color:rgba(202,162,255,.09)}
.art-badge{position:absolute;z-index:2;display:flex;align-items:center;gap:7px;color:#fff;backdrop-filter:blur(16px);background:rgba(31,25,57,.92);border:1px solid #655488;box-shadow:0 10px 25px rgba(12,8,27,.25);font-size:.68rem;font-weight:800;letter-spacing:.08em;padding:12px 14px;border-radius:10px;white-space:nowrap}
.art-badge-one{top:12%;right:-8%;transform:rotate(-6deg)}
.art-badge-two{bottom:7%;left:-7%;transform:rotate(-4deg)}
.art-badge-two span{color:#ffb7dc}
.visual-stamp{position:absolute;top:9%;left:-2%;width:88px;height:88px;border-radius:50%;border:3px solid rgba(234,214,255,.7);transform:rotate(-17deg);font-family:"Space Grotesk",sans-serif;font-size:1.42rem;line-height:1.1;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;color:#e3ccff;opacity:.78;letter-spacing:-.09em}
.visual-stamp span{font-size:.76rem}
.hero-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:6px 0 18px;border-top:1px solid #3b3254;position:relative}
.hero-caption p{font-size:.63rem;color:#aba2bc;margin:0}
.section{padding-top:103px;padding-bottom:103px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:38px}
.section-heading h2{margin:.55rem 0 0}
.section-heading h2 em{font-style:normal;color:#885ee0}
.section-heading>p{color:#777082;max-width:355px;font-size:.93rem;margin-bottom:0}
.shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.shortcut{min-height:262px;padding:28px;border:1px solid rgba(84,55,150,.07);border-radius:22px;position:relative;overflow:hidden;transition:transform .23s,box-shadow .23s}
.shortcut:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.shortcut-purple{background:#eee5fe}
.shortcut-pink{background:#fbe4ee}
.shortcut-blue{background:#e7f4fc}
.shortcut-icon{width:47px;height:47px;display:grid;place-items:center;background:#ffffffb9;border-radius:15px;color:#7750b7;margin-bottom:24px}
.shortcut-pink .shortcut-icon{color:#ca538b}
.shortcut-blue .shortcut-icon{color:#34799e}
.shortcut-meta{font-size:.62rem;font-weight:800;letter-spacing:.16em;color:#746587}
.shortcut h3{font-size:clamp(1.37rem,2vw,1.8rem);margin:4px 0 12px}
.shortcut p{font-size:.84rem;color:#665a76;max-width:290px;line-height:1.65;padding-right:10px;margin-bottom:0}
.shortcut-arrow{position:absolute;bottom:25px;right:25px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#ffffffc0;color:#654bb4}
.characters-section{background:#f3eff9;border-block:1px solid #eee6f7}
.inline-link{font-size:.76rem;letter-spacing:.09em;font-weight:800;display:inline-flex;align-items:center;gap:12px;color:#8259cf;white-space:nowrap;padding-bottom:10px}
.inline-link:hover{color:#5c31b5}
.featured-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.feature-card{min-width:0;border-radius:18px;background:#fff;border:1px solid #e6e0ee;overflow:hidden;box-shadow:0 9px 24px rgba(67,43,112,.04);transition:transform .2s,box-shadow .2s}
a.feature-card:hover{transform:translateY(-5px);box-shadow:0 13px 35px rgba(59,35,97,.14)}
.feature-art{aspect-ratio:.9;background:radial-gradient(circle at 50% 32%,#dfc5fa,transparent 55%),linear-gradient(140deg,#e9e0fb,#f9ebf7);position:relative;display:grid;place-items:center;overflow:hidden}
.feature-art:before{content:"MAD";font-family:"Space Grotesk",sans-serif;font-size:5rem;opacity:.045;position:absolute;bottom:0;right:0;font-weight:800}
.portrait{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;border-radius:15px;background:#ebdbff}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:center}
.portrait-fallback{background:linear-gradient(140deg,#d2baff,#8068b5 72%,#574789);color:white;font-family:"Space Grotesk",sans-serif;font-weight:700;letter-spacing:-.08em}
.portrait-large{width:74%;height:79%;align-self:end;box-shadow:0 -8px 28px #6345a921;border-radius:50% 50% 0 0}
.portrait-large.portrait-fallback{width:72%;height:68%;align-self:center;border-radius:28% 55% 25% 50%;font-size:4.3rem;transform:rotate(-6deg)}
.portrait-small{width:51px;height:51px;border-radius:13px}
.portrait-tiny{width:30px;height:30px;border-radius:9px;font-size:.7rem}
.feature-art .tier-pill{position:absolute;top:14px;left:14px}
.tier-pill{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:5px 8px;border-radius:7px;font-weight:800;font-size:.65rem;letter-spacing:.045em}
.tier-s{color:#7b35aa;background:#f0d3ff}
.tier-a{color:#ae4e50;background:#ffe0dc}
.tier-b{color:#7a641d;background:#f6efc5}
.tier-c{color:#326e82;background:#dbf1f3}
.tier-d{color:#696d84;background:#e9eaf2}
.feature-foot{display:flex;justify-content:space-between;gap:10px;padding:18px 15px 21px;align-items:center}
.feature-foot h3{font-size:1.18rem;margin:0 0 6px}
.feature-foot p{font-size:.69rem;color:#817a8c;line-height:1.45;margin:0}
.feature-arrow{color:#9064d7}
.method-note{color:#767080;font-size:.82rem;display:flex;align-items:flex-start;gap:8px;margin-top:21px;line-height:1.5}
.method-note svg{color:#9468d7;flex-shrink:0}
.method-note a,.editorial-body a,.sources a,.editorial-article a:not(.btn):not(.article-nav a),.profile-content a:not(.btn){color:#7050c4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.method-note a:hover,.sources a:hover{color:#c94e8c}
.guides-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.guide-card{padding:28px;background:#fff;border:1px solid #ece5f2;border-radius:20px;min-height:325px;display:flex;flex-direction:column;position:relative;box-shadow:0 6px 19px rgba(42,28,67,.025);transition:box-shadow .23s,transform .23s}
.guide-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.guide-kicker{font-size:.65rem;letter-spacing:.13em;color:#927ac6;font-weight:800}
.guide-icon{display:grid;place-items:center;background:#f4eafa;color:#8a61ca;height:65px;width:65px;border-radius:20px;margin:23px 0}
.guide-card:nth-child(2) .guide-icon{background:#ffecf6;color:#cb589b}
.guide-card:nth-child(3) .guide-icon{background:#e6f4ff;color:#4385bf}
.guide-card h3{font-size:1.36rem;line-height:1.25;margin:0 0 12px}
.guide-card p{color:#7e7789;font-size:.84rem;line-height:1.7;margin:0 0 23px}
.guide-meta{margin-top:auto;font-size:.66rem;font-weight:800;letter-spacing:.1em;color:#a29aaf;display:flex;align-items:center;justify-content:space-between}
.guide-meta>span{color:#7f57d2}
.spotlight-section{padding-top:0}
.spotlight-card{border-radius:28px;min-height:335px;background:radial-gradient(circle at 76% 30%,#68458a,transparent 32%),linear-gradient(125deg,#272038,#3b274f 80%);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:35px;padding:47px 58px;position:relative;overflow:hidden}
.spotlight-orbit{position:absolute;right:-100px;top:-240px;width:550px;height:550px;border:1px solid rgba(255,255,255,.13);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 180px rgba(255,255,255,.02)}
.spotlight-copy{position:relative}
.spotlight-copy h2{margin:15px 0;font-size:clamp(2.4rem,3.6vw,3.5rem)}
.spotlight-copy em{font-style:normal;color:#e8b5fa}
.spotlight-copy p{max-width:490px;color:#d6cae2;font-size:.88rem;margin-bottom:21px}
.spotlight-code{z-index:1;background:#f7f0ff;color:#362945;padding:35px 25px;border-radius:18px;box-shadow:0 27px 55px rgba(13,5,22,.22);transform:rotate(4deg);min-width:0;text-align:center;display:flex;flex-direction:column;gap:12px}
.spotlight-code>span{color:#9d6fc1;font-size:.7rem;font-weight:800;letter-spacing:.12em}
.spotlight-code strong{font:700 clamp(1rem,2vw,1.8rem)/1.1 "Space Grotesk",sans-serif;letter-spacing:-.035em;overflow-wrap:anywhere}
.spotlight-code small{color:#9f92ad;font-size:.74rem}
.official-section{padding-top:0;display:flex;justify-content:space-between;align-items:center;gap:40px}
.official-section h2{margin:13px 0}
.official-section p{max-width:620px;color:#726c80;font-size:.9rem}
.official-actions{min-width:220px;display:flex;flex-direction:column;gap:10px}
.official-actions a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px;border:1px solid #e8e3f0;background:#fff;border-radius:10px;font-weight:800;font-size:.82rem}
.official-actions a:hover{border-color:#bca4ec;color:#7953c9}
.site-footer{background:#181428;color:#ece7f4;padding:57px 0 0}
.footer-upper{display:grid;grid-template-columns:1.7fr 1fr;gap:70px}
.footer-brand .brand-type strong{color:#fff}
.footer-brand .brand-type small{color:#beb4cd}
.footer-upper>div>p{max-width:390px;color:#9e96af;font-size:.82rem;margin-top:20px}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.footer-links>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.footer-links h3{font-family:"DM Sans",sans-serif;font-size:.67rem;letter-spacing:.15em;color:#e6c5fc;margin:0 0 9px}
.footer-links a{font-size:.79rem;color:#b9b2c5}
.footer-links a:hover{color:#e5b7fc}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #383147;margin-top:50px;padding:20px 0;font-size:.68rem;color:#8c829f}
.page-heading{padding-top:46px;padding-bottom:48px}
.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:35px;font-size:.7rem;font-weight:700;color:#9b92a9}
.breadcrumbs a:hover{color:#815dd0}
.bc-slash{color:#bcb1ca}
.page-heading .eyebrow{margin-bottom:17px}
.page-heading h1{font-size:clamp(2.7rem,5.2vw,4.9rem);max-width:1040px;margin:0 0 20px}
.page-lead{max-width:810px;color:#756d81;font-size:1.03rem;line-height:1.8}
.update-row{display:flex;align-items:center;gap:10px;color:#888195;font-size:.75rem;font-weight:600}
.update-sep{color:#c2b8d0}
.listing-section{padding-bottom:100px}
.directory-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:18px}
.search-field{flex:1;min-width:0;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e6dfeb;border-radius:12px;padding:0 17px;color:#a496b5;min-height:56px}
.search-field:focus-within,.filter-field:focus-within,.search-page-form:focus-within{border-color:#a480e9;box-shadow:0 0 0 4px #9460dc15}
.search-field input{width:100%;height:45px;border:0;outline:0;background:transparent;color:#32283f;font-size:.9rem}
.filter-field{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #e6dfeb;border-radius:12px;padding:0 17px;min-height:56px;font-size:.76rem;font-weight:800;color:#8a8094}
.filter-field select{border:0;background:#fff;color:#382d48;font-weight:800;padding:8px 3px;cursor:pointer;outline:0}
.directory-count{font-size:.75rem;font-weight:800;letter-spacing:.045em;color:#9b90a8;margin:0 0 15px}
.character-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.character-row{min-width:0;display:flex;align-items:center;gap:13px;background:#fff;border-radius:13px;padding:13px;border:1px solid #e9e4ef;min-height:79px}
a.character-row:hover{border-color:#bca3eb;background:#fefaff;transform:translateY(-2px)}
.character-row-name{font-weight:800;font-family:"Space Grotesk",sans-serif;font-size:.91rem;letter-spacing:-.035em;min-width:0}
.character-row-name small{display:block;font-family:"DM Sans",sans-serif;letter-spacing:0;color:#9e95a8;font-size:.63rem;font-weight:600}
.character-row .tier-pill{margin-left:auto}
.character-row-arrow{color:#9b75d2}
.character-row-arrow svg{height:18px;width:18px}
.character-row[hidden]{display:none}
.empty-state{padding:60px 20px;text-align:center;border:1px dashed #bba9d3;border-radius:15px;color:#81748a}
.narrow-layout{max-width:940px;padding-bottom:100px}
.tier-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e9e2f1;border:1px solid #e9e2f1;border-radius:17px;overflow:hidden;margin:30px 0}
.tier-intro>div{background:#fff;padding:24px;display:flex;flex-direction:column}
.tier-intro strong{font-family:"Space Grotesk",sans-serif;font-size:1.95rem;letter-spacing:-.07em}
.tier-intro span{font-size:.73rem;font-weight:700;color:#8b8192}
.tier-group{background:#fff;border:1px solid #e9e2f0;border-radius:20px;margin:20px 0;overflow:hidden}
.tier-group header{display:flex;gap:17px;align-items:center;padding:23px 27px;border-bottom:1px solid #eee9f4}
.tier-big{width:57px;height:57px;border-radius:16px;display:grid;place-items:center;font:800 1.8rem "Space Grotesk",sans-serif}
.tier-group header h2{font-size:1.32rem;margin:0 0 5px}
.tier-group header p{font-size:.75rem;color:#8a8494;margin:0}
.tier-chips{padding:21px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.tier-chip{display:flex;align-items:center;gap:10px;padding:9px;border-radius:10px;background:#fbf9fe;font-weight:700;font-size:.79rem;min-width:0}
.tier-chip .portrait{flex-shrink:0}
.tier-chip span:not(.portrait){min-width:0;overflow-wrap:anywhere}
.tier-chip svg{margin-left:auto;color:#9374d4;flex-shrink:0}
a.tier-chip:hover{background:#f1eafa}
.info-callout{display:flex;align-items:flex-start;gap:14px;padding:24px 25px;border:1px solid #d8cced;background:#f0eafa;border-radius:16px;color:#53426b;margin-bottom:25px}
.info-callout>svg{color:#8157c9;flex-shrink:0;margin-top:2px}
.info-callout p{margin:0;font-size:.88rem;line-height:1.75}
.editorial-panel{padding:35px;border-radius:21px;background:#eee7fb;margin:35px 0}
.editorial-panel h2{font-size:2.2rem;max-width:620px;margin:11px 0}
.editorial-panel p{color:#6b5b7e;max-width:710px;margin-bottom:22px}
.codes-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:34px 0 15px}
.codes-heading h2{font-size:1.8rem;margin:0}
.status-banner{display:flex;gap:16px;padding:27px;background:#fff8e8;border:1px solid #f3dfaf;border-radius:17px}
.status-symbol{color:#9c752f;flex-shrink:0}
.status-banner h2{font-size:1.25rem;letter-spacing:-.035em;margin:0 0 10px}
.status-banner p{font-size:.88rem;color:#77644d;margin:0}
.codes-list{display:grid;gap:12px}
.code-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:23px 27px;background:#fff;border:1px solid #eae4f1;border-radius:14px}
.code-row>div{display:flex;flex-direction:column;gap:5px}
.code-label{font-size:.66rem;font-weight:800;letter-spacing:.12em;color:#b37c25}
.code-value{font:700 clamp(1.15rem,2.2vw,1.64rem) "Space Grotesk",sans-serif;letter-spacing:-.045em;color:#2f2540;overflow-wrap:anywhere}
.code-row small{font-size:.72rem;color:#8b8192}
.copy-button{background:#efe7ff;border:0;color:#7050b8;padding:11px 16px;border-radius:10px;display:flex;align-items:center;gap:8px;min-height:45px;font-size:.78rem;font-weight:800;flex-shrink:0}
.copy-button:hover{background:#e1d3ff}
.copy-button[data-copied="true"]{background:#d9f8e7;color:#235c45}
.editorial-body{font-size:1rem;color:#665d70;line-height:1.9}
.editorial-body h2{font-size:1.65rem;margin:33px 0 12px;color:#2f2440}
.editorial-body p{margin-bottom:20px}
.numbered{padding-left:25px}
.numbered li{padding-left:9px;margin-bottom:13px}
.sources{background:#f3f0f8;border-radius:17px;padding:25px;margin-top:45px;border:1px solid #e8e2f0}
.sources h2{font-size:1.14rem;letter-spacing:-.02em;margin:0 0 10px}
.sources p{color:#756d7f;font-size:.77rem;margin-bottom:11px}
.sources ul{padding-left:20px;margin:0;display:grid;gap:7px}
.sources li{font-size:.76rem;overflow-wrap:anywhere}
.sources a{color:#7855bd;text-decoration:underline}
.page-guides-section{padding-bottom:100px}
.hub-note{display:flex;gap:20px;background:#f0e9fc;border-radius:20px;padding:35px;margin-top:40px;align-items:center}
.hub-note>svg{color:#8256c2;flex-shrink:0}
.hub-note h2{font-size:1.5rem;margin:0 0 7px}
.hub-note p{font-size:.85rem;color:#786a86;margin:0}
.hub-note .btn{white-space:nowrap;margin-left:auto}
.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:74px;padding-bottom:100px;align-items:start}
.editorial-article{min-width:0}
.article-intro{background:#eee6fc;border-radius:15px;display:flex;gap:17px;padding:26px;margin-bottom:44px;align-items:flex-start}
.article-intro svg{flex-shrink:0;color:#865bd3;margin-top:3px}
.article-intro p{font-size:1rem;color:#504266;line-height:1.85;margin:0}
.guide-section{padding-bottom:18px;margin-bottom:23px;border-bottom:1px solid #eee9f2}
.guide-section h2{font-size:clamp(1.5rem,2.5vw,2rem);margin:10px 0 15px}
.guide-section p{color:#696175;line-height:1.92;font-size:.98rem}
.chapter-label{font-size:.63rem;font-weight:800;letter-spacing:.13em;color:#9c76d1}
.key-takeaways{background:#221a3a;color:#fff;border-radius:19px;padding:34px;margin-top:35px}
.key-takeaways h2{font-size:1.85rem;margin:10px 0 22px}
.key-takeaways ul{padding:0;list-style:none}
.key-takeaways li{display:flex;gap:12px;align-items:flex-start;margin-bottom:13px;font-size:.9rem;color:#e1d8ec}
.key-takeaways svg{flex-shrink:0;color:#aef1d2;margin-top:4px}
.article-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}
.article-nav a{display:flex;gap:10px;align-items:center;border:1px solid #e5ddef;border-radius:10px;background:#fff;padding:12px 14px;font-size:.8rem;font-weight:800}
.article-nav a:hover{border-color:#ac8ed5}
.article-nav svg{color:#8062bc;width:19px}
.article-nav a svg:last-child{margin-left:auto}
.article-aside{position:relative}
.sticky-outline{position:sticky;top:118px;border-left:1px solid #e7dfeb;padding-left:22px}
.sticky-outline>strong{font-size:.71rem;font-weight:800;letter-spacing:.12em;color:#8e7bb0}
.sticky-outline ol{list-style:none;margin:16px 0;padding:0;display:grid;gap:14px}
.sticky-outline li{font-size:.78rem;line-height:1.6;color:#776e85}
.sticky-outline a:hover{color:#7c54c9;text-decoration:underline}
.side-card{background:#eee8f7;padding:20px;border-radius:13px;margin-top:25px}
.side-card span{font-size:.6rem;color:#8965b6;font-weight:800;letter-spacing:.12em;display:block;margin-bottom:9px}
.side-card a{font-size:.79rem;font-weight:800;color:#5e4385;display:flex;gap:9px;align-items:center}
.profile-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:52px;padding-bottom:100px;align-items:start}
.profile-art-card{border:1px solid #e7dff2;border-radius:22px;background:radial-gradient(circle at 50% 25%,#eacbff,transparent 55%),linear-gradient(120deg,#f2eafb,#d8bde9);padding:20px;text-align:center;min-width:0}
.profile-art-card>.portrait{width:100%;height:auto;aspect-ratio:1;display:flex;margin-bottom:20px;border-radius:24px}
.profile-art-card>.portrait.portrait-fallback{border-radius:25% 45% 25% 35%;font-size:6rem}
.profile-art-card>.tier-pill{font-size:.78rem;padding:8px 12px}
.profile-art-card>p{font-size:.63rem;color:#806a91;line-height:1.55;margin:19px 0 0}
.profile-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}
.profile-tags span{font-size:.72rem;background:#f0eafa;color:#7954ba;border-radius:50px;padding:7px 13px;font-weight:800}
.profile-content h2{font-size:clamp(1.52rem,2.3vw,2rem);margin:24px 0 12px}
.profile-content>p{font-size:1rem;line-height:1.9;color:#686074}
.profile-content .info-callout{margin-top:34px}
.editorial-list{color:#706779;line-height:1.85;padding-left:20px}
.editorial-list li{margin-bottom:11px}
.search-page-section{padding-bottom:150px;min-height:400px}
.search-page-form{border:1px solid #e3ddec;border-radius:17px;background:white;display:flex;align-items:center;padding:9px 9px 9px 18px;gap:12px;max-width:810px;margin:0 auto 22px;color:#817795}
.search-page-form input{flex:1;min-width:0;height:43px;border:0;outline:0;color:var(--ink)}
.search-page-form button{border:0;display:flex;gap:9px;align-items:center;background:#7950d4;color:#fff;font-size:.84rem;font-weight:800;padding:13px 18px;border-radius:9px}
.search-page-section>.directory-count{max-width:810px;margin-inline:auto}
.site-results{max-width:810px;margin:auto;display:grid;gap:10px}
.site-result{background:#fff;border:1px solid #e9e2f1;padding:20px 23px;border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.site-result:hover{background:#fbf7ff;border-color:#bfa8e6}
.site-result strong{font-family:"Space Grotesk",sans-serif;display:block;font-size:1.03rem}
.site-result span{font-size:.64rem;letter-spacing:.1em;color:#9d84c0;font-weight:800}
.site-result p{font-size:.8rem;color:#7d728a;margin:5px 0 0}
.site-result svg{flex-shrink:0;color:#9362db}
.legal-page{min-height:380px}
.error-page{padding-top:115px;padding-bottom:160px;text-align:center;min-height:510px}
.error-page h1{margin:14px 0}
.error-page p{color:#746c7d;max-width:510px;margin:0 auto 25px}
@media(max-width:1150px){.desktop-nav{gap:17px}.header-inner{gap:15px}.hero-grid{gap:18px}.art-badge-one{right:0}.art-badge-two{left:0}.featured-grid{gap:10px}.feature-foot{padding:12px}.feature-foot h3{font-size:1.02rem}}
@media(max-width:990px){.desktop-nav{gap:12px}.nav-link{font-size:.74rem}.header-inner{width:calc(100% - 36px)}.search-trigger kbd{display:none}.brand-type strong{font-size:1rem}.brand-type small{font-size:.45rem}.hero-grid{grid-template-columns:1.05fr .95fr;padding-top:40px}.hero-visual{min-height:360px}.hero-art{aspect-ratio:.83}.hero-copy h1{font-size:clamp(2.9rem,5.8vw,4.5rem)}.hero-facts{gap:12px}.hero-facts>div{padding-left:10px}.featured-grid{grid-template-columns:repeat(3,1fr)}.article-grid{gap:35px;grid-template-columns:minmax(0,1fr) 205px}.character-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.container{width:calc(100% - 38px)}.announcement{font-size:.58rem;padding:6px 11px;gap:8px}.announcement a{margin-left:2px}.announcement a svg{display:none}.header-inner{height:66px}.brand-symbol{width:38px;height:38px}.desktop-nav{display:none}.mobile-toggle{display:flex}.header-actions .search-trigger span,.search-trigger kbd{display:none}.search-trigger{width:42px;height:42px;justify-content:center}.mobile-nav{display:flex;flex-direction:column;padding:12px 20px 20px;border-top:1px solid var(--line);gap:2px;box-shadow:0 15px 23px rgba(40,25,80,.07)}.mobile-nav[hidden]{display:none}.mobile-nav .nav-link{font-size:1rem;width:100%;padding:5px 14px;border-radius:8px}.mobile-nav .nav-link.active{background:#f0eaff}.hero-grid{grid-template-columns:1fr;gap:0;padding-top:52px;padding-bottom:20px}.hero-copy h1{font-size:clamp(3.1rem,9vw,5.3rem)}.hero-claim{font-size:1.54rem}.hero-intro{font-size:.95rem}.hero-visual{min-height:300px;margin:10px 0 30px}.hero-art{width:min(85%,520px);aspect-ratio:1.34}.hero-orbit-a{height:360px;width:360px}.hero-orbit-b{height:460px;width:460px}.art-badge-one{right:0;top:6%}.art-badge-two{left:0;bottom:2%}.visual-stamp{top:1%}.hero-caption{align-items:flex-start;flex-direction:column}.hero-caption p{max-width:100%}.section{padding-top:72px;padding-bottom:72px}.section-heading{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:28px}.section-heading>p{max-width:570px}.shortcuts{grid-template-columns:1fr;gap:13px}.shortcut{min-height:215px;padding:23px}.shortcut-icon{margin-bottom:12px}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guides-grid{grid-template-columns:1fr}.guide-card{min-height:235px;padding:25px}.guide-icon{margin:15px 0}.spotlight-section{padding-top:0}.spotlight-card{grid-template-columns:1fr;padding:33px 28px;gap:27px}.spotlight-code{max-width:500px}.official-section{flex-direction:column;align-items:stretch;gap:20px}.official-actions{min-width:0}.footer-upper{grid-template-columns:1fr;gap:28px}.footer-bottom{flex-direction:column;gap:7px;margin-top:30px}.page-heading{padding-top:25px;padding-bottom:35px}.breadcrumbs{margin-bottom:26px}.page-heading h1{font-size:clamp(2.4rem,7vw,3.9rem)}.page-lead{font-size:.95rem}.listing-section,.narrow-layout,.page-guides-section{padding-bottom:70px}.article-grid{grid-template-columns:1fr;padding-bottom:70px}.article-aside{display:none}.profile-layout{grid-template-columns:1fr;gap:20px;padding-bottom:70px}.profile-art-card{max-width:350px;width:100%}.hub-note{flex-direction:column;align-items:flex-start}.hub-note .btn{margin-left:0}.tier-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.tier-intro>div{padding:15px}.codes-heading{flex-direction:column;align-items:start}.site-result{padding:15px}.error-page{padding-top:70px;padding-bottom:110px}}
@media(max-width:470px){.container{width:calc(100% - 30px)}.announcement>span:nth-child(3){display:none}.announcement a{font-size:.6rem}.brand-type strong{font-size:.88rem}.brand-type small{font-size:.43rem}.hero-copy h1{font-size:3rem}.hero-facts{justify-content:space-between;gap:8px}.hero-facts strong{font-size:1.15rem}.hero-facts span{font-size:.6rem}.hero-visual{min-height:250px}.hero-art{width:86%;aspect-ratio:1.3;border-width:4px;border-radius:22px}.art-badge{font-size:.47rem;padding:9px 8px}.visual-stamp{width:59px;height:59px;font-size:.91rem}.hero-orbit-a{width:290px;height:290px}.hero-orbit-b{width:365px;height:365px}.featured-grid{gap:9px}.feature-foot{padding:11px}.feature-foot h3{font-size:1.02rem}.feature-foot p{font-size:.62rem}.feature-arrow svg{width:14px}.directory-toolbar{flex-direction:column}.search-field,.filter-field{width:100%}.filter-field{justify-content:space-between}.character-list{grid-template-columns:1fr}.tier-group header{padding:16px}.tier-chips{padding:12px;grid-template-columns:1fr}.tier-chip{padding:7px}.tier-intro strong{font-size:1.4rem}.tier-intro span{font-size:.57rem}.code-row{flex-direction:column;align-items:stretch;padding:21px}.copy-button{justify-content:center}.spotlight-card{padding:28px 20px}.search-page-form{flex-wrap:wrap}.search-page-form input{width:65%}.search-page-form button{width:100%;justify-content:center}.footer-links{gap:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
