/* Outcome-led portfolio. Content remains readable without JavaScript. */
.p-body { --p-bg:#0c0c0c; --p-ink:#f4f4f2; --p-muted:#aeb3bc; --p-line:#303238; --p-accent:#c3a1f2; background:var(--p-bg); color:var(--p-ink); font-family:'Kanit',sans-serif; overflow-x:clip; }
.p-body *, .p-body *::before, .p-body *::after { box-sizing:border-box; }
.p-body h2,.p-body h3,.p-body h4,.p-body p,.p-body figure { margin:0; }
.p-body a { color:inherit; }
.p-body a:focus-visible { outline:3px solid var(--p-accent); outline-offset:6px; }
.p-body img { display:block; width:100%; }
.p-body svg { width:22px; height:22px; flex-shrink:0; }
.p-sr-only { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; padding:0!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.p-section { padding:82px 40px; scroll-margin-top:24px; }
.p-container { width:min(1120px,100%); margin-inline:auto; }
.p-section-top { display:flex; align-items:baseline; gap:20px; margin-bottom:38px; }
.p-section-number { color:var(--p-accent); font-size:13px; line-height:1.5; letter-spacing:.1em; }
.p-display { font-size:clamp(54px,7.2vw,100px); font-weight:600; line-height:.96; letter-spacing:-.055em; text-transform:uppercase; text-wrap:balance; }
.p-section-copy { font-size:clamp(17px,1.6vw,20px); line-height:1.65; font-weight:300; color:#c6c9d0; }
.p-inline-link { text-decoration:underline; text-underline-offset:4px; }
.p-text-link { display:inline-flex; align-items:center; gap:10px; font-size:15px; font-weight:500; line-height:1.5; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:6px; }
.p-text-link svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; transition:transform .2s ease; }
.p-text-link:hover svg { transform:translate(2px,-2px); }
.p-builder { padding-top:80px; }
.p-builder-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); align-items:center; gap:70px; }
.p-builder-copy h3 { margin-bottom:22px; font-size:clamp(30px,3.8vw,48px); line-height:1.05; font-weight:500; letter-spacing:-.035em; }
.p-builder-copy .p-text-link { margin-top:28px; }
.p-product-screen { max-width:300px; justify-self:end; }
.p-product-screen img { width:100%; height:auto; max-height:530px; object-fit:contain; }
.p-founder { border-top:1px solid var(--p-line); }
.p-founder-intro { display:grid; grid-template-columns:minmax(0,1fr) 200px; align-items:center; gap:46px; margin-bottom:38px; }
.p-founder-intro h3 { margin-bottom:18px; max-width:700px; font-size:clamp(29px,3.6vw,46px); font-weight:500; line-height:1.12; letter-spacing:-.035em; }
.p-founder-portrait { border-radius:24px; overflow:hidden; aspect-ratio:1; }
.p-founder-portrait img { width:100%; height:100%; object-fit:cover; }
.p-founder-details { display:grid; grid-template-columns:1fr 1fr; gap:42px; padding-top:30px; border-top:1px solid var(--p-line); }
.p-founder-details h3 { margin-bottom:13px; font-size:20px; font-weight:500; letter-spacing:-.01em; }
.p-founder-details p,.p-founder-details li { color:#bdc2cb; font-size:16px; line-height:1.65; font-weight:300; }
.p-results { padding-left:19px; margin:0; }
.p-results li+li { margin-top:7px; }
.p-founder-residency { margin-top:30px!important; color:#bdc2cb; font-size:16px; line-height:1.65; font-weight:300; }
.p-founder-residency a { text-underline-offset:4px; }
.p-founder-note { margin-top:32px!important; padding:20px 0 0; border-top:1px solid var(--p-line); color:#cbbddd; font-size:16px; line-height:1.65; font-weight:300; }
.p-founder-aside { margin-top:16px!important; color:var(--p-muted); font-size:13px; line-height:1.6; }
.p-creator { border-top:1px solid var(--p-line); }
.p-creator-intro { max-width:700px; margin-bottom:30px!important; }
.p-reach { display:flex; flex-wrap:wrap; gap:6px 16px; margin:-12px 0 28px!important; color:var(--p-muted); font-size:12px; line-height:1.5; }
.p-reach a { color:var(--p-accent); text-underline-offset:4px; }
.p-content-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.p-video-card { position:relative; display:flex; min-height:292px; flex-direction:column; align-items:flex-start; justify-content:space-between; padding:30px; border-radius:24px; text-decoration:none; overflow:hidden; }
.p-video-one { background:#c4a5ed; color:#241235!important; }
.p-video-two { background:#ddd0f3; color:#29163f!important; }
.p-video-card>svg { position:absolute; width:170px; height:170px; right:-24px; bottom:-25px; fill:currentColor; opacity:.08; transform:rotate(-8deg); }
.p-video-meta { position:relative; display:flex; width:100%; align-items:center; justify-content:space-between; gap:16px; font-size:12px; font-weight:400; line-height:1.5; }
.p-video-meta svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.5; transition:transform .2s ease; }
.p-video-card:hover .p-video-meta svg { transform:translate(3px,-3px); }
.p-video-title { position:relative; margin-top:35px; }
.p-video-title h3 { max-width:370px; font-size:clamp(26px,3.5vw,43px); line-height:1.08; font-weight:500; letter-spacing:-.035em; }
.p-video-title p { margin-top:12px; font-size:20px; font-weight:500; }
.p-breakpoint-note { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:30px; padding-top:24px; border-top:1px solid var(--p-line); }
.p-breakpoint-note p { color:var(--p-muted); font-size:15px; line-height:1.6; }
.p-breakpoint-note .p-text-link { flex-shrink:0; font-size:13px; }
.p-services { background:#f1f0ed; color:#141318; border-radius:36px; margin:0 24px; padding:70px 40px; }
.p-services-grid { display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:start; }
.p-service-price { display:flex; gap:18px; align-items:center; margin-top:26px; }
.p-service-price strong { flex-shrink:0; font-size:72px; font-weight:600; line-height:1; letter-spacing:-.055em; }
.p-service-price span { min-width:0; max-width:190px; color:#56545b; font-size:16px; line-height:1.45; font-weight:300; }
.p-service-intro { max-width:480px; margin-top:24px!important; color:#55535b; font-size:17px; line-height:1.6; font-weight:300; }
.p-service-includes { display:grid; grid-template-columns:1fr 1fr; gap:0 28px; padding:0; margin:0 0 24px; list-style:none; }
.p-service-includes li { padding:15px 0; border-bottom:1px solid #14131826; font-size:17px; line-height:1.4; }
.p-service-includes li::before { content:'+'; margin-right:9px; color:#7239a8; }
.p-service-terms { margin-bottom:22px!important; color:#615d67; font-size:13px; line-height:1.6; }
.p-contact-button { display:inline-flex; align-items:center; justify-content:center; gap:16px; max-width:100%; padding:17px 27px; border:1px solid #d9c5ec; border-radius:999px; background:#8551bf; color:#fff!important; font-size:13px; font-weight:500; line-height:1.4; text-decoration:none; transition:background .2s ease,transform .2s ease; }
.p-contact-button svg { fill:none; stroke:currentColor; stroke-width:1.5; }
.p-contact-button:hover { background:#733eaa; transform:translateY(-2px); }
.p-services .p-contact-button { border-color:#21162f; background:#21162f; }
.p-services .p-contact-button:hover { background:#3d2157; }
.p-service-start { display:flex; flex-wrap:wrap; align-items:center; gap:20px; }
.p-service-start .p-text-link { font-size:13px; }
.p-custom-services { margin-top:44px; padding-top:30px; border-top:1px solid #14131826; }
.p-custom-services>h3 { font-size:30px; font-weight:500; line-height:1.15; letter-spacing:-.03em; }
.p-custom-intro { margin-top:12px!important; max-width:650px; color:#55535b; font-size:16px; font-weight:300; line-height:1.6; }
.p-custom-service-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 42px; margin:28px 0 0; padding:0; list-style:none; }
.p-custom-service-list li { display:flex; flex-direction:column; align-items:flex-start; padding-top:20px; border-top:1px solid #14131826; }
.p-custom-service-list h4 { font-size:22px; font-weight:500; line-height:1.2; letter-spacing:-.02em; }
.p-custom-service-list p { margin:12px 0 18px; max-width:440px; color:#55535b; font-size:16px; font-weight:300; line-height:1.6; }
.p-custom-service-list .p-text-link { margin-top:auto; font-size:13px; }
.p-connections { padding-top:65px; padding-bottom:65px; }
.p-connections h2 { color:var(--p-muted); font-size:14px; font-weight:400; line-height:1.5; }
.p-brand-row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; align-items:center; padding:30px 0; }
.p-brand { display:flex; min-height:82px; flex-direction:column; align-items:flex-start; justify-content:center; gap:11px; }
.p-brand-mark { display:flex; width:100%; max-width:170px; height:78px; align-items:center; justify-content:center; padding:13px 16px; border-radius:10px; background:#f2f2ef; }
.p-brand-mark-dark { background:#1f1f23; }
.p-brand img { width:100%; height:100%; max-width:150px; max-height:55px; object-fit:contain; }
.p-brand small { color:#8f969f; font-size:11px; line-height:1.5; font-weight:300; }
.p-brand-solana { border-left:1px solid var(--p-line); padding-left:28px; }
.p-press { padding:28px 0 22px; border-top:1px solid var(--p-line); }
.p-press-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:20px 0 0; padding:0; list-style:none; }
.p-press-grid a { display:flex; height:100%; flex-direction:column; overflow:hidden; border:1px solid var(--p-line); border-radius:16px; background:#141416; text-decoration:none; transition:border-color .2s ease; }
.p-press-image { display:block; width:100%; aspect-ratio:2/1; object-fit:cover; }
.p-press-copy { display:flex; flex:1; flex-direction:column; gap:18px; padding:23px; }
.p-press-grid a:hover { border-color:var(--p-accent); }
.p-press-publisher { display:flex; align-items:center; justify-content:space-between; gap:12px; color:var(--p-accent); font-size:13px; line-height:1.5; }
.p-press-publisher svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; }
.p-press-grid h3 { font-size:22px; line-height:1.3; font-weight:400; letter-spacing:-.02em; text-wrap:balance; }
.p-press-type { margin-top:auto; color:var(--p-muted); font-size:11px; line-height:1.5; }
.p-recommendations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; padding-top:28px; border-top:1px solid var(--p-line); }
.p-recommendation { margin:0; }
.p-recommendation blockquote { max-width:830px; margin:0; font-size:clamp(20px,2.2vw,27px); line-height:1.45; font-weight:400; letter-spacing:-.015em; }
.p-recommendation figcaption { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:17px; color:var(--p-muted); font-size:12px; line-height:1.7; font-weight:300; }
.p-recommendation a { text-underline-offset:4px; }
.p-contact { padding-top:65px; padding-bottom:24px; border-top:1px solid var(--p-line); }
.p-contact-main { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.p-contact .p-display { font-size:clamp(54px,8vw,100px); }
.p-contact-links { display:flex; flex-wrap:wrap; gap:14px 28px; margin:35px 0 55px; }
.p-contact-links a { color:#c1cad4; font-size:14px; line-height:1.6; text-decoration:none; }
.p-contact-links a:hover { color:#fff; text-decoration:underline; text-underline-offset:5px; }
.p-footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid var(--p-line); padding-top:22px; color:#858d97; font-size:11px; line-height:1.6; }
.p-footer-bottom>a { text-decoration:none; }
@media(min-width:768px) and (prefers-reduced-motion:no-preference) {
  .p-body [data-p-reveal].p-reveal-ready { transition:transform .65s ease-out,opacity .65s ease-out; }
  .p-body [data-p-reveal].p-reveal-ready:not(.p-is-visible) { opacity:0; transform:translateY(18px); }
}
@media(max-width:1000px) {
  .p-builder-grid { gap:42px; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); }
  .p-founder-intro { grid-template-columns:minmax(0,1fr) 170px; gap:30px; }
  .p-services-grid { gap:32px; }
  .p-service-includes { grid-template-columns:1fr; }
}
@media(max-width:767px) {
  .p-section { padding:56px 22px; }
  .p-section-top { margin-bottom:28px; gap:13px; }
  .p-section-number { font-size:11px; }
  .p-display { font-size:clamp(48px,11.5vw,78px); }
  .p-section-copy { font-size:17px; line-height:1.65; }
  .p-builder { padding-top:56px; }
  .p-builder-grid { grid-template-columns:1fr; gap:32px; }
  .p-builder-copy h3 { font-size:34px; }
  .p-builder-copy .p-text-link { margin-top:22px; }
  .p-product-screen { width:100%; max-width:300px; justify-self:center; }
  .p-product-screen img { max-height:460px; }
  .p-founder-intro { grid-template-columns:minmax(0,1fr) 100px; gap:20px; margin-bottom:30px; }
  .p-founder-intro h3 { font-size:28px; }
  .p-founder-portrait { align-self:start; border-radius:16px; }
  .p-founder-details { grid-template-columns:1fr; gap:28px; padding-top:26px; }
  .p-founder-details h3 { font-size:21px; }
  .p-founder-details p,.p-founder-details li { font-size:16px; }
  .p-founder-note { font-size:15px; }
  .p-founder-aside { font-size:12px; }
  .p-content-grid { grid-template-columns:1fr; gap:16px; }
  .p-video-card { min-height:260px; padding:26px; }
  .p-video-title h3 { font-size:37px; }
  .p-video-title p { font-size:19px; }
  .p-breakpoint-note { flex-direction:column; align-items:flex-start; gap:14px; margin-top:25px; }
  .p-services { margin:0 12px; padding:44px 22px; border-radius:26px; }
  .p-services-grid { grid-template-columns:1fr; gap:28px; }
  .p-service-price { margin-top:22px; }
  .p-service-price strong { font-size:64px; }
  .p-service-intro { font-size:16px; margin-top:20px!important; }
  .p-service-includes { grid-template-columns:1fr 1fr; gap:0 18px; margin-bottom:22px; }
  .p-service-includes li { font-size:15px; padding:13px 0; }
  .p-contact-button { padding:16px 23px; font-size:12px; }
  .p-service-start { gap:18px; }
  .p-custom-services { margin-top:34px; padding-top:26px; }
  .p-custom-service-list { grid-template-columns:1fr; gap:26px; margin-top:24px; }
  .p-connections { padding-top:48px; padding-bottom:48px; }
  .p-brand-row { grid-template-columns:1fr 1fr; gap:24px 18px; padding:25px 0; }
  .p-brand { min-height:75px; }
  .p-brand-solana { border-left:0; padding-left:0; }
  .p-press-grid { grid-template-columns:1fr; gap:12px; }
  .p-press-copy { gap:14px; padding:22px; }
  .p-recommendations { grid-template-columns:1fr; gap:32px; }
  .p-press-grid h3 { font-size:22px; }
  .p-contact { padding-top:48px; padding-bottom:22px; }
  .p-contact-main { align-items:flex-start; flex-direction:column; gap:25px; }
  .p-contact .p-display { font-size:clamp(48px,11.5vw,78px); }
  .p-contact-links { gap:16px 22px; margin:30px 0 40px; }
  .p-contact-links a { font-size:13px; }
  .p-footer-bottom { align-items:flex-start; font-size:10px; gap:24px; }
}
@media(max-width:370px) {
  .p-section { padding-left:16px; padding-right:16px; }
  .p-founder-intro { grid-template-columns:1fr; }
  .p-founder-portrait { width:120px; }
  .p-video-card { padding:23px; }
  .p-video-title h3 { font-size:32px; }
  .p-services { padding-inline:20px; }
  .p-service-includes { grid-template-columns:1fr; }
  .p-footer-bottom { flex-direction:column; gap:14px; }
}
@media(prefers-reduced-motion:reduce) {
  .p-body *,.p-body *::before,.p-body *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
/* Direct destinations for company names and the additional founder interview. */
.p-heading-link { text-decoration:none; }
.p-heading-link:hover { text-decoration:underline; text-underline-offset:6px; }
.p-brand-mark { text-decoration:none; }
.p-brand-mark:hover { outline:1px solid var(--p-accent); outline-offset:3px; }
.p-creator-partners a,.p-experience-catalog li a { text-decoration:underline; text-decoration-color:#7c688d; text-underline-offset:4px; }
.p-creator-partners a:hover,.p-experience-catalog li a:hover { color:#fff; text-decoration-color:var(--p-accent); }
.p-founder-interview { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); margin-bottom:24px; overflow:hidden; border:1px solid var(--p-line); border-radius:18px; background:#141416; text-decoration:none; }
.p-founder-interview:hover { border-color:var(--p-accent); }
.p-founder-interview .p-appearance-image { height:100%; min-height:235px; }
.p-founder-interview-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:13px; padding:28px 32px; }
.p-founder-interview-copy>span:first-child { color:var(--p-accent); font-size:12px; line-height:1.5; }
.p-founder-interview-copy h3 { max-width:490px; font-size:clamp(24px,3vw,36px); font-weight:400; line-height:1.15; letter-spacing:-.025em; }
.p-founder-interview-copy p { color:var(--p-muted); font-size:14px; font-weight:300; line-height:1.6; }
.p-interview-action { color:#ddd1ef; font-size:13px; line-height:1.5; text-decoration:underline; text-underline-offset:4px; }
@media(max-width:1000px) and (min-width:768px) {
  .p-press-grid { gap:14px; }
  .p-press-copy { padding:19px; }
  .p-press-grid h3 { font-size:20px; }
}
@media(max-width:767px) {
  .p-founder-interview { grid-template-columns:1fr; }
  .p-founder-interview .p-appearance-image { min-height:0; }
  .p-founder-interview-copy { gap:12px; padding:25px; }
}

@media(max-width:370px) {
  .p-service-price { flex-direction:column; align-items:flex-start; gap:8px; }
  .p-service-price span { max-width:none; }
}
