/* =====================================================================
   PACKELY DESIGN SYSTEM  —  packely-design-system.css
   Single source of truth for global design tokens + reusable components.
   Token-driven: change a value in :root once to update the whole site.
   NOTE: brand colours, accent and heading font are NEUTRAL PLACEHOLDERS
   pending brand decisions — swap the values in the :root block below.
   Breakpoints aligned to Elementor defaults: tablet <=1024px, mobile <=767px.
   ===================================================================== */

:root{
  /* ---- Brand (PLACEHOLDER — BRAND DECISION REQUIRED) ---- */
  --pk-color-brand-primary:#234A72;
  --pk-color-brand-primary-hover:#1B3B5C;
  --pk-color-brand-primary-active:#152F49;
  --pk-color-on-brand:#FFFFFF;
  --pk-color-brand-secondary:#0F1B2A;
  --pk-color-accent:#E0873A;
  --pk-color-on-accent:#14202E;

  /* ---- Text ---- */
  --pk-color-text:#14202E;
  --pk-color-text-secondary:#4B5A6B;
  --pk-color-text-muted:#6B7889;
  --pk-color-on-dark:#EAF0F6;
  --pk-color-on-dark-secondary:#A9B7C6;

  /* ---- Surfaces / backgrounds ---- */
  --pk-color-bg:#FFFFFF;
  --pk-color-bg-subtle:#F4F7FA;
  --pk-color-surface:#FFFFFF;
  --pk-color-surface-alt:#F9FBFD;
  --pk-color-bg-dark:#0F1B2A;

  /* ---- Lines ---- */
  --pk-color-border:#E3E8EF;
  --pk-color-border-strong:#CBD5E1;

  /* ---- Status ---- */
  --pk-color-success:#1E7F4F; --pk-color-success-surface:#E7F4EE;
  --pk-color-warning:#8A5A00; --pk-color-warning-surface:#FBF1DF;
  --pk-color-error:#C0362C;   --pk-color-error-surface:#FBEBE9;

  /* ---- Focus ---- */
  --pk-color-focus:#2563EB;

  /* ---- Typography ---- */
  --pk-font-sans:'DM Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --pk-font-heading:var(--pk-font-sans);
  --pk-fs-display:clamp(2.25rem,1.55rem + 2.8vw,3.5rem);
  --pk-fs-h1:clamp(1.875rem,1.4rem + 1.9vw,2.75rem);
  --pk-fs-h2:clamp(1.5rem,1.2rem + 1.2vw,2.125rem);
  --pk-fs-h3:clamp(1.3125rem,1.16rem + 0.6vw,1.625rem);
  --pk-fs-h4:clamp(1.125rem,1.06rem + 0.28vw,1.25rem);
  --pk-fs-body-lg:clamp(1.0625rem,1.02rem + 0.18vw,1.1875rem);
  --pk-fs-body:clamp(1rem,0.975rem + 0.1vw,1.0625rem);
  --pk-fs-body-sm:0.9375rem;
  --pk-fs-label:0.875rem;
  --pk-fs-caption:0.8125rem;
  --pk-lh-tight:1.1; --pk-lh-heading:1.2; --pk-lh-snug:1.35; --pk-lh-body:1.6;
  --pk-ls-tight:-0.02em; --pk-ls-heading:-0.01em; --pk-ls-label:0.05em;
  --pk-fw-regular:400; --pk-fw-medium:500; --pk-fw-semibold:600; --pk-fw-bold:700;

  /* ---- Spacing (8pt scale) ---- */
  --pk-space-3xs:0.25rem; --pk-space-2xs:0.5rem; --pk-space-xs:0.75rem;
  --pk-space-sm:1rem; --pk-space-md:1.5rem; --pk-space-lg:2rem;
  --pk-space-xl:3rem; --pk-space-2xl:4rem; --pk-space-3xl:6rem; --pk-space-4xl:8rem;
  --pk-section-y:clamp(3.5rem,2.6rem + 3.6vw,6rem);
  --pk-section-y-sm:clamp(2.5rem,2rem + 2vw,4rem);

  /* ---- Layout ---- */
  --pk-container-wide:1240px; --pk-container:1120px; --pk-container-text:720px;
  --pk-gutter:clamp(1.25rem,0.9rem + 1.1vw,2rem);
  --pk-grid-gap:clamp(1.25rem,0.9rem + 1.2vw,2rem);

  /* ---- Radius ---- */
  --pk-radius-sm:6px; --pk-radius-md:10px; --pk-radius-lg:16px; --pk-radius-xl:22px; --pk-radius-pill:999px;

  /* ---- Borders ---- */
  --pk-border:1px solid var(--pk-color-border);
  --pk-border-strong:1px solid var(--pk-color-border-strong);

  /* ---- Shadows (subtle, ink-tinted) ---- */
  --pk-shadow-sm:0 1px 2px rgba(15,27,42,.06),0 1px 3px rgba(15,27,42,.05);
  --pk-shadow-md:0 4px 14px rgba(15,27,42,.08);
  --pk-shadow-lg:0 14px 40px rgba(15,27,42,.12);

  /* ---- Motion ---- */
  --pk-dur-fast:150ms; --pk-dur:220ms; --pk-dur-slow:320ms;
  --pk-ease:cubic-bezier(.2,.6,.2,1);

  /* ---- Control sizing (touch targets) ---- */
  --pk-control-h:48px; --pk-control-h-sm:40px; --pk-control-h-lg:56px;
}

