.mobile-lab{display:grid;grid-template-columns:minmax(260px,1fr) 390px minmax(200px,.8fr);gap:48px;align-items:center;margin:48px 0}.mobile-lab-intro h3{font-size:36px;line-height:1.12;letter-spacing:-1px;font-weight:450}.mobile-lab-intro p{font-size:15px;color:#aaa;line-height:1.7}.mobile-lab-intro .demo-privacy{font-size:12px;border-top:1px solid #292929;padding-top:20px}.interactive-phone{--screen:#29252e;--phone-text:#f7f4f8;--muted:#b2a7b4;--gold:#c6a078;--success:#6ad39a;position:relative;width:100%;padding:46px 23px 35px;border-radius:51px;background:linear-gradient(145deg,#37303b,var(--screen));color:var(--phone-text);border:7px solid #17151b;box-shadow:0 0 0 1px #70636b,inset 0 0 0 1px #76656e,0 30px 65px #000;min-height:780px;overflow:hidden;font-family:Arial,sans-serif}.phone-light{--screen:#f7f4ec;--phone-text:#263c2f;--muted:#647168;--gold:#335f48;--success:#285e40;background:#f7f4ec}.phone-island{position:absolute;top:13px;left:50%;transform:translateX(-50%);width:105px;height:27px;border-radius:22px;background:#0c0a0e}.phone-status{position:absolute;top:20px;left:25px;right:25px;font-size:11px;display:flex;justify-content:space-between}.phone-back{color:var(--gold);font-size:13px;margin:14px 0 30px;display:flex;justify-content:space-between}.phone-back span{font-size:8px;letter-spacing:1px;color:var(--muted)}.phone-brand{text-align:center;font-size:30px;line-height:1.05;letter-spacing:-1px;margin:0 0 28px;padding:0 0 26px;border-bottom:1px solid #82718440;font-weight:400}.brand-subtitle{display:block;font-size:8px;letter-spacing:2.5px;margin-top:8px}.phone-document-title{text-align:center;font-size:19px;font-weight:400;line-height:1.3;margin:0 0 7px}.phone-document-subtitle{color:var(--muted);font-size:11px;text-align:center;margin:0 0 21px;line-height:1.5}.phone-document-card{border:1px solid #82718455;border-radius:7px;padding:15px;margin:0 0 15px}.phone-document-card small{font-size:12px;color:var(--muted);display:block}.phone-document-card strong{font-size:26px;font-weight:400;display:block;margin:5px 0 8px}.phone-document-card span{font-size:11px;color:var(--muted);line-height:1.5;display:block}.signature-name{border:1px solid #82718455;border-radius:7px;padding:13px 14px;margin:0 0 20px}.signature-name small{display:block;font-size:11px;color:var(--muted)}.signature-name span{display:block;font:32px "Snell Roundhand","Apple Chancery",cursive;text-align:center;padding:10px 0 1px}.gesture-instruction{font-size:12px;color:var(--muted);text-align:center;line-height:1.5}.signature-area{position:relative;height:125px;margin:0 0 8px}#signature-pad{width:100%;height:125px;display:block;touch-action:none;cursor:crosshair}.signature-baseline{position:absolute;bottom:13px;left:12px;right:12px;height:1px;background:#c3b9c980;pointer-events:none}.clear-signature{display:block;margin:0 auto 20px;border:1px solid #c2b9c6;background:transparent;color:var(--phone-text);border-radius:3px;padding:6px 11px;font-size:11px}.phone-finalise{border:0;background:#fbfafc;color:#211c27;display:block;width:100%;padding:17px 12px;font:16px Arial,sans-serif;border-radius:4px;cursor:pointer}.phone-finalise:disabled{opacity:.35;cursor:not-allowed}.keyboard-alternative{font-size:10px;color:var(--muted);background:none;border:0;text-decoration:underline;display:block;margin:15px auto 0;cursor:pointer}.phone-home-indicator{position:absolute;bottom:10px;left:35%;right:35%;height:4px;background:var(--phone-text);border-radius:4px}.hold-sign{position:relative;overflow:hidden;background:transparent;border:1px solid var(--gold);color:var(--gold);border-radius:5px;width:100%;padding:19px 10px;margin:30px 0 3px;font:18px Arial,sans-serif;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:pointer}.hold-progress{position:absolute;inset:0;background:var(--gold);opacity:.22;transform:scaleX(0);transform-origin:left;pointer-events:none}.hold-label{position:relative;pointer-events:none}.phone-fine{font-size:10px;color:var(--muted);text-align:center;line-height:1.6;margin:24px 0}.receipt-heading{font:19px/1.35 Arial,sans-serif;text-align:center;margin:30px 0 10px;outline-offset:5px}.sealed-label{color:var(--success);text-align:center;font-size:13px}.sealed-label small{font-size:9px;opacity:.8;margin-left:5px}.phone-content>.sealed-label{margin:0 0 28px}.phone-receipt{margin:23px 0;font-size:13px}.phone-receipt div{display:flex;justify-content:space-between;gap:14px;margin:14px 0}.phone-receipt dt{color:var(--muted)}.phone-receipt dd{margin:0;text-align:right}.phone-outline-action{border:1px solid var(--phone-text);border-radius:6px;background:transparent;color:var(--phone-text);text-align:center;text-decoration:none;display:block;width:100%;padding:13px;margin:11px 0;font:14px Arial,sans-serif;cursor:pointer}#completed-drawing{display:block;width:100%;height:85px;margin-top:-10px}.phone-notification{position:absolute;z-index:5;top:47px;left:9px;right:9px;border:1px solid #b7adb82e;border-radius:19px;background:#625b66f5;box-shadow:0 9px 25px #0004;padding:14px 12px;display:flex;align-items:center;gap:10px;color:white;transform:translateY(-150%);opacity:0;transition:transform 250ms cubic-bezier(.23,1,.32,1),opacity 200ms ease;pointer-events:none}.phone-notification.shown{transform:translateY(0);opacity:1}.phone-notification strong{display:block;font-size:12px;font-weight:500}.phone-notification span:not(.notification-icon){display:block;font-size:11px;margin-top:5px;color:#e5dfe7}.notification-icon{background:#27222e;border-radius:10px;font-size:31px;width:37px;height:37px;text-align:center;line-height:31px}.phone-notification small{align-self:flex-start;font-size:10px;color:#ded7e0;margin-left:auto}.original-reference{margin:0;align-self:center}.original-reference img{display:block;width:100%;max-height:420px;object-fit:contain;border-radius:10px}.original-reference figcaption{font-size:12px;line-height:1.6;color:#aaa;margin-top:16px}.original-reference a{display:block;color:#ccc;margin-top:10px}.gesture-guides{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.gesture-guide{display:flex;align-items:center;gap:28px;border:1px solid #282828;border-radius:10px;padding:28px}.gesture-guide svg{width:110px;height:145px;flex:0 0 auto;fill:none;stroke:#d8d8df;stroke-width:1.5;overflow:visible}.gesture-guide h4{font-size:17px;font-weight:450;margin:0 0 10px}.gesture-guide p{font-size:13px;color:#999;line-height:1.6;margin:0}.guide-drawing{clip-path:inset(0 100% 0 0)}.guides-visible .guide-drawing{animation:draw-reveal 4s linear infinite}.guide-finger{transform:translateY(-6px)}.guides-visible .guide-finger{animation:hold-finger 5s cubic-bezier(.77,0,.175,1) infinite}.guide-fill{transform:scaleX(0);transform-origin:26px 0}.guides-visible .guide-fill{animation:hold-fill 5s linear infinite}@keyframes draw-reveal{0%,10%{clip-path:inset(0 100% 0 0)}75%,100%{clip-path:inset(0 0 0 0)}}@keyframes hold-finger{0%,100%{transform:translateY(-8px);opacity:.4}10%,90%{transform:translateY(0);opacity:1}}@keyframes hold-fill{0%,10%{transform:scaleX(0)}90%,100%{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.phone-notification{transition:opacity 100ms;transform:none}.gesture-guides *{animation:none!important}.guide-drawing{clip-path:none}.guide-fill{transform:scaleX(1)}.guide-finger{transform:none}}@media(max-width:1120px){.mobile-lab{grid-template-columns:1fr 370px;gap:30px}.original-reference{grid-column:1/-1;display:flex;gap:25px;align-items:center}.original-reference img{width:180px;max-height:240px}.gesture-guide{gap:12px;padding:20px}}@media(max-width:680px){.mobile-lab{grid-template-columns:1fr}.interactive-phone{max-width:390px;margin:auto}.mobile-lab-intro h3{font-size:30px}.gesture-guides{grid-template-columns:1fr}.original-reference img{width:130px}.phone-brand{font-size:27px}.interactive-phone{padding-left:19px;padding-right:19px}.phone-notification strong{font-size:11px}.phone-notification span:not(.notification-icon){font-size:10px}}

/* Reference phone with an explicit, reversible enlargement control. */
.mobile-lab{grid-template-columns:minmax(260px,1fr) 390px;max-width:960px;margin:48px auto;gap:72px}.phone-stage{width:100%;min-width:0}.phone-size-toggle{display:block;margin:0 0 20px auto;border:1px solid #444;border-radius:6px;background:#111;color:#eee;padding:10px 15px;font:13px inherit;cursor:pointer;min-height:44px}.phone-size-toggle:hover{background:#202020}.phone-size-toggle:focus-visible,.film-case-grid button:focus-visible{outline:2px solid #fff;outline-offset:5px}.phone-enlarged{grid-template-columns:minmax(250px,1fr) 500px;max-width:1080px}.phone-enlarged .interactive-phone{min-height:880px;padding:55px 32px 42px}.phone-enlarged .phone-brand{font-size:36px}.phone-enlarged .phone-document-title{font-size:23px}.phone-enlarged .phone-document-subtitle,.phone-enlarged .gesture-instruction{font-size:14px}.phone-enlarged .phone-document-card{padding:22px}.phone-enlarged .phone-document-card strong{font-size:32px}.phone-enlarged .signature-area,.phone-enlarged #signature-pad{height:160px}.phone-enlarged .phone-receipt{font-size:15px}.phone-enlarged .phone-finalise,.phone-enlarged .hold-sign{font-size:20px}.identity-highlight{display:grid;grid-template-columns:42px 1fr 1fr;gap:30px;background:#0c0c0c;border:1px solid #303030;border-radius:12px;padding:36px;margin:38px 0}.identity-symbol{color:#93c9ad;border:1px solid #3d6651;border-radius:50%;width:36px;height:36px;display:grid;place-items:center}.identity-highlight h3{font-size:27px;font-weight:450;letter-spacing:-.6px;line-height:1.2;margin:12px 0 18px}.identity-highlight p{font-size:14px;color:#aaa;line-height:1.7}.identity-details{border-left:1px solid #303030;padding-left:30px}.identity-details strong{font-size:16px;font-weight:500}.identity-details a{display:block;color:#eee;font-size:13px;margin:18px 0}.identity-details small{display:block;color:#999;font-size:12px;line-height:1.6}.mobile-film-cases{border-top:1px solid #303030;margin-top:64px;padding-top:44px}.film-cases-heading{display:flex;justify-content:space-between;gap:40px;align-items:end}.film-cases-heading h3{font-size:32px;line-height:1.15;font-weight:450;letter-spacing:-.8px;margin:15px 0 26px}.film-cases-heading p{max-width:360px;font-size:14px;line-height:1.7;color:#aaa}.film-case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.film-case-grid button{text-align:left;border:1px solid #303030;background:#0c0c0c;color:#eee;border-radius:10px;padding:24px;cursor:pointer;display:flex;flex-direction:column;gap:18px;font-family:inherit}.film-case-grid button:hover{background:#161616;border-color:#666}.film-case-grid span{color:#999;text-transform:uppercase;letter-spacing:1px;font-size:10px}.film-case-grid strong{font-size:19px;line-height:1.3;font-weight:450}.film-case-grid small{font-size:13px;line-height:1.6;color:#aaa}.film-case-grid b{font-size:12px;font-weight:450;margin-top:auto;padding-top:12px}.film-case-note{font-size:12px;color:#888;line-height:1.6;margin-top:18px}@media(max-width:1000px){.mobile-lab,.phone-enlarged{gap:30px}.phone-enlarged{grid-template-columns:minmax(180px,1fr) minmax(390px,480px)}.film-case-grid{grid-template-columns:1fr 1fr}.identity-highlight{grid-template-columns:32px 1fr}.identity-details{grid-column:2;border-left:0;padding-left:0;border-top:1px solid #303030;padding-top:24px}}@media(max-width:680px){.mobile-lab,.phone-enlarged{grid-template-columns:1fr}.phone-stage{max-width:340px;margin:auto}.phone-enlarged .phone-stage{max-width:500px}.phone-enlarged .interactive-phone{max-width:500px;min-height:780px;padding:46px 19px 35px}.phone-enlarged .phone-brand{font-size:30px}.phone-enlarged .phone-document-title{font-size:20px}.identity-highlight{padding:22px;gap:16px}.identity-highlight h3{font-size:23px}.film-cases-heading{display:block}.film-case-grid{grid-template-columns:1fr}.film-cases-heading h3{font-size:28px}}
/* Compact demonstration: the complete response stays understandable on a phone. */
.mobile-lab{grid-template-columns:minmax(240px,1fr) 320px;max-width:850px}.phone-stage{max-width:320px;margin:auto}.phone-enlarged{grid-template-columns:minmax(240px,1fr) 390px;max-width:930px}.phone-enlarged .phone-stage{max-width:390px}.interactive-phone,.phone-enlarged .interactive-phone{min-height:0;padding:46px 18px 28px;border-radius:40px}.phone-back{margin:4px 0 15px}.phone-brand,.phone-enlarged .phone-brand{font-size:24px;margin-bottom:14px;padding-bottom:14px}.phone-document-title,.phone-enlarged .phone-document-title{font-size:17px;margin-bottom:5px}.phone-document-subtitle,.phone-enlarged .phone-document-subtitle{font-size:11px;margin-bottom:12px}.phone-document-card,.phone-enlarged .phone-document-card{padding:10px;margin-bottom:10px}.phone-document-card strong,.phone-enlarged .phone-document-card strong{font-size:23px;margin:4px 0}.signature-name{padding:8px 10px;margin-bottom:10px}.signature-name span{font-size:26px;padding-top:5px}.gesture-instruction,.phone-enlarged .gesture-instruction{font-size:11px;margin:8px 0}.signature-area,#signature-pad,.phone-enlarged .signature-area,.phone-enlarged #signature-pad{height:90px}.clear-signature{margin-bottom:10px;min-height:32px}.phone-finalise,.phone-enlarged .phone-finalise{padding:12px;font-size:15px}.keyboard-alternative{margin-top:9px;min-height:30px}.receipt-heading{margin:12px 0 8px;font-size:18px}.phone-content>.sealed-label{margin-bottom:17px}.receipt-person{padding:12px 0;border-bottom:1px solid #82718455}.receipt-person small{display:block;color:var(--muted);font-size:11px}.receipt-person strong{font-size:17px;font-weight:400}.phone-receipt,.phone-enlarged .phone-receipt{font-size:11px;margin:15px 0}.phone-receipt div{margin:9px 0}.phone-receipt dd{font-size:11px}.phone-outline-action{font-size:12px;padding:11px;min-height:44px}.phone-consult{display:block;text-align:center;font-size:12px;padding:12px 0;color:var(--gold);text-decoration:underline}.phone-notification{top:42px;padding:10px 8px;gap:7px}.phone-notification strong{font-size:10px}.phone-notification span:not(.notification-icon){font-size:9px}.notification-icon{width:30px;height:30px;flex-shrink:0}.notification-icon img{width:22px;height:22px;margin:4px}.interactive-phone[data-state="confirming"]{min-height:470px;display:grid;place-items:center}.confirmation-motion{text-align:center}.confirmation-motion h3{font-size:22px}.confirmation-motion p{font-size:13px;color:var(--muted)}.confirmation-motion small{color:var(--muted);font-size:11px}.confirmation-seal{width:78px;height:78px;border:1px solid var(--success);color:var(--success);border-radius:50%;font-size:40px;display:grid;place-items:center;margin:0 auto 24px;animation:confirmation-in 250ms cubic-bezier(.23,1,.32,1) both}.interactive-phone[data-state="receipt"] .phone-content{animation:confirmation-in 250ms cubic-bezier(.23,1,.32,1) both}@keyframes confirmation-in{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.company-record{border:1px solid #343434;border-radius:12px;background:#0c0c0c;padding:32px;scroll-margin-top:100px}.company-record[hidden]{display:none}.company-record h3{font-size:28px;font-weight:450;margin:12px 0}.company-record p{color:#aaa;font-size:14px}.company-record dl{display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.company-record dl>div{padding:15px 0;border-bottom:1px solid #292929}.company-record dt{font-size:12px;color:#999}.company-record dd{margin:5px 0 0;font-size:14px}.company-record .record-limit{font-size:12px;max-width:760px}.company-record .btn{margin-top:15px}@media(max-width:680px){.mobile-lab,.phone-enlarged{grid-template-columns:1fr}.phone-stage{max-width:300px}.phone-enlarged .phone-stage{max-width:330px}.interactive-phone,.phone-enlarged .interactive-phone{min-height:0;padding:44px 15px 26px}.company-record{padding:22px}.company-record dl{grid-template-columns:1fr}.company-record h3{font-size:24px}}@media(prefers-reduced-motion:reduce){.confirmation-seal,.interactive-phone[data-state="receipt"] .phone-content{animation:none}}
.interactive-phone[data-state="receipt"] .phone-back{display:none}.interactive-phone[data-state="receipt"] #completed-drawing{height:45px}.interactive-phone[data-state="receipt"] .phone-outline-action{margin:7px 0}.interactive-phone[data-state="receipt"] .phone-receipt{margin:10px 0}.interactive-phone[data-state="receipt"] .receipt-heading{margin-top:6px}.interactive-phone[data-state="receipt"] .receipt-person{padding:8px 0}

.response-explained{margin:32px 0;border:1px solid #303030;border-radius:12px;padding:36px;background:#0b0b0c}.response-explained[hidden]{display:none}.response-explained h3{font-size:clamp(25px,3vw,36px);font-weight:450;line-height:1.15;letter-spacing:-.8px;margin:16px 0}.response-context{max-width:760px;color:#aaa;font-size:15px}.response-context strong{color:#ddd;font-weight:450}.response-stages{list-style:none;padding:0;margin:32px 0;display:grid;grid-template-columns:1fr 1fr;gap:28px}.response-stages li{display:flex;gap:16px;border-top:1px solid #303030;padding-top:22px}.response-stages li>span{color:#93c9ad;font-size:12px;padding-top:3px}.response-stages h4,.response-outcome h4{font-size:18px;font-weight:450;margin:0 0 10px}.response-stages p,.response-outcome p{font-size:14px;color:#aaa;line-height:1.65;margin:0 0 12px}.response-stages strong{font-size:13px;font-weight:450;color:#ddd}.response-outcome{border-top:1px solid #333;padding-top:26px;display:flex;align-items:center;gap:32px;justify-content:space-between}.response-outcome>div{max-width:660px}.response-outcome .btn{flex-shrink:0}.response-limits{font-size:11px;color:#888;line-height:1.6;margin:20px 0 0}@media(max-width:760px){.response-explained{padding:22px}.response-stages{grid-template-columns:1fr;gap:22px}.response-outcome{display:block}.response-outcome .btn{margin-top:12px}}

/* Dual-method demonstration: four gold arcs meet at the left/right midpoints. */
.hold-sign{border-color:#8c713c;border-radius:15px;margin-top:4px;color:#efca7e;padding:15px 10px;overflow:visible}
.hold-progress{inset:0;width:100%;height:100%;background:none;opacity:1;transform:none;filter:drop-shadow(0 0 4px #eabb5b);overflow:visible}
.hold-progress path{fill:none;stroke:#f7ce79;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linecap:butt;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--hold-progress,0))}
.sign-choice{text-align:center;font-size:10px;color:var(--muted);margin:15px 0 8px}
.signature-hint{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:11px;pointer-events:none;opacity:.65}
.signature-area.has-ink .signature-hint{opacity:0}
.signature-cue{color:var(--phone-text);margin:8px 0}.signature-cue span{display:inline-block}.interactive-phone.guides-visible .signature-cue span{animation:sign-cue 1.5s ease-in-out 3}
@keyframes sign-cue{0%,100%{transform:translateY(-2px);opacity:.6}50%{transform:translateY(3px);opacity:1}}
.interactive-phone[data-state="review"] .signature-area,.interactive-phone[data-state="review"] #signature-pad{height:85px}
.interactive-phone[data-state="review"] .clear-signature{margin-bottom:10px}.interactive-phone[data-state="review"] .phone-fine{margin:8px 0}.interactive-phone[data-state="review"] .keyboard-alternative{margin-top:8px}
@media(prefers-reduced-motion:reduce){.interactive-phone.guides-visible .signature-cue span{animation:none}.hold-progress{filter:none}}
