/* ===== Tema MEMPHIS: geometris 90-an, warna cerah flat, tombol & kartu timbul ===== */
:root{
    --cream:#fff6e9;--ink:#231942;--muted:#5d5475;--white:#ffffff;
    --teal:#18b8a6;--yel:#ffc93c;--vio:#7b5cff;--coral:#ff5d73;
    --acc:#ff5d73;--acc2:#18b8a6;--on-acc:#231942;
    --f-head:'Gabarito',sans-serif;--f-body:'Outfit',sans-serif;
    --wrap:1200px;--bd:2.5px solid var(--ink);--lift:0 6px 0 var(--ink);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}
body{margin:0;background:var(--cream);color:var(--ink);font:400 17px/1.6 var(--f-body);overflow-x:clip}
main{overflow-x:clip}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--f-head);margin:0;line-height:1.05;letter-spacing:-.02em}
.wrap{width:min(var(--wrap),100% - 32px);margin-inline:auto}
.ic{flex:none}
.c-acc{background:var(--acc);color:var(--on-acc)}
.c-teal{background:var(--teal)}
.c-yel{background:var(--yel)}
.c-vio{background:var(--vio);color:var(--white)}
.hl{background:var(--yel);padding:0 .15em;border-radius:8px;box-decoration-break:clone;-webkit-box-decoration-break:clone;display:inline-block;transform:rotate(-1.5deg)}

/* progres scroll */
.scrollbar{position:fixed;left:0;right:0;top:0;height:6px;z-index:60;background:var(--cream);border-bottom:2px solid var(--ink)}
.scrollbar i{display:block;height:100%;background:var(--acc);width:100%;transform-origin:0 50%;transform:scaleX(0)}

/* tombol timbul */
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border:var(--bd);border-radius:999px;background:var(--white);color:var(--ink);font:600 16px var(--f-body);text-decoration:none;cursor:pointer;box-shadow:var(--lift);transition:transform .12s,box-shadow .12s;white-space:nowrap}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 0 var(--ink)}
.btn:active{transform:translateY(5px);box-shadow:0 1px 0 var(--ink)}
.btn-acc{background:var(--acc);color:var(--on-acc)}
.btn-sm{padding:8px 16px;font-size:14px;box-shadow:0 4px 0 var(--ink)}
.btn-lg{padding:16px 28px;font-size:17px}

/* nav */
.nav{position:fixed;top:18px;left:50%;transform:translateX(-50%);z-index:50;width:min(var(--wrap),100% - 24px);display:flex;align-items:center;gap:14px;padding:8px 10px 8px 20px;background:var(--white);border:var(--bd);border-radius:999px;box-shadow:0 5px 0 var(--ink)}
.brand{display:flex;align-items:center;gap:10px;font:800 18px var(--f-head);text-decoration:none}
.brand-dot{width:22px;height:22px;border-radius:50%;background:var(--acc);border:var(--bd)}
.links{margin-left:auto;display:flex;gap:4px}
.links a{text-decoration:none;font-weight:600;padding:8px 14px;border-radius:999px}
.links a:hover{background:var(--yel)}
.burger{display:none}

/* hero */
.hero{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:30px;padding:130px 0 70px}
.hi-sticker{display:inline-flex;align-items:center;gap:8px;background:var(--teal);border:var(--bd);border-radius:12px;padding:6px 14px;font:700 16px var(--f-head);transform:rotate(-3deg);box-shadow:0 4px 0 var(--ink);margin:0 0 22px}
.wave{display:inline-grid;animation:wobble 1.8s ease-in-out infinite}
@keyframes wobble{50%{transform:rotate(18deg) scale(1.15)}}
.hero h1{font-size:clamp(46px,6.2vw,92px);font-weight:900;letter-spacing:-.03em}
.bouncy .ch{display:inline-block;transition:transform .25s cubic-bezier(.3,1.8,.5,1),color .2s}
.bouncy .ch:hover{transform:translateY(-.18em) rotate(-6deg);color:var(--acc)}
.bouncy .wd{display:inline-block;white-space:nowrap}
.js .bouncy .ch{opacity:0;transform:translateY(.5em) scale(.6)}
.js .bouncy.in .ch{opacity:1;transform:none;transition:transform .5s cubic-bezier(.3,1.8,.5,1),opacity .4s}
.lead{font-size:clamp(17px,1.5vw,20px);color:var(--muted);max-width:560px;margin:24px 0 32px}
.cta{display:flex;flex-wrap:wrap;gap:14px}
.avail{display:inline-flex;align-items:center;gap:10px;margin:30px 0 0;font-weight:600}
.avail span{width:14px;height:14px;border-radius:50%;background:var(--teal);border:2px solid var(--ink);animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.35)}}

