@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;500;600;700;800;900&family=Poppins:wght@300;400;500;600;700&display=swap');:root{--red:#C30538;--red-dark:#8A0426;--red-tint:#FBE6EC;--dark:#1D1D1F;--white:#FFFFFF;--off:#F5F5F7;--n50:#FAFAFA;--n100:#F5F5F7;--n200:#E5E5E7;--n300:#D2D2D7;--n400:#AEAEB2;--n500:#86868B;--n600:#6E6E73;--n700:#48484A;--n800:#2C2C2E;--mid:#E5E5EA;--body:'Poppins','Helvetica Neue',Arial,sans-serif;--head:'Raleway','Helvetica Neue',Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--max:1280px;--green:#0A7A3A;--blue:#1B4FBF;--odoo:#714B67;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-pill:999px;--sh-sm:0 1px 2px rgba(29,29,31,.06);--sh-md:0 4px 16px rgba(29,29,31,.08);--sh-lg:0 12px 32px rgba(29,29,31,.12);--ease:cubic-bezier(.2,.8,.2,1)}#tu-kit *{box-sizing:border-box;margin:0;padding:0}#tu-kit{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#tu-kit{font-family:var(--body);color:var(--dark);background:#fff;font-size:16px;line-height:1.6}#tu-kit a{color:inherit;text-decoration:none}#tu-kit img{display:block;max-width:100%}#tu-kit [dir="rtl"]{text-align:right}#tu-kit h1{font-family:var(--head);font-weight:800;font-size:clamp(40px,5vw,80px);line-height:1.04;letter-spacing:-.025em}#tu-kit h2{font-family:var(--head);font-weight:800;font-size:clamp(30px,3.6vw,52px);line-height:1.07;letter-spacing:-.02em}#tu-kit h3{font-family:var(--head);font-weight:700;font-size:22px;line-height:1.2}#tu-kit h4{font-family:var(--head);font-weight:700;font-size:17px;line-height:1.3}#tu-kit h5{font-family:var(--head);font-weight:700;font-size:13px;line-height:1.3}#tu-kit p{text-wrap:pretty}#tu-kit p.lead{font-size:19px;line-height:1.65;color:var(--n700);max-width:660px}#tu-kit .eyebrow{font-family:var(--head);font-weight:700;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin-bottom:16px}#tu-kit .span-red{color:var(--red)}#tu-kit .muted{color:var(--n500)}#tu-kit .center{text-align:center}#tu-kit .mx-auto{margin-left:auto;margin-right:auto}#tu-kit .wrap{max-width:var(--max);margin:0 auto;padding:0 32px}#tu-kit .wrap-narrow{max-width:880px;margin:0 auto;padding:0 32px}#tu-kit .o-section{padding:96px 0}#tu-kit .o-section--sm{padding:64px 0}#tu-kit .o-section--dark{background:var(--dark);color:#fff}#tu-kit .o-section--red{background:var(--red);color:#fff}#tu-kit .o-section--off{background:var(--off)}#tu-kit .o-section--dark .eyebrow,#tu-kit .o-section--red .eyebrow{color:rgba(255,255,255,.75)}#tu-kit .o-section--dark h2,#tu-kit .o-section--dark h3,#tu-kit .o-section--dark h4,#tu-kit .o-section--red h2{color:#fff}#tu-kit .o-section--dark p.lead,#tu-kit .o-section--red p.lead{color:rgba(255,255,255,.8)}#tu-kit .grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}#tu-kit .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}#tu-kit .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}#tu-kit .split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}#tu-kit .split-7-5{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:start}#tu-kit hr.rule{border:none;border-top:1px solid var(--mid);margin:56px 0}#tu-kit .o-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--head);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;background:var(--red);color:#fff;padding:13px 24px;border-radius:var(--r-sm);border:none;cursor:pointer;transition:background .15s,transform .15s;white-space:nowrap}#tu-kit .o-btn:hover{background:var(--red-dark);transform:translateY(-1px)}#tu-kit .o-btn.ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.45)}#tu-kit .o-btn.ghost:hover{background:#fff;color:var(--red);border-color:#fff}#tu-kit .o-btn.ghost-dark{background:transparent;color:var(--dark);border:2px solid var(--dark)}#tu-kit .o-btn.ghost-dark:hover{background:var(--dark);color:#fff}#tu-kit .o-btn.dark{background:var(--dark)}#tu-kit .o-btn.dark:hover{background:#000}#tu-kit .o-btn.sm{padding:9px 16px;font-size:11px}#tu-kit .o-btn.lg{padding:16px 30px;font-size:13px}#tu-kit .o-btn.block{display:flex;width:100%;justify-content:center}#tu-kit .link-arrow{font-family:var(--head);font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--red);display:inline-flex;align-items:center;gap:6px;transition:gap .15s}#tu-kit .link-arrow::after{content:"→"}#tu-kit .link-arrow:hover{gap:11px}#tu-kit .o-nav{position:sticky;top:0;z-index:200;background:#fff;border-bottom:1px solid var(--mid)}#tu-kit .o-nav__inner{max-width:var(--max);margin:0 auto;padding:0 32px;height:66px;display:flex;align-items:center;justify-content:space-between;gap:24px}#tu-kit .o-nav__logo{height:34px}#tu-kit .o-nav__links{display:flex;gap:0;list-style:none;height:66px;align-items:stretch}#tu-kit .o-nav__links>li{display:flex;align-items:center;position:static}#tu-kit .o-nav__links>li>a{display:flex;align-items:center;height:66px;padding:0 16px;font-family:var(--head);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--dark);border-bottom:3px solid transparent;transition:color .15s,border-color .15s;white-space:nowrap;cursor:pointer}#tu-kit .o-nav__links>li>a:hover,#tu-kit .o-nav__links>li.active>a,#tu-kit .o-nav__links>li.open>a{color:var(--red);border-bottom-color:var(--red)}#tu-kit .o-nav__links>li>a .caret{font-size:9px;margin-left:6px;opacity:.5}#tu-kit .o-nav__actions{display:flex;align-items:center;gap:14px}#tu-kit .o-nav__lang{display:flex;gap:2px;font-family:var(--head);font-weight:700;font-size:11px;letter-spacing:.04em}#tu-kit .o-nav__lang a{padding:4px 7px;border-radius:3px;color:var(--n500)}#tu-kit .o-nav__lang a.active{background:var(--off);color:var(--dark)}#tu-kit .o-nav__burger{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:6px}#tu-kit .o-nav__burger span{width:22px;height:2px;background:var(--dark);display:block}#tu-kit .mega{position:absolute;left:0;right:0;top:66px;background:#fff;border-bottom:1px solid var(--mid);box-shadow:var(--sh-lg);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s var(--ease);z-index:199}#tu-kit .mega.show{opacity:1;visibility:visible;transform:none}#tu-kit .mega__inner{max-width:var(--max);margin:0 auto;padding:36px 32px;display:grid;grid-template-columns:1fr 1fr 1fr 0.9fr;gap:36px}#tu-kit .mega__col h6{font-family:var(--head);font-weight:800;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--mid)}#tu-kit .mega__col ul{list-style:none;display:flex;flex-direction:column;gap:2px}#tu-kit .mega__col li a{display:block;padding:6px 0;font-size:13px;color:var(--n700);transition:color .12s,padding .12s}#tu-kit .mega__col li a:hover{color:var(--red);padding-left:6px}#tu-kit .mega__col li a b{font-family:var(--head);font-weight:700;font-size:13px;color:var(--dark);display:block}#tu-kit .mega__col li a span{font-size:11px;color:var(--n500)}#tu-kit .mega__promo{background:var(--dark);border-radius:var(--r-md);padding:22px;color:#fff;display:flex;flex-direction:column;justify-content:space-between}#tu-kit .mega__promo h6{color:rgba(255,255,255,.55);border:none}#tu-kit .mega__promo p{font-size:13px;color:rgba(255,255,255,.7);margin:6px 0 16px}#tu-kit .o-hero{background:var(--dark);color:#fff;padding:120px 0 90px;position:relative;overflow:hidden}#tu-kit .o-hero__inner{max-width:var(--max);margin:0 auto;padding:0 32px;position:relative;z-index:2}#tu-kit .dots-bg{position:absolute;right:0;top:0;bottom:0;width:55%;background-image:radial-gradient(rgba(195,5,56,.32) 1.8px,transparent 2px);background-size:14px 14px;-webkit-mask-image:linear-gradient(to left,#000 18%,transparent 85%);mask-image:linear-gradient(to left,#000 18%,transparent 85%);pointer-events:none}#tu-kit .o-hero h1{max-width:820px;margin-bottom:26px}#tu-kit .o-hero p.lead{font-size:20px;margin-bottom:38px;color:rgba(255,255,255,.82)}#tu-kit .o-hero__ctas{display:flex;gap:14px;flex-wrap:wrap}#tu-kit .page-header{background:var(--dark);color:#fff;padding:84px 0 64px;position:relative;overflow:hidden}#tu-kit .page-header .dots-bg{width:42%}#tu-kit .page-header__inner{max-width:var(--max);margin:0 auto;padding:0 32px;position:relative;z-index:2}#tu-kit .page-header h1{font-size:clamp(34px,4.4vw,64px);margin-bottom:16px;max-width:880px}#tu-kit .page-header p.lead{color:rgba(255,255,255,.82)}#tu-kit .o-breadcrumb{background:var(--off);border-bottom:1px solid var(--mid)}#tu-kit .o-breadcrumb__inner{max-width:var(--max);margin:0 auto;padding:12px 32px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--n500);flex-wrap:wrap}#tu-kit .o-breadcrumb a{color:var(--dark);font-weight:500}#tu-kit .o-breadcrumb a:hover{color:var(--red)}#tu-kit .o-breadcrumb .sep{color:var(--n300)}#tu-kit .cert-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:46px;padding-top:30px;border-top:1px solid rgba(255,255,255,.1)}#tu-kit .cert-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:3px;padding:6px 12px;font-family:var(--head);font-weight:600;font-size:11px;letter-spacing:.05em;color:rgba(255,255,255,.82)}#tu-kit .cert-pill .dot{width:6px;height:6px;border-radius:50%;background:var(--red);flex-shrink:0}#tu-kit .tag{display:inline-flex;align-items:center;gap:5px;font-family:var(--head);font-weight:600;font-size:11px;letter-spacing:.03em;background:var(--off);border:1px solid var(--mid);border-radius:3px;padding:4px 10px;color:var(--n700)}#tu-kit .tag.red{background:var(--red-tint);border-color:rgba(195,5,56,.25);color:var(--red-dark)}#tu-kit .tag-row{display:flex;flex-wrap:wrap;gap:6px}#tu-kit .o-stats{display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--mid);border-bottom:1px solid var(--mid)}#tu-kit .o-stat{padding:32px 18px;text-align:center;border-right:1px solid var(--mid)}#tu-kit .o-stat:last-child{border-right:none}#tu-kit .o-stat__num{font-family:var(--head);font-weight:800;font-size:38px;line-height:1;letter-spacing:-.03em;color:var(--red)}#tu-kit .o-stat__lbl{font-family:var(--head);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--n500);margin-top:6px;line-height:1.3}#tu-kit .o-card{background:#fff;border:1px solid var(--mid);border-top:4px solid var(--red);border-radius:var(--r-md);padding:28px 24px}#tu-kit .o-card--dark{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);border-top-color:var(--red)}#tu-kit .o-card--dark p{color:rgba(255,255,255,.7)}#tu-kit .o-card--dark h4{color:#fff}#tu-kit .o-card__num{font-family:var(--head);font-weight:800;font-size:13px;letter-spacing:.14em;color:var(--red);margin-bottom:12px}#tu-kit .o-card h4{margin-bottom:8px}#tu-kit .o-card p{font-size:13px;color:var(--n700);line-height:1.6}#tu-kit .o-card.hover{transition:transform .18s var(--ease),box-shadow .18s var(--ease)}#tu-kit .o-card.hover:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}#tu-kit .div-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-md);padding:32px 28px}#tu-kit .div-badge{display:inline-block;font-family:var(--head);font-weight:800;font-size:10px;letter-spacing:.2em;text-transform:uppercase;background:var(--red);color:#fff;padding:5px 12px;border-radius:3px;margin-bottom:16px}#tu-kit .div-badge.uni{background:var(--blue)}#tu-kit .div-badge.biz{background:var(--green)}#tu-kit .div-card h3{color:#fff;margin-bottom:12px}#tu-kit .div-card p{font-size:13px;color:rgba(255,255,255,.7);line-height:1.6;margin-bottom:16px}#tu-kit .div-list{list-style:none;display:flex;flex-direction:column;gap:6px}#tu-kit .div-list li{font-size:13px;color:rgba(255,255,255,.65);padding-left:18px;position:relative}#tu-kit .div-list li::before{content:"→";position:absolute;left:0;color:var(--red);font-weight:700}#tu-kit .diff-item{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--mid);align-items:start}#tu-kit .diff-item:last-child{border-bottom:none}#tu-kit .diff-num{font-family:var(--head);font-weight:800;font-size:40px;color:var(--red);line-height:1}#tu-kit .diff-item h3{margin-bottom:8px}#tu-kit .diff-item p{color:var(--n700);font-size:15px;line-height:1.6}#tu-kit .norm-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}#tu-kit .norm-card{background:var(--off);border:1px solid var(--mid);border-radius:6px;padding:16px 12px;text-align:center;transition:.15s}#tu-kit .norm-card:hover{border-color:var(--red);background:#fff;box-shadow:var(--sh-sm)}#tu-kit .norm-code{font-family:var(--head);font-weight:800;font-size:14px;color:var(--red);margin-bottom:4px}#tu-kit .norm-name{font-size:11px;color:var(--n500);line-height:1.3}#tu-kit .steps{display:grid;gap:16px}#tu-kit .steps.c4{grid-template-columns:repeat(4,1fr)}#tu-kit .steps.c5{grid-template-columns:repeat(5,1fr)}#tu-kit .step .step-num{font-family:var(--head);font-weight:800;font-size:44px;color:var(--red);line-height:1;margin-bottom:10px}#tu-kit .step h4{margin-bottom:6px}#tu-kit .step p{font-size:13px;color:var(--n700)}#tu-kit .phase-card{text-align:center;border-top-color:var(--red)}#tu-kit .phase-letter{font-family:var(--head);font-weight:800;font-size:48px;line-height:1;margin-bottom:8px;color:var(--dark)}#tu-kit .phase-card:first-child .phase-letter{color:var(--red)}#tu-kit .pilier-card{background:#fff;border:1px solid var(--mid);border-radius:var(--r-md);padding:28px;border-top:4px solid}#tu-kit .pilier-e{border-top-color:var(--green)}#tu-kit .pilier-s{border-top-color:var(--blue)}#tu-kit .pilier-g{border-top-color:var(--red)}#tu-kit .pilier-letter{font-family:var(--head);font-weight:800;font-size:48px;line-height:1;margin-bottom:8px}#tu-kit .pilier-e .pilier-letter{color:var(--green)}#tu-kit .pilier-s .pilier-letter{color:var(--blue)}#tu-kit .pilier-g .pilier-letter{color:var(--red)}#tu-kit .pilier-list{list-style:none;margin-top:12px;display:flex;flex-direction:column;gap:6px}#tu-kit .pilier-list li{font-size:13px;color:var(--n700);padding-left:14px;position:relative}#tu-kit .pilier-list li::before{content:"·";position:absolute;left:0;font-weight:800;color:currentColor}#tu-kit .cta-band{background:var(--red);padding:80px 0;text-align:center;position:relative;overflow:hidden}#tu-kit .cta-band h2{color:#fff;margin-bottom:12px}#tu-kit .cta-band p{color:rgba(255,255,255,.88);font-size:17px;margin-bottom:32px;max-width:560px;margin-left:auto;margin-right:auto}#tu-kit .cta-band--dark{background:var(--dark)}#tu-kit .lead-form{background:#fff;border:1px solid var(--mid);border-radius:var(--r-lg);padding:32px;box-shadow:var(--sh-md)}#tu-kit .lead-form.on-dark{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);box-shadow:none}#tu-kit .lead-form h3{margin-bottom:6px}#tu-kit .lead-form .form-sub{font-size:13px;color:var(--n500);margin-bottom:20px}#tu-kit .lead-form.on-dark .form-sub{color:rgba(255,255,255,.6)}#tu-kit .field{margin-bottom:14px}#tu-kit .field label{display:block;font-family:var(--head);font-weight:600;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--n600);margin-bottom:6px}#tu-kit .lead-form.on-dark .field label{color:rgba(255,255,255,.6)}#tu-kit .field input,#tu-kit .field select,#tu-kit .field textarea{width:100%;font-family:var(--body);font-size:14px;padding:11px 13px;border:1px solid var(--mid);border-radius:var(--r-sm);background:#fff;color:var(--dark);transition:border-color .15s}#tu-kit .field input:focus,#tu-kit .field select:focus,#tu-kit .field textarea:focus{outline:none;border-color:var(--red)}#tu-kit .field textarea{resize:vertical;min-height:90px}#tu-kit .field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}#tu-kit .field-phone{display:flex;gap:8px}#tu-kit .field-phone select{flex:0 0 96px;padding-left:8px;padding-right:4px}#tu-kit .field-phone input{flex:1;min-width:0}#tu-kit .field-consent{display:flex;gap:10px;align-items:flex-start;font-size:11px;color:var(--n500);line-height:1.5;margin:14px 0}#tu-kit .field-consent input{width:16px;height:16px;flex-shrink:0;margin-top:2px}#tu-kit .field-consent a{color:var(--red);text-decoration:underline}#tu-kit .form-trust{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--n500);margin-top:14px}#tu-kit .form-trust::before{content:"🔒";font-size:13px}#tu-kit .session-table{width:100%;border-collapse:collapse;font-size:14px}#tu-kit .session-table thead th{font-family:var(--head);font-weight:700;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--n500);text-align:left;padding:12px 16px;border-bottom:2px solid var(--mid)}#tu-kit .session-table tbody td{padding:16px;border-bottom:1px solid var(--mid);vertical-align:middle}#tu-kit .session-table tbody tr:hover{background:var(--off)}#tu-kit .session-date{font-family:var(--head);font-weight:700;color:var(--dark)}#tu-kit .session-city{color:var(--n700)}#tu-kit .session-mode{display:inline-block;font-family:var(--head);font-weight:600;font-size:10px;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:3px;background:var(--off);border:1px solid var(--mid);color:var(--n700)}#tu-kit .session-mode.online{background:rgba(27,79,191,.08);border-color:rgba(27,79,191,.25);color:var(--blue)}#tu-kit .session-seats{font-size:12px;color:var(--green);font-weight:600}#tu-kit .session-seats.low{color:var(--red)}#tu-kit .price-box{background:var(--off);border:1px solid var(--mid);border-radius:var(--r-lg);padding:28px;position:sticky;top:90px}#tu-kit .price-amount{font-family:var(--head);font-weight:800;font-size:40px;color:var(--dark);line-height:1}#tu-kit .price-amount .cur{font-size:18px;color:var(--n500);font-weight:700}#tu-kit .price-old{font-size:14px;color:var(--n400);text-decoration:line-through;margin-left:8px}#tu-kit .price-fin{display:inline-flex;align-items:center;gap:6px;background:rgba(10,122,58,.1);border:1px solid rgba(10,122,58,.25);color:var(--green);font-family:var(--head);font-weight:700;font-size:12px;padding:6px 12px;border-radius:var(--r-pill);margin-top:12px}#tu-kit .price-meta{list-style:none;margin:20px 0;display:flex;flex-direction:column;gap:10px}#tu-kit .price-meta li{display:flex;gap:10px;font-size:13px;color:var(--n700);align-items:flex-start}#tu-kit .price-meta li::before{content:"✓";color:var(--green);font-weight:800;flex-shrink:0}#tu-kit .prog-card{background:#fff;border-radius:var(--r-md);border:1px solid var(--mid);padding:24px;display:flex;flex-direction:column;gap:10px;transition:.18s var(--ease)}#tu-kit .prog-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px)}#tu-kit .prog-badge{display:inline-block;font-family:var(--head);font-weight:700;font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:var(--red);color:#fff;padding:4px 10px;border-radius:3px;align-self:flex-start}#tu-kit .prog-card h4{margin:0}#tu-kit .prog-card p{font-size:13px;color:var(--n700);margin:0}#tu-kit .prog-amount{font-family:var(--head);font-weight:800;font-size:26px;color:var(--red)}#tu-kit .prog-detail{font-size:11px;color:var(--n500);font-family:var(--head);font-weight:600;letter-spacing:.06em;text-transform:uppercase}#tu-kit .shop-layout{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:start}#tu-kit .filter-panel{position:sticky;top:90px;background:#fff;border:1px solid var(--mid);border-radius:var(--r-md);padding:24px}#tu-kit .filter-group{margin-bottom:24px}#tu-kit .filter-group:last-child{margin-bottom:0}#tu-kit .filter-group h6{font-family:var(--head);font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dark);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--mid)}
#tu-kit .filter-opt{display:flex;align-items:center;gap:9px;padding:5px 0;font-size:13px;color:var(--n700);cursor:pointer}#tu-kit .filter-opt input{width:15px;height:15px;accent-color:var(--red)}#tu-kit .filter-opt .count{margin-left:auto;font-size:11px;color:var(--n400)}#tu-kit .chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}#tu-kit .chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--head);font-weight:600;font-size:12px;padding:7px 14px;border-radius:var(--r-pill);background:#fff;border:1px solid var(--mid);color:var(--n700);cursor:pointer;transition:.15s}#tu-kit .chip:hover{border-color:var(--red);color:var(--red)}#tu-kit .chip.active{background:var(--red);border-color:var(--red);color:#fff}#tu-kit .product-card{background:#fff;border:1px solid var(--mid);border-radius:var(--r-md);overflow:hidden;display:flex;flex-direction:column;transition:.18s var(--ease)}#tu-kit .product-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px)}#tu-kit .product-card__media{height:130px;background:var(--off) repeating-linear-gradient(135deg,transparent,transparent 9px,rgba(29,29,31,.03) 9px,rgba(29,29,31,.03) 10px);border-bottom:1px solid var(--mid);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;color:var(--n400);position:relative}#tu-kit .product-card__cat{position:absolute;top:10px;left:10px;font-family:var(--head);font-weight:700;font-size:9px;letter-spacing:.1em;text-transform:uppercase;background:#fff;border:1px solid var(--mid);border-radius:3px;padding:3px 8px;color:var(--red)}#tu-kit .product-card__body{padding:18px;display:flex;flex-direction:column;gap:8px;flex:1}#tu-kit .product-card__body h4{font-size:15px}#tu-kit .product-card__body p{font-size:12px;color:var(--n600);flex:1}#tu-kit .product-card__foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px}#tu-kit .product-price{font-family:var(--head);font-weight:800;font-size:16px;color:var(--dark)}#tu-kit .product-price.quote{font-size:13px;color:var(--n500)}#tu-kit .faq-item{border-bottom:1px solid var(--mid)}#tu-kit .faq-q{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;cursor:pointer;font-family:var(--head);font-weight:700;font-size:16px;color:var(--dark);list-style:none}#tu-kit .faq-q::-webkit-details-marker{display:none}#tu-kit .faq-q .pm{font-size:20px;color:var(--red);transition:transform .2s}#tu-kit details[open] .faq-q .pm{transform:rotate(45deg)}#tu-kit .faq-a{padding:0 0 22px;font-size:14px;color:var(--n700);line-height:1.7;max-width:760px}#tu-kit .blog-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--mid);border-radius:var(--r-md);overflow:hidden;transition:.18s var(--ease)}#tu-kit .blog-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px)}#tu-kit .blog-card__media{height:170px;background:var(--off) repeating-linear-gradient(135deg,transparent,transparent 9px,rgba(29,29,31,.03) 9px,rgba(29,29,31,.03) 10px);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;color:var(--n400)}#tu-kit .blog-card__body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}#tu-kit .blog-card__cat{font-family:var(--head);font-weight:700;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--red)}#tu-kit .blog-card__body h3{font-size:18px;line-height:1.25}#tu-kit .blog-card__excerpt{font-size:13px;color:var(--n600);flex:1}#tu-kit .blog-card__meta{font-size:12px;color:var(--n500);display:flex;gap:10px;align-items:center}#tu-kit .blog-featured{display:grid;grid-template-columns:1.2fr 1fr;gap:0;border:1px solid var(--mid);border-radius:var(--r-lg);overflow:hidden}#tu-kit .blog-featured__media{min-height:340px;background:var(--dark) radial-gradient(rgba(195,5,56,.3) 1.8px,transparent 2px);background-size:14px 14px}#tu-kit .blog-featured__body{padding:44px}#tu-kit .article-body{max-width:720px;margin:0 auto;font-size:17px;line-height:1.8;color:var(--n800)}#tu-kit .article-body h2{font-size:28px;margin:48px 0 16px}#tu-kit .article-body h3{font-size:21px;margin:36px 0 12px}#tu-kit .article-body p{margin-bottom:22px}#tu-kit .article-body ul,#tu-kit .article-body ol{margin:0 0 22px 22px;display:flex;flex-direction:column;gap:8px}#tu-kit .article-body blockquote{border-left:4px solid var(--red);padding:8px 0 8px 24px;margin:28px 0;font-family:var(--head);font-weight:600;font-size:21px;color:var(--dark);line-height:1.4}#tu-kit .toc{background:var(--off);border:1px solid var(--mid);border-radius:var(--r-md);padding:24px;position:sticky;top:90px}#tu-kit .toc h6{font-family:var(--head);font-weight:800;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--n500);margin-bottom:12px}#tu-kit .toc ul{list-style:none;display:flex;flex-direction:column;gap:8px}#tu-kit .toc a{font-size:13px;color:var(--n700)}#tu-kit .toc a:hover{color:var(--red)}#tu-kit .team-card{text-align:center;background:#fff;border:1px solid var(--mid);border-radius:var(--r-md);padding:28px 20px}#tu-kit .team-avatar{width:88px;height:88px;border-radius:50%;background:var(--off);margin:0 auto 14px;border:3px solid var(--mid);display:flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:800;font-size:26px;color:var(--red)}#tu-kit .team-name{font-family:var(--head);font-weight:700;font-size:16px;margin-bottom:4px}#tu-kit .team-role{font-size:12px;color:var(--n500);margin-bottom:12px;line-height:1.4}#tu-kit .cert-tags{display:flex;gap:4px;justify-content:center;flex-wrap:wrap}#tu-kit .cert-tag{font-size:10px;font-weight:600;font-family:var(--head);letter-spacing:.04em;background:var(--off);border:1px solid var(--mid);border-radius:3px;padding:3px 7px;color:var(--dark)}#tu-kit .callout{background:var(--red-tint);border:1px solid rgba(195,5,56,.2);border-radius:var(--r-md);padding:24px 28px}#tu-kit .callout h4{color:var(--red);margin-bottom:8px}#tu-kit .callout p{font-size:14px;color:var(--dark);line-height:1.6}#tu-kit .callout.neutral{background:var(--off);border-color:var(--mid)}#tu-kit .callout.neutral h4{color:var(--dark)}#tu-kit .accred-card{background:#fff;border:1px solid var(--mid);border-radius:var(--r-md);padding:24px;border-left:4px solid var(--red)}#tu-kit .accred-card .org{font-family:var(--head);font-weight:800;font-size:17px;margin-bottom:4px}#tu-kit .accred-card .scope{font-size:12px;color:var(--n500);margin-bottom:10px}#tu-kit .accred-card .badge-iso{display:inline-block;font-family:var(--head);font-weight:700;font-size:10px;letter-spacing:.08em;background:var(--dark);color:#fff;padding:3px 9px;border-radius:3px;margin-bottom:10px}#tu-kit .o-footer{background:var(--dark);color:#fff;padding:80px 0 40px}#tu-kit .o-footer__grid{max-width:var(--max);margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:40px;margin-bottom:48px}#tu-kit .o-footer__brand img{height:30px;margin-bottom:16px}#tu-kit .o-footer__brand p{font-size:13px;line-height:1.6;color:rgba(255,255,255,.6);max-width:280px;margin-bottom:16px}#tu-kit .o-footer__cert{display:flex;flex-wrap:wrap;gap:4px}#tu-kit .o-footer__cert span{font-size:10px;font-family:var(--head);font-weight:700;letter-spacing:.05em;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:3px;padding:3px 7px;color:rgba(255,255,255,.7)}#tu-kit .o-footer__col h5{font-family:var(--head);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px;color:#fff}#tu-kit .o-footer__col ul{list-style:none}#tu-kit .o-footer__col ul li{margin-bottom:8px}#tu-kit .o-footer__col ul li a{font-size:13px;color:rgba(255,255,255,.6);transition:color .15s}#tu-kit .o-footer__col ul li a:hover{color:#fff}#tu-kit .o-footer__bottom{max-width:var(--max);margin:0 auto;padding:24px 32px 0;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12px;color:rgba(255,255,255,.4)}#tu-kit .o-footer__bottom a{color:rgba(255,255,255,.4)}#tu-kit .o-footer__bottom a:hover{color:#fff}#tu-kit .cookie-bar{position:fixed;left:20px;right:20px;bottom:20px;z-index:500;background:#fff;border:1px solid var(--mid);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:22px 26px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;max-width:1100px;margin:0 auto}#tu-kit .cookie-bar.hidden{display:none}#tu-kit .cookie-bar h5{margin-bottom:4px}#tu-kit .cookie-bar p{font-size:12px;color:var(--n600);line-height:1.5;max-width:680px}#tu-kit .cookie-bar p a{color:var(--red);text-decoration:underline}#tu-kit .cookie-actions{display:flex;gap:10px;flex-wrap:wrap}#tu-kit .kpi-inline{display:flex;flex-wrap:wrap;gap:32px;margin:24px 0}#tu-kit .kpi-inline .kpi b{font-family:var(--head);font-weight:800;font-size:32px;color:var(--red);display:block;line-height:1}#tu-kit .kpi-inline .kpi span{font-size:12px;color:var(--n500);text-transform:uppercase;letter-spacing:.06em;font-family:var(--head);font-weight:600}#tu-kit .logo-wall{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--mid);border:1px solid var(--mid);border-radius:var(--r-md);overflow:hidden}#tu-kit .logo-wall .lw{background:#fff;aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:700;font-size:12px;color:var(--n500);text-align:center;padding:10px}#tu-kit .seo-ref{background:#0b1020;color:#cdd6f4;border-radius:var(--r-md);padding:20px 22px;font-family:var(--mono);font-size:12px;line-height:1.7;margin:0 0 4px}#tu-kit .seo-ref .k{color:#89b4fa}#tu-kit .seo-ref .v{color:#a6e3a1}#tu-kit .kit-note{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b;border-radius:var(--r-sm);padding:14px 18px;font-size:13px;color:#78350f;margin:16px 0}#tu-kit .kit-note b{color:#92400e}#tu-kit .trust-bar{background:var(--off);border-bottom:1px solid var(--mid)}#tu-kit .trust-bar__in{max-width:var(--max);margin:0 auto;padding:18px 32px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px 36px}#tu-kit .trust-bar__item{display:flex;align-items:center;gap:9px;font-family:var(--head);font-weight:600;font-size:13px;color:var(--n700)}#tu-kit .trust-bar__item .tk{width:20px;height:20px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}#tu-kit .trust-bar__sep{width:1px;height:18px;background:var(--mid)}#tu-kit .marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}#tu-kit .marquee__track{display:flex;gap:56px;width:max-content;animation:marquee 38s linear infinite}#tu-kit .marquee:hover .marquee__track{animation-play-state:paused}#tu-kit .marquee__item{font-family:var(--head);font-weight:800;font-size:20px;letter-spacing:.02em;color:var(--n400);white-space:nowrap;display:flex;align-items:center}@keyframes marquee{to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){#tu-kit .marquee__track{animation:none;flex-wrap:wrap;justify-content:center}}#tu-kit .quote-card{background:#fff;border:1px solid var(--mid);border-radius:var(--r-lg);padding:32px;display:flex;flex-direction:column;gap:18px;position:relative}#tu-kit .quote-card::before{content:"“";position:absolute;top:8px;right:24px;font-family:Georgia,serif;font-size:90px;line-height:1;color:var(--red-tint)}#tu-kit .quote-card.on-dark{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}#tu-kit .quote-card.on-dark::before{color:rgba(195,5,56,.25)}#tu-kit .quote-card__stars{color:var(--red);font-size:14px;letter-spacing:2px}#tu-kit .quote-card__text{font-family:var(--head);font-weight:600;font-size:18px;line-height:1.5;color:var(--dark)}#tu-kit .quote-card.on-dark .quote-card__text{color:#fff}#tu-kit .quote-card__author{display:flex;align-items:center;gap:12px;margin-top:auto}#tu-kit .quote-card__avatar{width:44px;height:44px;border-radius:50%;background:var(--off);border:2px solid var(--mid);display:flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:800;font-size:14px;color:var(--red);flex-shrink:0}#tu-kit .quote-card.on-dark .quote-card__avatar{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15)}#tu-kit .quote-card__name{font-family:var(--head);font-weight:700;font-size:14px;color:var(--dark)}#tu-kit .quote-card.on-dark .quote-card__name{color:#fff}#tu-kit .quote-card__role{font-size:12px;color:var(--n500)}#tu-kit .quote-card.on-dark .quote-card__role{color:rgba(255,255,255,.55)}#tu-kit .cmp{width:100%;border-collapse:collapse;font-size:14px;background:#fff;border:1px solid var(--mid);border-radius:var(--r-lg);overflow:hidden}#tu-kit .cmp th,#tu-kit .cmp td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--mid)}#tu-kit .cmp thead th{font-family:var(--head);font-weight:700;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--n600);background:var(--off)}#tu-kit .cmp thead th.us{color:#fff;background:var(--red)}#tu-kit .cmp tbody tr:last-child td{border-bottom:none}#tu-kit .cmp td.feat{font-family:var(--head);font-weight:600;color:var(--dark)}#tu-kit .cmp td.us{background:rgba(195,5,56,.04);font-weight:600}#tu-kit .cmp .yes{color:var(--green);font-weight:800}#tu-kit .cmp .no{color:var(--n400);font-weight:800}#tu-kit .cmp col.uscol{background:rgba(195,5,56,.04)}#tu-kit .timeline{position:relative;margin-left:8px}#tu-kit .timeline::before{content:"";position:absolute;left:15px;top:8px;bottom:8px;width:2px;background:linear-gradient(var(--red),var(--mid))}#tu-kit .tl-step{position:relative;padding:0 0 32px 52px}#tu-kit .tl-step:last-child{padding-bottom:0}#tu-kit .tl-step__dot{position:absolute;left:4px;top:0;width:24px;height:24px;border-radius:50%;background:var(--red);color:#fff;font-family:var(--head);font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 4px #fff}#tu-kit .tl-step h4{margin-bottom:4px}#tu-kit .tl-step p{font-size:14px;color:var(--n700);margin:0}#tu-kit .tl-step .tl-meta{font-family:var(--head);font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--red);margin-bottom:4px}#tu-kit .usp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}#tu-kit .usp{display:flex;flex-direction:column;gap:8px;padding:24px;background:#fff;border:1px solid var(--mid);border-radius:var(--r-md)}#tu-kit .usp__icon{width:42px;height:42px;border-radius:var(--r-md);background:var(--red-tint);color:var(--red);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800}#tu-kit .usp h4{margin:0;font-size:15px}#tu-kit .usp p{font-size:13px;color:var(--n700);margin:0}#tu-kit .guarantee{display:flex;align-items:center;gap:20px;background:var(--dark);color:#fff;border-radius:var(--r-lg);padding:28px 32px}#tu-kit .guarantee__seal{width:72px;height:72px;border-radius:50%;border:3px solid var(--red);display:flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:800;font-size:11px;text-align:center;line-height:1.1;color:#fff;flex-shrink:0}#tu-kit .guarantee h3{color:#fff;margin-bottom:4px}#tu-kit .guarantee p{color:rgba(255,255,255,.7);font-size:14px;margin:0}#tu-kit .incl-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 32px}#tu-kit .incl-grid li{display:flex;gap:12px;font-size:14px;color:var(--n800);align-items:flex-start;list-style:none;padding:8px 0;border-bottom:1px solid var(--mid)}#tu-kit .incl-grid li::before{content:"✓";width:20px;height:20px;border-radius:50%;background:var(--green);color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}#tu-kit .tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}#tu-kit .tier{background:#fff;border:1px solid var(--mid);border-radius:var(--r-lg);padding:32px 28px;display:flex;flex-direction:column;gap:16px;position:relative}#tu-kit .tier.featured{border:2px solid var(--red);box-shadow:var(--sh-md)}#tu-kit .tier__ribbon{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--red);color:#fff;font-family:var(--head);font-weight:800;font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:5px 14px;border-radius:var(--r-pill)}#tu-kit .tier__name{font-family:var(--head);font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--red)}#tu-kit .tier__price{font-family:var(--head);font-weight:800;font-size:34px;color:var(--dark);line-height:1}#tu-kit .tier__price .cur{font-size:15px;color:var(--n500)}#tu-kit .tier__sub{font-size:13px;color:var(--n600)}#tu-kit .tier ul{list-style:none;display:flex;flex-direction:column;gap:9px}#tu-kit .tier ul li{display:flex;gap:9px;font-size:13px;color:var(--n800)}#tu-kit .tier ul li::before{content:"✓";color:var(--green);font-weight:800;flex-shrink:0}#tu-kit .bigstat{display:flex;flex-direction:column;gap:6px}#tu-kit .bigstat b{font-family:var(--head);font-weight:800;font-size:clamp(48px,6vw,76px);line-height:.95;letter-spacing:-.03em;color:var(--red)}#tu-kit .bigstat span{font-size:14px;color:var(--n700);max-width:24ch}#tu-kit .o-section--dark .bigstat span{color:rgba(255,255,255,.7)}#tu-kit .tabs{display:flex;gap:4px;border-bottom:1px solid var(--mid);margin-bottom:28px;flex-wrap:wrap}#tu-kit .tab{font-family:var(--head);font-weight:600;font-size:14px;padding:12px 18px;cursor:pointer;color:var(--n600);border-bottom:3px solid transparent;margin-bottom:-1px}#tu-kit .tab.active{color:var(--red);border-bottom-color:var(--red)}#tu-kit .tab-panel{display:none}#tu-kit .tab-panel.active{display:block}#tu-kit .sec-head{max-width:680px;margin:0 auto 48px;text-align:center}#tu-kit .sec-head p{color:var(--n600);font-size:17px;margin:12px auto 0}@media(max-width:1024px){#tu-kit .o-nav__links,#tu-kit .o-nav__lang{display:none}#tu-kit .o-nav__burger{display:flex}#tu-kit .o-stats{grid-template-columns:repeat(4,1fr)}#tu-kit .o-stat:nth-child(4n){border-right:none}#tu-kit .grid-4{grid-template-columns:repeat(2,1fr)}#tu-kit .usp-grid{grid-template-columns:repeat(2,1fr)}#tu-kit .tiers{grid-template-columns:1fr}#tu-kit .norm-grid{grid-template-columns:repeat(4,1fr)}#tu-kit .mega__inner{grid-template-columns:1fr 1fr}#tu-kit .shop-layout{grid-template-columns:1fr}#tu-kit .filter-panel{position:static}}@media(max-width:768px){#tu-kit .o-nav__links,#tu-kit .o-nav__lang{display:none}#tu-kit .o-nav__burger{display:flex}#tu-kit .wrap,#tu-kit .wrap-narrow{padding:0 20px}#tu-kit .o-section{padding:64px 0}#tu-kit .grid-2,#tu-kit .grid-3,#tu-kit .grid-4,#tu-kit .split,#tu-kit .split-7-5,#tu-kit .steps.c4,#tu-kit .steps.c5,#tu-kit .blog-featured{grid-template-columns:1fr;gap:24px}#tu-kit .o-stats{grid-template-columns:repeat(2,1fr)}#tu-kit .o-stat:nth-child(odd){border-right:1px solid var(--mid)}#tu-kit .o-stat:nth-child(even){border-right:none}#tu-kit .norm-grid{grid-template-columns:repeat(2,1fr)}#tu-kit .field-row{grid-template-columns:1fr}#tu-kit .o-footer__grid{grid-template-columns:1fr 1fr}#tu-kit .cookie-bar{grid-template-columns:1fr}#tu-kit .price-box,#tu-kit .toc,#tu-kit .filter-panel{position:static}#tu-kit .logo-wall{grid-template-columns:repeat(3,1fr)}#tu-kit .usp-grid,#tu-kit .incl-grid{grid-template-columns:1fr}#tu-kit .guarantee{flex-direction:column;text-align:center}#tu-kit .cmp{font-size:12.5px}#tu-kit .cmp th,#tu-kit .cmp td{padding:12px 10px}}
/* === TU Kit — UX/a11y polish (additif, non destructif) === */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
html{scroll-behavior:smooth}
a,button,summary,.o-btn,[role=button]{-webkit-tap-highlight-color:rgba(195,5,56,.12)}
#tu-kit img{max-width:100%}
#tu-kit .o-btn{cursor:pointer}

