/* 4CUS — premium homepage additions. Keeps original site animations intact. */
.cus-home-premium{overflow:clip}
.cus-home-premium .cus-hero{position:relative;isolation:isolate}
.cus-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 44% 44% at 78% 48%,rgba(133,96,255,.075),transparent 80%);z-index:-1}
.cus-hero-index{position:absolute;bottom:28px;left:max(4vw,22px);right:max(4vw,22px);display:flex;justify-content:space-between;color:rgba(100,92,130,.5);font-size:10px;font-weight:800;letter-spacing:.22em;pointer-events:none}
.cus-services-section{position:relative;padding-top:clamp(85px,10vw,156px);padding-bottom:clamp(60px,8vw,130px)}
.cus-section-head{align-items:end;gap:28px}.cus-section-head h2{max-width:850px;letter-spacing:-.055em;line-height:1.06}
.cus-section-description{color:#777581;max-width:550px;font-size:clamp(14px,1.5vw,17px);line-height:1.75;margin:18px 0 0}
.cus-heading-mark{font-size:clamp(72px,11vw,180px);font-weight:900;line-height:.8;letter-spacing:-.12em;color:rgba(110,90,158,.10);white-space:nowrap;user-select:none}.cus-heading-mark span{color:#a48aff;font-size:.6em;vertical-align:top}
.cus-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:42px}
.cus-service-card{--cus-x:50%;--cus-y:50%;position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;min-height:550px;border:1px solid rgba(96,83,114,.12);border-radius:30px;overflow:hidden;text-decoration:none;color:#16151c;background:#f3f1f5;box-shadow:0 5px 20px rgba(29,23,40,.025),0 34px 70px rgba(31,20,45,.05);transition:box-shadow .45s,border-color .45s,transform .6s cubic-bezier(.2,.75,.25,1)}
.cus-service-card:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(420px circle at var(--cus-x) var(--cus-y),rgba(255,255,255,.22),transparent 73%)}
.cus-service-card:hover{transform:translateY(-7px);box-shadow:0 35px 95px rgba(31,20,45,.15);border-color:rgba(130,105,210,.28)}
.cus-service-top{position:absolute;z-index:5;left:30px;right:30px;top:26px;display:flex;justify-content:space-between;align-items:center}.cus-service-number{font-size:11px;font-weight:800;letter-spacing:.17em;opacity:.66}.cus-service-arrow{display:grid;place-items:center;width:38px;height:38px;border:1px solid currentColor;border-radius:50%;font-size:22px;transition:transform .4s;background:rgba(255,255,255,.25)}.cus-service-card:hover .cus-service-arrow{transform:rotate(45deg)}
.cus-service-visual{height:300px;position:relative;display:grid;place-items:center;overflow:hidden}
.cus-service-content{position:relative;z-index:4;padding:3px 30px 30px;display:flex;flex:1;flex-direction:column;align-items:start}
.cus-service-badge{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:750;background:rgba(80,65,100,.08);padding:8px 11px;border-radius:999px}
.cus-service-content h3{font-size:clamp(25px,3.3vw,45px);line-height:1.08;letter-spacing:-.045em;margin:15px 0 9px;color:inherit}
.cus-service-content p{font-size:14px;max-width:420px;line-height:1.65;margin:0 0 24px;opacity:.68}
.cus-service-cta{margin-top:auto;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:12px;font-weight:800;letter-spacing:.02em}
.cus-service-invitation{background:#e9e5df}.cus-visual-invitation{perspective:900px}
.cus-invite-sheet{position:absolute;width:190px;height:232px;border-radius:3px;background:#fefbf5;box-shadow:0 25px 50px rgba(44,35,35,.18);border:1px solid #dfd9ce}
.cus-sheet-back{transform:translate(52px,15px) rotate(14deg);background:#c9b7a7;transition:transform .8s cubic-bezier(.2,.7,.3,1)}
.cus-sheet-front{transform:translate(-21px,12px) rotate(-9deg);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#705947;transition:transform .8s cubic-bezier(.2,.7,.3,1)}
.cus-sheet-front span{font-size:10px;letter-spacing:.25em}.cus-sheet-front i{font-size:45px;font-style:normal;margin:10px 0}.cus-sheet-front b{font:italic 29px Georgia,serif;font-weight:400}.cus-sheet-front small{font-size:7px;letter-spacing:.2em;margin-top:22px}
.cus-service-invitation:hover .cus-sheet-front{transform:translate(-27px,-3px) rotate(-13deg)}.cus-service-invitation:hover .cus-sheet-back{transform:translate(67px,7px) rotate(19deg)}
.cus-service-qr{background:#251d36;color:#fff}.cus-service-qr .cus-service-content h3{color:#fff}.cus-service-qr .cus-service-badge{background:rgba(255,255,255,.13)}
.cus-visual-qr:before{content:"";position:absolute;width:310px;height:310px;border-radius:50%;background:#835eff;filter:blur(100px);opacity:.35}
.cus-qr-frame{position:relative;width:188px;height:188px;padding:20px;background:#fff;border-radius:23px;transform:rotate(-7deg);box-shadow:0 30px 70px #0006;transition:transform .6s}.cus-service-qr:hover .cus-qr-frame{transform:rotate(0deg) scale(1.04)}
.cus-qr-frame svg,.cus-feature-qr-inner svg{display:block;width:100%;height:100%;color:#17151c}.cus-qr-frame img,.cus-feature-qr-inner img{position:absolute;width:22%;height:22%;object-fit:contain;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:5px;padding:3px}
.cus-qr-scanline{position:absolute;left:22%;right:22%;height:2px;background:#9c84ff;box-shadow:0 0 25px #a88fff;top:22%;animation:cusScan 4s ease-in-out infinite alternate;opacity:.7}
.cus-service-landing{background:#e9edf1}.cus-browser{width:min(80%,340px);height:212px;background:white;border-radius:12px;transform:perspective(850px) rotateY(-12deg) rotateX(7deg) rotateZ(-5deg);box-shadow:18px 35px 65px #1e2f4b3b;overflow:hidden;transition:transform .75s}.cus-service-landing:hover .cus-browser{transform:perspective(850px) rotateY(0) rotateX(0) rotateZ(0)}
.cus-browser-top{height:26px;background:#f5f6f8;border-bottom:1px solid #eee;display:flex;align-items:center;gap:5px;padding:0 11px}.cus-browser-top i{width:5px;height:5px;background:#c0b9c6;border-radius:50%}.cus-browser-top span{font-size:7px;color:#7f7c85;margin:auto}
.cus-browser-body{position:relative;height:186px;overflow:hidden;padding:20px 25px;background:#171b24;color:#fff}.cus-browser-body small{font-size:6px;letter-spacing:.22em;color:#aaa}.cus-browser-body b{position:relative;z-index:2;display:block;margin:13px 0;font-size:25px;line-height:.95;letter-spacing:-.06em}.cus-browser-body em{position:relative;z-index:2;font-size:7px;font-style:normal;color:#cfc6ff}.cus-browser-disc{position:absolute;right:-20px;bottom:-45px;width:165px;height:165px;border-radius:50%;background:linear-gradient(125deg,#cdbeed,#574e8d);box-shadow:inset -20px -16px 35px #19152588}
.cus-service-soon{background:#ece9f4}.cus-visual-soon{isolation:isolate}.cus-soon-ring{position:absolute;width:220px;height:220px;border:1px solid #9583b59e;border-radius:50%;transform:rotateX(65deg) rotateZ(-25deg);animation:cusRing 16s linear infinite}.cus-soon-ring-two{width:160px;height:160px;transform:rotateY(65deg) rotateZ(20deg);animation-direction:reverse}.cus-soon-star{font-size:135px;color:#a188da;line-height:1;filter:drop-shadow(0 14px 20px #8461b133);animation:cusFloat 6s ease-in-out infinite}
/* Distinct QR hero */
.cus-qr-section{padding-top:25px;padding-bottom:clamp(65px,10vw,135px)}
.cus-qr-feature{--cus-x:50%;--cus-y:50%;position:relative;isolation:isolate;overflow:hidden;min-height:620px;border-radius:35px;background:radial-gradient(circle at 82% 38%,#564183 0%,transparent 45%),linear-gradient(120deg,#16131e,#282038);display:grid;grid-template-columns:1.1fr 1fr;align-items:center;padding:clamp(30px,5vw,86px);color:#fff}
.cus-qr-feature:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(390px circle at var(--cus-x) var(--cus-y),#ab8aff15,transparent 80%)}
.cus-qr-feature-copy{z-index:2}.cus-qr-feature-copy .section-label{color:#bba6ff}.cus-qr-feature-copy h2{font-size:clamp(40px,5.6vw,84px);letter-spacing:-.07em;line-height:1.04;margin:22px 0}.cus-qr-feature-copy h2 em{font-style:normal;color:#b69aff}.cus-qr-feature-copy>p{max-width:520px;color:#c1b9cc;font-size:clamp(13px,1.4vw,16px);line-height:1.8}
.cus-qr-points{display:flex;flex-wrap:wrap;gap:8px;margin:27px 0}.cus-qr-points span{font-size:11px;padding:9px 12px;border-radius:999px;border:1px solid #ffffff30;background:#ffffff08}
.cus-qr-button{display:inline-flex!important;max-width:100%;margin:4px 0 12px}.cus-qr-feature-copy>small{display:block;font-size:11px;color:#b0a7b9}
.cus-qr-feature-art{height:460px;position:relative;display:grid;place-items:center;isolation:isolate}.cus-feature-orbit{position:absolute;width:430px;height:430px;border-radius:50%;border:1px solid #ffffff24;animation:cusRing 25s linear infinite}.cus-feature-orbit-b{width:325px;height:325px;border-color:#b89dff42;animation-direction:reverse}
.cus-feature-qr{position:relative;width:clamp(215px,23vw,300px);aspect-ratio:1;background:white;border-radius:24px;padding:25px;box-shadow:0 40px 110px #0006;transform:rotate(-9deg);animation:cusFloatTilt 7s ease-in-out infinite}.cus-feature-qr-inner{position:relative;width:100%;height:100%}.cus-feature-qr-inner img{padding:5px}
.cus-floating-metric{position:absolute;z-index:3;background:#ffffff15;border:1px solid #ffffff3d;backdrop-filter:blur(20px);padding:12px 18px;border-radius:12px;font-size:11px;letter-spacing:.1em;font-weight:800;box-shadow:0 15px 40px #0004}.cus-metric-one{top:60px;right:0;animation:cusFloat 7s ease-in-out infinite}.cus-metric-two{bottom:45px;left:0;animation:cusFloat 8s ease-in-out infinite reverse}
/* Refine existing components without replacing behavior */
.cus-home-premium .template-card{border-radius:21px;overflow:hidden;transition:box-shadow .5s,border-color .5s}.cus-home-premium .template-card:hover{box-shadow:0 28px 70px rgba(34,27,55,.13)}
.cus-home-premium .foki-card,.cus-home-premium .final-card{border-radius:clamp(24px,4vw,45px)}
.cus-home-premium .step-card{transition:transform .5s,box-shadow .5s}.cus-home-premium .step-card:hover{transform:translateY(-6px)}
/* Separate reveal system so old .reveal observer keeps functioning */
[data-cus-reveal]{opacity:0;translate:0 38px;transition:opacity .85s ease,translate .85s cubic-bezier(.2,.7,.2,1)}[data-cus-reveal].cus-is-visible{opacity:1;translate:0 0}
.cus-service-grid>[data-cus-reveal]:nth-child(2){transition-delay:.09s}.cus-service-grid>[data-cus-reveal]:nth-child(3){transition-delay:.16s}.cus-service-grid>[data-cus-reveal]:nth-child(4){transition-delay:.23s}
@keyframes cusScan{from{top:22%}to{top:74%}}@keyframes cusRing{to{rotate:360deg}}@keyframes cusFloat{50%{translate:0 -13px}}@keyframes cusFloatTilt{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-14px) rotate(-5deg)}}
@media(max-width:980px){.cus-qr-feature{grid-template-columns:1fr;gap:10px}.cus-qr-feature-art{height:350px}.cus-feature-orbit{width:340px;height:340px}.cus-feature-orbit-b{width:270px;height:270px}.cus-heading-mark{display:none}}
@media(max-width:670px){.cus-service-grid{grid-template-columns:1fr;gap:14px}.cus-service-card{min-height:470px;border-radius:22px}.cus-service-visual{height:245px}.cus-service-content{padding:0 22px 24px}.cus-service-top{top:19px;left:22px;right:22px}.cus-service-content h3{font-size:32px}.cus-section-description{max-width:100%}.cus-qr-feature{min-height:0;padding:36px 22px;border-radius:24px}.cus-qr-feature-copy h2{font-size:clamp(37px,9vw,56px)}.cus-qr-feature-art{height:295px}.cus-feature-qr{width:205px;padding:18px}.cus-feature-orbit{width:275px;height:275px}.cus-feature-orbit-b{width:225px;height:225px}.cus-floating-metric{font-size:9px;padding:9px 11px}.cus-metric-one{right:-7px;top:15px}.cus-metric-two{left:-5px;bottom:12px}.cus-hero-index{display:none}}
@media(prefers-reduced-motion:reduce){[data-cus-reveal]{opacity:1;translate:none;transition:none}.cus-qr-scanline,.cus-soon-ring,.cus-soon-star,.cus-feature-orbit,.cus-feature-qr,.cus-floating-metric{animation:none!important}.cus-service-card,.cus-invite-sheet,.cus-browser{transition:none!important}}