/* ---------- Base typography (opt-in scope: add .pk-scope on a wrapper) ---------- */
.pk-scope{ font-family:var(--pk-font-sans); font-size:var(--pk-fs-body); line-height:var(--pk-lh-body); color:var(--pk-color-text); -webkit-font-smoothing:antialiased; }
.pk-scope :where(h1,h2,h3,h4,h5,h6){ font-family:var(--pk-font-heading); color:var(--pk-color-text); margin:0 0 var(--pk-space-sm); font-weight:var(--pk-fw-bold); letter-spacing:var(--pk-ls-heading); line-height:var(--pk-lh-heading); }
.pk-scope p{ margin:0 0 var(--pk-space-md); }
.pk-scope a{ color:var(--pk-color-brand-primary); text-decoration:underline; text-underline-offset:2px; text-decoration-thickness:1px; transition:color var(--pk-dur) var(--pk-ease); }
.pk-scope a:hover{ color:var(--pk-color-brand-primary-hover); }

/* ---------- Type utilities (global, safe) ---------- */
.pk-display{ font-family:var(--pk-font-heading); font-size:var(--pk-fs-display); line-height:var(--pk-lh-tight); font-weight:var(--pk-fw-bold); letter-spacing:var(--pk-ls-tight); }
.pk-h1{ font-size:var(--pk-fs-h1); line-height:var(--pk-lh-tight); font-weight:var(--pk-fw-bold); letter-spacing:var(--pk-ls-tight); }
.pk-h2{ font-size:var(--pk-fs-h2); line-height:var(--pk-lh-heading); font-weight:var(--pk-fw-bold); letter-spacing:var(--pk-ls-heading); }
.pk-h3{ font-size:var(--pk-fs-h3); line-height:var(--pk-lh-snug); font-weight:var(--pk-fw-semibold); }
.pk-h4{ font-size:var(--pk-fs-h4); line-height:var(--pk-lh-snug); font-weight:var(--pk-fw-semibold); }
.pk-body-lg{ font-size:var(--pk-fs-body-lg); line-height:var(--pk-lh-body); }
.pk-body{ font-size:var(--pk-fs-body); line-height:var(--pk-lh-body); }
.pk-body-sm{ font-size:var(--pk-fs-body-sm); line-height:1.55; }
.pk-label{ font-size:var(--pk-fs-label); font-weight:var(--pk-fw-semibold); letter-spacing:var(--pk-ls-label); text-transform:uppercase; color:var(--pk-color-text-secondary); }
.pk-caption{ font-size:var(--pk-fs-caption); line-height:1.45; color:var(--pk-color-text-secondary); }
.pk-text-secondary{ color:var(--pk-color-text-secondary); }
.pk-measure{ max-width:64ch; }

