:root{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#fff;background:#000}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;background:#000;color:#fff}
a{color:inherit;text-decoration:none}

.dark-pill{height:42px;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#000;color:#fff;font-size:14px;white-space:nowrap}

.papers-hero{position:relative;isolation:isolate;padding:clamp(190px,16vw,230px) 6.4vw 70px;background:radial-gradient(circle at 82% 18%,rgba(174,136,255,.72),transparent 28%),radial-gradient(circle at 14% 64%,rgba(49,102,255,.88),transparent 42%),linear-gradient(145deg,#a9c9ff,#b7bdff 43%,#4358df 72%,#0a164a);color:#050505}
.papers-hero::after{content:"";position:absolute;z-index:-1;left:0;right:0;top:45vh;bottom:0;background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.18) 104px,rgba(0,0,0,.52) 244px,rgba(0,0,0,.86) 400px,#000 560px,#000 100%)}
.papers-hero-copy{max-width:850px;margin:0 auto;text-align:center}
.papers-hero h1,.portal-lucy h2{margin:0;font-size:clamp(52px,5.4vw,80px);font-weight:400;line-height:.95;letter-spacing:-.055em}
.papers-tagline{margin:26px 0 0;font-size:20px;line-height:1.4;letter-spacing:-.015em}
.papers-page .lucy-intro{padding-top:64px;border-top:1px solid rgba(64,83,211,.45)}
.lede{max-width:640px;margin:34px auto 30px;font-size:20px;line-height:1.42}

.paper-groups{position:relative;z-index:1;width:min(1120px,100%);margin:150px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(48px,6vw,88px)}
.paper-group{min-width:0}
.paper-group-heading{height:175px;min-height:175px;margin-bottom:34px;color:#050505;text-align:center}
.paper-group-heading h2{margin:0;font-size:clamp(30px,3vw,42px);font-weight:400;line-height:1.04;letter-spacing:-.045em}
.paper-group-heading p{max-width:490px;margin:18px auto 0;color:#181818;font-size:17px;line-height:1.5}
.paper-group-cards{display:grid;grid-template-rows:repeat(2,500px);gap:34px}
.paper-card{min-width:0;height:500px;padding:10px 10px 28px;overflow:hidden;border:2px solid #292929;border-radius:10px;background:#151515;color:#fff;display:flex;flex-direction:column}
.paper-preview{position:relative;display:block;padding:24px 38px 0;overflow:hidden;border-radius:7px;background:radial-gradient(circle at 82% 15%,rgba(178,140,255,.7),transparent 34%),radial-gradient(circle at 15% 80%,rgba(46,97,245,.88),transparent 42%),linear-gradient(145deg,#a9c9ff,#b3b8fa 48%,#3348c9 100%)}
.document-frame{position:relative;isolation:isolate;height:152px;overflow:hidden;border:1px solid #323232;border-radius:16px 16px 0 0;background:#000;transform-origin:center bottom;transition:transform .28s ease;will-change:transform}
.paper-preview:hover .document-frame,.paper-preview:focus-visible .document-frame{transform:scale(1.018)}
.document-window{position:relative;height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#4a4a4a transparent;background:#000}
.document-sheet{height:240px;min-height:0;padding:27px 24px 40px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.document-kicker{margin:0 0 12px;color:#8b8b8b;font-size:7px;letter-spacing:.13em}
.preview-heading-line{display:block;height:8px;border-radius:1px;background:#efefef}
.preview-heading-long{width:68%}
.preview-heading-medium{width:56%}
.preview-heading-short{width:38%}
.preview-rule{display:block;width:100%;height:1px;margin:12px 0 9px;background:#303030}
.preview-section-line{display:block;width:30%;height:6px;margin:15px 0 5px;background:#b5b5b5}
.redaction{display:block;height:5px;border-radius:1px;background:#303030}
.redaction-long{width:84%}
.redaction-medium{width:62%}
.redaction-wide{width:95%}
.trace{position:absolute;z-index:2;inset:0;border-radius:15px 15px 0 0;pointer-events:none;background:linear-gradient(90deg,transparent 0 35%,rgba(255,255,255,.95) 48%,transparent 60%) 0 0/220% 1px no-repeat,linear-gradient(180deg,transparent 0 35%,rgba(255,255,255,.95) 48%,transparent 60%) 100% 0/1px 220% no-repeat;animation:trace 7s linear infinite;opacity:.68}
@keyframes trace{to{background-position:220% 0,100% 220%}}

.paper-card-copy{min-height:0;flex:1;padding:25px 8px 0;display:flex;flex-direction:column}
.paper-card-copy h3{margin:0;font-size:28px;font-weight:400;line-height:1.08;letter-spacing:-.035em}
.paper-card-copy p{max-width:510px;margin:16px 0 22px;color:#d0d0d0;font-size:16px;line-height:1.52}
.text-link{width:max-content;margin-top:auto;font-size:14px}
.text-link:hover{text-decoration:underline;text-underline-offset:4px}

.papers-explainer{position:relative;padding:56px 6.4vw 96px;background:#000;color:#fff;text-align:center}
.papers-explainer::after{display:none}
.papers-explainer-copy{max-width:940px;margin:0 auto;display:grid;gap:20px}
.papers-explainer p{margin:0;color:#d0d0d0;font-size:clamp(17px,1.45vw,19px);font-weight:400;line-height:1.56;letter-spacing:-.01em}
.papers-explainer small{display:block;margin-top:2px;color:#858585;font-size:12px;line-height:1.5}
.explainer-consulting{height:42px;margin:40px auto 0;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#000;font-size:14px}

.portal-lucy{min-height:72vh;padding:80px 6.4vw 120px;background:#000;color:#fff;display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:6vw;align-items:start}
.portal-lucy-portrait{width:100%;margin:0;align-self:center}
.portal-lucy-portrait .lucy-particle-canvas{display:block;width:100%;height:auto;object-fit:contain;transform:translateY(-4%) scale(1.12);transform-origin:center center}
.portal-lucy-copy{max-width:900px}
.portal-lucy h2{font-size:clamp(48px,5.4vw,92px)}
.portal-lucy p{max-width:720px;margin:42px 0 36px;color:#d0d0d0;font-size:22px;line-height:1.45}
.portal-lucy-assistant{display:block;width:max-content;max-width:100%;margin:-22px 0 32px;color:#888;font-size:11px;line-height:1.3}
.portal-lucy-assistant:hover{text-decoration:underline;color:#fff}
.portal-lucy-cta,.detail-contact,.detail-back-home{height:42px;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}
.portal-lucy-cta,.detail-contact{background:#fff;color:#000}

.detail-body{min-height:100vh;background:#000;color:#fff}
.detail-shell{min-height:100vh;padding:96px clamp(20px,3vw,44px) clamp(20px,3vw,44px);background:radial-gradient(circle at 84% 10%,rgba(174,136,255,.62),transparent 28%),radial-gradient(circle at 10% 80%,rgba(49,102,255,.75),transparent 42%),linear-gradient(145deg,#a9c9ff,#b7bdff 45%,#4358df 76%,#0a164a)}
.detail-card{position:relative;width:min(920px,100%);min-height:118vh;margin:0 auto;padding:clamp(92px,9vw,128px) clamp(36px,8vw,108px) clamp(100px,10vw,150px);border-radius:20px;background:#000}
.detail-back-home{position:absolute;top:28px;right:28px;border:1px solid #fff;background:#000;color:#fff}
.detail-back-home:hover{background:#fff;color:#000}
.detail-product-label{margin:0 0 32px;color:#8c8c8c;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.detail-card h1{max-width:720px;margin:0;font-size:clamp(52px,6vw,82px);font-weight:400;line-height:.96;letter-spacing:-.055em}
.detail-lede{max-width:650px;margin:38px 0 0;color:#d0d0d0;font-size:21px;line-height:1.5}
.detail-divider{display:none}
.detail-content{max-width:680px;display:grid;gap:58px}
.detail-section h2{margin:0 0 18px;font-size:30px;font-weight:400;line-height:1.1;letter-spacing:-.035em}
.detail-section p{margin:0;color:#aaa;font-size:18px;line-height:1.58}
.detail-contact{margin-top:62px}

@media(max-width:760px){
  .papers-hero{padding:156px 20px 70px}
  .papers-hero::after{top:39vh;background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.2) 90px,rgba(0,0,0,.58) 212px,rgba(0,0,0,.88) 350px,#000 470px,#000 100%)}
  .papers-hero h1{font-size:48px}
  .papers-tagline{margin-top:22px;font-size:18px}
  .papers-page .lucy-intro{padding-top:54px}
  .paper-groups{margin-top:102px;display:flex;flex-direction:column;gap:74px}
  .paper-group-audits{order:1}
  .paper-group-memo{order:2}
  .paper-group-heading{min-height:0;margin-bottom:28px}
  .paper-group-heading{height:auto}
  .paper-group-heading h2{font-size:32px}
  .paper-group-heading p{margin-top:14px;font-size:16px}
  .paper-group-memo{position:relative;isolation:isolate;padding-top:92px}
  .paper-group-memo::before{content:"";position:absolute;z-index:-1;top:0;left:-20px;right:-20px;height:620px;background:radial-gradient(circle at 14% 42%,rgba(49,102,255,.82),transparent 44%),radial-gradient(circle at 84% 24%,rgba(174,136,255,.72),transparent 40%),linear-gradient(to bottom,#000 0%,#a9c9ff 17%,#8d91ed 48%,#29376f 72%,#000 100%)}
  .paper-group-memo .paper-group-heading{margin-bottom:28px;color:#050505}
  .paper-group-memo .paper-group-heading p{color:#181818}
  .paper-group-cards{grid-template-rows:none;gap:34px}
  .paper-card{height:auto;min-height:0;padding:8px 8px 22px;overflow:visible}
  .paper-preview{padding:20px 24px 0;border-radius:6px}
  .document-frame{height:145px;border-radius:14px 14px 0 0}
  .document-sheet{height:228px;min-height:0;padding:24px 22px 34px;gap:9px}
  .trace{border-radius:13px 13px 0 0}
  .paper-card-copy{min-height:0;padding:20px 2px 0;flex:none}
  .paper-card-copy h3{font-size:25px}
  .paper-card-copy p{margin:13px 0 20px;font-size:16px}
  .papers-explainer{padding:48px 20px 80px}
  .papers-explainer p{font-size:18px}
  .papers-explainer small{font-size:11px}
  .explainer-consulting{margin-top:32px}
  .portal-lucy{min-height:72vh;padding:64px 20px 90px;display:flex;flex-direction:column;gap:48px}
  .portal-lucy-portrait{order:0}
  .portal-lucy-copy{order:1}
  .portal-lucy h2{font-size:46px}
  .portal-lucy p{margin:32px 0 30px;font-size:18px}
  .portal-lucy-assistant{margin:-18px 0 28px;font-size:10px}
  .detail-shell{padding:74px 10px 10px}
  .detail-card{min-height:125vh;padding:88px 24px 90px;border-radius:16px}
  .detail-back-home{top:16px;right:16px;height:36px;padding:0 14px;font-size:11px}
  .detail-product-label{margin-bottom:24px;font-size:9px}
  .detail-card h1{font-size:48px}
  .detail-lede{margin-top:30px;font-size:18px}
  .detail-divider{display:none}
  .detail-content{gap:44px}
  .detail-section h2{font-size:26px}
  .detail-section p{font-size:16px}
}
