/* Lagoon: bright product-company showcase. Bricolage Grotesque + Figtree.
   Cool off-white ground, ink type, the accent (lagoon teal by default) for actions and highlights,
   coral as a small fixed spark. Signature: the hero's stack of app windows that slide over each other. */
:root{
  --bg:#f2f7f6;--surface:#ffffff;--fg:#10242b;--muted:#4b6168;--line:#d3e2df;
  --accent:#0f6b78;--accent-fg:#ffffff;--accent-text:#0f6b78;--accent-soft:#dcecea;
  --radius:18px;
  --font:'Figtree','Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --display:'Bricolage Grotesque','Figtree','Inter',system-ui,sans-serif;
  --lg-ink:#10242b;--lg-ink-2:#1b3740;--lg-mist:#e8f1ef;--lg-coral:#ff7a59;--lg-coral-t:#ffe6dd;--lg-coral-ink:#8a2f17;
  --lg-edge:#c9dbd8;--lg-dir:1;
}
[dir="rtl"]{--lg-dir:-1}
body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:16.5px}
h1,h2,h3{font-family:var(--display);margin:0;letter-spacing:-.02em;color:var(--lg-ink);line-height:1.08}
p{margin:0}
:lang(si) h1,:lang(si) h2,:lang(si) h3,:lang(ta) h1,:lang(ta) h2,:lang(ta) h3,:lang(ar) h1,:lang(ar) h2,:lang(ar) h3{letter-spacing:0;line-height:1.3}
.lg-wrap{width:100%;max-width:1240px;margin-inline:auto;padding-inline:20px}
@media (min-width:768px){.lg-wrap{padding-inline:32px}}
main>section{scroll-margin-top:72px}
.lg-ico{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
[dir="rtl"] .lg-flip{transform:scaleX(-1)}

/* ---------- buttons and links ---------- */
.lg-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.lg-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;max-width:100%;padding:12px 24px;border-radius:999px;font:600 16px/1.25 var(--font);text-decoration:none;text-align:center;border:1.5px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s,filter .2s}
.lg-btn--primary{background:var(--accent);color:var(--accent-fg)}
.lg-btn--primary:hover{filter:brightness(.9)}
.lg-btn--ring{box-shadow:0 0 0 1.5px rgba(255,255,255,.4)}
.lg-btn--ghost{background:transparent;color:var(--lg-ink);border-color:#9fbcb8}
.lg-btn--ghost:hover{border-color:var(--lg-ink);background:#fff}
.lg-btn--light{background:var(--accent-fg);color:var(--accent)}
.lg-btn--light:hover{filter:brightness(.94)}
.lg-btn--line-light{background:transparent;color:var(--accent-fg);border-color:currentColor}
.lg-btn--line-light:hover{background:rgba(255,255,255,.1)}
.lg-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;color:var(--accent-text);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent)}
.lg-link:hover{text-decoration-color:var(--lg-coral)}
.lg-link .lg-ico{width:18px;height:18px}
.lg-iconbtn{display:inline-grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;border:1.5px solid #b5ceca;background:#fff;color:var(--lg-ink);cursor:pointer;transition:border-color .2s,background .2s}
.lg-iconbtn:hover{border-color:var(--lg-ink)}
.lg-iconbtn .lg-ico{width:20px;height:20px}
.lg-dots{color:var(--accent-text)}
.lg-dots button{color:inherit}

/* ---------- wordmark ---------- */
.lg-logo{display:inline-flex;align-items:center;gap:10px;min-width:0;min-height:44px;text-decoration:none;color:var(--lg-ink)}
.lg-logo img{max-height:40px;width:auto;flex:none}
.lg-logo__mark{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:var(--lg-ink);color:var(--lg-coral);font:800 19px/1 var(--display)}
.lg-logo__name{font:800 20px/1.1 var(--display);letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}

/* ---------- header ---------- */
.lg-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:100;background:rgba(242,247,246,.88);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid transparent;transition:border-color .25s,box-shadow .25s}
.lg-header.is-scrolled{border-bottom-color:var(--line);box-shadow:0 6px 24px rgba(16,36,43,.06)}
.lg-header__in{display:flex;align-items:center;gap:16px;height:58px}
.lg-header .lg-logo{flex:0 1 auto;max-width:26rem}
.lg-nav{display:none}
.lg-nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.lg-nav a{display:inline-flex;align-items:center;min-height:44px;padding-inline:13px;border-radius:999px;text-decoration:none;font-weight:500;color:var(--lg-ink);white-space:nowrap}
.lg-nav a:hover{background:var(--accent-soft)}
.lg-header__end{display:flex;align-items:center;gap:10px;margin-inline-start:auto;flex:none}
.lg-header__cta{min-height:44px;padding:8px 18px;font-size:15px;white-space:nowrap}
.lg-menu{display:none;position:relative}
.lg-menu summary,.ld-langs summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;cursor:pointer;font-weight:600;font-size:15px;color:var(--lg-ink);white-space:nowrap}
.lg-menu summary::-webkit-details-marker,.ld-langs summary::-webkit-details-marker{display:none}
.lg-menu summary .lg-ico{width:20px;height:20px}
.lg-menu ul,.ld-langs ul{position:absolute;inset-inline-end:0;top:calc(100% + 8px);z-index:5;list-style:none;margin:0;padding:6px;min-width:12rem;max-width:min(20rem,calc(100vw - 40px));background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 40px -12px rgba(16,36,43,.25)}
.lg-menu a,.ld-langs a{display:flex;align-items:center;min-height:44px;padding:6px 12px;border-radius:10px;text-decoration:none;color:var(--lg-ink);font-weight:500}
.lg-menu a:hover,.ld-langs a:hover{background:var(--lg-mist)}
.ld-langs{position:relative}
.ld-langs summary{padding:0 12px;font-weight:500}
.ld-langs a[aria-current]{font-weight:700;color:var(--accent-text)}
@media (max-width:767px){
  .lg-header__cta{display:none}
  .ld-langs summary span{display:none}
  .ld-langs summary{width:44px;padding:0;justify-content:center}
  .lg-logo__name{font-size:18px}
}
@media (min-width:768px){
  .lg-header__in{height:76px}
  .lg-menu{display:block}
}
/* without JS the nav shows from 1200px; theme.js then shows it whenever it fits (.has-nav) */
@media (min-width:1200px){html:not(.js) .lg-nav{display:block;margin-inline-start:auto}html:not(.js) .lg-menu{display:none}html:not(.js) .lg-header__end{margin-inline-start:0}}
@media (min-width:768px){
  .lg-header.has-nav .lg-nav{display:block;margin-inline-start:auto}
  .lg-header.has-nav .lg-menu{display:none}
  .lg-header.has-nav .lg-header__end{margin-inline-start:0}
}
.lg-header.is-measuring .lg-nav{display:block;position:absolute;visibility:hidden;pointer-events:none}

