/* Click Experience v3.2.0 — release candidate QA pass.
   Loaded last: targeted corrections only, no redesign of approved sections. */
:root{
  --cxs-rc-navy:#00155c;
  --cxs-rc-sky:#27adff;
  --cxs-rc-yellow:#ffbd59;
  --cxs-rc-red:#ff3131;
  --cxs-rc-wa:#25d366;
  --cxs-rc-ease:cubic-bezier(.16,1,.3,1);
}

/* Predictable geometry and readable controls across the full site. */
.cxs-site :where(button,a,input,select,textarea){-webkit-tap-highlight-color:transparent}
.cxs-site :where(button,a){touch-action:manipulation}
.cxs-site :where(img,svg){max-width:100%}
.cxs-site :where(input,select,textarea){font-family:inherit}
.cxs-site main{min-width:0}
.cxs-site :where(.cxs-services-directory,.cxs-service-page,.cxs-about-page,.cxs-contact-page,.cxs-editorial,.cxs-portfolio-page,.cxs-store-page){min-width:0}

/* Fine-print audit: preserve hierarchy without making useful information microscopic. */
.cxs-service-hero__panel small,
.cxs-about-story__stage-meta>span,
.cxs-contact-hero__routes>p,
.cxs-contact-hero__routes small,
.cxs-contact-form__head span,
.cxs-blog-search label,
.cxs-blog-card__copy>p,
.cxs-academy-manifesto>span,
.cxs-course-directory__copy>p,
.cxs-course-directory__card figure>b,
.cxs-course-directory__copy li,
.cxs-course-single__meta span,
.cxs-course-single__visual figcaption span,
.cxs-course-single__audience>p,
.cxs-course-single__info>span,
.cxs-course-single__content header>p,
.cxs-project-card__visual>span,
.cxs-project-card__copy>p,
.cxs-project-card__copy footer,
.cxs-project-single__meta small,
.cxs-project-single__visual figcaption span,
.cxs-store-card__copy>p,
.cxs-store-card figure>b,
.cxs-store-single__visual figcaption span{
  font-size:10.5px!important;
  line-height:1.5;
}

/* Reading and card summaries should feel intentional, not like captions. */
.cxs-service-hero__panel p,
.cxs-service-focus__card p,
.cxs-service-process__step p,
.cxs-blog-card__copy>div,
.cxs-course-directory__copy>div,
.cxs-academy-method__grid p,
.cxs-project-card__copy>div,
.cxs-portfolio-principles__grid p,
.cxs-store-card__copy>div,
.cxs-store-how__grid p{
  font-size:14px!important;
  line-height:1.75;
}
.cxs-service-hero__panel li{font-size:13px!important;line-height:1.65}
.cxs-contact-workspace__promise>p{font-size:12px!important;line-height:1.7}
.cxs-contact-hero__routes footer{font-size:10.5px!important;line-height:1.5}