/* ---------- Layout helpers ---------- */
.pk-section{ padding-block:var(--pk-section-y); }
.pk-section--sm{ padding-block:var(--pk-section-y-sm); }
.pk-section--dark{ background:var(--pk-color-bg-dark); color:var(--pk-color-on-dark); }
.pk-section--subtle{ background:var(--pk-color-bg-subtle); }
.pk-container{ width:100%; max-width:var(--pk-container); margin-inline:auto; padding-inline:var(--pk-gutter); }
.pk-container--wide{ max-width:var(--pk-container-wide); }
.pk-container--text{ max-width:var(--pk-container-text); }
.pk-grid{ display:grid; gap:var(--pk-grid-gap); }
.pk-grid--2{ grid-template-columns:repeat(2,1fr); }
.pk-grid--3{ grid-template-columns:repeat(3,1fr); }
.pk-grid--4{ grid-template-columns:repeat(4,1fr); }
.pk-stack{ display:flex; flex-direction:column; gap:var(--pk-space-md); }

/* ---------- Buttons ---------- */
.pk-btn{ --_bg:var(--pk-color-brand-primary); --_fg:var(--pk-color-on-brand); --_bd:transparent;
  display:inline-flex; align-items:center; justify-content:center; gap:var(--pk-space-2xs);
  min-height:var(--pk-control-h); padding:0 var(--pk-space-md); border-radius:var(--pk-radius-md);
  font-family:var(--pk-font-sans); font-size:1rem; font-weight:var(--pk-fw-semibold); line-height:1;
  text-decoration:none; cursor:pointer; border:1px solid var(--_bd); background:var(--_bg); color:var(--_fg);
  transition:background var(--pk-dur) var(--pk-ease),border-color var(--pk-dur) var(--pk-ease),transform var(--pk-dur-fast) var(--pk-ease),box-shadow var(--pk-dur) var(--pk-ease); }
.pk-btn:hover{ transform:translateY(-1px); }
.pk-btn:active{ transform:translateY(0); }
.pk-btn:focus-visible{ outline:3px solid var(--pk-color-focus); outline-offset:2px; }
.pk-btn[disabled],.pk-btn.is-disabled{ opacity:.5; cursor:not-allowed; transform:none; box-shadow:none; }
.pk-btn--primary{ --_bg:var(--pk-color-brand-primary); --_fg:var(--pk-color-on-brand); box-shadow:var(--pk-shadow-sm); }
.pk-btn--primary:hover{ --_bg:var(--pk-color-brand-primary-hover); box-shadow:var(--pk-shadow-md); }
.pk-btn--primary:active{ --_bg:var(--pk-color-brand-primary-active); }
.pk-btn--secondary{ --_bg:transparent; --_fg:var(--pk-color-brand-primary); --_bd:var(--pk-color-border-strong); }
.pk-btn--secondary:hover{ --_bg:var(--pk-color-bg-subtle); --_bd:var(--pk-color-brand-primary); }
.pk-btn--tertiary{ --_bg:transparent; --_fg:var(--pk-color-brand-primary); --_bd:transparent; min-height:auto; padding:var(--pk-space-3xs) 0; border-radius:var(--pk-radius-sm); }
.pk-btn--tertiary:hover{ transform:none; color:var(--pk-color-brand-primary-hover); gap:var(--pk-space-xs); }
.pk-btn--lg{ min-height:var(--pk-control-h-lg); padding-inline:var(--pk-space-lg); font-size:1.0625rem; }
.pk-btn--sm{ min-height:var(--pk-control-h-sm); padding-inline:var(--pk-space-sm); font-size:.9375rem; }
.pk-btn--block{ width:100%; }
.pk-btn--on-dark.pk-btn--secondary{ --_fg:var(--pk-color-on-dark); --_bd:rgba(255,255,255,.35); }
.pk-btn--on-dark.pk-btn--secondary:hover{ --_bg:rgba(255,255,255,.08); --_bd:rgba(255,255,255,.6); }

