/*! partners.css — alskyline.com/partners (redesign 2026-11-01)
    Scoped under #pt. The site-wide v2-svc-enhance.css forces h1/h2/h3 sizes,
    "h2 + p" size/colour and <section> padding with !important; the few
    properties it forces are re-declared here with !important under the #pt id.
    Views avoid <section>/<article>; dark containers carry data-surface="dark". */

#pt{
  --pt-ink:#0B1220;
  --pt-ink-2:#1F2A3C;
  --pt-mute:#475467;
  --pt-line:#D6DEE8;
  --pt-line-2:#E6EBF2;
  --pt-paper:#F4F7FA;
  --pt-blue:#0C6FB8;
  --pt-blue-dk:#0A5A96;
  --pt-blue-tint:#E8F2FB;
  --pt-navy:#0B1F3A;
  --pt-navy-2:#102B4F;
  --pt-on-dark:#FFFFFF;
  --pt-on-dark-2:#D3DEEB;
  --pt-green:#15803D;
  --pt-green-tint:#E7F6EC;
  --pt-red:#B42318;
  --pt-head:66px;
  --pt-display:"Schibsted Grotesk", Figtree, ui-sans-serif, system-ui, sans-serif;
  --pt-body:Figtree, ui-sans-serif, system-ui, sans-serif;
  --pt-radius:16px;
  background:#fff;
  color:var(--pt-ink);
  font-family:var(--pt-body);
  font-size:17px;
  line-height:1.65;
}
@media (min-width:1280px){ #pt{ --pt-head:111px; } }
[dir="rtl"] #pt, #pt [dir="rtl"]{
  --pt-display:Cairo, "IBM Plex Sans Arabic", "Noto Sans Arabic", sans-serif;
  --pt-body:Cairo, "IBM Plex Sans Arabic", "Noto Sans Arabic", sans-serif;
}
[dir="rtl"] #pt{ font-size:18px; }
#pt *, #pt *::before, #pt *::after{ box-sizing:border-box; }
#pt a{ color:inherit; }
#pt ul, #pt ol{ margin:0; padding:0; list-style:none; }
#pt dl, #pt dd{ margin:0; }
#pt svg{ flex-shrink:0; }
#pt :focus-visible{ outline:3px solid var(--pt-blue); outline-offset:3px; border-radius:6px; }
#pt [data-surface="dark"] :focus-visible{ outline-color:#8CCBFF; }
[dir="rtl"] #pt .pt-flip{ transform:scaleX(-1); }
#pt [hidden]{ display:none !important; }

/* ── type ─────────────────────────────────────────────────────────── */
#pt .pt-h1, #pt .pt-h2, #pt .pt-h3{
  font-family:var(--pt-display) !important;
  color:var(--pt-ink) !important;
  margin:0 !important;
  text-wrap:balance;
}
#pt .pt-h1{ font-size:clamp(32px, 4vw, 52px) !important; font-weight:700 !important; letter-spacing:-0.028em !important; line-height:1.08 !important; max-width:22ch; }
#pt .pt-h2{ font-size:clamp(28px, 3vw, 40px) !important; font-weight:700 !important; letter-spacing:-0.022em !important; line-height:1.12 !important; max-width:28ch; }
#pt .pt-h3{ font-size:clamp(19px, 1.6vw, 21px) !important; font-weight:700 !important; letter-spacing:-0.012em !important; line-height:1.3 !important; }
[dir="rtl"] #pt .pt-h1, [dir="rtl"] #pt .pt-h2, [dir="rtl"] #pt .pt-h3,
#pt [dir="rtl"] .pt-h2{ letter-spacing:0 !important; line-height:1.45 !important; }
[dir="rtl"] #pt .pt-h1{ font-size:clamp(30px, 3.6vw, 46px) !important; max-width:26ch; }
#pt [data-surface="dark"] .pt-h1, #pt [data-surface="dark"] .pt-h2, #pt [data-surface="dark"] .pt-h3{ color:var(--pt-on-dark) !important; }
#pt p.pt-lede{ margin:20px 0 0; font-size:clamp(18px, 1.5vw, 20px) !important; line-height:1.6 !important; color:var(--pt-on-dark-2) !important; max-width:60ch; }
#pt p.pt-lead{ margin:14px 0 0; font-size:18px !important; line-height:1.65 !important; color:var(--pt-mute) !important; max-width:64ch; }
#pt [data-surface="dark"] p.pt-lead{ color:var(--pt-on-dark-2) !important; }
#pt p.pt-p{ margin:6px 0 0; font-size:17px !important; line-height:1.65 !important; color:var(--pt-mute) !important; }
#pt .pt-eyebrow{ display:inline-flex; margin:0 0 16px; padding:6px 14px; border-radius:999px; font-size:15px; font-weight:700; background:rgba(255,255,255,.1); color:#E6F0FB; border:1px solid rgba(255,255,255,.22); }