.hero-art{position:relative;height:600px}
.shape{position:absolute;width:64px;height:64px;transition:translate .25s ease-out;animation:floaty 6s ease-in-out infinite}
.shape:nth-child(2n){animation-duration:7.5s;animation-direction:reverse}
.shape svg{width:100%;height:100%;overflow:visible}
@keyframes floaty{50%{transform:translateY(-14px) rotate(12deg)}}
.phone-stage{position:absolute;inset:0;display:grid;place-items:center;perspective:1200px}
.phone{position:relative;width:270px;height:550px;transform-style:preserve-3d;transform:rotateY(-22deg) rotateX(8deg);transition:transform .3s ease-out}
.phone-face,.phone-side{position:absolute;inset:0;border-radius:42px}
.phone-face{background:var(--ink);padding:12px;transform:translateZ(14px);border:var(--bd)}
.phone-face img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;border-radius:32px;background:var(--white)}
.notch{position:absolute;top:22px;left:50%;width:84px;height:22px;margin-left:-42px;background:var(--ink);border-radius:20px;z-index:1}
.phone-side{background:var(--vio);border:var(--bd);transform:translateZ(-14px)}
.phone-side::before{content:'';position:absolute;inset:0;border-radius:42px;background:var(--vio);transform:translateZ(14px) translateX(-1px)}
.me{position:absolute;width:150px;height:150px;border-radius:50%;object-fit:cover;border:var(--bd);box-shadow:var(--lift);left:4%;bottom:6%;transition:translate .25s ease-out}
.bubble{position:absolute;right:0;top:12%;background:var(--white);border:var(--bd);border-radius:20px 20px 20px 4px;padding:12px 18px;box-shadow:var(--lift);text-decoration:none;max-width:220px;transition:translate .25s ease-out}
.bubble small{display:block;color:var(--muted);font-size:13px}
.bubble b{font-family:var(--f-head);font-size:17px;line-height:1.2}

/* pita */
.ribbon{background:var(--ink);color:var(--cream);padding:16px 0;transform:rotate(2deg) scaleX(1.05);margin:20px 0 40px;border-block:4px solid var(--yel);overflow:hidden}
.ribbon-track{display:flex;gap:40px;width:max-content;animation:slide 36s linear infinite}
.ribbon span{display:flex;align-items:center;gap:10px;font:700 20px var(--f-head);white-space:nowrap}
.ribbon .logo{color:var(--yel)}
@keyframes slide{to{transform:translateX(-50%)}}

/* judul section */
.sec-title{font-size:clamp(36px,5vw,66px);font-weight:800;margin:0 0 30px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:10px}
.sub{color:var(--muted);margin:-18px 0 26px}
section{padding-top:100px}

/* tentang */
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}
.about-pic{position:relative;max-width:400px}
.about-pic img{position:relative;border-radius:50%;border:var(--bd);aspect-ratio:1;object-fit:cover;width:100%}
.ring{position:absolute;inset:0;border-radius:50%;background:var(--vio);border:var(--bd);transform:translate(18px,18px)}
.about-pic .shape{width:80px;height:80px;animation:floaty 6s ease-in-out infinite}
.s-a{right:-10px;top:-14px}.s-b{left:-24px;bottom:10px}
.bio p{font-size:18px;margin:0 0 16px}
.bio strong{background:var(--acc);color:var(--on-acc);padding:0 6px;border-radius:6px}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.fact{border:var(--bd);border-radius:18px;padding:16px;box-shadow:0 5px 0 var(--ink);transform:rotate(var(--r,0deg))}
.fact b{display:block;font:800 clamp(34px,4vw,50px)/1 var(--f-head)}
.fact b::after{content:'+'}
.fact span,.fact small{font-weight:600;font-size:14px}