/* === UI/UX Pro Max polish (additif, sans impact layout) === */
#tu-kit .o-btn:active,#tu-kit .o-card__lk:active,#tu-kit .link-arrow:active{opacity:.85}
#tu-kit .o-stat__num,#tu-kit .o-card__num,#tu-kit .tu-card__amt,#tu-kit .kpi b,#tu-kit .o-stat b{font-variant-numeric:tabular-nums;font-feature-settings:'tnum'}
#tu-kit button:disabled,#tu-kit .o-btn:disabled,#tu-kit input:disabled,#tu-kit select:disabled{opacity:.5;cursor:not-allowed}
#tu-kit ::selection{background:rgba(195,5,56,.18);color:#1D1D1F}

/* ████████████████████████████████████████████████████████████████
   TU KIT — PREMIUM DESIGN BOOST LAYER  (append-only, 2026-06-21)
   6 design dimensions, merge-reconciled. Revert = delete from this
   banner to EOF + restore previous ?unique in view 20360.
   ████████████████████████████████████████████████████████████████ */


/* ========== TYPOGRAPHY ========== */
/* ============================================================
   TYPOGRAPHY & EDITORIAL RHYTHM — append-only override layer
   Scope: #tu-kit. Enhances type only; no layout restructuring.
   ============================================================ */