/* ---------- Forms ---------- */
.pk-field{ display:flex; flex-direction:column; gap:var(--pk-space-2xs); margin-bottom:var(--pk-space-md); }
.pk-form-label{ font-size:var(--pk-fs-body-sm); font-weight:var(--pk-fw-semibold); color:var(--pk-color-text); }
.pk-required{ color:var(--pk-color-error); margin-left:2px; }
.pk-input,.pk-select,.pk-textarea{ width:100%; min-height:var(--pk-control-h); padding:0 var(--pk-space-sm);
  font-family:var(--pk-font-sans); font-size:1rem; color:var(--pk-color-text); background:var(--pk-color-surface);
  border:1px solid var(--pk-color-border-strong); border-radius:var(--pk-radius-md);
  transition:border-color var(--pk-dur) var(--pk-ease),box-shadow var(--pk-dur) var(--pk-ease); }
.pk-textarea{ min-height:120px; padding:var(--pk-space-sm); line-height:var(--pk-lh-body); resize:vertical; }
.pk-input::placeholder,.pk-textarea::placeholder{ color:var(--pk-color-text-muted); }
.pk-input:focus,.pk-select:focus,.pk-textarea:focus{ outline:none; border-color:var(--pk-color-brand-primary); box-shadow:0 0 0 3px rgba(37,99,235,.18); }
.pk-input:focus-visible,.pk-select:focus-visible,.pk-textarea:focus-visible{ outline:3px solid var(--pk-color-focus); outline-offset:1px; }
.pk-field--error .pk-input,.pk-field--error .pk-select,.pk-field--error .pk-textarea{ border-color:var(--pk-color-error); }
.pk-help{ font-size:var(--pk-fs-caption); color:var(--pk-color-text-secondary); }
.pk-error{ display:flex; align-items:center; gap:6px; font-size:var(--pk-fs-caption); color:var(--pk-color-error); font-weight:var(--pk-fw-medium); }
.pk-error::before{ content:'⚠'; font-size:.9em; }
.pk-ok{ display:flex; align-items:center; gap:6px; font-size:var(--pk-fs-caption); color:var(--pk-color-success); font-weight:var(--pk-fw-medium); }
.pk-ok::before{ content:'✓'; }
.pk-choice{ display:flex; align-items:flex-start; gap:var(--pk-space-2xs); min-height:44px; cursor:pointer; }
.pk-choice input{ width:20px; height:20px; margin-top:2px; accent-color:var(--pk-color-brand-primary); }
.pk-msg{ padding:var(--pk-space-sm) var(--pk-space-md); border-radius:var(--pk-radius-md); border:1px solid transparent; font-size:var(--pk-fs-body-sm); }
.pk-msg--error{ background:var(--pk-color-error-surface); border-color:var(--pk-color-error); color:var(--pk-color-error); }
.pk-msg--success{ background:var(--pk-color-success-surface); border-color:var(--pk-color-success); color:var(--pk-color-success); }
.pk-msg--warning{ background:var(--pk-color-warning-surface); border-color:var(--pk-color-warning); color:var(--pk-color-warning); }

/* ---------- Cards ---------- */
.pk-card{ background:var(--pk-color-surface); border:1px solid var(--pk-color-border); border-radius:var(--pk-radius-lg);
  padding:var(--pk-space-lg); box-shadow:var(--pk-shadow-sm);
  transition:transform var(--pk-dur) var(--pk-ease),box-shadow var(--pk-dur) var(--pk-ease),border-color var(--pk-dur) var(--pk-ease); }
.pk-card--interactive:hover{ transform:translateY(-3px); box-shadow:var(--pk-shadow-md); border-color:var(--pk-color-border-strong); }
.pk-card__title{ font-size:var(--pk-fs-h4); font-weight:var(--pk-fw-semibold); margin:0 0 var(--pk-space-2xs); }
.pk-card__text{ color:var(--pk-color-text-secondary); font-size:var(--pk-fs-body-sm); margin:0; }

/* Service card */
.pk-service{ display:flex; flex-direction:column; gap:var(--pk-space-sm); height:100%; }
.pk-service__icon{ display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:var(--pk-radius-md); background:var(--pk-color-bg-subtle); color:var(--pk-color-brand-primary); }
.pk-service__icon svg{ width:26px; height:26px; }
.pk-service .pk-btn--tertiary{ margin-top:auto; }