/* chip filter */
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.chip{border:var(--bd);background:var(--white);border-radius:999px;padding:8px 16px;font:600 14px var(--f-body);cursor:pointer;box-shadow:0 3px 0 var(--ink);transition:transform .1s,box-shadow .1s}
.chip:active{transform:translateY(3px);box-shadow:none}
.chip.on{background:var(--ink);color:var(--yel)}

/* kartu bertumpuk (sticky stacking) */
.stack{display:flex;flex-direction:column;gap:40px;padding-bottom:40px}
.scard{position:sticky;top:calc(110px + var(--i) * 14px);display:grid;grid-template-columns:1.1fr 1fr;border:var(--bd);border-radius:32px;overflow:hidden;text-decoration:none;box-shadow:0 8px 0 var(--ink);min-height:420px;transform-origin:50% 0;transition:transform .2s}
.scard.hide{display:none}
.scard-img{border-right:var(--bd);background:var(--white);overflow:hidden}
.scard-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.scard:hover .scard-img img{transform:scale(1.05) rotate(-1deg)}
.scard-body{padding:36px;display:flex;flex-direction:column;gap:14px}
.scard-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0;font-weight:600}
.pill{display:inline-flex;align-items:center;gap:5px;background:var(--white);color:var(--ink);border:2px solid var(--ink);border-radius:999px;padding:3px 12px;font-size:14px}
.pill-star{background:var(--yel)}
.scard h3{font-size:clamp(28px,3.4vw,46px);font-weight:800}
.scard-body>p{margin:0;font-size:18px}
.scard-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px}
.tools{display:flex;gap:8px}
.tools i{width:40px;height:40px;display:grid;place-items:center;background:var(--white);color:var(--ink);border:2px solid var(--ink);border-radius:12px}
.go{width:58px;height:58px;display:grid;place-items:center;background:var(--ink);color:var(--yel);border-radius:50%;transition:transform .3s}
.scard:hover .go{transform:rotate(45deg) scale(1.08)}
.scard-no{position:absolute;top:18px;left:18px;background:var(--white);color:var(--ink);border:2px solid var(--ink);border-radius:999px;padding:2px 12px;font:800 16px var(--f-head)}

/* keycaps */
.keys{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px}
.key{border:0;padding:0 0 8px;background:var(--ink);border-radius:20px;cursor:pointer;font:inherit;color:inherit;text-align:left;transition:padding .08s}
.key .cap{display:flex;flex-direction:column;gap:6px;border:var(--bd);border-radius:20px;padding:16px;height:100%;transform:translateY(-1px);position:relative;overflow:hidden;transition:transform .08s}
.key .cap b{font:700 17px/1.1 var(--f-head)}
.key .cap small{font-size:13px;opacity:.8}
.key .cap i{position:absolute;left:0;bottom:0;height:6px;width:var(--lv);background:var(--ink)}
.cap.c-vio i{background:var(--yel)}
.key:hover .cap{transform:translateY(-4px)}
.key:active,.key.press{padding-bottom:2px}
.key:active .cap,.key.press .cap{transform:translateY(0)}