::selection{background:var(--red-tint);color:var(--red-dark)}

/* --- Global type rendering: crisp kerning + ligatures --- */
#tu-kit{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-feature-settings:"kern" 1,"liga" 1,"calt" 1;
}

/* --- Display headings: tighter optical tracking, balanced wrap --- */
#tu-kit h1,#tu-kit h2,#tu-kit h3,#tu-kit h4,#tu-kit h5{
  font-family:var(--head);
  color:var(--dark);
  text-wrap:balance;
  font-feature-settings:"kern" 1,"liga" 1,"ss01" 1;
}
#tu-kit h1{
  font-weight:800;
  line-height:1.02;
  letter-spacing:-.032em;
  font-feature-settings:"kern" 1,"liga" 1;
}
#tu-kit h2{
  font-weight:800;
  line-height:1.06;
  letter-spacing:-.024em;
}
#tu-kit h3{
  font-weight:700;
  font-size:22px;
  line-height:1.22;
  letter-spacing:-.012em;
  color:var(--dark);
}
#tu-kit h4{
  font-weight:700;
  font-size:17px;
  line-height:1.3;
  letter-spacing:-.006em;
}
#tu-kit h5{
  font-weight:700;
  font-size:13px;
  line-height:1.4;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--n700);
}

/* --- Body copy: better measure, contrast, pretty wrapping --- */
#tu-kit p{
  line-height:1.7;
  color:var(--n700);
  text-wrap:pretty;
  font-feature-settings:"kern" 1,"liga" 1;
}
#tu-kit li{
  line-height:1.62;
  color:var(--n700);
  text-wrap:pretty;
}

