/* JIGGLE X WIGGLE / Crystal Edition 2.0
   Appearance is independent for light and dark, with restrained crimson prism motion. */
:root{
 --jxw-font:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
 --jxw-display:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
 --jxw-shine:rgba(229,30,70,.26);
 --jxw-glass:rgba(255,255,255,.035);
 --jxw-glass-border:rgba(255,255,255,.12);
 --jxw-hero-glow:radial-gradient(ellipse at 78% 38%,rgba(229,30,70,.19),transparent 52%);
 --jxw-serif:Georgia,"Times New Roman",serif;
 font-synthesis:none;
}
:root[data-theme=light]{
 --jxw-shine:rgba(229,30,70,.12);
 --jxw-glass:rgba(255,255,255,.88);
 --jxw-glass-border:rgba(20,20,34,.10);
 --jxw-hero-glow:radial-gradient(ellipse at 78% 38%,rgba(229,30,70,.075),transparent 52%);
}
html{scroll-padding-top:110px}
body{font-family:var(--jxw-font);font-size:15px;letter-spacing:-.006em}
.container{width:min(calc(100% - 80px),1340px)}
h1,h2,h3,h4,.top-masthead h1,.article-header h1,.listing-masthead h1{font-family:var(--jxw-display);font-synthesis:none;text-wrap:balance}
p{overflow-wrap:break-word}
.site-header{box-shadow:0 12px 35px -32px rgba(0,0,0,.6)}
:root[data-theme=light] .site-header{background:rgba(250,249,248,.95)}
:root[data-theme=dark] .site-header{background:rgba(16,17,27,.94)}
.utility-bar{height:39px;background:var(--surface);border-bottom:1px solid var(--line)}
.utility-bar .eyebrow{font-size:9px;letter-spacing:.205em}
.utility-right{font-size:11px}
.nav-shell{height:88px}
.brand img{width:274px;max-height:76px;transition:filter .3s ease,transform .3s ease}
.brand:hover img{transform:translateY(-1px)}
.main-nav{gap:21px}
.main-nav a{position:relative;font-size:12px;font-weight:750;letter-spacing:-.01em;padding-block:16px}
.main-nav a::after{content:"";position:absolute;bottom:9px;left:0;width:0;height:2px;background:var(--red);border-radius:3px;transition:width .25s ease}
.main-nav a:hover::after,.main-nav a.active::after{width:100%}
.icon-btn{border-radius:100%;width:40px;height:40px;transition:background .2s ease,transform .2s ease}
.icon-btn:hover{transform:translateY(-2px)}
.top-masthead{position:relative;isolation:isolate;margin-block:26px 6px;padding:62px 52px 58px;min-height:250px;align-items:center;border:1px solid var(--line);border-radius:14px;background:var(--jxw-hero-glow),linear-gradient(110deg,var(--surface),var(--canvas));overflow:hidden}
.top-masthead::before{content:"";position:absolute;z-index:-1;right:-55px;top:-130px;width:480px;height:480px;border:1px solid var(--jxw-glass-border);border-radius:50%;transform:rotate(-22deg)}
.top-masthead::after{content:"";position:absolute;z-index:-1;right:90px;top:-68px;width:230px;height:230px;background:conic-gradient(from 23deg,transparent 0 22%,var(--jxw-shine) 29%,transparent 35% 66%,var(--jxw-shine) 75%,transparent 82%);clip-path:polygon(50% 0,100% 27%,100% 72%,50% 100%,0 72%,0 27%);opacity:.44;transform:rotate(26deg)}
.top-masthead .eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.20em}
.top-masthead .eyebrow:before{content:"";width:24px;height:2px;background:var(--red)}
.top-masthead h1{font-size:clamp(42px,4.5vw,74px);font-weight:900;letter-spacing:-.075em;line-height:1.02;margin:15px 0 0;max-width:760px}
.top-masthead h1 em{font-style:normal;color:var(--red);display:inline}
.top-masthead>p{font-size:clamp(14px,1.2vw,16px);line-height:1.85;max-width:315px;letter-spacing:-.008em;margin:20px 0 0}
.masthead-accent{display:flex;gap:7px;margin-top:24px;align-items:center}
.masthead-accent span{display:block;height:3px;border-radius:5px;background:var(--red)}
.masthead-accent span:nth-child(1){width:41px}.masthead-accent span:nth-child(2){width:15px;opacity:.62}.masthead-accent span:nth-child(3){width:7px;opacity:.35}
.hero-head{gap:12px}.hero-area{padding-top:30px}
.hero-grid{gap:16px}.hero-lead{border-radius:10px;min-height:490px}.hero-small{border-radius:9px;transition:transform .25s ease,border-color .25s ease}
.hero-small:hover{transform:translateY(-3px);border-color:rgba(229,30,70,.42)}
.hero-small h3{letter-spacing:-.035em;line-height:1.3}
.hero-overlay h2{font-weight:830;letter-spacing:-.05em;line-height:1.13}
.hero-overlay h2 a,.story-card h3 a{transition:color .2s ease}
.story-card h3 a:hover{color:var(--red)}
.story-card .story-media{position:relative;border-radius:9px;overflow:hidden}
.story-card .story-media:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px var(--jxw-glass-border);border-radius:9px;pointer-events:none}
.story-card .story-media img{aspect-ratio:16/9;object-fit:cover;transition:transform .6s cubic-bezier(.2,.9,.3,1)}
.story-card:hover .story-media img{transform:scale(1.035)}
.story-card .story-copy h3{font-weight:800;letter-spacing:-.035em;line-height:1.24;text-wrap:pretty}
.story-excerpt{line-height:1.7}
.section-heading h2{letter-spacing:-.052em;font-weight:850;text-wrap:balance}
.section-overline,.eyebrow{letter-spacing:.16em}
.section-heading{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:26px}
.editorial-divider{letter-spacing:.18em}
.newsletter-banner{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:linear-gradient(108deg,var(--surface),var(--canvas))}
.newsletter-banner::after{content:"";width:420px;height:420px;position:absolute;right:-200px;top:-180px;border:55px solid var(--jxw-shine);transform:rotate(28deg);border-radius:20% 50% 25% 55%;pointer-events:none}
.newsletter-banner h2{font-weight:870;letter-spacing:-.055em}
.footer-strap{font-weight:900;letter-spacing:.12em}
.footer-main,.footer-bottom{position:relative;z-index:2}
.site-footer{position:relative;isolation:isolate;overflow:hidden}
.site-footer:before{content:"";position:absolute;top:0;right:8%;height:1px;width:24%;background:linear-gradient(90deg,transparent,var(--red),transparent)}
.listing-masthead{position:relative;isolation:isolate;min-height:0;padding-top:80px;padding-bottom:56px;margin-bottom:35px}
.listing-masthead:after{content:"";position:absolute;z-index:-1;right:10px;top:30px;width:150px;height:150px;background:var(--jxw-shine);clip-path:polygon(50% 0,89% 23%,100% 67%,50% 100%,0 67%,11% 23%);opacity:.35;filter:blur(12px)}
.listing-masthead h1{font-weight:900;letter-spacing:-.075em;line-height:1.05;font-size:clamp(46px,6.2vw,90px)}
.listing-masthead p{font-size:clamp(14px,1.25vw,17px);max-width:630px;line-height:1.7}
.article-header h1{font-size:clamp(42px,5.3vw,78px);letter-spacing:-.064em;font-weight:870;line-height:1.08;max-width:1040px}
.article-subtitle{max-width:800px;line-height:1.6}
.article-body{font-size:clamp(17px,1.12vw,19px);line-height:1.70;letter-spacing:-.006em}
.article-body :is(h2,h3,h4){font-weight:820;letter-spacing:-.041em;line-height:1.24;margin-block:1.05em .48em}
.article-body :is(h2,h3,h4){text-wrap:balance}.article-body h2{font-size:clamp(27px,2.6vw,40px)}.article-body h3{font-size:clamp(22px,2vw,30px)}
.article-body p{margin:0 0 .85em}.article-body blockquote{border-left:4px solid var(--red);background:var(--surface);padding:22px 28px;border-radius:0 12px 12px 0}
.article-body a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.article-body img{border-radius:10px}
/* A purposeful crystal-glass editorial empty state: no invented posts. */
.jxw-empty-editorial{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(280px,1.1fr);align-items:center;gap:30px;border:1px solid var(--line);border-radius:15px;min-height:285px;padding:35px 48px;text-align:left;background:radial-gradient(ellipse at 19% 55%,var(--jxw-shine),transparent 38%),var(--surface);position:relative;overflow:hidden}
.jxw-empty-editorial:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 48%,var(--jxw-glass) 54%,transparent 58%);pointer-events:none}
.empty-crystal-art{width:205px;height:205px;position:relative;isolation:isolate;display:grid;place-items:center;margin:auto}
.empty-crystal-art .art-grid{position:absolute;width:190px;height:190px;border:1px solid var(--line);border-radius:50%;box-shadow:inset 0 0 0 18px var(--jxw-glass),0 0 70px var(--jxw-shine)}
.empty-crystal-art .art-grid:before,.empty-crystal-art .art-grid:after{content:"";position:absolute;inset:27px;border:1px solid var(--jxw-glass-border);transform:rotate(45deg)}
.empty-crystal-art .art-grid:after{transform:rotate(15deg);border-radius:50%}
.art-prism{width:135px;height:143px;display:flex;align-items:center;justify-content:center;gap:0;clip-path:polygon(50% 0,91% 18%,100% 63%,50% 100%,0 63%,9% 18%);background:linear-gradient(142deg,rgba(255,255,255,.52),rgba(229,30,70,.37) 30%,rgba(229,30,70,.08) 50%,rgba(229,30,70,.7) 80%,rgba(255,255,255,.4));box-shadow:0 0 50px var(--jxw-shine);color:var(--text);border:1px solid transparent;position:relative;transform:rotate(-9deg)}
.art-prism:before{content:"";position:absolute;inset:8px;clip-path:polygon(50% 0,91% 18%,100% 63%,50% 100%,0 63%,9% 18%);background:linear-gradient(128deg,var(--canvas),transparent 73%);z-index:-1}
.art-prism b{font-size:38px;letter-spacing:-.1em;font-weight:950;text-shadow:0 0 15px var(--canvas)}.art-prism b:nth-child(2){color:var(--red)}
.empty-editorial-copy{position:relative;z-index:1}.empty-editorial-copy h3{font-size:clamp(26px,3vw,43px);font-weight:850;line-height:1.1;letter-spacing:-.05em;margin:14px 0 14px;text-wrap:balance}
.empty-editorial-copy p{margin:0 0 22px;max-width:520px;color:var(--muted);font-size:14px;line-height:1.8}
.empty-editorial-copy .btn-outline{font-size:12px;font-weight:760}
/* Faceted pointer, distinct ruby vs. frosted-crystal materials */
.cursor-orbit{display:none!important}
.jxw-crystal-pointer{position:fixed;top:0;left:0;width:42px;height:42px;z-index:1000;pointer-events:none;opacity:0;will-change:transform,opacity;transition:opacity .22s ease,filter .3s ease;filter:drop-shadow(0 0 10px rgba(229,30,70,.48))}
.jxw-crystal-pointer.visible{opacity:.94}
.jxw-crystal-halo{position:absolute;inset:0;border:1px solid rgba(255,114,144,.55);border-radius:12px;transform:rotate(45deg) scale(.75);box-shadow:0 0 15px rgba(229,30,70,.27),inset 0 0 14px rgba(229,30,70,.18);transition:transform .25s ease,border-color .25s ease}
.jxw-crystal-core{position:absolute;inset:8px;display:flex;align-items:center;justify-content:center;clip-path:polygon(50% 0%,88% 24%,100% 65%,50% 100%,0% 65%,12% 24%);background:linear-gradient(140deg,#ffeff3 0%,#ff647f 18%,#e51e46 42%,#710725 74%,#ff416d 100%);box-shadow:0 0 0 2px #fa466b}
.jxw-crystal-core i{position:absolute;inset:0;background:linear-gradient(112deg,rgba(255,255,255,.75),transparent 40%);clip-path:polygon(50% 0,50% 100%,12% 24%)}
.jxw-crystal-core i:nth-child(2){background:linear-gradient(40deg,rgba(30,0,15,.5),transparent 78%);clip-path:polygon(50% 0,88% 24%,50% 100%)}
.jxw-crystal-core i:nth-child(3){background:rgba(255,255,255,.5);clip-path:polygon(50% 0,88% 24%,65% 25%)}
.jxw-crystal-flare{position:absolute;top:1px;right:3px;width:5px;height:5px;background:#fff;border-radius:50%;box-shadow:0 0 10px 2px #ff8eaa;opacity:.8}
.jxw-crystal-pointer.interactive .jxw-crystal-halo{transform:rotate(90deg) scale(1.04);border-color:#f76c8e}
.jxw-crystal-pointer.interactive .jxw-crystal-core{transform:rotate(-15deg)}
.jxw-crystal-pointer.refract .jxw-crystal-halo{animation:prism-pulse .5s ease-out both}
@keyframes prism-pulse{0%{opacity:1;transform:rotate(45deg) scale(.5)}75%{opacity:.7;transform:rotate(80deg) scale(1.7)}100%{opacity:1;transform:rotate(45deg) scale(.75)}}
:root[data-theme=light] .jxw-crystal-pointer{filter:drop-shadow(0 6px 9px rgba(38,20,31,.18))}
:root[data-theme=light] .jxw-crystal-halo{border-color:rgba(180,34,69,.45);background:linear-gradient(140deg,rgba(255,255,255,.35),rgba(229,30,70,.05) 70%);box-shadow:0 4px 15px rgba(36,18,30,.09),inset 0 0 10px rgba(255,255,255,.8)}
:root[data-theme=light] .jxw-crystal-core{background:linear-gradient(145deg,white 0%,#ffeaf0 20%,#ffd6e0 41%,#e51e46 76%,#fff 100%)}
:root[data-theme=light] .jxw-crystal-core i:nth-child(2){background:linear-gradient(35deg,rgba(121,36,56,.22),transparent)}
:root[data-theme=light] .jxw-crystal-flare{background:#fff;box-shadow:0 0 8px #f7aabc}
:root[data-crystal-intensity=subtle] .jxw-crystal-pointer{opacity:.6;filter:none}
:root[data-crystal-intensity=bold] .jxw-crystal-pointer{filter:drop-shadow(0 0 16px rgba(229,30,70,.85))}
.jxw-crystal-disabled .jxw-crystal-pointer,.cursor-off .jxw-crystal-pointer{display:none!important}
.jxw-live-notice{position:fixed;bottom:26px;right:26px;z-index:300;transform:translateY(10px);opacity:0;pointer-events:none;background:var(--surface2);border:1px solid var(--line);border-left:3px solid var(--red);box-shadow:0 16px 36px #0002;color:var(--text);padding:11px 18px;border-radius:10px;font-size:13px;transition:opacity .2s,transform .2s}.jxw-live-notice.show{opacity:1;transform:translateY(0)}
@media(max-width:1250px){.main-nav{gap:12px}.top-masthead{padding-inline:38px}}
@media(max-width:900px){.top-masthead{padding:42px 32px;min-height:0}.top-masthead:after{right:-25px;opacity:.2}.top-masthead h1{font-size:clamp(40px,7vw,65px)}}
@media(max-width:760px){.container{width:min(calc(100% - 32px),1340px)}.top-masthead{padding:30px 25px;margin-top:17px;margin-bottom:0;border-radius:10px}.top-masthead h1{font-size:clamp(34px,9vw,56px);line-height:1.04}.top-masthead>p{margin-top:16px;max-width:470px}.brand img{width:210px}.nav-shell{height:74px}.main-nav a::after{bottom:5px}.hero-area{padding-top:23px}.hero-lead{min-height:405px}.listing-masthead{padding-block:48px 24px}.jxw-empty-editorial{grid-template-columns:1fr;gap:0;text-align:center;padding:28px 22px}.empty-crystal-art{width:150px;height:150px;transform:scale(.72);margin:-20px auto}.empty-editorial-copy h3{font-size:28px}.empty-editorial-copy p{margin-inline:auto}.section-heading{margin-bottom:20px}.jxw-crystal-pointer{display:none!important}}
@media(max-width:480px){.top-masthead{padding:26px 18px}.top-masthead h1{font-size:36px}.top-masthead .eyebrow{font-size:9px}.brand img{width:185px}.listing-masthead h1{font-size:48px}.article-header h1{font-size:36px}.jxw-empty-editorial{padding:18px}.empty-editorial-copy h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.jxw-crystal-pointer{display:none!important}.story-card .story-media img,.hero-image img,.hero-small{transition:none!important}.newsletter-banner:after{display:none!important}}

/* Brand-first launch hero: used only until real stories exist */
.jxw-launch-feature{position:relative;isolation:isolate;min-height:420px;border:1px solid var(--line);border-radius:13px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;padding:60px 65px;overflow:hidden;background:radial-gradient(circle at 77% 53%,var(--jxw-shine),transparent 42%),linear-gradient(120deg,var(--surface),var(--canvas));gap:15px}
.jxw-launch-feature:before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0 78px,var(--jxw-glass-border) 79px,transparent 80px);opacity:.13;pointer-events:none}
.launch-copy{position:relative;z-index:2}.launch-copy>.eyebrow{font-size:10px;letter-spacing:.18em}
.launch-copy h2{font-size:clamp(41px,4.3vw,67px);font-weight:900;line-height:1.05;letter-spacing:-.075em;margin:20px 0 18px;text-wrap:balance}
.launch-copy h2 em{font-style:normal;color:var(--red)}
.launch-copy p{font-size:15px;line-height:1.75;color:var(--muted);max-width:425px}
.launch-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.launch-links a{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:50px;padding:10px 15px;font-size:11px;font-weight:800;background:var(--jxw-glass);transition:transform .2s,border-color .2s}
.launch-links a:hover{border-color:var(--red);transform:translateY(-3px)}
.launch-sculpture{min-height:290px;position:relative;display:grid;place-items:center}
.sculpture-ring{position:absolute;width:280px;height:280px;border:1px solid var(--jxw-glass-border);border-radius:50%;transform:rotate(-22deg) scaleX(.73)}
.ring-two{width:235px;height:235px;transform:rotate(29deg) scaleX(.83)}
.sculpture-facet{position:absolute;width:205px;height:235px;clip-path:polygon(50% 0,86% 22%,100% 67%,50% 100%,0 67%,14% 22%);background:linear-gradient(132deg,#ffb7c9 0,#e51e46 22%,rgba(229,30,70,.06) 55%,#810b30 79%,#f77d9a 100%);transform:rotate(-16deg)}
.facet-two{width:167px;height:196px;transform:rotate(21deg);background:linear-gradient(115deg,var(--canvas) 10%,var(--surface) 55%,var(--jxw-shine))}
.sculpture-initial{font-size:clamp(59px,6vw,95px);font-weight:950;letter-spacing:-.15em;z-index:2;color:var(--text);filter:drop-shadow(0 8px 14px var(--canvas))}.sculpture-initial span{color:var(--red)}
:root[data-theme=light] .sculpture-facet{background:linear-gradient(120deg,#ffcfda,#f14a6b,#fcdee6,#e51e46)}
@media(max-width:900px){.jxw-launch-feature{padding:45px 38px}.sculpture-ring{width:210px;height:210px}.sculpture-facet{width:160px;height:184px}.facet-two{width:126px;height:148px}.launch-sculpture{min-height:200px}}
@media(max-width:700px){.jxw-launch-feature{grid-template-columns:1fr;padding:34px 24px;gap:5px}.launch-copy h2{font-size:clamp(35px,9vw,53px)}.launch-sculpture{min-height:175px}.sculpture-ring{width:150px;height:150px}.sculpture-facet{width:114px;height:130px}.facet-two{width:90px;height:106px}.sculpture-initial{font-size:55px}}

/* Both logo variants are in HTML: no unreadable logo flash before JS loads. */
.brand .brand-on-light{display:none}
:root[data-theme=light] .brand .brand-on-dark{display:none}
:root[data-theme=light] .brand .brand-on-light{display:block}
:root[data-theme=light] .eyebrow.red,:root[data-theme=light] .section-overline.red{color:#c8153a}

/* 4.0: polished editorial references and predictable article rhythm */
.article-body>h2:first-child{margin-top:0}
.article-body :is(h2,h3,h4){clear:both}
.article-body :is(h2,h3,h4)+p{margin-top:0}
.article-body .sources-heading{padding-top:.8em;border-top:1px solid var(--line);margin-top:1.6em}
.article-body .jxw-source-list{list-style:none;counter-reset:ref;padding:0;margin:16px 0 24px;display:grid;gap:10px}
.article-body .jxw-source-list li{position:relative;counter-increment:ref;display:grid;gap:5px;margin:0;padding:15px 18px 15px 52px;background:var(--surface);border:1px solid var(--line);border-radius:10px;line-height:1.35;min-width:0}
.article-body .jxw-source-list li::before{content:counter(ref, decimal-leading-zero);position:absolute;left:17px;top:17px;font:800 12px/1.4 Inter,system-ui,sans-serif;color:var(--red)}
.article-body .jxw-source-list a{display:inline-flex;align-items:center;gap:7px;justify-self:start;font:780 15px/1.4 Inter,system-ui,sans-serif;text-decoration:none;color:var(--text);overflow-wrap:anywhere}
.article-body .jxw-source-list a::after{content:'↗';font-size:14px;color:var(--red)}
.article-body .jxw-source-list a:hover,.article-body .jxw-source-list a:focus-visible{color:var(--red);text-decoration:underline}
.article-body .jxw-source-list .source-meta{font:400 12px/1.55 Inter,system-ui,sans-serif;color:var(--muted);overflow-wrap:break-word}
.article-body .source-editorial-note{font:400 13px/1.65 Inter,system-ui,sans-serif;color:var(--muted);border-left:3px solid var(--red);padding:8px 0 8px 14px}
.article-aside .aside-empty{font-size:13px;line-height:1.6;color:var(--muted)}
@media(max-width:640px){.article-body .jxw-source-list li{padding:14px 12px 14px 44px}.article-body .jxw-source-list li::before{left:13px;top:16px}.article-body .jxw-source-list .source-meta{font-size:11px}}