/* All explicit WhatsApp actions use the same visual language. */
.cxs-service-btn--wa{background:var(--cxs-rc-wa)!important;color:#fff!important;box-shadow:0 18px 38px rgba(37,211,102,.20)!important}
.cxs-service-btn--wa:hover{background:#20c75d!important;box-shadow:0 23px 48px rgba(37,211,102,.28)!important}
.cxs-service-btn--wa svg{fill:#168d45!important}
.cxs-assistant noscript a[href*="wa.me"]{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:10px;padding:10px 14px;border-radius:999px;background:var(--cxs-rc-wa);color:#fff;font-size:12px;font-weight:700;text-decoration:none}

/* Full-card invisible links still expose a visible keyboard focus state. */
.cxs-editorial-hit:focus-visible,.cxs-project-card__hit:focus-visible,.cxs-store-card__hit:focus-visible{
  outline:3px solid var(--cxs-rc-yellow)!important;
  outline-offset:-5px!important;
  border-radius:inherit;
}

/* Empty/filter states: consistent breathing room and readable feedback. */
.cxs-editorial-empty,.cxs-course-filter-empty,.cxs-portfolio-no-filter,.cxs-store-no-results{
  min-height:180px;
  align-content:center;
}
.cxs-store-no-results,.cxs-portfolio-no-filter{padding:34px!important}
.cxs-store-no-results h3,.cxs-course-filter-empty h3,.cxs-editorial-empty h3{line-height:1.05}

/* Horizontal filter groups work naturally on touch screens. */
@media(max-width:760px){
  .cxs-course-filters,.cxs-blog-categories,.cxs-portfolio-filters,.cxs-store-filters{
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
    padding-bottom:4px;
  }
  .cxs-course-filters>*,.cxs-blog-categories>*,.cxs-portfolio-filters>*,.cxs-store-filters>*{scroll-snap-align:start}
}

/* Long cards should not hide the conversion action on smaller laptops. */
@media(min-width:761px) and (max-width:1180px){
  .cxs-project-card__copy>div,.cxs-blog-card__copy>div,.cxs-course-directory__copy>div,.cxs-store-card__copy>div{max-width:58ch}
  .cxs-service-focus__grid,.cxs-service-deliverables__grid{gap:12px}
}

/* Mobile release pass: controls, headings and CTA stacking. */
@media(max-width:700px){
  .cxs-container{width:min(100% - 28px,1180px)}
  .cxs-services-mosaic__copy>div,
  .cxs-project-card__copy>div,
  .cxs-course-directory__copy>div,
  .cxs-blog-card__copy>div,
  .cxs-store-card__copy>div{font-size:13.5px!important;line-height:1.72}
  .cxs-contact-service-pills button{min-height:44px;font-size:11px!important}
  .cxs-blog-categories a,.cxs-course-filters button,.cxs-portfolio-filters button,.cxs-store-filters button{min-height:44px;padding-inline:14px}
  .cxs-project-single__meta>span{min-width:0;flex:1 1 130px}
  .cxs-course-single__meta span{min-height:38px;display:inline-flex;align-items:center}
  .cxs-store-card footer button,.cxs-store-card footer>a{min-width:44px;min-height:44px}
}
@media(max-width:480px){
  .cxs-about-page__hero-actions,
  .cxs-contact-hero__actions,
  .cxs-editorial-cta__box>div,
  .cxs-portfolio-hero__actions,
  .cxs-portfolio-cta__box>div,
  .cxs-store-hero__actions,
  .cxs-store-cta__box>div,
  .cxs-project-single__actions,
  .cxs-course-single__actions,
  .cxs-service-hero__actions,
  .cxs-service-cta__actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .cxs-about-page__hero-actions>*,
  .cxs-contact-hero__actions>*,
  .cxs-editorial-cta__box>div>*,
  .cxs-portfolio-hero__actions>*,
  .cxs-portfolio-cta__box>div>*,
  .cxs-store-hero__actions>*,
  .cxs-store-cta__box>div>*,
  .cxs-project-single__actions>*,
  .cxs-course-single__actions>*,
  .cxs-service-hero__actions>*,
  .cxs-service-cta__actions>*{width:100%!important;justify-content:center}
  .cxs-about-page__hero-chip{max-width:78%}
  .cxs-project-card__copy footer{gap:12px}
  .cxs-project-card__copy footer span{max-width:62%;line-height:1.45}
}

/* Branded 404 recovery instead of a generic dead end. */
.cxs-404{position:relative;isolation:isolate;min-height:calc(100svh - 80px);display:flex;align-items:center;padding:90px 0 110px;overflow:hidden;color:#fff;background:radial-gradient(circle at 78% 22%,rgba(39,173,255,.22),transparent 28%),radial-gradient(circle at 15% 84%,rgba(255,189,89,.08),transparent 24%),linear-gradient(135deg,#000d3d,#00155c 58%,#002c7c)}
.cxs-404__ambient{position:absolute;z-index:-1;right:-160px;top:8%;width:620px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(39,173,255,.12);box-shadow:0 0 120px rgba(39,173,255,.08)}
.cxs-404__ambient::after{content:"";position:absolute;inset:84px;border-radius:50%;border:1px dashed rgba(255,189,89,.12)}
.cxs-404__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);gap:clamp(44px,7vw,112px);align-items:center}
.cxs-404__copy{position:relative}
.cxs-404__code{position:absolute;left:-.04em;top:-.32em;font-size:clamp(130px,19vw,300px);font-weight:900;line-height:.8;letter-spacing:-.09em;color:rgba(255,255,255,.035);pointer-events:none;user-select:none}
.cxs-404 h1{position:relative;margin:0;max-width:11ch;font-size:clamp(54px,6.2vw,92px);line-height:.91;letter-spacing:-.065em}
.cxs-404 h1 span,.cxs-404 h1 strong{display:block}.cxs-404 h1 strong{font-weight:400;color:var(--cxs-rc-sky)}
.cxs-404__copy>p:not(.cxs-eyebrow){position:relative;max-width:54ch;margin:22px 0 0;color:rgba(255,255,255,.78);font-size:15px;line-height:1.82}
.cxs-404__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.cxs-404__btn{min-height:48px;padding:10px 16px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .25s var(--cxs-rc-ease),background .25s ease,box-shadow .25s ease}
.cxs-404__btn:hover{transform:translateY(-2px)}.cxs-404__btn--red{background:var(--cxs-rc-red);color:#fff;box-shadow:0 18px 40px rgba(255,49,49,.20)}.cxs-404__btn--ghost{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#fff}
.cxs-404__route{padding:30px;border-radius:30px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);backdrop-filter:blur(16px);box-shadow:0 28px 80px rgba(0,6,34,.22)}
.cxs-404__route>span{display:block;color:var(--cxs-rc-yellow);font-size:10.5px;font-weight:800;letter-spacing:.14em}.cxs-404__route>strong{display:block;margin-top:42px;font-size:clamp(27px,3vw,42px);line-height:1.07;letter-spacing:-.045em}.cxs-404__route button{width:100%;min-height:50px;margin-top:28px;padding:10px 14px;border:0;border-radius:999px;background:#fff;color:var(--cxs-rc-navy);display:flex;align-items:center;justify-content:space-between;gap:12px;font:700 12px/1.2 Poppins,system-ui,sans-serif;cursor:pointer}.cxs-404__route button b{color:var(--cxs-rc-red)}
@media(max-width:900px){.cxs-404{min-height:auto;padding:72px 0 92px}.cxs-404__grid{grid-template-columns:1fr}.cxs-404__route{max-width:620px}}
@media(max-width:480px){.cxs-404{padding:58px 0 76px}.cxs-404 h1{font-size:clamp(44px,13vw,62px)}.cxs-404__copy>p:not(.cxs-eyebrow){font-size:14px}.cxs-404__actions{display:grid;grid-template-columns:1fr}.cxs-404__btn{width:100%}.cxs-404__route{padding:24px;border-radius:24px}.cxs-404__route>strong{margin-top:28px;font-size:30px}}

@media(prefers-reduced-motion:reduce){
  .cxs-404__btn,.cxs-404__route button{transition:none!important}
}

/* Final legibility sweep for labels that remained below the 10px threshold in legacy layers. */
.cxs-why-visual figcaption,
.cxs-why-visual figcaption small,
.cxs-why-rail button span,
.cxs-about-purpose__grid span,
.cxs-about-values__list button span,
.cxs-contact-workspace__promise>span,
.cxs-contact-location__card>span,
.cxs-course-meta span,
.cxs-final-chat small,
.cxs-store-hero__placeholder figcaption span,
.cxs-store-hero__featured>div>span,
.cxs-store-card figure>span,
.cxs-store-card figure>b,
.cxs-store-card__copy footer>a,
.cxs-store-no-results span,
.cxs-store-empty span,
.cxs-store-single__meta dt,
.cxs-store-related__grid span{
  font-size:10.5px!important;
  line-height:1.45;
}