/* --- Eyebrow: refined carmin tick + balanced spacing --- */
#tu-kit .eyebrow{
  font-family:var(--head);
  font-weight:700;
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--red);
  margin-bottom:18px;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
#tu-kit .eyebrow::before{
  content:"";
  width:22px;
  height:2px;
  background:var(--red);
  border-radius:var(--r-pill);
  flex:0 0 auto;
}

/* --- Lead: richer size/leading, deeper color, refined measure --- */
#tu-kit .lead{
  font-size:20px;
  line-height:1.62;
  color:var(--n700);
  max-width:62ch;
  letter-spacing:-.004em;
  text-wrap:pretty;
  font-feature-settings:"kern" 1,"liga" 1;
}

/* --- span-red: subtle weight + crafted carmin underline --- */
#tu-kit .span-red{
  color:var(--red);
  font-weight:inherit;
  background-image:linear-gradient(var(--red-tint),var(--red-tint));
  background-repeat:no-repeat;
  background-position:0 92%;
  background-size:100% .12em;
  padding-bottom:.02em;
}

/* --- strong: weight bump without color shift --- */
#tu-kit strong{
  font-weight:700;
  color:var(--dark);
  letter-spacing:-.002em;
}

/* --- blockquote: editorial pull-quote --- */
#tu-kit blockquote{
  font-family:var(--head);
  font-weight:600;
  font-size:clamp(21px,2.2vw,28px);
  line-height:1.36;
  letter-spacing:-.014em;
  color:var(--dark);
  text-wrap:balance;
  font-feature-settings:"kern" 1,"liga" 1;
}

