/*!
 * Ariade Pro patterns
 * Author: Shivaji Mitra (M/S. Anblik)
 * License: GPLv2 or later
 *
 * Loaded only on pages that use an Ariade Pro pattern (every pattern's outer
 * block has the class "apx"). Colours and fonts follow the Ariade theme and
 * fall back to safe values on other block themes.
 */

/* ===== Base ===== */
.apx{--apx-navy:#0E1B36;--apx-ink:#0e1b36;--apx-body:#33415c;--apx-violet:#534ab7;--apx-line:rgba(14,27,54,.14);--apx-soft:#f6f5fd;--apx-green:#0e7c6b;--apx-grad:linear-gradient(100deg,#2743d0 0%,#7a2fd6 55%,#c02582 100%);--apx-display:var(--wp--preset--font-family--display,inherit);color:var(--apx-ink);max-width:1200px;margin-left:auto!important;margin-right:auto!important;padding-bottom:4.5rem;box-sizing:border-box}
.apx *,.apx *::before,.apx *::after{box-sizing:border-box}
.apx :where(h2,h3,h4){font-family:var(--apx-display);font-weight:600;color:var(--apx-ink);line-height:1.1;letter-spacing:.01em}
.apx h2{font-size:clamp(2.1rem,4.4vw,3.2rem)!important;margin:0!important}
.apx h3{font-size:clamp(1.35rem,2.4vw,1.7rem)!important;margin:3.2rem 0 1.4rem!important}
.apx p{margin:0}
.apx a{text-decoration:none}
.apx a:focus-visible,.apx summary:focus-visible{outline:3px solid var(--apx-violet);outline-offset:3px;border-radius:8px}
.apx figure{margin:0}
.apx img{max-width:100%;height:auto}
/* Layout groups use grid or flex below; stop WordPress flow spacing from pushing grid items down. */
.apx :is(.apx-hero,.apx-cats,.apx-pdp__top,.apx-quotes,.apx-cathead__band,.apx-sale__band,.apx-acct__band,.apx-team__grid,.apx-tl,.apx-tl__item,.apx-logos__head,.apx-logos__grid,.apx-fg,.apx-cs__hero,.apx-meta,.apx-cs__body,.apx-as__grid,.apx-contact,.apx-cta,.apx-pay,.apx-faq,.apx-review,.apx-member,.apx-cat)>*{margin-block:0!important}

.apx-kick{display:inline-block;font-weight:600;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--apx-violet);margin:0 0 .8rem!important}
.apx-lead{font-size:1.1rem;line-height:1.6;color:var(--apx-body);margin:1rem 0 1.6rem!important;max-width:36rem}
.apx-note{margin-top:1rem!important;font-size:.95rem;color:var(--apx-body)}
.apx-intro{max-width:46rem}

