/* AmirParviz Design System — Canonical decisions RC16
   Generated from approved review decisions, 2026-08-28.
   This file intentionally loads after legacy RC15 CSS so canonical tokens/components win without destructive rewrites. */

:root,
[data-theme="amirparviz-brand-light"]{
  /* Canonical brand + action */
  --th-brand-purple:#5A50D8;
  --th-brand-navy:#00005B;
  --th-brand-cyan:#00BBF9;
  --th-action-blue-accessible:#0064D8;
  --th-action-primary:#0064D8;
  --th-action-primary-hover:#5A50D8;
  --th-action-accent:#5A50D8;
  --th-action-accent-hover:#0064D8;
  --th-neutral-white:#FFFFFF;
  --th-neutral-50:#F7F7FA;
  --th-neutral-200:#E6E7EF;
  --th-neutral-strong:#C9CBD6;
  --th-neutral-600:#74768A;
  --th-neutral-900:#111126;

  /* Canonical radius */
  --th-radius-button:8px;
  --th-radius-card:12px;
  --th-radius-panel:12px;
  --th-radius-overlay:12px;
  --th-radius-pill:999px;

  /* Canonical containers + text measure */
  --th-container-site:1140px;
  --th-container-wide:1140px;
  --th-container-reading:800px;
  --th-text-measure-reading:720px;
  --th-text-measure-section:640px;
  --th-text-measure-hero:560px;

  /* Canonical weight set */
  --th-weight-regular:400;
  --th-weight-medium:500;
  --th-weight-semibold:600;
  --th-weight-strong:700;
  --th-weight-section:780;
  --th-weight-display:800;
  --th-weight-emphasis:900;

  /* Canonical status colors */
  --th-status-success:#1F8A5B;
  --th-status-danger:#C83B3B;
  --th-status-warning:#B7791F;
  --th-status-info:#0064D8;
  --th-status-success-subtle:color-mix(in srgb,#1F8A5B 10%,white);
  --th-status-danger-subtle:color-mix(in srgb,#C83B3B 10%,white);
  --th-status-warning-subtle:color-mix(in srgb,#B7791F 10%,white);
  --th-status-info-subtle:color-mix(in srgb,#0064D8 10%,white);

  /* Canonical motion + z-index */
  --th-motion-fast:180ms;
  --th-z-base:0;
  --th-z-sticky:100;
  --th-z-dropdown:200;
  --th-z-tooltip:300;
  --th-z-overlay:400;
  --th-z-modal:500;
  --th-z-toast:600;

  /* Flat-by-default shadow contract */
  --th-shadow-none:none;
  --th-shadow-xs:none;
  --th-shadow-sm:none;
  --th-shadow-md:none;

  /* Brand pattern strengths */
  --th-pattern-opacity-subtle:.055;
  --th-pattern-opacity-default:.075;
  --th-pattern-opacity-display:.10;
}

/* Typography canonical scale */
.th-type-body{font:400 16px/1.55 var(--th-font-fa)}
.th-type-body-lg{font:400 18px/1.65 var(--th-font-fa)}
.th-type-small{font:400 14px/1.8 var(--th-font-fa)}
.th-type-h4{font:700 20px/1.45 var(--th-font-fa)}
.th-type-h2{font:780 28px/1.35 var(--th-font-fa)}
.th-type-h1{font:800 40px/1.22 var(--th-font-fa)}
.th-reading{max-width:var(--th-text-measure-reading);font:400 18px/1.65 var(--th-font-fa)}
.th-display-hero{max-width:var(--th-text-measure-hero);font-size:40px;font-weight:800;line-height:1.22}

/* Canonical layout */
.th-container,.th-container--wide{width:min(calc(100% - 64px),var(--th-container-site));margin-inline:auto}
.th-section-pattern{padding-block:80px}

/* Brand Pattern — KEEP/ADAPT from current single-post visual language.
   Only approved primitives: line+square dot, L+dot, hollow square+dot, 2/3 dot runs. */
.th-brand-pattern{position:relative;isolation:isolate}
.th-brand-pattern::before,
.th-service-card::after,
.th-benefit-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:var(--th-pattern-opacity-default);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='150' viewBox='0 0 240 150'%3E%3Cg fill='none' stroke='%235A50D8' stroke-width='2'%3E%3Cpath d='M18 28h50'/%3E%3Cpath d='M122 12v44'/%3E%3Cpath d='M168 20v28h30'/%3E%3Cpath d='M28 92h38v-30'/%3E%3Crect x='116' y='84' width='28' height='28'/%3E%3Cpath d='M188 102h34'/%3E%3C/g%3E%3Cg fill='%2300BBF9'%3E%3Crect x='64' y='24' width='8' height='8'/%3E%3Crect x='118' y='52' width='8' height='8'/%3E%3Crect x='194' y='44' width='8' height='8'/%3E%3Crect x='24' y='88' width='8' height='8'/%3E%3Crect x='112' y='94' width='8' height='8'/%3E%3Crect x='218' y='98' width='8' height='8'/%3E%3Crect x='76' y='126' width='8' height='8'/%3E%3Crect x='92' y='126' width='8' height='8'/%3E%3Crect x='108' y='126' width='8' height='8'/%3E%3C/g%3E%3Cg fill='%235A50D8'%3E%3Crect x='158' y='126' width='8' height='8'/%3E%3Crect x='174' y='126' width='8' height='8'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:repeat;
  background-size:240px 150px;
}
.th-brand-pattern--subtle::before{opacity:var(--th-pattern-opacity-subtle)}
.th-brand-pattern--display::before{opacity:var(--th-pattern-opacity-display)}

/* Button System canonical */
.th-btn{min-height:48px;padding:0 24px;border-radius:8px;border:1px solid transparent;font:700 16px/1.5 var(--th-font-fa);transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease,transform 180ms ease;box-shadow:none}
.th-btn--sm{min-height:40px;padding-inline:18px;font-size:14px;font-weight:700}
.th-btn--lg{min-height:56px;padding-inline:28px;font-size:16px;font-weight:800}
.th-btn--primary{background:#0064D8;color:#fff}.th-btn--primary:hover{background:#5A50D8;color:#fff}
.th-btn--secondary{background:#fff;color:#0064D8;border-color:#0064D8}.th-btn--secondary:hover{background:color-mix(in srgb,#0064D8 6%,white);color:#0064D8}
.th-btn--brand,.th-btn--accent{background:#5A50D8;color:#fff}.th-btn--brand:hover,.th-btn--accent:hover{background:#0064D8;color:#fff}
.th-btn--light{background:#fff;color:#00005B;border-color:transparent}.th-btn--light:hover{background:#fff;color:#0064D8}
.th-btn--text{min-height:auto;padding:0;background:transparent;border:0;color:#5A50D8}.th-btn--text:hover{color:#0064D8}
.th-btn:focus-visible{outline:2px solid #0064D8;outline-offset:2px;box-shadow:none}
.th-btn:active{transform:none;filter:brightness(.92)}
.th-btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none;filter:none;transform:none}

/* Link system */
.th-link{color:#0064D8;text-decoration:underline;text-underline-offset:.18em}
.th-link--standalone{color:#5A50D8;text-decoration:none}.th-link--standalone:hover{color:#0064D8}
.th-nav-link{position:relative;text-decoration:none}.th-nav-link::after{content:"";position:absolute;inset-inline:0;bottom:-4px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:center;transition:transform 180ms ease}.th-nav-link:hover::after,.th-nav-link[aria-current="page"]::after{transform:scaleX(1)}

/* Form canonical */
.th-field__label{font-size:15px;font-weight:700}
.th-input,.th-select,.th-textarea{min-height:48px;border-radius:8px;border-color:#C9CBD6;font:400 16px/1.55 var(--th-font-fa);box-shadow:none}
.th-input:focus,.th-select:focus,.th-textarea:focus{border-color:#0064D8;outline:2px solid color-mix(in srgb,#0064D8 18%,transparent);outline-offset:1px}
.th-form-submit{min-height:56px;font:800 16px/1.5 var(--th-font-fa);border-radius:8px;background:#0064D8;color:#fff}.th-form-submit:hover{background:#5A50D8}

/* Service Card canonical — approved: Accent bar + large duotone icon + no eyebrow + subtle brand pattern. */
.th-service-card{padding:16px;border-radius:12px;background:var(--th-surface);box-shadow:none;transition:transform 180ms ease,border-color 180ms ease;isolation:isolate}
.th-service-card::before{width:5px;z-index:2}
.th-service-card::after{z-index:-1;opacity:var(--th-pattern-opacity-subtle);mask-image:linear-gradient(125deg,#000 0 34%,transparent 68%)}
.th-service-card:hover{transform:translateY(-2px);border-color:#0064D8;box-shadow:none}
.th-service-card__stage{display:none!important}
.th-service-card__top{min-height:40px}
.th-service-card__icon{width:40px;height:40px;border-radius:0;background:transparent;font-size:40px}
.th-service-card__icon .th-icon,.th-service-card__icon svg{width:40px;height:40px}
.th-service-card__name{margin:12px 0 4px;font-size:20px;font-weight:700;line-height:1.45}
.th-service-card__title{font:700 20px/1.45 var(--th-font-fa)}
.th-service-card__description{font:400 16px/1.55 var(--th-font-fa)}
.th-service-card__divider{margin:14px 0}
.th-service-card__outcomes li{font:400 14px/1.7 var(--th-font-fa)}
.th-service-card__footer{padding-top:16px}
.th-service-card__link{color:#5A50D8;font:600 16px/1.5 var(--th-font-fa);text-decoration:none}.th-service-card__link:hover{color:#0064D8;text-decoration:none}

/* Benefit Card canonical */
.th-benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.th-benefit-card{--th-benefit-tint:color-mix(in srgb,#5A50D8 11%,white);position:relative;isolation:isolate;overflow:hidden;text-align:center;padding:16px;border:1px solid color-mix(in srgb,#5A50D8 14%,#E6E7EF);border-radius:12px;background:var(--th-benefit-tint);box-shadow:none;transition:transform 180ms ease,border-color 180ms ease}
.th-benefit-card::after{z-index:-1;opacity:.04}
.th-benefit-card--blue{--th-benefit-tint:color-mix(in srgb,#0064D8 11%,white)}
.th-benefit-card--navy{--th-benefit-tint:color-mix(in srgb,#00005B 8%,white)}
.th-benefit-card:hover{transform:translateY(-2px);border-color:#0064D8}
.th-benefit-card__icon{width:40px;height:40px;margin:0 auto 12px;color:#5A50D8}.th-benefit-card__icon .th-icon,.th-benefit-card__icon svg{width:40px;height:40px}
.th-benefit-card__title{margin:0;font:700 20px/1.45 var(--th-font-fa);color:#111126}
.th-benefit-card__description{margin:8px auto 0;max-width:30ch;font:400 16px/1.55 var(--th-font-fa);color:#74768A}

/* Pricing Card canonical: Standard + Quote-based */
.th-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.th-pricing-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #E6E7EF;border-radius:12px;background:#fff;box-shadow:none}
.th-pricing-card__head{padding:16px;background:#5A50D8;color:#fff;text-align:center}
.th-pricing-card__title{margin:0;font:700 20px/1.45 var(--th-font-fa)}
.th-pricing-card__body{display:flex;flex:1;flex-direction:column;padding:16px}
.th-pricing-card__price-slot{min-height:92px;display:grid;place-content:center;text-align:center;border-bottom:1px solid #E6E7EF;margin-bottom:16px;padding-bottom:16px}
.th-pricing-card__price{font:800 32px/1.2 var(--th-font-numeral-fa);color:#00005B}
.th-pricing-card__period{margin-top:4px;color:#74768A;font:400 14px/1.6 var(--th-font-fa)}
.th-pricing-card--quote .th-pricing-card__price-slot{background:color-mix(in srgb,#5A50D8 6%,white);border-radius:8px;border-bottom:0;margin-bottom:16px;padding:14px}
.th-pricing-card__quote{font:780 20px/1.45 var(--th-font-fa);color:#00005B}
.th-pricing-card__features{display:grid;gap:10px;margin:0 0 18px;padding:0;list-style:none;color:#111126;font:400 15px/1.65 var(--th-font-fa)}
.th-pricing-card__cta{margin-top:auto}

/* Blog / Content Card — KEEP/ADAPT from current site */
.th-post-card{border-radius:12px;box-shadow:none;transition:border-color 180ms ease,transform 180ms ease}
.th-post-card:hover{border-color:#0064D8;transform:translateY(-2px)}
.th-post-card__media{aspect-ratio:3/2;min-height:0;object-fit:cover;border-radius:12px 12px 0 0}
.th-post-card__body{padding:16px}

/* CTA current-site KEEP/ADAPT contract */
.th-cta-current{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:stretch;border-radius:12px;background:#00005B;color:#fff}
.th-cta-current__media{position:relative;min-height:360px;padding:32px;overflow:hidden}.th-cta-current__media.th-brand-pattern::before{opacity:.12}
.th-cta-current__content{display:flex;flex-direction:column;justify-content:center;padding:56px 48px;text-align:right}
.th-cta-current__content h2{margin:0;font:800 28px/1.35 var(--th-font-fa)}.th-cta-current__content h2 em{font-style:normal;color:#00BBF9}
.th-cta-current__content p{margin:14px 0 0;max-width:640px;color:rgba(255,255,255,.78);font:400 16px/1.55 var(--th-font-fa)}
.th-cta-current__actions{margin-top:24px}

/* Footer KEEP/ADAPT canonical structure */
.th-global-footer{background:#00005B;color:#fff}
.th-global-footer__top{display:grid;grid-template-columns:38fr 17fr 17fr 28fr;gap:24px}
.th-global-footer__about{grid-column:auto}
.th-global-footer__tagline{color:#00BBF9}
.th-global-footer__description,.th-global-footer__bottom{color:rgba(255,255,255,.62)}
.th-global-footer__links a{color:rgba(255,255,255,.78)}.th-global-footer__links a:hover{color:#00BBF9}

/* Media contract */
.th-media--article{aspect-ratio:3/2;border-radius:12px;overflow:hidden}.th-media--article img{width:100%;height:100%;object-fit:cover}
.th-media--hero{aspect-ratio:4/3;border-radius:12px;overflow:hidden}.th-media--hero img{width:100%;height:100%;object-fit:cover}
.th-media--portrait{aspect-ratio:1;border-radius:50%;overflow:hidden}

@media(max-width:1023px){
  .th-section-pattern{padding-block:64px}
  .th-container,.th-container--wide{width:min(calc(100% - 48px),var(--th-container-site))}
  .th-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .th-pricing-grid{grid-template-columns:1fr}
  .th-global-footer__top{grid-template-columns:1fr 1fr}
  .th-global-footer__about,.th-global-footer__contact{grid-column:1/-1}
  .th-cta-current{grid-template-columns:1fr}
  .th-cta-current__media{min-height:300px}
}
@media(max-width:767px){
  .th-section-pattern{padding-block:48px}
  .th-container,.th-container--wide{width:min(calc(100% - 32px),var(--th-container-site))}
  .th-type-h1,.th-display-hero{font-size:clamp(32px,9vw,40px)}
  .th-benefit-grid{grid-template-columns:1fr}
  .th-global-footer__top{display:flex;flex-direction:column;gap:24px}
  .th-global-footer__about{order:1}.th-global-footer__contact{order:2}.th-global-footer__menu-group{order:3;display:grid;grid-template-columns:1fr 1fr;gap:16px}.th-global-footer__bottom{order:4}
  .th-cta-current__media{order:1}.th-cta-current__content{order:2;padding:40px 24px}.th-cta-current__actions .th-btn{width:100%}
}
@media(prefers-reduced-motion:reduce){.th-btn,.th-service-card,.th-benefit-card,.th-post-card{transition:none!important;transform:none!important}}