/* --- Tabular figures for stats/numeric UI --- */
#tu-kit .o-stat__num,
#tu-kit .cmp,
#tu-kit .diff-item{
  font-feature-settings:"tnum" 1,"lnum" 1,"kern" 1;
  font-variant-numeric:tabular-nums lining-nums;
}
#tu-kit .o-stat__num{letter-spacing:-.02em}

/* --- Numbered diff index (01/02/03): refined display figure --- */
#tu-kit .diff-item{font-family:var(--head)}

/* --- Dark section: lift body contrast on dark bg --- */
#tu-kit .o-section--dark p,
#tu-kit .o-section--dark .lead,
#tu-kit .o-section--dark li{color:rgba(255,255,255,.82)}
#tu-kit .o-section--dark h1,
#tu-kit .o-section--dark h2,
#tu-kit .o-section--dark h3,
#tu-kit .o-section--dark h4{color:#fff}

@media (prefers-reduced-motion:reduce){
  #tu-kit *{scroll-behavior:auto}
}


/* ========== BUTTONS & LINKS ========== */
/* ============ BUTTONS, CTAs & LINKS — premium override layer ============ */

/* Base carmin button: subtle vertical sheen + refined depth, crisp lift on hover */
#tu-kit .o-btn{
  position:relative;
  background:linear-gradient(180deg,#D11142 0%,var(--red) 46%,var(--red-dark) 100%);
  box-shadow:0 1px 2px rgba(138,4,38,.28),0 2px 6px rgba(138,4,38,.18),inset 0 1px 0 rgba(255,255,255,.16);
  border-radius:var(--r-sm);
  font-feature-settings:"kern" 1,"liga" 1;
  transition:background .2s var(--ease),box-shadow .25s var(--ease),transform .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);
  will-change:transform;
}
#tu-kit .o-btn:hover{
  background:linear-gradient(180deg,#DA1747 0%,#C50739 46%,var(--red-dark) 100%);
  box-shadow:0 4px 10px rgba(138,4,38,.30),0 10px 24px rgba(138,4,38,.22),inset 0 1px 0 rgba(255,255,255,.22);
  transform:translateY(-2px);
}
#tu-kit .o-btn:active{
  transform:translateY(0);
  box-shadow:0 1px 2px rgba(138,4,38,.32),inset 0 1px 2px rgba(80,2,22,.30);
  transition-duration:.06s;
}
#tu-kit .o-btn:focus-visible{
  outline:none;
  box-shadow:0 0 0 2px #fff,0 0 0 4.5px var(--red),0 6px 16px rgba(138,4,38,.22);
}

/* Ghost: carmin outline → fills carmin on hover with the same lift */
#tu-kit .o-btn.ghost{
  background:transparent;color:var(--red);
  border:1.5px solid var(--red);
  box-shadow:none;
}
#tu-kit .o-btn.ghost:hover{
  background:var(--red);color:#fff;border-color:var(--red);
  box-shadow:0 4px 10px rgba(138,4,38,.26),0 10px 22px rgba(138,4,38,.16);
  transform:translateY(-2px);
}
#tu-kit .o-btn.ghost:active{background:var(--red-dark);border-color:var(--red-dark);}
#tu-kit .o-btn.ghost:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4.5px var(--red);}

/* Dark: near-black with quiet sheen, hover warms toward carmin edge */
#tu-kit .o-btn.dark{
  background:linear-gradient(180deg,#2A2A2C 0%,var(--dark) 100%);
  box-shadow:0 1px 2px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.07);
}
#tu-kit .o-btn.dark:hover{
  background:linear-gradient(180deg,#333335 0%,#111113 100%);
  box-shadow:0 5px 14px rgba(0,0,0,.34),0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.10);
}
#tu-kit .o-btn.dark:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4.5px var(--dark);}

/* Sizes: keep tracking, refine optical padding */
#tu-kit .o-btn.lg{font-size:13px;letter-spacing:.09em;padding:17px 34px;}
#tu-kit .o-btn.sm{font-size:11px;letter-spacing:.07em;padding:9px 16px;}

/* Disabled: muted, flat, no interactivity */
#tu-kit .o-btn:disabled,#tu-kit .o-btn[disabled],#tu-kit .o-btn.is-disabled{
  background:var(--mid);color:var(--n500);
  box-shadow:none;border-color:var(--mid);
  transform:none;cursor:not-allowed;opacity:1;
}