/* ── layout ───────────────────────────────────────────────────────── */
#pt .pt-wrap{ width:100%; max-width:1240px; margin-inline:auto; padding-inline:16px; }
@media (min-width:640px){ #pt .pt-wrap{ padding-inline:24px; } }
#pt .pt-block{ padding-block:clamp(56px, 7vw, 92px); }
#pt .pt-block--paper{ background:var(--pt-paper); border-block:1px solid var(--pt-line-2); }
#pt .pt-head{ margin-bottom:clamp(28px, 3.5vw, 44px); }
#pt .pt-ico{ display:inline-grid; place-items:center; width:52px; height:52px; border-radius:14px; background:var(--pt-blue-tint); color:var(--pt-blue); flex-shrink:0; }
#pt .pt-ico svg{ width:28px; height:28px; }
#pt .pt-ico--sm{ width:46px; height:46px; border-radius:12px; }
#pt .pt-ico--sm svg{ width:24px; height:24px; }

/* ── buttons / links ──────────────────────────────────────────────── */
#pt .pt-btns{ display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
#pt .pt-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  min-height:52px; padding:13px 24px; border-radius:999px;
  font-family:var(--pt-body) !important; font-size:17px !important; font-weight:700; line-height:1.2;
  text-decoration:none; text-align:center; border:2px solid transparent; cursor:pointer;
  transition:background-color .15s ease, border-color .15s ease, color .15s ease;
}
#pt .pt-btn svg{ width:18px; height:18px; }
#pt .pt-btn--primary{ background:var(--pt-blue); color:#fff !important; }
#pt .pt-btn--primary:hover{ background:var(--pt-blue-dk); }
#pt .pt-btn--primary:disabled{ background:#7FA9CC; cursor:default; }
#pt .pt-btn--light{ background:#fff; color:var(--pt-navy) !important; }
#pt .pt-btn--light:hover{ background:#E4EEF9; }
#pt .pt-btn--ghost{ background:transparent; border-color:rgba(255,255,255,.5); color:#fff !important; }
#pt .pt-btn--ghost:hover{ border-color:#fff; background:rgba(255,255,255,.08); }
#pt .pt-link{ display:inline-block; margin-top:10px; color:var(--pt-blue) !important; font-weight:700; text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:2px; text-decoration-color:rgba(12,111,184,.35); }
#pt .pt-link:hover{ text-decoration-color:currentColor; }