/* Stat / fact card */
.pk-stat__num{ font-family:var(--pk-font-heading); font-size:clamp(2rem,1.5rem + 2vw,2.75rem); font-weight:var(--pk-fw-bold); line-height:1; letter-spacing:var(--pk-ls-tight); color:var(--pk-color-text); }
.pk-stat__label{ margin-top:var(--pk-space-2xs); color:var(--pk-color-text-secondary); font-size:var(--pk-fs-body-sm); }
.pk-section--dark .pk-stat__num{ color:var(--pk-color-on-dark); }
.pk-section--dark .pk-stat__label{ color:var(--pk-color-on-dark-secondary); }

/* Process card */
.pk-process__step{ font-family:var(--pk-font-heading); font-size:var(--pk-fs-body-sm); font-weight:var(--pk-fw-bold); color:var(--pk-color-brand-primary); }
.pk-process__title{ font-size:var(--pk-fs-h4); font-weight:var(--pk-fw-semibold); margin:var(--pk-space-3xs) 0 var(--pk-space-2xs); }

/* Case card */
.pk-case{ padding:0; overflow:hidden; }
.pk-case__body{ padding:var(--pk-space-md) var(--pk-space-lg) var(--pk-space-lg); }

/* ---------- Badges / labels ---------- */
.pk-badge{ display:inline-flex; align-items:center; gap:6px; padding:4px 10px; border-radius:var(--pk-radius-pill);
  font-size:var(--pk-fs-caption); font-weight:var(--pk-fw-semibold); letter-spacing:.02em; line-height:1.4;
  background:var(--pk-color-bg-subtle); color:var(--pk-color-text-secondary); border:1px solid var(--pk-color-border); }