/* .link-arrow: carmin underline reveal + arrow nudge on hover */
#tu-kit .link-arrow{
  position:relative;color:var(--red);font-weight:700;letter-spacing:.01em;
  text-decoration:none;
  background-image:linear-gradient(var(--red),var(--red));
  background-repeat:no-repeat;background-position:0 100%;background-size:0 1.5px;
  transition:background-size .3s var(--ease),color .2s var(--ease);
}
#tu-kit .link-arrow:hover{background-size:100% 1.5px;color:var(--red-dark);}
#tu-kit .link-arrow::after{content:"\2192";display:inline-block;margin-left:6px;transition:transform .25s var(--ease);}
#tu-kit .link-arrow:hover::after{transform:translateX(5px);}
#tu-kit .link-arrow:focus-visible{outline:none;border-radius:2px;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--red);}

/* In-content text links: elegant underline-reveal (background-size trick) */
#tu-kit .o-prose a,#tu-kit .lead a,#tu-kit p a:not(.o-btn):not(.link-arrow){
  color:var(--red);text-decoration:none;font-weight:600;
  background-image:linear-gradient(var(--red),var(--red));
  background-repeat:no-repeat;background-position:0 100%;background-size:100% 1px;
  padding-bottom:1px;
  transition:background-size .3s var(--ease),color .2s var(--ease);
}
#tu-kit .o-prose a:hover,#tu-kit .lead a:hover,#tu-kit p a:not(.o-btn):not(.link-arrow):hover{
  color:var(--red-dark);background-size:0 1px;background-position:100% 100%;
}
#tu-kit .o-prose a:focus-visible,#tu-kit p a:not(.o-btn):not(.link-arrow):focus-visible{
  outline:none;border-radius:2px;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--red);
}

::selection{background:var(--red-tint);color:var(--red-dark);}

@media (prefers-reduced-motion:reduce){
  #tu-kit .o-btn,#tu-kit .o-btn:hover,#tu-kit .o-btn:active{transform:none;}
  #tu-kit .link-arrow,#tu-kit .link-arrow::after,#tu-kit .link-arrow:hover::after,
  #tu-kit .o-prose a,#tu-kit p a:not(.o-btn):not(.link-arrow){transition:color .15s linear;}
  #tu-kit .link-arrow:hover::after{transform:none;}
}


/* ========== CARDS & DEPTH ========== */
/* ============================================================
   DIMENSION: CARDS, SURFACES & DEPTH  (append-only override)
   Layered soft shadows, refined radii, smoother lift, carmin
   accents — NIRAS / top-consulting editorial polish.
   ============================================================ */

/* --- Core card: deeper radius, multi-layer ambient shadow, crisp top accent --- */
#tu-kit .o-card,
#tu-kit .div-card,
#tu-kit .prog-card,
#tu-kit .accred-card{
  border:1px solid var(--mid);
  border-radius:14px;
  padding:32px 28px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.6),rgba(255,255,255,0) 64px),
    #fff;
  box-shadow:
    0 1px 1px rgba(29,29,31,.04),
    0 4px 10px -4px rgba(29,29,31,.06),
    0 18px 40px -22px rgba(29,29,31,.14);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s var(--ease);
}
/* refine the carmin top-accent: thinner, inset, gradient hairline */
#tu-kit .o-card{
  border-top:1px solid var(--mid);
  position:relative;
}
#tu-kit .o-card::before{
  content:"";position:absolute;top:-1px;left:-1px;right:-1px;height:4px;
  border-radius:14px 14px 0 0;
  background:linear-gradient(90deg,var(--red),var(--red-dark));
  opacity:.92;transition:opacity .4s var(--ease);
}

/* --- Smoother hover: lift + shadow bloom + carmin border tint --- */
#tu-kit .o-card:hover,
#tu-kit .div-card:hover,
#tu-kit .prog-card:hover,
#tu-kit .accred-card:hover{
  transform:translateY(-6px);
  border-color:rgba(195,5,56,.28);
  box-shadow:
    0 2px 2px rgba(29,29,31,.05),
    0 10px 22px -8px rgba(29,29,31,.10),
    0 34px 64px -26px rgba(138,4,38,.22);
}
#tu-kit .o-card:hover::before{opacity:1}

/* --- Callout: refined premium panel, carmin-tinted with left rule --- */
#tu-kit .callout{
  border:1px solid rgba(195,5,56,.16);
  border-left:3px solid var(--red);
  border-radius:12px;
  padding:28px 30px;
  background:linear-gradient(180deg,var(--red-tint),rgba(251,230,236,.35));
  box-shadow:0 1px 2px rgba(29,29,31,.04),0 14px 30px -20px rgba(138,4,38,.18);
}

/* --- Quote card: editorial, oversized mark, soft depth --- */
#tu-kit .quote-card{
  position:relative;
  border:1px solid var(--mid);
  border-radius:14px;
  padding:36px 34px 30px;
  background:linear-gradient(180deg,#fff,var(--off));
  box-shadow:0 1px 2px rgba(29,29,31,.04),0 20px 46px -26px rgba(29,29,31,.16);
  font-feature-settings:"liga" 1,"kern" 1;
}
#tu-kit .quote-card::before{
  content:"\201C";position:absolute;top:6px;left:22px;
  font-family:var(--head);font-weight:800;font-size:88px;line-height:1;
  color:var(--red);opacity:.14;pointer-events:none;
}

/* --- Comparison table .cmp: rounded, zebra, carmin "us" column, depth --- */
#tu-kit .cmp{
  border-collapse:separate;border-spacing:0;width:100%;
  border:1px solid var(--mid);border-radius:14px;overflow:hidden;
  box-shadow:0 1px 2px rgba(29,29,31,.04),0 22px 50px -28px rgba(29,29,31,.18);
  font-feature-settings:"tnum" 1,"kern" 1;
}
#tu-kit .cmp th{
  background:var(--dark);color:#fff;font-family:var(--head);
  font-weight:700;letter-spacing:.01em;padding:16px 20px;text-align:left;
}
#tu-kit .cmp td{padding:15px 20px;border-top:1px solid var(--mid);color:var(--n700)}
#tu-kit .cmp tbody tr:nth-child(even) td{background:rgba(245,245,247,.6)}
/* highlight the TargetUp / "us" column (last col) */
#tu-kit .cmp th.us{background:var(--red-dark)}
#tu-kit .cmp td.us{
  background:var(--red-tint);color:var(--dark);font-weight:600;
  box-shadow:inset 1px 0 0 rgba(195,5,56,.18),inset -1px 0 0 rgba(195,5,56,.18);
}
#tu-kit .cmp tbody tr:nth-child(even) td.us{background:rgba(251,230,236,.85)}
#tu-kit .cmp tbody tr:last-child td.us{box-shadow:inset 1px 0 0 rgba(195,5,56,.18),inset -1px 0 0 rgba(195,5,56,.18),inset 0 -1px 0 rgba(195,5,56,.18)}

/* --- Accred card: subtle inner ring for a "certified" feel --- */
#tu-kit .accred-card{
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.6),
    0 1px 1px rgba(29,29,31,.04),
    0 18px 40px -24px rgba(29,29,31,.14);
}

/* --- Reduced-motion: kill added transforms/transitions --- */
@media (prefers-reduced-motion:reduce){
  #tu-kit .o-card,#tu-kit .div-card,#tu-kit .prog-card,#tu-kit .accred-card{
    transition:box-shadow .2s ease,border-color .2s ease;
  }
  #tu-kit .o-card:hover,#tu-kit .div-card:hover,
  #tu-kit .prog-card:hover,#tu-kit .accred-card:hover{transform:none}
}


/* ========== SECTIONS & DARK & CTA & STATS ========== */
/* ============================================================
   SECTIONS · SPACING · DIVIDERS · DARK · CTA-BAND · TRUST · STATS
   Append-only override layer — editorial agency polish
   ============================================================ */

/* --- Vertical rhythm: generous but balanced ----------------- */
#tu-kit .o-section{padding:clamp(72px,9vw,128px) 0;position:relative}
#tu-kit .o-section--off{background:var(--off)}
#tu-kit .o-section + .o-section{margin-top:0}

/* Tasteful hairline divider at top of stacked sections.
   Soft carmin-to-transparent fade, centered. */
#tu-kit .o-section + .o-section::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:min(100%,var(--max));height:1px;
  background:linear-gradient(90deg,transparent 0%,var(--mid) 18%,var(--mid) 82%,transparent 100%);
  opacity:.7}
#tu-kit .o-section--dark + .o-section::before,
#tu-kit .o-section + .o-section--dark::before{display:none}

/* --- Section heads: refined eyebrow + measure --------------- */
#tu-kit .sec-head{margin-bottom:clamp(40px,4.5vw,64px)}
#tu-kit .sec-head .lead{margin-top:18px}
#tu-kit .eyebrow{position:relative;display:inline-block;padding-left:30px}
#tu-kit .eyebrow::before{
  content:"";position:absolute;left:0;top:50%;width:22px;height:2px;
  transform:translateY(-50%);
  background:linear-gradient(90deg,var(--red),var(--red-dark));border-radius:2px}

/* --- DARK SECTIONS: real depth (radial glow + linear base) -- */
#tu-kit .o-section--dark{
  background:
    radial-gradient(120% 80% at 78% -10%,rgba(195,5,56,.16) 0%,transparent 52%),
    radial-gradient(90% 90% at 6% 108%,rgba(255,255,255,.045) 0%,transparent 48%),
    linear-gradient(168deg,#26262A 0%,var(--dark) 46%,#161618 100%);
  color:var(--off);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
#tu-kit .o-section--dark .eyebrow{color:#FF6B8E}
#tu-kit .o-section--dark .eyebrow::before{
  background:linear-gradient(90deg,#FF6B8E,var(--red))}
#tu-kit .o-section--dark h2,
#tu-kit .o-section--dark h3,
#tu-kit .o-section--dark h4{color:#fff;text-shadow:0 1px 24px rgba(0,0,0,.35)}
#tu-kit .o-section--dark .lead,
#tu-kit .o-section--dark p{color:rgba(245,245,247,.74)}
/* faint top hairline to seat the dark band */
#tu-kit .o-section--dark::after{
  content:"";position:absolute;inset:0 0 auto 0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent)}

