:root{
  --bg:#eef2f3;
  --bg-soft:#f6f8f8;
  --bg-white:#ffffff;
  --ink:#17212b;
  --ink-soft:#5f6b74;
  --line:#d9e0e2;
  --green:#2bae72;
  --green-soft:#68c69b;
  --navy:#20345f;
  --orange:#ff914d;
  --red:#ff5757;
  --max:1220px;
  --shadow:0 24px 70px rgba(44,58,64,.13);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);overflow-x:hidden}
a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(34px,calc((100vw - var(--max))/2));background:rgba(239,243,244,.90);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,33,43,.07);transition:.25s}
.site-header.scrolled{height:72px;background:rgba(246,248,248,.96);box-shadow:0 8px 30px rgba(44,58,64,.06)}
.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:150px;height:auto}
.nav{display:flex;align-items:center;gap:27px;font-size:14px;font-weight:650;color:#26323b}.nav>a{opacity:.82;transition:.2s}.nav>a:hover{opacity:1;color:var(--green)}
.nav-zlinks{border:1px solid rgba(32,52,95,.18);padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.42);letter-spacing:.035em}
.nav-actions{display:flex;align-items:center;gap:10px;margin-left:2px}.nav-login,.nav-register{padding:11px 18px;border-radius:999px;font-weight:750;opacity:1!important}.nav-login{border:1px solid #aeb8bd;background:rgba(255,255,255,.38)}.nav-register{border:1px solid rgba(43,174,114,.38);background:var(--green);color:white!important;box-shadow:0 8px 20px rgba(43,174,114,.15)}
.menu-toggle{display:none;background:none;border:0;width:42px;height:42px}.menu-toggle span{display:block;height:2px;background:var(--ink);margin:7px 0}

.intro-scroll{height:540vh;background:linear-gradient(180deg,#edf1f2 0%,#f5f7f7 100%)}
.intro-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;isolation:isolate}
.ambient-grid{position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 78% 50%,rgba(43,174,114,.08),transparent 23%),radial-gradient(circle at 63% 60%,rgba(32,52,95,.045),transparent 28%),linear-gradient(180deg,#f0f3f4,#f7f8f8)}
.ambient-grid:after{content:"";position:absolute;left:0;right:0;bottom:-10%;height:46%;background-image:linear-gradient(rgba(43,174,114,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(43,174,114,.045) 1px,transparent 1px);background-size:42px 42px;transform:perspective(560px) rotateX(62deg) scale(1.28);mask-image:linear-gradient(to top,black,transparent 88%)}
.intro-copy{position:absolute;z-index:8;left:max(5vw,calc((100vw - var(--max))/2));top:22%;max-width:min(620px,43vw);transition:.3s}
.eyebrow{margin:0 0 20px;font-size:12px;line-height:1;font-weight:850;letter-spacing:.18em;color:var(--green)}.eyebrow.dark{color:#218b5d}
.intro-copy h1,.section h2{margin:0;font-size:clamp(48px,5.3vw,78px);line-height:.98;letter-spacing:-.055em;font-weight:820;color:var(--ink)}
.intro-copy h1 span,.section h2 span{color:var(--green)}
.intro-sub{max-width:545px;margin:24px 0 28px;color:var(--ink-soft);font-size:18px;line-height:1.65}
.hero-actions,.cta-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.primary-btn,.secondary-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:50px;padding:0 22px;border-radius:12px;font-weight:800;transition:.2s}
.primary-btn{background:var(--green);color:#fff;box-shadow:0 12px 26px rgba(43,174,114,.17)}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(43,174,114,.22)}
.secondary-btn{border:1px solid #c9d1d4;background:rgba(255,255,255,.56);color:var(--navy)}.secondary-btn:hover{background:white}.dark-secondary{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:white}

.tap-stage{position:absolute;inset:0;z-index:2;pointer-events:none}
.phone{position:absolute;right:max(5vw,calc((100vw - var(--max))/2));top:53%;width:min(330px,25vw);aspect-ratio:9/18.7;transform:translateY(-50%) rotate(0deg);z-index:6;filter:drop-shadow(0 28px 44px rgba(44,58,64,.16))}
.phone-shell{height:100%;border-radius:13.5%/6.5%;background:linear-gradient(145deg,#6a7074,#15191c 14%,#30363a 48%,#0c0e0f 86%);padding:8px;box-shadow:inset 0 0 0 2px #747b7f,inset 0 0 0 5px #191d1f}
.phone-screen{position:relative;width:100%;height:100%;border-radius:12.2%/6%;overflow:hidden;background:#f4f6f6}
.island{position:absolute;top:2%;left:50%;transform:translateX(-50%);width:34%;height:3.6%;border-radius:999px;background:#050606;z-index:30}
.screen{position:absolute;inset:0;opacity:0;transform:scale(.992);transition:opacity .3s ease,transform .3s ease;pointer-events:none}.screen.is-active{opacity:1;transform:none}.screen img{width:100%;height:100%;object-fit:cover;object-position:top center}
.screen-ready,.screen-connected{display:grid;place-items:center;align-content:center;text-align:center;background:linear-gradient(180deg,#f8fafa,#eef2f3)}
.ready-mark{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(43,174,114,.44);box-shadow:0 0 0 18px rgba(43,174,114,.05),0 0 0 36px rgba(43,174,114,.025)}.ready-mark span{font-size:38px;font-weight:900;color:var(--green)}
.screen-ready strong{margin-top:42px;font-size:20px}.screen-ready small{margin-top:8px;color:#7d888e;font-size:12px}
.connected-check{width:94px;height:94px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--green);color:var(--green);font-size:52px;margin-bottom:24px}.screen-connected strong{font-size:20px}.screen-connected span{margin-top:8px;color:#7c888d;font-size:13px}
.profile-name-overlay{position:absolute;top:15.5%;left:19%;right:19%;height:4.8%;display:flex;align-items:center;justify-content:center;background:rgba(235,240,242,.97);font-family:Georgia,"Times New Roman",serif;font-size:clamp(16px,1.45vw,22px);color:#25313a;z-index:4}
.save-highlight{position:absolute;top:38.4%;left:34%;width:35%;height:5.6%;border:3px solid var(--green);border-radius:14px;box-shadow:0 0 22px rgba(43,174,114,.28);z-index:6}.tap-finger{position:absolute;top:45%;left:57%;width:54px;height:78px;border-radius:38px 38px 19px 19px;background:linear-gradient(135deg,#f1c8ad,#c98f72);transform:rotate(-14deg);box-shadow:0 12px 24px rgba(44,58,64,.15);z-index:7}
.screen-contact{background:#f5f6f7;color:#111;padding:50px 18px 22px}.contact-topbar{display:flex;justify-content:space-between;font-size:12px}.contact-topbar .save-action{color:#0a84ff;font-weight:700}.avatar-circle{width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,#dfe3e5,#bbc4c8);display:grid;place-items:center;font-size:23px;font-weight:850;color:#44515a;margin:40px auto 12px}.screen-contact h3{text-align:center;margin:0;font-size:23px}.screen-contact>p{text-align:center;color:#7c878d;margin:4px 0 24px;font-size:12px}.contact-fields{display:grid;gap:9px}.contact-fields div{background:#fff;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;box-shadow:0 1px 2px rgba(0,0,0,.03)}.contact-fields small{font-size:9px;color:#879298}.contact-fields strong{font-size:11px;margin-top:2px}.contact-saved{position:absolute;left:20px;right:20px;bottom:32px;background:#153a2b;color:#e9fff5;padding:13px 14px;border-radius:12px;display:flex;align-items:center;gap:10px;opacity:0;transform:translateY(18px)}.contact-saved b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white}

.card-3d{position:absolute;left:max(4.8vw,calc((100vw - var(--max))/2));top:67%;width:min(350px,26vw);aspect-ratio:246.75/159;transform:translate3d(0,-50%,0) rotate(-1.5deg);transform-origin:center;z-index:3;border-radius:17px;overflow:hidden;box-shadow:0 22px 48px rgba(44,58,64,.16);border:1px solid rgba(23,33,43,.08);background:#161a1c;will-change:transform,opacity}
.card-3d img{width:100%;height:100%;object-fit:cover}
.nfc-rings{position:absolute;right:calc(max(5vw,calc((100vw - var(--max))/2)) + min(330px,25vw) - 3px);top:38%;width:130px;height:130px;transform:translate(50%,-50%);z-index:5;opacity:0}.nfc-rings i{position:absolute;inset:0;border:2px solid rgba(43,174,114,.64);border-radius:50%;animation:ring 1.55s infinite}.nfc-rings i:nth-child(2){animation-delay:.32s}.nfc-rings i:nth-child(3){animation-delay:.64s}@keyframes ring{0%{transform:scale(.18);opacity:0}30%{opacity:.72}100%{transform:scale(1.28);opacity:0}}
.tap-path{position:absolute;left:32%;right:26%;top:59%;height:1px;border-top:1px dashed rgba(43,174,114,.26);opacity:.55}
.step-status{position:absolute;z-index:8;left:50%;bottom:30px;transform:translateX(-50%);display:flex;align-items:center;gap:9px;white-space:nowrap}.step-status i{width:30px;height:1px;background:#cbd3d6}.step-dot{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid #c5cdd0;color:#8a969b;background:rgba(255,255,255,.55);font-size:11px}.step-dot.active{background:var(--green);border-color:var(--green);color:#fff;font-weight:850}.step-status p{position:absolute;top:-29px;left:50%;transform:translateX(-50%);margin:0;color:#718087;font-size:12px}.scroll-cue{position:absolute;right:34px;bottom:32px;color:#7e8a90;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.scroll-cue span{color:var(--green)}

.section{padding:112px max(34px,calc((100vw - var(--max))/2));position:relative}.section-soft{background:#f2f5f5}.section-white{background:#fff}.section-head{max-width:760px}.section-head h2,.business h2,.media-section h2,.cta h2{font-size:clamp(40px,4.6vw,66px)}.section-head>p:last-child{max-width:650px;font-size:17px;line-height:1.65;color:var(--ink-soft)}.centered{text-align:center;margin-inline:auto}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:58px}.feature-card{padding:27px;border-radius:18px;background:#fff;border:1px solid #e3e8ea;min-height:190px;box-shadow:0 8px 28px rgba(44,58,64,.035)}.feature-card>span{font-size:11px;font-weight:850;color:var(--green)}.feature-card h3{margin:30px 0 9px;font-size:18px}.feature-card p{margin:0;color:#6b767c;font-size:14px;line-height:1.55}
.business{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:72px;background:#e9eeee}.business-copy>p:last-child{font-size:17px;line-height:1.7;color:#5f6b71}.continuity-card{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:20px;align-items:center;padding:38px;border-radius:24px;background:rgba(255,255,255,.68);border:1px solid #dce4e4}.employee{text-align:center}.person{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;margin:0 auto 15px;font-size:22px;font-weight:850;background:#e7ecee;color:#66737a}.active-person{background:#dff2e9;color:#218b5d}.employee strong{display:block;font-size:13px}.employee small{display:block;margin-top:4px;color:#839096;font-size:11px}.flow-arrow{font-size:25px;color:var(--green)}.ztag-orb{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d8e1e1;box-shadow:0 15px 34px rgba(44,58,64,.07)}.ztag-orb img{width:78px}
.applications-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:54px}.app-card{padding:30px;border:1px solid #e6eaeb;border-radius:16px;background:#fbfcfc;min-height:155px}.app-card span{font-weight:800;color:#25343d}.app-card p{margin:18px 0 0;color:#69747a;line-height:1.55;font-size:14px}
.media-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:center;background:#f5f7f7}.media-copy>p:last-child{font-size:16px;line-height:1.7;color:#657178}.video-wrap{border-radius:22px;overflow:hidden;background:#111;box-shadow:var(--shadow)}.video-wrap video{width:100%;display:block;max-height:540px;background:#111}
.stories{overflow:hidden}.story-track{display:flex;gap:18px;overflow-x:auto;padding:34px 2px 18px;scroll-snap-type:x mandatory;scrollbar-width:thin}.story-card{flex:0 0 min(300px,74vw);border:0;padding:0;background:white;border-radius:16px;overflow:hidden;scroll-snap-align:start;cursor:pointer;box-shadow:0 10px 28px rgba(44,58,64,.08);transition:.2s}.story-card:hover{transform:translateY(-4px)}.story-card img{width:100%;height:430px;object-fit:cover;object-position:top}
.cta{background:#263a48;padding-top:82px;padding-bottom:82px}.cta-card{max-width:var(--max);margin:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:46px;padding:50px 54px;border-radius:24px;background:linear-gradient(135deg,#2b3e4b,#315247);color:white}.cta-card h2{color:white}.cta-card>div>p:last-child{color:#d2ded9}.cta .eyebrow{color:#8ad5b2}
.footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:26px;padding:38px max(34px,calc((100vw - var(--max))/2));background:#f7f8f8;border-top:1px solid #e1e6e7;color:#748086}.footer-brand{display:flex;align-items:center;gap:13px}.footer-brand img{width:102px}.footer-brand small{font-weight:700;color:#526068}.footer-links{display:flex;justify-content:center;gap:22px;font-size:12px}.footer-links a:hover{color:var(--green)}.footer>small{font-size:11px}
.story-modal{width:min(92vw,780px);max-height:92vh;border:0;border-radius:20px;padding:0;background:#fff;box-shadow:0 40px 100px rgba(0,0,0,.25)}.story-modal::backdrop{background:rgba(22,30,34,.72);backdrop-filter:blur(6px)}.story-modal img{width:100%;max-height:90vh;object-fit:contain}.modal-close{position:fixed;top:20px;right:20px;width:46px;height:46px;border-radius:50%;border:0;background:white;color:#111;font-size:28px;cursor:pointer}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.in{opacity:1;transform:none}

.legal-body{background:#f4f6f6}.legal-shell{max-width:900px;margin:0 auto;padding:130px 28px 80px}.legal-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:42px}.legal-top img{width:120px}.legal-back{font-size:13px;color:#476058}.legal-card{background:white;border:1px solid #e1e6e7;border-radius:22px;padding:42px 46px;box-shadow:0 15px 50px rgba(44,58,64,.05)}.legal-card h1{font-size:42px;letter-spacing:-.04em;margin:0 0 6px}.legal-meta{color:#7a858a;font-size:12px;margin-bottom:32px}.legal-card h2{font-size:20px;margin:30px 0 10px}.legal-card p,.legal-card li{font-size:15px;line-height:1.72;color:#4e5b61}.legal-card ul{padding-left:20px}.legal-note{margin-top:34px;padding:16px 18px;border-radius:12px;background:#f3f7f5;color:#617069;font-size:12px;line-height:1.6}

@media(max-width:1080px){.nav{gap:17px}.nav-actions{gap:7px}.nav-login,.nav-register{padding:10px 14px}.nav-zlinks{padding:9px 12px}.brand img{width:130px}}
@media(max-width:930px){
  .site-header{height:70px;padding:0 20px}.brand img{width:112px}.menu-toggle{display:block}.nav{position:fixed;display:none;top:70px;left:14px;right:14px;flex-direction:column;align-items:stretch;gap:4px;padding:16px;border-radius:16px;background:rgba(250,251,251,.98);border:1px solid #dfe5e6;box-shadow:0 20px 50px rgba(44,58,64,.12)}.nav.open{display:flex}.nav>a{padding:11px}.nav-actions{display:grid;grid-template-columns:1fr 1fr;margin:6px 0 0}.nav-actions a{text-align:center}.intro-scroll{height:570vh}.intro-copy{left:22px;top:13%;max-width:72vw}.intro-copy h1{font-size:clamp(42px,10vw,62px)}.intro-sub{font-size:14px;max-width:58vw}.phone{width:min(250px,46vw);right:3%;top:59%}.card-3d{left:3%;top:72%;width:min(230px,40vw)}.nfc-rings{right:23%;top:43%;width:108px;height:108px}.tap-path{display:none}.step-status{bottom:18px}.step-status i{width:15px}.scroll-cue{display:none}.section{padding:82px 22px}.feature-grid{grid-template-columns:1fr 1fr}.business,.media-section{grid-template-columns:1fr;gap:40px}.applications-grid{grid-template-columns:1fr 1fr}.cta-card{display:block;padding:38px 30px}.cta-actions{margin-top:28px}.footer{grid-template-columns:1fr;text-align:center;justify-items:center}.footer-links{flex-wrap:wrap}.story-card img{height:390px}}
@media(max-width:560px){.intro-copy{top:12%;max-width:88vw}.intro-copy h1{font-size:42px}.intro-sub{display:none}.hero-actions{margin-top:22px}.secondary-btn{display:none}.phone{width:49vw;right:1%;top:62%}.card-3d{width:42vw;left:2%;top:74%}.nfc-rings{right:25%;top:47%;width:94px;height:94px}.profile-name-overlay{font-size:13px}.save-highlight{left:33%;width:37%;top:38.3%;height:5.4%}.tap-finger{width:45px;height:67px;top:45%;left:58%}.step-status p{display:none}.feature-grid,.applications-grid{grid-template-columns:1fr}.continuity-card{grid-template-columns:1fr auto 1fr;gap:10px;padding:24px}.ztag-orb,.continuity-card .flow-arrow:nth-of-type(2){display:none}.person{width:70px;height:70px}.story-card{flex-basis:78vw}.story-card img{height:410px}.legal-shell{padding:100px 16px 54px}.legal-card{padding:28px 22px}.legal-card h1{font-size:34px}.legal-top img{width:105px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.intro-scroll{height:100vh}.intro-sticky{position:relative}.screen-ready,.screen-connected,.screen-save,.screen-contact,.nfc-rings,.step-status{display:none}.screen-profile{opacity:1;transform:none}.card-3d{transform:translate3d(0,-50%,0)!important}}


/* ===== V5 hero alignment overrides ===== */
.intro-scroll.exact-hero{height:540vh;background:linear-gradient(180deg,#edf0f0 0%,#f7f9f8 100%)}
.intro-scroll.exact-hero .intro-sticky{position:sticky;top:0;height:100svh;min-height:700px;overflow:hidden;isolation:isolate}
.intro-scroll.exact-hero .ambient-grid:after{left:18%;right:-2%;bottom:-14%;height:42%;background-size:40px 40px;transform:perspective(640px) rotateX(66deg) scale(1.16);opacity:.7}
.intro-scroll.exact-hero .intro-copy{left:max(4vw,calc((100vw - var(--max))/2));top:20.5%;max-width:min(640px,46vw)}
.intro-scroll.exact-hero .intro-copy h1{font-size:clamp(58px,5.7vw,92px);line-height:.94}
.intro-scroll.exact-hero .intro-copy .intro-sub{max-width:560px;margin-top:22px;margin-bottom:0;font-size:18px}
.intro-scroll.exact-hero .hero-actions-fixed{position:absolute;left:max(4vw,calc((100vw - var(--max))/2));bottom:78px;z-index:10;display:flex;align-items:center;gap:16px;flex-wrap:wrap;max-width:650px}
.intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{min-height:60px;padding:0 28px;border-radius:14px;font-size:15px}
.intro-scroll.exact-hero .hero-note{margin:0 0 0 8px;color:#5d6971;font-size:14px;line-height:1.45;max-width:250px}
.intro-scroll.exact-hero .tap-stage{position:absolute;inset:0;z-index:2;pointer-events:none}
.intro-scroll.exact-hero .card-3d{left:max(4vw,calc((100vw - var(--max))/2));top:68.5%;width:min(440px,29.5vw);border-radius:18px;box-shadow:0 18px 50px rgba(44,58,64,.14);transform:translate3d(0,-50%,0) rotate(0deg);z-index:4}
.intro-scroll.exact-hero .phone{right:max(4vw,calc((100vw - var(--max))/2));top:54%;width:min(354px,25vw);transform:translateY(-50%);z-index:7;filter:drop-shadow(0 28px 44px rgba(44,58,64,.16))}
.intro-scroll.exact-hero .tap-route{position:absolute;left:25%;top:40%;width:56%;height:33%;overflow:visible;z-index:3}
.intro-scroll.exact-hero .tap-route-track{fill:none;stroke:rgba(43,174,114,.85);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:13 12;opacity:.85}
.intro-scroll.exact-hero .path-steps{position:absolute;inset:0;z-index:3}
.intro-scroll.exact-hero .path-step{position:absolute;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:#30414c;opacity:.95}
.intro-scroll.exact-hero .path-step-icon{width:70px;height:70px;border-radius:50%;border:2px solid rgba(43,174,114,.55);display:grid;place-items:center;font-size:22px;color:var(--green);background:rgba(255,255,255,.68);box-shadow:0 10px 22px rgba(44,58,64,.05)}
.intro-scroll.exact-hero .path-step strong{font-size:14px;color:var(--green);font-weight:800}
.intro-scroll.exact-hero .path-step small{font-size:16px;color:#2d3942;max-width:180px;line-height:1.3}
.intro-scroll.exact-hero .step-1{left:35.5%;top:56.2%}
.intro-scroll.exact-hero .step-2{left:48.3%;top:56.2%}
.intro-scroll.exact-hero .step-3{right:max(1.5vw,calc((100vw - var(--max))/2));top:51%;transform:translateY(-50%)}
.intro-scroll.exact-hero .nfc-rings{right:calc(max(4vw,calc((100vw - var(--max))/2)) + min(354px,25vw) - 6px);top:41.5%;width:128px;height:128px;transform:translate(50%,-50%);z-index:8}
.intro-scroll.exact-hero .profile-name-overlay{display:none}
body[data-market="singapore"] .intro-scroll.exact-hero .profile-name-overlay{display:flex;position:absolute;top:15.2%;left:21%;right:20%;height:5%;align-items:center;justify-content:center;background:rgba(239,242,243,.98);font-family:Georgia,"Times New Roman",serif;font-size:21px;color:#25313a;z-index:4}
.intro-scroll.exact-hero .save-highlight{top:38.5%;left:34%;width:35%;height:5.7%;border-width:3px;z-index:6}
.intro-scroll.exact-hero .tap-finger{top:45%;left:57%;z-index:7}
.intro-scroll.exact-hero .hero-step-status{bottom:28px}
.intro-scroll.exact-hero .scroll-cue{right:18px;bottom:16px}

@media(max-width:1200px){
  .intro-scroll.exact-hero .card-3d{width:min(390px,28vw)}
  .intro-scroll.exact-hero .phone{width:min(330px,24vw)}
  .intro-scroll.exact-hero .step-1{left:34%}.intro-scroll.exact-hero .step-2{left:47%}
}
@media(max-width:930px){
  .intro-scroll.exact-hero{height:570vh}
  .intro-scroll.exact-hero .intro-copy{left:22px;top:13%;max-width:76vw}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(42px,10vw,66px)}
  .intro-scroll.exact-hero .intro-copy .intro-sub{max-width:64vw;font-size:14px}
  .intro-scroll.exact-hero .hero-actions-fixed{left:22px;bottom:36px;max-width:66vw;gap:12px}
  .intro-scroll.exact-hero .hero-note{display:none}
  .intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{min-height:52px;padding:0 18px;font-size:14px}
  .intro-scroll.exact-hero .card-3d{left:2%;top:73%;width:min(230px,38vw)}
  .intro-scroll.exact-hero .phone{right:3%;top:59%;width:min(250px,46vw)}
  .intro-scroll.exact-hero .tap-route,.intro-scroll.exact-hero .path-steps{display:none}
  .intro-scroll.exact-hero .nfc-rings{right:23%;top:43%;width:108px;height:108px}
}
@media(max-width:560px){
  .intro-scroll.exact-hero .intro-copy{top:11%;max-width:88vw}
  .intro-scroll.exact-hero .intro-copy .intro-sub{display:none}
  .intro-scroll.exact-hero .hero-actions-fixed{left:16px;right:16px;bottom:18px;max-width:none;gap:10px}
  .intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{min-height:48px;padding:0 16px;border-radius:12px;font-size:13px}
  .intro-scroll.exact-hero .secondary-btn{display:inline-flex}
  .intro-scroll.exact-hero .card-3d{width:44vw;left:2%;top:76%}
  .intro-scroll.exact-hero .phone{width:50vw;right:1%;top:61%}
  .intro-scroll.exact-hero .nfc-rings{right:25%;top:46%;width:96px;height:96px}
}


/* ===== V6 hero desktop/layout fix ===== */
.intro-scroll.exact-hero .intro-copy{left:max(4vw,calc((100vw - var(--max))/2));top:11%;max-width:34vw;min-width:420px;z-index:9}
.intro-scroll.exact-hero .intro-copy h1{font-size:clamp(72px,5.7vw,96px);line-height:.93}
.intro-scroll.exact-hero .intro-copy .intro-sub{max-width:520px;margin-top:28px;font-size:18px;line-height:1.55}
.intro-scroll.exact-hero .card-3d{left:max(4vw,calc((100vw - var(--max))/2));top:72.5%;width:min(460px,31vw);z-index:4;transform:translate3d(0,-50%,0) perspective(1100px) rotateY(-16deg) rotate(-6deg) scale(1);box-shadow:0 22px 52px rgba(44,58,64,.16)}
.intro-scroll.exact-hero .hero-actions-fixed{left:max(4vw,calc((100vw - var(--max))/2));bottom:22px;z-index:9;max-width:480px;display:flex;align-items:flex-start;gap:12px;row-gap:10px}
.intro-scroll.exact-hero .hero-note{display:block;flex-basis:100%;margin:2px 0 0;color:#5d6971;font-size:14px;line-height:1.4;max-width:230px}
.intro-scroll.exact-hero .tap-route{left:35%;top:50%;width:43%;height:24%;z-index:3}
.intro-scroll.exact-hero .step-1{left:38.5%;top:58.2%}
.intro-scroll.exact-hero .step-2{left:51.2%;top:58.2%}
.intro-scroll.exact-hero .step-3{right:max(1.3vw,calc((100vw - var(--max))/2));top:53%;transform:translateY(-50%)}
.intro-scroll.exact-hero .path-step-icon{width:62px;height:62px;font-size:20px}
.intro-scroll.exact-hero .path-step small{font-size:15px}
.intro-scroll.exact-hero .phone{right:max(4vw,calc((100vw - var(--max))/2));top:50%;width:min(354px,25vw)}
.intro-scroll.exact-hero .save-highlight,.intro-scroll.exact-hero .tap-finger{display:none!important}
.intro-scroll.exact-hero .nfc-rings{right:calc(max(4vw,calc((100vw - var(--max))/2)) + min(354px,25vw) - 6px);top:37.2%}

@media (max-width:1366px){
  .intro-scroll.exact-hero .intro-copy{max-width:36vw;min-width:390px}
  .intro-scroll.exact-hero .card-3d{top:73.5%;width:min(420px,30vw)}
  .intro-scroll.exact-hero .hero-actions-fixed{bottom:16px}
}
@media (max-width:1160px){
  .intro-scroll.exact-hero .intro-copy{max-width:38vw;min-width:360px}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(62px,5vw,82px)}
  .intro-scroll.exact-hero .card-3d{width:min(380px,29vw)}
}
@media(max-width:930px){
  .intro-scroll.exact-hero .intro-copy{left:22px;top:13%;max-width:72vw;min-width:0}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(42px,10vw,66px)}
  .intro-scroll.exact-hero .card-3d{left:2%;top:73%;width:min(230px,38vw);transform:translate3d(0,-50%,0) perspective(900px) rotateY(-12deg) rotate(-5deg)}
  .intro-scroll.exact-hero .phone{right:3%;top:59%;width:min(250px,46vw)}
  .intro-scroll.exact-hero .hero-actions-fixed{left:22px;bottom:24px;max-width:66vw}
}
@media(max-width:560px){
  .intro-scroll.exact-hero .card-3d{width:44vw;left:2%;top:76%;transform:translate3d(0,-50%,0) perspective(900px) rotateY(-12deg) rotate(-5deg)}
  .intro-scroll.exact-hero .phone{width:50vw;right:1%;top:61%}
  .intro-scroll.exact-hero .hero-actions-fixed{left:16px;right:16px;bottom:18px;max-width:none}
}


/* ===== V7 approved hero exact-tuning ===== */
.intro-scroll.exact-hero .intro-copy{
  left:max(4vw,calc((100vw - var(--max))/2));
  top:18%;
  max-width:34vw;
  min-width:390px;
  z-index:9;
}
.intro-scroll.exact-hero .intro-copy h1{font-size:clamp(64px,5.4vw,92px);line-height:.93;letter-spacing:-.055em}
.intro-scroll.exact-hero .intro-copy .intro-sub{max-width:560px;margin-top:20px;font-size:18px;line-height:1.55}
.intro-scroll.exact-hero .card-3d{
  left:max(4vw,calc((100vw - var(--max))/2));
  top:68%;
  width:min(425px,25.3vw);
  border-radius:18px;
  transform:translate3d(0,-50%,0) perspective(1100px) rotateY(-16deg) rotate(-6deg) scale(1);
  box-shadow:0 18px 34px rgba(35,44,52,.12),0 34px 72px rgba(35,44,52,.12);
  z-index:4;
}
.intro-scroll.exact-hero .card-3d img{filter:saturate(1.02) contrast(1.02)}
.intro-scroll.exact-hero .phone{
  right:max(4vw,calc((100vw - var(--max))/2));
  top:50%;
  width:auto;
  height:min(74vh,770px);
  max-width:340px;
  transform:translateY(-50%);
  z-index:7;
  filter:drop-shadow(0 16px 32px rgba(53,63,72,.10)) drop-shadow(0 32px 65px rgba(53,63,72,.10));
}
.intro-scroll.exact-hero .tap-route{
  left:34%;
  top:45.8%;
  width:43%;
  height:22%;
  z-index:3;
}
.intro-scroll.exact-hero .tap-route-track{stroke-width:4;opacity:.78}
.intro-scroll.exact-hero .path-step{z-index:4}
.intro-scroll.exact-hero .path-step-icon{width:64px;height:64px;font-size:20px}
.intro-scroll.exact-hero .path-step strong{font-size:14px;line-height:1.1;margin-top:10px}
.intro-scroll.exact-hero .path-step small{font-size:13px;line-height:1.2;max-width:145px;background:linear-gradient(180deg,rgba(244,247,246,.98),rgba(244,247,246,.98));padding:1px 4px;border-radius:6px}
.intro-scroll.exact-hero .step-1{left:37.3%;top:56.6%}
.intro-scroll.exact-hero .step-2{left:49.5%;top:56.6%}
.intro-scroll.exact-hero .step-3{right:max(1.2vw,calc((100vw - var(--max))/2));top:53.5%;transform:translateY(-50%)}
.intro-scroll.exact-hero .nfc-rings{right:calc(max(4vw,calc((100vw - var(--max))/2)) + 332px - 6px);top:41.3%;width:128px;height:128px;z-index:8}
.intro-scroll.exact-hero .hero-actions-fixed{
  left:max(4vw,calc((100vw - var(--max))/2));
  bottom:26px;
  max-width:520px;
  display:flex;
  align-items:flex-start;
  gap:14px;
  row-gap:8px;
  z-index:9;
}
.intro-scroll.exact-hero .hero-note{display:block;flex-basis:100%;margin:0;color:#667178;font-size:14px;line-height:1.35;max-width:250px}
.intro-scroll.exact-hero .hero-step-status{bottom:18px}
.intro-scroll.exact-hero .save-highlight,.intro-scroll.exact-hero .tap-finger{display:none!important}

@media (max-width:1500px){
  .intro-scroll.exact-hero .intro-copy{max-width:35vw}
  .intro-scroll.exact-hero .card-3d{width:min(405px,24.8vw);top:69%}
  .intro-scroll.exact-hero .phone{height:min(72vh,740px);max-width:330px}
}
@media (max-width:1280px){
  .intro-scroll.exact-hero .intro-copy{max-width:36vw;min-width:350px}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(58px,5.1vw,82px)}
  .intro-scroll.exact-hero .card-3d{width:min(360px,25vw);top:69.5%}
  .intro-scroll.exact-hero .phone{height:min(68vh,680px);max-width:305px}
  .intro-scroll.exact-hero .tap-route{left:34%;top:47%;width:40%;height:20%}
  .intro-scroll.exact-hero .step-1{left:36%}.intro-scroll.exact-hero .step-2{left:48%}
}
@media(max-width:930px){
  .intro-scroll.exact-hero{height:570vh}
  .intro-scroll.exact-hero .intro-copy{left:22px;top:13%;max-width:72vw;min-width:0}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(42px,10vw,66px)}
  .intro-scroll.exact-hero .intro-copy .intro-sub{max-width:64vw;font-size:14px}
  .intro-scroll.exact-hero .card-3d{left:3%;top:72%;width:min(230px,38vw);transform:translate3d(0,-50%,0) perspective(900px) rotateY(-12deg) rotate(-5deg)}
  .intro-scroll.exact-hero .phone{right:3%;top:59%;height:auto;width:min(250px,46vw);max-width:none}
  .intro-scroll.exact-hero .tap-route,.intro-scroll.exact-hero .path-steps{display:none}
  .intro-scroll.exact-hero .hero-actions-fixed{left:22px;bottom:24px;max-width:66vw;gap:12px}
  .intro-scroll.exact-hero .hero-note{display:none}
}
@media(max-width:560px){
  .intro-scroll.exact-hero .intro-copy{top:11%;max-width:88vw}
  .intro-scroll.exact-hero .intro-copy .intro-sub{display:none}
  .intro-scroll.exact-hero .card-3d{width:42vw;left:2%;top:74%;transform:translate3d(0,-50%,0) perspective(900px) rotateY(-12deg) rotate(-5deg)}
  .intro-scroll.exact-hero .phone{width:50vw;right:1%;top:61%}
  .intro-scroll.exact-hero .hero-actions-fixed{left:16px;right:16px;bottom:18px;max-width:none;gap:10px}
}


/* ===== V8 exact approved hero geometry ===== */
.intro-scroll.exact-hero{height:540vh;background:linear-gradient(180deg,#edf1f2 0%,#f7f9f8 100%)}
.intro-scroll.exact-hero .intro-sticky{min-height:620px}
.intro-scroll.exact-hero .intro-copy{
  left:max(4.8vw,calc((100vw - var(--max))/2));
  top:22.5%;
  width:54vw;
  max-width:820px;
  min-width:0;
  z-index:9;
}
.intro-scroll.exact-hero .intro-copy h1{
  font-size:clamp(52px,4.25vw,74px);
  line-height:.98;
  letter-spacing:-.05em;
  margin:0;
}
.intro-scroll.exact-hero .headline-main{display:inline-block;white-space:nowrap;color:var(--ink)}
.intro-scroll.exact-hero .headline-accent{display:inline-block;color:var(--green)}
.intro-scroll.exact-hero .intro-copy .intro-sub{max-width:560px;margin-top:24px;font-size:17px;line-height:1.55}

.intro-scroll.exact-hero .card-3d{
  left:max(4.8vw,calc((100vw - var(--max))/2));
  top:70.5%;
  width:min(390px,24vw);
  aspect-ratio:246.75/159;
  transform:translate3d(0,-50%,0) perspective(1100px) rotateY(14deg) rotate(-2.2deg) scale(1);
  transform-origin:center;
  border-radius:17px;
  z-index:4;
  box-shadow:0 18px 28px rgba(44,58,64,.10),0 38px 62px rgba(44,58,64,.14);
  overflow:visible;
  background:transparent;
  border:0;
}
.intro-scroll.exact-hero .card-3d:after{
  content:"";
  position:absolute;
  left:7%;right:5%;bottom:-13%;height:18%;
  border-radius:50%;
  background:rgba(35,45,52,.16);
  filter:blur(20px);
  transform:perspective(500px) rotateX(68deg);
  z-index:-1;
}
.intro-scroll.exact-hero .card-3d img{width:100%;height:100%;object-fit:cover;border-radius:17px;box-shadow:0 8px 20px rgba(44,58,64,.06)}

.intro-scroll.exact-hero .phone{
  right:9vw;
  top:51.5%;
  width:auto;
  height:min(70vh,650px);
  max-width:none;
  transform:translateY(-50%);
  z-index:7;
  filter:drop-shadow(0 18px 32px rgba(44,58,64,.10)) drop-shadow(0 36px 70px rgba(44,58,64,.10));
}

.intro-scroll.exact-hero .tap-route{
  left:29.4%;
  top:48.8%;
  width:48%;
  height:23%;
  z-index:2;
}
.intro-scroll.exact-hero .tap-route-track{stroke-width:3.6;stroke-dasharray:12 10;opacity:.82}
.intro-scroll.exact-hero .path-step{z-index:5;gap:5px}
.intro-scroll.exact-hero .path-step-icon{width:62px;height:62px;font-size:20px;background:rgba(247,249,248,.98)}
.intro-scroll.exact-hero .path-step strong,.intro-scroll.exact-hero .path-step small{background:#f3f6f5;padding:2px 7px;border-radius:7px}
.intro-scroll.exact-hero .path-step strong{font-size:13px;line-height:1.1;margin-top:6px}
.intro-scroll.exact-hero .path-step small{font-size:14px;line-height:1.22;max-width:150px;color:#33414a}
.intro-scroll.exact-hero .step-1{left:37.4%;top:57.2%}
.intro-scroll.exact-hero .step-2{left:49.7%;top:57.2%}
.intro-scroll.exact-hero .step-3{right:1.2vw;top:54%;transform:translateY(-50%)}
.intro-scroll.exact-hero .nfc-rings{right:calc(9vw + min(70vh,650px) * .481 - 5px);top:41.8%;width:122px;height:122px;z-index:8}

.intro-scroll.exact-hero .hero-actions-fixed{
  left:max(4.8vw,calc((100vw - var(--max))/2));
  bottom:38px;
  max-width:600px;
  display:flex;
  align-items:center;
  gap:16px;
  z-index:9;
}
.intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{min-height:50px;padding:0 22px;border-radius:10px;font-size:14px}
.intro-scroll.exact-hero .hero-note{margin:0 0 0 14px;color:#5f6b74;font-size:13px;line-height:1.4;max-width:220px;flex-basis:auto}
.intro-scroll.exact-hero .hero-step-status{bottom:16px}
.intro-scroll.exact-hero .scroll-cue{right:18px;bottom:12px}
.intro-scroll.exact-hero .save-highlight,.intro-scroll.exact-hero .tap-finger,.intro-scroll.exact-hero .profile-name-overlay{display:none!important}

/* Clean demo profile: portrait remains visible, social icons can flow lower */
.demo-profile{position:absolute;inset:0;background:linear-gradient(180deg,#f4f7f7 0%,#edf2f2 100%);color:#26323b;text-align:center;padding:9.5% 9% 6%;overflow:hidden;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.demo-profile-photo{width:82px!important;height:82px!important;border-radius:50%;object-fit:cover!important;object-position:center!important;margin:0 auto 8px;border:4px solid rgba(255,255,255,.95);box-shadow:0 8px 22px rgba(44,58,64,.14)}
.demo-profile h3{font-family:Georgia,"Times New Roman",serif;font-size:21px;margin:0;color:#27323a;font-weight:500}
.demo-role{font-family:Georgia,"Times New Roman",serif;font-size:11px;margin:3px 0 5px;color:#4f5b62}
.demo-tagline{font-family:Georgia,"Times New Roman",serif;font-size:10px;line-height:1.18;margin:0 auto 5px;max-width:92%;color:#3f4b53}
.demo-brand{display:block;font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:18px;margin:3px 0}
.demo-save-btn{border:0;background:rgba(255,255,255,.95);border-radius:7px;padding:5px 12px;font-weight:700;font-size:10px;box-shadow:0 3px 8px rgba(44,58,64,.12);color:#27323a;margin-bottom:8px}
.demo-profile-saving .demo-save-btn{background:#dff3e8;color:#218b5d}
.demo-icon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px 8px;padding:0 2%;align-content:start}
.demo-icon-grid span{height:42px;border-radius:10px;background:#fff;display:grid;place-items:center;font-size:14px;font-weight:700;box-shadow:0 4px 12px rgba(44,58,64,.08)}
.demo-icon-grid .mail{color:#d88624}.demo-icon-grid .mobile{color:#db3e48}.demo-icon-grid .chat{color:#dc8f1f}.demo-icon-grid .call{color:#df3437}.demo-icon-grid .wa{color:#24b86e}.demo-icon-grid .prof{color:#333;font-family:Georgia,serif;font-size:12px}.demo-icon-grid .link{color:#3192c6}.demo-icon-grid .pin{color:#d84745}.demo-icon-grid .insta{color:#d23473}.demo-icon-grid .linkedin{color:#2374aa}.demo-icon-grid .google{color:#b22328;font-family:Georgia,serif}.demo-icon-grid .skype{color:#2772b5}.demo-icon-grid .facebook{color:#315b9f;font-family:Georgia,serif}.demo-icon-grid .zpay{color:#222;font-size:11px}

@media (max-width:1400px){
  .intro-scroll.exact-hero .intro-copy{width:52vw;top:21.5%}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(49px,4.15vw,66px)}
  .intro-scroll.exact-hero .card-3d{width:min(360px,24vw);top:70.5%}
  .intro-scroll.exact-hero .phone{right:7vw;height:min(68vh,610px)}
  .intro-scroll.exact-hero .step-1{left:36.5%}.intro-scroll.exact-hero .step-2{left:49%}
}
@media (max-width:1120px){
  .intro-scroll.exact-hero .headline-main{white-space:normal}
  .intro-scroll.exact-hero .intro-copy{width:48vw;top:17%}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(46px,4.6vw,58px)}
  .intro-scroll.exact-hero .card-3d{width:min(310px,27vw);top:70%}
  .intro-scroll.exact-hero .phone{right:4vw;height:min(64vh,570px)}
  .intro-scroll.exact-hero .tap-route,.intro-scroll.exact-hero .path-steps{display:none}
}
@media(max-width:930px){
  .intro-scroll.exact-hero .intro-copy{left:22px;top:13%;width:72vw;max-width:72vw}
  .intro-scroll.exact-hero .headline-main{white-space:normal}
  .intro-scroll.exact-hero .intro-copy h1{font-size:clamp(42px,10vw,62px)}
  .intro-scroll.exact-hero .intro-copy .intro-sub{font-size:14px;max-width:60vw}
  .intro-scroll.exact-hero .card-3d{left:3%;top:72%;width:min(230px,40vw);transform:translate3d(0,-50%,0) perspective(900px) rotateY(12deg) rotate(-2deg)}
  .intro-scroll.exact-hero .phone{right:3%;top:59%;height:auto;width:min(250px,46vw)}
  .intro-scroll.exact-hero .hero-actions-fixed{left:22px;bottom:22px;max-width:70vw;gap:10px}.intro-scroll.exact-hero .hero-note{display:none}
}
@media(max-width:560px){
  .intro-scroll.exact-hero .intro-copy{top:11%;max-width:88vw;width:88vw}
  .intro-scroll.exact-hero .intro-copy .intro-sub{display:none}
  .intro-scroll.exact-hero .card-3d{width:42vw;left:2%;top:74%}
  .intro-scroll.exact-hero .phone{width:50vw;right:1%;top:61%}
  .intro-scroll.exact-hero .hero-actions-fixed{left:16px;right:16px;bottom:16px;max-width:none}
  .demo-profile{padding-top:10%}.demo-profile-photo{width:62px!important;height:62px!important}.demo-profile h3{font-size:16px}.demo-tagline{font-size:8px}.demo-icon-grid{gap:4px}.demo-icon-grid span{height:31px;font-size:11px}
}


/* ===== V9 button/profile polish ===== */
.intro-scroll.exact-hero .hero-actions-fixed{
  top:calc(70.5% + min(126px,7.75vw) + 22px);
  bottom:auto;
  left:max(4.8vw,calc((100vw - var(--max))/2));
  max-width:520px;
  display:grid;
  grid-template-columns:auto auto;
  grid-template-areas:"primary secondary" "note note";
  align-items:center;
  justify-content:start;
  column-gap:10px;
  row-gap:8px;
  z-index:9;
}
.intro-scroll.exact-hero .hero-actions-fixed .primary-btn{grid-area:primary}
.intro-scroll.exact-hero .hero-actions-fixed .secondary-btn{grid-area:secondary}
.intro-scroll.exact-hero .hero-actions-fixed .hero-note{grid-area:note;margin:0 0 0 2px;max-width:250px}
.intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{
  min-height:44px;
  padding:0 17px;
  border-radius:10px;
  font-size:13px;
}
.demo-profile-photo{width:88px!important;height:88px!important;object-fit:cover!important;object-position:center 32%!important}

@media(max-width:1400px){
  .intro-scroll.exact-hero .hero-actions-fixed{top:calc(70.5% + min(116px,7.75vw) + 20px)}
}
@media(max-width:1120px){
  .intro-scroll.exact-hero .hero-actions-fixed{top:calc(70% + min(100px,8.7vw) + 18px)}
}
@media(max-width:930px){
  .intro-scroll.exact-hero .hero-actions-fixed{
    top:auto;
    bottom:18px;
    left:18px;
    max-width:70vw;
    grid-template-columns:auto auto;
  }
  .intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{min-height:42px;padding:0 14px;font-size:12px}
}
@media(max-width:560px){
  .intro-scroll.exact-hero .hero-actions-fixed{left:14px;right:14px;max-width:none;bottom:14px}
  .demo-profile-photo{width:66px!important;height:66px!important}
}


/* ===== V10 mobile swipe + portrait circle fix ===== */
.demo-profile-photo-wrap{
  width:88px;
  height:88px;
  min-width:88px;
  min-height:88px;
  aspect-ratio:1/1;
  margin:0 auto 8px;
  border-radius:50%;
  overflow:hidden;
  clip-path:circle(50% at 50% 50%);
  background:#eef2f2;
  border:4px solid rgba(255,255,255,.98);
  box-shadow:0 8px 22px rgba(44,58,64,.14);
}
.demo-profile-photo-wrap .demo-profile-photo{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  max-width:none!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  object-fit:cover!important;
  object-position:50% 32%!important;
}

@media(max-width:930px){
  .intro-scroll.exact-hero{height:590vh!important}
  .intro-scroll.exact-hero .intro-sticky{height:100svh;min-height:100svh}
  .demo-profile-photo-wrap{width:72px;height:72px;min-width:72px;min-height:72px}
}
@media(max-width:560px){
  .intro-scroll.exact-hero{height:620vh!important}
  .demo-profile-photo-wrap{width:66px;height:66px;min-width:66px;min-height:66px;margin-bottom:6px}
}


/* ===== V11 responsive typography + mobile overlap fix ===== */
/* Calmer typography across the full site */
.intro-scroll.exact-hero .intro-copy h1{
  font-size:clamp(46px,3.8vw,66px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}
.section-head h2,.business h2,.media-section h2,.cta h2{
  font-size:clamp(34px,3.6vw,54px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
}
.intro-scroll.exact-hero .intro-copy .intro-sub{font-size:16px!important;line-height:1.55!important;max-width:540px!important}

/* Portrait phones: reserve separate zones for copy and phone */
@media (max-width:930px) and (orientation:portrait){
  .intro-scroll.exact-hero .intro-copy{
    left:20px!important;
    top:11.5%!important;
    width:58vw!important;
    max-width:58vw!important;
    min-width:0!important;
  }
  .intro-scroll.exact-hero .intro-copy h1{
    font-size:clamp(34px,9.2vw,48px)!important;
    line-height:.96!important;
  }
  .intro-scroll.exact-hero .headline-main{white-space:normal!important}
  .intro-scroll.exact-hero .intro-copy .intro-sub{
    display:block!important;
    max-width:54vw!important;
    font-size:13px!important;
    line-height:1.45!important;
    margin-top:14px!important;
  }
  .intro-scroll.exact-hero .phone{
    width:44vw!important;
    right:-1vw!important;
    top:61.5%!important;
    height:auto!important;
    max-height:70svh!important;
  }
  .intro-scroll.exact-hero .card-3d{
    width:39vw!important;
    left:2.2vw!important;
    top:73.5%!important;
  }
  .intro-scroll.exact-hero .hero-actions-fixed{
    left:14px!important;
    right:14px!important;
    bottom:14px!important;
    top:auto!important;
    max-width:none!important;
  }
  .intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{
    min-height:40px!important;
    padding:0 13px!important;
    font-size:11px!important;
  }
  .demo-profile{padding:8.5% 8% 5%!important}
  .demo-profile-photo-wrap{width:62px!important;height:62px!important;min-width:62px!important;min-height:62px!important;margin-bottom:5px!important}
  .demo-profile h3{font-size:15px!important;line-height:1.05!important}
  .demo-role{font-size:9px!important;margin:2px 0 4px!important}
  .demo-tagline{font-size:7.5px!important;line-height:1.12!important;margin-bottom:3px!important}
  .demo-brand{font-size:15px!important;margin:2px 0!important}
  .demo-save-btn{font-size:8px!important;padding:4px 9px!important;margin-bottom:5px!important}
  .demo-icon-grid{gap:4px 5px!important}
  .demo-icon-grid span{height:28px!important;font-size:10px!important;border-radius:8px!important}
  .section{padding:68px 20px!important}
  .section-head h2,.business h2,.media-section h2,.cta h2{font-size:clamp(30px,8vw,42px)!important}
}

/* Mobile landscape: width is large, so target by coarse pointer + short height */
@media (hover:none) and (pointer:coarse) and (orientation:landscape),
       (max-height:680px) and (orientation:landscape){
  .site-header{height:58px!important;padding:0 22px!important}
  .brand img{width:100px!important}
  .intro-scroll.exact-hero .intro-sticky{min-height:100svh!important;height:100svh!important}
  .intro-scroll.exact-hero .intro-copy{
    left:5vw!important;
    top:14%!important;
    width:48vw!important;
    max-width:48vw!important;
    min-width:0!important;
  }
  .intro-scroll.exact-hero .intro-copy h1{
    font-size:clamp(34px,5.1vw,54px)!important;
    line-height:.94!important;
  }
  .intro-scroll.exact-hero .headline-main{white-space:normal!important}
  .intro-scroll.exact-hero .intro-copy .intro-sub{
    max-width:43vw!important;
    font-size:12px!important;
    line-height:1.4!important;
    margin-top:12px!important;
  }
  .intro-scroll.exact-hero .phone{
    right:8vw!important;
    top:52%!important;
    width:auto!important;
    height:min(76svh,540px)!important;
    max-width:none!important;
  }
  .intro-scroll.exact-hero .card-3d{
    left:5vw!important;
    top:72%!important;
    width:min(285px,25vw)!important;
  }
  .intro-scroll.exact-hero .tap-route,.intro-scroll.exact-hero .path-steps{display:none!important}
  .intro-scroll.exact-hero .hero-actions-fixed{
    left:5vw!important;
    bottom:12px!important;
    top:auto!important;
    max-width:44vw!important;
  }
  .intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{
    min-height:38px!important;
    padding:0 13px!important;
    font-size:10px!important;
  }
  .intro-scroll.exact-hero .hero-note{display:none!important}
  .intro-scroll.exact-hero .hero-step-status{display:none!important}
  .demo-profile{padding:7.5% 8% 4%!important}
  .demo-profile-photo-wrap{width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;margin-bottom:4px!important}
  .demo-profile h3{font-size:14px!important}.demo-role{font-size:8px!important}.demo-tagline{font-size:7px!important}.demo-brand{font-size:14px!important}
  .demo-save-btn{font-size:7.5px!important;padding:3px 8px!important;margin-bottom:4px!important}
  .demo-icon-grid{gap:3px 4px!important}.demo-icon-grid span{height:25px!important;font-size:9px!important}
}

/* Very narrow screens */
@media(max-width:390px) and (orientation:portrait){
  .intro-scroll.exact-hero .intro-copy{width:61vw!important;max-width:61vw!important}
  .intro-scroll.exact-hero .intro-copy h1{font-size:33px!important}
  .intro-scroll.exact-hero .phone{width:43vw!important;right:-2vw!important}
  .intro-scroll.exact-hero .card-3d{width:38vw!important}
}


/* ===== V12 portrait buttons + landscape overlap fix ===== */
@media (max-width:930px) and (orientation:portrait){
  .intro-scroll.exact-hero .intro-copy{
    top:10.8%!important;
    width:57vw!important;
    max-width:57vw!important;
  }
  .intro-scroll.exact-hero .intro-copy h1{
    font-size:clamp(31px,8.2vw,43px)!important;
    line-height:.97!important;
    letter-spacing:-.04em!important;
  }
  .intro-scroll.exact-hero .intro-copy .intro-sub{
    max-width:52vw!important;
    font-size:12.5px!important;
    line-height:1.42!important;
    margin-top:13px!important;
  }
  .intro-scroll.exact-hero .card-3d{
    width:38vw!important;
    left:2.2vw!important;
    top:69.5%!important;
  }
  .intro-scroll.exact-hero .phone{
    width:43vw!important;
    right:-.5vw!important;
    top:59.5%!important;
    max-height:67svh!important;
  }
  .intro-scroll.exact-hero .hero-actions-fixed{
    left:14px!important;
    right:auto!important;
    bottom:70px!important;
    top:auto!important;
    max-width:62vw!important;
    display:grid!important;
    grid-template-columns:max-content max-content!important;
    gap:8px!important;
  }
  .intro-scroll.exact-hero .hero-actions-fixed .hero-note{display:none!important}
  .intro-scroll.exact-hero .primary-btn,
  .intro-scroll.exact-hero .secondary-btn{
    min-height:38px!important;
    padding:0 12px!important;
    font-size:10.5px!important;
    border-radius:9px!important;
  }
  .intro-scroll.exact-hero .hero-step-status{
    display:flex!important;
    bottom:14px!important;
    left:50%!important;
    transform:translateX(-50%) scale(.88)!important;
    z-index:8!important;
  }
  .intro-scroll.exact-hero .hero-step-status p{display:none!important}
  .intro-scroll.exact-hero .scroll-cue{display:none!important}
}

@media (hover:none) and (pointer:coarse) and (orientation:landscape),
       (max-height:680px) and (orientation:landscape){
  .intro-scroll.exact-hero .intro-copy{
    left:4.5vw!important;
    top:13%!important;
    width:41vw!important;
    max-width:41vw!important;
  }
  .intro-scroll.exact-hero .intro-copy h1{
    font-size:clamp(29px,4vw,40px)!important;
    line-height:.98!important;
    letter-spacing:-.038em!important;
  }
  .intro-scroll.exact-hero .intro-copy .intro-sub{
    max-width:38vw!important;
    font-size:10.5px!important;
    line-height:1.36!important;
    margin-top:8px!important;
  }
  .intro-scroll.exact-hero .card-3d{
    left:4.5vw!important;
    top:71.5%!important;
    width:min(230px,21vw)!important;
  }
  .intro-scroll.exact-hero .phone{
    right:10vw!important;
    top:52%!important;
    height:min(70svh,480px)!important;
  }
  .intro-scroll.exact-hero .hero-actions-fixed{
    left:4.5vw!important;
    bottom:8px!important;
    max-width:38vw!important;
    display:grid!important;
    grid-template-columns:max-content max-content!important;
    gap:7px!important;
  }
  .intro-scroll.exact-hero .primary-btn,
  .intro-scroll.exact-hero .secondary-btn{
    min-height:34px!important;
    padding:0 11px!important;
    font-size:9.5px!important;
    border-radius:8px!important;
  }
  .intro-scroll.exact-hero .hero-step-status{display:none!important}
}

@media(max-width:390px) and (orientation:portrait){
  .intro-scroll.exact-hero .intro-copy h1{font-size:30px!important}
  .intro-scroll.exact-hero .hero-actions-fixed{bottom:64px!important;max-width:68vw!important}
  .intro-scroll.exact-hero .primary-btn,.intro-scroll.exact-hero .secondary-btn{font-size:10px!important;padding:0 10px!important}
}


/* ===== V13 Singapore B4PRINT opening division ===== */
.b4print-intro{
  position:relative;
  min-height:100svh;
  padding:126px max(34px,calc((100vw - var(--max))/2)) 88px;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 17%,rgba(15,55,100,.065),transparent 28%),
    radial-gradient(circle at 8% 85%,rgba(168,15,45,.04),transparent 25%),
    linear-gradient(180deg,#fbfcfc 0%,#f3f6f7 100%);
  color:#16212c;
}
.b4print-intro:before{
  content:"";
  position:absolute;
  inset:auto -8% -28% 34%;
  height:58%;
  background-image:linear-gradient(rgba(15,55,100,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,55,100,.035) 1px,transparent 1px);
  background-size:42px 42px;
  transform:perspective(620px) rotateX(62deg) scale(1.15);
  mask-image:linear-gradient(to top,black,transparent 86%);
  pointer-events:none;
}
.b4print-shell{position:relative;z-index:2;max-width:var(--max);margin:0 auto}
.b4print-heading{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(470px,1.28fr);column-gap:66px;align-items:end;margin-bottom:34px}
.b4print-wordmark{font-weight:950;font-size:clamp(46px,5vw,76px);line-height:.78;letter-spacing:-.08em;white-space:nowrap;align-self:start}
.b4-blue{color:#103967}.b4-red{color:#a40f2f;display:inline-block;transform:translateY(-.07em) rotate(-5deg);margin:0 .02em}
.b4-kicker{grid-column:1;margin:18px 0 0;color:#a40f2f;font-size:11px;font-weight:900;letter-spacing:.18em}
.b4print-heading .b4print-main-title{grid-column:2;grid-row:1 / span 2;margin:0;font-size:clamp(42px,4.3vw,66px);line-height:.96;letter-spacing:-.05em;color:#12345d;font-weight:850}
.b4print-heading .b4print-main-title span{color:#9f1732}
.b4-lead{grid-column:2;margin:20px 0 0;max-width:710px;color:#5b6872;font-size:16px;line-height:1.62}
.b4print-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:34px}
.b4-service-card{position:relative;min-height:164px;padding:24px 24px 22px;border:1px solid rgba(16,57,103,.12);border-radius:18px;background:rgba(255,255,255,.8);box-shadow:0 10px 30px rgba(27,44,60,.045);backdrop-filter:blur(6px);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.b4-service-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(27,44,60,.075);border-color:rgba(16,57,103,.22)}
.b4-service-no{display:block;margin-bottom:22px;color:#a40f2f;font-size:10px;font-weight:900;letter-spacing:.14em}
.b4-service-card h2{margin:0 0 9px;font-size:18px;letter-spacing:-.015em;color:#12345d}
.b4-service-card p{margin:0;color:#69757d;font-size:13.5px;line-height:1.52}
.b4-smart-card{background:linear-gradient(145deg,rgba(16,57,103,.96),rgba(20,66,112,.94));border-color:transparent}
.b4-smart-card .b4-service-no{color:#f6bdc8}.b4-smart-card h2{color:#fff}.b4-smart-card p{color:#d8e3ec}
.b4print-bottom{display:grid;grid-template-columns:1fr auto;gap:20px 34px;align-items:center;margin-top:24px;padding-top:22px;border-top:1px solid rgba(16,57,103,.11)}
.b4-benefits{display:flex;gap:10px;flex-wrap:wrap}.b4-benefits span{padding:9px 12px;border-radius:999px;background:#fff;border:1px solid #dce4e8;color:#394d5c;font-size:11px;font-weight:800}
.b4-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.b4-actions a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 17px;border-radius:11px;font-size:12px;font-weight:850;transition:.2s}
.b4-primary{background:#103967;color:#fff;box-shadow:0 10px 24px rgba(16,57,103,.14)}.b4-primary:hover{transform:translateY(-1px);background:#0b315d}
.b4-secondary{background:#fff;color:#103967;border:1px solid #cfd9df}.b4-secondary:hover{background:#f8fafb}
.b4-ztag-link{background:rgba(43,174,114,.1);color:#208558;border:1px solid rgba(43,174,114,.22)}.b4-ztag-link:hover{background:rgba(43,174,114,.16)}
.b4-contact-line{grid-column:1 / -1;margin:0;color:#78848a;font-size:12px;display:flex;gap:9px;align-items:center}.b4-contact-line strong{color:#243947}
.b4-scroll-hint{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;color:#718087;font-size:10px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;z-index:3}
.b4-scroll-hint span{width:22px;height:34px;border:1px solid #9ba8ad;border-radius:999px;position:relative}.b4-scroll-hint span:after{content:"";position:absolute;width:3px;height:6px;border-radius:5px;background:#a40f2f;top:6px;left:50%;transform:translateX(-50%);animation:b4scroll 1.6s ease-in-out infinite}
@keyframes b4scroll{0%,100%{transform:translate(-50%,0);opacity:.35}50%{transform:translate(-50%,9px);opacity:1}}

@media(max-width:980px){
  .b4print-intro{padding:104px 22px 76px;min-height:auto}
  .b4print-heading{grid-template-columns:1fr;gap:0;margin-bottom:26px}
  .b4print-wordmark{font-size:54px}
  .b4-kicker{grid-column:1;margin-top:14px}
  .b4print-heading .b4print-main-title{grid-column:1;grid-row:auto;margin-top:28px;font-size:46px;max-width:700px}
  .b4-lead{grid-column:1;margin-top:16px;max-width:680px;font-size:15px}
  .b4print-service-grid{grid-template-columns:repeat(2,1fr);gap:11px;margin-top:26px}
  .b4-service-card{min-height:148px;padding:20px}
  .b4print-bottom{grid-template-columns:1fr;margin-top:20px}
  .b4-actions{justify-content:flex-start}
  .b4-scroll-hint{display:none}
}

@media(max-width:560px){
  .b4print-intro{padding:92px 16px 48px;background:linear-gradient(180deg,#fafcfc,#f2f5f6)}
  .b4print-wordmark{font-size:44px}
  .b4-kicker{font-size:9px;letter-spacing:.15em}
  .b4print-heading .b4print-main-title{font-size:34px;line-height:1.02;letter-spacing:-.04em;margin-top:22px}
  .b4-lead{font-size:13.5px;line-height:1.5}
  .b4print-service-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}
  .b4-service-card{min-height:142px;padding:16px 14px;border-radius:14px}
  .b4-service-no{margin-bottom:17px;font-size:9px}
  .b4-service-card h2{font-size:14px;line-height:1.15}
  .b4-service-card p{font-size:11.2px;line-height:1.42}
  .b4-benefits{gap:7px}.b4-benefits span{font-size:9.5px;padding:7px 9px}
  .b4-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .b4-actions a{min-height:42px;padding:0 10px;font-size:10.5px;text-align:center}
  .b4-ztag-link{grid-column:1 / -1}
  .b4-contact-line{font-size:10.5px;flex-wrap:wrap}
}

@media (orientation:landscape) and (max-height:700px){
  .b4print-intro{padding-top:82px;padding-bottom:40px;min-height:auto}
  .b4print-heading{grid-template-columns:.62fr 1.38fr;column-gap:40px;margin-bottom:18px}
  .b4print-wordmark{font-size:38px}.b4-kicker{font-size:8px;margin-top:10px}
  .b4print-heading .b4print-main-title{grid-column:2;grid-row:1 / span 2;font-size:31px}.b4-lead{grid-column:2;font-size:11px;margin-top:10px;line-height:1.4}
  .b4print-service-grid{grid-template-columns:repeat(6,1fr);gap:7px;margin-top:18px}
  .b4-service-card{min-height:115px;padding:12px 10px;border-radius:12px}.b4-service-no{margin-bottom:10px;font-size:8px}.b4-service-card h2{font-size:11px}.b4-service-card p{font-size:8.5px;line-height:1.32}
  .b4print-bottom{margin-top:14px;padding-top:12px;grid-template-columns:1fr auto}.b4-benefits span{padding:6px 8px;font-size:8px}.b4-actions a{min-height:34px;padding:0 10px;font-size:9px}.b4-contact-line{font-size:8.5px}
}

/* ===== V14 B4PRINT scroll-highlight + service detail popups ===== */
.b4print-intro{
  height:310svh!important;
  min-height:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.b4print-intro:before{display:none!important}
.b4print-sticky{
  position:sticky;
  top:0;
  height:100svh;
  min-height:660px;
  padding:126px max(34px,calc((100vw - var(--max))/2)) 72px;
  overflow:hidden;
  background:
    radial-gradient(circle at 92% 17%,rgba(15,55,100,.065),transparent 28%),
    radial-gradient(circle at 8% 85%,rgba(168,15,45,.04),transparent 25%),
    linear-gradient(180deg,#fbfcfc 0%,#f3f6f7 100%);
  color:#16212c;
}
.b4print-sticky:before{
  content:"";
  position:absolute;
  inset:auto -8% -28% 34%;
  height:58%;
  background-image:linear-gradient(rgba(15,55,100,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,55,100,.035) 1px,transparent 1px);
  background-size:42px 42px;
  transform:perspective(620px) rotateX(62deg) scale(1.15);
  mask-image:linear-gradient(to top,black,transparent 86%);
  pointer-events:none;
}
.b4print-sticky .b4print-shell{position:relative;z-index:2;max-width:var(--max);margin:0 auto}
.b4-service-card{
  appearance:none;
  width:100%;
  text-align:left;
  color:inherit;
  cursor:pointer;
  opacity:.5;
  transform:translateY(0) scale(.985);
  filter:saturate(.82);
  transition:opacity .22s ease,transform .22s ease,box-shadow .22s ease,border-color .22s ease,filter .22s ease,background .22s ease;
}
.b4-service-card.is-passed{opacity:.68;filter:saturate(.92)}
.b4-service-card.is-active{
  opacity:1;
  filter:none;
  transform:translateY(-5px) scale(1.025);
  border-color:rgba(164,15,47,.42);
  box-shadow:0 18px 42px rgba(19,44,68,.13),0 0 0 2px rgba(164,15,47,.055);
  z-index:2;
}
.b4-smart-card.is-active{
  border-color:rgba(255,255,255,.25);
  box-shadow:0 19px 44px rgba(16,57,103,.25),0 0 0 2px rgba(164,15,47,.14);
}
.b4-service-card:focus-visible{outline:3px solid rgba(164,15,47,.28);outline-offset:3px}
@media(hover:hover) and (pointer:fine){
  .b4-service-card:hover{opacity:1;transform:translateY(-4px) scale(1.015)}
}
.b4-service-progress{
  display:grid;
  grid-template-columns:auto minmax(120px,1fr) auto auto;
  align-items:center;
  gap:10px 13px;
  margin:18px 0 0;
  color:#6f7d84;
  font-size:10px;
  font-weight:800;
  letter-spacing:.04em;
}
.b4-progress-track{height:3px;border-radius:999px;background:rgba(16,57,103,.11);overflow:hidden}
.b4-progress-track i{display:block;width:16.666%;height:100%;border-radius:inherit;background:#a40f2f;transition:width .18s ease}
.b4-service-progress strong{color:#103967;font-size:11px;white-space:nowrap}
.b4-click-hint{color:#8a5e69;white-space:nowrap}

.b4-service-modal{
  width:min(92vw,720px);
  max-height:min(88svh,760px);
  border:0;
  border-radius:24px;
  padding:30px;
  background:#fff;
  color:#17212b;
  box-shadow:0 42px 110px rgba(9,24,38,.3);
  overflow:auto;
}
.b4-service-modal::backdrop{background:rgba(16,29,40,.66);backdrop-filter:blur(7px)}
.b4-modal-close{
  position:absolute;
  top:16px;
  right:16px;
  width:42px;
  height:42px;
  border:1px solid #dce3e7;
  border-radius:50%;
  background:#fff;
  color:#12345d;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
.b4-modal-head{display:flex;gap:17px;align-items:flex-start;padding-right:48px}
.b4-modal-number{display:flex;align-items:center;justify-content:center;flex:0 0 48px;height:48px;border-radius:14px;background:#f7ebee;color:#a40f2f;font-size:12px;font-weight:950;letter-spacing:.12em}
.b4-modal-kicker{margin:2px 0 7px;color:#a40f2f;font-size:9px;font-weight:950;letter-spacing:.16em}
.b4-service-modal h2{margin:0;color:#12345d;font-size:clamp(27px,4vw,38px);line-height:1;letter-spacing:-.035em}
.b4-modal-intro{margin:22px 0 0;color:#5d6b74;font-size:15px;line-height:1.65}
.b4-modal-content{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:23px}
.b4-modal-content>div{padding:20px;border:1px solid #e0e6e9;border-radius:16px;background:#f8fafb}
.b4-modal-content h3{margin:0 0 13px;color:#243a4b;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.b4-modal-content ul{margin:0;padding-left:19px;color:#53636e;font-size:13.5px;line-height:1.75}
.b4-modal-best p{margin:0;color:#53636e;font-size:13.5px;line-height:1.65}
.b4-modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;padding-top:20px;border-top:1px solid #e1e7ea}
.b4-modal-actions a{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 17px;border-radius:11px;font-size:12px;font-weight:850}

@media(max-width:980px){
  .b4print-intro{height:300svh!important}
  .b4print-sticky{min-height:620px;padding:96px 22px 52px}
  .b4print-sticky .b4print-heading{margin-bottom:20px}
  .b4print-sticky .b4print-heading .b4print-main-title{margin-top:18px;font-size:38px}
  .b4print-sticky .b4-lead{margin-top:12px;font-size:13.5px}
  .b4print-sticky .b4print-service-grid{margin-top:18px;gap:9px}
  .b4print-sticky .b4-service-card{min-height:118px;padding:16px}
  .b4print-sticky .b4-service-no{margin-bottom:13px}
  .b4print-sticky .b4print-bottom{margin-top:15px;padding-top:14px}
}

@media(max-width:560px){
  .b4print-intro{height:285svh!important}
  .b4print-sticky{height:100svh;min-height:600px;padding:84px 14px 24px}
  .b4print-sticky .b4print-wordmark{font-size:38px}
  .b4print-sticky .b4-kicker{margin-top:10px;font-size:8px}
  .b4print-sticky .b4print-heading{margin-bottom:0}
  .b4print-sticky .b4print-heading .b4print-main-title{margin-top:14px;font-size:27px;line-height:1.02}
  .b4print-sticky .b4-lead{margin-top:9px;font-size:11.5px;line-height:1.42;max-width:94%}
  .b4print-sticky .b4print-service-grid{grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}
  .b4print-sticky .b4-service-card{min-height:88px;padding:10px 11px;border-radius:12px}
  .b4print-sticky .b4-service-no{margin-bottom:7px;font-size:7.5px}
  .b4print-sticky .b4-service-card h2{margin-bottom:4px;font-size:11.5px}
  .b4print-sticky .b4-service-card p{font-size:8.8px;line-height:1.28}
  .b4-service-progress{grid-template-columns:auto 1fr auto;margin-top:9px;gap:7px;font-size:8px}
  .b4-click-hint{display:none}
  .b4-service-progress strong{font-size:8.5px}
  .b4print-sticky .b4print-bottom{margin-top:9px;padding-top:9px;gap:8px}
  .b4print-sticky .b4-benefits{gap:5px}.b4print-sticky .b4-benefits span{padding:5px 7px;font-size:7.8px}
  .b4print-sticky .b4-actions{grid-template-columns:1fr 1fr;gap:6px}
  .b4print-sticky .b4-actions a{min-height:34px;padding:0 7px;font-size:8.5px;border-radius:8px}
  .b4print-sticky .b4-contact-line{font-size:8.5px;gap:6px}
  .b4-service-modal{width:94vw;max-height:86svh;padding:22px 17px 18px;border-radius:19px}
  .b4-modal-close{top:11px;right:11px;width:38px;height:38px}
  .b4-modal-head{gap:11px;padding-right:38px}.b4-modal-number{flex-basis:41px;height:41px;border-radius:11px}
  .b4-service-modal h2{font-size:25px}.b4-modal-intro{margin-top:16px;font-size:13px;line-height:1.5}
  .b4-modal-content{grid-template-columns:1fr;gap:10px;margin-top:16px}.b4-modal-content>div{padding:15px}
  .b4-modal-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;padding-top:15px}.b4-modal-actions a{padding:0 8px;font-size:10px}
}

@media (orientation:landscape) and (max-height:700px){
  .b4print-intro{height:290svh!important}
  .b4print-sticky{min-height:0;height:100svh;padding:72px 24px 18px}
  .b4print-sticky .b4print-heading{margin-bottom:8px;column-gap:32px}
  .b4print-sticky .b4print-wordmark{font-size:32px}.b4print-sticky .b4-kicker{font-size:7px;margin-top:7px}
  .b4print-sticky .b4print-heading .b4print-main-title{font-size:26px}.b4print-sticky .b4-lead{font-size:9px;margin-top:6px}
  .b4print-sticky .b4print-service-grid{grid-template-columns:repeat(6,1fr);gap:6px;margin-top:9px}
  .b4print-sticky .b4-service-card{min-height:91px;padding:9px 8px}.b4print-sticky .b4-service-no{margin-bottom:6px;font-size:7px}.b4print-sticky .b4-service-card h2{font-size:9.5px}.b4print-sticky .b4-service-card p{font-size:7.3px;line-height:1.25}
  .b4-service-progress{margin-top:7px;font-size:7px;gap:7px}.b4-service-progress strong{font-size:7.5px}
  .b4print-sticky .b4print-bottom{margin-top:7px;padding-top:7px;gap:7px}.b4print-sticky .b4-benefits span{padding:4px 6px;font-size:6.7px}.b4print-sticky .b4-actions a{min-height:28px;padding:0 7px;font-size:7.5px}.b4print-sticky .b4-contact-line{font-size:7px}
  .b4-scroll-hint{display:none}
}

@media(prefers-reduced-motion:reduce){
  .b4-service-card,.b4-progress-track i{transition:none!important}
}
.b4-service-modal[open]{animation:b4ModalPop .18s cubic-bezier(.2,.8,.25,1)}
@keyframes b4ModalPop{from{opacity:0;transform:translateY(10px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.b4-service-modal[open]{animation:none!important}}


/* ===== V15 Singapore B4PRINT imagery enhancement ===== */
.b4-service-card{
  min-height:250px;
  padding:16px 16px 18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  background:rgba(255,255,255,.92);
}
.b4-smart-card,
.b4-smart-card.is-active{
  background:rgba(255,255,255,.96);
}
.b4-smart-card .b4-service-no{color:#a40f2f}
.b4-smart-card h2{color:#12345d}
.b4-smart-card p{color:#69757d}
.b4-service-no{margin-bottom:2px}
.b4-card-thumb{
  display:block;
  width:100%;
  aspect-ratio:1.2/1;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 10px 26px rgba(18,52,93,.08);
  border:1px solid rgba(16,57,103,.08);
  background:#fff;
}
.b4-card-thumb img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.02)}
.b4-service-card h2{margin:2px 0 4px;font-size:17px;line-height:1.08}
.b4-service-card p{
  font-size:13px;
  line-height:1.45;
  color:#627079;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
.b4-service-card.is-active .b4-card-thumb{box-shadow:0 16px 34px rgba(18,52,93,.14)}

.b4-modal-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.b4-gallery-item{display:flex;flex-direction:column;gap:9px;padding:0}
.b4-gallery-shot{
  aspect-ratio:1.08/1;
  border-radius:14px;
  background-size:200% 200%;
  background-repeat:no-repeat;
  background-color:#fff;
  box-shadow:0 8px 20px rgba(18,52,93,.08);
  border:1px solid rgba(16,57,103,.08);
}
.b4-gallery-copy strong{display:block;margin:0 0 4px;color:#12345d;font-size:13px;line-height:1.2}
.b4-gallery-copy p{margin:0;color:#5f6d76;font-size:12px;line-height:1.45}
.b4-modal-notes{margin-top:18px;padding-top:18px;border-top:1px solid #e0e6e9}
.b4-modal-best ul{margin:0;padding-left:19px;color:#53636e;font-size:13.5px;line-height:1.72}

@media(max-width:980px){
  .b4print-intro{height:330svh!important}
  .b4print-sticky .b4-service-card{min-height:205px;padding:14px 14px 16px}
  .b4print-sticky .b4-card-thumb{border-radius:12px}
}

@media(max-width:560px){
  .b4print-intro{height:350svh!important}
  .b4print-sticky{min-height:630px}
  .b4print-sticky .b4print-service-grid{gap:8px;margin-top:13px}
  .b4print-sticky .b4-service-card{min-height:157px;padding:10px 10px 11px;gap:6px}
  .b4print-sticky .b4-service-no{margin-bottom:0;font-size:7.2px}
  .b4print-sticky .b4-card-thumb{aspect-ratio:1.25/1;border-radius:10px}
  .b4print-sticky .b4-service-card h2{font-size:10.8px;margin:0}
  .b4print-sticky .b4-service-card p{font-size:8.2px;line-height:1.25;-webkit-line-clamp:2}
  .b4-modal-gallery{grid-template-columns:1fr;gap:10px}
  .b4-gallery-item{gap:7px}
  .b4-gallery-shot{aspect-ratio:1.2/1}
  .b4-gallery-copy strong{font-size:12.5px}
  .b4-gallery-copy p{font-size:11px}
}

@media (orientation:landscape) and (max-height:700px){
  .b4print-intro{height:305svh!important}
  .b4print-sticky .b4print-service-grid{gap:6px}
  .b4print-sticky .b4-service-card{min-height:135px;padding:8px 8px 9px;gap:5px}
  .b4print-sticky .b4-card-thumb{aspect-ratio:1.24/1;border-radius:8px}
  .b4print-sticky .b4-service-no{font-size:6.8px}
  .b4print-sticky .b4-service-card h2{font-size:8.8px;line-height:1.08;margin:0}
  .b4print-sticky .b4-service-card p{font-size:6.8px;line-height:1.18;-webkit-line-clamp:2}
}


/* ===== V16: keep V14 first-screen geometry; thumbnails stay compact ===== */
/* Desktop: restore V14 card sizing/spacing exactly */
.b4print-intro{height:310svh!important}
.b4-service-card{
  position:relative;
  display:block;
  min-height:164px;
  padding:24px 92px 22px 24px;
  gap:0;
  background:rgba(255,255,255,.8);
}
.b4-service-no{margin-bottom:22px}
.b4-service-card h2{margin:0 0 9px;font-size:18px;line-height:normal}
.b4-service-card p{
  margin:0;
  color:#69757d;
  font-size:13.5px;
  line-height:1.52;
  display:block;
  overflow:visible;
}
.b4-card-thumb{
  position:absolute;
  top:18px;
  right:18px;
  width:62px;
  height:62px;
  aspect-ratio:auto;
  border-radius:11px;
  overflow:hidden;
  border:1px solid rgba(16,57,103,.10);
  background:#fff;
  box-shadow:0 8px 20px rgba(18,52,93,.09);
}
.b4-card-thumb img{width:100%;height:100%;object-fit:cover;transform:none}
.b4-smart-card{background:linear-gradient(145deg,rgba(16,57,103,.96),rgba(20,66,112,.94));border-color:transparent}
.b4-smart-card.is-active{background:linear-gradient(145deg,rgba(16,57,103,.96),rgba(20,66,112,.94))}
.b4-smart-card .b4-service-no{color:#f6bdc8}
.b4-smart-card h2{color:#fff}
.b4-smart-card p{color:#d8e3ec}
.b4-smart-card .b4-card-thumb{border-color:rgba(255,255,255,.18);box-shadow:0 8px 20px rgba(0,0,0,.16)}

/* Popup keeps the richer V15 product imagery */
.b4-modal-gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.b4-gallery-item{display:flex;flex-direction:column;gap:9px}
.b4-gallery-shot{aspect-ratio:1.08/1;border-radius:14px;background-size:200% 200%;background-repeat:no-repeat;background-color:#fff;box-shadow:0 8px 20px rgba(18,52,93,.08);border:1px solid rgba(16,57,103,.08)}

@media(max-width:980px){
  .b4print-intro{height:300svh!important}
  .b4print-sticky .b4-service-card{min-height:118px;padding:16px 72px 16px 16px}
  .b4print-sticky .b4-service-no{margin-bottom:13px}
  .b4-card-thumb{top:13px;right:13px;width:48px;height:48px;border-radius:9px}
}

@media(max-width:560px){
  .b4print-intro{height:285svh!important}
  .b4print-sticky{height:100svh;min-height:600px;padding:84px 14px 24px}
  .b4print-sticky .b4print-service-grid{grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}
  .b4print-sticky .b4-service-card{
    min-height:88px;
    padding:10px 49px 10px 11px;
    border-radius:12px;
  }
  .b4print-sticky .b4-service-no{margin-bottom:7px;font-size:7.5px}
  .b4print-sticky .b4-service-card h2{margin-bottom:4px;font-size:11.5px;line-height:1.15}
  .b4print-sticky .b4-service-card p{
    font-size:8.8px;
    line-height:1.28;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
  }
  .b4-card-thumb{top:9px;right:9px;width:34px;height:34px;border-radius:7px}
  .b4-modal-gallery{grid-template-columns:1fr;gap:10px}
  .b4-gallery-shot{aspect-ratio:1.2/1}
}

@media (orientation:landscape) and (max-height:700px){
  .b4print-intro{height:290svh!important}
  .b4print-sticky .b4print-service-grid{grid-template-columns:repeat(6,1fr);gap:6px;margin-top:9px}
  .b4print-sticky .b4-service-card{
    min-height:91px;
    padding:9px 38px 9px 8px;
    border-radius:12px;
  }
  .b4print-sticky .b4-service-no{margin-bottom:6px;font-size:7px}
  .b4print-sticky .b4-service-card h2{font-size:9.5px;line-height:1.1;margin:0 0 4px}
  .b4print-sticky .b4-service-card p{
    font-size:7.3px;
    line-height:1.25;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
  }
  .b4-card-thumb{top:7px;right:7px;width:26px;height:26px;border-radius:5px}
}


/* ===== V18: visible but elegant watermark backgrounds on B4PRINT cards ===== */
.b4-card-thumb{display:none !important}
.b4-service-card{
  overflow:hidden;
  isolation:isolate;
}
.b4-service-card::after{
  content:"";
  position:absolute;
  inset:12px 14px 12px 42%;
  background-image:var(--b4-card-image);
  background-repeat:no-repeat;
  background-position:right center;
  background-size:contain;
  opacity:.50;
  pointer-events:none;
  z-index:0;
  filter:saturate(1.02) contrast(1.02);
}
.b4-service-card > *{position:relative; z-index:1}
.b4-smart-card::after{opacity:.52; filter:brightness(1.12) saturate(.95) contrast(1.02)}

@media(max-width:980px){
  .b4print-sticky .b4-service-card::after{inset:10px 12px 10px 42%; opacity:.46}
}

@media(max-width:560px){
  .b4print-sticky .b4-service-card::after{inset:8px 10px 8px 44%; opacity:.42}
}

@media (orientation:landscape) and (max-height:700px){
  .b4print-sticky .b4-service-card::after{inset:6px 8px 6px 44%; opacity:.40}
}


/* ===== V20: force visible card background images with real DOM layer ===== */
.b4-service-card::after{display:none !important}
.b4-card-bg{
  position:absolute;
  inset:10px 12px 10px 42%;
  border-radius:14px;
  background-repeat:no-repeat;
  background-position:right center;
  background-size:cover;
  opacity:.50;
  pointer-events:none;
  z-index:0;
  filter:saturate(1.02) contrast(1.03);
}
.b4-smart-card .b4-card-bg{opacity:.54;filter:brightness(1.15) saturate(.9) contrast(1.03)}
.b4-service-card > *{position:relative;z-index:1}

@media(max-width:980px){
  .b4print-sticky .b4-card-bg{inset:10px 12px 10px 42%;opacity:.46}
  .b4print-sticky .b4-smart-card .b4-card-bg{opacity:.50}
}
@media(max-width:560px){
  .b4print-sticky .b4-card-bg{inset:8px 10px 8px 44%;opacity:.42}
  .b4print-sticky .b4-smart-card .b4-card-bg{opacity:.46}
}
@media (orientation:landscape) and (max-height:700px){
  .b4print-sticky .b4-card-bg{inset:6px 8px 6px 44%;opacity:.40}
  .b4print-sticky .b4-smart-card .b4-card-bg{opacity:.44}
}


/* ===== V21: expert fix - dedicated watermark assets + stronger visibility ===== */
.b4-service-card{overflow:hidden}
.b4-service-card.is-passed{opacity:.9 !important; filter:none !important}
.b4-service-card.is-active{opacity:1 !important}
.b4-card-bg{
  position:absolute !important;
  inset:8px 10px 8px 40% !important;
  border-radius:14px !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:cover !important;
  opacity:.72 !important;
  mix-blend-mode:multiply;
  pointer-events:none !important;
  z-index:0 !important;
  filter:contrast(1.08) saturate(.95) brightness(.98) !important;
}
.b4-smart-card .b4-card-bg{opacity:.55 !important; mix-blend-mode:screen; filter:brightness(1.03) saturate(.9) !important}
.b4-service-card > .b4-card-bg{position:absolute !important; z-index:0 !important}
.b4-service-card > *:not(.b4-card-bg){position:relative; z-index:1}

@media(max-width:980px){
  .b4print-sticky .b4-card-bg{inset:9px 10px 9px 42% !important; opacity:.66 !important}
  .b4print-sticky .b4-smart-card .b4-card-bg{opacity:.5 !important}
}
@media(max-width:560px){
  .b4print-sticky .b4-card-bg{inset:8px 8px 8px 43% !important; opacity:.62 !important}
  .b4print-sticky .b4-smart-card .b4-card-bg{opacity:.48 !important}
}
@media (orientation:landscape) and (max-height:700px){
  .b4print-sticky .b4-card-bg{inset:6px 7px 6px 44% !important; opacity:.58 !important}
  .b4print-sticky .b4-smart-card .b4-card-bg{opacity:.44 !important}
}


/* ===== V22: improve text readability on cards 03, 04, 05 ===== */
.b4-service-card[data-b4-service="marketing"],
.b4-service-card[data-b4-service="display"],
.b4-service-card[data-b4-service="event"]{
  overflow:hidden;
}
.b4-service-card[data-b4-service="marketing"]::before,
.b4-service-card[data-b4-service="display"]::before,
.b4-service-card[data-b4-service="event"]::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  z-index:1;
  background:linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.96) 38%, rgba(255,255,255,.88) 54%, rgba(255,255,255,.58) 70%, rgba(255,255,255,0) 86%);
}
.b4-service-card[data-b4-service="marketing"] > *:not(.b4-card-bg),
.b4-service-card[data-b4-service="display"] > *:not(.b4-card-bg),
.b4-service-card[data-b4-service="event"] > *:not(.b4-card-bg){
  position:relative;
  z-index:2 !important;
}
.b4-service-card[data-b4-service="marketing"] h2,
.b4-service-card[data-b4-service="display"] h2,
.b4-service-card[data-b4-service="event"] h2{
  color:#16385f !important;
  text-shadow:0 1px 0 rgba(255,255,255,.9);
}
.b4-service-card[data-b4-service="marketing"] p,
.b4-service-card[data-b4-service="display"] p,
.b4-service-card[data-b4-service="event"] p{
  color:#556879 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.78);
}

@media(max-width:980px){
  .b4-service-card[data-b4-service="marketing"]::before,
  .b4-service-card[data-b4-service="display"]::before,
  .b4-service-card[data-b4-service="event"]::before{
    background:linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.96) 42%, rgba(255,255,255,.88) 58%, rgba(255,255,255,.62) 74%, rgba(255,255,255,.06) 90%);
  }
}
@media(max-width:560px){
  .b4-service-card[data-b4-service="marketing"]::before,
  .b4-service-card[data-b4-service="display"]::before,
  .b4-service-card[data-b4-service="event"]::before{
    background:linear-gradient(90deg, rgba(255,255,255,.99) 0%, rgba(255,255,255,.97) 46%, rgba(255,255,255,.9) 63%, rgba(255,255,255,.66) 78%, rgba(255,255,255,.1) 92%);
  }
  .b4-service-card[data-b4-service="marketing"] p,
  .b4-service-card[data-b4-service="display"] p,
  .b4-service-card[data-b4-service="event"] p{
    color:#4b6274 !important;
  }
}


/* ===== V23 Singapore: Digital Solutions + ZLINKS network sections ===== */
.digital-solutions{
  background:linear-gradient(180deg,#ffffff 0%,#f3f6f6 100%);
  padding-top:96px;
  padding-bottom:96px;
}
.digital-solutions-shell,.zlinks-network-shell{max-width:var(--max);margin:0 auto}
.digital-solutions-copy{display:grid;grid-template-columns:.82fr 1.18fr;gap:20px 68px;align-items:end}
.digital-solutions-copy .eyebrow{grid-column:1;margin-bottom:0;align-self:start;padding-top:8px}
.digital-solutions-copy h2{grid-column:2;grid-row:1 / span 2;font-size:clamp(38px,4.1vw,60px);line-height:1;letter-spacing:-.045em}
.digital-solutions-copy>p:last-child{grid-column:2;margin:18px 0 0;max-width:760px;color:var(--ink-soft);font-size:16px;line-height:1.65}
.digital-solutions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:46px}
.digital-solution-card{min-height:215px;padding:25px 24px 23px;border:1px solid #dbe3e5;border-radius:18px;background:rgba(255,255,255,.88);box-shadow:0 12px 34px rgba(44,58,64,.055)}
.digital-solution-no{display:block;margin-bottom:34px;color:var(--green);font-size:10px;font-weight:900;letter-spacing:.14em}
.digital-solution-card h3{margin:0 0 11px;color:#1f3550;font-size:18px;line-height:1.18;letter-spacing:-.02em}
.digital-solution-card p{margin:0;color:#69767d;font-size:13px;line-height:1.55}
.digital-solutions-note{margin:26px 0 0;text-align:center;color:#354a57;font-size:13px;font-weight:800;letter-spacing:.015em}

.zlinks-network{background:#1f3546;color:#fff;padding-top:104px;padding-bottom:104px;overflow:hidden}
.zlinks-network:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 86% 14%,rgba(43,174,114,.15),transparent 28%),radial-gradient(circle at 8% 88%,rgba(255,255,255,.06),transparent 24%)}
.zlinks-network-shell{position:relative;z-index:1}
.zlinks-heading{max-width:900px}
.zlinks-heading .eyebrow{color:#77d1a9}
.zlinks-heading h2{color:#fff;font-size:clamp(42px,4.7vw,66px);line-height:.98;letter-spacing:-.05em}
.zlinks-heading h2 span{color:#62c99a}
.zlinks-heading>p:last-child{max-width:820px;margin:24px 0 0;color:#d0dbe0;font-size:17px;line-height:1.65}
.zlinks-network-effect{display:grid;grid-template-columns:1fr auto 1fr auto 1.35fr;align-items:center;gap:18px;margin-top:46px;padding:24px;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}
.zlinks-network-effect>div{min-width:0}
.zlinks-network-effect strong{display:block;color:#fff;font-size:clamp(30px,3vw,44px);line-height:1;font-weight:900;letter-spacing:-.04em}
.zlinks-network-effect span{display:block;margin-top:7px;color:#afc0c8;font-size:12px;line-height:1.3}
.zlinks-network-effect>b{color:#70cfa2;font-size:24px;font-weight:700}
.zlinks-network-result{padding:14px 18px;border-radius:14px;background:rgba(43,174,114,.13);border:1px solid rgba(98,201,154,.22)}
.zlinks-network-result strong{color:#79d8ad}
.zlinks-example-note{margin:9px 0 0;color:#91a3ac;font-size:10px}
.zlinks-benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px}
.zlinks-benefit-card{min-height:250px;padding:25px 24px;border:1px solid rgba(255,255,255,.11);border-radius:18px;background:rgba(255,255,255,.045)}
.zlinks-benefit-card>span{display:block;margin-bottom:30px;color:#70cfa2;font-size:10px;font-weight:900;letter-spacing:.14em}
.zlinks-benefit-card h3{margin:0 0 12px;color:#fff;font-size:20px;line-height:1.15;letter-spacing:-.02em}
.zlinks-benefit-card p{margin:0;color:#bdcbd1;font-size:13.5px;line-height:1.62}
.zlinks-benefit-card p strong{color:#fff}
.zlinks-flow{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:32px 0 0;padding:18px;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09)}
.zlinks-flow span{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.075);color:#eef6f3;font-size:11px;font-weight:800}
.zlinks-flow i{font-style:normal;color:#64c99a;font-size:13px}
.zlinks-bottom{display:grid;grid-template-columns:1.2fr auto;align-items:end;gap:34px;margin-top:36px}
.zlinks-network-line{max-width:760px;margin:0 0 15px;color:#b9c8ce;font-size:14px;line-height:1.6}
.zlinks-bottom h3{margin:0;color:#fff;font-size:clamp(26px,3vw,38px);line-height:1.05;letter-spacing:-.035em}
.zlinks-bottom h3 span{color:#6ed0a3}
.zlinks-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.zlinks-promote{background:#2bae72}
.zlinks-open{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff}
.zlinks-open:hover{background:rgba(255,255,255,.12)}

@media(max-width:980px){
  .digital-solutions-copy{grid-template-columns:1fr;gap:0}
  .digital-solutions-copy .eyebrow,.digital-solutions-copy h2,.digital-solutions-copy>p:last-child{grid-column:1;grid-row:auto}
  .digital-solutions-copy h2{margin-top:22px}
  .digital-solutions-grid{grid-template-columns:1fr 1fr}
  .zlinks-benefit-grid{grid-template-columns:1fr}
  .zlinks-benefit-card{min-height:0}
  .zlinks-bottom{grid-template-columns:1fr;align-items:start}
  .zlinks-actions{justify-content:flex-start}
}

@media(max-width:560px){
  .digital-solutions,.zlinks-network{padding-top:72px;padding-bottom:72px}
  .digital-solutions-copy h2{font-size:34px;line-height:1.02}
  .digital-solutions-copy>p:last-child{font-size:13.5px;line-height:1.55}
  .digital-solutions-grid{grid-template-columns:1fr;gap:9px;margin-top:30px}
  .digital-solution-card{min-height:0;padding:19px 18px}
  .digital-solution-no{margin-bottom:18px}
  .digital-solution-card h3{font-size:16px}
  .digital-solution-card p{font-size:12px}
  .zlinks-heading h2{font-size:35px;line-height:1}
  .zlinks-heading>p:last-child{font-size:13.5px;line-height:1.58}
  .zlinks-network-effect{grid-template-columns:1fr auto 1fr;gap:10px;padding:16px;margin-top:32px}
  .zlinks-network-effect>div:last-child{grid-column:1 / -1;margin-top:2px}
  .zlinks-network-effect>b:nth-of-type(2){display:none}
  .zlinks-network-effect strong{font-size:30px}
  .zlinks-network-effect span{font-size:10px}
  .zlinks-benefit-grid{margin-top:28px;gap:9px}
  .zlinks-benefit-card{padding:19px 18px}
  .zlinks-benefit-card>span{margin-bottom:17px}
  .zlinks-benefit-card h3{font-size:17px}
  .zlinks-benefit-card p{font-size:12px;line-height:1.55}
  .zlinks-flow{gap:6px;padding:14px 4px}
  .zlinks-flow span{padding:7px 9px;font-size:9px}
  .zlinks-bottom{margin-top:28px}
  .zlinks-network-line{font-size:12px}
  .zlinks-bottom h3{font-size:28px}
  .zlinks-actions{display:grid;grid-template-columns:1fr;width:100%}
  .zlinks-actions a{width:100%}
}

@media (orientation:landscape) and (max-height:700px){
  .digital-solutions,.zlinks-network{padding-top:64px;padding-bottom:64px}
  .digital-solutions-copy h2{font-size:34px}
  .digital-solutions-grid{grid-template-columns:repeat(4,1fr);margin-top:28px}
  .digital-solution-card{min-height:170px;padding:18px}
  .digital-solution-no{margin-bottom:22px}
  .zlinks-heading h2{font-size:38px}
  .zlinks-heading>p:last-child{font-size:13px}
  .zlinks-network-effect{margin-top:28px;padding:16px}
  .zlinks-benefit-grid{grid-template-columns:repeat(3,1fr);margin-top:24px}
  .zlinks-benefit-card{min-height:190px;padding:18px}
  .zlinks-benefit-card>span{margin-bottom:18px}
  .zlinks-benefit-card h3{font-size:16px}
  .zlinks-benefit-card p{font-size:11.5px}
  .zlinks-flow{margin-top:22px}
  .zlinks-bottom{margin-top:24px}
}


/* ===== Mobile hero final alignment + Contact screen fit ===== */
@media (max-width:930px) and (orientation:portrait){
  /* Keep both CTA buttons completely in the left-side safe area, away from the phone. */
  .intro-scroll.exact-hero .hero-actions-fixed{
    left:14px!important;
    right:auto!important;
    bottom:70px!important;
    top:auto!important;
    width:min(215px,calc(56vw - 18px))!important;
    max-width:min(215px,calc(56vw - 18px))!important;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
    gap:6px!important;
  }
  .intro-scroll.exact-hero .hero-actions-fixed .primary-btn,
  .intro-scroll.exact-hero .hero-actions-fixed .secondary-btn{
    width:100%!important;
    min-width:0!important;
    min-height:38px!important;
    padding:0 7px!important;
    gap:5px!important;
    font-size:9.5px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }

  /* The phone becomes narrow on portrait mobiles, so the New Contact UI needs its own compact layout. */
  .intro-scroll.exact-hero .screen-contact{
    padding:13% 6.5% 5%!important;
    overflow:hidden!important;
  }
  .intro-scroll.exact-hero .contact-topbar{
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
    align-items:center!important;
    gap:3px!important;
    font-size:7.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .intro-scroll.exact-hero .contact-topbar>span:first-child{justify-self:start!important}
  .intro-scroll.exact-hero .contact-topbar>strong{justify-self:center!important;font-size:8px!important;white-space:nowrap!important}
  .intro-scroll.exact-hero .contact-topbar .save-action{justify-self:end!important;font-size:7.5px!important}
  .intro-scroll.exact-hero .avatar-circle{
    width:52px!important;
    height:52px!important;
    margin:18px auto 7px!important;
    font-size:17px!important;
  }
  .intro-scroll.exact-hero .screen-contact h3{
    font-size:16px!important;
    line-height:1.02!important;
    margin:0!important;
  }
  .intro-scroll.exact-hero .screen-contact>p{
    margin:3px 0 10px!important;
    font-size:7.5px!important;
    line-height:1.2!important;
  }
  .intro-scroll.exact-hero .contact-fields{gap:4px!important}
  .intro-scroll.exact-hero .contact-fields div{
    padding:5px 7px!important;
    border-radius:6px!important;
    min-height:0!important;
  }
  .intro-scroll.exact-hero .contact-fields small{font-size:6px!important;line-height:1.05!important}
  .intro-scroll.exact-hero .contact-fields strong{
    font-size:7.5px!important;
    line-height:1.12!important;
    margin-top:1px!important;
    overflow-wrap:anywhere!important;
  }
  .intro-scroll.exact-hero .contact-saved{
    left:8px!important;
    right:8px!important;
    bottom:10px!important;
    padding:7px 8px!important;
    border-radius:8px!important;
    gap:6px!important;
    font-size:7.5px!important;
  }
  .intro-scroll.exact-hero .contact-saved b{width:20px!important;height:20px!important;font-size:10px!important}
}

@media (hover:none) and (pointer:coarse) and (orientation:landscape),
       (max-height:680px) and (orientation:landscape){
  .intro-scroll.exact-hero .hero-actions-fixed{
    width:min(310px,36vw)!important;
    max-width:min(310px,36vw)!important;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
    gap:6px!important;
  }
  .intro-scroll.exact-hero .hero-actions-fixed .primary-btn,
  .intro-scroll.exact-hero .hero-actions-fixed .secondary-btn{
    width:100%!important;
    min-width:0!important;
    padding:0 8px!important;
    gap:5px!important;
    white-space:nowrap!important;
  }
  .intro-scroll.exact-hero .screen-contact{padding:11% 6% 4.5%!important;overflow:hidden!important}
  .intro-scroll.exact-hero .contact-topbar{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:3px!important;font-size:7px!important;line-height:1!important;white-space:nowrap!important}
  .intro-scroll.exact-hero .contact-topbar>span:first-child{justify-self:start!important}
  .intro-scroll.exact-hero .contact-topbar>strong{justify-self:center!important;font-size:7.5px!important;white-space:nowrap!important}
  .intro-scroll.exact-hero .contact-topbar .save-action{justify-self:end!important;font-size:7px!important}
  .intro-scroll.exact-hero .avatar-circle{width:46px!important;height:46px!important;margin:15px auto 6px!important;font-size:15px!important}
  .intro-scroll.exact-hero .screen-contact h3{font-size:14px!important;line-height:1!important}
  .intro-scroll.exact-hero .screen-contact>p{margin:2px 0 8px!important;font-size:6.8px!important;line-height:1.15!important}
  .intro-scroll.exact-hero .contact-fields{gap:3px!important}
  .intro-scroll.exact-hero .contact-fields div{padding:4px 6px!important;border-radius:6px!important}
  .intro-scroll.exact-hero .contact-fields small{font-size:5.5px!important}
  .intro-scroll.exact-hero .contact-fields strong{font-size:6.8px!important;line-height:1.1!important;margin-top:1px!important;overflow-wrap:anywhere!important}
  .intro-scroll.exact-hero .contact-saved{left:7px!important;right:7px!important;bottom:8px!important;padding:6px 7px!important;font-size:7px!important}
  .intro-scroll.exact-hero .contact-saved b{width:18px!important;height:18px!important;font-size:9px!important}
}

@media(max-width:390px) and (orientation:portrait){
  .intro-scroll.exact-hero .hero-actions-fixed{
    width:calc(57vw - 18px)!important;
    max-width:calc(57vw - 18px)!important;
    gap:5px!important;
  }
  .intro-scroll.exact-hero .hero-actions-fixed .primary-btn,
  .intro-scroll.exact-hero .hero-actions-fixed .secondary-btn{
    padding:0 5px!important;
    font-size:9px!important;
  }
}
