:root{--color-primary:var(--c-jade);--color-accent:var(--c-jade-ink);--color-text:var(--c-text);--color-muted:var(--c-text-2);--color-bg:var(--c-bg);--color-surface:var(--c-surface);--color-border:var(--c-line);--font-body:InterVar,InterLocal,Inter,"Noto Sans Bengali",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--font-heading:var(--font-display);--text-sm:0.875rem;--text-base:var(--fs-body);--text-lg:1.25rem;--text-xl:1.875rem;--text-2xl:clamp(2.5rem,5vw,4.75rem);--space-xs:0.5rem;--space-sm:0.75rem;--space-md:1.25rem;--space-lg:2.25rem;--space-xl:4.5rem;--container-width:var(--container);--radius:var(--radius-m);--shadow:var(--shadow-1);--font-display:Inika,Georgia,"Times New Roman",serif;--fs-h1:clamp(2.25rem,1.4rem + 3.3vw,4rem);--fs-h2:clamp(1.9rem,1.35rem + 2.1vw,3.1rem);--fs-h3:clamp(1.15rem,1.05rem + .4vw,1.35rem);--fs-body:1.0625rem;--fs-small:.9375rem;--fs-label:.78rem;--lh-tight:1.12;--lh-body:1.65;--ls-display:.005em;--ls-label:.08em;--container:1200px;--gutter:clamp(16px,4vw,32px);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:clamp(4rem,3rem + 4vw,6.5rem);--radius-s:10px;--radius-m:16px;--radius-l:24px;--radius-pill:999px;--ease:cubic-bezier(.2,.7,.2,1);--c-bg:#f8f7f3;--c-bg-alt:#eff1ec;--c-surface:#ffffff;--c-surface-2:#f3f5f1;--c-text:#1a1d1b;--c-text-2:#545b57;--c-text-3:#757c78;--c-line:#dfe3dd;--c-line-2:#cbd2cb;--c-jade:#3cc39d;--c-jade-hi:#2fb08b;--c-jade-soft:#dcf4ea;--c-jade-ink:#0d7656;--c-accent:#0d7656;--c-accent-soft:#dcf4ea;--c-on-jade:#06231b;--c-dark-band:#10231d;--c-dark-band-text:#e8efe9;--c-dark-band-muted:#a8b8ae;--shadow-1:0 1px 2px rgba(20,32,26,.06),0 4px 14px rgba(20,32,26,.06);--shadow-2:0 2px 6px rgba(20,32,26,.06),0 18px 40px rgba(20,32,26,.10);--texture:radial-gradient(rgba(15,122,99,.07) 1px,transparent 1.2px);--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");--glass:color-mix(in srgb,var(--c-surface) 72%,transparent);} .link:has(> .link__icon) { display: inline-flex; align-items: center; gap: 0.35em; } .link__icon { --shilpi-icon-size: 1em; width: 1em; height: 1em; max-width: 1em; max-height: 1em; flex: none; color: currentColor; } .shilpi-body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}.section{padding:var(--space-xl) var(--space-md)}.shilpi-group{position:relative}.container{width:100%;max-width:var(--container-width);margin-inline:auto;min-width:0}.block{display:flex;flex-direction:column;gap:var(--space-sm);width:100%}.div{display:block}.stack{display:flex;flex-direction:column;gap:var(--space-sm)}.row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(80px,auto);gap:var(--space-md);width:100%}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.heading{font-family:var(--font-heading);font-size:var(--text-xl);line-height:1.2;margin:0}.heading-xl{font-family:var(--font-heading);font-size:var(--text-2xl);line-height:1.1;margin:0}.text{margin:0;color:var(--color-text)}.text-muted{color:var(--color-muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.75rem 1.35rem;border:1px solid transparent;border-radius:10px;background:var(--color-primary);color:#fff;font:inherit;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;box-shadow:0 8px 20px rgba(18,100,232,.18);transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.button-outline{display:inline-block;padding:0.75rem 1.5rem;border:1px solid var(--color-primary);border-radius:var(--radius);background:transparent;color:var(--color-primary);font:inherit;text-decoration:none;cursor:pointer}.card{min-width:0;padding:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow)}.image-fluid{display:block;width:100%;max-width:100%;height:auto;border-radius:var(--radius);background:var(--color-surface)}.icon{display:inline-block;width:var(--shilpi-icon-size,1.5rem);height:var(--shilpi-icon-size,1.5rem);max-width:var(--shilpi-icon-size,1.5rem);max-height:var(--shilpi-icon-size,1.5rem);flex:0 0 auto;line-height:1;vertical-align:middle}.link{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.list{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:var(--space-xs)}.prose{display:block;width:100%;max-width:none;min-width:0;min-height:0;margin:0;padding:5px;box-sizing:border-box}.prose-narrow{max-width:45ch}.prose-wide{max-width:none}.prose-lead{font-size:var(--text-lg);line-height:1.6}.prose-small{font-size:var(--text-sm);color:var(--color-muted)}.spacer{height:var(--space-lg)}.divider{height:1px;border:0;margin:var(--space-md) 0;background:var(--color-border)}.field{display:flex;flex-direction:column;gap:var(--space-xs);font-size:var(--text-sm)}.icon-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-xs)}.icon-list__item{display:flex;align-items:flex-start;gap:var(--space-xs)}.icon-list__icon{flex-shrink:0;margin-top:0.15em;color:var(--color-primary)}.icon-box{padding:var(--space-md);border-radius:var(--radius);background:var(--color-surface)}.icon-box__icon{display:inline-block;width:var(--shilpi-icon-size,2rem);height:var(--shilpi-icon-size,2rem);max-width:var(--shilpi-icon-size,2rem);max-height:var(--shilpi-icon-size,2rem);flex:0 0 auto;line-height:1;color:var(--color-primary)}.alert{padding:var(--space-sm) var(--space-md);border-left:3px solid var(--color-primary);border-radius:var(--radius);background:var(--color-surface);align-items:flex-start}.alert__icon{flex-shrink:0;color:var(--color-primary)}.accordion__item{border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.accordion__summary{padding:var(--space-sm) var(--space-md);cursor:pointer;font-weight:600;list-style:none}.accordion__body{padding:0 var(--space-md) var(--space-md)}.carousel{display:flex;gap:var(--space-sm);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:var(--space-xs)}.carousel__item{flex:0 0 min(80%,420px);margin:0;scroll-snap-align:start;border-radius:var(--radius);overflow:hidden}.quote__text{margin:0;font-size:var(--text-lg);line-height:1.5;border-left:3px solid var(--color-accent);padding-left:var(--space-md)}.quote__source{font-size:var(--text-sm)}.stat__value{margin:0;font-size:var(--text-2xl);font-weight:700;line-height:1;color:var(--color-primary)}.stat__label{margin:0;font-size:var(--text-sm)}.pricing__price{margin:0;font-size:var(--text-xl);font-weight:700}.pricing__period{font-size:var(--text-sm);font-weight:400}.profile__photo{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius)}.progress__bar{width:100%;height:0.5rem;border:0;border-radius:999px;background:var(--color-surface)}.table{width:100%;border-collapse:separate;border-spacing:0;text-align:left;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;background:var(--color-surface)}.table__head{padding:.85rem 1rem;border-bottom:1px solid var(--color-border);background:var(--color-primary);color:#fff;font-size:var(--text-sm);font-weight:700}.table__cell{padding:.85rem 1rem;border-bottom:1px solid var(--color-border)}.social__link{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--color-border);border-radius:999px;color:inherit}.dropdown__trigger{cursor:pointer;list-style:none;padding:0.4rem 0.75rem;border:1px solid var(--color-border);border-radius:var(--radius);display:inline-block}.dropdown__panel{margin-top:var(--space-xs);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);box-shadow:var(--shadow)}.back-to-top{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:999px;background:var(--color-surface);color:inherit}.embed{position:relative;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden}.embed__frame{position:absolute;inset:0;width:100%;height:100%;border:0}.audio{width:100%}.raw-html{display:block}.input{width:100%;min-height:46px;padding:.72rem .9rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);font:inherit;color:inherit;transition:border-color .18s ease,box-shadow .18s ease}.button:hover{opacity:.94;transform:translateY(-1px);box-shadow:0 12px 26px rgba(18,100,232,.24)}.button:focus-visible{outline:3px solid rgba(18,100,232,.28);outline-offset:3px}.button:active{transform:translateY(1px);box-shadow:0 4px 12px rgba(18,100,232,.18)}.button-outline:hover{background:var(--color-primary);color:#fff}.link:hover{text-decoration-thickness:2px}.accordion__summary:hover{background:var(--color-surface)}.social__link:hover{border-color:var(--color-primary);color:var(--color-primary)}.back-to-top:hover{background:var(--color-primary);color:#fff}.input:focus-visible{border-color:var(--color-primary);outline:3px solid rgba(18,100,232,.16);outline-offset:0}@media (max-width:1024px){.grid{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.section{padding:var(--space-lg) var(--space-sm)}.grid{grid-template-columns:1fr}.grid-2{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr}.heading-xl{font-size:var(--text-xl)}.spacer{height:var(--space-md)}} @font-face{font-family:InterVar;font-style:normal;font-weight:100 900;font-display:swap;src:url('/wp-content/uploads/2026/10/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD} @font-face{font-family:InterVar;font-style:normal;font-weight:100 900;font-display:swap;src:url('/wp-content/uploads/2026/10/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF} .section{padding-inline:0}.card{box-shadow:none}.field{font-size:inherit} body.shilpi-body{line-height:var(--lh-body);font-size:var(--fs-body)} :root{color-scheme:light} :root[data-theme="dark"]{ --c-bg:#0e1714;--c-bg-alt:#121e1a;--c-surface:#16241f;--c-surface-2:#1b2c26; --c-text:#eef3ef;--c-text-2:#b3c1b9;--c-text-3:#8d9c94; --c-line:#24372f;--c-line-2:#30473d; --c-jade:#3cc39d;--c-jade-hi:#5ad6b2;--c-jade-soft:#173a30;--c-jade-ink:#6fdcbc; --c-accent:#5ad6b2;--c-accent-soft:#173a30; --c-on-jade:#06231b; --c-dark-band:#0a1310;--c-dark-band-text:#eef3ef;--c-dark-band-muted:#9fb0a6; --shadow-1:0 1px 2px rgba(0,0,0,.3),0 6px 18px rgba(0,0,0,.25); --shadow-2:0 2px 6px rgba(0,0,0,.3),0 20px 44px rgba(0,0,0,.35); --texture:radial-gradient(rgba(90,214,178,.06) 1px,transparent 1.2px); color-scheme:dark; } *,*::before,*::after{box-sizing:border-box} html{scroll-behavior:smooth;-webkit-text-size-adjust:100%} body{margin:0;background:var(--c-bg);color:var(--c-text);font:400 var(--fs-body)/var(--lh-body) var(--font-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow-x:hidden} img{max-width:100%;height:auto;display:block} a{color:inherit} h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:var(--lh-tight);letter-spacing:var(--ls-display);margin:0;font-variant-ligatures:none;text-wrap:balance} h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);line-height:1.3} p{margin:0} .hl{color:var(--c-jade-ink);background:linear-gradient(transparent 70%,color-mix(in srgb,var(--c-jade) 35%,transparent) 70%);-webkit-box-decoration-break:clone;box-decoration-break:clone} .container{width:100%;max-width:calc(var(--container) + var(--gutter)*2);margin-inline:auto;padding-inline:var(--gutter)} .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap} .skip-link{position:absolute;left:-999px;top:8px;z-index:100;background:var(--c-jade);color:var(--c-on-jade);padding:8px 14px;border-radius:8px} .skip-link:focus{left:8px} :focus-visible{outline:2px solid var(--c-jade-ink);outline-offset:3px;border-radius:6px} .label{display:inline-flex;align-items:center;gap:.5rem;font:600 var(--fs-label)/1.2 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-jade-ink)} .label::before{content:"";width:22px;height:2px;border-radius:2px;background:var(--c-jade)} .btn{display:inline-flex;align-items:center;gap:.75rem;min-height:52px;padding:6px 6px 6px 24px;border-radius:var(--radius-pill);font:600 1rem/1 var(--font-body);text-decoration:none;transition:transform .25s var(--ease),background-color .25s,box-shadow .25s} .btn .btn-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--c-text);color:var(--c-bg);transition:transform .25s var(--ease)} .btn .btn-ico svg{width:16px;height:16px} .btn-primary{background:var(--c-jade);color:var(--c-on-jade);box-shadow:0 8px 22px -10px var(--c-jade-ink)} .btn-primary:hover{background:var(--c-jade-hi);transform:translateY(-2px)} .btn:hover .btn-ico{transform:rotate(-45deg)} .btn-ghost{padding:0 22px;border:1px solid var(--c-line-2);color:var(--c-text);background:transparent} .btn-ghost:hover{border-color:var(--c-jade-ink);color:var(--c-jade-ink)} .link-arrow{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--c-jade-ink);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s} .link-arrow:hover{border-color:currentColor} .site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--c-bg) 88%,transparent);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--c-line)} .header-inner{display:flex;align-items:center;gap:var(--space-3);height:76px} .brand{display:block;flex:none} .brand img{height:40px;width:auto} .logo-dark-bg{display:none} :root[data-theme="dark"] .logo-dark-bg{display:block}:root[data-theme="dark"] .logo-light-bg{display:none} .nav{display:flex;gap:4px;margin-left:auto} .nav a{padding:8px 12px;border-radius:8px;font-size:.95rem;font-weight:500;color:var(--c-text-2);text-decoration:none;transition:color .2s,background-color .2s} .nav a:hover{color:var(--c-text);background:var(--c-surface-2)} .nav a[aria-current="page"]{color:var(--c-accent)} .header-actions{display:flex;align-items:center;gap:10px} .icon-btn{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--c-line-2);background:transparent;color:var(--c-text);cursor:pointer} .icon-btn svg{width:18px;height:18px} .icon-sun{display:none}:root[data-theme="dark"] .icon-sun{display:block}:root[data-theme="dark"] .icon-moon{display:none} .header-cta{min-height:44px;padding:4px 4px 4px 18px;font-size:.92rem} .header-cta .btn-ico{width:36px;height:36px} .menu-btn{display:none} .menu-btn span{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;position:relative} .menu-btn span::before,.menu-btn span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .25s} .menu-btn span::before{top:-6px}.menu-btn span::after{top:6px} .menu-btn[aria-expanded="true"] span{background:transparent} .menu-btn[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)} .menu-btn[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)} .hero{position:relative;padding:clamp(2.5rem,1.5rem + 4vw,5rem) 0 0;overflow:hidden} .hero::before{content:"";position:absolute;inset:0;background-image:var(--texture);background-size:22px 22px;mask-image:linear-gradient(180deg,#000 0,transparent 75%);-webkit-mask-image:linear-gradient(180deg,#000 0,transparent 75%);pointer-events:none} .hero-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(2rem,4vw,4.5rem);align-items:end} .hero-copy{padding-bottom:clamp(2.5rem,4vw,4.5rem)} .hero h1{margin-top:var(--space-3)} .hero-lead{margin-top:var(--space-3);max-width:36rem;font-size:1.125rem;color:var(--c-text-2)} .hero-lead a{color:var(--c-jade-ink);font-weight:600;text-decoration-thickness:1px;text-underline-offset:3px} .hero-services{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;gap:var(--space-2);max-width:36rem} .hero-services li{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start} .hero-services .ico{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--c-surface);border:1px solid var(--c-line);color:var(--c-jade-ink)} .hero-services .ico svg{width:20px;height:20px} .hero-services strong{display:block;font-size:1rem;font-weight:600;color:var(--c-text)} .hero-services span{display:block;font-size:var(--fs-small);color:var(--c-text-2);line-height:1.55} .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-4)} .hero-photo{position:relative;align-self:end;margin:0} .hero-photo .photo{position:relative;border-radius:var(--radius-l) var(--radius-l) 0 0;overflow:hidden;background:#d9dcdb;aspect-ratio:4/4.6} .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 18%} .hero-photo figcaption{position:absolute;left:clamp(-1.5rem,-2vw,-.5rem);bottom:clamp(1.5rem,3vw,2.5rem);display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line);box-shadow:var(--shadow-2);max-width:calc(100% - 1rem)} .hero-photo figcaption .dot{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--c-jade-soft);color:var(--c-jade-ink)} .hero-photo figcaption .dot svg{width:18px;height:18px} .hero-photo figcaption strong{display:block;font-size:.95rem;line-height:1.25} .hero-photo figcaption small{display:block;font-size:.82rem;color:var(--c-text-2);line-height:1.35} .proof{border-block:1px solid var(--c-line);background:var(--c-surface)} .proof-grid{display:grid;grid-template-columns:repeat(4,1fr)} .proof-item{padding:var(--space-4) var(--space-3);border-left:1px solid var(--c-line)} .proof-item:first-child{border-left:0;padding-left:0} .proof-item strong{display:block;font:700 clamp(1.8rem,1.4rem + 1.2vw,2.5rem)/1 var(--font-display);color:var(--c-text)} .proof-item strong .plus{color:var(--c-accent)} .proof-item>span{display:block;margin-top:8px;font-size:var(--fs-small);color:var(--c-text-2)} .section{padding-block:var(--space-6)} .section-alt{background:var(--c-bg-alt)} .section-head{display:grid;grid-template-columns:1fr minmax(0,26rem);gap:var(--space-3) var(--space-5);align-items:end;margin-bottom:var(--space-5)} .section-head h2{margin-top:var(--space-2)} .section-head p{color:var(--c-text-2)} .section-head.center{grid-template-columns:1fr;text-align:center;justify-items:center} .section-head.center p{max-width:36rem} .services{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)} .service{position:relative;display:flex;flex-direction:column;gap:12px;padding:var(--space-4);border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line);text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s} .service:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--c-line-2)} .service .ico{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--c-jade-soft);color:var(--c-jade-ink);margin-bottom:6px} .service .ico svg{width:22px;height:22px} .service p{color:var(--c-text-2);font-size:var(--fs-small)} .service .more{margin-top:auto;padding-top:10px;font-size:.9rem;font-weight:600;color:var(--c-jade-ink)} .service.featured{background:var(--c-dark-band);border-color:transparent;color:var(--c-dark-band-text)} .service.featured p{color:var(--c-dark-band-muted)} .service.featured .ico{background:rgba(90,214,178,.14);color:#5ad6b2} .service.featured .more{color:#5ad6b2} .service .tag{position:absolute;top:var(--space-3);right:var(--space-3);font:600 .7rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;padding:6px 10px;border-radius:var(--radius-pill);background:#3cc39d;color:#06231b} .work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)} .work-card{display:block;text-decoration:none;min-width:0} .browser{border-radius:var(--radius-m);overflow:hidden;background:var(--c-surface);border:1px solid var(--c-line);box-shadow:var(--shadow-1);transition:transform .35s var(--ease),box-shadow .35s} .browser-bar{display:flex;align-items:center;gap:12px;height:38px;padding:0 14px;border-bottom:1px solid var(--c-line);background:var(--c-surface-2)} .browser-bar i{width:9px;height:9px;border-radius:50%;background:var(--c-line-2);display:inline-block;margin-right:5px} .browser-bar i:first-child{background:#ef6a5e}.browser-bar i:nth-child(2){background:#f4bf4f}.browser-bar i:nth-child(3){background:#61c454} .browser-url{flex:1;min-width:0;max-width:260px;margin-inline:auto;padding:4px 12px;border-radius:var(--radius-pill);background:var(--c-surface);border:1px solid var(--c-line);font-size:.75rem;color:var(--c-text-3);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} .browser-view{aspect-ratio:16/10;overflow:hidden;background:var(--c-surface-2)} .browser-view img{width:100%;height:100%;object-fit:cover;object-position:50% 0;transition:transform .6s var(--ease)} .work-card:hover .browser{transform:translateY(-4px);box-shadow:var(--shadow-2)} .work-card:hover .browser-view img{transform:scale(1.03)} .work-meta{display:flex;justify-content:space-between;gap:var(--space-2);align-items:start;margin-top:var(--space-3)} .work-meta h3{display:flex;align-items:center;gap:8px} .work-meta p{margin-top:4px;color:var(--c-text-2);font-size:var(--fs-small)} .work-meta .cat{flex:none;font:600 .72rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-jade-ink);padding:7px 10px;border-radius:var(--radius-pill);background:var(--c-jade-soft);white-space:nowrap} .work-meta h3 svg{width:16px;height:16px;color:var(--c-accent);transition:transform .25s var(--ease)} .work-card:hover .work-meta h3 svg{transform:translate(2px,-2px)} .work-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-top:var(--space-5)} .shilpi:not(body){background:var(--c-dark-band);color:var(--c-dark-band-text);position:relative;overflow:hidden} .shilpi:not(body)::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(90,214,178,.08) 1px,transparent 1.2px);background-size:22px 22px;pointer-events:none} .shilpi:not(body) .container{position:relative} .shilpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:center} .shilpi:not(body) .label{color:#5ad6b2} .shilpi:not(body) h2{margin-top:var(--space-2)} .shilpi:not(body) h2 .hl{color:#5ad6b2;background:linear-gradient(transparent 70%,rgba(60,195,157,.28) 70%)} .shilpi-copy>p{margin-top:var(--space-3);color:var(--c-dark-band-muted);max-width:34rem} .shilpi-points{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;gap:var(--space-2)} .shilpi-points li{display:grid;grid-template-columns:28px 1fr;gap:12px;color:var(--c-dark-band-text)} .shilpi-points li svg{width:20px;height:20px;margin-top:4px;color:#5ad6b2} .shilpi-points small{display:block;color:var(--c-dark-band-muted);font-size:var(--fs-small)} .shilpi:not(body) .hero-actions .btn-ghost{color:var(--c-dark-band-text);border-color:rgba(255,255,255,.22)} .shilpi:not(body) .hero-actions .btn-ghost:hover{border-color:#5ad6b2;color:#5ad6b2} .shilpi:not(body) .btn-primary{background:#3cc39d;color:#06231b} .shilpi:not(body) .btn-primary:hover{background:#5ad6b2} .shilpi:not(body) .btn .btn-ico{background:#06231b;color:#e8efe9} .shilpi-shot{border-radius:var(--radius-m);overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 30px 60px -20px rgba(0,0,0,.6);background:#0f1c18} .shilpi-shot .browser-bar{background:#15241f;border-color:rgba(255,255,255,.08)} .shilpi-shot .browser-url{background:#0f1c18;border-color:rgba(255,255,255,.08);color:#8d9c94} .shilpi-shot img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:50% 0} .products{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)} .product{display:flex;flex-direction:column;gap:10px;padding:var(--space-4);border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line)} .product .kind{font:600 .72rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-text-3)} .product p{color:var(--c-text-2);font-size:var(--fs-small)} .product .links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:auto;padding-top:12px} .tools{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-top:var(--space-3)} .tool{display:flex;gap:14px;align-items:center;padding:18px 20px;border-radius:var(--radius-m);border:1px dashed var(--c-line-2);text-decoration:none;transition:border-color .2s,background-color .2s} .tool:hover{border-color:var(--c-jade-ink);background:var(--c-surface)} .tool .ico{flex:none;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:var(--c-jade-soft);color:var(--c-jade-ink)} .tool .ico svg{width:18px;height:18px} .tool strong{display:block;font-size:.98rem} .tool small{display:block;color:var(--c-text-2);font-size:.86rem;line-height:1.45} .about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--space-5);align-items:center} .about-photo{margin:0;border-radius:var(--radius-l);overflow:hidden;aspect-ratio:4/4.4;background:var(--c-surface-2)} .about-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%} .about-copy h2{margin-top:var(--space-2)} .about-copy p{margin-top:var(--space-3);color:var(--c-text-2)} .about-copy p strong{color:var(--c-text)} .checks{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:10px} .checks li{display:flex;gap:10px;font-weight:500} .checks svg{flex:none;width:18px;height:18px;margin-top:4px;color:var(--c-accent)} .about-copy .hero-actions{margin-top:var(--space-4)} .reviews{position:relative;max-width:820px;margin-inline:auto} .reviews-track{display:grid;overflow:hidden} .review{grid-area:1/1;padding:clamp(1.5rem,1rem + 2.5vw,3rem);border-radius:var(--radius-l);background:var(--c-surface);border:1px solid var(--c-line);box-shadow:var(--shadow-1);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .45s var(--ease),transform .45s var(--ease),visibility 0s .45s} .review.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .45s var(--ease),transform .45s var(--ease)} .review .stars{display:flex;gap:3px;color:#f2a93b} .review .stars svg{width:18px;height:18px} .review blockquote{margin:var(--space-3) 0 0;font:400 clamp(1.15rem,1rem + .6vw,1.45rem)/1.5 var(--font-display);color:var(--c-text)} .review footer{display:flex;align-items:center;gap:12px;margin-top:var(--space-4)} .review .avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--c-jade-soft);color:var(--c-jade-ink);font-weight:700} .review footer strong{display:block} .review footer span{display:block;font-size:.88rem;color:var(--c-text-2)} .reviews-nav{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-3)} .reviews-dots{display:flex;gap:8px} .reviews-dots button{width:10px;height:10px;padding:0;border-radius:50%;border:0;background:var(--c-line-2);cursor:pointer;transition:width .3s var(--ease),background-color .3s} .reviews-dots button[aria-current="true"]{width:28px;border-radius:6px;background:var(--c-jade)} .reviews-note{margin-top:var(--space-2);text-align:center;font-size:.85rem;color:var(--c-text-3)} .cta-box{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--space-5);padding:clamp(2rem,1rem + 4vw,4rem);border-radius:var(--radius-l);background:var(--c-jade-soft);border:1px solid color-mix(in srgb,var(--c-jade) 22%,transparent);align-items:center} .cta-box h2{margin-top:var(--space-2)} .cta-box p{margin-top:var(--space-2);color:var(--c-text-2)} .cta-choices{display:grid;gap:10px} .cta-choices a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-radius:var(--radius-s);background:var(--c-surface);border:1px solid var(--c-line);font-weight:600;text-decoration:none;transition:border-color .2s,transform .25s var(--ease)} .cta-choices a:hover{border-color:var(--c-jade-ink);transform:translateX(4px)} .cta-choices a svg{width:16px;height:16px;color:var(--c-jade-ink);flex:none} .cta-mail{margin-top:var(--space-2);font-size:var(--fs-small);color:var(--c-text-2)} .cta-mail a{color:var(--c-jade-ink);font-weight:600} .site-footer{margin-top:var(--space-6);border-top:1px solid var(--c-line);background:var(--c-surface)} .footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:var(--space-4);padding-block:var(--space-5)} .footer-grid p{margin-top:var(--space-2);color:var(--c-text-2);font-size:var(--fs-small);max-width:20rem} .footer-grid h3{font:600 var(--fs-label)/1.2 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-text-3);margin-bottom:var(--space-2)} .footer-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:8px} .footer-grid ul a{color:var(--c-text-2);text-decoration:none;font-size:var(--fs-small)} .footer-grid ul a:hover{color:var(--c-jade-ink)} .footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2);padding-block:var(--space-3);border-top:1px solid var(--c-line);font-size:.86rem;color:var(--c-text-3)} .footer-bottom a{color:inherit} .js-reveal .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)} .js-reveal .reveal.is-in{opacity:1;transform:none} @media (max-width:1080px){ .nav{display:none;position:absolute;top:76px;left:0;right:0;flex-direction:column;gap:0;padding:12px var(--gutter) 20px;background:var(--c-bg);border-bottom:1px solid var(--c-line);box-shadow:var(--shadow-2)} .nav.is-open{display:flex} .nav a{padding:12px 4px;font-size:1rem;border-bottom:1px solid var(--c-line);border-radius:0} .menu-btn{display:grid} .header-actions{margin-left:auto} .services,.products,.tools{grid-template-columns:repeat(2,1fr)} } @media (max-width:900px){ .hero-grid{grid-template-columns:1fr;gap:var(--space-4)} .hero-copy{padding-bottom:0} .hero-photo{max-width:520px;width:100%;margin-inline:auto} .hero-photo figcaption{left:12px} .proof-grid{grid-template-columns:repeat(2,1fr)} .proof-item{padding:var(--space-3) var(--space-2)} .proof-item:nth-child(3){border-left:0;padding-left:0} .proof-item:nth-child(n+3){border-top:1px solid var(--c-line)} .section-head{grid-template-columns:1fr} .shilpi-grid,.about-grid,.cta-box{grid-template-columns:1fr} .about-photo{max-width:520px} .footer-grid{grid-template-columns:1fr 1fr} } @media (max-width:640px){ .header-cta{display:none} .brand img{height:34px} .services,.products,.tools,.work-grid{grid-template-columns:1fr} .work-meta{flex-direction:column;gap:8px} .work-meta .cat{order:-1} .btn{width:100%;justify-content:space-between} .hero-actions .btn-ghost{justify-content:center} .footer-grid{grid-template-columns:1fr} } @media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important} .js-reveal .reveal{opacity:1;transform:none} } body::after{content:"";position:fixed;inset:0;z-index:90;pointer-events:none;background-image:var(--grain);opacity:.035;mix-blend-mode:multiply} :root[data-theme="dark"] body::after{mix-blend-mode:screen;opacity:.04} .progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;transform-origin:0 50%;transform:scaleX(var(--p,0));background:linear-gradient(90deg,#3cc39d,#8fe6cb)} .hero-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none} .hero::before{display:none} .hero-canvas{position:absolute;inset:0;width:100%;height:100%} .aurora{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform} .aurora.a1{width:46vw;height:46vw;max-width:680px;max-height:680px;right:-8vw;top:-18vw;background:radial-gradient(circle,rgba(60,195,157,.55),transparent 65%);animation:drift1 22s ease-in-out infinite alternate} .aurora.a2{width:36vw;height:36vw;max-width:520px;max-height:520px;left:-10vw;bottom:-14vw;background:radial-gradient(circle,rgba(143,230,203,.45),transparent 65%);animation:drift2 26s ease-in-out infinite alternate} .aurora.a3{width:22vw;height:22vw;max-width:340px;max-height:340px;left:42%;top:10%;background:radial-gradient(circle,rgba(60,195,157,.28),transparent 65%);animation:drift3 18s ease-in-out infinite alternate} :root[data-theme="dark"] .aurora{opacity:.38} @keyframes drift1{to{transform:translate(-6vw,8vw) scale(1.12)}} @keyframes drift2{to{transform:translate(8vw,-6vw) scale(1.18)}} @keyframes drift3{to{transform:translate(-10vw,12vw) scale(.85)}} .hero-grid,.hero .container{position:relative} .chip{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:var(--glass);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border:1px solid color-mix(in srgb,var(--c-line-2) 70%,transparent);box-shadow:var(--shadow-2);font-size:.82rem;font-weight:600;color:var(--c-text);white-space:nowrap;animation:float 7s ease-in-out infinite} .chip .cdot{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--c-jade-soft);color:var(--c-jade-ink)} .chip .cdot svg{width:15px;height:15px} .chip small{display:block;font-weight:500;color:var(--c-text-3);font-size:.72rem} .chip-code{top:12%;right:-6%;flex-direction:column;align-items:flex-start;gap:6px;font:500 .74rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;padding:12px 14px;animation-delay:-2s} .chip-code .ln{display:block;color:var(--c-text-2)} .chip-code .k{color:var(--c-jade-ink);font-weight:700} .chip-code .caret{display:inline-block;width:7px;height:13px;margin-left:2px;vertical-align:-2px;background:#3cc39d;animation:blink 1s steps(1) infinite} .chip-lang{top:46%;right:-9%;animation-delay:-4s} .chip-lang .langs{display:flex;gap:4px} .chip-lang .langs b{padding:3px 6px;border-radius:6px;background:var(--c-surface-2);font-size:.7rem;color:var(--c-text-2)} .chip-lang .langs b.on{background:#3cc39d;color:#06231b} .chip-edit{top:26%;left:-10%;animation-delay:-1s} @keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}} @keyframes blink{50%{opacity:0}} .hero-photo .photo::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);pointer-events:none} .hero-photo .ring{position:absolute;inset:-14px -14px 0 -14px;border-radius:calc(var(--radius-l) + 14px) calc(var(--radius-l) + 14px) 0 0;border:1px solid color-mix(in srgb,#3cc39d 45%,transparent);border-bottom:0;pointer-events:none;mask-image:linear-gradient(180deg,#000 30%,transparent);-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent)} .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em} .w>span{display:inline-block} .anim .hero .label{animation:fadeUp .8s var(--ease) .05s both} .anim .hero .w>span{animation:wordUp 1s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(.15s + var(--i) * .055s)} .hero h1 .hl{background-size:0% 100%;background-repeat:no-repeat} .anim .hero h1 .hl{animation:marker 1s cubic-bezier(.65,0,.35,1) 1.05s forwards} @keyframes marker{to{background-size:100% 100%}} html:not(.anim) .hero h1 .hl{background-size:100% 100%} .anim .hero-lead{animation:fadeUp .9s var(--ease) .75s both} .anim .hero-services li{animation:fadeUp .8s var(--ease) both;animation-delay:calc(.95s + var(--i) * .1s)} .anim .hero-actions{animation:fadeUp .8s var(--ease) 1.3s both} .anim .hero-photo .photo{animation:clipUp 1.3s cubic-bezier(.77,0,.18,1) .3s both} .anim .hero-photo .photo img{animation:zoomOut 1.8s cubic-bezier(.16,1,.3,1) .3s both} .anim .hero-photo .ring{animation:fadeIn 1.2s ease 1.2s both} .anim .hero-photo figcaption{animation:popIn .8s cubic-bezier(.34,1.56,.64,1) 1.35s both} .anim .chip{animation:popIn .8s cubic-bezier(.34,1.56,.64,1) both,float 7s ease-in-out infinite;animation-delay:calc(1.5s + var(--i) * .15s),calc(2.3s + var(--i) * .7s)} .anim .proof-item{animation:fadeUp .8s var(--ease) both;animation-delay:calc(1.4s + var(--i) * .08s)} @keyframes wordUp{from{transform:translateY(105%) rotate(4deg)}to{transform:none}} @keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}} @keyframes fadeIn{from{opacity:0}to{opacity:1}} @keyframes clipUp{from{clip-path:inset(100% 0 0 0 round var(--radius-l))}to{clip-path:inset(0 0 0 0 round var(--radius-l) var(--radius-l) 0 0)}} @keyframes zoomOut{from{transform:scale(1.18)}to{transform:none}} @keyframes popIn{from{opacity:0;transform:translateY(14px) scale(.92)}to{opacity:1;transform:none}} .js-reveal .reveal{opacity:0;transform:translateY(28px);filter:blur(6px);transition:opacity .9s var(--ease),transform .9s cubic-bezier(.16,1,.3,1),filter .9s var(--ease);transition-delay:calc(var(--d,0) * 90ms)} .js-reveal .reveal.is-in{opacity:1;transform:none;filter:none} .marquee{position:relative;overflow:hidden;padding:22px 0;border-bottom:1px solid var(--c-line);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)} .marquee-track{display:flex;width:max-content;animation:scrollX 40s linear infinite} .marquee:hover .marquee-track{animation-play-state:paused} .marquee-track span{display:flex;align-items:center;gap:22px;padding-right:22px;font:700 clamp(1.1rem,.9rem + .8vw,1.6rem)/1 var(--font-display);color:var(--c-text-3);white-space:nowrap} .marquee-track span::after{content:"";width:8px;height:8px;border-radius:2px;transform:rotate(45deg);background:#3cc39d} @keyframes scrollX{to{transform:translateX(-50%)}} .section-alt{position:relative;overflow:hidden;isolation:isolate} .section-alt::before{content:"";position:absolute;z-index:-1;width:60vw;height:60vw;max-width:900px;max-height:900px;right:-20vw;top:-20vw;border-radius:50%;background:radial-gradient(circle,rgba(60,195,157,.16),transparent 62%);animation:drift1 30s ease-in-out infinite alternate} .section-alt::after{content:"";position:absolute;z-index:-1;width:50vw;height:50vw;max-width:760px;max-height:760px;left:-18vw;bottom:-22vw;border-radius:50%;background:radial-gradient(circle,rgba(143,230,203,.14),transparent 62%);animation:drift2 34s ease-in-out infinite alternate} .shilpi-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none} .shilpi:not(body)::before{z-index:0} .shilpi:not(body)::after{content:"";position:absolute;width:700px;height:700px;left:50%;top:50%;transform:translate(-10%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(60,195,157,.22),transparent 60%);filter:blur(20px);animation:pulse 9s ease-in-out infinite;pointer-events:none} @keyframes pulse{50%{opacity:.55;transform:translate(-10%,-50%) scale(1.12)}} .shilpi-shot{position:relative;z-index:1;transform:perspective(1400px) rotateY(-8deg) rotateX(4deg);transition:transform .8s cubic-bezier(.16,1,.3,1),opacity .9s ease,filter .9s ease} .shilpi-shot:hover{transform:perspective(1400px) rotateY(0) rotateX(0)} .shilpi-shot::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.14) 50%,transparent 65%);background-size:250% 100%;animation:sheen 6s ease-in-out infinite;pointer-events:none} @keyframes sheen{0%,60%{background-position:120% 0}100%{background-position:-120% 0}} .service,.product,.tool,.review-card{--mx:50%;--my:50%} .service::after,.product::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(60,195,157,.16),transparent 45%)} .service:hover::after,.product:hover::after{opacity:1} .product{position:relative;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s} .product:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--c-line-2)} .service .ico,.product .kind{transition:transform .4s cubic-bezier(.34,1.56,.64,1)} .service:hover .ico{transform:rotate(-8deg) scale(1.08)} .work-card .browser{transform:perspective(1000px) rotateX(var(--rx,0)) rotateY(var(--ry,0));will-change:transform} .work-card:hover .browser{transform:perspective(1000px) rotateX(var(--rx,0)) rotateY(var(--ry,0)) translateY(-6px)} .browser-view{position:relative;container-type:size} .browser-view img{position:absolute;inset:0 0 auto 0;height:auto;min-height:100%;object-fit:cover;transition:transform 4s cubic-bezier(.45,0,.25,1)} .work-card:hover .browser-view img{transform:translateY(calc(-100% + 100cqh))} .browser-bar .browser-url::before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#3cc39d;vertical-align:1px} .btn-primary{position:relative;overflow:hidden;transform:translate(var(--bx,0),var(--by,0))} .btn-primary::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--ease)} .btn-primary:hover::before{transform:translateX(120%)} .btn-primary:hover{transform:translate(var(--bx,0),calc(var(--by,0) - 2px))} .reviews-wall{display:grid;gap:var(--space-3);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)} .rw-row{overflow:hidden} .rw-track{display:flex;gap:var(--space-3);width:max-content;animation:scrollX 60s linear infinite} .rw-row.reverse .rw-track{animation-direction:reverse;animation-duration:70s} .reviews-wall:hover .rw-track{animation-play-state:paused} .review-card{position:relative;width:min(380px,80vw);flex:none;display:flex;flex-direction:column;gap:14px;padding:26px;border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line);box-shadow:var(--shadow-1);transition:border-color .3s,transform .3s var(--ease)} .review-card:hover{border-color:#3cc39d;transform:translateY(-4px)} .review-card .stars{display:flex;gap:2px;color:#f2b33d} .review-card .stars svg{width:16px;height:16px} .review-card blockquote{margin:0;font:400 1.05rem/1.55 var(--font-display);color:var(--c-text)} .review-card footer{display:flex;align-items:center;gap:12px;margin-top:auto} .review-card .avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:700;color:#06231b;background:linear-gradient(135deg,#3cc39d,#8fe6cb)} .review-card footer strong{display:block;font-size:.95rem} .review-card footer span{display:block;font-size:.84rem;color:var(--c-text-2)} .review-card .verified{position:absolute;top:22px;right:22px;font:600 .68rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-jade-ink)} .review-card .sample{position:absolute;top:20px;right:20px;font:600 .66rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;padding:5px 8px;border-radius:var(--radius-pill);border:1px dashed var(--c-line-2);color:var(--c-text-3)} .reviews-summary{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 18px;margin-top:var(--space-2);color:var(--c-text-2);font-size:var(--fs-small)} .reviews-summary .stars{display:flex;gap:2px;color:#f2b33d}.reviews-summary .stars svg{width:16px;height:16px} @property --ang{syntax:"<angle>";initial-value:0deg;inherits:false} .cta-box{position:relative;isolation:isolate;border:0} .cta-box::before{content:"";position:absolute;inset:0;z-index:-1;padding:1.5px;border-radius:inherit;background:conic-gradient(from var(--ang),transparent 0 60%,#3cc39d 75%,#8fe6cb 82%,transparent 92%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 6s linear infinite} .cta-box::after{content:"";position:absolute;inset:0;z-index:-2;border-radius:inherit;background:radial-gradient(600px circle at 85% 20%,rgba(60,195,157,.25),transparent 55%)} @keyframes spin{to{--ang:360deg}} .footer-mark{overflow:hidden;padding-top:var(--space-3);font:700 clamp(4rem,2rem + 13vw,13rem)/.8 var(--font-display);letter-spacing:.01em;text-align:center;color:transparent;-webkit-text-stroke:1px color-mix(in srgb,#3cc39d 45%,transparent);background:linear-gradient(180deg,color-mix(in srgb,#3cc39d 16%,transparent),transparent 85%);-webkit-background-clip:text;background-clip:text;user-select:none;max-height:.62em} @media (max-width:1180px){.chip-code{right:-2%}.chip-lang{right:-3%}.chip-edit{left:-4%}} @media (max-width:900px){.chip-edit{left:6px}.chip-code{right:6px}.chip-lang{right:6px}.shilpi-shot{transform:none}} @media (max-width:640px){.chip-code{display:none}.chip{font-size:.75rem;padding:8px 10px}} @media (prefers-reduced-motion:reduce){ .aurora,.chip,.marquee-track,.rw-track,.cta-box::before,.shilpi:not(body)::after,.shilpi-shot::after,.section-alt::before,.section-alt::after{animation:none!important} .js-reveal .reveal{filter:none} .work-card:hover .browser-view img{transform:none} .rw-row{overflow-x:auto} } .shilpi:not(body)::after{z-index:0}.shilpi:not(body) .container{z-index:1} .page-hero{padding:clamp(3rem,2rem + 5vw,6.5rem) 0 clamp(3rem,2rem + 4vw,5.5rem);border-bottom:1px solid var(--c-line)} .page-hero-grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:var(--space-3) var(--space-5);align-items:end} .page-hero h1{margin-top:var(--space-3)} .page-hero-side p{color:var(--c-text-2);font-size:1.125rem} .page-hero-side .hero-actions{margin-top:var(--space-3)} .anim .page-hero-side{animation:fadeUp .9s var(--ease) .7s both} .crumbs{display:flex;gap:8px;font-size:.85rem;color:var(--c-text-3)} .crumbs a{color:var(--c-text-2);text-decoration:none}.crumbs a:hover{color:var(--c-jade-ink)} .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)} .grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)} .card{position:relative;display:flex;flex-direction:column;gap:10px;padding:var(--space-4);border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line);transition:transform .3s var(--ease),box-shadow .3s,border-color .3s;--mx:50%;--my:50%} .card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(60,195,157,.16),transparent 45%)} .card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--c-line-2)}.card:hover::after{opacity:1} .card .num{font:600 .74rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-jade-ink)} .card .ico{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:var(--c-jade-soft);color:var(--c-jade-ink);margin-bottom:4px} .card .ico svg{width:22px;height:22px} .card p{color:var(--c-text-2);font-size:var(--fs-small)} .card .links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:auto;padding-top:10px} .split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:center} .split-copy h2{margin-top:var(--space-2)} .split-copy>p{margin-top:var(--space-3);color:var(--c-text-2)} .split-copy .checks{margin-top:var(--space-3)} .split-copy .hero-actions{margin-top:var(--space-4)} .media-frame{border-radius:var(--radius-l);overflow:hidden;border:1px solid var(--c-line);box-shadow:var(--shadow-2);background:var(--c-surface-2)} .media-frame img{width:100%;height:100%;object-fit:cover} .steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);position:relative} .steps::before{content:"";position:absolute;top:27px;left:6%;right:6%;height:1px;background:linear-gradient(90deg,transparent,var(--c-line-2) 10%,var(--c-line-2) 90%,transparent)} .step{position:relative;padding-top:4px} .step .dot{position:relative;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--c-bg);border:1px solid var(--c-line-2);font:700 1.1rem/1 var(--font-display);color:var(--c-jade-ink);margin-bottom:var(--space-3);transition:background-color .3s,color .3s,border-color .3s} .step:hover .dot{background:#3cc39d;border-color:#3cc39d;color:#06231b} .step p{margin-top:8px;color:var(--c-text-2);font-size:var(--fs-small)} .note-box{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-top:var(--space-4)} .note-box>div{padding:var(--space-4);border-radius:var(--radius-m);border:1px dashed var(--c-line-2)} .note-box p{margin-top:8px;color:var(--c-text-2);font-size:var(--fs-small)} .note-box .link-arrow{margin-top:12px} .small-note{margin-top:var(--space-3);font-size:.88rem;color:var(--c-text-3);text-align:center} .facts{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)} .fact{padding:var(--space-4);border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line)} .fact strong{display:block;font:700 clamp(2rem,1.5rem + 1.5vw,3rem)/1 var(--font-display)} .fact>span{display:block;margin-top:10px;color:var(--c-text-2);font-size:var(--fs-small)} .page-cta{padding-block:0 var(--space-6)} .band{background:var(--c-dark-band);color:var(--c-dark-band-text);position:relative;overflow:hidden} .band .label{color:#5ad6b2} .band h2 .hl{color:#5ad6b2;background:linear-gradient(transparent 70%,rgba(60,195,157,.28) 70%)} .band p{color:var(--c-dark-band-muted)} .band .container{position:relative;z-index:1} .band .btn-primary{background:#3cc39d;color:#06231b} .band .btn .btn-ico{background:#06231b;color:#e8efe9} .band .btn-ghost{color:var(--c-dark-band-text);border-color:rgba(255,255,255,.22)} .band .link-arrow{color:#5ad6b2} .mock{border-radius:var(--radius-l);overflow:hidden;border:1px solid var(--c-line);background:var(--c-surface);box-shadow:var(--shadow-2)} .mock-body{display:grid;grid-template-columns:120px 1fr;min-height:320px} .mock-tools{padding:16px;border-right:1px solid var(--c-line);background:var(--c-surface-2);display:grid;align-content:start;gap:10px} .mock-tools span{font:600 .64rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-text-3)} .mock-tools b{display:block;height:26px;border-radius:6px;background:var(--c-surface);border:1px solid var(--c-line)} .mock-tools b.on{border-color:#3cc39d;box-shadow:0 0 0 3px color-mix(in srgb,#3cc39d 25%,transparent)} .mock-site{padding:22px;display:grid;gap:14px;align-content:start} .mock-nav{display:flex;justify-content:space-between;font:700 .7rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-text-2)} .mock-hero{position:relative;padding:22px;border-radius:12px;background:linear-gradient(135deg,var(--c-jade-soft),transparent);outline:1.5px dashed #3cc39d;outline-offset:4px} .mock-hero small{font:600 .62rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-jade-ink)} .mock-hero strong{display:block;margin-top:8px;font:700 1.35rem/1.2 var(--font-display)} .mock-hero .handle{position:absolute;top:-12px;right:12px;padding:4px 8px;border-radius:6px;background:#3cc39d;color:#06231b;font:700 .62rem/1 var(--font-body);letter-spacing:.06em} .mock-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px} .mock-blocks i{height:64px;border-radius:10px;background:var(--c-surface-2);border:1px solid var(--c-line)} .anim .mock-blocks i{animation:shimmer 3.2s ease-in-out infinite} .mock-blocks i:nth-child(2){animation-delay:.4s}.mock-blocks i:nth-child(3){animation-delay:.8s} @keyframes shimmer{50%{background:var(--c-jade-soft);border-color:color-mix(in srgb,#3cc39d 40%,transparent)}} .mock-foot{display:flex;gap:18px;padding:12px 18px;border-top:1px solid var(--c-line);font:600 .66rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-text-3)} .mock-foot span::before{content:"● ";color:#3cc39d} .contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--space-5);align-items:start} .contact-aside h1{margin-top:var(--space-3)} .contact-aside>p{margin-top:var(--space-3);color:var(--c-text-2);font-size:1.1rem} .contact-aside .checks{margin-top:var(--space-4)} .mail-card{display:flex;align-items:center;gap:14px;margin-top:var(--space-4);padding:18px 20px;border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line);text-decoration:none;transition:border-color .2s} .mail-card:hover{border-color:#3cc39d} .mail-card .ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--c-jade-soft);color:var(--c-jade-ink)} .mail-card .ico svg{width:20px;height:20px} .mail-card small{display:block;color:var(--c-text-3);font-size:.8rem} .mail-card strong{display:block} .form-card{position:relative;isolation:isolate;padding:clamp(1.5rem,1rem + 2vw,2.5rem);border-radius:var(--radius-l);background:var(--c-surface);box-shadow:var(--shadow-2)} .form-card::before{content:"";position:absolute;inset:0;z-index:-1;padding:1.5px;border-radius:inherit;background:conic-gradient(from var(--ang),var(--c-line) 0 60%,#3cc39d 75%,#8fe6cb 82%,var(--c-line) 92%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:spin 8s linear infinite} .form-card h2{font-size:clamp(1.5rem,1.2rem + 1vw,2rem)} .form-card>p{margin-top:8px;color:var(--c-text-2);font-size:var(--fs-small)} .form{display:grid;gap:18px;margin-top:var(--space-4)} .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px} .field{display:grid;gap:8px} .field label{font-size:.9rem;font-weight:600} .field label .req{color:var(--c-jade-ink)} .field label .opt{font-weight:500;color:var(--c-text-3);font-size:.8rem;margin-left:6px} .field input,.field select,.field textarea{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--c-line-2);background:var(--c-bg);color:var(--c-text);font:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s} .field textarea{resize:vertical;min-height:140px} .field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:#3cc39d;box-shadow:0 0 0 4px color-mix(in srgb,#3cc39d 22%,transparent)} .form .btn{border:0;cursor:pointer;justify-self:start} .form-status{font-size:.9rem;color:var(--c-jade-ink)} .form-note{font-size:.82rem;color:var(--c-text-3)} @media (max-width:900px){ .page-hero-grid,.split,.contact-grid{grid-template-columns:1fr} .grid-3,.facts{grid-template-columns:1fr 1fr} .steps{grid-template-columns:1fr}.steps::before{display:none} .note-box{grid-template-columns:1fr} } @media (max-width:640px){ .grid-3,.grid-2,.facts,.form-row{grid-template-columns:1fr} .mock-body{grid-template-columns:76px 1fr} .form .btn{justify-self:stretch} } @media (prefers-reduced-motion:reduce){.form-card::before,.mock-blocks i{animation:none!important}} .tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);align-items:stretch} .tier{position:relative;display:flex;flex-direction:column;gap:12px;padding:var(--space-4);border-radius:var(--radius-l);background:var(--c-surface);border:1px solid var(--c-line);transition:transform .3s var(--ease),box-shadow .3s} .tier:hover{transform:translateY(-4px);box-shadow:var(--shadow-2)} .tier .num{font:600 .74rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-jade-ink)} .tier>p{color:var(--c-text-2);font-size:var(--fs-small)} .tier .checks{margin:8px 0 var(--space-3);font-size:var(--fs-small)} .tier .checks svg{color:var(--c-jade-ink)} .tier .btn{margin-top:auto;justify-content:center} .tier .btn-primary{justify-content:space-between} .tier.featured{background:var(--c-dark-band);color:var(--c-dark-band-text);border-color:transparent;box-shadow:var(--shadow-2)} .tier.featured>p,.tier.featured .checks li{color:var(--c-dark-band-muted)} .tier.featured .num,.tier.featured .checks svg{color:#5ad6b2} .tier.featured .btn-primary{background:#3cc39d;color:#06231b} .tier .tag{position:absolute;top:var(--space-3);right:var(--space-3);font:600 .7rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;padding:6px 10px;border-radius:var(--radius-pill);background:#3cc39d;color:#06231b} .steps.vertical{grid-template-columns:1fr;gap:var(--space-2)} .steps.vertical::before{top:27px;bottom:27px;left:27px;right:auto;width:1px;height:auto;background:var(--c-line-2)} .steps.vertical .step{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start} .steps.vertical .step .dot{margin:0} .tools-wide{margin-top:0} .tools-wide .tool{background:var(--c-surface);border-style:solid} .filterbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;margin-bottom:var(--space-4);padding:14px;border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line)} .filterbar .search{position:relative;flex:1 1 240px} .filterbar .search svg{position:absolute;left:14px;top:50%;width:16px;height:16px;transform:translateY(-50%);color:var(--c-text-3)} .filterbar input{width:100%;padding:12px 14px 12px 40px;border-radius:12px;border:1px solid var(--c-line-2);background:var(--c-bg);color:var(--c-text);font:inherit} .filterbar input:focus{outline:none;border-color:#3cc39d;box-shadow:0 0 0 4px color-mix(in srgb,#3cc39d 22%,transparent)} .chips{display:flex;flex-wrap:wrap;gap:8px} .chips button{padding:9px 14px;border-radius:var(--radius-pill);border:1px solid var(--c-line-2);background:transparent;color:var(--c-text-2);font:600 .85rem/1 var(--font-body);cursor:pointer;transition:all .2s} .chips button:hover{border-color:#3cc39d;color:var(--c-text)} .chips button[aria-pressed="true"]{background:#3cc39d;border-color:#3cc39d;color:#06231b} .filterbar .count{margin-left:auto;font-size:.88rem;color:var(--c-text-3)} .posts{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)} .post{display:flex;flex-direction:column;border-radius:var(--radius-m);overflow:hidden;background:var(--c-surface);border:1px solid var(--c-line);text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s} .post[hidden]{display:none} .post:hover{transform:translateY(-4px);box-shadow:var(--shadow-2);border-color:var(--c-line-2)} .post-thumb{aspect-ratio:16/9;overflow:hidden;background:var(--c-surface-2);border-bottom:1px solid var(--c-line)} .post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)} .post:hover .post-thumb img{transform:scale(1.05)} .post-body{display:flex;flex-direction:column;gap:8px;padding:20px 22px 22px;flex:1} .post-body .num{font:600 .7rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--c-jade-ink)} .post-body h3{font-size:1.12rem} .post-body p{color:var(--c-text-2);font-size:.92rem} .post-body .more{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:8px;font-weight:600;font-size:.9rem;color:var(--c-jade-ink)} .post-body .more svg{width:14px;height:14px;transition:transform .25s var(--ease)} .post:hover .more svg{transform:translate(2px,-2px)} .empty{text-align:center;color:var(--c-text-2);padding:var(--space-5) 0} @media (max-width:1080px){.tiers,.posts{grid-template-columns:1fr 1fr}} @media (max-width:640px){.tiers,.posts{grid-template-columns:1fr}.filterbar .count{margin-left:0}} .prod-art{position:relative;padding:22px;border-radius:var(--radius-l);background:var(--c-surface);border:1px solid var(--c-line);box-shadow:var(--shadow-2);display:grid;gap:14px} .prod-art .top{display:flex;justify-content:space-between;align-items:center;font:600 .72rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-text-3)} .prod-art .top b{padding:5px 10px;border-radius:var(--radius-pill);background:#3cc39d;color:#06231b} .prod-art .lang{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:14px;background:var(--c-surface-2);font-weight:700} .prod-art .lang i{display:block;font-style:normal;font-weight:500;font-size:.8rem;color:var(--c-text-3)} .prod-art .lang b{color:var(--c-jade-ink)} .prod-art .box{padding:16px;border-radius:14px;border:1px solid var(--c-line)} .prod-art .box small{display:block;font:600 .66rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-text-3);margin-bottom:6px} .prod-art .box p{color:var(--c-text-2);font-size:.95rem} .prod-art .box strong{display:block;font:700 1.05rem/1.4 var(--font-display)} .prod-art .box.ok{border-color:color-mix(in srgb,#3cc39d 50%,transparent);background:color-mix(in srgb,#3cc39d 8%,transparent)} .prod-art .chain{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font:600 .72rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-text-3)} .prod-art .chain b{padding:7px 10px;border-radius:8px;background:var(--c-surface-2);color:var(--c-text);letter-spacing:0;font-size:.82rem} .prod-art .flow{text-align:center;font:600 .7rem/1 var(--font-body);letter-spacing:var(--ls-label);color:var(--c-jade-ink)} .anim .prod-art .box.ok{animation:pulseOk 3s ease-in-out infinite} @keyframes pulseOk{50%{box-shadow:0 0 0 6px color-mix(in srgb,#3cc39d 14%,transparent)}} .trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:var(--space-3);font-size:.88rem;color:var(--c-text-2)} .trust span{display:inline-flex;gap:6px;align-items:center} .trust svg{width:14px;height:14px;color:var(--c-jade-ink)} .compare{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--c-line);border-radius:var(--radius-m);overflow:hidden;background:var(--c-surface)} .compare th,.compare td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--c-line);font-size:.95rem} .compare thead th{background:var(--c-dark-band);color:var(--c-dark-band-text);font:600 .76rem/1 var(--font-body);letter-spacing:var(--ls-label);text-transform:uppercase} .compare tbody th{font-weight:500} .compare tr:last-child>*{border-bottom:0} .compare td{color:var(--c-text-2)} .compare .y{color:var(--c-jade-ink);font-weight:600} .compare .n{color:var(--c-text-3)} .table-scroll{overflow-x:auto} .faq{display:grid;gap:10px} .faq details{border:1px solid var(--c-line);border-radius:var(--radius-m);background:var(--c-surface);transition:border-color .2s} .faq details[open]{border-color:color-mix(in srgb,#3cc39d 60%,transparent)} .faq summary{display:flex;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;font-weight:600;list-style:none} .faq summary::-webkit-details-marker{display:none} .faq summary::after{content:"+";font:400 1.4rem/1 var(--font-body);color:var(--c-jade-ink);transition:transform .25s} .faq details[open] summary::after{transform:rotate(45deg)} .faq details p{padding:0 20px 18px;color:var(--c-text-2)} .video{position:relative;display:block;width:100%;padding:0;border:0;border-radius:var(--radius-l);overflow:hidden;cursor:pointer;background:#000;aspect-ratio:16/9;box-shadow:var(--shadow-2)} .video img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:transform .6s var(--ease),opacity .3s} .video:hover img{transform:scale(1.03);opacity:1} .video .play{position:absolute;left:50%;top:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;display:grid;place-items:center;background:#3cc39d;color:#06231b;font-size:1.6rem;box-shadow:0 0 0 0 rgba(60,195,157,.6)} .anim .video .play{animation:ring 2.2s ease-out infinite} @keyframes ring{to{box-shadow:0 0 0 22px rgba(60,195,157,0)}} .video iframe{position:absolute;inset:0;width:100%;height:100%;border:0} .price{display:flex;align-items:baseline;gap:8px;margin:6px 0} .price strong{font:700 2.6rem/1 var(--font-display)} .price small{color:var(--c-text-3)} .tier.featured .price small{color:var(--c-dark-band-muted)} .req{display:grid;gap:12px} .req>div{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:18px;border-radius:var(--radius-m);background:var(--c-surface);border:1px solid var(--c-line)} .req .dot{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--c-jade-soft);color:var(--c-jade-ink);font:700 1rem/1 var(--font-display)} .req p{color:var(--c-text-2);font-size:var(--fs-small);margin-top:4px} .g4{grid-template-columns:repeat(4,1fr)}@media(max-width:1080px){.g4{grid-template-columns:1fr 1fr}}@media(max-width:640px){.g4{grid-template-columns:1fr}} .nav .shilpi-menu,.nav .shilpi-menu__list{display:contents} .nav .menu-item{list-style:none;margin:0;padding:0;display:contents} .nav .current-menu-item>a,.nav .current_page_item>a,.nav .current-page-ancestor>a{color:var(--c-accent)} [data-shilpi-form-status]{margin-top:14px;padding:12px 16px;border-radius:12px;font-weight:600;font-size:.95rem} [data-shilpi-form-status][data-state="success"]{background:var(--c-jade-soft);color:var(--c-jade-ink)} [data-shilpi-form-status][data-state="error"]{background:#fde8e8;color:#9b1c1c} .u-mt-0{margin-top:0}.u-mt-125{margin-top:1.25rem}.u-mt-15{margin-top:1.5rem}.u-pt-0{padding-top:0} .services-shot{transform:none}