/* --- CTA BAND: striking premium band ------------------------ */
#tu-kit .cta-band{
  position:relative;overflow:hidden;border-radius:var(--r-lg);
  background:
    radial-gradient(130% 120% at 88% -20%,rgba(255,255,255,.12) 0%,transparent 46%),
    linear-gradient(135deg,var(--red) 0%,var(--red-dark) 60%,#5E021A 100%);
  box-shadow:0 24px 60px -22px rgba(138,4,38,.6),inset 0 1px 0 rgba(255,255,255,.18);
  color:#fff}
#tu-kit .cta-band::before{
  content:"";position:absolute;right:-8%;top:-60%;width:46%;height:220%;
  background:radial-gradient(closest-side,rgba(255,255,255,.10),transparent 70%);
  pointer-events:none}
#tu-kit .cta-band h2,#tu-kit .cta-band h3{color:#fff;text-shadow:0 1px 18px rgba(0,0,0,.22)}
#tu-kit .cta-band p,#tu-kit .cta-band .lead{color:rgba(255,255,255,.86)}
#tu-kit .cta-band .o-btn{
  background:#fff;color:var(--red-dark);
  box-shadow:0 8px 20px -8px rgba(0,0,0,.35);transition:transform .18s var(--ease),box-shadow .18s var(--ease)}
#tu-kit .cta-band .o-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px -10px rgba(0,0,0,.45)}
#tu-kit .cta-band .o-btn.ghost{
  background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55)}
#tu-kit .cta-band .o-btn.ghost:hover{background:rgba(255,255,255,.12)}

/* --- TRUST BAR: refined separators -------------------------- */
#tu-kit .trust-bar{gap:clamp(28px,4vw,56px)}
#tu-kit .trust-bar > *{position:relative}
#tu-kit .trust-bar > * + *::before{
  content:"";position:absolute;left:calc(-1 * clamp(14px,2vw,28px));top:50%;
  transform:translateY(-50%);width:1px;height:18px;
  background:linear-gradient(180deg,transparent,var(--mid),transparent)}
#tu-kit .o-section--dark .trust-bar > * + *::before{
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.22),transparent)}

/* --- STATS: gradient numerals + tabular figures ------------- */
#tu-kit .o-stats{gap:clamp(20px,3vw,40px)}
#tu-kit .o-stat__num{
  font-family:var(--head);font-weight:800;
  font-feature-settings:"tnum" 1,"lnum" 1;letter-spacing:-.03em;line-height:1;
  background:linear-gradient(160deg,var(--red) 0%,var(--red-dark) 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:var(--red-dark)}
#tu-kit .o-section--dark .o-stat__num{
  background:linear-gradient(160deg,#FFFFFF 0%,#FFC2CF 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
#tu-kit .o-stat__label{
  font-size:13px;font-weight:500;letter-spacing:.01em;color:var(--n600);margin-top:8px}
#tu-kit .o-section--dark .o-stat__label{color:rgba(245,245,247,.62)}

/* --- Generic hr / divider polish ---------------------------- */
#tu-kit hr{
  border:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--mid),transparent)}
#tu-kit .o-section--dark hr{
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent)}

@media (prefers-reduced-motion: reduce){
  #tu-kit .cta-band .o-btn{transition:none}
  #tu-kit .cta-band .o-btn:hover{transform:none}
}


/* ========== MICRO-INTERACTIONS & FINISHING ========== */
/* ============================================================
   MICRO-INTERACTIONS, MOTION POLISH & FINISHING
   Global premium finishing layer — TargetUp Group
   ============================================================ */

/* --- Global selection: carmin tint, near-black ink --- */
::selection{background:var(--red-tint);color:var(--red-dark);text-shadow:none}
::-moz-selection{background:var(--red-tint);color:var(--red-dark)}

/* --- Smooth anchored scrolling, offset for sticky header --- */
html{scroll-behavior:smooth}
#tu-kit [id]{scroll-margin-top:96px}

/* --- Refined thin custom scrollbar (Firefox + WebKit) --- */
html{scrollbar-width:thin;scrollbar-color:#C9CACE transparent}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#C9CACE;border:3px solid transparent;background-clip:padding-box;border-radius:var(--r-pill)}
::-webkit-scrollbar-thumb:hover{background:var(--n500);border:3px solid transparent;background-clip:padding-box}

/* --- Subtle sheen sweep used as a tasteful accent on buttons --- */
@keyframes tu-sheen{0%{transform:translateX(-130%) skewX(-18deg)}100%{transform:translateX(230%) skewX(-18deg)}}

/* --- Sitewide refined focus-visible ring (accessible, on-brand) --- */
#tu-kit a:focus-visible,
#tu-kit button:focus-visible,
#tu-kit .o-btn:focus-visible,
#tu-kit input:focus-visible,
#tu-kit textarea:focus-visible,
#tu-kit select:focus-visible,
#tu-kit [tabindex]:focus-visible{
  outline:2px solid var(--red);outline-offset:3px;
  border-radius:var(--r-sm);box-shadow:0 0 0 5px var(--red-tint)}
#tu-kit :focus:not(:focus-visible){outline:none}

/* --- Tabular figures + ligatures on display headings / stats --- */
#tu-kit h1,#tu-kit h2,#tu-kit h3{font-feature-settings:"kern" 1,"liga" 1,"calt" 1;text-rendering:optimizeLegibility}
#tu-kit .o-stat__num{font-feature-settings:"tnum" 1,"kern" 1;font-variant-numeric:tabular-nums}

/* (button base/sheen layer removed during merge — buttons-links layer owns .o-btn to keep the focus ring + richer hover) */

/* --- Link-arrow: refined nudge on hover --- */
#tu-kit .link-arrow{transition:color .18s var(--ease),gap .18s var(--ease)}
#tu-kit .link-arrow svg,#tu-kit .link-arrow i{transition:transform .2s var(--ease)}
#tu-kit .link-arrow:hover svg,#tu-kit .link-arrow:hover i{transform:translateX(4px)}

/* --- Tag / cert-pill hover refinement --- */
#tu-kit .tag,#tu-kit .cert-pill{transition:background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease),box-shadow .18s var(--ease)}
#tu-kit .tag:hover,#tu-kit .cert-pill:hover{border-color:var(--red);color:var(--red-dark);box-shadow:0 2px 8px -4px var(--red-dark)}

/* --- Card image: subtle, contained zoom polish --- */
#tu-kit .o-card,#tu-kit .div-card,#tu-kit .div-card--photo,#tu-kit .prog-card,#tu-kit .quote-card{
  transition:box-shadow .25s var(--ease),transform .25s var(--ease),border-color .25s var(--ease)}
#tu-kit .div-card--photo img,#tu-kit .o-card img,#tu-kit .prog-card img{
  transition:transform .5s var(--ease);will-change:transform;backface-visibility:hidden}
#tu-kit .div-card--photo:hover img,#tu-kit .o-card:hover img,#tu-kit .prog-card:hover img{transform:scale(1.045)}

/* --- Numbered diff-item: accent settle on hover --- */
#tu-kit .diff-item{transition:transform .2s var(--ease)}
#tu-kit .diff-item:hover{transform:translateX(2px)}

/* --- Honour reduced-motion: kill every transform/animation we add --- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  #tu-kit .o-btn,#tu-kit .o-btn:hover,#tu-kit .o-btn:active,
  #tu-kit .link-arrow:hover svg,#tu-kit .link-arrow:hover i,
  #tu-kit .div-card--photo:hover img,#tu-kit .o-card:hover img,#tu-kit .prog-card:hover img,
  #tu-kit .diff-item:hover{transform:none}
  #tu-kit .o-btn::after{display:none}
  #tu-kit .o-btn:hover::after{animation:none}
}


/* ========== MOBILE & RESPONSIVE ========== */
/* ============================================================
   MOBILE & RESPONSIVE REFINEMENT LAYER (append-only override)
   Owns: @media (max-width:768px) and (max-width:480px) under #tu-kit
   Goal: NIRAS-grade polish preserved on small screens, zero
   horizontal overflow, 44px tap targets, graceful padding.
   ============================================================ */

@media (max-width:768px){
  /* Guard against any horizontal overflow on small screens */
  #tu-kit{overflow-x:hidden}
  #tu-kit img,#tu-kit svg,#tu-kit video{max-width:100%}

  /* Wrap padding tightens but keeps an editorial margin */
  #tu-kit .wrap{padding-left:22px;padding-right:22px}

  /* Section rhythm: generous but not desktop-heavy */
  #tu-kit .o-section{padding:64px 0}
  #tu-kit .o-section--dark{padding:68px 0}

  /* Headings: re-balance clamp floors so display type sings, not shouts */
  #tu-kit h1{font-size:clamp(33px,8.4vw,46px);line-height:1.06;letter-spacing:-.02em}
  #tu-kit h2{font-size:clamp(26px,6.4vw,36px);line-height:1.1;letter-spacing:-.015em}
  #tu-kit h3{font-size:20px}
  #tu-kit .eyebrow{margin-bottom:13px}
  #tu-kit .lead{font-size:17px;line-height:1.62;max-width:none}

  /* Hero photo: keep type readable, tame oversized leads */
  #tu-kit .o-hero--photo h1,#tu-kit .page-header--photo h1{font-size:clamp(34px,8.8vw,48px)}
  #tu-kit .o-hero--photo .lead{font-size:17px}

  /* Cards: comfortable touch padding, softer accent on small surfaces */
  #tu-kit .o-card{padding:24px 20px;border-top-width:3px}
  #tu-kit .div-card{padding:24px 20px}
  #tu-kit .prog-card,#tu-kit .quote-card,#tu-kit .callout{padding:24px 20px}
  #tu-kit .div-card--photo .div-card__media{min-height:200px}

  /* Stat grid → clean 2-up, tabular figures aligned */
  #tu-kit .o-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}
  #tu-kit .o-stat__num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}

  /* Stacking grids: keep vertical breathing room when they collapse */
  #tu-kit .grid-3,#tu-kit .grid-4{gap:18px}

  /* Tap targets: WCAG-comfortable, generous full-width primaries */
  #tu-kit .o-btn{padding:14px 24px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  #tu-kit .o-btn.sm{min-height:40px;padding:12px 20px}
  #tu-kit .o-btn.lg{padding:16px 28px;min-height:50px}
  #tu-kit .o-btn.block{width:100%}
  #tu-kit .link-arrow{padding:6px 0;min-height:34px;display:inline-flex;align-items:center}

  /* CTA band: tighter but still a deliberate statement */
  #tu-kit .cta-band{padding:48px 24px}

  /* Timeline & comparison: avoid cramped numerals / overflow */
  #tu-kit .diff-item{padding:20px 18px}
  #tu-kit .tl-step{padding-left:30px}
  #tu-kit .cmp{font-size:14px}

  /* Trust bar & pills wrap gracefully */
  #tu-kit .trust-bar{gap:20px 28px}
  #tu-kit .cert-pill,#tu-kit .tag{font-size:11px}
}