/* ---------- section frame and heads ---------- */
.lg-sec{padding-block:72px}
@media (min-width:1024px){.lg-sec{padding-block:104px}}
.lg-sec--tight{padding-block:48px}
@media (min-width:1024px){.lg-sec--tight{padding-block:72px}}
.lg-head{display:grid;gap:14px;margin-bottom:36px;min-width:0}
.lg-head>*{min-width:0}
.lg-head h2,.lg-about h2,.lg-contact h2,.lg-banner h2{font-size:clamp(1.9rem,1.3rem + 2.5vw,3.2rem);line-height:1.05;font-weight:800;max-width:20ch;overflow-wrap:anywhere}
.lg-intro{color:var(--muted);font-size:1.08rem;max-width:52ch}
.lg-kicker{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--accent-text);font-size:15px}
.lg-kicker::before{content:"";flex:none;width:24px;height:24px;border-radius:7px;background:var(--lg-ink) radial-gradient(circle at 50% 50%,var(--lg-coral) 0 4px,transparent 4.5px)}
@media (min-width:1024px){
  .lg-head--split.has-intro{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:end;column-gap:56px}
  .lg-head--split.has-intro .lg-kicker{grid-column:1/-1}
  .lg-head--split.has-intro .lg-intro{padding-bottom:6px}
}