/* Buttons */
.apx .wp-block-buttons.apx-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin:0!important}
.apx .wp-block-button .wp-block-button__link{display:inline-flex;align-items:center;min-height:48px;padding:.75rem 1.5rem;border-radius:999px;background:var(--apx-navy);color:#fff;font-weight:600;font-size:1rem;border:2px solid var(--apx-navy);text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.apx .wp-block-button .wp-block-button__link:hover{background:var(--apx-violet);border-color:var(--apx-violet);color:#fff}
.apx .wp-block-button.apx-btn--ghost .wp-block-button__link{background:#fff;color:var(--apx-navy)}
.apx .wp-block-button.apx-btn--ghost .wp-block-button__link:hover{background:var(--apx-soft);border-color:var(--apx-violet);color:var(--apx-navy)}
.apx .wp-block-button.apx-btn--light .wp-block-button__link{background:#fff;color:var(--apx-navy);border-color:#fff}
.apx .wp-block-button.apx-btn--light .wp-block-button__link:hover{background:var(--apx-navy);color:#fff;border-color:#fff}

/* Icons (decorative, drawn with CSS masks; the text next to them carries the meaning) */
.apx [class*="apx-i-"]::before{content:"";display:block;flex:0 0 auto;width:28px;height:28px;background:currentColor;-webkit-mask:var(--apx-ic) center/contain no-repeat;mask:var(--apx-ic) center/contain no-repeat}
.apx-i-truck{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3zM14 10h4l3 3v3h-7z'/%3E%3Ccircle cx='7' cy='18' r='1.6'/%3E%3Ccircle cx='17' cy='18' r='1.6'/%3E%3C/svg%3E")}
.apx-i-lock{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E")}
.apx-i-return{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12a8 8 0 1 0 3-6.2'/%3E%3Cpath d='M4 4v4h4'/%3E%3C/svg%3E")}
.apx-i-access{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='4.5' r='1.8'/%3E%3Cpath d='M5 8l7 1.5L19 8M12 9.5V14l-3 6M12 14l3 6'/%3E%3C/svg%3E")}
.apx-i-eye{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12z'/%3E%3C/svg%3E")}
.apx-i-pen{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M4 19h16M6 15l8-8 3 3-8 8H6z'/%3E%3C/svg%3E")}
.apx-i-shield{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M12 3l7 4v5c0 4-3 7-7 9-4-2-7-5-7-9V7z'/%3E%3C/svg%3E")}
.apx-i-chat{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H8l-4 4z'/%3E%3Cpath d='M8 9h8M8 12h5'/%3E%3C/svg%3E")}
.apx-i-bag{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h12l1 18H5z'/%3E%3Cpath d='M9 7a3 3 0 0 0 6 0'/%3E%3C/svg%3E")}
.apx-i-download{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12M7 10l5 5 5-5M5 21h14'/%3E%3C/svg%3E")}
.apx-i-pin{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6-7-11a7 7 0 0 1 14 0c0 5-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}
.apx-i-user{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21a8 8 0 0 1 16 0'/%3E%3C/svg%3E")}
.apx-i-card{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3C/svg%3E")}
.apx-i-bolt{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2L4 14h7l-1 8 9-12h-7z'/%3E%3C/svg%3E")}
.apx-i-phone{--apx-ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='7' y='2' width='10' height='20' rx='2'/%3E%3Cpath d='M11 18h2'/%3E%3C/svg%3E")}

/* Lines that start with a bold title: the title sits on its own line, so the <br> after it is not needed. */
.apx :is(.apx-feats,.apx-steps,.apx-stats__list,.apx-results,.apx-assure__list,.apx-fg__grid) li>br{display:none}
.apx :is(.apx-feats,.apx-steps,.apx-fg__grid) strong{margin-bottom:.3rem}

/* Shared lists */
.apx ul.wp-block-list,.apx ol.wp-block-list{list-style:none;margin:0;padding:0}
.apx-ticks{display:grid;gap:.6rem;margin:1.2rem 0 1.6rem!important}
.apx-ticks li{display:flex;gap:.6rem;align-items:flex-start;line-height:1.5}
.apx-ticks li::before{content:"";flex:0 0 auto;width:22px;height:22px;margin-top:2px;border-radius:50%;background:var(--apx-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat}
.apx-card{background:#fff;border:1.5px solid var(--apx-line);border-radius:20px;padding:1.7rem}
.apx-card h3{margin:0 0 .8rem!important;font-size:1.35rem!important}
.apx-card p,.apx-card li{color:var(--apx-body);line-height:1.6}
.apx .apx-bullets{list-style:disc;padding-left:1.2rem}

/* ===== 1. Store home ===== */
.apx-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:2.5rem;align-items:center;background:#fff;border:1.5px solid var(--apx-line);border-radius:24px;padding:2.5rem;position:relative;overflow:hidden}
.apx-hero::before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:var(--apx-grad)}
.apx-hero__art img,.apx-cs__img img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px}
.apx-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.5rem 0 0!important}
.apx-trust li{position:relative;background:var(--apx-soft);border-left:5px solid var(--apx-violet);border-radius:0 14px 14px 0;padding:1rem 1.1rem 1rem 3.6rem;color:var(--apx-body);font-size:.92rem;line-height:1.4}
.apx-trust li::before{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--apx-violet)}
.apx-trust strong{color:var(--apx-ink);font-size:1rem;font-weight:600}
.apx-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.apx-cat{position:relative;background:#fff;border:1.5px solid var(--apx-line);border-radius:18px;overflow:hidden;padding-bottom:1.1rem;transition:border-color .2s,transform .2s}
.apx-cat:hover,.apx-cat:focus-within{border-color:var(--apx-violet);transform:translateY(-3px)}
.apx-cat__img img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.apx-cat h4{font-size:1.3rem!important;padding:1rem 4rem 0 1.2rem!important}
.apx-cat h4 a{color:var(--apx-ink)}
.apx-cat h4 a::after{content:"";position:absolute;inset:0;border-radius:18px}
.apx-cat__n{padding:.2rem 1.2rem 0;font-size:.9rem;color:var(--apx-body)}
.apx-cat::after{content:"\2192";position:absolute;right:1.2rem;bottom:1.3rem;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--apx-navy);color:#fff;pointer-events:none}
.apx .apx-products .woocommerce{padding-inline:0}

/* ===== 2. Product sales page ===== */
.apx-pdp__top{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.apx-pdp__media{background:var(--apx-soft);border-radius:24px;padding:2rem}
.apx-pdp__media img{display:block;width:100%;border-radius:16px}
.apx-price{color:#a52752;margin:.8rem 0 0!important;line-height:1.1}
.apx-price__n{font-family:var(--apx-display);font-weight:600;font-size:2.2rem}
.apx-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.apx-feats li{background:#fff;border:1.5px solid var(--apx-line);border-radius:18px;padding:1.5rem;color:var(--apx-body);line-height:1.55}
.apx .apx-feats li::before{width:48px;height:48px;border-radius:14px;margin-bottom:1rem;background:var(--apx-grad);-webkit-mask:none;mask:none}
.apx-feats li{position:relative}
.apx-feats li::after{content:"";position:absolute;left:calc(1.5rem + 12px);top:calc(1.5rem + 12px);width:24px;height:24px;background:#fff;-webkit-mask:var(--apx-ic) center/contain no-repeat;mask:var(--apx-ic) center/contain no-repeat}
.apx-feats strong{display:block;color:var(--apx-ink);font-size:1.1rem;font-weight:600;margin-bottom:.1rem}
.apx-faq{display:grid;gap:.8rem}
.apx-faq .wp-block-details{background:#fff;border:1.5px solid var(--apx-line);border-radius:14px;padding:0}
.apx .apx-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.1rem 1.3rem;margin:0;font-weight:600;font-size:1.05rem;text-align:left;color:var(--apx-ink);background:none;border:0}
.apx .apx-faq summary::before{content:none!important;display:none!important}
.apx-faq summary::-webkit-details-marker{display:none}
.apx .apx-faq summary::after{content:"+";flex:0 0 auto;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--apx-navy);color:#fff;font-size:1.2rem;line-height:1}
.apx .apx-faq details[open] summary::after{content:"\2212"}
.apx-faq details p{padding:0 1.3rem 1.2rem;margin:0!important;color:var(--apx-body);line-height:1.6}
.apx-quotes{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.apx-review{background:var(--apx-soft);border-left:5px solid var(--apx-violet);border-radius:0 18px 18px 0;padding:1.5rem 1.6rem}
.apx-stars{line-height:1;margin:0!important}
.apx-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.apx-stars::before{content:"\2605\2605\2605\2605\2605" / "";font-size:1.1rem;letter-spacing:.15em;color:#9a5500}
.apx .apx-q{margin:.7rem 0 0!important;padding:0!important;border:0!important;background:none}
.apx .apx-q p{font-size:1.05rem;line-height:1.6;color:var(--apx-ink);font-style:normal}
.apx .apx-q cite{display:block;margin-top:.9rem;font-style:normal;font-weight:600;color:var(--apx-body);font-size:.95rem}

/* ===== 3. Category header ===== */
.apx-cathead__band{position:relative;background-color:#0E1B36;border-radius:24px;overflow:hidden;min-height:340px;display:flex!important;align-items:center}
.apx-cathead__img{position:absolute!important;inset:0}
.apx-cathead__img img{width:100%;height:100%;object-fit:cover}
.apx-cathead__band::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,27,54,.94) 0%,rgba(14,27,54,.86) 45%,rgba(14,27,54,.25) 100%)}
.apx-cathead__text{position:relative;z-index:1;padding:2.5rem 3rem;max-width:38rem;color:#fff}
.apx-cathead__text h2{color:#fff!important}
.apx-cathead__text .apx-kick{color:#d9d3ff}
.apx-cathead__text .apx-lead{color:#e6e9f2;margin-bottom:0!important}
.apx-crumbs{margin:0 0 1rem!important;font-size:.9rem;color:#e6e9f2}
.apx-crumbs a{color:#fff;font-weight:600}
.apx-crumbs a:hover{color:#d9d3ff}
.apx-count{display:inline-block;margin-top:1.2rem!important;background:#2b3550;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:.35rem .9rem;font-size:.9rem;font-weight:600}
.apx-chips{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0 0!important}
.apx-chips a{display:inline-flex;align-items:center;min-height:44px;padding:.5rem 1.2rem;border-radius:999px;background:#fff;border:1.5px solid var(--apx-line);color:var(--apx-ink);font-weight:600}
.apx-chips a:hover{border-color:var(--apx-violet);background:var(--apx-soft)}
.apx-chips a[aria-current="page"]{background:var(--apx-navy);border-color:var(--apx-navy);color:#fff}

/* ===== 4. Sale banner ===== */
.apx-sale__band{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem;align-items:center;background-color:#4a2fc0;background-image:var(--apx-grad);border-radius:24px;padding:2.8rem 3rem;color:#fff}
.apx-sale__band h2{color:#fff!important}
.apx-pill{display:inline-block;background:#fff;color:#7a2fd6;font-weight:700;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:.4rem 1rem;margin:0 0 1rem!important}
.apx-sale__band .apx-lead{color:#fff;margin-bottom:1.5rem!important}
.apx-sale__offer{justify-self:end;text-align:center;background:rgba(14,27,54,.82);border-radius:20px;padding:1.6rem 2rem;min-width:240px}
.apx-sale__deal{margin:0!important;line-height:1.2}
.apx-sale__big{display:block;font-family:var(--apx-display);font-weight:600;font-size:4.2rem;line-height:1}
.apx-sale__sm{display:block;margin-top:.3rem}
.apx-sale__code{display:inline-block;margin-top:1rem!important;border:2px dashed rgba(255,255,255,.7);border-radius:10px;padding:.4rem .9rem;font-weight:700;font-size:.95rem;letter-spacing:.1em}
.apx-promo,.apx-info{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:center;justify-content:space-between;margin:1.2rem 0 0!important;background:var(--apx-soft);border-left:5px solid var(--apx-violet);border-radius:0 14px 14px 0;padding:1rem 1.3rem}
.apx-promo a,.apx-info a{display:inline-flex;align-items:center;gap:.4rem;color:var(--apx-navy);font-weight:700;white-space:nowrap}
.apx-promo a::after,.apx-info a::after{content:"\2192";display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--apx-navy);color:#fff;font-size:.9rem}
.apx-promo a:hover,.apx-info a:hover{color:var(--apx-violet)}

/* ===== 5. Checkout trust strip ===== */
.apx-assure{background:var(--apx-navy);color:#fff;border-radius:24px;padding:2rem 2.2rem!important;position:relative;overflow:hidden;margin-bottom:4.5rem!important}
.apx-assure::before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:var(--apx-grad)}
.apx-assure h2{color:#fff!important;font-size:clamp(1.5rem,2.6vw,1.9rem)!important}
.apx-assure__list{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;margin:1.6rem 0 0!important}
.apx-assure__list li{display:flex;flex-direction:column;gap:.5rem;color:#d5dae6;font-size:.95rem;line-height:1.5}
.apx-assure__list li::before{color:#c9b6ff;width:30px;height:30px}
.apx-assure__list strong{color:#fff;font-size:1.05rem;font-weight:600}
.apx-pay{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1.6rem 0 0!important;padding-top:1.3rem;border-top:1px solid rgba(255,255,255,.18)}
.apx-pay__label{font-weight:700;font-size:.95rem}
.apx-pay__list{display:flex;flex-wrap:wrap;gap:.5rem}
.apx-pay__list li{background:#2b3550;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:.25rem .8rem;font-weight:600;font-size:.95rem}

/* ===== 6. Thank-you page ===== */
.apx-ok{display:grid!important;grid-template-columns:auto 1fr;column-gap:1rem;align-items:center;background:#eefaf7;border-left:6px solid var(--apx-green);border-radius:0 20px 20px 0;padding:1.6rem 1.8rem}
.apx-ok::before{content:"";grid-row:1/3;width:52px;height:52px;border-radius:50%;background:var(--apx-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Cpath d='M15 27l7 7 15-15' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.apx-ok>*{grid-column:2;margin:0!important}
.apx-ok h2{font-size:clamp(1.7rem,3.4vw,2.5rem)!important}
.apx-ok p{color:var(--apx-body);margin-top:.4rem!important;font-size:1.05rem}
.apx-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;counter-reset:apxstep}
.apx-steps li{counter-increment:apxstep;background:#fff;border:1.5px solid var(--apx-line);border-radius:18px;padding:1.5rem;color:var(--apx-body);line-height:1.55}
.apx-steps li::before{content:counter(apxstep);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--apx-grad);color:#fff;font-weight:700;margin-bottom:.9rem}
.apx-steps strong{display:block;color:var(--apx-ink);font-size:1.1rem;font-weight:600}
.apx-help{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem!important}
.apx-help li{position:relative;background:var(--apx-soft);border:1.5px solid transparent;border-radius:16px;padding:1.1rem 4rem 1.1rem 1.3rem;color:var(--apx-body);font-size:.9rem;line-height:1.45}
.apx-help li:hover,.apx-help li:focus-within{border-color:var(--apx-violet)}
.apx-help a{color:var(--apx-ink);font-weight:600;font-size:1rem}
.apx-help a::before{content:"";position:absolute;inset:0;border-radius:16px}
.apx-help li::after{content:"\2192";position:absolute;right:1.2rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--apx-navy);color:#fff}

/* ===== 7. My account welcome ===== */
.apx-acct__band{display:flex!important;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.2rem;background-color:#4a2fc0;background-image:var(--apx-grad);color:#fff;border-radius:24px;padding:2rem 2.2rem}
.apx-acct__band h2{color:#fff!important;font-size:clamp(1.8rem,3.2vw,2.4rem)!important}
.apx-acct__band p{color:#fff;margin-top:.35rem!important}
.apx-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.4rem 0 0!important}
.apx-tiles li{position:relative;background:#fff;border:1.5px solid var(--apx-line);border-radius:18px;padding:1.3rem 1.3rem 1.3rem 5rem;min-height:5.2rem;color:var(--apx-body);font-size:.92rem;line-height:1.5}
.apx .apx-tiles li::before{position:absolute;left:1.3rem;top:1.3rem;width:46px;height:46px;border-radius:14px;background:var(--apx-soft);-webkit-mask:none;mask:none}
.apx-tiles li::after{content:"";position:absolute;left:calc(1.3rem + 11px);top:calc(1.3rem + 11px);width:24px;height:24px;background:var(--apx-violet);-webkit-mask:var(--apx-ic) center/contain no-repeat;mask:var(--apx-ic) center/contain no-repeat}
.apx-tiles li:hover,.apx-tiles li:focus-within{border-color:var(--apx-violet);background:var(--apx-soft)}
.apx-tiles li:hover::before,.apx-tiles li:focus-within::before{background:#fff}
.apx-tiles a{color:var(--apx-ink);font-weight:600;font-size:1.08rem}
.apx-tiles a::before{content:"";position:absolute;inset:0;border-radius:18px}

/* ===== 8. Team members ===== */
.apx-team__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2rem!important}
.apx-member{position:relative;background:#fff;border:1.5px solid var(--apx-line);border-radius:20px;padding:1.6rem 1.4rem;text-align:center;overflow:hidden}
.apx-member::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--apx-grad)}
.apx-member__photo img{display:block;width:96px;height:96px;border-radius:50%;object-fit:cover;margin:0 auto 1rem}
.apx-member h3{margin:0!important;font-size:1.25rem!important;font-family:inherit;font-weight:700}
.apx-role{color:var(--apx-violet);font-weight:600;font-size:.9rem;margin-top:.35rem!important}
.apx-member__bio{color:var(--apx-body);font-size:.95rem;line-height:1.55;margin-top:.7rem!important}
.apx-member__link a{display:inline-flex;align-items:center;justify-content:center;margin-top:1rem;min-height:40px;padding:.4rem 1rem;border-radius:999px;border:1.5px solid var(--apx-line);color:var(--apx-ink);font-weight:600;font-size:.9rem}
.apx-member__link a:hover{border-color:var(--apx-violet);background:var(--apx-soft)}

/* ===== 9. Stats band ===== */
.apx-stats{background:var(--apx-navy);border-radius:24px;padding:2.6rem 2.4rem!important;color:#fff;position:relative;overflow:hidden;margin-bottom:4.5rem!important}
.apx-stats::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:var(--apx-grad)}
.apx-stats h2{color:#fff!important;font-size:clamp(1.6rem,3vw,2.2rem)!important}
.apx-stats__list{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin:2rem 0 0!important}
.apx-stats__list li{border-left:3px solid #8f80ff;padding-left:1.1rem;color:#d5dae6;line-height:1.45}
.apx-stats__list strong{display:block;font-family:var(--apx-display);font-weight:600;font-size:clamp(2.6rem,5vw,3.6rem);line-height:1;color:#fff;margin-bottom:.5rem}

/* ===== 10. Timeline ===== */
.apx-tl{margin:2rem 0 0!important;padding-left:2.2rem;position:relative;display:grid;gap:2rem}
.apx-tl::before{content:"";position:absolute;left:.65rem;top:.4rem;bottom:.4rem;width:4px;border-radius:4px;background:var(--apx-grad)}
.apx-tl__item{position:relative}
.apx-tl__item::before{content:"";position:absolute;left:-2.05rem;top:.35rem;width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--apx-violet)}
.apx-tl__yr{display:inline-block;background:var(--apx-navy);color:#fff;font-weight:700;font-size:.9rem;letter-spacing:.06em;border-radius:999px;padding:.25rem .8rem}
.apx-tl__card{margin-top:.7rem!important;background:#fff;border:1.5px solid var(--apx-line);border-radius:18px;padding:1.3rem 1.5rem;max-width:46rem}
.apx-tl__card h3{margin:0 0 .35rem!important;font-size:1.2rem!important;font-family:inherit;font-weight:700}
.apx-tl__card p{color:var(--apx-body);line-height:1.6}

/* ===== 11. Client logo wall ===== */
.apx-logos__head{display:flex!important;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem}
.apx-logos__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.8rem!important}
.apx-logo{display:flex!important;align-items:center;justify-content:center;min-height:110px;background:#fff;border:1.5px solid var(--apx-line);border-radius:18px;padding:1rem 1.4rem}
.apx-logo img{display:block;max-height:46px;width:auto}

/* ===== 12. Feature grid ===== */
.apx-fg{display:grid;grid-template-columns:.9fr 1.3fr;gap:3rem;align-items:start}
.apx-fg__intro{position:sticky;top:2rem}
.apx-fg__grid{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--apx-line);border-radius:22px;overflow:hidden;background:#fff}
.apx-fg__grid li{position:relative;padding:1.6rem 1.5rem;border-bottom:1px solid var(--apx-line);color:var(--apx-body);line-height:1.55;font-size:.97rem}
.apx-fg__grid li:nth-child(odd){border-right:1px solid var(--apx-line)}
.apx-fg__grid li:nth-last-child(-n+2){border-bottom:0}
.apx .apx-fg__grid li::before{width:46px;height:46px;border-radius:14px;margin-bottom:.9rem;background:var(--apx-soft);-webkit-mask:none;mask:none}
.apx-fg__grid li::after{content:"";position:absolute;left:calc(1.5rem + 11px);top:calc(1.6rem + 11px);width:24px;height:24px;background:var(--apx-violet);-webkit-mask:var(--apx-ic) center/contain no-repeat;mask:var(--apx-ic) center/contain no-repeat}
.apx-fg__grid strong{display:block;color:var(--apx-ink);font-size:1.1rem;font-weight:600;margin-bottom:.1rem}

/* ===== 13. Case study ===== */
.apx-cs__hero{display:grid;grid-template-columns:1.1fr 1fr;gap:2.5rem;align-items:center}
.apx-meta{display:flex!important;flex-wrap:wrap;gap:.8rem 2rem;margin-top:.2rem!important}
.apx-meta p{border-left:3px solid var(--apx-violet);padding-left:.8rem;font-weight:600;font-size:1.05rem;line-height:1.4}
.apx-meta strong{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--apx-body);font-weight:600}
.apx-results{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:2.5rem 0 0!important}
.apx-results li{position:relative;overflow:hidden;background:var(--apx-navy);color:#d5dae6;border-radius:20px;padding:1.6rem 1.5rem;line-height:1.45}
.apx-results li::after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:var(--apx-grad)}
.apx-results strong{display:block;font-family:var(--apx-display);font-weight:600;font-size:clamp(2.4rem,4.5vw,3.2rem);line-height:1;color:#fff;margin-bottom:.5rem}
.apx-cs__body{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-top:2.6rem!important}
.apx-card--wide{grid-column:1/-1}
.apx-ticks--2{grid-template-columns:1fr 1fr;gap:.8rem 2rem;margin:0!important}
.apx .apx-pull{margin:2.4rem 0 0!important;background:var(--apx-soft);border:0!important;border-left:6px solid var(--apx-violet)!important;border-radius:0 22px 22px 0;padding:2rem 2.2rem!important}
.apx .apx-pull p{font-family:var(--apx-display);font-weight:500;font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.35;color:var(--apx-ink);font-style:normal}
.apx .apx-pull cite{display:block;margin-top:1rem;font-style:normal;font-weight:600;color:var(--apx-body);font-size:1rem}
.apx-cta,.apx-contact{display:flex!important;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.2rem;margin-top:2.4rem!important;border-radius:22px;padding:2rem 2.2rem;color:#fff}
.apx-cta{background-color:#4a2fc0;background-image:var(--apx-grad)}
.apx .apx-cta__t{font-family:var(--apx-display);font-weight:600;font-size:clamp(1.4rem,2.6vw,1.9rem)!important;color:#fff!important;margin:0!important;line-height:1.2}

/* ===== 14. Accessibility statement ===== */
.apx-as__date{display:inline-block;margin:0!important;background:#fff;border:1.5px solid var(--apx-line);border-radius:999px;padding:.4rem 1rem;font-size:.95rem;color:var(--apx-body)}
.apx-as__date strong{color:var(--apx-ink)}
.apx-status{display:grid!important;grid-template-columns:auto 1fr;gap:1rem;align-items:start;margin:2rem 0 0!important;background:#eefaf7;border-left:6px solid var(--apx-green);border-radius:0 18px 18px 0;padding:1.4rem 1.6rem}
.apx-status::before{content:"";width:40px;height:40px;border-radius:50%;background:var(--apx-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M11 21l6 6 12-12' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.apx-status p{margin:0!important;color:var(--apx-body);line-height:1.55}
.apx-status strong{display:inline-block;color:var(--apx-ink);font-size:1.15rem;margin-bottom:.25rem}
.apx-as__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:2rem!important}
.apx-as .apx-lead{margin-top:0!important}
.apx .apx-table{margin:1rem 0 0!important;overflow-x:auto;border:1.5px solid var(--apx-line);border-radius:18px;background:#fff}
.apx .apx-table table{width:100%;border-collapse:collapse;font-size:.97rem;border:0}
.apx .apx-table th,.apx .apx-table td{text-align:left;padding:.85rem 1.2rem;border:0;border-bottom:1px solid var(--apx-line);vertical-align:top}
.apx .apx-table thead{border:0}
.apx .apx-table thead th{background:var(--apx-soft);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--apx-ink)}
.apx .apx-table tbody tr:last-child td{border-bottom:0}
.apx .apx-table tbody td:first-child{font-weight:600;color:var(--apx-ink)}
.apx .apx-table td{color:var(--apx-body)}
.apx .apx-table figcaption{text-align:left;padding:.8rem 1.2rem;margin:0;font-size:.9rem;color:var(--apx-body);border-top:1px solid var(--apx-line)}
.apx-contact{background:var(--apx-navy)}
.apx-contact p{color:#d5dae6;line-height:1.55}
.apx-contact strong{color:#fff;font-size:1.25rem;font-weight:600}

/* ===== Responsive ===== */
@media (max-width:900px){
 .apx-hero,.apx-pdp__top,.apx-sale__band,.apx-fg,.apx-cs__hero,.apx-cs__body,.apx-as__grid{grid-template-columns:1fr}
 .apx-hero{padding:1.6rem}
 .apx-trust,.apx-cats,.apx-feats,.apx-assure__list,.apx-tiles,.apx-team__grid,.apx-stats__list,.apx-logos__grid{grid-template-columns:1fr 1fr}
 .apx-quotes,.apx-steps,.apx-help,.apx-results{grid-template-columns:1fr}
 .apx-sale__offer{justify-self:start}
 .apx-fg__intro{position:static}
}
@media (max-width:600px){
 .apx-trust,.apx-cats,.apx-feats,.apx-assure__list,.apx-tiles,.apx-team__grid,.apx-stats__list,.apx-fg__grid,.apx-ticks--2{grid-template-columns:1fr}
 .apx-cathead__band::after{background:rgba(14,27,54,.86)}
 .apx-cathead__text{padding:2rem 1.4rem}
 .apx-sale__band,.apx-assure,.apx-acct__band,.apx-stats,.apx-cta,.apx-contact,.apx .apx-pull{padding:1.6rem 1.3rem!important}
 .apx-pdp__media{padding:1rem}
 .apx-ok{padding:1.3rem;align-items:start}
 .apx-ok::before{width:40px;height:40px}
 .apx-fg__grid li:nth-child(odd){border-right:0}
 .apx-fg__grid li:nth-last-child(2){border-bottom:1px solid var(--apx-line)}
}
@media (prefers-reduced-motion:reduce){.apx *{transition:none!important}.apx-cat:hover,.apx-cat:focus-within{transform:none}}
@media (forced-colors:active){
 .apx [class*="apx-i-"]::before,.apx-feats li::after,.apx-tiles li::after,.apx-fg__grid li::after{background:CanvasText;forced-color-adjust:none}
 .apx-hero,.apx-cat,.apx-card,.apx-member,.apx-logo,.apx-tl__card{border:1px solid CanvasText}
}
