/* INFINITY LIVE PROFILE — SIGNATURE. Shared across employee colour themes. */
:root{--signature-header:78px;--signature-contact:54px;--signature-footer:112px}
.book-ready body{grid-template-rows:var(--signature-header) var(--signature-contact) minmax(0,1fr) var(--signature-footer)}
.book-header{height:var(--signature-header);background:#090e0cea;border-bottom:0}
.book-header .brand-mark{animation:signature-logo 12s ease-in-out infinite;transform-origin:center}
.book-header .brand b{font-size:18px;letter-spacing:.22em}
.book-header .edition span{color:var(--red);font-size:12px;letter-spacing:.19em}
.book-header .edition b{font-size:14px}
.chrome-control{font-size:14px;min-height:44px}
.signature-contactbar{position:relative;z-index:42;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 44px;background:#0c120f;border-block:1px solid #ffffff16;min-height:54px}
.signature-contact-id{display:flex;align-items:center;gap:14px;min-width:0;font-size:14px;color:#c5c6cf}
.signature-contact-id strong{border-left:3px solid var(--red);padding-left:12px;font-size:16px;color:#fff;letter-spacing:.08em}
.signature-contact-id span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.signature-contact-links{display:flex;align-items:center;gap:8px}
.signature-contact-links a{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #ffffff20;padding:7px 17px;min-height:42px;font-size:14px;border-radius:6px;white-space:nowrap;background:#161e1a;transition:background .2s,border-color .2s}
.signature-contact-links a:hover{border-color:var(--red);background:#25302b}
.signature-contact-links .save-contact{background:var(--red);color:#090e0c;font-weight:750;border-color:var(--red)}
.signature-contact-links .quick-monogram{font-size:12px;font-weight:800;opacity:.7}
.book-ready .book-sidebar{top:calc(var(--signature-header) + var(--signature-contact));bottom:var(--signature-footer)}
.book-ready.menu-open .menu-scrim{inset:calc(var(--signature-header) + var(--signature-contact)) 0 var(--signature-footer)}
.book-page .hero h1{position:relative;max-width:100%;font-size:clamp(74px,8.2vw,128px);line-height:1.02;letter-spacing:-.06em;color:#f6faf8;text-shadow:0 8px 60px #0006}
.book-page .hero h1>span{color:var(--red)}
.book-page .hero h1:after{content:"";display:block;height:3px;margin-top:20px;width:66px;background:linear-gradient(90deg,var(--red),transparent);transform-origin:left}
.book-ready .book-page.is-current .hero h1{animation:signature-name 1s cubic-bezier(.2,.75,.2,1) both}
.book-ready .book-page.is-current .hero h1:after{animation:signature-line 1.2s .2s both}
.book-ready .book-page.is-current .hero .eyebrow{animation:signature-rise .7s .08s both}
.book-ready .book-page.is-current .hero .legal-name{animation:signature-rise .9s .15s both}
.book-ready .book-page.is-current .portrait-stage{animation:signature-portrait 1.1s .2s both}
.book-page .hero .intro,.book-page .section-intro,.book-page .about-panel p,.book-page .service p,.book-page .tool p,.book-page .card-copy>p{font-size:16px;line-height:1.8}
.book-page .factrow dt,.book-page .factrow dd,.book-page .service ul,.book-page .tool small,.book-page .contact-qr span{font-size:14px}
.book-page .panel,.book-page .service,.book-page .tool,.book-page .contact-card{border-radius:13px}
.book-page .portrait-border{border-radius:12px;box-shadow:15px 20px 0 #ffffff06,0 24px 70px #0008}
.book-page .portrait{height:auto!important;object-fit:contain!important;aspect-ratio:auto!important}
.book-page .portrait-caption{border-radius:8px}.book-page .portrait-caption small,.book-page .portrait-hint{font-size:12px}
.book-page .floating-label span{font-size:12px}.book-page .floating-label b{font-size:15px}
.book-page .hero-meta{font-size:14px;flex-wrap:wrap}
.book-page .card-frame{perspective:1400px;isolation:isolate}
.flip-card{position:relative;transform:perspective(1400px) rotateX(var(--card-x,0deg)) rotateY(var(--card-y,0deg));transition:transform .25s ease-out;touch-action:pan-y;isolation:isolate}
.flip-card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:4;background:radial-gradient(circle at var(--card-light-x,50%) var(--card-light-y,35%),#ffffff70,transparent 52%);opacity:var(--card-shine,0);mix-blend-mode:screen;transition:opacity .2s}
.card-depth-hint{font-size:14px;color:var(--muted);text-align:center;margin:14px 0 4px}
.book-page .card-utility{gap:12px;flex-wrap:wrap}.book-page .card-utility button{font-size:14px;min-height:44px}
.concept-preview-button{border:1px solid #ffffff4a;background:#0c14107d;color:#fff;padding:10px 18px;border-radius:7px;font-size:14px;min-height:44px;margin-top:22px;text-align:center}
.concept-preview-button:hover{border-color:var(--red);background:#22232b}
.signature-work-dialog{width:min(900px,calc(100% - 36px));max-height:90dvh;padding:0;border:1px solid #ffffff40;border-radius:16px;color:#f7faf9;background:#101613;overflow:auto;box-shadow:0 30px 100px #000a}
.signature-work-dialog::backdrop{background:#000c;backdrop-filter:blur(14px)}
.signature-work-dialog .dialog-top{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#131c18ef;padding:20px 25px;border-bottom:1px solid #ffffff22}
.signature-work-dialog h2{font-size:21px;margin:0;line-height:1.4}
.signature-work-dialog button{min-height:44px;border:1px solid #ffffff44;border-radius:7px;background:#25302b;color:white;padding:7px 16px;font-size:14px}
.signature-work-preview{padding:30px;max-width:720px;margin:auto}
.signature-work-preview>div{transform:none!important;max-width:100%;width:100%;box-shadow:0 12px 45px #0008}
.signature-work-note{font-size:14px;color:#bfcdc6;border-top:1px solid #ffffff1a;margin:0;padding:20px 28px}
.save-contact-panel{margin-top:25px;padding:23px 26px;border:1px solid #ffffff25;border-radius:11px;background:#141c18;display:flex;align-items:center;justify-content:space-between;gap:24px}
.save-contact-panel h3{margin:0 0 5px;font-size:20px}.save-contact-panel p{margin:0;color:var(--muted);font-size:14px}.save-contact-panel .button{white-space:nowrap;font-size:14px;min-height:44px}
.book-page .story-copy>p:not(.overline){font-size:16px;line-height:1.8}
.book-page .story-page{min-height:520px}.book-page .story-copy{min-width:0}
.book-page .story-tags span{font-size:13px}
.book-footer .pager-button,.book-footer .tour-button{font-size:14px;min-height:44px}
.scene-link b{font-size:13px}.scene-link span{font-size:12px}.book-footer .chapter-position>strong{font-size:14px}
.book-page .contact-qr img,.book-page .qr-block img{transform:none!important;animation:none!important;filter:none!important}
.motion-off .flip-card{transform:none!important}.motion-off .flip-card:after{opacity:0!important}
.motion-off .book-header .brand-mark,.motion-off .hero h1,.motion-off .hero h1:after,.motion-off .hero .eyebrow,.motion-off .hero .legal-name,.motion-off .portrait-stage{animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important}
@keyframes signature-logo{0%,100%{transform:perspective(300px) rotateY(-13deg) translateY(0)}50%{transform:perspective(300px) rotateY(15deg) translateY(-2px)}}
@keyframes signature-name{from{opacity:0;clip-path:inset(100% 0 0);transform:translateY(18px)}to{opacity:1;clip-path:inset(0);transform:none}}
@keyframes signature-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes signature-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes signature-portrait{from{opacity:0;transform:translateY(25px) scale(.97)}to{opacity:1;transform:none}}
@media(max-width:1050px){.signature-contactbar{padding-inline:28px}.book-header .edition{display:none}.signature-contact-id span{max-width:270px}.book-page .hero h1{font-size:clamp(70px,9vw,110px)}.book-page .hero-grid{gap:30px}.scene-link{padding-inline:10px}.scene-link b{font-size:12px}}
@media(max-width:700px){
 :root{--signature-header:66px;--signature-contact:58px;--signature-footer:104px}
 .book-ready body{grid-template-rows:var(--signature-header) var(--signature-contact) minmax(0,1fr) calc(var(--signature-footer) + env(safe-area-inset-bottom))}
 .book-header{height:var(--signature-header);padding-inline:18px;gap:12px}.book-header .brand b{font-size:14px}.book-header .brand-mark{width:55px;height:32px}.book-header .brand small{font-size:8px}.book-header .header-actions{gap:5px}.chrome-control{font-size:12px;padding:7px 10px;min-height:42px}#fullscreen-control{display:none}
 .signature-contactbar{padding:6px 16px;min-height:58px}.signature-contact-id{display:none}.signature-contact-links{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:6px;width:100%}.signature-contact-links a{font-size:13px;padding:7px 5px;gap:4px;min-height:44px}.signature-contact-links .quick-monogram{display:none}
 .book-ready .page-scroll,.book-page[data-anchor="cover"] .page-scroll{padding:30px 22px 26px}.book-page .wrap{width:100%}.book-page .hero-grid{grid-template-columns:1fr;gap:30px}.book-page .hero h1{font-size:clamp(65px,17vw,90px);line-height:1.01}.book-page .hero h1:after{margin-top:18px}.book-page .hero .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.07em;margin-bottom:18px}.book-page .legal-name{font-size:25px}.book-page .hero .intro{font-size:16px}.book-page .hero-meta{font-size:14px;gap:13px}.book-page .hero .button{font-size:14px;min-height:44px;padding-inline:16px}.book-page .role-cycle{font-size:14px;min-height:27px}
 .book-page h2,.book-page .section-head h2{font-size:clamp(31px,8.6vw,40px)}.book-page .panel,.book-page .service,.book-page .tool,.book-page .contact-card{padding:23px}.book-page .factrow{grid-template-columns:minmax(90px,.85fr) minmax(0,1.4fr);gap:12px}.book-page .factrow dt,.book-page .factrow dd{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
 .book-ready .book-sidebar{top:calc(var(--signature-header) + var(--signature-contact));bottom:0}.book-ready.menu-open .menu-scrim{inset:calc(var(--signature-header) + var(--signature-contact)) 0 0}
 .book-ready .book-footer{grid-template-columns:52px 52px minmax(34px,1fr) 52px 60px;grid-template-rows:22px 44px;gap:8px 6px;padding:10px 12px calc(12px + env(safe-area-inset-bottom))}.book-footer .pager-button,.book-footer .tour-button{font-size:12px;min-height:44px;min-width:0;padding:6px 4px}.scene-link{min-height:24px;padding:2px 5px;min-width:25px}.scene-link span{font-size:12px}.scene-strip{gap:4px}.book-footer .chapter-position>strong{display:none}
 .book-page .story-page{min-height:0;gap:30px;padding:25px 21px}.book-page .story-copy{min-height:0}.book-page .story-copy h3{font-size:34px}.book-page .story-visual{min-width:0}.book-page .story-copy>p:not(.overline){font-size:16px}.concept-preview-button{width:100%}.signature-work-dialog{width:calc(100% - 24px)}.signature-work-dialog .dialog-top{padding:15px 18px}.signature-work-dialog h2{font-size:18px}.signature-work-preview{padding:18px}.signature-work-note{font-size:14px;padding:18px}
 .save-contact-panel{display:block;padding:22px}.save-contact-panel .button{display:flex;margin-top:16px;width:100%}.book-page .contact-qr{flex-wrap:wrap;gap:20px}.book-page .contact-qr img{width:150px;height:150px;flex-basis:150px}.book-page .contact-qr strong{font-size:18px;overflow-wrap:anywhere}.book-page .contact-button{font-size:14px;min-height:44px}.book-page .contact-qr span{font-size:14px}.book-page .qr-block{flex-wrap:wrap}.book-page .qr-block img{width:144px;height:144px}
}
@media(max-width:360px){.book-header{padding-inline:14px}.book-header .brand b{font-size:12px}.signature-contactbar{padding-inline:12px}.signature-contact-links a{font-size:12px}.book-ready .page-scroll,.book-page[data-anchor="cover"] .page-scroll{padding-inline:18px}.book-ready .book-footer{padding-inline:10px;grid-template-columns:47px 47px minmax(30px,1fr) 47px 55px;gap:8px 5px}}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled) .book-header .brand-mark,html:not(.motion-enabled) .hero h1,html:not(.motion-enabled) .hero h1:after,html:not(.motion-enabled) .hero .eyebrow,html:not(.motion-enabled) .hero .legal-name,html:not(.motion-enabled) .portrait-stage{animation:none!important;clip-path:none!important;opacity:1!important;transform:none!important}html:not(.motion-enabled) .flip-card{transform:none!important}html:not(.motion-enabled) .flip-card:after{opacity:0!important}}
