/* =========================================================
   Altamayuz — base.css
   Tokens, reset, typography, buttons, icons, shared components, animation engine.
   Loads: every view
   ========================================================= */

/* ---- Tokens (fallbacks — real values are printed by inc/dynamic-css.php) ---- */
:root{
  --tmz-primary:#1673D1;--tmz-primary-rgb:22,115,209;--tmz-primary-2:#2EABEE;--tmz-primary-dark:#0F5BAA;--tmz-primary-soft:#E9F3FC;
  --tmz-aqua:#22C9D3;--tmz-aqua-txt:#7FE3EA;
  --tmz-ink:#071F3D;--tmz-ink-rgb:7,31,61;--tmz-ink-2:#123458;--tmz-body:#44566C;--tmz-muted:#5B6E84;
  --tmz-bg:#FFFFFF;--tmz-bg-soft:#F4F8FC;--tmz-line:#E3EBF4;--tmz-line-2:#D2DFEC;
  --tmz-dark:#061A33;--tmz-dark-rgb:6,26,51;--tmz-dark-2:#0A2A50;--tmz-dark-3:#0E3A6E;
  --tmz-container:1240px;--tmz-radius:20px;--tmz-radius-l:28px;
  --tmz-font-h:'Alexandria','IBM Plex Sans Arabic',system-ui,sans-serif;
  --tmz-font-b:'IBM Plex Sans Arabic','Alexandria',system-ui,sans-serif;
  --tmz-fs-base:16px;--tmz-h-weight:600;
  --tmz-h1:clamp(32px,3.6vw,50px);--tmz-h2:clamp(26px,2.7vw,36px);--tmz-h3:clamp(18px,1.4vw,20px);
  --tmz-logo-h:50px;--tmz-logo-h-m:42px;--tmz-header-h:82px;
  --tmz-hero-h:660px;--tmz-hero-h-m:740px;--tmz-banner-h:350px;--tmz-banner-img-o:.5;
  --tmz-anim-dur:900ms;--tmz-anim-dist:26px;--tmz-anim-stagger:90ms;
  --tmz-ease:cubic-bezier(.22,.61,.36,1);
  --tmz-dir:1;
  --tmz-gutter:clamp(20px,4vw,40px);
  --tmz-space-section:clamp(64px,7vw,96px);
  --tmz-shadow-s:0 1px 2px rgba(var(--tmz-ink-rgb),.05),0 6px 16px -8px rgba(var(--tmz-ink-rgb),.10);
  --tmz-shadow-m:0 1px 2px rgba(var(--tmz-ink-rgb),.04),0 22px 44px -20px rgba(var(--tmz-ink-rgb),.18);
  --tmz-shadow-l:0 34px 80px -34px rgba(var(--tmz-ink-rgb),.32);
}

