/* Project-advisor communication; the existing cinematic scene remains unchanged. */
.own-demo,.own-process,.own-case{padding:clamp(64px,7vw,112px) 5.2%;background:#03050b;color:#f5faff}
.own-demo h2,.own-process h2,.own-case h2{font:700 clamp(34px,3.5vw,56px)/1.14 'Space Grotesk',Sora,sans-serif;letter-spacing:-.035em;max-width:800px}
.own-demo p,.own-process p,.own-case p{color:#b5c8da;font:400 clamp(15px,1.15vw,18px)/1.7 Sora,sans-serif}
.demo-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(32px,6vw,100px);align-items:center}
.demo-intro>div:first-child>p{max-width:720px;margin:24px 0 0}
.demo-invitation{padding:28px 32px;border:1px solid #36536b;border-radius:12px;background:linear-gradient(135deg,#101f33,#091322)}
.demo-invitation p{margin:0 0 24px;color:#f5faff}
.demo-invitation .button{min-width:0;white-space:normal;text-align:center}
.demo-invitation small{display:block;margin-top:16px;color:#b5c8da;font:400 13px/1.55 Sora,sans-serif}
.demo-steps,.process-track{list-style:none;padding:0;margin:52px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;counter-reset:process}
.demo-steps li,.process-track li{min-width:0;border-top:1px solid #36536b;padding:20px 0 0}
.demo-steps li>span,.process-track li::before{color:#8fe3ff;font:600 14px/1.5 Sora,sans-serif;letter-spacing:.12em}
.demo-steps h3,.process-track h3,.case-status h3{font:600 clamp(18px,1.45vw,22px)/1.3 Sora,sans-serif;margin:14px 0 10px}
.demo-steps p,.process-track p{font-size:15px;margin:0}
.process-track li{counter-increment:process}
.process-track li::before{content:'0' counter(process)}
.own-process{background:#091322}
.process-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end}
.process-heading p{margin:0}
.own-case{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,112px)}
.own-case>div:first-child p{max-width:560px}
.case-status>div{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #36536b}
.case-status>div:last-child{margin-bottom:0}
.case-status h3{color:#8fe3ff;margin-top:0}
.case-status p{margin:0}
.hero-copy h1{font-size:clamp(48px,4.75vw,78px)}
.hero-copy>p{max-width:650px}
.hero-actions{gap:16px}
.hero-actions>.button{min-width:0;padding-inline:24px}
.hero-actions>.booking-link,.header-actions>.booking-link,.contact-copy>.booking-link{background:#091322c9;border-color:#57738c}
.hero-actions>.booking-link:hover,.header-actions>.booking-link:hover,.contact-copy>.booking-link:hover{background:#101f33;border-color:#8fe3ff}
.founder-process{margin-top:20px}
.own-demo a:focus-visible,.own-process a:focus-visible,.own-case a:focus-visible{outline:2px solid #8fe3ff;outline-offset:5px}
@media(max-width:1100px){.demo-intro{gap:32px}.demo-steps,.process-track{gap:16px}.hero-copy h1{font-size:clamp(40px,5.4vw,62px)}}
@media(max-width:700px){
 .own-demo,.own-process,.own-case{padding:64px 22px}
 .demo-intro,.process-heading,.own-case{display:block}
 .demo-invitation{margin-top:30px;padding:24px}
 .demo-invitation .button{width:100%}
 .demo-steps,.process-track{grid-template-columns:1fr 1fr;gap:28px 20px;margin-top:42px}
 .process-heading p{margin-top:20px}
 .case-status{margin-top:32px}
 /* Text and actions take their natural height before the founder credit. */
 .hero-scroll .hero{height:auto;padding:120px 22px 500px}
 .hero .hero-copy{position:relative;inset:auto;width:auto}
 .hero .founder-label{position:relative;inset:auto;margin-top:24px;max-width:46%}
 .asst-invite--hero-blocked{visibility:hidden}
 .hero-copy h1{font-size:clamp(31px,8vw,46px)}
 .hero-copy h1 span{white-space:normal}
 .hero-copy>p{font-size:16px;line-height:1.5}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
 .hero-actions>.button{min-height:52px;width:100%;padding:13px 16px;white-space:normal;text-align:center}
}
@media(max-width:390px){.demo-steps,.process-track{grid-template-columns:1fr}.demo-invitation{padding:20px}}
