[hidden]{display:none!important}
@view-transition{navigation:none}
body[data-studio-page=home] #concept-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 30px}
.card-art{margin:0;cursor:default!important;position:relative;overflow:hidden}
.card-title{cursor:default!important;text-align:left;font-weight:500;margin:0}
.card-media{position:relative}
.outcome-pill{position:absolute;left:13px;top:13px;z-index:3;padding:7px 12px;border-radius:24px;background:#faf9f4ef;color:#514657;font-size:11px;line-height:1.3;pointer-events:none;box-shadow:0 1px 6px #20142b08}
.concept-card:hover{transform:none!important}
.concept-card .card-art:hover{transform:none!important}
.studio-frame{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;opacity:0;transition:opacity .25s ease;pointer-events:none;border-radius:inherit;z-index:1}
.studio-frame.active{opacity:1}
.card-art:focus-visible{outline:2px solid #6b5374;outline-offset:5px}
.explore-all-row{display:flex;justify-content:center;padding-top:45px}
.explore-all-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 25px;border-radius:30px;color:#faf8f3!important;background:#322e37;text-decoration:none;font-size:14px}
.explore-all-link:hover{background:#514358}
.explore-all-link:focus-visible{outline:2px solid #6b5374;outline-offset:4px}
body[data-studio-page=explore] #possibilities{padding-top:65px}
body[data-studio-page=explore] #gallery-title{font-size:clamp(32px,3.5vw,48px);font-weight:500;letter-spacing:-.045em;line-height:1.15}
.studio-header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
@media(min-width:681px) and (max-width:1050px){.character-hero .intro-bottom,.character-hero .hero-experience{max-width:47%}.character-hero .intro-bottom p{font-size:14px;line-height:1.75}.character-hero .hero-experience{font-size:11px;line-height:1.8}}
@media(max-width:900px){body[data-studio-page=home] #concept-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 23px}}
@media(max-width:540px){body[data-studio-page=home] #concept-grid{grid-template-columns:1fr;gap:36px}body[data-studio-page=explore] #possibilities{padding-top:35px}.outcome-pill{font-size:11px;padding:7px 11px}}
@media(prefers-reduced-motion:reduce){.studio-frame{transition:none}.platform-cycle img,.platform-logo-cycle img,.ai-logo-cycle img{animation:none!important}}
/* One shared centreline; connectors occupy the actual space between nodes. */
.card-art.automation-art .mini-nodes{gap:10px;align-items:center}
.card-art.automation-art .mini-node,.card-art.automation-art .mini-node.mini-human{flex:0 0 48px;width:48px;height:48px}
.card-art.automation-art .mini-brand{width:48px;height:48px;transform:none!important;transition:none}
.card-art.automation-art .mini-node::after,.card-art.automation-art .mini-node::before{display:none!important}
.card-art.automation-art .flow-connector{position:relative;display:block;flex:1 1 0;min-width:10px;height:3px;background:radial-gradient(circle,#a396b0 1px,transparent 1.4px) center/7px 3px repeat-x}
.flow-connector::before,.flow-connector::after{content:'';position:absolute;top:0;width:3px;height:3px;border-radius:50%;background:#a396b0}
.flow-connector::before{left:0}.flow-connector::after{right:0}
.flow-dot{position:absolute;display:block;top:50%;left:0;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:#786188;opacity:0;animation:none}
.flow-playing .flow-dot{animation:flow-pass 2.4s linear var(--flow-delay,0s) 1 both}
@keyframes flow-pass{0%{left:0;opacity:0}8%{opacity:1}92%{opacity:1}100%{left:calc(100% - 6px);opacity:0}}
@media(prefers-reduced-motion:reduce){.flow-playing .flow-dot,.flow-dot{animation:none;display:none}}
/* A single, intentional ending to the selected collection. */
.explore-all-row{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:44px;padding:30px 0 0;border-top:1px solid #ded9e2}
.explore-all-row h3{font-size:23px;font-weight:500;letter-spacing:-.035em;line-height:1.25;margin:0 0 9px}
.explore-all-row p{font-size:14px;color:#746c7c;line-height:1.7;margin:0}
.explore-all-link{flex-shrink:0;background:transparent;color:#3d3344!important;border:1px solid #c8becf;min-height:48px;padding:12px 22px;transition:background .2s,border-color .2s}
.explore-all-link:hover{background:#ebe6ef;border-color:#a99ab6}
.explore-all-link::after{content:'→';margin-left:16px;font-size:19px;line-height:1}
/* One header geometry and material for the entire local candidate. */
.studio-header.header.nav-motion-ready{transition:max-width .65s cubic-bezier(.22,1,.36,1),padding .65s cubic-bezier(.22,1,.36,1),border-radius .65s cubic-bezier(.22,1,.36,1),background-color .5s,border-color .5s,box-shadow .5s}
.studio-header.header .wordmark{transition:font-size .65s cubic-bezier(.22,1,.36,1)}
.blog-page .studio-header.header{width:90vw;max-width:1320px;margin-left:50%;transform:translateX(-50%)}
.blog-page .studio-header.header.is-scrolled{max-width:960px}
@media(min-width:761px) and (max-width:1100px){.blog-page .studio-header.header.is-scrolled{max-width:840px}}
@media(max-width:760px){.blog-page .studio-header.header{width:calc(100vw - 32px)}.blog-page .studio-header.header.is-scrolled{width:calc(100vw - 24px);max-width:430px}.explore-all-row{align-items:start;flex-direction:column;gap:22px}.explore-all-row h3{font-size:21px}}
@view-transition{navigation:auto}
::view-transition-group(root){animation-duration:.28s}
::view-transition-old(root){animation:none;opacity:1;mix-blend-mode:normal}
::view-transition-new(root){animation:studio-soft-arrival .28s ease-out both;mix-blend-mode:normal}
@keyframes studio-soft-arrival{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.studio-header.header.nav-motion-ready,.studio-header.header .wordmark,.explore-all-link{transition:none}::view-transition-old(root),::view-transition-new(root){animation:none}}
/* A clean cream field between documents avoids overlapping old/new text. */
::view-transition{background:#f8f7f3}
::view-transition-old(root){opacity:0}
::view-transition-new(root){animation:studio-soft-arrival .22s ease-out both}
body.marketplace-home .studio-header.header,body.blog-page .studio-header.header{width:88vw;max-width:1320px}
body.marketplace-home .studio-header.header.is-scrolled,body.blog-page .studio-header.header.is-scrolled{max-width:960px}
@media(min-width:761px) and (max-width:1100px){body.marketplace-home .studio-header.header.is-scrolled,body.blog-page .studio-header.header.is-scrolled{max-width:840px}}
@media(max-width:760px){body.marketplace-home .studio-header.header,body.blog-page .studio-header.header,body.marketplace-home .studio-header.header.is-scrolled,body.blog-page .studio-header.header.is-scrolled{width:calc(100vw - 24px);max-width:430px}}
.studio-header.header:not(.nav-motion-ready) .wordmark{transition:none}
@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}.studio-header.header.nav-motion-ready,.studio-header.header .wordmark{transition:none!important}}
body.marketplace-home .explore-all-link:focus-visible{outline:2px solid #7b6687;outline-offset:4px;box-shadow:none}
/* Simple arrows, centred in the real space between each pair of icons. */
.card-art.automation-art .flow-connector{height:14px;background:center/100% 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 14' preserveAspectRatio='none' fill='none' stroke='%23978a9f' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 7h76m-5-4 5 4-5 4'/%3E%3C/svg%3E")}
.flow-connector::before,.flow-connector::after,.flow-dot{display:none!important;animation:none!important}
/* Quiet original-style connectors, with a slightly tighter icon group. */
.card-art.automation-art .mini-nodes{width:86%;min-width:184px;max-width:100%;margin-inline:auto}
.card-art.automation-art .flow-connector{height:12px;opacity:.4;background:center/18px 10px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 12' fill='none' stroke='%23958c9d' stroke-width='1.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6h19m-4-3 4 3-4 3'/%3E%3C/svg%3E")}
/* At rest, use the content container's exact edges; gather only on scroll. */
body.marketplace-home .studio-header.header,body.blog-page .studio-header.header{border-width:0}
body.marketplace-home .studio-header.header:not(.is-scrolled){width:calc(100% - 2 * var(--page-gutter));max-width:var(--page-width);padding-inline:0}
body.blog-page .studio-header.header:not(.is-scrolled){width:100%;max-width:var(--page-width);padding-inline:0}
body .studio-header.header:not(.is-scrolled) nav a:last-child{padding-right:0}
.studio-header nav a{transition:padding .65s cubic-bezier(.22,1,.36,1),background .2s,color .2s}
@media(prefers-reduced-motion:reduce){.studio-header nav a{transition:none}}
/* Scripted, browser-independent page handoff; the header stays above the veil. */
@view-transition{navigation:none}
html::after{content:'';position:fixed;inset:0;z-index:90;background:#f8f8f3;opacity:0;pointer-events:none;transition:opacity .19s cubic-bezier(.4,0,.6,1)}
html.studio-leaving::after,html.studio-arrival::after{opacity:1}
html.studio-arrival.studio-arrival-ready::after{opacity:0;transition:opacity .52s cubic-bezier(.22,1,.36,1)}
html.studio-arrival main{transform:translateY(5px)}
html.studio-arrival.studio-arrival-ready main{transform:translateY(0);transition:transform .65s cubic-bezier(.22,1,.36,1)}
.studio-header-transfer .wordmark{transition:none!important}
@media(prefers-reduced-motion:reduce){html::after{display:none;transition:none}html.studio-arrival main,html.studio-arrival.studio-arrival-ready main{transform:none;transition:none}}

/* A quieter desktop measure, with the founder kept beside the introduction. */
@media(min-width:1000px){
 body.marketplace-home,body.blog-page{--page-width:1200px;--page-gutter:clamp(80px,8vw,180px)}
}
@media(min-width:761px){
 body.marketplace-home .sean-trust .trust-intro{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(40px,6vw,88px);align-items:center}
 body.marketplace-home .sean-trust .trust-portrait{width:100%!important;max-width:none;justify-self:stretch!important}
}

/* Release checks: bounded hero scale and clear narrow-phone filter spacing. */
@media(min-width:1101px){
 body.marketplace-home .character-hero h1{font-size:clamp(52px,4.5vw,64px)}
 body.marketplace-home .character-hero .hero-inspector{width:40%;max-width:480px;right:0}
}
@media(max-width:360px){
 .catalogue-filters .idea-kind{gap:4px;justify-content:start}
 .catalogue-filters .idea-kind button{flex:0 0 auto;padding-inline:10px;font-size:11px}
}

/* Preserve the laptop composition as a whole on larger desktop displays.
   Layout zoom keeps fixed navigation, text and artwork on the same scale. */
@media (min-width:1601px){
 html{zoom:clamp(1,calc(100vw / 1600px),1.6)}
 body.marketplace-home,body.blog-page{--page-gutter:128px}
}
@media print{html{zoom:1}}