/* ── hero ─────────────────────────────────────────────────────────── */
#pt .pt-hero{
  padding-top:calc(var(--pt-head) + clamp(36px, 5vw, 64px));
  padding-bottom:clamp(44px, 6vw, 80px);
  background:linear-gradient(160deg, var(--pt-navy) 0%, var(--pt-navy-2) 100%);
  color:var(--pt-on-dark);
}
#pt .pt-hero__grid{ display:grid; gap:40px; align-items:center; }
@media (min-width:1024px){ #pt .pt-hero__grid{ grid-template-columns:minmax(0, 1.2fr) minmax(0, .8fr); gap:64px; } }
#pt nav{ border:0 !important; padding:0 !important; background:none !important; }
#pt .pt-crumbs{ display:flex; flex-wrap:wrap; gap:6px 10px; margin:0 0 22px; font-size:16px; color:var(--pt-on-dark-2); }
#pt .pt-crumbs a{ color:var(--pt-on-dark-2); text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(211,222,235,.4); }
#pt .pt-crumbs a:hover{ color:#fff; }
#pt .pt-crumbs li + li::before{ content:"/"; margin-inline-end:10px; color:rgba(211,222,235,.6); }
#pt .pt-glance{ background:#fff; color:var(--pt-ink); border-radius:18px; padding:26px; box-shadow:0 30px 60px -28px rgba(0,0,0,.55); }
#pt .pt-glance__h{ margin:0 0 6px !important; font-family:var(--pt-display) !important; font-size:20px !important; font-weight:700 !important; line-height:1.3 !important; color:var(--pt-ink) !important; letter-spacing:0 !important; }
#pt .pt-glance dl > div{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; padding-block:12px; border-bottom:1px solid var(--pt-line-2); }
#pt .pt-glance dl > div:last-child{ border-bottom:0; padding-bottom:0; }
#pt .pt-glance dt{ font-size:16px; color:var(--pt-mute); }
#pt .pt-glance dd{ font-family:var(--pt-display); font-size:20px; font-weight:700; color:var(--pt-ink); text-align:end; }

/* ── partner types ────────────────────────────────────────────────── */
#pt .pt-types{ display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:768px){ #pt .pt-types{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (min-width:1200px){ #pt .pt-types{ grid-template-columns:repeat(4, minmax(0, 1fr)); } }
#pt .pt-type{ display:flex; flex-direction:column; gap:14px; background:#fff; border:1px solid var(--pt-line); border-radius:var(--pt-radius); padding:24px; }
#pt .pt-type__dl{ display:grid; gap:12px; }
#pt .pt-type__dl > div{ padding-top:12px; border-top:1px solid var(--pt-line-2); }
#pt .pt-type__dl dt{ font-size:14px; font-weight:800; color:var(--pt-blue); text-transform:uppercase; letter-spacing:.05em; }
[dir="rtl"] #pt .pt-type__dl dt{ text-transform:none; letter-spacing:0; font-size:15px; }
#pt .pt-type__dl dd{ margin-top:3px; font-size:16px; line-height:1.55; color:var(--pt-ink-2); }

/* ── what you can sell ────────────────────────────────────────────── */
#pt .pt-sell{ display:grid; gap:16px; grid-template-columns:1fr; }
@media (min-width:768px){ #pt .pt-sell{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (min-width:1100px){ #pt .pt-sell{ grid-template-columns:repeat(3, minmax(0, 1fr)); } }
#pt .pt-sell__item{ display:flex; gap:16px; align-items:flex-start; background:#fff; border:1px solid var(--pt-line); border-radius:var(--pt-radius); padding:22px; }

/* ── why ──────────────────────────────────────────────────────────── */
#pt .pt-why{ display:grid; gap:22px 40px; grid-template-columns:1fr; }
@media (min-width:768px){ #pt .pt-why{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
#pt .pt-why li{ display:flex; gap:16px; align-items:flex-start; }

/* ── tiers ────────────────────────────────────────────────────────── */
#pt .pt-tiers{ display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:700px){ #pt .pt-tiers{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (min-width:1200px){ #pt .pt-tiers{ grid-template-columns:repeat(4, minmax(0, 1fr)); } }
#pt .pt-tier{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--pt-line); border-top:5px solid #98A2B3; border-radius:var(--pt-radius); padding:22px; }
#pt .pt-tier--silver{ border-top-color:#64748B; }
#pt .pt-tier--gold{ border-top-color:#B7791F; }
#pt .pt-tier--platinum{ border-top-color:var(--pt-navy); }
#pt .pt-tier__top{ padding-bottom:14px; border-bottom:1px solid var(--pt-line-2); }
#pt .pt-tier__th{ margin:8px 0 0; display:flex; flex-direction:column; gap:2px; }
#pt .pt-tier__th span{ font-size:16px; color:var(--pt-mute); }
#pt .pt-tier__th b{ font-family:var(--pt-display); font-size:24px; color:var(--pt-ink); line-height:1.2; }
#pt .pt-tier__rows li{ display:flex; flex-direction:column; gap:2px; padding-block:10px; border-bottom:1px solid var(--pt-line-2); }
#pt .pt-tier__rows li:last-child{ border-bottom:0; }
#pt .pt-tier__k{ font-size:16px; color:var(--pt-mute); line-height:1.4; }
#pt .pt-tier__v{ display:flex; align-items:center; gap:8px; font-size:17px; font-weight:700; color:var(--pt-ink); }
#pt .pt-tier__v svg{ width:20px; height:20px; color:var(--pt-green); }
#pt .pt-tier__rows li.is-off .pt-tier__v{ color:#667085; font-weight:600; }
#pt .pt-tier__rows li.is-off .pt-tier__v svg{ color:#98A2B3; }
#pt .pt-tier__note{ margin:12px 0 0; padding:12px 14px; border-radius:10px; background:var(--pt-paper); font-size:16px; line-height:1.5; color:var(--pt-ink-2); }
#pt .pt-fine{ display:flex; gap:10px; align-items:flex-start; margin:22px 0 0; font-size:16px; line-height:1.6; color:var(--pt-ink-2); max-width:90ch; }
#pt .pt-fine svg{ width:20px; height:20px; color:var(--pt-mute); margin-top:3px; }

/* ── how to join ──────────────────────────────────────────────────── */
#pt .pt-join{ display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:700px){ #pt .pt-join{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (min-width:1100px){ #pt .pt-join{ grid-template-columns:repeat(4, minmax(0, 1fr)); } }
#pt .pt-join li{ background:#fff; border:1px solid var(--pt-line); border-radius:var(--pt-radius); padding:24px; }
#pt .pt-join__n{ display:inline-grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--pt-navy); color:#fff; font-weight:800; font-size:18px; margin-bottom:14px; }

/* ── certs ────────────────────────────────────────────────────────── */
#pt .pt-certs{ display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:900px){ #pt .pt-certs{ grid-template-columns:repeat(3, minmax(0, 1fr)); } }
#pt .pt-cert{ background:#fff; border:1px solid var(--pt-line); border-radius:var(--pt-radius); padding:24px; }
#pt .pt-cert__top{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
#pt .pt-cert__code{ font-family:var(--pt-display); font-weight:800; font-size:16px; letter-spacing:.06em; color:var(--pt-blue); background:var(--pt-blue-tint); border-radius:8px; padding:4px 10px; }
#pt .pt-cert__price{ font-weight:800; font-size:16px; padding:4px 12px; border-radius:999px; background:var(--pt-paper); border:1px solid var(--pt-line); color:var(--pt-ink); }
#pt .pt-cert__price.is-free{ background:var(--pt-green-tint); border-color:#B7E4C7; color:#11602E; }

/* ── apply ────────────────────────────────────────────────────────── */
#pt .pt-apply__grid{ display:grid; gap:36px; }
@media (min-width:1024px){ #pt .pt-apply__grid{ grid-template-columns:minmax(0, .8fr) minmax(0, 1.2fr); gap:56px; align-items:start; } }
#pt .pt-apply__next-h{ margin-top:30px !important; }
#pt .pt-next{ margin-top:12px; display:grid; gap:10px; counter-reset:n; }
#pt .pt-next li{ position:relative; padding-inline-start:42px; font-size:17px; line-height:1.5; color:var(--pt-ink-2); counter-increment:n; min-height:30px; padding-top:3px; }
#pt .pt-next li::before{ content:counter(n); position:absolute; inset-inline-start:0; top:0; display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--pt-blue-tint); color:var(--pt-blue); font-weight:800; font-size:15px; }
#pt .pt-apply__mail{ display:flex; gap:10px; align-items:flex-start; margin:28px 0 0; font-size:17px; color:var(--pt-ink-2); }
#pt .pt-apply__mail svg{ width:22px; height:22px; color:var(--pt-blue); margin-top:3px; }
#pt .pt-apply__mail .pt-link{ margin-top:0; word-break:break-all; }
#pt .pt-form{ position:relative; background:#fff; border:1px solid var(--pt-line); border-radius:20px; padding:clamp(20px, 3vw, 32px); box-shadow:0 20px 50px -30px rgba(11,31,58,.35); }
#pt .pt-form__grid{ display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:640px){ #pt .pt-form__grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
#pt .pt-field{ display:flex; flex-direction:column; gap:7px; min-width:0; }
#pt .pt-field--full{ grid-column:1 / -1; }
#pt .pt-field label{ font-size:16px; font-weight:700; color:var(--pt-ink); }
#pt .pt-req{ font-weight:500; color:var(--pt-mute); font-size:15px; }
#pt .pt-field input, #pt .pt-field select, #pt .pt-field textarea{
  width:100%; min-height:52px; padding:12px 14px; border:2px solid var(--pt-line); border-radius:12px;
  background:#fff; color:var(--pt-ink); font:inherit; font-size:17px !important; line-height:1.4;
}
#pt .pt-field textarea{ min-height:130px; resize:vertical; }
#pt .pt-field input::placeholder, #pt .pt-field textarea::placeholder{ color:#667085; }
#pt .pt-field input:focus, #pt .pt-field select:focus, #pt .pt-field textarea:focus{ outline:none; border-color:var(--pt-blue); box-shadow:0 0 0 4px rgba(12,111,184,.15); }
[dir="rtl"] #pt .pt-field input[dir="ltr"]{ text-align:right; }
#pt .pt-submit{ width:100%; margin-top:22px; }
#pt .pt-msg{ margin:16px 0 0; padding:14px 16px; border-radius:12px; font-size:17px; font-weight:600; line-height:1.5; }
#pt .pt-msg--ok{ background:var(--pt-green-tint); color:#11602E; }
#pt .pt-msg--err{ background:#FEF3F2; color:var(--pt-red); }
#pt .pt-msg--err a{ color:inherit; text-decoration:underline; }
#pt .pt-hp{ position:absolute !important; top:0; inset-inline-start:0; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); opacity:0; pointer-events:none; }

/* ── FAQ ──────────────────────────────────────────────────────────── */
#pt .pt-faq{ display:grid; gap:12px; max-width:900px; }
#pt .pt-faq details{ background:#fff; border:1px solid var(--pt-line); border-radius:14px; }
#pt .pt-faq details[open]{ border-color:#9DB7D3; }
#pt .pt-faq summary{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:20px 22px !important; cursor:pointer; list-style:none;
  font-family:var(--pt-display) !important; font-size:19px !important; font-weight:700 !important; line-height:1.4; color:var(--pt-ink) !important;
}
#pt .pt-faq summary::-webkit-details-marker{ display:none; }
#pt .pt-faq summary::after{ content:"+"; flex-shrink:0; display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:var(--pt-paper); color:var(--pt-blue); font-size:22px; font-weight:600; line-height:1; transition:transform .2s ease; }
#pt .pt-faq details[open] summary::after{ transform:rotate(45deg); }
#pt .pt-faq summary:hover{ color:var(--pt-blue) !important; }
#pt .pt-faq__a{ padding:0 22px 20px; }
#pt .pt-faq__a p{ margin:0; font-size:17px !important; line-height:1.7 !important; color:var(--pt-ink-2) !important; max-width:75ch; }

/* ── Arabic summary (English page) ────────────────────────────────── */
#pt .pt-ar{ padding:clamp(22px, 3vw, 36px); border-radius:20px; background:var(--pt-paper); border:1px solid var(--pt-line); text-align:right; }
#pt .pt-ar .pt-h2{ font-size:clamp(24px, 2.4vw, 32px) !important; max-width:none; }
#pt .pt-ar p.pt-p{ margin-top:12px; font-size:18px !important; line-height:1.9 !important; color:var(--pt-ink-2) !important; max-width:80ch; }

/* ── closing CTA ──────────────────────────────────────────────────── */
#pt .pt-cta{ background:linear-gradient(160deg, var(--pt-navy) 0%, #0E3563 100%); color:#fff; padding-block:clamp(56px, 7vw, 88px); text-align:center; }
#pt .pt-cta .pt-h2{ margin-inline:auto !important; }
#pt .pt-cta p.pt-lead{ margin-inline:auto; }
#pt .pt-cta .pt-btns{ justify-content:center; }
#pt .pt-cta .pt-btn--ghost bdi{ word-break:break-all; }

@media (prefers-reduced-motion:reduce){ #pt *{ transition:none !important; } }

/* ══ Visual pass 2026-11-01: imagery + motion ═══════════════════════════════
   Motion runs only when <html> has .sk-motion (see public/js/sk-reveal.js).
   Reveals use the `translate` property so hover lifts (transform) keep working. */
#pt .pt-shot{ position:relative; margin:0; border-radius:18px; overflow:hidden; aspect-ratio:4/3; background:#0E2A4D; box-shadow:0 30px 60px -30px rgba(0,0,0,.55); }
#pt .pt-shot img{ display:block; width:100%; height:100%; object-fit:cover; }
#pt .pt-shot--wide{ aspect-ratio:16/10; box-shadow:0 20px 40px -28px rgba(11,31,58,.45); }
#pt .pt-shot--apply{ margin-top:26px; aspect-ratio:16/10; box-shadow:none; }
#pt .pt-chip{ position:absolute; inset-inline-start:12px; bottom:12px; padding:5px 11px; border-radius:999px; background:rgba(11,18,32,.74); color:#fff; font-size:14px; font-weight:600; line-height:1.3; }

/* hero: photo with the "at a glance" card overlapping it */
#pt .pt-hero{ overflow:hidden; }
#pt .pt-hero__media{ position:relative; }
#pt .pt-hero__media .pt-glance{ position:relative; z-index:2; margin:-56px 14px 0; }
@media (min-width:640px){ #pt .pt-hero__media .pt-glance{ margin:-84px 28px 0; } }
.sk-motion #pt .pt-hero__media .pt-shot img{ animation:pt-zoom 1.8s cubic-bezier(.2,.7,.2,1) both; }
.sk-motion #pt .pt-hero__media .pt-glance{ animation:pt-rise .7s .25s cubic-bezier(.2,.7,.2,1) both; }
.sk-motion #pt .pt-glance dl > div{ animation:pt-rise .5s calc(.55s + var(--i, 0) * .12s) ease both; }
@keyframes pt-zoom{ from{ transform:scale(1.12); } to{ transform:none; } }
@keyframes pt-rise{ from{ opacity:0; translate:0 18px; } to{ opacity:1; translate:none; } }

/* "who it's for" heading with a photo */
#pt .pt-head--media{ display:grid; gap:28px; align-items:center; }
@media (min-width:1024px){ #pt .pt-head--media{ grid-template-columns:minmax(0, 1.1fr) minmax(0, .9fr); gap:56px; } }

/* product cards with real screenshots */
#pt .pt-prods{ display:grid; gap:18px; grid-template-columns:1fr; }
@media (min-width:768px){ #pt .pt-prods{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (min-width:1100px){ #pt .pt-prods{ grid-template-columns:repeat(3, minmax(0, 1fr)); } }
#pt .pt-prod{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--pt-line); border-radius:var(--pt-radius); overflow:hidden; transition:transform .25s ease, box-shadow .25s ease, border-color .15s ease; }
#pt .pt-prod:hover{ transform:translateY(-4px); border-color:#9DB7D3; box-shadow:0 14px 30px -18px rgba(11,31,58,.35); }
#pt .pt-prod__media{ position:relative; display:block; aspect-ratio:16/10; overflow:hidden; background:var(--pt-paper); border-bottom:1px solid var(--pt-line-2); }
#pt .pt-prod__media img{ display:block; width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
#pt .pt-prod__media.is-screen img{ object-position:top left; }
#pt .pt-prod:hover .pt-prod__media img{ transform:scale(1.05); }
#pt .pt-prod__body{ display:flex; gap:16px; align-items:flex-start; padding:22px; }

/* hover lifts on the other cards */
#pt .pt-type, #pt .pt-join li, #pt .pt-cert, #pt .pt-tier{ transition:transform .25s ease, box-shadow .25s ease; }
#pt .pt-type:hover, #pt .pt-join li:hover, #pt .pt-cert:hover, #pt .pt-tier:hover{ transform:translateY(-4px); box-shadow:0 14px 30px -18px rgba(11,31,58,.3); }

/* scroll reveals; the tier cards rise further and one after another */
.sk-motion #pt [data-reveal]{
  opacity:0; translate:0 24px;
  transition-property:opacity, translate, transform, box-shadow, border-color;
  transition-duration:.7s, .7s, .25s, .25s, .15s;
  transition-timing-function:ease, cubic-bezier(.2,.7,.2,1), ease, ease, ease;
  transition-delay:calc(var(--i, 0) * 90ms), calc(var(--i, 0) * 90ms), 0s, 0s, 0s;
}
.sk-motion #pt .pt-tiers > [data-reveal]{ translate:0 56px; transition-duration:.8s, .8s, .25s, .25s, .15s; transition-delay:calc(var(--i, 0) * 170ms), calc(var(--i, 0) * 170ms), 0s, 0s, 0s; }
.sk-motion #pt [data-reveal].is-in{ opacity:1; translate:none; }

@media (prefers-reduced-motion:reduce){
  #pt .pt-prod:hover, #pt .pt-prod:hover .pt-prod__media img, #pt .pt-type:hover, #pt .pt-join li:hover, #pt .pt-cert:hover, #pt .pt-tier:hover{ transform:none; }
}
#pt .pt-chip--top{ top:12px; bottom:auto; inset-inline-start:auto; inset-inline-end:12px; }
@media print{ .sk-motion #pt [data-reveal]{ opacity:1 !important; translate:none !important; } }
