:root {
  color-scheme: light;
  --ink: #252e36;
  --muted: #4c5d70;
  --orange: #ff7521;
  --orange-deep: #ff6412;
  --bg: #f9fbfd;
  --rule: #d9e1e9;
  font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
* {box-sizing: border-box;}
html {min-width: 320px; scroll-behavior: smooth; overflow-x: clip;}
body {margin: 0; color: var(--ink); background: #f3f6f9; overflow-x: clip;}
a {color: inherit; text-decoration: none;}
a:hover {color: var(--orange-deep);}
a:focus-visible {outline: 3px solid var(--orange); outline-offset: 5px; border-radius: 4px;}
.page {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100svh;
  max-width: 1800px;
  margin: 0 auto;
  background:
    radial-gradient(ellipse at 65% 46%, #fff 0%, rgba(255,255,255,.74) 45%, transparent 74%),
    linear-gradient(145deg, #f7f9fc 0%, #fff 47%, #f2f6fa 100%);
}
.backdrop {position: absolute; inset:0; z-index:-1; pointer-events: none; overflow: hidden;}
.left-wash {
  position: absolute; left:-165px; top:-68px; width:545px; height:790px;
  background: linear-gradient(145deg,rgba(218,226,233,.56),rgba(255,255,255,.20) 44%,rgba(226,232,241,.38) 72%,rgba(255,255,255,0));
  clip-path:polygon(0 0,64% 0,100% 31%,39% 100%,0 84%);
}
.left-bevel {
  position:absolute; left:-128px; top:172px; width:300px; height:470px;
  transform:rotate(-41deg);
  background:linear-gradient(100deg,rgba(245,247,250,.10),rgba(213,220,230,.23) 34%,rgba(255,255,255,.85) 40%,rgba(229,235,242,.12) 50%,transparent 80%);
  border-left:2px solid rgba(255,255,255,.84);
}
.top-chevron {
  position:absolute; left:138px; top:-160px; width:340px; height:340px;
  border-right:1px solid rgba(255,125,37,.61);
  border-bottom:1px solid rgba(255,125,37,.61);
  border-radius:12px; transform:rotate(45deg);
}
.bottom-chevron {
  position:absolute; left:-160px; top:480px; width:300px; height:300px;
  border-top:1px solid rgba(255,111,28,.88);
  border-right:1px solid rgba(255,111,28,.88);
  border-radius:2px; transform:rotate(45deg);
}
.orange-thread {position:absolute; height:1px; width:140px; background:rgba(255,105,25,.94); transform:rotate(-45deg);}
.top-thread {top:560px;left:-42px;}
.bottom-thread {bottom:106px;left:35px;width:150px;opacity:.12;}
.dots {
  position:absolute;
  width:145px; height:146px;
  background-image: radial-gradient(circle, #cfd8e3 2.4px, transparent 2.7px);
  background-size:21px 22px;
  opacity:.43;
}
.dots-mid {top:37%;left:20%;}
.dots-low {bottom:62px;right:12px; width:95px;height:94px;opacity:.58;}
.product-visual {
  position:absolute;
  top:5px; right:0;
  width:min(28.1vw, 472px);
  aspect-ratio:434 / 585;
  background:url("assets/pdksx-visual.webp") no-repeat center / contain;
  opacity:.96;
}
.strapline {
  position:absolute; top:8.7%; left:5.5%; z-index:1;
  display:flex; flex-direction:column; align-items:flex-start; gap:16px;
  font-size:10px; font-weight:700; letter-spacing:3.5px; line-height:1.95;
  color:#8794a8;
}
.strapline-dash {width:38px;height:2px;background:var(--orange);}
.main {
  position:relative;
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:100%;
  padding:30px 44px 18px;
}
.hero {width:100%; text-align:center; display:flex; flex-direction:column; align-items:center;}
.logo {width:clamp(285px,29.5vw,480px);height:auto;display:block;object-fit:contain;}
.coming-soon {
  display:inline-flex; align-items:center; justify-content:center;
  gap:10px; margin-top:22px; padding:8px 14px;
  border-radius:100px; background:rgba(255,117,33,.09); color:#f56516;
  font-size:16px; line-height:1.1; letter-spacing:-.35px;
}
.status-dot {display:inline-block;width:13px;height:13px;background:var(--orange);border-radius:50%;box-shadow:0 0 0 4px rgba(255,117,33,.08);}
h1 {
  margin:21px 0 0; font-weight:800;
  font-size:clamp(43px,4.1vw,67px); line-height:1.02;
  letter-spacing:-2.6px;
}
h1 span {display:block;}
h1 .accent {margin-top:4px;color:var(--orange-deep);}
.description {
  max-width:920px;
  margin:19px 0 0;
  color:#3f4e61;
  font-size:clamp(16px,1.24vw,19.5px);
  font-weight:400;
  line-height:1.45;
  letter-spacing:-.27px;
}
.progress {
  width:min(580px,92%);
  margin-top:21px;
  display:flex; align-items:center;gap:15px;
}
.progress-track {height:13px; flex:1; border-radius:99px;background:#e3e9ef;overflow:hidden;box-shadow:inset 0 1px 1px rgba(0,0,0,.02);}
.progress-fill {width:75%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffae68 0%,#ff8031 58%,#ff681b 100%);}
.progress-value {font-size:15px;font-weight:500;color:#3c4858;min-width:44px;text-align:left;}
.feature-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px; width:min(1180px,100%);
  margin-top:26px;
}
.feature-card {
  display:flex; align-items:center; gap:17px;
  min-height:111px;
  padding:16px 20px;
  border:1px solid rgba(218,226,233,.78);
  border-radius:16px;
  background:linear-gradient(115deg,rgba(255,255,255,.76),rgba(249,251,253,.73));
  box-shadow:0 9px 28px rgba(41,59,78,.035);
  backdrop-filter:blur(6px);
}
.feature-icon {
  display:grid; place-items:center; flex:0 0 68px;
  width:68px; height:68px; border-radius:50%;
  background:linear-gradient(135deg,#fff0e7,#fef7f3);
  color:var(--orange);
}
.feature-icon svg {height:33px;width:33px;}
.feature-text {min-width:0;}
.feature-text h2 {margin:0 0 5px;font-size:19px;line-height:1.15;font-weight:750;letter-spacing:-.5px;color:#232c36;}
.feature-text p {margin:0;font-size:15.5px;line-height:1.42;color:#516075;letter-spacing:-.2px;}
.footer {
  position:relative;
  width:calc(100% - 100px);max-width:1580px;
  margin:0 auto;
  border-top:1px solid #dce3eb;
  z-index:1;
}
.footer-inner {
  min-height:56px;display:flex;align-items:center;
  justify-content:space-between;gap:24px;
  padding:10px 26px;
  font-size:15px;color:#354253;
}
.contacts {display:flex;align-items:center;gap:36px;}
.contacts a {display:inline-flex;align-items:center;gap:15px;white-space:nowrap;transition:color .16s;}
.contacts a svg {width:22px;height:22px;flex:none;}
.separator {height:20px;width:1px;background:#bec8d4;}
.powered {white-space:nowrap;letter-spacing:-.2px;font-size:14px;color:#59677a;}
.powered strong {color:#26323d;font-weight:750;}
/* Keep the entire composition within a standard desktop viewport. */
@media (min-width:701px) and (min-height:640px) {
  .page {height:100svh; min-height:0;}
  .main {min-height:0;}
}
@media (min-width:701px) and (max-height:740px) {
  .main {padding-top:14px; padding-bottom:12px;}
  .logo {width:clamp(270px,27.5vw,415px);}
  .coming-soon {margin-top:14px; font-size:15px; padding:7px 12px;}
  h1 {font-size:clamp(38px,3.75vw,58px); margin-top:14px;}
  .description {margin-top:14px; font-size:clamp(15px,1.16vw,18px); line-height:1.38;}
  .progress {margin-top:15px;}
  .feature-grid {margin-top:20px;}
  .feature-card {min-height:96px; padding:12px 15px;}
  .feature-icon {flex-basis:58px;width:58px;height:58px;}
  .feature-icon svg {width:30px;height:30px;}
  .feature-text h2 {font-size:17px;}
  .feature-text p {font-size:14px;}
  .footer-inner {min-height:52px;}
}
@media (max-width:1100px) {
  .main {padding:30px 28px 20px;}
  .strapline {font-size:9px;left:4%;top:8%;}
  .product-visual {width:37vw;opacity:.47;}
  h1 {font-size:clamp(42px,5.5vw,62px);}
  .feature-grid {gap:12px;}
  .feature-card {padding:18px 14px;gap:12px;min-height:116px;}
  .feature-icon {flex-basis:58px;width:58px;height:58px;}
  .feature-icon svg {width:30px;height:30px;}
  .feature-text h2 {font-size:17px;}
  .feature-text p {font-size:14px;}
  .footer {width:calc(100% - 55px);}
  .footer-inner {padding:10px 15px;}
}
@media (max-width:700px) {
  .page {min-height:100svh;}
  .left-wash {left:-290px;opacity:.65;}
  .top-chevron {left:-150px;}
  .bottom-chevron {left:-240px;}
  .strapline {display:none;}
  .product-visual {width:64vw;top:5px;opacity:.22;}
  .dots-mid {left:2%;top:24%;}
  .main {justify-content:center;padding:36px 22px 24px;}
  .logo {width:min(78vw,370px);}
  .coming-soon {font-size:14px;margin-top:16px;padding:7px 11px;}
  .status-dot {width:12px;height:12px;}
  h1 {font-size:clamp(34px,7.6vw,54px);line-height:1.06;letter-spacing:-1.8px;margin-top:16px;}
  h1 .accent {margin-top:6px;}
  .description {margin-top:14px;font-size:14.5px;line-height:1.5;max-width:520px;}
  .desktop-break {display:none;}
  .progress {margin-top:17px;max-width:460px;}
  .progress-track {height:13px;}
  .progress-value {font-size:14px;}
  .feature-grid {grid-template-columns:1fr;max-width:485px;gap:9px;margin-top:22px;}
  .feature-card {min-height:84px;gap:15px;padding:11px 15px;border-radius:14px;}
  .feature-icon {flex:0 0 54px;width:54px;height:54px;}
  .feature-text h2 {font-size:17px;}
  .feature-text p {font-size:13.5px;}
  .footer {width:calc(100% - 44px);}
  .footer-inner {flex-direction:column;gap:8px;padding:10px 0 13px;}
  .contacts {gap:14px;justify-content:center;flex-wrap:wrap;}
  .contacts a {font-size:13px;gap:8px;}
  .contacts a svg {width:17px;height:17px;}
  .separator {height:17px;}
  .powered {font-size:13px;align-self:flex-end;}
}
@media (max-width:380px) {
  .main {padding:24px 15px 18px;}
  h1 {font-size:35px;}
  .feature-card {padding:13px;gap:13px;}
  .contacts {gap:10px;}
  .contacts a {font-size:11.8px;gap:5px;}
}
@media (prefers-reduced-motion: reduce) {*,*:before,*:after {scroll-behavior:auto!important;}}

/* Compact laptop viewports. The page still flows normally on unusually short windows. */
@media (min-width:701px) and (max-height:640px) {
  .main {padding:10px 28px;}
  .logo {width:clamp(240px,25vw,340px);}
  .coming-soon {margin-top:10px; padding:6px 12px;}
  h1 {font-size:clamp(36px,3.45vw,49px); margin-top:11px;}
  .description {margin-top:11px;line-height:1.32;}
  .progress {margin-top:12px;}
  .feature-grid {margin-top:14px;}
  .feature-card {min-height:85px;}
  .footer-inner {min-height:50px;}
}
@media (max-width:700px) and (max-height:700px) {
  .main {justify-content:flex-start; padding-top:18px; padding-bottom:16px;}
  .logo {width:min(66vw,320px);}
  .coming-soon {margin-top:10px;}
  h1 {font-size:clamp(32px,7vw,45px);margin-top:10px;}
  .feature-grid {margin-top:16px;}
  .feature-card {min-height:76px; padding:9px 12px;}
}