.pk-badge--brand{ background:rgba(35,74,114,.10); color:var(--pk-color-brand-primary); border-color:rgba(35,74,114,.20); }
.pk-badge--accent{ background:rgba(224,135,58,.14); color:#8A4D12; border-color:rgba(224,135,58,.30); }
.pk-badge--success{ background:var(--pk-color-success-surface); color:var(--pk-color-success); border-color:transparent; }

/* ---------- Pricing (STRUCTURE ONLY — no prices invented) ---------- */
.pk-price{ display:flex; flex-direction:column; height:100%; }
.pk-price__name{ font-size:var(--pk-fs-h4); font-weight:var(--pk-fw-semibold); }
.pk-price__desc{ color:var(--pk-color-text-secondary); font-size:var(--pk-fs-body-sm); margin:var(--pk-space-2xs) 0 var(--pk-space-md); }
.pk-price__amount{ display:flex; align-items:baseline; gap:6px; margin-bottom:var(--pk-space-2xs); }
.pk-price__value{ font-family:var(--pk-font-heading); font-size:clamp(2rem,1.6rem + 1.6vw,2.5rem); font-weight:var(--pk-fw-bold); line-height:1; letter-spacing:var(--pk-ls-tight); }
.pk-price__period{ color:var(--pk-color-text-secondary); font-size:var(--pk-fs-body-sm); font-weight:var(--pk-fw-medium); }
.pk-price__meta{ font-size:var(--pk-fs-caption); color:var(--pk-color-text-muted); margin-bottom:var(--pk-space-md); }
.pk-price__list{ list-style:none; margin:0 0 var(--pk-space-lg); padding:0; display:flex; flex-direction:column; gap:var(--pk-space-2xs); }
.pk-price__list li{ display:flex; align-items:flex-start; gap:var(--pk-space-2xs); font-size:var(--pk-fs-body-sm); color:var(--pk-color-text-secondary); }
.pk-price__list li::before{ content:'✓'; color:var(--pk-color-success); font-weight:var(--pk-fw-bold); flex:0 0 auto; }
.pk-price .pk-btn{ margin-top:auto; }
.pk-price--project .pk-price__value{ font-size:clamp(1.5rem,1.2rem + 1.2vw,2rem); }
.pk-price--featured{ border-color:var(--pk-color-brand-primary); box-shadow:var(--pk-shadow-md); position:relative; }
.pk-price__flag{ position:absolute; top:calc(-1 * var(--pk-space-sm)); left:var(--pk-space-lg); }

/* ---------- Media containers ---------- */
.pk-media{ position:relative; display:block; overflow:hidden; border-radius:var(--pk-radius-lg); background:var(--pk-color-bg-subtle); border:1px solid var(--pk-color-border); }
.pk-media img,.pk-media video{ display:block; width:100%; height:100%; object-fit:cover; }
.pk-media--product{ aspect-ratio:1/1; background:#FFFFFF; }
.pk-media--product img{ object-fit:contain; padding:var(--pk-space-lg); }
.pk-media--render{ aspect-ratio:4/3; }
.pk-media--screenshot{ aspect-ratio:16/10; }
.pk-media--video{ aspect-ratio:16/9; }
.pk-media--wide{ aspect-ratio:21/9; }
.pk-media__caption{ font-size:var(--pk-fs-caption); color:var(--pk-color-text-secondary); margin-top:var(--pk-space-2xs); }
.pk-media__ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:var(--pk-color-text-muted); font-size:var(--pk-fs-caption); text-align:center; padding:var(--pk-space-md); }
.pk-media__play{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
.pk-media__play::before{ content:''; width:64px; height:64px; border-radius:50%; background:rgba(255,255,255,.92); box-shadow:var(--pk-shadow-md); }
.pk-media__play::after{ content:''; position:absolute; border-style:solid; border-width:11px 0 11px 18px; border-color:transparent transparent transparent var(--pk-color-brand-primary); margin-left:5px; }

/* ---------- Logo row / marquee ---------- */
.pk-logos{ display:flex; align-items:center; gap:var(--pk-space-xl); flex-wrap:wrap; justify-content:center; }
.pk-logos__item{ height:34px; display:inline-flex; align-items:center; filter:grayscale(1); opacity:.7; transition:opacity var(--pk-dur) var(--pk-ease),filter var(--pk-dur) var(--pk-ease); }
.pk-logos__item:hover{ filter:grayscale(0); opacity:1; }
.pk-logos__item img{ max-height:100%; width:auto; }
.pk-marquee{ overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.pk-marquee__track{ display:flex; align-items:center; gap:var(--pk-space-xl); width:max-content; animation:pk-scroll 32s linear infinite; }
.pk-marquee:hover .pk-marquee__track{ animation-play-state:paused; }
@keyframes pk-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

/* ---------- CTA section ---------- */
.pk-cta{ background:var(--pk-color-bg-dark); color:var(--pk-color-on-dark); border-radius:var(--pk-radius-xl); padding:clamp(2rem,1.5rem + 3vw,3.5rem); text-align:center; }
.pk-cta__title{ font-size:var(--pk-fs-h2); font-weight:var(--pk-fw-bold); letter-spacing:var(--pk-ls-heading); margin:0 0 var(--pk-space-2xs); color:#FFFFFF; }
.pk-cta__text{ color:var(--pk-color-on-dark-secondary); max-width:60ch; margin:0 auto var(--pk-space-lg); }
.pk-cta__actions{ display:flex; gap:var(--pk-space-sm); justify-content:center; flex-wrap:wrap; }

/* ---------- Reveal (opt-in, JS adds .is-visible) ---------- */
.pk-reveal{ opacity:0; transform:translateY(12px); transition:opacity var(--pk-dur-slow) var(--pk-ease),transform var(--pk-dur-slow) var(--pk-ease); }
.pk-reveal.is-visible{ opacity:1; transform:none; }

/* ---------- Global keyboard focus (accessibility) ---------- */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{ outline:3px solid var(--pk-color-focus); outline-offset:2px; border-radius:2px; }

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
  .pk-marquee__track{ animation:none !important; }
  .pk-reveal{ opacity:1 !important; transform:none !important; }
}

/* ---------- Responsive (Elementor default breakpoints) ---------- */
@media (max-width:1024px){
  .pk-grid--4{ grid-template-columns:repeat(2,1fr); }
  .pk-grid--3{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:767px){
  .pk-grid--2,.pk-grid--3,.pk-grid--4{ grid-template-columns:1fr; }
  .pk-logos{ gap:var(--pk-space-lg); }
  .pk-cta__actions{ flex-direction:column; }
  .pk-cta__actions .pk-btn{ width:100%; }
}
