/* Product-led presentation. Local Hanken type and the existing green/lime identity. */
.showcase-home,.service-page{--rw-canvas:#fafbf8;--rw-soft:#f0f2ec;--rw-muted:#58675e;--ps-stage:#e9ede4;--ps-dark:#152b24;--ps-on-dark:#f5f7f2;--ps-radius:24px;--ps-section:128px}
:root[data-theme=dark] .showcase-home,:root[data-theme=dark] .service-page{--rw-canvas:#101212;--rw-soft:#1b201e;--rw-muted:#aeb9b2;--ps-stage:#252e29;--ps-dark:#171e1a}
.showcase-home .rw-shell,.service-page .rw-shell{width:min(1280px,calc(100% - 96px))}
.showcase-home h1,.service-page h1{font-size:clamp(52px,7.2vw,104px);line-height:1.01;letter-spacing:-.06em;font-weight:580}
.showcase-home h2,.service-page h2{font-size:clamp(36px,4.4vw,64px);line-height:1.05;letter-spacing:-.05em;font-weight:570}
.showcase-home h2 span,.service-page h1 span{color:var(--rw-muted)}
.ps-kicker{font-size:14px;font-weight:550;letter-spacing:.015em;line-height:1.5;color:var(--rw-muted)}
.ps-hero{padding-top:88px;overflow:clip}.ps-hero-copy{text-align:center}.ps-hero h1{margin:24px 0 0}.ps-hero h1>span{color:var(--rw-ink)}.ps-hero h1>span::after{content:'.';display:none}.ps-hero-lead{font-size:21px;color:var(--rw-muted);line-height:1.5;margin:26px auto 0!important;max-width:620px}.ps-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:30px}.ps-hero .ps-actions{justify-content:center}
.showcase-home .rw-button,.service-page .rw-button{border-radius:999px;padding:14px 25px;min-height:52px;gap:20px;font-weight:550;box-shadow:none;transition:background 150ms ease,transform 150ms var(--ease-out)}.showcase-home .rw-button:hover,.service-page .rw-button:hover{transform:none;box-shadow:none}.showcase-home .rw-button:active,.service-page .rw-button:active{transform:scale(.97)}
.ps-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;text-decoration:none;font-size:16px;font-weight:550}.ps-link span{font-size:21px}.ps-hero-stage{position:relative;height:580px;margin-top:68px;padding:30px 105px 0;isolation:isolate}.ps-hero-stage::before{content:'';position:absolute;inset:72px 0 16px;background:var(--ps-stage);border-radius:var(--ps-radius);z-index:-1}.ps-hero-desktop{width:90%;margin:auto;border:7px solid #23302b;border-bottom-width:10px;border-radius:16px;overflow:hidden;box-shadow:0 22px 50px #1125191f;background:#fff;transform-origin:50% 70%}.ps-hero-desktop img{width:100%;display:block}.ps-browser-bar{height:30px;display:flex;align-items:center;gap:5px;padding:0 12px;background:#f2f4f0;color:#536158;font-size:10px;letter-spacing:.01em}.ps-browser-bar i{display:block;width:5px;height:5px;border-radius:50%;background:#b8c0b8}.ps-browser-bar span{margin:auto;font-weight:500;padding-right:18px}.ps-hero-phone{position:absolute;bottom:15px;right:8%;width:178px;border:6px solid #1c201e;border-radius:28px;overflow:hidden;box-shadow:0 16px 40px #152b2440;transform:rotate(4deg);background:#181a18}.ps-hero-phone img{display:block;width:100%}.ps-hero-caption{position:absolute;bottom:42px;left:44px;display:flex;align-items:start;gap:9px;font-size:12px;line-height:1.5;color:var(--rw-muted)}.ps-caption-dot{width:6px;height:6px;flex-shrink:0;margin-top:6px;background:#6e8e35;border-radius:50%}.ps-hero-note{text-align:center;font-size:11px;color:var(--rw-muted);margin-top:18px!important;padding-inline:20px}
.ps-intro{padding-block:var(--ps-section)}.ps-section-heading{max-width:740px}.ps-section-heading h2{margin-top:22px}.ps-section-heading>p:last-child{font-size:19px;line-height:1.6;color:var(--rw-muted);max-width:610px;margin-top:28px}.ps-services{margin-top:64px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.ps-services>a{display:block;border-top:1px solid var(--rw-line);padding-top:24px;text-decoration:none}.ps-services>a>span{font-size:12px;color:var(--rw-muted)}.ps-services h3{font-size:30px;letter-spacing:-.04em;line-height:1.12;margin-top:26px}.ps-services p{font-size:16px;color:var(--rw-muted);line-height:1.6;margin-top:20px;max-width:320px}.ps-services strong{font-size:13px;font-weight:550;display:block;margin-top:22px}
.ps-work-heading{padding-bottom:56px}.ps-work-heading h2{margin-top:20px}.ps-work-heading nav{display:flex;gap:30px;flex-wrap:wrap;margin-top:32px}.ps-work-heading nav a{font-size:14px;min-height:44px;display:flex;align-items:center;text-decoration:none;border-bottom:1px solid var(--rw-line)}
.ps-product{padding-block:80px 64px;background:var(--rw-soft);scroll-margin-top:25px}.ps-product+.ps-product{margin-top:16px}.ps-product-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;margin-bottom:48px}.ps-product-heading h3{font-size:20px;letter-spacing:-.025em;margin-top:12px;font-weight:650}.ps-product-heading h2{margin-top:20px;font-size:clamp(36px,4.2vw,60px)}.ps-product-description>p{font-size:18px;color:var(--rw-muted);line-height:1.6;max-width:380px}.ps-product-description>a{margin-top:20px}.ps-product-stage{border-radius:var(--ps-radius);overflow:hidden;position:relative;background:var(--ps-stage);min-height:0;padding:56px 72px 0}.ps-browser{border:6px solid #27382f;border-bottom:0;border-radius:14px 14px 0 0;overflow:hidden;box-shadow:0 16px 42px #183c321a;background:white}.ps-browser>img{display:block;width:100%}.ps-product-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:28px}.ps-product-bottom ul{display:flex;list-style:none;gap:30px;margin:0;padding:0;font-size:13px;font-weight:500;flex-wrap:wrap}.ps-product-bottom li::before{content:'✓';margin-right:8px;color:var(--rw-muted)}.ps-demo-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:550;text-decoration:none;white-space:nowrap;min-height:44px}.ps-demo-link>span{display:grid;place-items:center;width:32px;height:32px;background:var(--rw-ink);color:var(--rw-canvas);border-radius:50%;font-size:16px;padding-left:2px}.ps-media-note{font-size:11px!important;color:var(--rw-muted);line-height:1.6!important;margin-top:18px!important}
.ps-product-randalo{background:var(--ps-dark);color:var(--ps-on-dark);--rw-ink:var(--ps-on-dark);--rw-muted:#b4c3b9;--rw-line:#46594c;--rw-canvas:#152b24;--ps-stage:#213d30}.ps-product-randalo .ps-product-stage{padding:48px 48px 0}.ps-phones{display:flex;align-items:end;justify-content:center;gap:42px;max-height:660px;overflow:hidden}.ps-phones>img{width:24%;border:7px solid #0e1210;border-radius:32px;box-shadow:0 20px 50px #0003;display:block;transform:translateY(70px) rotate(-6deg)}.ps-phones>img:nth-child(2){width:27%;transform:none;position:relative;z-index:1}.ps-phones>img:nth-child(3){transform:translateY(70px) rotate(6deg)}.ps-product-keinbock{--ps-stage:#e9e8ee}.ps-product-keinbock .ps-browser{border-color:#34323d}:root[data-theme=dark] .ps-product-keinbock{--ps-stage:#302e39}
.ps-demo{margin-top:26px;border-top:1px solid var(--rw-line);border-bottom:1px solid var(--rw-line)}.ps-demo summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:15px;font-weight:550}.ps-demo summary::-webkit-details-marker{display:none}.ps-demo summary>span{font-size:24px;line-height:1}.ps-demo[open] summary>span{transform:rotate(45deg)}.ps-demo-content{padding:0 0 28px}.ps-demo-content video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#14251e;border-radius:14px}.ps-demo-content>div{display:flex;align-items:start;gap:24px;margin-top:18px;font-size:12px;line-height:1.6}.ps-demo-content p{margin-right:auto;max-width:600px;color:var(--rw-muted)}.ps-demo-content a{white-space:nowrap;min-height:32px}
.ps-architecture{padding-block:var(--ps-section)}.ps-architecture-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center;margin-top:72px}.ps-architecture-copy h3{font-size:38px;line-height:1.1;margin-top:20px}.ps-architecture-copy>p:not(.ps-kicker):not(.ps-media-note){font-size:17px;line-height:1.7;color:var(--rw-muted);margin-top:24px}.ps-architecture-copy>.ps-link{margin-top:20px}.ps-system{list-style:none;padding:0;margin:0}.ps-system>li:not(.ps-system-connector){display:flex;align-items:center;gap:20px;padding:28px;background:var(--rw-soft);border:1px solid var(--rw-line);border-radius:18px}.ps-system-index{font-size:12px;color:var(--rw-muted);align-self:start;margin-top:3px}.ps-system h4{font-size:22px;line-height:1.2;letter-spacing:-.025em;font-weight:550;margin:10px 0}.ps-system li>div>span{font-size:11px;color:var(--rw-muted)}.ps-system p{font-size:13px;color:var(--rw-muted);line-height:1.6}.ps-system-tech{margin-left:auto;font-size:10px;letter-spacing:.06em;border:1px solid var(--rw-line);padding:6px 10px;border-radius:6px;flex-shrink:0}.ps-system-connector{text-align:center;font-size:10px;color:var(--rw-muted);padding:14px}.ps-system-connector span{font-size:20px;margin-right:8px}.ps-architecture-more{display:flex;align-items:center;gap:32px;flex-wrap:wrap;margin-top:64px;padding-top:24px;border-top:1px solid var(--rw-line);font-size:13px}.ps-architecture-more>span{margin-right:auto;color:var(--rw-muted)}.ps-architecture-more a{text-decoration:none;padding-block:10px}
.ps-process{padding-block:0 var(--ps-section)}.ps-process>ol{list-style:none;padding:0;margin:56px 0 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.ps-process li{border-top:1px solid var(--rw-line);padding-top:24px}.ps-process li>span{font-size:12px;color:var(--rw-muted)}.ps-process h3{font-size:28px;margin-top:26px;letter-spacing:-.03em}.ps-process li p{font-size:16px;color:var(--rw-muted);line-height:1.6;margin-top:18px;max-width:320px}
.ps-person{padding-block:80px;background:var(--rw-soft)}.ps-person>.rw-shell{display:grid;grid-template-columns:250px 1fr;gap:100px;align-items:center}.ps-person-image{border-radius:20px;overflow:hidden;background:#e5e8de}.ps-person-image>img{display:block;width:100%}.ps-person h2{font-size:clamp(30px,3.5vw,50px);margin-top:20px}.ps-person div>p:not(.ps-kicker){font-size:17px;color:var(--rw-muted);line-height:1.65;max-width:570px;margin-top:28px}.ps-person .ps-link{margin-top:22px}
.showcase-home .rw-faq{padding-block:var(--ps-section)}.showcase-home .rw-contact-section{background:var(--rw-canvas);border-top:1px solid var(--rw-line)}.showcase-home .rw-contact-form{background:var(--rw-soft);border-radius:var(--ps-radius)}.showcase-home .rw-contact-grid h2{font-size:clamp(36px,4.2vw,60px)}
/* Informational landing pages: one topic and a real example per page. */
.ps-service-hero{padding-block:40px 100px}.ps-breadcrumb{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--rw-muted);margin-bottom:72px}.ps-breadcrumb a{text-decoration:none}.ps-service-hero h1{font-size:clamp(44px,5.6vw,80px);margin-top:22px;max-width:1000px}.ps-service-lead{max-width:760px;font-size:21px;color:var(--rw-muted);line-height:1.6;margin-top:32px!important}.ps-service-hero .ps-actions{margin-top:36px}.ps-service-explainer{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:72px;border-top:1px solid var(--rw-line)}.ps-service-explainer h2{font-size:38px}.ps-service-explainer p{font-size:18px;color:var(--rw-muted);line-height:1.75}.ps-service-explainer .ps-link{margin-top:22px}.ps-service-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;padding-bottom:96px}.ps-service-points article{border-top:1px solid var(--rw-line);padding-top:24px}.ps-service-points article>span{font-size:12px;color:var(--rw-muted)}.ps-service-points h3{font-size:26px;line-height:1.2;letter-spacing:-.03em;margin-top:24px}.ps-service-points p{color:var(--rw-muted);font-size:16px;line-height:1.7;margin-top:18px}.ps-service-example{padding-block:80px;background:var(--rw-soft)}.ps-service-example>.rw-shell{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center}.ps-service-example h2{font-size:44px;margin-top:20px}.ps-service-example p:not(.ps-kicker){font-size:17px;color:var(--rw-muted);line-height:1.7;margin-top:24px}.ps-service-example .ps-link{margin-top:20px}.ps-service-example img{border-radius:14px;display:block;border:1px solid var(--rw-line)}.ps-related{padding-block:0 80px}.ps-related h2{font-size:28px}.ps-related>div{display:flex;flex-wrap:wrap;gap:20px 40px;margin-top:24px}.ps-related a{font-size:15px;min-height:44px;display:flex;align-items:center;text-decoration:none}
.showcase-home .ps-hero-stage{height:auto;padding-bottom:160px}
@media(hover:hover) and (pointer:fine){.ps-link:hover,.ps-services>a:hover strong,.ps-demo-link:hover,.ps-architecture-more a:hover,.ps-work-heading nav a:hover,.ps-related a:hover{text-decoration:underline;text-underline-offset:6px}}
@media(max-width:1100px){.ps-hero-stage{height:480px;padding-inline:65px}.ps-hero-phone{width:155px;right:6%}.ps-hero-caption{left:28px;bottom:36px}.ps-product-heading{gap:48px}.ps-product-stage{padding:40px 40px 0}.ps-product-bottom{align-items:start}.ps-product-bottom ul{gap:12px 24px}.ps-architecture-grid{gap:48px}.ps-system-tech{display:none}.ps-services{gap:32px}.ps-person>.rw-shell{gap:64px}.ps-service-explainer{gap:48px}.ps-demo-content>div{flex-wrap:wrap}.ps-demo-content p{flex-basis:100%;max-width:none}}
@media(max-width:800px){.showcase-home,.service-page{--ps-section:88px}.showcase-home .rw-shell,.service-page .rw-shell{width:calc(100% - 48px)}.ps-hero{padding-top:64px}.ps-hero-lead{font-size:18px}.ps-hero-stage{height:370px;padding:20px 44px 0;margin-top:50px}.ps-hero-stage::before{inset:40px 0 0}.ps-hero-desktop{width:100%;border-width:5px}.ps-hero-phone{width:120px;bottom:0;right:4%;border-width:5px;border-radius:22px}.ps-hero-caption{font-size:10px;left:24px;bottom:25px}.ps-services{gap:24px}.ps-services h3{font-size:25px}.ps-services p{font-size:14px}.ps-services strong{font-size:12px}.ps-product{padding-block:64px 44px}.ps-product-heading{grid-template-columns:1fr;gap:24px;margin-bottom:32px}.ps-product-description>p{max-width:600px;font-size:17px}.ps-product-description>a{margin-top:12px}.ps-product-heading h2{font-size:44px}.ps-product-bottom{flex-direction:column;gap:12px;padding-top:24px}.ps-product-bottom ul{font-size:12px}.ps-product-stage{padding:32px 24px 0;border-radius:18px}.ps-phones{gap:18px;max-height:480px}.ps-phones>img{border-width:5px;border-radius:24px;width:27%}.ps-phones>img:nth-child(2){width:31%}.ps-product-randalo .ps-product-stage{padding:32px 12px 0}.ps-architecture-grid{grid-template-columns:1fr;gap:36px;margin-top:48px}.ps-architecture-copy{max-width:600px}.ps-architecture-more{gap:12px 24px;margin-top:32px}.ps-architecture-more>span{flex-basis:100%}.ps-process>ol{gap:24px}.ps-process h3{font-size:24px}.ps-process li p{font-size:14px}.ps-person>.rw-shell{grid-template-columns:180px 1fr;gap:40px}.ps-person h2{font-size:32px}.ps-person div>p:not(.ps-kicker){font-size:15px;margin-top:20px}.ps-service-hero{padding-bottom:64px}.ps-breadcrumb{margin-bottom:48px}.ps-service-explainer{grid-template-columns:1fr;gap:24px;padding-block:56px}.ps-service-points{gap:24px}.ps-service-points h3{font-size:23px}.ps-service-points p{font-size:15px}.ps-service-example>.rw-shell{grid-template-columns:1fr;gap:32px}.ps-service-example p{max-width:600px}.ps-service-lead{font-size:19px}}
@media(max-width:520px){.showcase-home,.service-page{--ps-section:72px}.showcase-home .rw-shell,.service-page .rw-shell{width:calc(100% - 40px)}.ps-hero{padding-top:52px}.ps-kicker{font-size:12px}.showcase-home h1{font-size:clamp(44px,11vw,58px)}.ps-hero h1{margin-top:20px}.ps-hero-lead{font-size:17px;max-width:320px;margin-top:22px!important}.ps-hero-lead br{display:none}.ps-actions{gap:12px 24px}.ps-hero .ps-actions{margin-top:24px}.ps-actions .rw-button{font-size:13px;min-height:48px;padding:13px 20px}.ps-link{font-size:14px}.ps-hero-stage{height:270px;padding:12px 10px 0;margin-top:40px}.ps-hero-stage::before{inset:26px 0 0;border-radius:16px}.ps-hero-desktop{width:95%;border-width:4px;border-radius:9px}.ps-browser-bar{height:20px;font-size:7px;padding:0 7px;gap:3px}.ps-browser-bar i{width:4px;height:4px}.ps-hero-phone{width:88px;border-width:4px;border-radius:17px;right:5%;bottom:2px}.ps-hero-caption{left:16px;bottom:24px;font-size:9px;max-width:160px;gap:6px}.ps-hero-note{font-size:9px;max-width:290px;margin-inline:auto!important}.ps-section-heading>p:last-child{font-size:17px;margin-top:24px}.showcase-home h2,.service-page h2{font-size:36px}.ps-services{grid-template-columns:1fr;gap:32px;margin-top:40px}.ps-services h3{font-size:28px;margin-top:16px}.ps-services h3 br{display:none}.ps-services p{max-width:none;font-size:16px;margin-top:16px}.ps-services strong{font-size:13px;margin-top:14px}.ps-services>a{padding-top:18px}.ps-work-heading{padding-bottom:32px}.ps-work-heading nav{gap:16px;margin-top:24px}.ps-work-heading nav a{font-size:12px}.ps-product{padding-block:48px 32px}.ps-product-heading h2{font-size:36px}.ps-product-heading h3{font-size:18px}.ps-product-description>p{font-size:16px}.ps-product-stage{padding:24px 12px 0;border-radius:14px}.ps-browser{border-width:4px;border-radius:8px 8px 0 0}.ps-phones{gap:8px;max-height:310px}.ps-phones>img{border-width:3px;border-radius:15px;width:28%;transform:translateY(30px) rotate(-6deg)}.ps-phones>img:nth-child(2){width:34%}.ps-phones>img:nth-child(3){transform:translateY(30px) rotate(6deg)}.ps-product-randalo .ps-product-stage{padding:24px 8px 0}.ps-product-bottom ul{gap:10px 16px;font-size:11px}.ps-product-bottom li::before{margin-right:5px}.ps-media-note{font-size:10px!important}.ps-demo summary{font-size:13px;min-height:64px;padding-block:16px}.ps-demo-content>div{gap:8px 20px;font-size:11px}.ps-demo-content video{border-radius:8px}.ps-architecture-copy h3{font-size:32px}.ps-system>li:not(.ps-system-connector){padding:20px 16px;gap:14px;border-radius:14px}.ps-system h4{font-size:19px}.ps-system p{font-size:12px}.ps-architecture-more{font-size:12px}.ps-process>ol{grid-template-columns:1fr;gap:32px;margin-top:40px}.ps-process h3{font-size:28px;margin-top:18px}.ps-process li p{font-size:16px;max-width:none;margin-top:14px}.ps-person{padding-block:48px}.ps-person>.rw-shell{grid-template-columns:1fr;gap:32px}.ps-person-image{width:160px;border-radius:16px}.ps-person h2{font-size:34px}.ps-person h2 br{display:none}.ps-person div>p:not(.ps-kicker){font-size:16px}.ps-service-hero h1{font-size:44px}.ps-service-lead{font-size:18px;margin-top:24px!important}.ps-service-explainer h2{font-size:32px}.ps-service-explainer p{font-size:17px}.ps-service-points{grid-template-columns:1fr;gap:32px;padding-bottom:64px}.ps-service-points h3{font-size:26px;margin-top:18px}.ps-service-points p{font-size:16px}.ps-service-example{padding-block:48px}.ps-related>div{flex-direction:column;gap:8px}.ps-breadcrumb{font-size:10px}}
@media(max-width:360px){.sn-brand{font-size:17px}.sn-brand svg{width:28px;height:28px}.sn-menu{padding:8px 10px}.sn-tools{gap:4px}.sn-tools .rw-theme-toggle{width:34px;height:34px}.ps-hero-stage{height:235px}.ps-hero-phone{width:78px}.ps-hero-caption{bottom:20px;max-width:140px}.ps-service-hero h1{font-size:38px}}
/* Three real products share the opening composition. */
.ps-hero-learning{display:block;position:absolute;z-index:2;left:32px;bottom:86px;width:52%;max-width:650px;border:6px solid #26384a;border-radius:15px;overflow:hidden;background:#f3f8fa;box-shadow:0 18px 42px #11251926;text-decoration:none}
.ps-hero-learning img{display:block;width:100%;height:auto}
.ps-hero-learning .ps-browser-bar{background:#e3eef3;color:#22424e}
.ps-hero-desktop{margin-left:auto;margin-right:0}
.ps-hero-phone{z-index:3;bottom:55px}
.ps-hero-caption{bottom:28px}
@media(max-width:1100px){.ps-hero-learning{left:24px;width:56%;bottom:78px;border-width:5px}.ps-hero-caption{bottom:26px}}
@media(max-width:800px){.showcase-home .ps-hero-stage{padding-bottom:136px}.ps-hero-learning{left:20px;width:64%;bottom:65px;border-radius:12px}.ps-hero-phone{bottom:44px}.ps-hero-caption{bottom:22px}}
@media(max-width:520px){.showcase-home .ps-hero-stage{padding-bottom:120px}.ps-hero-learning{left:10px;width:65%;bottom:58px;border-width:4px;border-radius:9px}.ps-hero-learning .ps-browser-bar{font-size:6px;height:19px;padding-inline:5px;gap:3px}.ps-hero-learning .ps-browser-bar span{padding-right:0}.ps-hero-learning .ps-browser-bar i{width:3px;height:3px}.ps-hero-phone{bottom:44px}.ps-hero-caption{bottom:20px;max-width:none;font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.showcase-home *,.service-page *{animation:none!important;scroll-behavior:auto!important}.ps-hero-desktop,.ps-product-stage{transform:none!important}}
