@font-face{
  font-family:'Outfit';
  font-style:normal;font-weight:500 800;font-display:swap;
  src:url('../font/outfit-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:'Outfit';
  font-style:normal;font-weight:500 800;font-display:swap;
  src:url('../font/outfit-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;
}

:root{
  --slate:#0c132f;
  --slate-alt:#101f49;
  --azure:#205cff;
  --azure-600:#1849d5;
  --azure-50:#eff4ff;
  --sky:#7fa2fd;
  --sky-50:#d9e7ff;
  --canvas:#f6f7fe;
  --card:#fdffff;
  --ink:#10172b;
  --ink-alt:#334156;
  --quiet:#5d6778;
  --edge:#e4e6f3;
  --edge-alt:#eef1fa;
  --success:#097b37; --success-fill:#e9f9ec; --success-edge:#bde9d1;
  --alert:#c22022;   --alert-fill:#fce8ec;   --alert-edge:#f1c6c8;
  --gold:#205cff;

  --sz-1:4px; --sz-2:8px; --sz-3:12px; --sz-4:16px; --sz-6:24px;
  --sz-8:32px; --sz-10:40px; --sz-12:48px; --sz-16:64px;

  --r-sm:12px; --r-md:16px; --r-lg:20px; --r-xl:24px; --r-2xl:28px; --r-pill:999px;

  --elev-sm:0 1px 2px rgba(12,19,47,.03),0 4px 14px rgba(32,92,255,.08);
  --elev-md:0 8px 30px rgba(32,92,255,.14),0 2px 6px rgba(12,19,47,.03);
  --elev-lg:0 24px 60px rgba(12,19,47,.18);

  --ff:system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --font-head:'Outfit',system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --container:1200px;
  --inset:clamp(16px,4vw,24px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  text-rendering:optimizeLegibility;font-family:var(--ff);background:var(--canvas);margin:0;
  background-image:radial-gradient(rgba(32,92,255,.08) 1px,transparent 1.2px);color:var(--ink);
  -webkit-font-smoothing:antialiased;background-size:24px 24px;line-height:1.55;
}
img{display:block;max-width:100%}
a{text-decoration:none;color:var(--azure)}
a:hover{color:var(--azure-600)}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3{line-height:1.12;font-family:var(--font-head);letter-spacing:-.02em}
button,input,select,textarea{font-family:inherit}
:focus-visible{outline:3px solid var(--sky-50);outline-offset:2px;border-radius:6px}
.eyebrow{border:1px solid var(--sky-50);color:var(--azure-600);margin-bottom:16px;border-radius:var(--r-pill);display:inline-flex;font-size:13px;
  align-items:center;gap:8px;background:var(--azure-50);padding:6px 14px;white-space:nowrap;font-weight:600}
.eyebrow::before{background:var(--azure);box-shadow:0 0 0 3px rgba(32,92,255,.18);height:7px;content:"";width:7px;border-radius:50%}
.estimate-item--shut .request-ctrl{box-shadow:0 0 0 3px rgba(227,72,77,.13);border-color:#e3484d}
.estimate-item--shut .pill{border-color:#e3484d}
.estimate-sub{color:#e3484d;margin-top:5px;display:block;font-size:12px;font-weight:600}
.estimate-sub[hidden]{display:none}
.estimate-set{display:flex;flex-wrap:wrap;gap:8px}
.estimate-set label{cursor:pointer;position:relative;display:flex;margin:0}
.estimate-set input{opacity:0;width:0;height:0;position:absolute}
.sub{font-size:14px;color:var(--quiet)}
.heading-2{letter-spacing:-.025em;font-size:clamp(28px,3.4vw,42px);font-weight:700}
.icon-tile{border-radius:14px;width:44px;color:var(--azure);justify-content:center;align-items:center;
  background:var(--azure-50);display:flex;flex-shrink:0;height:44px;box-shadow:inset 0 0 0 1px var(--sky-50)}
.core-bar{align-items:center;display:flex;gap:6px}
.portrait{height:36px;border-radius:50%;border:2px solid #fdffff;box-shadow:0 1px 3px rgba(12,19,47,.14);width:36px}
.portrait+.portrait{margin-left:-10px}
img.portrait{background:var(--azure-50);object-fit:cover;display:block}
.portrait--extra{font-size:12px;align-items:center;background:var(--slate);justify-content:center;
  font-weight:700;display:flex;color:#fdffff}

.aside-mob{height:100vh;height:100dvh;overflow-y:auto;position:fixed;max-width:320px;top:0;right:-100%;
  box-shadow:-6px 0 30px rgba(12,19,47,.22);background:#fdffff;z-index:1100;
  padding:84px var(--sz-6) var(--sz-6);width:80%;transition:right .3s ease}
.aside-mob.shown{right:0}
.aside-mob nav{flex-direction:column;display:flex}
.aside-mob a:not(.button){border-bottom:1px solid var(--edge-alt);font-weight:600;color:var(--ink-alt);padding:14px 2px;
  font-size:15px}
.aside-mob a:not(.button):hover{color:var(--azure)}
.aside-mob a.button{margin-top:var(--sz-6)}

.bar-veil{z-index:1090;visibility:hidden;background:rgba(12,19,47,.51);inset:0;position:fixed;
  transition:opacity .3s ease;opacity:0}
.bar-veil.shown{opacity:1;visibility:visible}
.word-score{gap:12px;align-items:center;display:flex}
.word-mention{font-size:15px;align-items:center;gap:6px;display:flex}
.word-entry{color:var(--quiet);font-size:13px}

.path{margin:0;display:flex;flex-wrap:wrap;padding:0 0 20px;list-style:none;
  color:rgba(253,255,255,.7);align-items:center;font-size:13px}
.path li+li::before{content:"/";margin-inline:8px;opacity:.5}
.path a{color:rgba(253,255,255,.7)}
.path a:hover{color:#fdffff}
.path li:last-child{font-weight:600;color:#fdffff}
.header-sub{font-size:14px;margin:0 0 14px;color:var(--quiet);line-height:1.5}
.estimate-heading-2{margin:0 0 7px;color:var(--ink);font-size:20px;font-weight:700}
.estimate-txt{max-width:340px;line-height:1.55;color:var(--quiet);margin:0 auto;font-size:14.5px}
.done-icon{font-size:31px;width:60px;background:linear-gradient(135deg,#3979ff,var(--azure-600));line-height:1;border-radius:50%;color:#fdffff;place-items:center;font-weight:800;display:grid;box-shadow:0 10px 26px rgba(32,92,255,.3);margin:4px auto 16px;height:60px}
.marker-pill{align-items:center;padding:7px 14px;color:#fdffff;display:inline-flex;font-size:13px;
  font-weight:600;border:1px solid rgba(253,255,255,.22);border-radius:var(--r-pill);gap:8px;background:rgba(253,255,255,.1)}
.marker-pill::before{content:"";background:var(--sky);box-shadow:0 0 0 3px rgba(127,162,253,.24);width:7px;border-radius:50%;height:7px}
.band{padding-block:clamp(52px,7vw,92px)}
.band--other{background:var(--card);position:relative}
.core-bar .button{margin-left:8px}
.estimate-row{gap:12px;grid-template-columns:1fr 1fr;display:grid}
.estimate-item{margin-bottom:12px;display:block}
.portraits{display:flex}

.play-entry{font-weight:600;font-size:15px;gap:12px;color:#fdffff;display:inline-flex;align-items:center}
.play-entry:hover{color:#fdffff}
.play-entry .play{display:inline-flex;height:46px;border-radius:50%;width:46px;
  transition:background .18s,transform .18s;align-items:center;background:rgba(253,255,255,.14);border:1px solid rgba(253,255,255,.26);
  justify-content:center}
.play-entry:hover .play{background:rgba(253,255,255,.26);transform:scale(1.06)}
.play-entry .play::after{height:0;content:"";width:0;border-left:10px solid var(--sky);
  border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:3px}
.section-head{margin:0 0 clamp(28px,4vw,44px);max-width:680px;position:relative}
.section-head .lead{margin-top:14px}
.section-head .heading-2::after{background:linear-gradient(90deg,var(--azure),var(--sky));width:56px;height:4px;margin-top:16px;border-radius:2px;display:block;content:""}

.estimate-dialog{width:100%;position:relative;margin:0 auto;padding:22px 22px 18px;border-radius:var(--r-lg);background:#fdffff;
  max-width:560px;color:var(--ink);box-shadow:0 24px 60px rgba(12,19,47,.21)}
.estimate-header{align-items:center;display:flex;margin-bottom:12px;justify-content:space-between}
.estimate-sign{display:flex;gap:10px;align-items:center}
.estimate-sign b{font-size:15px;font-weight:700;font-family:var(--font-head);color:var(--ink)}
.estimate-mark{font-weight:800;color:#fdffff;display:grid;box-shadow:0 4px 12px rgba(32,92,255,.3);width:36px;font-size:16px;flex:none;place-items:center;line-height:1;height:36px;border-radius:10px;background:linear-gradient(135deg,#3979ff,var(--azure-600))}
.estimate-marker{padding:5px 10px;background:var(--azure-50);display:inline-flex;font-size:12px;white-space:nowrap;color:var(--azure-600);align-items:center;font-weight:700;gap:6px;border-radius:var(--r-pill)}
.estimate-marker::before{background:var(--azure);content:"";height:6px;width:6px;border-radius:50%}
.estimate-heading{color:var(--ink);font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0 0 4px}

.post{align-items:center;gap:40px;display:grid;grid-template-columns:1fr}
.post__txt h2{margin-bottom:18px}
.post__txt p{margin-bottom:14px;color:var(--ink-alt);font-size:16px}
.post__sub{font-size:17px;font-weight:700;margin:10px 0 12px}

.toggle{cursor:pointer;z-index:1105;display:none;padding:6px;flex-direction:column;
  gap:5px;background:none;border:none}
.toggle span{background:var(--slate);height:3px;width:26px;display:block;border-radius:2px;
  transition:transform .3s ease,opacity .3s ease}
.toggle.shown span:nth-child(1){transform:rotate(45deg) translate(7px,7px)}
.toggle.shown span:nth-child(2){opacity:0}
.toggle.shown span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}

.web-header{top:0;z-index:100;position:sticky;background:rgba(246,247,254,.84);border-bottom:1px solid var(--edge);backdrop-filter:blur(12px)}
.web-header__body{display:flex;justify-content:space-between;min-height:74px;align-items:center;padding-block:10px;gap:20px}
.point{gap:12px;border:1px solid rgba(253,255,255,.17);border-radius:var(--r-lg);backdrop-filter:blur(10px);align-items:flex-start;
  transition:background .18s,border-color .18s;padding:14px;background:rgba(253,255,255,.1);display:flex}
.point:hover{background:rgba(253,255,255,.13);border-color:rgba(127,162,253,.51)}
.point .icon-tile{color:#fdffff;border-radius:10px;background:linear-gradient(135deg,#3979ff,var(--azure));height:36px;box-shadow:0 6px 14px rgba(32,92,255,.33);width:36px}
.point strong{color:#fdffff;font-size:15px;display:block;font-family:var(--font-head)}
.point span{font-size:13px;color:rgba(253,255,255,.66)}
.request-heading{margin-bottom:6px;font-size:13px;color:var(--ink);font-weight:600;display:block}
.request-heading em{font-style:normal;color:var(--quiet);font-weight:500}
textarea.request-ctrl{resize:vertical;border-radius:var(--r-lg);min-height:88px}
.request-ctrl{border:1px solid var(--edge);background:#fdffff;outline:none;font:inherit;font-size:15px;color:var(--ink);min-height:46px;border-radius:var(--r-pill);transition:border-color .15s,box-shadow .15s;padding:11px 16px;width:100%}
textarea.request-ctrl{resize:vertical;border-radius:var(--r-sm);min-height:88px}
.request-ctrl::placeholder{color:#a2acc4}
.request-ctrl:hover{border-color:var(--sky-50)}
.request-ctrl:focus{border-color:var(--azure);box-shadow:0 0 0 4px var(--sky-50)}

.container{max-width:var(--container);padding-inline:var(--inset);margin-inline:auto}

.button{
  text-align:center;justify-content:center;font-weight:600;padding:13px 22px;
  line-height:1.2;font-size:15px;
  white-space:nowrap;border:1px solid transparent;border-radius:var(--r-pill);letter-spacing:.005em;font-family:var(--font-head);
  transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s;gap:8px;align-items:center;display:inline-flex;
  cursor:pointer;
}
.button--small{font-size:14px;padding:9px 16px}
.button--xl{padding:16px 28px;font-size:17px}
.button--wide{width:100%}
.button--main{background:linear-gradient(180deg,#2c6aff,var(--azure));box-shadow:0 6px 18px rgba(32,92,255,.3),inset 0 1px 0 rgba(253,255,255,.21);color:#fdffff}
.button--main:hover{box-shadow:0 10px 24px rgba(32,92,255,.37),inset 0 1px 0 rgba(253,255,255,.21);transform:translateY(-1px);color:#fdffff;background:linear-gradient(180deg,var(--azure),var(--azure-600))}
.button--secondary{background:transparent;border-color:var(--edge);color:var(--ink)}
.button--secondary:hover{background:var(--azure-50);border-color:var(--azure);color:var(--azure)}
.button--invert{color:#fdffff;background:var(--slate)}
.button--invert:hover{transform:translateY(-1px);color:#fdffff;background:var(--slate-alt)}
.button--strong{background:linear-gradient(180deg,#2c6aff,var(--azure));box-shadow:0 8px 24px rgba(32,92,255,.42),inset 0 1px 0 rgba(253,255,255,.21);color:#fdffff}
.button--strong:hover{transform:translateY(-1px);background:linear-gradient(180deg,var(--azure),var(--azure-600));color:#fdffff}
.button--plain{background:#fdffff;color:var(--azure)}
.button--plain:hover{transform:translateY(-1px);background:var(--azure-50);color:var(--azure-600)}
.lead{color:var(--quiet);font-size:clamp(16px,2vw,18px)}

.word-strip{box-shadow:var(--elev-sm);background:#fdffff;margin-top:20px;grid-template-columns:1fr;
  gap:20px;border:1px solid var(--edge);border-radius:var(--r-lg);padding:22px 28px;display:grid;position:relative;z-index:20;align-items:center}
.word-item{gap:14px;align-items:center;display:flex}
.word-item strong{font-size:15px;display:block;font-family:var(--font-head)}
.word-item span{font-size:13px;color:var(--quiet)}
.estimate-set label:hover .pill{border-color:var(--sky-50);background:var(--azure-50)}
.estimate-set input:checked+.pill{box-shadow:0 4px 12px rgba(32,92,255,.3);color:#fdffff;background:var(--azure);border-color:var(--azure)}
.estimate-set input:focus-visible+.pill{outline:3px solid var(--sky-50);outline-offset:2px}
.estimate-hook{font:inherit;margin-top:6px;justify-content:center;font-family:var(--font-head);gap:9px;background:linear-gradient(180deg,#2c6aff,var(--azure));min-height:50px;font-size:16px;border:0;border-radius:var(--r-pill);font-weight:600;transition:.15s;
  align-items:center;color:#fdffff;cursor:pointer;box-shadow:0 8px 20px rgba(32,92,255,.3),inset 0 1px 0 rgba(253,255,255,.21);display:flex;width:100%}
.estimate-hook:hover{background:linear-gradient(180deg,var(--azure),var(--azure-600));transform:translateY(-1px)}
.estimate-mention{margin:12px 0 0;text-align:center;font-size:11.5px;line-height:1.5;color:var(--quiet)}
.estimate-on{text-align:center;padding:22px 6px 14px}

.masthead{position:relative;color:#fdffff;scroll-margin-top:85px;overflow:hidden}
.masthead,.doc-masthead--request{background:linear-gradient(160deg,rgba(12,19,47,.87),rgba(16,31,73,.9)),var(--hero-img,none),linear-gradient(160deg,var(--slate),var(--slate-alt));
  background-size:cover,cover,cover;background-position:center}
.masthead .container{position:relative;padding-block:clamp(36px,6vw,64px) clamp(40px,6vw,64px);z-index:1}
.masthead::before{position:absolute;z-index:0;background:radial-gradient(60% 80% at 85% 10%,rgba(32,92,255,.61),transparent 60%),radial-gradient(50% 60% at 10% 90%,rgba(32,92,255,.34),transparent 60%);content:"";inset:0;
  pointer-events:none}
.masthead::after,.doc-masthead--request::after{pointer-events:none;background-image:linear-gradient(rgba(253,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(253,255,255,.03) 1px,transparent 1px);content:"";z-index:0;background-size:64px 64px;
  inset:0;
  -webkit-mask-image:radial-gradient(70% 70% at 60% 40%,#000100,transparent);position:absolute;mask-image:radial-gradient(70% 70% at 60% 40%,#000100,transparent)}
.masthead__row{grid-template-columns:1fr;display:grid;align-items:start;gap:28px}
.masthead__txt{color:#fdffff}
.masthead__heading{font-size:clamp(32px,4.6vw,56px);margin:18px 0 18px;letter-spacing:-.03em;font-weight:700;line-height:1.04}
.masthead__heading .strong{padding:0;color:var(--sky);background:none;border-radius:0;box-shadow:none}
.masthead__lead{max-width:560px;color:rgba(253,255,255,.8);margin-bottom:22px;font-size:clamp(16px,2vw,18px)}
.masthead__buttons{display:flex;gap:18px;margin-bottom:28px;align-items:center;flex-wrap:wrap}
.masthead__points{gap:12px;grid-template-columns:1fr 1fr;max-width:640px;display:grid}
.input{font:inherit;background:#fdffff;border:1px solid var(--edge);padding:12px 16px;
  transition:border-color .18s,box-shadow .18s;border-radius:var(--r-pill);font-size:15px;width:100%}
.input:hover{border-color:var(--sky-50)}
.input:focus{outline:none;box-shadow:0 0 0 4px var(--sky-50);border-color:var(--azure)}
textarea.input{resize:vertical;min-height:130px;border-radius:var(--r-sm)}
.sign{color:var(--ink);align-items:center;gap:10px;font-family:var(--font-head);display:flex;letter-spacing:-.02em;font-weight:700;font-size:21px}
.sign:hover{color:var(--ink)}
.sign__mark{position:relative;height:34px;border-radius:10px;box-shadow:0 4px 12px rgba(32,92,255,.3);display:inline-flex;flex-shrink:0;background:linear-gradient(135deg,#3979ff,var(--azure-600));justify-content:center;align-items:center;width:34px}
.sign__mark::after{background:#fdffff;border-radius:2px;width:16px;box-shadow:0 5px 0 0 #fdffff,0 10px 0 0 #fdffff;transform:translateY(-5px);content:"";height:2.5px}

.estimate-card{padding:26px;border-radius:var(--r-lg);color:var(--ink);background:#fdffff;box-shadow:var(--elev-lg);border:1px solid var(--edge)}
.estimate-card h2{margin:10px 0 6px;font-size:22px;font-weight:700}
.estimate-card p.sub{color:var(--quiet);font-size:14px;margin-bottom:18px}
.estimate-frame{border:0;display:block;width:100%;background:transparent}
.reasons-list{margin:0;padding:0;list-style:none;grid-template-columns:1fr;display:grid;gap:12px}
.reasons-list li{color:var(--ink-alt);align-items:flex-start;display:flex;font-size:15px;gap:12px}
.reasons-list li::before{font-size:12px;box-shadow:0 4px 10px rgba(32,92,255,.3);flex:none;height:22px;display:inline-flex;background:var(--azure);align-items:center;
  margin-top:1px;color:#fdffff;border-radius:50%;font-weight:800;justify-content:center;width:22px;content:"✓"}

.place-card{aspect-ratio:1/.9;cursor:pointer;border-radius:var(--r-2xl);overflow:hidden;
  box-shadow:var(--elev-md);background:var(--azure-50);position:relative;border:1px solid var(--sky-50)}
.place-empty{flex-direction:column;position:absolute;display:flex;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 360' fill='none' stroke='%23b9cdff' stroke-width='6' stroke-linecap='round'%3E%3Cpath d='M-10 120C80 100 140 160 220 140S360 60 420 90'/%3E%3Cpath d='M60-10C90 80 40 160 110 240s60 130 40 140'/%3E%3Cpath d='M-10 260c90-30 170 10 250-20s120-90 180-60' stroke-width='10' stroke='%23dbe6ff'/%3E%3Cpath d='M300-10c-20 90 30 160-10 250s-40 80-30 130'/%3E%3C/svg%3E"),linear-gradient(var(--sky-50) 1px,transparent 1px),linear-gradient(90deg,var(--sky-50) 1px,transparent 1px);padding:24px 24px 90px;justify-content:center;inset:0;text-align:center;background-size:cover,44px 44px,44px 44px;
  align-items:center;
  gap:16px}
.place-empty::before{content:"";position:absolute;height:150px;transform:translate(-50%,-50%);width:150px;background:rgba(32,92,255,.17);left:50%;animation:mapPulse 2.6s ease-out infinite;border-radius:50%;top:44%}
.place-locator{border-radius:50% 50% 50% 0;width:56px;height:56px;align-items:center;justify-content:center;position:relative;display:flex;transform:rotate(-45deg);
  box-shadow:0 12px 30px rgba(32,92,255,.42);background:var(--azure)}
.place-locator::after{border-radius:50%;content:"";width:18px;height:18px;background:#fdffff}
.place-empty p{color:var(--ink);box-shadow:var(--elev-md);margin:0;left:18px;font-size:14px;right:18px;text-align:left;padding:14px 16px;font-weight:600;
  border-radius:var(--r-sm);background:#fdffff;bottom:18px;position:absolute}
.place-empty .button{position:relative}
.place-card iframe{height:100%;width:100%;border:0;inset:0;display:block;position:absolute}
.place-card.is-ready .place-empty{display:none}
.strong{background:linear-gradient(transparent 68%,var(--sky-50) 68%);color:var(--azure)}
.bar-entry{transition:background .18s,color .18s;font-weight:500;font-size:15px;border-radius:var(--r-pill);padding:9px 14px;color:var(--ink)}
.bar-entry:hover{background:var(--azure-50);color:var(--azure-600)}
.pill{font:inherit;font-size:14px;align-items:center;border-radius:var(--r-pill);color:var(--ink);transition:.15s;background:#fdffff;
  display:inline-flex;justify-content:center;white-space:nowrap;cursor:pointer;padding:8px 14px;border:1px solid var(--edge);font-weight:500}
@keyframes mapPulse{0%{transform:translate(-50%,-50%) scale(.4);opacity:.9}100%{transform:translate(-50%,-50%) scale(1.3);opacity:0}}
.solution-card{display:flex;flex-direction:column;border:1px solid var(--edge);transition:box-shadow .2s,transform .2s,border-color .2s;padding:26px;box-shadow:var(--elev-sm);
  border-radius:var(--r-lg);position:relative;overflow:hidden;background:#fdffff}
.solution-card::before{font-family:var(--font-head);content:"0" counter(svc);letter-spacing:-.04em;transition:color .2s;font-weight:800;top:14px;font-size:44px;right:20px;position:absolute;counter-increment:svc;color:var(--azure-50);line-height:1}
.solution-card::after{left:0;background:linear-gradient(90deg,var(--azure),var(--sky));height:3px;position:absolute;right:0;opacity:0;top:0;transition:opacity .2s;content:""}
.solution-card:hover{transform:translateY(-3px);box-shadow:var(--elev-md);border-color:var(--sky-50)}
.solution-card:hover::before{color:var(--sky-50)}
.solution-card:hover::after{opacity:1}
.solution-card .icon-tile{color:var(--azure);height:48px;border-radius:14px;margin-bottom:16px;width:48px;background:linear-gradient(135deg,var(--azure-50),var(--sky-50))}
.solution-card h3{margin-bottom:8px;font-size:18px;font-weight:700}
.solution-card p{color:var(--quiet);font-size:15px;margin-bottom:16px}
.ctrl-button{background:#fdffff;color:var(--ink);border-radius:50%;transition:border-color .18s,color .18s,transform .18s,background .18s;font-size:22px;width:44px;
  cursor:pointer;border:1px solid var(--edge);align-items:center;display:flex;justify-content:center;
  height:44px}
.ctrl-button:hover{transform:translateY(-2px);color:var(--azure);border-color:var(--azure)}

.stages-row{display:grid;grid-template-columns:1fr;gap:20px}

.shot__header{justify-content:space-between;gap:20px;align-items:flex-end;display:flex;margin-bottom:30px}
.shot__header .heading-2{margin-top:0}
.shot__ctrl{display:flex;gap:10px}
.copyright{font-size:13px;padding-top:22px;color:rgba(253,255,255,.51)}

.zones{flex-direction:column;gap:32px;display:flex}
.zones-set h2{font-size:18px;margin-bottom:12px;font-weight:700}
.zones-links{flex-wrap:wrap;display:flex;gap:8px 18px}
.zones-links a{text-decoration:underline}
.done-list{gap:9px;list-style:none;display:flex;flex-direction:column;padding-top:15px;margin:auto 0 0;
  border-top:1px solid var(--edge-alt)}
.done-list li{color:var(--ink-alt);display:flex;gap:9px;align-items:flex-start;font-size:14px}
.done-list li::before{font-weight:800;content:"✓";color:var(--azure)}

.solutions-row{gap:20px;display:grid;grid-template-columns:1fr;counter-reset:svc}
.stage-card{flex-direction:column;align-items:flex-start;padding:28px 24px 24px;border:1px solid var(--edge);transition:box-shadow .2s,transform .2s,border-color .2s;position:relative;border-radius:var(--r-lg);background:#fdffff;display:flex}
.stage-card:hover{border-color:var(--sky-50);transform:translateY(-3px);box-shadow:var(--elev-md)}
.stage-num{font-family:var(--font-head);margin-bottom:18px;height:44px;display:grid;background:linear-gradient(135deg,#3979ff,var(--azure-600));place-items:center;box-shadow:0 6px 16px rgba(32,92,255,.3),0 0 0 6px var(--azure-50);font-weight:700;font-size:17px;border-radius:50%;width:44px;color:#fdffff}
.stage-heading{font-size:18px;font-weight:700;margin-bottom:8px}
.stage-txt{margin-bottom:16px;font-size:15px;color:var(--quiet)}
.stage-card .marker{margin-top:auto}

.hook__box{flex-wrap:wrap;align-items:center;justify-content:space-between;position:relative;border-radius:var(--r-2xl);
  gap:32px;color:#fdffff;padding:clamp(36px,6vw,72px) clamp(24px,5vw,64px);isolation:isolate;display:flex;background:linear-gradient(160deg,var(--slate),var(--slate-alt));box-shadow:var(--elev-lg);overflow:hidden}
.hook__box::before{height:420px;position:absolute;content:"";left:-8%;bottom:-60%;border-radius:50%;width:420px;border:60px solid rgba(32,92,255,.18);z-index:-1}
.hook__box::after{z-index:-1;-webkit-mask-image:radial-gradient(60% 80% at 70% 50%,#000100,transparent);mask-image:radial-gradient(60% 80% at 70% 50%,#000100,transparent);pointer-events:none;inset:0;
  background-image:linear-gradient(rgba(253,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(253,255,255,.03) 1px,transparent 1px);content:"";
  background-size:64px 64px;position:absolute}
.hook__deco{border-radius:50%;height:520px;z-index:-1;right:-10%;background:radial-gradient(circle,rgba(32,92,255,.7),transparent 65%);top:-40%;width:520px;position:absolute}
.hook__txt{position:relative;max-width:560px}
.hook__txt h2{color:#fdffff;margin-bottom:12px}
.hook__txt p{font-size:17px;color:rgba(253,255,255,.76)}
.hook__box .button{position:relative}
.hook__box .sub{font-size:13px;margin-top:12px;color:rgba(253,255,255,.61)}
.shot-fwd{color:#fdffff;border-color:var(--azure);box-shadow:0 6px 16px rgba(32,92,255,.3);background:var(--azure)}
.shot-fwd:hover{background:var(--azure-600);color:#fdffff}
.shot__track{scrollbar-width:none;gap:20px;padding:4px 4px 20px;display:flex;margin-inline:-4px;
  overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}
.shot__track::-webkit-scrollbar{display:none}
.shot-item{scroll-snap-align:start;max-width:380px;flex:0 0 82%;margin:0}
.shot-item .frame{box-shadow:var(--elev-md);position:relative;padding:26px 10px 10px;background:var(--slate);border-radius:var(--r-lg);transition:transform .2s,box-shadow .2s;overflow:hidden}
.shot-item .frame::before{position:absolute;box-shadow:12px 0 0 rgba(253,255,255,.33),24px 0 0 rgba(253,255,255,.33);height:7px;background:rgba(253,255,255,.33);left:14px;content:"";border-radius:50%;width:7px;top:10px}
.shot-item:hover .frame{transform:translateY(-4px);box-shadow:var(--elev-lg)}
.shot-item img{width:100%;object-fit:cover;border-radius:10px;aspect-ratio:4/3;height:auto}
.shot-item figcaption{gap:10px;align-items:flex-start;display:flex;color:var(--ink);font-size:14px;margin-top:12px;font-weight:600;padding:0 6px}
.shot-item figcaption::before{border-radius:50%;box-shadow:0 0 0 3px var(--azure-50);background:var(--azure);margin-top:7px;content:"";height:8px;flex:none;width:8px}

.marker{gap:6px;white-space:nowrap;border-radius:var(--r-pill);display:inline-flex;background:var(--azure-50);
  align-items:center;font-size:12px;color:var(--azure-600);font-weight:700;padding:5px 11px;border:1px solid transparent}

.dock-hook{position:fixed;padding:18px 18px 16px;max-width:calc(100vw - 40px);animation:floatPulse 2.4s ease-out infinite;background:#fdffff;z-index:150;
  border:1px solid var(--edge);color:var(--ink);box-shadow:var(--elev-lg);right:20px;width:300px;
  border-radius:var(--r-lg);bottom:20px}
.dock-hook:hover{animation-play-state:paused}
.dock-heading{font-size:15px;padding-right:26px;margin-bottom:6px;line-height:1.3;font-weight:700;font-family:var(--font-head)}
.dock-txt{color:var(--quiet);font-size:13px;margin-bottom:12px;line-height:1.45}
.dock-hook .button{width:100%;background:linear-gradient(180deg,#2c6aff,var(--azure));color:#fdffff;box-shadow:0 6px 18px rgba(32,92,255,.26)}
.dock-hook .button:hover{background:linear-gradient(180deg,var(--azure),var(--azure-600));color:#fdffff}
.dock-x{top:10px;width:28px;border:none;cursor:pointer;right:10px;line-height:1;align-items:center;
  border-radius:50%;height:28px;font-size:16px;background:var(--canvas);position:absolute;
  display:flex;color:var(--quiet);transition:background .15s;justify-content:center}
.dock-x:hover{color:var(--azure);background:var(--azure-50)}
.dock-trigger{box-shadow:0 16px 40px rgba(12,19,47,.26);color:#fdffff;border:none;align-items:center;right:20px;animation:floatPulse 2.4s ease-out infinite;width:60px;
  background:linear-gradient(135deg,var(--azure),var(--azure-600));transition:transform .22s ease-out;z-index:150;
  bottom:20px;border-radius:50%;position:fixed;height:60px;
  cursor:pointer;display:none;
  justify-content:center}
.dock-trigger:hover{animation-play-state:paused;transform:scale(1.05)}
.colophon-row{grid-template-columns:1fr;border-bottom:1px solid rgba(253,255,255,.14);gap:32px;display:grid;padding-bottom:36px}
.colophon-sign{display:flex;font-family:var(--font-head);color:#fdffff;font-weight:700;font-size:21px;gap:10px;margin-bottom:14px;align-items:center}
.colophon-column .colophon-heading{margin-bottom:14px;color:#fdffff;font-size:15px;align-items:center;display:flex;gap:8px;font-weight:700;font-family:var(--font-head)}
.colophon-column .colophon-heading::before{content:"";background:var(--azure);height:3px;width:14px;border-radius:2px}
.colophon-column p{max-width:320px;font-size:14px;color:rgba(253,255,255,.7)}
.colophon-column .estimate-set{gap:8px;margin-top:16px}
.colophon-column .marker{color:rgba(253,255,255,.83);border-color:rgba(253,255,255,.14);background:rgba(253,255,255,.1)}
.colophon-links{list-style:none;display:flex;gap:9px;flex-direction:column;margin:0;font-size:14px;padding:0}
.colophon-links a{transition:color .15s,padding-left .15s;color:rgba(253,255,255,.72)}
.colophon-links a:hover{padding-left:4px;color:#fdffff}

.web-colophon{position:relative;background:linear-gradient(180deg,var(--slate-alt),var(--slate));color:rgba(253,255,255,.72);margin-top:clamp(24px,5vw,56px);overflow:hidden}
.web-colophon::before{background:radial-gradient(50% 60% at 90% 0%,rgba(32,92,255,.33),transparent 60%),linear-gradient(rgba(253,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(253,255,255,.03) 1px,transparent 1px);background-size:cover,64px 64px,64px 64px;inset:0;pointer-events:none;
  position:absolute;
  content:""}
.web-colophon .container{position:relative;padding-block:56px 24px}

@keyframes floatPulse{
  0%{box-shadow:0 16px 40px rgba(12,19,47,.18), 0 0 0 0 rgba(32,92,255,.51)}
  70%{box-shadow:0 16px 40px rgba(12,19,47,.18), 0 0 0 16px rgba(32,92,255,0)}
  100%{box-shadow:0 16px 40px rgba(12,19,47,.18), 0 0 0 0 rgba(32,92,255,0)}}

.rich-text{max-width:760px}
.rich-text h2{margin:32px 0 12px;font-size:24px;font-weight:700}
.rich-text p{color:var(--ink-alt);font-size:16px;margin-bottom:16px}
.rich-text ul{margin-bottom:16px;padding-left:20px;color:var(--ink-alt);font-size:16px}
.rich-text li{margin-bottom:8px}

.filter-request{margin-bottom:var(--sz-6);flex-wrap:wrap;display:flex;gap:10px}
.filter-request .input{flex:1;min-width:240px}
.request-item{font-weight:600;font-size:14px;color:var(--ink);margin-bottom:16px;display:block}
.request-item .input{display:block;font-weight:400;margin-top:6px}
.request-mention{font-size:14px;margin-bottom:18px;font-weight:600;border-radius:var(--r-sm);padding:12px 16px}
.request-mention--on{color:var(--success);background:var(--success-fill)}
.request-mention--shut{background:var(--alert-fill);color:var(--alert)}

.core--post{display:flex;flex-direction:column}
.core--post > *{width:100%}

.keep-dialog{backdrop-filter:blur(3px);position:fixed;padding:20px;z-index:1200;align-items:center;display:none;justify-content:center;inset:0;background:rgba(12,19,47,.53)}
.keep-dialog.is-ready{display:flex}
.keep-dialog__card{box-shadow:var(--elev-lg);grid-template-columns:.8fr 1fr;max-width:860px;border-radius:var(--r-2xl);width:100%;position:relative;display:grid;overflow:hidden;color:var(--ink);background:var(--card)}
.keep-dialog__aside{overflow:hidden;flex-direction:column;background:linear-gradient(160deg,var(--slate),var(--slate-alt));position:relative;padding:clamp(28px,4vw,44px);justify-content:center;color:#fdffff;display:flex}
.keep-dialog__aside::after{position:absolute;content:"";height:86%;border-radius:50%;right:-28%;border:20px solid rgba(32,92,255,.22);bottom:-28%;width:86%}
.keep-dialog__num{font-family:var(--font-head);color:var(--sky);line-height:.9;font-weight:800;font-size:clamp(56px,8vw,88px);position:relative;letter-spacing:-.04em}
.keep-dialog__aside p{max-width:200px;font-size:17px;font-weight:600;position:relative;margin-top:12px}
.keep-dialog__core{position:relative;padding:clamp(28px,4vw,48px)}
.keep-dialog__core .eyebrow{margin-bottom:14px}
.keep-dialog__core .heading-2{font-size:clamp(25px,3.2vw,36px)}
.keep-dialog__core .lead{margin-top:12px}
.keep-dialog__core .done-list{border-top:0;margin-top:20px;padding-top:0;gap:12px}
.keep-dialog__core .done-list li{font-size:15px}
.keep-dialog__core .button{margin-top:24px}
.keep-dialog__x{top:16px;font-size:20px;display:grid;place-items:center;border-radius:50%;width:42px;position:absolute;line-height:1;background:var(--card);height:42px;color:var(--quiet);right:16px;cursor:pointer;border:1px solid var(--edge)}
.keep-dialog__decline{border:0;color:var(--quiet);text-decoration:underline;cursor:pointer;font-size:13.5px;background:none;display:block;margin:14px auto 0}

.doc-masthead{overflow:hidden;color:var(--ink);position:relative}
.doc-masthead::before{pointer-events:none;inset:0;background:radial-gradient(45% 60% at 20% 30%,var(--sky-50),transparent 70%),radial-gradient(40% 55% at 80% 20%,rgba(32,92,255,.17),transparent 70%);position:absolute;content:"";
  filter:blur(40px);z-index:0}
.doc-masthead .container{padding-block:clamp(36px,6vw,64px) clamp(24px,3vw,40px);position:relative;z-index:1}
.doc-masthead h1{margin:8px 0 12px;font-size:clamp(30px,4.5vw,48px);letter-spacing:-.03em;font-weight:700}
.doc-masthead .container > p{color:var(--quiet);font-size:17px;max-width:640px}
.doc-masthead .path{color:var(--quiet)}
.doc-masthead .path a{color:var(--quiet)}
.doc-masthead .path a:hover{color:var(--azure)}
.doc-masthead .path li:last-child{color:var(--ink)}
.doc-masthead .path li+li::before{color:var(--edge)}

.doc-masthead--request{color:#fdffff}
.doc-masthead--request::before{filter:none;background:radial-gradient(60% 80% at 85% 10%,rgba(32,92,255,.61),transparent 60%),radial-gradient(50% 60% at 10% 90%,rgba(32,92,255,.34),transparent 60%)}
.doc-masthead--request .container{padding-bottom:clamp(40px,6vw,64px)}
.doc-masthead--request h1{margin:14px 0 12px;color:#fdffff}
.doc-masthead--request .masthead__row{margin-top:var(--sz-2)}
.doc-masthead--request .path{color:rgba(253,255,255,.7)}
.doc-masthead--request .path a{color:rgba(253,255,255,.7)}
.doc-masthead--request .path li:last-child{color:#fdffff}
.doc-masthead--request .path li+li::before{color:rgba(253,255,255,.42)}
.filter-nb{margin-bottom:var(--sz-4);color:var(--quiet)}

@media (max-width:860px){
  .core-bar{display:none}
  .toggle{display:flex;position:fixed;top:20px;right:18px}
  .dock-trigger{right:16px;bottom:16px}
}
@media (max-width:640px){
  .keep-dialog{display:none!important}
  .web-header__body{min-height:64px;padding-block:8px}
  .toggle{top:15px}
  .estimate-dialog{padding:18px 16px 14px}
}
@media (max-width:520px){
  .dock-hook{right:12px;left:12px;bottom:12px;width:auto;max-width:none}
  .masthead__points{grid-template-columns:1fr}
  .shot__header{flex-direction:column;align-items:flex-start}
}
@media (max-width:400px){
  .estimate-row{grid-template-columns:1fr}
}
@media (min-width:861px){
  .aside-mob,.bar-veil{display:none}
}
@media (min-width:768px){
  .word-strip{grid-template-columns:repeat(2,1fr)}
  .solutions-row{grid-template-columns:repeat(2,1fr)}
  .stages-row{grid-template-columns:repeat(2,1fr)}
  .colophon-row{grid-template-columns:1.4fr 1fr 1fr 1.2fr}
  .shot-item{flex-basis:380px}
  .reasons-list{grid-template-columns:1fr 1fr}
}
@media (min-width:1024px){
  .masthead__row{grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,56px)}
  .word-strip{grid-template-columns:repeat(3,1fr) auto}
  .word-score{padding-left:20px;border-left:1px solid var(--edge)}
  .post{grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px)}
  .solutions-row{grid-template-columns:repeat(3,1fr)}
  .stages-row{grid-template-columns:repeat(4,1fr)}
  .stage-card:not(:last-child)::after{content:"";position:absolute;top:50px;right:-20px;width:20px;border-top:2px dashed var(--sky-50)}
}
@media (max-width:1023px){
  .masthead__row>div:last-child{order:-1}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .dock-hook,.dock-trigger{animation:none}
  .dock-trigger{transition:none}
  .place-empty::before{animation:none}
}