/* ---------- app window chrome (hero, about, work) ---------- */
.lg-win{background:#fff;border:1px solid var(--lg-edge);border-radius:18px;box-shadow:0 30px 60px -28px rgba(16,36,43,.35),0 2px 6px rgba(16,36,43,.05);overflow:hidden;color:var(--lg-ink);min-width:0}
.lg-win__top{display:flex;align-items:center;gap:10px;padding:11px 14px;border-bottom:1px solid #e3eceb;background:#f8fbfa;font-size:13px;height:42px}
.lg-win__dots{display:flex;gap:6px;flex:none}
.lg-win__dots i{width:10px;height:10px;border-radius:50%;background:#d3e0de}
.lg-win__dots i:first-child{background:var(--lg-coral)}
.lg-win__title{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lg-win__tag{flex:none;max-width:45%;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--lg-ink);font-weight:600;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lg-win__pic img{width:100%;aspect-ratio:4/3;object-fit:cover}
.lg-win__blank{position:relative;aspect-ratio:4/3;display:grid;align-content:center;gap:10px;padding:10% 12%;background:linear-gradient(160deg,#fbfdfd,var(--lg-mist))}
.lg-win__blank span{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:var(--accent);color:var(--accent-fg);font:800 30px/1 var(--display);margin-bottom:8px}
.lg-win__blank i{display:block;height:12px;border-radius:6px;background:#d6e5e2}
.lg-win__blank i:nth-of-type(1){width:78%}
.lg-win__blank i:nth-of-type(2){width:92%;background:#e1ecea}
.lg-win__blank i:nth-of-type(3){width:56%;background:var(--lg-coral-t)}

/* ---------- hero ---------- */
.lg-hero{position:relative;overflow:hidden;padding-block:36px 64px}
.lg-hero::before{content:"";position:absolute;top:-180px;inset-inline-end:-220px;width:720px;height:720px;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 16%,transparent),transparent);pointer-events:none}
.lg-hero__grid{position:relative;display:grid;gap:44px}
.lg-hero__text{min-width:0}
.lg-pill{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:6px 16px 6px 6px;border-radius:20px;background:#fff;border:1px solid var(--line);font-size:14px;font-weight:600;color:var(--lg-ink)}
.lg-pill i{flex:none;width:26px;height:26px;border-radius:50%;background:var(--lg-coral-t) radial-gradient(circle,var(--lg-coral) 0 4px,transparent 4.5px)}
.lg-pill span{min-width:0}
.lg-hero h1{margin-top:22px;font-size:clamp(2.3rem,1.2rem + 4.2vw,4.4rem);line-height:1.02;font-weight:800;letter-spacing:-.035em;max-width:16ch}
.lg-hero__sub{margin-top:20px;font-size:clamp(1.06rem,1rem + .4vw,1.22rem);line-height:1.55;color:var(--muted);max-width:44ch}
.lg-hero__note{display:flex;align-items:flex-start;gap:8px;margin-top:22px;color:var(--muted);font-size:15px;max-width:44ch}
.lg-hero__note .lg-ico{width:20px;height:20px;color:var(--accent-text);margin-top:1px}
.lg-hero--solo .lg-hero__text{max-width:52rem}
.lg-hero--solo h1{max-width:20ch}
@media (min-width:1024px){
  .lg-hero{padding-block:64px 96px}
  .lg-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:56px}
  .lg-hero--solo .lg-hero__grid{grid-template-columns:minmax(0,1fr)}
}

/* the stage: a deck of windows; the active one sits in front, the rest wait behind */
.lg-stage{position:relative;min-width:0}
.lg-deck{position:relative;display:grid;grid-template-columns:minmax(0,1fr);padding-block-end:22px;padding-inline-end:18px}
.lg-deck::before,.lg-deck::after{content:"";position:absolute;border-radius:20px;border:1px solid var(--line)}
.lg-deck::before{top:22px;bottom:0;inset-inline-start:18px;inset-inline-end:0;background:var(--accent-soft)}
.lg-deck::after{top:11px;bottom:11px;inset-inline:9px;background:#fff;opacity:.92}
.lg-slide{grid-area:1/1;position:relative;z-index:1;margin:0;min-width:0;display:flex;flex-direction:column;opacity:0;visibility:hidden;
  transform:translate3d(calc(18px * var(--lg-dir)),22px,0) scale(.955);transition:opacity .55s ease,transform .8s cubic-bezier(.2,.8,.2,1),visibility 0s .8s}
.lg-slide.is-active{opacity:1;visibility:visible;transform:none;z-index:2;transition:opacity .55s ease,transform .8s cubic-bezier(.2,.8,.2,1),visibility 0s}
html:not(.js) .lg-slide:not(:first-child){display:none}
.lg-slide .lg-win{flex:none}
.lg-slide__cap{position:relative;z-index:3;display:grid;gap:4px;justify-items:start;margin:-38px 16px 0;padding:14px 18px;border-radius:16px;background:rgba(255,255,255,.96);border:1px solid var(--line);box-shadow:0 18px 30px -20px rgba(16,36,43,.45);font-size:15px;color:var(--muted)}
.lg-slide__cap strong{font:700 1.08rem/1.25 var(--display);color:var(--lg-ink)}
.lg-slide__cap .lg-link{min-height:36px}
.lg-progress{position:absolute;z-index:4;top:0;inset-inline:22px 40px;height:3px;border-radius:3px;background:var(--lg-coral);transform:scaleX(0);transform-origin:left}
[dir="rtl"] .lg-progress{transform-origin:right}
.lg-stage__bar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px}
.lg-stage__bar .lg-dots{margin-inline-end:auto}
@media (max-width:519px){.lg-slide__cap{margin:-24px 10px 0;padding:12px 14px}}

/* no picture: the owner's services tick themselves off */
.lg-checklist{list-style:none;margin:0;padding:14px;display:grid;gap:10px;background:linear-gradient(180deg,#f6faf9,#fff)}
.lg-checklist li{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #e0eae8;min-width:0}
.lg-checklist__ico{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:var(--accent-soft);color:var(--lg-ink);font:800 14px/1 var(--display)}
.lg-checklist__ico .lg-ico{width:22px;height:22px}
.lg-checklist__t{flex:1;min-width:0;font-weight:600;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lg-checklist__ok{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--accent-fg)}
.lg-checklist__ok .lg-ico{width:16px;height:16px;stroke-width:2.4}
.js .lg-checklist__ok{animation:lagoon-tick .5s cubic-bezier(.2,.8,.2,1.3) both;animation-delay:var(--d,0s)}
.js .lg-checklist li{animation:lagoon-rise .6s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--d,0s) - .2s)}
@keyframes lagoon-tick{from{transform:scale(0);opacity:0}to{transform:none;opacity:1}}
@keyframes lagoon-rise{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}

/* ---------- partners marquee ---------- */
.lg-integ{border-block:1px solid var(--line);background:#fff;padding-block:18px}
.lg-integ__in{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px}
.lg-integ__label{flex:1 1 100%;font-size:14px;line-height:1.35;color:var(--muted)}
.lg-integ .ld-marquee{flex:1 1 100%;min-width:0;--marquee-speed:36s}
.lg-integ__list{display:flex;align-items:center;margin:0;padding:0;list-style:none}
.lg-integ__list li{display:flex;align-items:center;gap:44px;padding-inline-end:44px;white-space:nowrap;font:600 19px/1 var(--display);color:#3c555c}
.lg-integ__list li::after{content:"";width:7px;height:7px;border-radius:50%;background:var(--lg-coral)}
.lg-integ__list a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:none}
.lg-integ__list a:hover{color:var(--accent-text)}
.lg-integ__list img{max-height:36px;max-width:150px;width:auto;filter:grayscale(1);opacity:.75}
@media (min-width:768px){.lg-integ__in{flex-wrap:nowrap}.lg-integ__label{flex:none;max-width:13rem}.lg-integ .ld-marquee{flex:1}}

/* ---------- services bento ---------- */
.lg-bento{display:grid;gap:16px;list-style:none;margin:0;padding:0}
.lg-cell{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:14px;min-width:0;padding:26px;border-radius:22px;background:#fff;border:1px solid var(--line)}
.lg-cell__body{display:grid;gap:10px;min-width:0;justify-items:start}
.lg-cell h3{font-size:1.38rem;line-height:1.15;font-weight:700;max-width:100%}
.lg-cell p{color:var(--muted)}
.lg-cell__ico{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:14px;background:var(--accent-soft);color:var(--lg-ink)}
.lg-cell__ico b{font:800 15px/1 var(--display)}
.lg-cell--mist{background:var(--lg-mist)}
.lg-cell--mist .lg-cell__ico{background:#fff}
.lg-cell--teal{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}
.lg-cell--teal h3,.lg-cell--teal p,.lg-cell--teal .lg-link{color:var(--accent-fg)}
.lg-cell--teal p{opacity:.88}
.lg-cell--teal .lg-cell__ico{background:color-mix(in srgb,var(--accent-fg) 16%,transparent);color:var(--accent-fg)}
.lg-cell--ink{background:var(--lg-ink);border-color:var(--lg-ink)}
.lg-cell--ink h3,.lg-cell--ink .lg-link{color:#fff}
.lg-cell--ink p{color:#b9cccf}
.lg-cell--ink .lg-cell__ico{background:rgba(255,122,89,.16);color:var(--lg-coral)}
.lg-cell--ink :focus-visible,.lg-cell--teal :focus-visible{outline-color:currentColor}
.lg-cell__num::before{content:attr(data-n)}
.lg-cell__num{position:absolute;bottom:-.18em;inset-inline-end:14px;font:800 clamp(7rem,12vw,11rem)/1 var(--display);letter-spacing:-.05em;color:currentColor;opacity:.1;pointer-events:none}
.lg-cell--a{min-height:16rem;padding-bottom:5.5rem}
@media (min-width:700px){
  .lg-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg-cell--a{grid-row:span 2}
  .lg-cell--w12{grid-column:1/-1}
}
@media (min-width:1024px){
  .lg-bento{grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
  .lg-cell{padding:32px}
  .lg-cell--a{grid-column:span 5;grid-row:span 2;justify-content:flex-start}
  .lg-cell--b,.lg-cell--c,.lg-cell--w7{grid-column:span 7}
  .lg-cell--w5{grid-column:span 5}
  .lg-cell--w6{grid-column:span 6}
  .lg-cell--w4{grid-column:span 4}
  .lg-cell--w12{grid-column:span 12}
  .lg-cell--b,.lg-cell--c,.lg-cell--w7,.lg-cell--w12{flex-direction:row;align-items:flex-start;gap:22px}
  .lg-cell--a h3{font-size:1.7rem}
  .lg-cell--w12 .lg-cell__body{max-width:62ch}
  .lg-cell--w12{padding:40px}
  .lg-cell--w12 h3{font-size:clamp(1.5rem,1.1rem + 1vw,2.1rem)}
}

/* ---------- about ---------- */
.lg-about__grid{display:grid;gap:44px;align-items:center}
.lg-about__text{min-width:0}
.lg-about__text h2{margin-top:14px}
.lg-prose{margin-top:20px;display:grid;gap:14px;color:var(--muted);font-size:1.05rem;max-width:60ch}
.lg-prose a{color:var(--accent-text)}
.lg-prose ul,.lg-prose ol{margin:0;padding-inline-start:1.3em}
.lg-checks{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none;color:var(--fg)}
.lg-checks li{display:flex;gap:10px;align-items:flex-start;min-width:0}
.lg-checks li span{min-width:0}
.lg-checks .lg-ico{width:20px;height:20px;color:var(--accent-text);margin-top:2px}
.lg-about__media{position:relative;min-width:0}
.lg-about__main img{width:100%;aspect-ratio:4/3;object-fit:cover}
.lg-about__second{min-width:0}
.lg-about__second img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px;border:6px solid #fff;box-shadow:0 24px 40px -24px rgba(16,36,43,.45)}
.lg-about__media.has-two{padding-bottom:18%}
.lg-about__media.has-two .lg-about__second{position:absolute;bottom:0;inset-inline-start:0;width:42%}
.lg-about__media:not(.has-two) .lg-about__second img{aspect-ratio:4/3}
.lg-about__panel{min-width:0;padding:28px;border-radius:22px;background:var(--lg-mist);border:1px solid var(--line)}
.lg-about__panel .lg-checks{margin:0;gap:14px;font-weight:500}
.lg-about.is-solo .lg-about__text{max-width:52rem}
@media (min-width:1024px){
  .lg-about__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px}
  .lg-about.is-solo .lg-about__grid{grid-template-columns:minmax(0,1fr)}
  .lg-about__panel{padding:40px}
  .lg-about__media.has-two .lg-about__second{inset-inline-start:-10%}
}

/* ---------- stats ---------- */
.lg-stats__board{display:grid;gap:28px;padding:28px 24px;border-radius:24px;background:#fff;border:1px solid var(--line)}
.lg-stats__board .lg-head{margin:0}
.lg-stats__board .lg-head h2{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.4rem)}
.lg-stats__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}
.lg-stats__list div{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:6px;min-width:0;padding:16px 16px 16px 0;border-top:1px solid var(--line)}
.lg-stats__list div:nth-child(2n){border-inline-start:1px solid var(--line);padding-inline-start:16px}
.lg-stats__list dd{margin:0;font:800 clamp(1.7rem,1.2rem + 1.8vw,2.6rem)/1.05 var(--display);letter-spacing:-.03em;color:var(--accent-text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.lg-stats__list dt{color:var(--muted);font-size:15px;line-height:1.4}
@media (max-width:379px){.lg-stats__list{grid-template-columns:minmax(0,1fr)}.lg-stats__list div:nth-child(2n){border-inline-start:0;padding-inline-start:0}}
@media (min-width:768px){
  .lg-stats__board{padding:40px}
  .lg-stats__list{grid-template-columns:repeat(var(--n,3),minmax(0,1fr));row-gap:28px}
  .lg-stats__list div,.lg-stats__list div:nth-child(2n){border-top:0;padding:4px 24px;border-inline-start:2px solid var(--accent-soft)}
}
@media (min-width:1024px){
  .lg-stats__board:not(.is-bare){grid-template-columns:minmax(0,.8fr) minmax(0,2fr);align-items:center;gap:40px}
  .lg-stats__board .lg-head{grid-template-columns:minmax(0,1fr)!important}
}

/* ---------- work carousel ---------- */
.lg-work{background:#fff;border-block:1px solid var(--line)}
.lg-pc__ctrl{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.lg-pc__count{font:600 15px/1 var(--font);color:var(--muted);margin-inline-end:auto;font-variant-numeric:tabular-nums}
.lg-pc__count b{color:var(--lg-ink);font:800 22px/1 var(--display)}
.lg-pc .lg-dots{margin-inline-end:6px}
@media (max-width:420px){.lg-pc .lg-dots{display:none}}
.lg-quotes .lg-pc__ctrl .lg-dots{margin-inline-end:auto}
.lg-track{list-style:none;margin:20px 0 0;padding:6px 2px 26px;gap:20px}
.lg-track>*{width:86%}
@media (min-width:640px){.lg-track>*{width:62%}}
@media (min-width:1024px){.lg-work .lg-track>*{width:calc((100% - 40px)/2.6)}}
.lg-track.is-single>*{width:100%}
.lg-pcard{display:flex;flex-direction:column;border-radius:24px;background:var(--bg);border:1px solid var(--line);overflow:hidden;min-width:0}
.lg-pcard__art{padding:20px 20px 0;background:var(--accent-soft)}
.lg-tint-1 .lg-pcard__art{background:#e5ece3}
.lg-tint-2 .lg-pcard__art{background:var(--lg-coral-t)}
.lg-tint-3 .lg-pcard__art{background:#dfe9f0}
.lg-tint-4 .lg-pcard__art{background:#e6e4ef}
.lg-pcard__art .lg-win{border-end-start-radius:0;border-end-end-radius:0;border-bottom:0;box-shadow:0 18px 36px -24px rgba(16,36,43,.4)}
.lg-pcard__art .lg-win__pic img,.lg-pcard__art .lg-win__blank{aspect-ratio:16/10}
.lg-pcard__body{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:24px;flex:1;min-width:0}
.lg-pcard__body>*{max-width:100%}
.lg-pcard__cat{font-size:14px;font-weight:600;color:var(--accent-text)}
.lg-pcard h3{font-size:1.5rem;font-weight:800}
.lg-pcard p:not(.lg-pcard__cat){color:var(--muted)}
.lg-pcard .lg-link{margin-top:auto}
@media (min-width:900px){
  .lg-track.is-single .lg-pcard{flex-direction:row}
  .lg-track.is-single .lg-pcard__art{flex:0 0 55%;padding:28px 0 0 28px;padding-inline:28px 0}
  .lg-track.is-single .lg-pcard__art .lg-win{border-start-end-radius:0;border-inline-end:0;height:100%}
  .lg-track.is-single .lg-pcard__body{justify-content:center;padding:40px}
}

/* ---------- process timeline ---------- */
.lg-steps{position:relative;display:grid;gap:0;margin:0;padding:0;list-style:none}
.lg-step{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);align-content:start;column-gap:18px;padding-bottom:30px;min-width:0}
.lg-step::before{content:"";position:absolute;top:52px;bottom:0;inset-inline-start:25px;width:2px;background:repeating-linear-gradient(180deg,#9fc4bf 0 6px,transparent 6px 12px)}
.lg-step.is-last::before{display:none}
.lg-step__n{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fff;border:2px solid var(--accent);color:var(--accent-text);font:800 20px/1 var(--display)}
.lg-step.is-last .lg-step__n{background:var(--lg-ink);border-color:var(--lg-ink);color:var(--lg-coral)}
.lg-step__body{min-width:0}
.lg-step h3{font-size:1.3rem;font-weight:700;padding-top:12px}
.lg-step p{color:var(--muted);margin-top:6px;max-width:36ch}
@media (min-width:900px){
  .lg-steps{grid-template-columns:repeat(var(--cols,5),minmax(0,1fr));gap:40px 24px}
  .lg-step{grid-template-columns:minmax(0,1fr);padding-bottom:0}
  .lg-step::before{top:25px;bottom:auto;inset-inline-start:64px;inset-inline-end:-16px;width:auto;height:2px;background:repeating-linear-gradient(90deg,#9fc4bf 0 6px,transparent 6px 12px)}
  .lg-step.is-row-end::before{display:none}
  .lg-step__n{margin-bottom:10px}
  .lg-step h3{padding-top:8px}
}

/* ---------- pricing (ways to work) ---------- */
.lg-ways{display:grid;gap:16px;list-style:none;margin:0;padding:0;align-items:stretch}
.lg-way{display:flex;flex-direction:column;gap:20px;min-width:0;padding:30px 26px;border-radius:22px;background:#fff;border:1px solid var(--line)}
.lg-way__main,.lg-way__more{display:flex;flex-direction:column;gap:12px;min-width:0}
.lg-way__more{flex:1}
.lg-way__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.lg-way__top h3{font-size:1.5rem;font-weight:800;min-width:0}
.lg-badge{max-width:100%;padding:5px 12px;border-radius:999px;background:var(--lg-coral-t);color:var(--lg-coral-ink);font-size:13px;font-weight:700}
.lg-way__price{font:800 clamp(1.9rem,1.5rem + 1.2vw,2.5rem)/1.05 var(--display);letter-spacing:-.03em;color:var(--lg-ink);overflow-wrap:anywhere}
.lg-way__price span{display:inline-block;font:500 15px/1.4 var(--font);letter-spacing:0;color:var(--muted)}
.lg-way__text{color:var(--muted)}
.lg-way .lg-checks{margin:0 0 6px}
.lg-way .lg-btn{margin-top:auto;align-self:flex-start}
.lg-way.is-featured{background:var(--lg-ink);border-color:var(--lg-ink)}
.lg-way.is-featured h3,.lg-way.is-featured .lg-way__price{color:#fff}
.lg-way.is-featured .lg-way__text,.lg-way.is-featured .lg-way__price span{color:#b9cccf}
.lg-way.is-featured .lg-checks{color:#dce8e9}
.lg-way.is-featured .lg-checks .lg-ico{color:var(--lg-coral)}
.lg-way.is-featured :focus-visible{outline-color:var(--lg-coral)}
.lg-note{margin-top:24px;color:var(--muted);font-size:15px}
@media (min-width:768px){.lg-ways--2,.lg-ways--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.lg-ways--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.lg-way{padding:36px 32px}}
@media (min-width:1100px){.lg-ways--4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg-ways--4 .lg-way{padding:30px 24px}}
@media (min-width:900px){
  .lg-ways--1 .lg-way{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding:44px}
  .lg-ways--1 .lg-way__more{padding-inline-start:48px;border-inline-start:1px solid var(--line)}
  .lg-ways--1 .lg-way.is-featured .lg-way__more{border-color:rgba(255,255,255,.14)}
}

/* ---------- testimonials ---------- */
.lg-quotes{background:#fff;border-block:1px solid var(--line)}
.lg-quotes .lg-track>*{width:88%}
@media (min-width:640px){.lg-quotes .lg-track>*{width:60%}}
@media (min-width:1024px){.lg-quotes .lg-track>*{width:calc((100% - 40px)/3)}}
.lg-quotes .lg-track.is-single>*{width:min(100%,52rem)}
.lg-quote figure{margin:0;height:100%;display:flex;flex-direction:column;gap:18px}
.lg-quote__bubble{position:relative;flex:1;display:grid;align-content:start;gap:12px;padding:26px;border-radius:22px;border-end-start-radius:6px;background:var(--bg);border:1px solid var(--line)}
.lg-quote__mark{width:32px;height:24px;fill:var(--lg-coral)}
.lg-quote blockquote{margin:0;font-size:1.08rem;line-height:1.6;color:var(--lg-ink)}
.lg-track.is-single .lg-quote blockquote{font:500 clamp(1.15rem,1rem + .6vw,1.45rem)/1.5 var(--display);letter-spacing:-.01em}
.lg-stars{margin:0;color:#c2410c;letter-spacing:.12em;font-size:15px}
.lg-stars i{font-style:normal;color:#cfdcda}
.lg-quote figcaption{display:flex;align-items:center;gap:12px;padding-inline-start:8px;min-width:0}
.lg-avatar{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;object-fit:cover;font:800 18px/1 var(--display)}
span.lg-avatar,.lg-person__ini{background:var(--accent);color:var(--accent-fg)}
.lg-avatar--1{background:var(--lg-coral)!important;color:var(--lg-ink)!important}
.lg-avatar--2{background:var(--lg-ink)!important;color:#fff!important}
.lg-quote__who{display:grid;min-width:0}
.lg-quote__who b{font-weight:700;color:var(--lg-ink)}
.lg-quote__who small{font-size:14px;color:var(--muted)}

/* ---------- team ---------- */
.lg-people{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));list-style:none;margin:0;padding:0}
.lg-person{display:flex;flex-direction:column;min-width:0;border-radius:22px;background:#fff;border:1px solid var(--line);overflow:hidden}
.lg-person__pic{padding:10px 10px 0}
.lg-person__pic img{width:100%;aspect-ratio:4/4.4;object-fit:cover;border-radius:14px}
.lg-person__ini{display:grid;place-items:center;width:64px;height:64px;margin:22px 22px 0;border-radius:20px;font:800 24px/1 var(--display);letter-spacing:-.02em}
.lg-person__body{display:grid;gap:6px;align-content:start;justify-items:start;padding:18px 22px 22px;min-width:0}
.lg-person__body>*{max-width:100%}
.lg-person h3{font-size:1.22rem;font-weight:700}
.lg-person__role{font-weight:600;color:var(--accent-text);font-size:15px}
.lg-person__text{color:var(--muted);font-size:15px}
.lg-person .lg-link{min-height:40px}

/* ---------- FAQ ---------- */
.lg-faq__grid{display:grid;gap:12px}
.lg-faq__list{display:grid;gap:12px;min-width:0}
.lg-faq details{border-radius:16px;background:#fff;border:1px solid var(--line);transition:border-color .2s}
.lg-faq details[open]{border-color:#9fc4bf}
.lg-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:16px 20px;cursor:pointer;list-style:none;font:700 1.1rem/1.3 var(--display);color:var(--lg-ink)}
.lg-faq summary span{min-width:0;overflow-wrap:anywhere}
.lg-faq summary::-webkit-details-marker{display:none}
.lg-faq summary::after{content:"";flex:none;width:30px;height:30px;border-radius:50%;background:var(--lg-mist) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310242b' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .25s}
.lg-faq details[open] summary::after{transform:rotate(45deg);background-color:var(--lg-coral-t)}
.lg-faq details p{padding:0 20px 20px;color:var(--muted);max-width:64ch}
@media (min-width:1024px){
  .lg-faq__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px}
  .lg-faq__head{position:sticky;top:110px;align-self:start}
}

/* ---------- CTA banner ---------- */
.lg-banner{position:relative;overflow:hidden;isolation:isolate;background:var(--accent);color:var(--accent-fg);padding-block:64px}
.lg-banner::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.14))}
.lg-banner__ripples{position:absolute;z-index:-1;width:min(560px,90vw);top:50%;inset-inline-end:-120px;transform:translateY(-50%);fill:none;stroke:currentColor;stroke-width:1.5;opacity:.14}
.lg-banner__in{position:relative;display:grid;gap:32px;align-items:center}
.lg-banner__text{min-width:0}
.lg-banner h2{color:inherit;max-width:22ch}
.lg-banner p{opacity:.9;font-size:1.1rem;max-width:52ch;margin-top:14px}
.lg-banner :focus-visible{outline-color:currentColor}
.lg-banner__pic{min-width:0;max-width:30rem}
.lg-banner__pic img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px;border:6px solid rgba(255,255,255,.9);box-shadow:0 30px 60px -28px rgba(0,0,0,.5);transform:rotate(calc(2deg * var(--lg-dir)))}
@media (min-width:1024px){
  .lg-banner{padding-block:88px}
  .lg-banner.has-pic .lg-banner__in{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:64px}
  .lg-banner.has-pic .lg-banner__ripples{inset-inline-end:auto;inset-inline-start:-180px}
}

/* ---------- contact ---------- */
.lg-contact{display:grid;border-radius:28px;overflow:hidden;border:1px solid var(--line);background:#fff}
.lg-contact__side{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;gap:18px;min-width:0;padding:32px 24px;background:var(--accent);color:var(--accent-fg)}
.lg-contact__side h2{color:inherit}
.lg-contact__intro{opacity:.9;max-width:42ch}
.lg-kicker--light{color:inherit}
.lg-kicker--light::before{background-color:rgba(16,36,43,.8)}
.lg-contact__links{display:grid;gap:10px;margin:6px 0 0;padding:0;list-style:none}
.lg-contact__links a,.lg-contact__addr{display:flex;align-items:center;gap:14px;min-height:62px;padding:10px 14px;border-radius:14px;background:color-mix(in srgb,var(--accent-fg) 12%,transparent);color:inherit;text-decoration:none;transition:background .2s;min-width:0}
.lg-contact__links a:hover{background:color-mix(in srgb,var(--accent-fg) 20%,transparent)}
.lg-contact__ico{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;background:color-mix(in srgb,var(--accent-fg) 14%,transparent)}
.lg-contact__ico .lg-ico{width:20px;height:20px}
.lg-contact__txt{display:grid;min-width:0}
.lg-contact__txt small{font-size:13.5px}
.lg-contact__txt b{font-weight:600;overflow-wrap:anywhere}
.lg-contact__txt address{font-style:normal;font-weight:600}
.lg-contact__side :focus-visible{outline-color:currentColor}
.lg-offices{display:grid;gap:12px;margin:0;padding:18px 0 0;list-style:none;border-top:1px solid color-mix(in srgb,var(--accent-fg) 22%,transparent)}
.lg-offices li{display:grid;gap:2px;min-width:0}
.lg-offices address{font-style:normal;opacity:.9}
.lg-offices a{color:inherit;display:inline-flex;align-items:center;min-height:36px}
.lg-contact__ripples{position:absolute;z-index:-1;width:260px;bottom:-110px;inset-inline-end:-90px;fill:none;stroke:currentColor;stroke-width:1.2;opacity:.18}
.lg-contact__form{min-width:0;padding:32px 24px}
@media (min-width:1024px){
  .lg-contact{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
  .lg-contact.is-noform{grid-template-columns:minmax(0,1fr)}
  .lg-contact.is-noform .lg-contact__links{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
  .lg-contact__side,.lg-contact__form{padding:48px}
}

/* shared form markup, restyled */
.pc-form{gap:18px}
.pc-fields{gap:18px}
.pc-field label,.pc-field legend{font-weight:600;font-size:15px;color:var(--lg-ink)}
.pc-field input:not([type=checkbox]):not([type=radio]),.pc-field select,.pc-field textarea{min-height:50px;padding:12px 14px;border-radius:12px;border:1.5px solid #bcd2ce;background:#fbfdfd;color:var(--lg-ink);font:400 16px/1.4 var(--font);transition:border-color .2s,box-shadow .2s}
.pc-field textarea{min-height:140px}
.pc-field select{appearance:none;-webkit-appearance:none;padding-inline-end:44px;background:#fbfdfd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310242b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat;background-size:18px;background-position:calc(100% - 14px) center}
[dir="rtl"] .pc-field select{background-position:14px center}
.pc-field input:focus,.pc-field select:focus,.pc-field textarea:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}
.pc-choice a{color:var(--accent-text)}
.pc-btn{border-radius:999px;min-height:48px;padding:12px 26px;font:600 16px/1.25 var(--font);background:var(--accent);color:var(--accent-fg)}
.pc-btn:hover{filter:brightness(.9)}
.pc-btn-ghost{background:transparent;color:var(--lg-ink);border:1.5px solid #9fbcb8}
.pc-form-done{border-radius:16px;background:var(--accent-soft);border-color:var(--line)}
.pc-consent-in{border-radius:20px}

/* ---------- footer ---------- */
.lg-footer{background:var(--lg-ink);color:#c3d4d6;padding-block:56px 32px}
.lg-footer a{color:#fff;text-decoration:none}
.lg-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.lg-footer :focus-visible{outline-color:var(--lg-coral)}
.lg-footer .lg-logo{color:#fff}
.lg-footer .lg-logo__mark{background:var(--lg-coral);color:var(--lg-ink)}
.lg-footer .lg-logo__name{white-space:normal}
.lg-footer__top{display:grid;gap:36px}
.lg-footer__top>*{min-width:0}
.lg-footer__brand p{margin-top:14px;max-width:36ch}
.lg-footer__h{font:700 15px/1.3 var(--display);color:#fff;margin-bottom:8px}
.lg-footer__col ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
nav.lg-footer__col ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
@media (min-width:768px){nav.lg-footer__col ul{grid-template-columns:minmax(0,1fr)}}
.lg-footer__col a{display:inline-flex;align-items:center;min-height:40px}
.lg-footer address{font-style:normal;padding-top:8px}
.lg-social{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:18px 0 0;padding:0}
.lg-social a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.22);font-size:14px}
.lg-social a:hover{border-color:#fff;text-decoration:none}
.lg-footer__base{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:14px}
.lg-footer__base p{margin-inline-end:auto}
.lg-footer__base ul{display:flex;flex-wrap:wrap;gap:4px 18px;list-style:none;margin:0;padding:0}
.lg-footer__base a{display:inline-flex;align-items:center;min-height:44px}
.lg-footer .ld-linkbtn{color:#c3d4d6}
@media (min-width:768px){.lg-footer__top{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:48px}}

@media (prefers-reduced-motion:reduce){
  .lg-slide{transition:none}
  .js .lg-checklist li,.js .lg-checklist__ok{animation:none}
}

/* ---------- edge cases ---------- */
.lg-hero--long h1{font-size:clamp(2rem,1.2rem + 2.8vw,3.4rem);max-width:none}
.lg-checklist__ghost{opacity:.75}
.lg-checklist__ghost .lg-checklist__ico{background:var(--lg-mist)}
.lg-checklist__ghost i{display:block;flex:1;height:12px;border-radius:6px;background:#e1ecea;max-width:60%}
.lg-checklist__ghost+.lg-checklist__ghost i{max-width:42%}
@media (min-width:1024px){.lg-faq__grid.is-bare{grid-template-columns:minmax(0,1fr);max-width:56rem}}
@media (max-width:599px){
  .lg-person:not(.has-photo){flex-direction:row;align-items:flex-start}
  .lg-person:not(.has-photo) .lg-person__ini{width:52px;height:52px;margin:18px 0 18px 18px;margin-inline:18px 0;border-radius:16px;font-size:19px;flex:none}
  .lg-person:not(.has-photo) .lg-person__body{padding:18px;flex:1}
}