/* ---- Reset ---- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--tmz-header-h) + 20px)}
body{margin:0;font-family:var(--tmz-font-b);color:var(--tmz-body);background:var(--tmz-bg);font-size:var(--tmz-fs-base);line-height:1.85;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{font-family:var(--tmz-font-h);color:var(--tmz-ink);margin:0;line-height:1.4;font-weight:var(--tmz-h-weight)}
p{margin:0}
a{text-decoration:none;color:inherit;transition:color .25s var(--tmz-ease)}
img,svg,video{display:block;max-inline-size:100%}
img{block-size:auto}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--tmz-primary);outline-offset:3px;border-radius:6px}
::selection{background:rgba(var(--tmz-primary-rgb),.18);color:var(--tmz-ink)}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);block-size:1px;inline-size:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;word-wrap:normal!important}
.tmz-skip:focus{clip:auto;clip-path:none;block-size:auto;inline-size:auto;inset-block-start:12px;inset-inline-start:12px;z-index:100000;padding:12px 18px;background:#fff;color:var(--tmz-ink);border-radius:12px;box-shadow:var(--tmz-shadow-m)}
.tmz-i{inline-size:20px;block-size:20px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.tmz-i--fill{fill:currentColor;stroke:none}
.tmz-i--dir{transform:scaleX(var(--tmz-dir));transition:transform .35s var(--tmz-ease)}
bdi,.tmz-ltr{direction:ltr;unicode-bidi:isolate}
.tmz-wrap{inline-size:100%;max-inline-size:var(--tmz-container);margin-inline:auto;padding-inline:var(--tmz-gutter)}
.tmz-page{overflow-x:clip}
.tmz-sec{padding-block:var(--tmz-space-section);position:relative}
.tmz-sec--soft{background:var(--tmz-bg-soft)}
.tmz-sec--tight{padding-block:clamp(48px,5vw,72px)}
.tmz-sec--top0{padding-block-start:0}
.tmz-sec--bottom0{padding-block-end:0}
.tmz-center{display:flex;justify-content:center;margin-block-start:40px}

/* ---------- type ---------- */
.tmz-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--tmz-font-h);font-size:13.5px;font-weight:500;color:var(--tmz-primary)}
.tmz-eyebrow::before{content:"";inline-size:22px;block-size:2px;border-radius:2px;background:linear-gradient(90deg,var(--tmz-aqua),var(--tmz-primary))}
.tmz-h2{font-size:clamp(26px,2.7vw,36px);font-weight:600;line-height:1.45}
.tmz-h2 em,.tmz-h1 em{font-style:normal;background:linear-gradient(90deg,var(--tmz-primary),var(--tmz-primary-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.tmz-lead{font-size:17px;color:var(--tmz-body)}
.tmz-muted{color:var(--tmz-muted)}
.tmz-head{display:grid;gap:14px;max-inline-size:640px}
.tmz-head--c{margin-inline:auto;text-align:center;justify-items:center}
.tmz-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:44px}
.tmz-head--mb{margin-bottom:44px}

/* ---------- buttons ---------- */
.tmz-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding-inline:24px;border-radius:14px;font-family:var(--tmz-font-h);font-weight:500;font-size:15px;border:1px solid transparent;white-space:nowrap;cursor:pointer;transition:transform .35s var(--tmz-ease),box-shadow .35s var(--tmz-ease),background .25s,border-color .25s,color .25s}
.tmz-btn svg{width:18px;height:18px}
.tmz-btn--primary{background:linear-gradient(135deg,var(--tmz-primary) 0%,color-mix(in srgb,var(--tmz-primary) 72%,var(--tmz-primary-2)) 100%);color:#fff;box-shadow:0 12px 26px -12px rgba(var(--tmz-primary-rgb),.7),inset 0 1px 0 rgba(255,255,255,.18)}
.tmz-btn--primary:hover{transform:translateY(-2px);box-shadow:0 18px 32px -12px rgba(var(--tmz-primary-rgb),.75),inset 0 1px 0 rgba(255,255,255,.18);color:#fff}
.tmz-btn--ghost{background:#fff;color:var(--tmz-ink);border-color:var(--tmz-line-2)}
.tmz-btn--ghost:hover{border-color:var(--tmz-primary);color:var(--tmz-primary);transform:translateY(-2px)}
.tmz-btn--glass{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.18);backdrop-filter:blur(10px)}
.tmz-btn--glass:hover{background:rgba(255,255,255,.14);color:#fff;transform:translateY(-2px)}
.tmz-btn--white{background:#fff;color:var(--tmz-ink)}
.tmz-btn--white:hover{transform:translateY(-2px);color:var(--tmz-primary)}
.tmz-btn .tmz-wa{color:#22C55E}
.tmz-btn--sm{min-height:44px;padding-inline:18px;font-size:14px;border-radius:12px}
.tmz-btn--block{inline-size:100%}
.tmz-link-arrow{display:inline-flex;align-items:center;gap:8px;color:var(--tmz-primary);font-family:var(--tmz-font-h);font-weight:500;font-size:14.5px}
.tmz-link-arrow svg{width:17px;height:17px;transition:transform .35s var(--tmz-ease)}

/* ---------- icon chips ---------- */
.tmz-ic{flex:none;inline-size:48px;block-size:48px;border-radius:14px;background:var(--tmz-primary-soft);color:var(--tmz-primary);display:grid;place-items:center}
.tmz-ic svg{width:22px;height:22px}
.tmz-ic--sm{inline-size:40px;block-size:40px;border-radius:12px}
.tmz-ic--sm svg{width:19px;height:19px}
.tmz-ic--lg{inline-size:58px;block-size:58px;border-radius:18px}
.tmz-ic--lg svg{width:26px;height:26px}
.tmz-ic--dark{background:rgba(255,255,255,.06);color:var(--tmz-aqua-txt);border:1px solid rgba(255,255,255,.1)}
.tmz-ic--grad{background:linear-gradient(135deg,var(--tmz-primary),var(--tmz-primary-2));color:#fff;box-shadow:0 10px 22px -10px rgba(var(--tmz-primary-rgb),.8)}
.tmz-ic--white{background:#fff;color:var(--tmz-primary);box-shadow:var(--tmz-shadow-s)}

.tmz-h2{font-size:var(--tmz-h2)}
.tmz-h2 em{display:inline}
.tmz-btn{position:relative;overflow:hidden;isolation:isolate;text-decoration:none}
.tmz-btn::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.32) 50%,transparent 75%);transform:translateX(-130%);transition:transform .9s var(--tmz-ease)}
.tmz-btn:hover::after{transform:translateX(130%)}
.tmz-btn:active{transform:translateY(0) scale(.98)}
.tmz-btn .tmz-i--dir{transform:scaleX(var(--tmz-dir))}
.tmz-btn:hover .tmz-i--dir,.tmz-link-arrow:hover .tmz-i--dir,a:hover > .tmz-link-arrow .tmz-i--dir,a:hover .tmz-link-arrow .tmz-i--dir{transform:translateX(calc(4px * var(--tmz-dir))) scaleX(var(--tmz-dir))}
.tmz-link-arrow svg{transition:transform .35s var(--tmz-ease)}
.tmz-btn--wa .tmz-i{color:#22C55E}
.tmz-btn--glass .tmz-i--wa{color:#4ADE80}
.tmz-ic{transition:background .35s var(--tmz-ease),color .35s var(--tmz-ease),transform .5s var(--tmz-ease)}
.tmz-card:hover .tmz-ic:not(.tmz-ic--grad),.tmz-svc:not(.tmz-svc--dark):hover .tmz-ic:not(.tmz-ic--grad),.tmz-area:not(.tmz-svc--dark):hover .tmz-ic:not(.tmz-ic--grad),.tmz-cc-item:hover .tmz-ic:not(.tmz-ic--grad){background:var(--tmz-primary);color:#fff;transform:rotate(-6deg) scale(1.05)}
.tmz-tech:hover .tmz-ic--dark{background:rgba(127,227,234,.14);transform:rotate(-6deg)}

/* ---- Spotlight hover (cursor-following glow) ---- */
[data-tmz-spot]{--tmz-mx:50%;--tmz-my:50%}
[data-tmz-spot]::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:0;background:radial-gradient(380px circle at var(--tmz-mx) var(--tmz-my),rgba(127,227,234,.16),transparent 45%);opacity:0;transition:opacity .45s var(--tmz-ease)}
[data-tmz-spot]:hover::after{opacity:1}
[data-tmz-spot] > *{position:relative;z-index:1}
[data-tmz-spot] > .tmz-rings{position:absolute;z-index:0}

/* ---------- decor: rings / ripples ---------- */
.tmz-rings{position:absolute;pointer-events:none;border-radius:50%}
.tmz-rings i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(var(--tmz-primary-rgb),.13)}
.tmz-rings i:nth-child(2){inset:13%}
.tmz-rings i:nth-child(3){inset:26%}
.tmz-rings i:nth-child(4){inset:39%;background:rgba(var(--tmz-primary-rgb),.04)}
.tmz-rings--light i{border-color:rgba(127,227,234,.14)}
.tmz-rings--light i:nth-child(4){background:rgba(127,227,234,.04)}
.tmz-rings--anim i{animation:tmz-ripple 7s var(--tmz-ease) infinite}
.tmz-rings--anim i:nth-child(2){animation-delay:1.2s}
.tmz-rings--anim i:nth-child(3){animation-delay:2.4s}
.tmz-rings--anim i:nth-child(4){animation-delay:3.6s}
.tmz-dots{position:absolute;pointer-events:none;background-image:radial-gradient(rgba(var(--tmz-primary-rgb),.18) 1.2px,transparent 1.3px);background-size:18px 18px}
.tmz-dots--light{background-image:radial-gradient(rgba(127,227,234,.16) 1.2px,transparent 1.3px)}


/* ---- Chips, tags ---- */
.tmz-chips{display:flex;flex-wrap:wrap;gap:10px}
.tmz-chip{display:inline-flex;align-items:center;gap:8px;min-block-size:42px;padding-inline:16px;border-radius:999px;border:1px solid var(--tmz-line-2);background:#fff;font-size:14.5px;font-weight:500;color:var(--tmz-ink-2);transition:all .3s var(--tmz-ease)}
.tmz-chip .tmz-i{width:16px;height:16px;color:var(--tmz-primary)}
a.tmz-chip:hover{border-color:var(--tmz-primary);color:var(--tmz-primary);transform:translateY(-2px);box-shadow:var(--tmz-shadow-s)}
.tmz-chip--soft{background:var(--tmz-bg-soft);border-color:transparent}
.tmz-chip--sm{min-block-size:36px;font-size:13.5px;padding-inline:13px}
.tmz-chip-label{font-family:var(--tmz-font-h);font-size:13px;color:var(--tmz-muted);margin-block-end:10px;display:block}
.tmz-tagline{display:inline-flex;align-items:center;gap:8px;min-block-size:30px;padding-inline:12px;border-radius:999px;font-family:var(--tmz-font-h);font-size:12px;font-weight:500;inline-size:max-content;background:var(--tmz-primary-soft);color:var(--tmz-primary)}
.tmz-tagline--old{background:#FFF1E8;color:#B4430A}
.tmz-tagline--new,.tmz-tagline--dark{background:rgba(127,227,234,.12);color:var(--tmz-aqua-txt)}

/* ---- Grids & cards ---- */
/* ---------- grids & cards ---------- */
.tmz-g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.tmz-g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tmz-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tmz-card{background:#fff;border:1px solid var(--tmz-line);border-radius:22px;padding:28px;transition:transform .4s var(--tmz-ease),box-shadow .4s var(--tmz-ease),border-color .3s}
.tmz-card:hover{transform:translateY(-4px);box-shadow:var(--tmz-shadow-m);border-color:transparent}
.tmz-card h3{font-size:17.5px;font-weight:600}
.tmz-card p{font-size:14.5px;color:var(--tmz-muted);line-height:1.85}
.tmz-card--flat:hover{transform:none;box-shadow:none;border-color:var(--tmz-line)}


/* ---- Lists, tables, notes ---- */
.tmz-ticks{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.tmz-ticks li{position:relative;padding-inline-start:30px;line-height:1.85}
.tmz-ticks li::before{content:"";position:absolute;inset-inline-start:5px;inset-block-start:.72em;inline-size:9px;block-size:9px;border-radius:50%;background:linear-gradient(135deg,var(--tmz-primary),var(--tmz-primary-2));box-shadow:0 0 0 5px var(--tmz-primary-soft)}
.tmz-ticks--2{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.tmz-olist{display:grid;gap:14px;counter-reset:tmzs;margin:0;padding:0;list-style:none}
.tmz-olist li{counter-increment:tmzs;position:relative;padding:18px 20px;padding-inline-start:72px;border-radius:18px;background:#fff;border:1px solid var(--tmz-line);line-height:1.85;transition:border-color .3s,box-shadow .3s}
.tmz-olist li:hover{border-color:transparent;box-shadow:var(--tmz-shadow-s)}
.tmz-olist li::before{content:counter(tmzs);position:absolute;inset-inline-start:18px;inset-block-start:18px;inline-size:38px;block-size:38px;border-radius:12px;background:linear-gradient(135deg,var(--tmz-primary),var(--tmz-primary-2));color:#fff;display:grid;place-items:center;font-family:var(--tmz-font-h);font-size:15px;font-weight:600}
.tmz-olist b,.tmz-olist strong{color:var(--tmz-ink);font-family:var(--tmz-font-h);font-weight:500}
.tmz-tbl-box{overflow-x:auto;border:1px solid var(--tmz-line);border-radius:18px;background:#fff}
.tmz-tbl{inline-size:100%;min-inline-size:560px;border-collapse:collapse;font-size:14.5px;line-height:1.75}
.tmz-tbl th{background:var(--tmz-bg-soft);color:var(--tmz-ink);font-family:var(--tmz-font-h);font-weight:500;text-align:start;padding:15px 20px;font-size:14px}
.tmz-tbl td{padding:15px 20px;border-top:1px solid var(--tmz-line);vertical-align:top}
.tmz-tbl td:first-child{color:var(--tmz-ink);font-weight:500}
.tmz-tbl tbody tr{transition:background .25s}
.tmz-tbl tbody tr:hover{background:var(--tmz-bg-soft)}
.tmz-note{display:flex;gap:14px;align-items:flex-start;padding:20px 22px;border-radius:18px;background:var(--tmz-primary-soft);font-size:15px;line-height:1.9;color:var(--tmz-ink-2)}
.tmz-note strong{color:var(--tmz-ink)}
.tmz-note--warn{background:#FFF6EC;color:#7A3E0C}
.tmz-note--warn strong{color:#7A3E0C}
.tmz-note--warn .tmz-ic{background:#FFE6CC;color:#B4530A}

/* ---- FAQ accordion ---- */
/* ---------- faq ---------- */
.tmz-faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,80px);align-items:start}
.tmz-acc{display:grid;gap:12px}
.tmz-q{background:#fff;border:1px solid var(--tmz-line);border-radius:18px;padding-inline:22px;transition:box-shadow .35s var(--tmz-ease),border-color .3s}
.tmz-q[open]{box-shadow:var(--tmz-shadow-m);border-color:transparent}
.tmz-q summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:19px;font-family:var(--tmz-font-h);font-size:15.5px;font-weight:500;color:var(--tmz-ink)}
.tmz-q summary::-webkit-details-marker{display:none}
.tmz-pm{flex:none;inline-size:32px;block-size:32px;border-radius:10px;background:var(--tmz-bg-soft);color:var(--tmz-ink);display:grid;place-items:center;transition:all .35s var(--tmz-ease)}
.tmz-pm svg{width:16px;height:16px}
.tmz-q[open] .tmz-pm{transform:rotate(45deg);background:var(--tmz-primary);color:#fff}
.tmz-q__a{padding-bottom:20px;font-size:15px;color:var(--tmz-muted);line-height:1.9}
.tmz-help{display:flex;align-items:center;gap:14px;margin-top:10px;padding:18px;border-radius:18px;background:var(--tmz-bg-soft);border:1px solid var(--tmz-line)}
.tmz-help b{display:block;font-family:var(--tmz-font-h);font-size:15px;color:var(--tmz-ink);font-weight:500}
.tmz-help small{font-size:13px;color:var(--tmz-muted)}

.tmz-q__a{padding-bottom:20px;font-size:15px;color:var(--tmz-muted);line-height:1.9}
.tmz-q__a p + p{margin-block-start:10px}
.tmz-q summary:hover{color:var(--tmz-primary)}
.tmz-q__a{animation:tmz-fadein .45s var(--tmz-ease)}

/* ---- Post cards ---- */
/* ---------- posts ---------- */
.tmz-post{background:#fff;border:1px solid var(--tmz-line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;transition:transform .45s var(--tmz-ease),box-shadow .45s var(--tmz-ease)}
.tmz-post:hover{transform:translateY(-5px);box-shadow:var(--tmz-shadow-m)}
.tmz-cover{position:relative;aspect-ratio:16/10;overflow:hidden;display:grid;place-items:center;background:radial-gradient(120% 120% at 100% 0%,#DCEBFA,transparent 60%),var(--tmz-primary-soft)}
.tmz-cover .tmz-rings{inline-size:300px;block-size:300px;top:50%;left:50%;transform:translate(-50%,-50%)}
.tmz-cover .tmz-ic{position:relative;z-index:2;inline-size:72px;block-size:72px;border-radius:22px;background:#fff;box-shadow:var(--tmz-shadow-m);transition:transform .6s var(--tmz-ease)}
.tmz-cover .tmz-ic svg{width:32px;height:32px}
.tmz-post:hover .tmz-cover .tmz-ic{transform:scale(1.06) rotate(-4deg)}
.tmz-cover--aqua{background:radial-gradient(120% 120% at 0% 100%,#D3F4F6,transparent 60%),#E8F8FA}
.tmz-cover--aqua .tmz-ic{color:#0E8F9B}
.tmz-cover--navy{background:radial-gradient(120% 120% at 100% 0%,var(--tmz-dark-3),transparent 60%),var(--tmz-dark)}
.tmz-cover--navy .tmz-rings i{border-color:rgba(127,227,234,.16)}
.tmz-cover--navy .tmz-ic{background:rgba(255,255,255,.08);color:var(--tmz-aqua-txt);border:1px solid rgba(255,255,255,.14);box-shadow:none}
.tmz-cover--thermal{background:radial-gradient(circle at 58% 52%,#EF4444 0 5%,#F97316 9%,#EAB308 15%,#22C55E 23%,#06B6D4 33%,#2563EB 48%,#1E3A8A 68%,#0F1F4D 100%)}
.tmz-cover--thermal .tmz-ic{background:rgba(255,255,255,.9)}
.tmz-cover .tmz-tag{position:absolute;z-index:3;top:16px;inset-inline-start:16px;padding:4px 12px;border-radius:999px;background:rgba(255,255,255,.94);font-family:var(--tmz-font-h);font-size:12px;font-weight:500;color:var(--tmz-primary);box-shadow:var(--tmz-shadow-s)}
.tmz-post-b{padding:22px 24px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.tmz-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:13px;color:var(--tmz-muted)}
.tmz-meta span{display:inline-flex;align-items:center;gap:6px}
.tmz-meta svg{width:15px;height:15px;color:var(--tmz-primary)}
.tmz-post h3{font-size:17px;font-weight:600;line-height:1.65}
.tmz-post p{font-size:14.5px;color:var(--tmz-muted);line-height:1.85}
.tmz-post .tmz-link-arrow{margin-top:auto;padding-top:6px}

.tmz-cover img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;transition:transform 1.1s var(--tmz-ease)}
.tmz-post:hover .tmz-cover img{transform:scale(1.06)}
.tmz-post h3 a{color:inherit}
.tmz-post h3 a:hover{color:var(--tmz-primary)}

/* ---- CTA band ---- */
/* ---------- CTA band ---------- */
.tmz-cta{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;padding:clamp(36px,5vw,64px);display:grid;grid-template-columns:1.4fr auto;gap:32px;align-items:center;color:#B8CADD;background:radial-gradient(90% 120% at 0% 100%,var(--tmz-dark-3),transparent 60%),linear-gradient(140deg,var(--tmz-dark-2),var(--tmz-dark))}
.tmz-cta h2{color:#fff}
.tmz-cta .tmz-eyebrow{color:var(--tmz-aqua-txt)}
.tmz-cta .tmz-rings{inline-size:520px;block-size:520px;left:-170px;top:-160px;z-index:-1}
.tmz-cta .tmz-dots{inset-block:0;inset-inline-end:0;inline-size:40%;opacity:.6;z-index:-1;-webkit-mask:linear-gradient(to left,transparent,#000);mask:linear-gradient(to left,transparent,#000)}
.tmz-cta-list{display:flex;gap:18px;flex-wrap:wrap;margin-top:6px;font-size:14px}
.tmz-cta-list span{display:inline-flex;align-items:center;gap:7px}
.tmz-cta-list svg{width:16px;height:16px;color:var(--tmz-aqua)}
.tmz-cta .tmz-btns{flex-direction:column;min-inline-size:260px}

.tmz-cta .tmz-copy{display:grid;gap:16px}
.tmz-cta p{font-size:16px;line-height:1.9;max-inline-size:620px}
.tmz-cta .tmz-btns{display:flex;flex-direction:column;gap:12px;min-inline-size:260px}

/* ---- Shared copy/feature blocks ---- */
.tmz-copy{display:grid;gap:20px;align-content:start}
.tmz-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.tmz-feats{display:grid;gap:18px;margin-block:6px}
.tmz-feat{display:flex;gap:16px;align-items:flex-start}
.tmz-feat h3,.tmz-feat h4{font-size:16.5px;font-weight:600;margin-bottom:2px}
.tmz-feat p{font-size:14.5px;color:var(--tmz-muted);line-height:1.8}

/* ---- Animation engine ---- */
/* Entrances fade in a little faster than they travel, and the travel lands on a
   long ease-out (no overshoot), so elements settle in rather than arrive. */
.tmz-js.tmz-anim-on [data-tmz-anim]{--tmz-ease-reveal:cubic-bezier(.16,1,.3,1);opacity:0;transition:opacity calc(var(--tmz-anim-dur) * .8) cubic-bezier(.33,1,.68,1),transform calc(var(--tmz-anim-dur) * 1.2) var(--tmz-ease-reveal),filter var(--tmz-anim-dur) var(--tmz-ease-reveal),clip-path calc(var(--tmz-anim-dur) * 1.3) var(--tmz-ease-reveal);transition-delay:var(--tmz-delay,0ms);backface-visibility:hidden}
.tmz-js.tmz-anim-on [data-tmz-anim="up"]{transform:translate3d(0,var(--tmz-anim-dist),0)}
.tmz-js.tmz-anim-on [data-tmz-anim="down"]{transform:translate3d(0,calc(var(--tmz-anim-dist) * -1),0)}
.tmz-js.tmz-anim-on [data-tmz-anim="start"]{transform:translate3d(calc(var(--tmz-anim-dist) * -1.1 * var(--tmz-dir)),0,0)}
.tmz-js.tmz-anim-on [data-tmz-anim="end"]{transform:translate3d(calc(var(--tmz-anim-dist) * 1.1 * var(--tmz-dir)),0,0)}
.tmz-js.tmz-anim-on [data-tmz-anim="zoom"]{transform:scale(.965)}
.tmz-js.tmz-anim-on [data-tmz-anim="blur"]{filter:blur(8px);transform:translate3d(0,12px,0)}
.tmz-js.tmz-anim-on [data-tmz-anim="reveal"]{opacity:1;clip-path:inset(0 0 100% 0)}
.tmz-js.tmz-anim-on [data-tmz-anim="reveal-x"]{opacity:1;clip-path:inset(0 100% 0 0)}
.tmz-js.tmz-anim-on [data-tmz-anim].tmz-in{opacity:1;transform:none;filter:none;clip-path:inset(0 0 0 0)}
.tmz-words .tmz-w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-block:.08em .14em;margin-block:-.08em -.14em}
.tmz-words .tmz-w > span{display:inline-block;transform:translate3d(0,110%,0);transition:transform calc(var(--tmz-anim-dur) * 1.15) cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--tmz-i,0) * 45ms + var(--tmz-delay,0ms))}
.tmz-words.tmz-in .tmz-w > span{transform:none}
.tmz-words em{background:none!important;color:inherit!important}
.tmz-words em .tmz-w > span{background:linear-gradient(90deg,var(--tmz-primary),var(--tmz-primary-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.tmz-anim-done [data-tmz-anim]{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}
.tmz-anim-done .tmz-words .tmz-w > span{transform:none!important}
/* ---------- animations ---------- */
@keyframes tmz-pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.6);opacity:.55}}
@keyframes tmz-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes tmz-scan{0%,100%{transform:translateY(0)}50%{transform:translateY(122px)}}
@keyframes tmz-ripple{0%{transform:scale(.9);opacity:0}25%{opacity:1}100%{transform:scale(1.12);opacity:0}}
@keyframes tmz-sweep{to{transform:rotate(360deg)}}
@keyframes tmz-eq{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
@keyframes tmz-rise{0%{transform:translateY(30px) scale(.8);opacity:0}25%{opacity:1}100%{transform:translateY(-90px) scale(1.1);opacity:0}}
@keyframes tmz-fab{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.5);opacity:0}}
@keyframes tmz-rv{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}


@keyframes tmz-fadein{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .tmz-js.tmz-anim-on [data-tmz-anim]{opacity:1;transform:none;filter:none;clip-path:none}
  .tmz-words .tmz-w > span{transform:none}
}

/* ---- Responsive (shared) ---- */
@media (max-width:1120px){
  .tmz-g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tmz-g3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tmz-cta{grid-template-columns:1fr}
  .tmz-cta .tmz-btns{flex-direction:row;flex-wrap:wrap;min-inline-size:0}
}
@media (max-width:700px){
  .tmz-g4,.tmz-g3,.tmz-g2,.tmz-ticks--2{grid-template-columns:1fr}
  .tmz-head-row{margin-bottom:32px}
  .tmz-cta{border-radius:24px}
  .tmz-cta .tmz-btn{inline-size:100%}
}
@media (min-width:1800px){
  :root{--tmz-fs-base:17px}
  .tmz-wrap{max-inline-size:calc(var(--tmz-container) + 160px)}
}
.tmz-sec--soft .tmz-chip--soft{background:#fff}

/* ---- Pause decorative loops while off-screen (saves main-thread work) ---- */
.tmz-off *,.tmz-off *::before,.tmz-off *::after,.tmz-off::before,.tmz-off::after{animation-play-state:paused!important}

/* ---- Decorative loops start after the first interaction (keeps load-time main thread idle) ---- */
html:not(.tmz-motion) .tmz-rings--anim i,html:not(.tmz-motion) .tmz-fchip,html:not(.tmz-motion) .tmz-badge-f,html:not(.tmz-motion) .tmz-scan::after,html:not(.tmz-motion) .tmz-sweep,html:not(.tmz-motion) .tmz-live i,html:not(.tmz-motion) .tmz-eq i,html:not(.tmz-motion) .tmz-bub,html:not(.tmz-motion) .tmz-arcs i,html:not(.tmz-motion) .tmz-cross,html:not(.tmz-motion) .tmz-nodes i,html:not(.tmz-motion) .tmz-hub::before,html:not(.tmz-motion) .tmz-fab::after{animation:none}
html:not(.tmz-motion) .tmz-hs-img,html:not(.tmz-motion) .tmz-hs-thermal{transition:none}

/* ---- Elementor: QB section containers are full-bleed, no padding or gaps ---- */
.e-con.tmz-e{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--width:100%;--content-width:100%;max-width:100%;overflow:visible}
.e-con.tmz-e>.e-con-inner{padding:0;max-width:100%;gap:0}
.e-con.tmz-e>.elementor-widget,.e-con.tmz-e>.e-con-inner>.elementor-widget{width:100%;max-width:100%}
.tmz-qb{display:block;width:100%}

/* Small screens: forced title line breaks from Theme Options would leave single words on their own line. */
@media (max-width:767px){.tmz-h1 br,.tmz-h2 br,.tmz-hs-title br,.tmz-sec h3 br,.tmz-cta h2 br{display:none}}