/* jasa */
.services{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.svc{background:var(--white);border:var(--bd);border-radius:26px;padding:28px;box-shadow:0 6px 0 var(--ink);transition:transform .25s}
.svc:hover{transform:rotate(-1.5deg) translateY(-6px)}
.svc-ic{width:70px;height:70px;display:grid;place-items:center;border:var(--bd);border-radius:24px 24px 24px 6px;margin-bottom:18px;transition:transform .4s}
.svc:hover .svc-ic{transform:rotate(-12deg) scale(1.08)}
.svc h3{font-size:23px;margin-bottom:8px}
.svc p{margin:0;color:var(--muted)}
.svc .price{margin-top:16px;color:var(--ink);font-weight:500}

/* timeline berliku */
.path-wrap{position:relative;padding:20px 0}
.path-line{position:absolute;left:calc(50% - 50px);top:0;width:100px;height:100%}
.stop{position:relative;display:flex;width:50%;padding:20px 50px 40px 0}
.stop.right{margin-left:50%;padding:20px 0 40px 50px}
.stop .dot{position:absolute;top:24px;right:-27px;width:54px;height:54px;border-radius:50%;border:var(--bd);display:grid;place-items:center;box-shadow:0 4px 0 var(--ink);z-index:1}
.stop.right .dot{right:auto;left:-27px}
.stop-card{background:var(--white);border:var(--bd);border-radius:22px;padding:22px;box-shadow:0 5px 0 var(--ink);width:100%}
.when{display:inline-block;font-weight:700;background:var(--yel);border-radius:8px;padding:0 8px;margin:0 0 8px;font-size:14px}
.stop h3{font-size:22px}
.where{font-weight:600;margin:4px 0 8px}
.stop-card>p:last-child{margin:0;color:var(--muted);font-size:16px}

/* chat testimoni */
.chat{max-width:780px;margin:0 auto;background:var(--white);border:var(--bd);border-radius:32px;box-shadow:0 8px 0 var(--ink);overflow:hidden}
.chat-head{display:flex;align-items:center;gap:12px;padding:14px 20px;background:var(--teal);border-bottom:var(--bd)}
.chat-head img{width:46px;height:46px;border-radius:50%;border:2px solid var(--ink);object-fit:cover}
.chat-head b{display:block;font-family:var(--f-head)}
.chat-head small{font-size:13px}
.chat-body{padding:24px;display:flex;flex-direction:column;gap:18px;min-height:300px}
.msg{display:flex;gap:10px;align-items:flex-end;max-width:86%}
.msg.r{flex-direction:row-reverse;align-self:flex-end}
.msg img{width:42px;height:42px;border-radius:50%;border:2px solid var(--ink);object-fit:cover;flex:none}
.msg-bubble{border:var(--bd);border-radius:22px 22px 22px 4px;padding:12px 16px}
.msg.r .msg-bubble{border-radius:22px 22px 4px 22px}
.msg-bubble b{display:block;font-family:var(--f-head);font-size:15px}
.msg-bubble b small{font-family:var(--f-body);font-weight:500;opacity:.75;font-size:12px}
.msg-bubble p{margin:4px 0 6px;font-size:16px;line-height:1.5}
.stars{display:flex;gap:2px}
.stars .ic{fill:currentColor}
.typing{display:none;gap:5px;padding:14px 18px;border:var(--bd);border-radius:22px;align-self:flex-start;background:var(--cream)}
.typing i{width:9px;height:9px;border-radius:50%;background:var(--ink);animation:typing 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes typing{50%{transform:translateY(-6px)}}
.js .chat .msg{display:none}
.js .chat .msg.show{display:flex;animation:pop .45s cubic-bezier(.3,1.6,.5,1)}
.js .chat .typing.on{display:flex}
@keyframes pop{from{transform:scale(.6) translateY(20px);opacity:0}}

/* kontak */
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;background:var(--yel);border:var(--bd);border-radius:36px;box-shadow:0 10px 0 var(--ink);padding:clamp(24px,4vw,56px);margin-bottom:80px}
.contact-side p{font-size:18px}
.ways{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.ways .btn{word-break:break-all;white-space:normal}
.cform{background:var(--white);border:var(--bd);border-radius:26px;padding:26px;box-shadow:0 6px 0 var(--ink)}
.cform label{display:block;font-weight:600;margin-bottom:14px}
.cform input:not([type=radio]),.cform textarea{display:block;width:100%;margin-top:6px;border:var(--bd);border-radius:14px;padding:12px 14px;font:400 16px var(--f-body);background:var(--cream);color:var(--ink)}
.cform input:focus,.cform textarea:focus{outline:none;background:var(--white);box-shadow:0 0 0 4px var(--teal)}
fieldset{border:0;padding:0;margin:0 0 14px}
legend{font-weight:600;margin-bottom:8px;padding:0}
.radio-chips{display:flex;flex-wrap:wrap;gap:8px}
.radio-chips label{margin:0}
.radio-chips input{position:absolute;opacity:0}
.radio-chips span{display:inline-block;border:2px solid var(--ink);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:500;cursor:pointer;background:var(--white)}
.radio-chips input:checked+span{background:var(--vio);color:var(--white)}
.radio-chips input:focus-visible+span{outline:3px solid var(--teal)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-msg{margin:16px 0 0;font-weight:600;min-height:1.5em}
.form-msg.ok{color:#0b6b60}.form-msg.err{color:#c4243e}

/* footer */
.foot{background:var(--ink);color:var(--cream);padding:70px 0 26px;border-top:4px solid var(--yel)}
.foot-big{font:800 clamp(44px,9vw,130px)/1 var(--f-head);margin:0 0 40px;letter-spacing:-.03em}
.foot-big .hl{color:var(--ink)}
.foot-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px}
.foot-row a{display:inline-flex;align-items:center;gap:6px;text-decoration:none}

/* reveal */
.js .rv{opacity:0;transform:translateY(40px) scale(.96);transition:opacity .6s,transform .7s cubic-bezier(.3,1.5,.5,1)}
.js .rv.in{opacity:1;transform:rotate(var(--r,0deg))}

/* detail */
body.detail .nav{position:sticky;top:14px;transform:none;left:auto;margin:14px auto 0}
.d-hero{padding:60px 0 30px}
.d-hero h1{font-size:clamp(42px,6.5vw,88px);font-weight:800;max-width:1000px}
.d-meta{display:flex;gap:14px;flex-wrap:wrap}
.d-meta .fact{min-width:150px}
.d-meta .fact b{font-size:20px;line-height:1.2}
.d-meta .fact b::after{content:none}
.d-meta .fact small{display:block;opacity:.8}
.d-cover-stage{perspective:1400px;padding:20px 0 60px}
.d-cover{margin:0;border:var(--bd);border-radius:28px;overflow:hidden;box-shadow:0 10px 0 var(--ink);background:var(--white);transform:rotateX(16deg) scale(.94);transform-origin:50% 100%}
.dots{display:flex;gap:8px;padding:14px 18px;border-bottom:var(--bd)}
.dots i{width:14px;height:14px;border-radius:50%;border:2px solid var(--ink)}
.dots i:nth-child(1){background:var(--coral)}.dots i:nth-child(2){background:var(--yel)}.dots i:nth-child(3){background:var(--teal)}
.d-cover img{width:100%}
.d-body{display:grid;grid-template-columns:1fr 320px;gap:50px;align-items:start}
.prose{font-size:19px;max-width:740px}
.prose h3{font-size:34px;margin:36px 0 12px}
.prose h3:first-child{margin-top:0}
.prose ul{padding-left:0;list-style:none}
.prose li{position:relative;padding-left:32px;margin-bottom:10px}
.prose li::before{content:'';position:absolute;left:0;top:.45em;width:16px;height:16px;border:2px solid var(--ink);background:var(--teal);border-radius:4px;transform:rotate(45deg)}
.prose li:nth-child(2n)::before{background:var(--coral);border-radius:50%}
.prose strong{background:var(--yel);padding:0 5px;border-radius:5px}
.prose code{background:var(--white);border:2px solid var(--ink);border-radius:6px;padding:0 6px;font-size:.85em}
.prose a{color:var(--vio);font-weight:600}
.d-side{position:sticky;top:110px;background:var(--white);border:var(--bd);border-radius:26px;padding:24px;box-shadow:0 6px 0 var(--ink);display:flex;flex-direction:column;gap:14px}
.d-side h3{font-size:20px}
.d-tek{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.d-tek li{display:flex;align-items:center;gap:7px;border:2px solid var(--ink);border-radius:999px;padding:4px 12px 4px 8px;font-weight:600;font-size:14px}
.d-side .btn{justify-content:center}
.d-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;padding:80px 0 0}
.d-gallery figure{margin:0;border:var(--bd);border-radius:24px;overflow:hidden;box-shadow:0 6px 0 var(--ink);background:var(--white);transition:transform .3s}
.d-gallery figure:nth-child(odd){transform:rotate(-1.2deg)}.d-gallery figure:nth-child(even){transform:rotate(1.2deg);margin-top:40px}
.d-gallery figure:hover{transform:rotate(0) scale(1.02)}
.d-gallery img{width:100%;cursor:zoom-in}
.d-gallery figcaption{padding:12px 18px;border-top:var(--bd);font-weight:600}
.d-next{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:80px 0}
.d-next a{border:var(--bd);border-radius:28px;padding:30px;text-decoration:none;box-shadow:0 8px 0 var(--ink);display:flex;flex-direction:column;gap:8px;transition:transform .15s,box-shadow .15s}
.d-next a:hover{transform:translateY(-4px);box-shadow:0 12px 0 var(--ink)}
.d-next small{display:flex;align-items:center;gap:6px;font-weight:700}
.d-next b{font:800 clamp(24px,3vw,38px)/1.05 var(--f-head)}
.d-next .nx{text-align:right;align-items:flex-end}
.lightbox{position:fixed;inset:0;background:rgba(35,25,66,.92);z-index:90;display:grid;place-items:center;padding:20px}
.lightbox[hidden]{display:none}
.lightbox img{max-height:88vh;border:var(--bd);border-radius:20px}
.lightbox .btn{position:absolute;top:16px;right:16px}
.lost{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.lost h1{font-size:clamp(44px,7vw,96px);font-weight:800;margin-bottom:10px}

/* responsif */
@media (max-width:980px){
    .hero{grid-template-columns:1fr;padding-top:120px;gap:10px}
    .hero-art{height:540px;max-width:520px;width:100%;margin:0 auto}
    .about,.contact,.d-body{grid-template-columns:1fr}
    .about-pic{max-width:300px;margin:0 auto}
    .facts{grid-template-columns:repeat(2,1fr)}
    .scard{grid-template-columns:1fr;min-height:0}
    .scard-img{border-right:0;border-bottom:var(--bd);aspect-ratio:16/10}
    .scard-body{padding:24px}
    .d-side{position:static}
    .links{position:fixed;top:78px;left:12px;right:12px;flex-direction:column;background:var(--white);border:var(--bd);border-radius:26px;padding:12px;box-shadow:0 5px 0 var(--ink);display:none}
    body.menu-open .links{display:flex}
    .links a{text-align:center}
    .burger{display:inline-flex;padding:8px 12px}
    .nav .btn-acc{margin-left:auto}
}
@media (max-width:640px){
    body{font-size:16px}
    .hero-art{height:460px}
    .phone{width:200px;height:410px}
    .phone-face,.phone-side,.phone-side::before{border-radius:32px}
    .phone-face img{border-radius:24px}
    .me{width:104px;height:104px}
    .bubble{max-width:170px;padding:10px 14px}
    .shape{width:46px;height:46px}
    .nav .btn-acc{display:none}
    .burger{margin-left:auto}
    .scard{top:calc(96px + var(--i) * 8px);border-radius:24px}
    .scard h3{font-size:28px}
    .scard-body>p{font-size:16px}
    .path-line{left:0;width:60px}
    .stop,.stop.right{width:100%;margin-left:0;padding:16px 0 26px 56px}
    .stop .dot,.stop.right .dot{left:3px;right:auto;width:46px;height:46px}
    .two,.d-gallery,.d-next{grid-template-columns:1fr}
    .d-gallery figure:nth-child(even){margin-top:0}
    .d-next .nx{text-align:left;align-items:flex-start}
    .msg{max-width:100%}
    .chat-body{padding:16px}
    .keys{grid-template-columns:repeat(2,1fr);gap:12px}
    .services{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{animation:none!important;transition:none!important}
    .js .rv,.js .bouncy .ch{opacity:1;transform:none}
    .js .chat .msg{display:flex}
}