@media (max-width:480px){
  #tu-kit .wrap{padding-left:18px;padding-right:18px}
  #tu-kit .o-section{padding:52px 0}

  #tu-kit h1{font-size:clamp(30px,9vw,38px);line-height:1.08}
  #tu-kit h2{font-size:clamp(24px,7.6vw,31px);line-height:1.12}
  #tu-kit .lead{font-size:16px;line-height:1.6}

  /* Single-column stats on the narrowest screens for legibility */
  #tu-kit .o-stats{grid-template-columns:1fr;gap:18px}
  #tu-kit .o-stat__num{font-size:clamp(34px,11vw,44px)}

  #tu-kit .o-card,#tu-kit .div-card,#tu-kit .prog-card,
  #tu-kit .quote-card,#tu-kit .callout{padding:22px 18px}
  #tu-kit .div-card--photo .div-card__media{min-height:178px}

  /* Make primary CTAs full-width on phones — premium, thumb-friendly */
  #tu-kit .o-btn{width:100%;padding:15px 22px;letter-spacing:.07em}
  #tu-kit .o-btn.sm{width:auto}
  #tu-kit .cta-band{padding:40px 20px}
  #tu-kit .cta-band .o-btn{width:100%}
}

/* Honor reduced-motion: nothing motion-based added here, but ensure
   any hover transforms inherited on touch don't linger */
@media (max-width:768px) and (prefers-reduced-motion:reduce){
  #tu-kit .o-card:hover,#tu-kit .div-card:hover,#tu-kit .o-btn:hover{transform:none}
}


/* ============================================================
   RECONCILIATION (merge guard) — keep cards readable on dark
   sections (avoid white card + white text), and a few safety nets.
   ============================================================ */
#tu-kit .o-section--dark .o-card,
#tu-kit .o-section--dark .div-card,
#tu-kit .o-section--dark .prog-card,
#tu-kit .o-section--dark .callout{
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.12);
  box-shadow:0 1px 1px rgba(0,0,0,.2),0 24px 50px -28px rgba(0,0,0,.55);
}
#tu-kit .o-section--dark .o-card h3,#tu-kit .o-section--dark .o-card h4,
#tu-kit .o-section--dark .div-card h3,#tu-kit .o-section--dark .div-card h4,
#tu-kit .o-section--dark .prog-card h3,#tu-kit .o-section--dark .prog-card h4{color:#fff}
#tu-kit .o-section--dark .o-card p,#tu-kit .o-section--dark .div-card p,
#tu-kit .o-section--dark .prog-card p,#tu-kit .o-section--dark .div-card li{color:rgba(255,255,255,.82)}
/* photo division cards already own their dark-glass look — don't let the white wash hit them */
#tu-kit .div-card--photo{background:rgba(255,255,255,.045)}
/* CTA band heading uses span-red? keep it white on the carmin band */
#tu-kit .cta-band .span-red{color:#fff;background-image:none}


/* ████████████████████████████████████████████████████████████████
   TU KIT — DESIGN BOOST v2  (append, 2026-06-21)
   Hub heroes scrim lightened (photos visible like the homepage) +
   refined sticky-header depth. html-prefix beats per-page inline.
   ████████████████████████████████████████████████████████████████ */

/* --- Hub / about / contact photo heroes: lighter editorial scrim --- */
html #tu-kit .page-header--photo .ph-scrim{
  background:
    linear-gradient(180deg,rgba(11,11,13,.5) 0%,rgba(11,11,13,0) 22%),
    linear-gradient(100deg,rgba(11,11,13,.82) 0%,rgba(11,11,13,.55) 36%,rgba(11,11,13,.22) 62%,rgba(11,11,13,.1) 82%,rgba(11,11,13,.4) 100%);
}
html #tu-kit .page-header--photo .ph-bg{filter:brightness(1.08) saturate(1.03)}
html #tu-kit .page-header--photo h1{text-shadow:0 2px 24px rgba(0,0,0,.35)}

/* --- Sticky header: refined premium depth + hairline --- */
#wrapwrap header#top,
#wrapwrap header.o_header_fixed,
#wrapwrap header.o_header_standard{
  box-shadow:0 1px 0 rgba(29,29,31,.06),0 10px 30px -18px rgba(29,29,31,.18);
}


/* ████████████████████████████████████████████████████████████████
   TU KIT — DESIGN BOOST v3  (append, 2026-06-21)
   Premium non-photo page-header (all secondary pages: réalisations,
   offres, dispositifs, PACT', guides…) + lead-form input polish.
   ████████████████████████████████████████████████████████████████ */

/* --- Secondary-page header: real depth (glow + gradient), not flat --- */
html #tu-kit .page-header:not(.page-header--photo){
  background:
    radial-gradient(120% 95% at 82% -22%,rgba(195,5,56,.22) 0%,transparent 55%),
    radial-gradient(85% 95% at 2% 122%,rgba(255,255,255,.045) 0%,transparent 50%),
    linear-gradient(165deg,#26262A 0%,var(--dark) 48%,#161618 100%);
  padding:clamp(80px,8vw,104px) 0 clamp(60px,6vw,76px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
#tu-kit .page-header:not(.page-header--photo)::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;z-index:3;
  background:linear-gradient(90deg,transparent,rgba(195,5,56,.55),transparent);
}
#tu-kit .page-header:not(.page-header--photo) .eyebrow{color:#FF6B8E}
#tu-kit .page-header:not(.page-header--photo) .eyebrow::before{
  background:linear-gradient(90deg,#FF6B8E,var(--red))}
#tu-kit .page-header:not(.page-header--photo) h1{text-shadow:0 2px 30px rgba(0,0,0,.42)}
#tu-kit .page-header:not(.page-header--photo) .dots-bg{opacity:.7}
#tu-kit .page-header:not(.page-header--photo) .cert-pill{
  color:rgba(255,255,255,.92);border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06)}

/* --- Lead form: premium inputs (rounded, carmin focus glow) --- */
#tu-kit .tu-leadform .form-control,
#tu-kit .tu-leadform .form-select{
  border-radius:8px;border:1px solid var(--n300);
  transition:border-color .18s var(--ease),box-shadow .18s var(--ease),background-color .18s var(--ease)}
#tu-kit .tu-leadform .form-control:focus,
#tu-kit .tu-leadform .form-select:focus{
  border-color:var(--red);box-shadow:0 0 0 3px var(--red-tint);outline:none}
#tu-kit .tu-leadform .form-control:hover,
#tu-kit .tu-leadform .form-select:hover{border-color:var(--n400)}


/* ████████████████████████████████████████████████████████████████
   TU KIT — DESIGN BOOST v4  (FIX, 2026-06-21)
   Correctif: le boost typo (#tu-kit h1{color:dark}) rendait les
   titres invisibles sur les .page-header sombres (pages secondaires).
   Force le texte clair sur TOUS les page-header (photo + non-photo).
   ████████████████████████████████████████████████████████████████ */
#tu-kit .page-header h1,
#tu-kit .page-header h2,
#tu-kit .page-header h3,
#tu-kit .page-header h4{color:#fff}
#tu-kit .page-header p,
#tu-kit .page-header .lead,
#tu-kit .page-header li{color:rgba(255,255,255,.86)}
#tu-kit .page-header .span-red{color:#FF6B8E;background-image:none}


/* ████████████████████████████████████████████████████████████████
   TU KIT — DESIGN BOOST v5  (FIX, 2026-06-22)
   Giant-logos bug on mobile: my v1 mobile rule 
   (1,0,1) was overriding the band cap .tu-logos__row img{height:42px}
   (0,1,1). Removed height:auto + added id-level band cap below.
   ████████████████████████████████████████████████████████████████ */
#tu-kit .tu-logos__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:26px 44px}
#tu-kit .tu-logos__row img{height:42px;width:auto;max-width:150px;object-fit:contain}
@media (max-width:768px){
  #tu-kit .tu-logos__row{gap:18px 26px}
  #tu-kit .tu-logos__row img{height:30px;max-width:104px}
}


/* ████████████████████████████████████████████████████████████████
   TU KIT — DESIGN BOOST v6  (FIX, 2026-06-22)
   Division badge logo collapsed inside its flex chip on mobile
   (generic #tu-kit img{max-width:100%} starved the auto-width
   flex item). Force natural width + no shrink.
   ████████████████████████████████████████████████████████████████ */
#tu-kit .div-card--photo .div-card__tag{max-width:calc(100% - 28px)}
#tu-kit .div-card--photo .div-card__tag img{height:22px;width:auto;max-width:none;flex:0 0 auto;display:block}


/* ████████████████████████████████████████████████████████████████
   TU KIT — DESIGN BOOST v7  (FIX, 2026-06-22)
   The mobile rule .div-card--photo img{min-height:200px} (meant for
   the card photo, which is actually a bg DIV) was inflating the badge
   logo. Root-fixed above; reinforce the badge sizing here.
   ████████████████████████████████████████████████████████████████ */
#tu-kit .div-card--photo .div-card__tag img{height:22px;max-height:22px;min-height:0;width:auto;max-width:none;flex:0 0 auto;display:block}
#tu-kit .div-card--photo .div-card__tag{width:auto;max-width:calc(100% - 28px)}
