
:root{--bg:#FAF8F5;--bg2:#F2EFEA;--paper:#fff;--text:#0A0A0A;--secondary:#525252;--muted:#8A8A8A;--border:rgba(10,10,10,.08);--strong:rgba(10,10,10,.15);--accent:#7040F6;--accent2:#A855F7;--deep:#5B2DE0;--mint:#4ED3B4;--yellow:#F5B942;--pink:#FF6BC8;--black:#050505;--shadow:0 30px 70px -25px rgba(10,10,10,.18);--mono:'Space Mono',ui-monospace,monospace;--sans:'Space Grotesk',Inter,system-ui,sans-serif;--head:'Epilogue','Space Grotesk',system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}.noise:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.42;background-image:radial-gradient(rgba(112,64,246,.08) 1px,transparent 1px),radial-gradient(rgba(78,211,180,.08) 1px,transparent 1px);background-size:42px 42px,58px 58px;background-position:0 0,20px 28px;z-index:-1}.nav{position:fixed;top:0;left:0;right:0;z-index:99;padding:1.12rem 2.5rem;display:flex;align-items:center;justify-content:space-between;background:rgba(250,248,245,.82);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.logo{font-family:var(--head);font-weight:900;font-size:1.45rem;color:var(--accent);letter-spacing:-.06em;text-decoration:none}.nav-label,.label{font-family:var(--mono);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:#6f6f6f;font-weight:700}.nav-actions{display:flex;gap:1.35rem;align-items:center}.nav a.small{font-family:var(--mono);font-size:.72rem;color:var(--secondary);text-decoration:none;text-transform:uppercase;letter-spacing:.08em}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid var(--text);background:var(--text);color:var(--bg);border-radius:999px;padding:.74rem 1.15rem;font-weight:700;font-size:.88rem;box-shadow:0 12px 32px -16px rgba(0,0,0,.5)}.btn.ghost{background:transparent;color:var(--text);box-shadow:none}.wrap{width:min(1180px,calc(100vw - 48px));margin:auto}.hero{min-height:100vh;padding:9.5rem 0 5rem;position:relative;display:grid;align-items:center}.pixel-cloud{position:absolute;inset:0;z-index:-1;opacity:.7;background:linear-gradient(90deg,rgba(112,64,246,.10),transparent 25%,rgba(78,211,180,.09) 75%,transparent),radial-gradient(circle at 18% 28%,rgba(168,85,247,.22),transparent 28%),radial-gradient(circle at 78% 18%,rgba(78,211,180,.20),transparent 24%)}.pixel-cloud:after{content:"";position:absolute;inset:6% 0 10%;background-image:linear-gradient(90deg,rgba(112,64,246,.16) 1px,transparent 1px),linear-gradient(rgba(112,64,246,.12) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle at 18% 30%,#000 0 22%,transparent 44%),radial-gradient(circle at 80% 20%,#000 0 20%,transparent 42%);-webkit-mask-image:radial-gradient(circle at 18% 30%,#000 0 22%,transparent 44%),radial-gradient(circle at 80% 20%,#000 0 20%,transparent 42%)}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:5rem;align-items:center}.rule{width:100%;height:1px;background:var(--border);margin:2rem 0}.hero h1{font-family:var(--head);font-size:clamp(3.1rem,7.2vw,6.2rem);line-height:.86;letter-spacing:-.095em;color:var(--accent);margin:.75rem 0 0}.hero-copy{font-size:clamp(1rem,1.35vw,1.18rem);color:var(--secondary);max-width:780px}.hero-meta{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:start}.contract{border-left:1px solid var(--border);padding-left:1.5rem;min-width:160px}.contract strong{display:block;font-family:var(--head);font-size:1.65rem;letter-spacing:-.06em}.hero-actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2.2rem}.flow{position:relative;padding-left:2.2rem}.flow:before{content:"";position:absolute;left:.75rem;top:1rem;bottom:1rem;width:1px;background:linear-gradient(var(--mint),var(--border),var(--accent))}.engine{display:flex;align-items:center;gap:.55rem;margin-bottom:1rem;font-family:var(--mono);font-size:.72rem;color:var(--secondary);text-transform:uppercase}.pulse{width:.62rem;height:.62rem;border-radius:50%;background:var(--mint);box-shadow:0 0 0 8px rgba(78,211,180,.12)}.mini-card{position:relative;background:rgba(255,255,255,.88);border:1px solid var(--border);border-radius:18px;padding:1.25rem;margin:0 0 1rem;box-shadow:0 18px 46px -28px rgba(10,10,10,.20);backdrop-filter:blur(10px)}.mini-card:after{content:"";position:absolute;left:-1.32rem;top:1.72rem;width:1.12rem;height:1px;background:rgba(112,64,246,.25)}.mini-card:before{content:"";position:absolute;left:-2.03rem;top:1.38rem;width:.72rem;height:.72rem;border-radius:50%;background:var(--bg);border:2px solid var(--accent)}.mini-card:nth-child(2):before{background:var(--mint);border-color:var(--mint)}.mini-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.badge{font-family:var(--mono);font-size:.7rem;color:var(--accent);background:rgba(112,64,246,.08);border:1px solid rgba(112,64,246,.12);border-radius:999px;padding:.28rem .5rem}.mini-card h3{margin:.55rem 0 .25rem;font-family:var(--head);font-size:1.15rem;letter-spacing:-.045em}.mini-card p{margin:0;color:var(--secondary);font-size:.92rem}.bars{display:grid;gap:.35rem;margin-top:1rem}.bar{height:5px;border-radius:999px;background:#eee;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--mint));border-radius:999px}.section{padding:5.5rem 0;border-top:1px solid var(--border)}.section.alt{background:var(--bg2)}.section-head{max-width:850px;margin-bottom:3rem}.section h2,.page-title{font-family:var(--head);font-size:clamp(1.85rem,3.7vw,3.45rem);line-height:.96;letter-spacing:-.075em;margin:.7rem 0;color:var(--text)}.section h2 em,.page-title em{font-style:normal;color:var(--accent)}.sub{font-size:1.03rem;color:var(--secondary);max-width:760px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.step-card{position:relative;min-height:280px;padding:1.6rem;border-radius:22px;background:var(--paper);border:1px solid var(--border);box-shadow:0 1px 3px rgba(0,0,0,.03);text-decoration:none;color:var(--text);overflow:hidden;transition:.25s}.step-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(112,64,246,.22)}.step-card:after{content:attr(data-num);position:absolute;right:1.2rem;bottom:-.65rem;font-family:var(--head);font-size:4.2rem;font-weight:900;letter-spacing:-.1em;color:rgba(112,64,246,.08)}.step-card h3{font-family:var(--head);font-size:1.38rem;line-height:1.04;letter-spacing:-.06em;margin:1.5rem 0 .8rem}.step-card p{color:var(--secondary);margin:0}.step-card .open{position:absolute;left:1.6rem;bottom:1.4rem;font-weight:800;color:var(--accent)}.dark-band{position:relative;overflow:hidden;background:#050505;color:white;padding:6.5rem 0}.dark-band:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(112,64,246,.32) 1px,transparent 1px),linear-gradient(rgba(168,85,247,.20) 1px,transparent 1px),radial-gradient(circle at 75% 40%,rgba(78,211,180,.28),transparent 28%);background-size:38px 38px,38px 38px,100% 100%;opacity:.8}.footer{position:relative;overflow:hidden}.footer:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(112,64,246,.16) 1px,transparent 1px),linear-gradient(rgba(78,211,180,.10) 1px,transparent 1px);background-size:42px 42px;opacity:.22}.footer .wrap{position:relative}.dark-band .wrap{position:relative}.dark-band h2{font-family:var(--head);font-size:clamp(1.95rem,4vw,4.4rem);line-height:.92;letter-spacing:-.08em;max-width:900px;margin:0}.dark-band h2 span{color:var(--mint)}.process{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.process-card{background:#fff;border:1px solid var(--border);border-radius:24px;padding:2rem;box-shadow:var(--shadow)}.process-card h3{font-family:var(--head);font-size:1.32rem;letter-spacing:-.05em;margin:.5rem 0}.process-card p{color:var(--secondary);font-size:1.03rem}.list{list-style:none;margin:1.4rem 0 0;padding:0;display:grid;gap:.72rem}.list li{position:relative;padding:.95rem 1rem .95rem 2.65rem;border:1px solid var(--border);border-radius:15px;background:rgba(250,248,245,.62);color:var(--secondary)}.list li:before{content:"";position:absolute;left:1rem;top:1.28rem;width:.55rem;height:.55rem;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(78,211,180,.12)}.page-hero{padding:7.2rem 0 3.2rem;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:3rem}.page-copy{background:#fff;border:1px solid var(--border);border-radius:28px;padding:2.5rem;box-shadow:var(--shadow)}.page-copy h2{font-family:var(--head);font-size:1.65rem;letter-spacing:-.06em;margin:0 0 1rem}.page-copy p{font-size:1rem;color:var(--secondary);margin:0 0 1.1rem}.side{position:sticky;top:6.5rem;align-self:start;background:#fff;border:1px solid var(--border);border-radius:24px;padding:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.03)}.side h3{font-family:var(--head);letter-spacing:-.05em;font-size:1.45rem;margin:.8rem 0}.side p{color:var(--secondary)}.pager{display:grid;gap:.7rem;margin-top:1rem}.pager a{text-decoration:none;color:var(--text);border:1px solid var(--border);border-radius:14px;padding:.9rem;background:var(--bg);font-weight:800}.footer{background:#050505;color:#bdbdbd;padding:4rem 0 2.5rem}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:2rem;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:2rem}.footer .logo{display:block;margin-bottom:1rem}.footer p{max-width:620px;color:#a7a7a7}.footnote{display:flex;justify-content:space-between;gap:1rem;padding-top:1.4rem;font-family:var(--mono);font-size:.72rem;text-transform:uppercase;color:#777}.conf{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;text-align:right;color:#777}.mobile-only{display:none}@media(max-width:980px){.hero-grid,.page-grid,.process{grid-template-columns:1fr}.flow{margin-top:2rem}.grid{grid-template-columns:1fr 1fr}.nav-label{display:none}.hero{min-height:auto}.page-title,.hero h1{font-size:clamp(2.8rem,12vw,4.8rem)}}@media(max-width:640px){.nav{padding:1rem}.nav-actions a.small{display:none}.wrap{width:min(100vw - 28px,1180px)}.hero{padding-top:7rem}.grid{grid-template-columns:1fr}.hero-meta{grid-template-columns:1fr}.contract{border-left:0;border-top:1px solid var(--border);padding:1rem 0 0}.section{padding:4.5rem 0}.page-copy{padding:1.35rem}.footer-grid,.footnote{display:block}.conf{text-align:left;margin-top:1.4rem}}

.page-copy .list + h2{margin-top:2.4rem}

.market-table{width:100%;border-collapse:separate;border-spacing:0 .65rem;margin-top:1.4rem}.market-table th{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;text-align:left;color:#6f6f6f;padding:.4rem .75rem}.market-table td{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:.95rem .75rem;color:var(--secondary);vertical-align:top;font-size:.98rem}.market-table td:first-child{border-left:1px solid var(--border);border-radius:14px 0 0 14px;color:var(--text);font-weight:700}.market-table td:last-child{border-right:1px solid var(--border);border-radius:0 14px 14px 0}.source-list a{color:var(--accent);word-break:break-word;font-weight:700}.market-table a{display:inline-block;margin-bottom:.18rem;color:var(--accent);font-weight:700}.callout{border:1px solid rgba(112,64,246,.18);background:rgba(112,64,246,.055);border-radius:20px;padding:1.25rem;margin:1.4rem 0}.callout strong{color:var(--accent)}.creative-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.2rem}.creative-box{border:1px solid var(--border);background:#fff;border-radius:18px;padding:1.2rem}.creative-box h3{font-family:var(--head);font-size:1.15rem;letter-spacing:-.04em;margin:.2rem 0 .5rem}.creative-box p{font-size:.96rem;color:var(--secondary);margin:.25rem 0}@media(max-width:760px){.market-table,.market-table tbody,.market-table tr,.market-table td,.market-table th{display:block}.market-table thead{display:none}.market-table td{border:1px solid var(--border);border-radius:0!important;border-bottom:0}.market-table td:first-child{border-radius:14px 14px 0 0!important}.market-table td:last-child{border-bottom:1px solid var(--border);border-radius:0 0 14px 14px!important}.creative-grid{grid-template-columns:1fr}}

.visual-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.5rem 0 2rem}.visual-card{background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:0 20px 50px -32px rgba(10,10,10,.28)}.visual-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top center;background:#f3f3f3}.visual-card figcaption{padding:1rem;border-top:1px solid var(--border)}.visual-card figcaption strong{display:block;font-family:var(--head);font-size:1.05rem;letter-spacing:-.04em;margin-bottom:.25rem}.visual-card figcaption span{display:block;color:var(--secondary);font-size:.92rem}.visual-note{font-size:.9rem;color:var(--secondary);margin-top:-.6rem;margin-bottom:1.2rem}@media(max-width:780px){.visual-gallery{grid-template-columns:1fr}.visual-card img{aspect-ratio:4/3}}

.visual-link{display:block;color:inherit;text-decoration:none}.visual-link:focus{outline:3px solid rgba(112,64,246,.35);outline-offset:3px}.visual-card:hover img{filter:saturate(1.04);transform:scale(1.01)}.visual-card img{transition:.22s ease}


/* Fullscreen presentation mode — added 2026-05-20 */
body.presentation-deck{--deck-pad:clamp(2.2rem,4vw,5rem);background:var(--bg);}
body.presentation-deck .nav{height:58px;padding:.72rem 1.5rem;background:rgba(250,248,245,.9)}
body.presentation-deck .nav-actions{gap:.8rem}
body.presentation-deck .nav-actions a.small{display:none}
body.presentation-deck main{padding-top:58px}
body.presentation-deck .hero,
body.presentation-deck .page-hero,
body.presentation-deck .section,
body.presentation-deck .dark-band,
body.presentation-deck .deck-section{min-height:calc(100vh - 58px);display:flex;align-items:center;scroll-snap-align:start;padding:var(--deck-pad) 0;position:relative;overflow:hidden}
body.presentation-deck .hero:after,
body.presentation-deck .page-hero:after,
body.presentation-deck .section:after,
body.presentation-deck .dark-band:after,
body.presentation-deck .deck-section:after{content:attr(data-slide-label);position:absolute;right:1.5rem;bottom:1.1rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(10,10,10,.38)}
body.presentation-deck .wrap{width:min(1180px,calc(100% - 5vw));}
body.presentation-deck .hero-grid{grid-template-columns:1.05fr .95fr;align-items:center}
body.presentation-deck .hero h1,
body.presentation-deck .page-title{font-size:clamp(3.2rem,7vw,7.8rem);line-height:.88;letter-spacing:-.085em;max-width:1100px}
body.presentation-deck .section-head h2,
body.presentation-deck .dark-band h2,
body.presentation-deck .page-copy h2{font-size:clamp(2.6rem,5.2vw,5.6rem);line-height:.94;letter-spacing:-.075em;margin:.25rem 0 1rem;max-width:1050px}
body.presentation-deck .sub,
body.presentation-deck .hero-copy,
body.presentation-deck .page-copy p{font-size:clamp(1.05rem,1.45vw,1.45rem);line-height:1.45;max-width:980px}
body.presentation-deck .process,
body.presentation-deck .grid,
body.presentation-deck .creative-grid,
body.presentation-deck .visual-gallery{max-height:58vh;overflow:auto;padding-right:.25rem;scrollbar-width:thin}
body.presentation-deck .process-card,
body.presentation-deck .step-card,
body.presentation-deck .creative-box,
body.presentation-deck .visual-card{box-shadow:0 24px 60px -32px rgba(10,10,10,.25)}
body.presentation-deck .market-table{font-size:clamp(.9rem,1vw,1.04rem)}
body.presentation-deck .market-table td{padding:.78rem .7rem}
body.presentation-deck .page-grid{display:block}
body.presentation-deck .page-side{display:none}
body.presentation-deck .page-copy{max-width:100%}
body.presentation-deck .page-copy>h2:first-child{margin-top:0}
body.presentation-deck .deck-section .page-copy{background:transparent;border:0;padding:0}
body.presentation-deck .deck-section .market-table,
body.presentation-deck .deck-section .visual-gallery,
body.presentation-deck .deck-section .creative-grid{max-height:52vh;overflow:auto}
body.presentation-deck .footer{min-height:38vh;display:flex;align-items:center}
.deck-controls{position:fixed;right:1rem;top:72px;z-index:120;display:flex;align-items:center;gap:.45rem;background:rgba(255,255,255,.78);border:1px solid var(--border);backdrop-filter:blur(14px);box-shadow:0 18px 40px -28px rgba(0,0,0,.4);border-radius:999px;padding:.38rem .48rem;font-family:var(--mono)}
.deck-controls button,.deck-controls a{border:0;background:var(--text);color:var(--bg);border-radius:999px;padding:.48rem .7rem;font-family:var(--mono);font-weight:700;font-size:.68rem;letter-spacing:.04em;text-decoration:none;cursor:pointer}.deck-controls .ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.deck-progress{min-width:4.6rem;text-align:center;color:var(--secondary);font-size:.68rem;font-weight:700}.deck-hint{position:fixed;left:1rem;bottom:1rem;z-index:120;background:rgba(10,10,10,.75);color:#fff;border-radius:999px;padding:.52rem .75rem;font-family:var(--mono);font-size:.65rem;letter-spacing:.04em;backdrop-filter:blur(10px)}
@media (min-width:900px){body.presentation-deck{scroll-snap-type:y proximity}body.presentation-deck .section-head{margin-bottom:1.5rem}.deck-section .wrap{display:block}}
@media (max-width:860px){body.presentation-deck .hero-grid{grid-template-columns:1fr}body.presentation-deck .hero,body.presentation-deck .page-hero,body.presentation-deck .section,body.presentation-deck .dark-band,body.presentation-deck .deck-section{min-height:auto;overflow:visible}.deck-controls{top:auto;bottom:1rem;right:1rem}.deck-hint{display:none}body.presentation-deck .process,body.presentation-deck .grid,body.presentation-deck .creative-grid,body.presentation-deck .visual-gallery,body.presentation-deck .deck-section .market-table{max-height:none;overflow:visible}}
@media print{.deck-controls,.deck-hint,.nav{display:none!important}body.presentation-deck main{padding-top:0}body.presentation-deck .hero,body.presentation-deck .page-hero,body.presentation-deck .section,body.presentation-deck .dark-band,body.presentation-deck .deck-section{min-height:100vh;page-break-after:always}}


/* Continuous deck cleanup — added 2026-05-20 */
article.step-card{display:block;color:inherit;text-decoration:none;cursor:default}
article.step-card:hover{transform:none}
body.presentation-deck article.step-card .open{color:var(--accent);opacity:.72}
