/* Clearer buying paths within the established visual system. */
.hero .hero-role{font:600 .86rem/1.6 var(--display);letter-spacing:.08em;color:#e3c3d0;text-transform:uppercase;margin:0 0 18px}
.hero h1.business-headline{font-size:clamp(3rem,4.7vw,4.25rem);line-height:1.12;letter-spacing:-.045em}
.hero .hero-intro{max-width:600px;font-size:1.08rem}
.hero .hero-detail{max-width:550px;font-size:.95rem;line-height:1.8}
.hero-location{color:#929ead;font-size:.8rem;margin-top:23px}
.hero .actions{gap:13px}
.hero .actions .button{font-size:.875rem}
.thinking-compact{padding-top:65px;padding-bottom:65px}
.thinking-compact h2{font-size:clamp(2rem,3.1vw,2.8rem)}
.thinking-compact .split{align-items:center}
.thinking-compact p:last-child{margin-bottom:0}
.process-layout{display:grid;grid-template-columns:.94fr 1.16fr;gap:54px;align-items:center}
.process-copy{min-width:0}
.process-copy .eyebrow{font-size:.875rem;letter-spacing:.11em;line-height:1.7}
.process-copy h2{margin-bottom:24px}
.process-copy p{font-size:1rem;line-height:1.85}
.process-art{margin:0;min-width:0;overflow:hidden;border:1px solid #4b3541;border-radius:12px;background:#1c1f23;box-shadow:15px 19px 40px #12141960}
.process-art img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;transition:transform 1.1s var(--motion-ease)}
.process-art figcaption{position:relative;padding:17px 23px;border-top:1px solid #44313b;background:#202227;color:#c3a9b5;font-size:.875rem;line-height:1.75}
.project-image-static{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.project-image-static::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#10141c85,transparent 29%,transparent 70%,#10141cee)}
.project-visual.image-static .image-caption{bottom:23px;right:24px}
@media(hover:hover){.motion-ready .process-art:hover img{transform:scale(1.025)}}
@media(max-width:1000px){.process-layout{gap:32px;grid-template-columns:1fr 1fr}.process-copy .eyebrow{letter-spacing:.08em}}
@media(max-width:820px){.process-layout{grid-template-columns:1fr;gap:32px}.process-copy{max-width:650px}.process-art{max-width:700px;width:100%;margin:auto}.process-copy h2{max-width:600px}}
@media(max-width:590px){.process-layout{gap:26px}.process-copy .eyebrow{font-size:.875rem;letter-spacing:.06em}.process-art figcaption{padding:14px 17px}.project-visual.image-static .image-caption{bottom:22px}}
.problem .problem-start{padding:0 0 25px 35px;margin:0}
.problem .problem-start .text-link{font-size:.83rem}
.problem p{margin-bottom:10px}
.project-facts{margin:22px 0 25px}
.project-facts>div{display:grid;grid-template-columns:88px 1fr;gap:14px;margin-bottom:13px;font-size:.86rem;line-height:1.7}
.project-facts dt{color:#e0becd;font-weight:500}
.project-facts dd{margin:0;color:#b4bfce}
.project-copy>p{margin-bottom:14px}
.project-copy .actions{margin-top:24px}
.project-copy h3{font-size:1.95rem}
.engagements-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.engagement{padding:32px 28px;border:1px solid #41333e;border-radius:10px;background:linear-gradient(145deg,#27272f,#1f2127);display:flex;flex-direction:column;position:relative;overflow:hidden}
.engagement::before{content:'';position:absolute;left:28px;right:28px;top:0;height:2px;background:linear-gradient(90deg,var(--pink),#ff014f00)}
.engagement-number{font:500 .75rem var(--display);letter-spacing:.13em;color:#d96c90;margin-bottom:22px}
.engagement h3{font-size:1.35rem;line-height:1.4;margin-bottom:18px}
.engagement>p{font-size:.95rem;color:#bac3d0;margin-bottom:23px;line-height:1.85}
.deliverables-label{font:500 .7rem/1.6 var(--display);letter-spacing:.1em;text-transform:uppercase;color:#dc9bb2;margin-bottom:10px}
.engagement ul{list-style:none;padding:0;margin:0 0 28px}
.engagement li{font-size:.875rem;color:#aab7c9;padding:11px 0;border-top:1px solid #393943;line-height:1.6}
.engagement li::before{content:'+';font-weight:500;color:#ff729c;margin-right:9px}
.engagement .text-link{margin-top:auto;align-self:start;line-height:1.5;font-size:.83rem}
.scope-note{padding:24px 0 0;color:#a7b3c3;max-width:770px;font-size:.9rem;margin:0}
.scope-note strong{color:#dfc6d0;font-weight:500}
.homepage-approach{padding-top:75px;padding-bottom:75px}
.homepage-approach .process-intro{max-width:760px}
.homepage-approach .process-steps{margin:32px 0 20px}
.tech-disclosure{border-top:1px solid #41434d;border-bottom:1px solid #34383e;margin-top:45px}
.tech-disclosure>summary{padding:21px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none;font:500 .91rem/1.6 var(--display);color:#c6cede}
.tech-disclosure>summary::-webkit-details-marker{display:none}
.tech-disclosure>summary::after{content:'+';color:var(--pink-light);font-size:1.4rem;flex-shrink:0}
.tech-disclosure[open]>summary::after{content:'−'}
.tech-disclosure .technology-grid{padding-bottom:13px}
.tech-disclosure .technology{padding-top:19px;padding-bottom:19px}
.case-snapshot{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0 auto 36px}
.case-snapshot>div{padding:24px 22px;border-top:1px solid #92506a;background:linear-gradient(120deg,#28252d,#23252a);border-radius:0 0 5px 5px}
.case-snapshot dt{font:500 .76rem var(--display);color:#ec8cab;letter-spacing:.11em;text-transform:uppercase;margin-bottom:11px}
.case-snapshot dd{margin:0;color:#cad3e0;font-size:.93rem;line-height:1.75}
.case-invitation{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:40px 0;border-bottom:1px solid var(--line)}
.case-invitation h2{font-size:1.6rem;margin:0 0 9px}
.case-invitation p{margin:0;color:#aab6c6;font-size:.9rem}
.case-invitation .button{flex-shrink:0}
.next-steps{margin:30px 0 28px;list-style:none;padding:0;counter-reset:steps}
.next-steps li{counter-increment:steps;position:relative;padding:0 0 22px 42px;font-size:.87rem;line-height:1.8;color:#9faebf}
.next-steps li::before{content:'0' counter(steps);position:absolute;left:0;top:3px;font:500 .73rem var(--display);color:var(--pink-light)}
.next-steps strong{display:block;font:600 .92rem/1.7 var(--display);color:#dce3ed;margin-bottom:4px}
.contact-form h3{font-size:1.35rem;margin:0 0 13px}
.contact-form>.form-intro{font-size:.9rem;line-height:1.8;color:#aebbc9;margin:0 0 25px}
.contact-form label{font-size:.88rem;line-height:1.6}
.contact-form label .optional{font-weight:400;color:#8d9bab;font-size:.79rem}
.contact-form textarea{min-height:178px}
.contact-form .form-help{font-size:.81rem;margin-top:2px;line-height:1.8}
.contact-form .form-actions{display:flex;gap:12px;flex-wrap:wrap}
.contact-form .form-actions .button{flex:1 1 auto;width:auto;margin-bottom:10px;min-height:44px;padding:10px 14px;font-size:.79rem}
.contact-form .email-draft{padding:20px;margin-top:20px}
.contact-form .email-draft p{margin-bottom:14px}
.contact-form .copy-feedback{font-size:.79rem;color:#d5bac6;margin:4px 0 0;min-height:1.5em}
.contact-form .copy-fallback{font-size:.8rem;min-height:150px;margin-top:10px}
.contact-form .copy-fallback[hidden]{display:none}
.contact-details .direct-contact{color:#e4d2dc;font-size:1rem;border-bottom:1px solid #6c3f50;display:inline-block;margin-bottom:12px;padding-bottom:5px}
.contact-details .direct-contact:hover{color:var(--pink-light)}
.contact-section .contact-grid h2{font-size:clamp(2.35rem,3.7vw,3.4rem)}
.contact-section .contact-grid>.contact-intro>p{font-size:1rem}
.engagement:focus-within{border-color:#a65774}
.hero-copy,.project-copy,.engagement{min-width:0}
@media(min-width:591px) and (max-width:740px){.hero-grid{grid-template-columns:1fr}.hero-copy{max-width:620px}.hero-photo{width:min(100%,480px);margin:28px auto 0}.hero-photo>img{max-height:460px}.hero-code-scene{inset:0 0 24px 0}}
@media(min-width:1500px){.hero h1.business-headline{font-size:4.9rem}}
@media(max-width:1100px){.hero h1.business-headline{font-size:3.55rem}.engagements-grid{gap:18px}.engagement{padding:26px 23px}.project-facts>div{grid-template-columns:1fr;gap:3px}.hero .hero-role{font-size:.79rem}.case-snapshot{gap:17px}}
@media(max-width:820px){.hero h1.business-headline{font-size:2.9rem}.hero .hero-intro{font-size:1rem}.hero .hero-role{font-size:.74rem;letter-spacing:.05em}.engagements-grid{grid-template-columns:1fr}.engagement{padding:30px}.engagement h3{font-size:1.5rem}.engagement ul{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.case-snapshot{grid-template-columns:1fr;gap:14px}.case-snapshot>div{padding:20px}.case-invitation{flex-direction:column;align-items:start;gap:24px}.project-facts>div{font-size:.82rem}.thinking-compact{padding-top:60px;padding-bottom:60px}}
@media(max-width:590px){.hero h1.business-headline{font-size:clamp(2.5rem,10.8vw,3.65rem)}.hero .hero-role{font-size:.74rem;margin-bottom:16px}.hero .eyebrow{margin-bottom:12px}.hero .hero-intro{font-size:1rem}.hero .hero-detail{font-size:.92rem}.hero-location{font-size:.75rem;margin-top:18px}.engagement{padding:26px}.engagement ul{display:block}.engagement li{padding:12px 0}.engagement>p{font-size:1rem}.engagement h3{font-size:1.38rem}.engagement .text-link{font-size:.86rem}.project-facts>div{grid-template-columns:84px 1fr;gap:12px;font-size:.83rem}.project-copy h3{font-size:1.8rem}.thinking-compact{padding-top:50px;padding-bottom:50px}.homepage-approach{padding-top:60px;padding-bottom:60px}.tech-disclosure>summary{font-size:.87rem}.contact-form .form-actions{display:block}.contact-form .form-actions .button{width:100%}.contact-form textarea{min-height:190px}.contact-details .direct-contact{font-size:.91rem}.case-invitation h2{font-size:1.45rem}.contact-section .contact-grid h2{font-size:2.35rem}}
