/* Homepage styles adapted from the supplied welcome template. Scoped to protect other pages. */
.tz-welcome{
--tz-orange:#F97316;--tz-orange-hover:#EA580C;--tz-orange-soft:#FFF4EB;
--home-bg:#F7F8FA;--home-card:#FFFFFF;--home-orange:var(--tz-orange);--home-orange-hover:var(--tz-orange-hover);--home-orange-label:#C2410C;
--home-navy:#0F2747;--home-text:#111827;--home-muted:#4B5563;--home-border:#E5E7EB;--home-soft-orange:var(--tz-orange-soft);
--home-orange-40:rgb(249 115 22 / 40%);
--home-font:"Manrope", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
background:var(--home-card);color:var(--home-text);font-family:var(--home-font);font-size:16px;line-height:1.5;overflow-wrap:break-word}
.tz-welcome>section:not(.hero):not(.cta-section){background:transparent}
.tz-welcome>section:not(.hero) h2{color:var(--home-navy)}
.tz-welcome .welcome-process-grid .welcome-hover-card h4,
.tz-welcome .payment-section .welcome-hover-card h3,
.tz-welcome .welcome-growth-card h3,
.tz-welcome .welcome-advantage-card h4,
.tz-welcome .welcome-resource h3{color:var(--home-navy)}
.tz-welcome .welcome-closing-copy h3{color:var(--home-navy)}
.tz-welcome .home-learning-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:36px;text-align:left}
.tz-welcome .home-learning-layout>img{width:100%;max-height:260px;object-fit:cover;border-radius:16px}
.tz-welcome .home-learning-layout .home-learning-links{justify-content:flex-start}
.tz-welcome .welcome-advantage-card h4,
.tz-welcome .welcome-resource h3{color:var(--home-orange)}
.tz-welcome .services-section>.bg-orange-50,.tz-welcome .payment-section .rounded-xl,.tz-welcome .welcome-faq{background:var(--home-card)}
.tz-welcome :where(h1,h2,h3,h4,p,ul){margin:0}
.tz-welcome :where(h1,h2,h3,h4){color:inherit;letter-spacing:-.025em}
.tz-welcome :where(ul){padding:0;list-style:none}
.tz-welcome :where(a){color:inherit;text-decoration:none}
.tz-welcome :where(img){display:block;max-width:100%;object-fit:contain}
.tz-welcome :where(.grid,.flex)>*{min-width:0}
.tz-welcome .flex{display:flex}
.tz-welcome .grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.tz-welcome .flex-col{flex-direction:column}
.tz-welcome .flex-wrap{flex-wrap:wrap}
.tz-welcome .items-center{align-items:center}
.tz-welcome .justify-center{justify-content:center}
.tz-welcome .justify-between{justify-content:space-between}
.tz-welcome .shrink-0{flex-shrink:0}
.tz-welcome .relative{position:relative}
.tz-welcome .z-10{z-index:10}
.tz-welcome .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tz-welcome .inline-block{display:inline-block}
.tz-welcome .max-w-7xl{max-width:1280px}
.tz-welcome .max-w-6xl{max-width:1152px}
.tz-welcome .max-w-5xl{max-width:1024px}
.tz-welcome .max-w-4xl{max-width:896px}
.tz-welcome .max-w-xl{max-width:576px}
.tz-welcome .max-w-lg{max-width:512px}
.tz-welcome .mx-auto{margin-inline:auto}
.tz-welcome .-mt-10{margin-top:-40px}
.tz-welcome .w-full{width:100%}
.tz-welcome .w-10{width:40px}
.tz-welcome .h-10{height:40px}
.tz-welcome .rounded-md{border-radius:6px}
.tz-welcome .rounded-xl{border-radius:12px}
.tz-welcome .rounded-2xl{border-radius:16px}
.tz-welcome .rounded-full{border-radius:9999px}
.tz-welcome .border{border:1px solid var(--home-border)}
.tz-welcome .border-b{border-bottom:1px solid var(--home-border)}
.tz-welcome .shadow-sm{box-shadow:0 1px 2px rgb(0 0 0 / .05)}
.tz-welcome .shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0 / .08),0 4px 6px -4px rgb(0 0 0 / .08)}
.tz-welcome .bg-white{background:var(--home-card)}
.tz-welcome .bg-gray-50{background:var(--home-bg)}
.tz-welcome .bg-gray-900{background:var(--home-text)}
.tz-welcome .bg-orange-50{background:var(--home-soft-orange)}
.tz-welcome .bg-orange-100{background:var(--home-soft-orange)}
.tz-welcome .bg-orange{background:var(--home-orange)}
.tz-welcome .grad-orange{background:linear-gradient(135deg,var(--home-soft-orange) 0%,var(--home-bg) 100%)}
.tz-welcome .orange{color:var(--home-orange-label)}
.tz-welcome .text-white{color:var(--home-card)}
.tz-welcome .text-gray-500{color:var(--home-muted)}
.tz-welcome .text-gray-700{color:var(--home-text)}
.tz-welcome .text-gray-800{color:var(--home-text)}
.tz-welcome .text-gray-900{color:var(--home-text)}
.tz-welcome .text-orange-50{color:var(--home-soft-orange)}
.tz-welcome .font-medium{font-weight:500}
.tz-welcome .font-semibold{font-weight:600}
.tz-welcome .font-bold{font-weight:700}
.tz-welcome .font-extrabold{font-weight:800}
.tz-welcome .text-center{text-align:center}
.tz-welcome .text-left{text-align:left}
.tz-welcome .uppercase{text-transform:uppercase}
.tz-welcome .leading-tight{line-height:1.25}
.tz-welcome .text-xs{font-size:12px;line-height:1.5}
.tz-welcome .text-sm{font-size:14px;line-height:1.5}
.tz-welcome .text-xl{font-size:20px;line-height:1.4}
.tz-welcome .text-2xl{font-size:24px;line-height:1.33}
.tz-welcome .text-3xl{font-size:30px;line-height:1.2}
.tz-welcome .text-4xl{font-size:36px;line-height:1.15}
.tz-welcome .mb-1{margin-bottom:4px}
.tz-welcome .py-2{padding-block:8px}
.tz-welcome .mb-2{margin-bottom:8px}
.tz-welcome .gap-2{gap:8px}
.tz-welcome .py-3{padding-block:12px}
.tz-welcome .mb-3{margin-bottom:12px}
.tz-welcome .mt-3{margin-top:12px}
.tz-welcome .py-4{padding-block:16px}
.tz-welcome .mb-4{margin-bottom:16px}
.tz-welcome .gap-4{gap:16px}
.tz-welcome .gap-x-4{column-gap:16px}
.tz-welcome .p-5{padding:20px}
.tz-welcome .px-5{padding-inline:20px}
.tz-welcome .p-6{padding:24px}
.tz-welcome .px-6{padding-inline:24px}
.tz-welcome .mb-6{margin-bottom:24px}
.tz-welcome .gap-6{gap:24px}
.tz-welcome .gap-y-6{row-gap:24px}
.tz-welcome .py-8{padding-block:32px}
.tz-welcome .mb-8{margin-bottom:32px}
.tz-welcome .gap-8{gap:32px}
.tz-welcome .mb-10{margin-bottom:40px}
.tz-welcome .gap-10{gap:40px}
.tz-welcome .mb-12{margin-bottom:48px}
.tz-welcome .py-16{padding-block:64px}
.tz-welcome .mb-16{margin-bottom:64px}
.tz-welcome .py-20{padding-block:80px}
.tz-welcome .space-y-2>*+*{margin-top:8px}
.tz-welcome .divide-x>*+*{border-left:1px solid var(--home-border)}
.tz-welcome .hero{min-height:0;padding:0}
.tz-welcome .hero-content{padding-block:36px;gap:24px}
.tz-welcome .welcome-hero-image{width:100%;height:auto;max-width:405px}
.tz-welcome .welcome-stat-icon{width:52px;height:52px;object-fit:contain}
.tz-welcome .welcome-stats{background:transparent!important;box-shadow:none!important;gap:16px}
.tz-welcome .welcome-stats>div{padding:24px 12px;text-align:center;background:var(--home-card);border:1px solid var(--home-border);border-radius:12px;box-shadow:0 6px 24px rgba(15,39,71,.06)}
.tz-welcome .welcome-service-image{max-height:360px;object-fit:contain}
.tz-welcome .welcome-platform{padding:12px 8px;border:1px solid transparent;border-radius:8px;transition:background .15s,border-color .15s}
.tz-welcome .welcome-platform img{width:24px;height:24px;object-fit:contain}
.tz-welcome .welcome-platform:hover{background:var(--home-orange-40);border-color:var(--home-orange-40);color:var(--home-navy)}
.tz-welcome a.rounded-md{display:inline-flex;justify-content:center;align-items:center;min-height:44px;border:1px solid transparent;transition:background .15s,color .15s,border-color .15s}
.tz-welcome a.bg-gray-900,.tz-welcome a.bg-orange{background:var(--home-navy);color:var(--home-card);border-color:var(--home-navy)}
.tz-welcome a.bg-gray-900:hover,.tz-welcome a.bg-orange:hover{background:var(--home-orange-hover);border-color:var(--home-orange-hover);color:var(--home-card)}
.tz-welcome a.bg-white{background:var(--home-card);color:var(--home-navy);border-color:var(--home-navy)}
.tz-welcome a.bg-white:hover{background:var(--home-orange-hover);color:var(--home-card);border-color:var(--home-orange-hover)}
.tz-welcome a:focus-visible,.tz-welcome summary:focus-visible{outline:3px solid var(--home-navy);outline-offset:4px}
.tz-welcome .welcome-resource{display:flex;flex-direction:column}
.tz-welcome .welcome-resource-link{margin-top:auto;display:block;padding:10px 16px;border:1px solid var(--home-navy);border-radius:6px;color:var(--home-navy);text-align:center;font-weight:600;font-size:14px}
.tz-welcome .welcome-resource-link:hover{background:var(--home-orange-hover);border-color:var(--home-orange-hover);color:var(--home-card)}
.tz-welcome .welcome-faq{padding-inline:20px;border-radius:8px}
.tz-welcome .welcome-faq summary{list-style:none;gap:20px;min-height:52px}
.tz-welcome .welcome-faq summary::-webkit-details-marker{display:none}
.tz-welcome .welcome-faq summary:hover{color:var(--home-orange-hover)}
.tz-welcome .welcome-faq[open]{background:var(--home-card);border-color:var(--home-border);margin-block:8px}
.tz-welcome .welcome-faq>p{padding-bottom:20px}
.tz-faq-page{padding:56px 20px 80px;background:#f7f8fa}.tz-faq-content{width:100%;max-width:1600px;margin:0 auto}.tz-faq-header{margin-bottom:28px;text-align:left}.tz-faq-eyebrow{margin:0 0 8px;color:#f97316;font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.tz-faq-header h1{margin:0;color:#0f2747;font-size:clamp(34px,4vw,48px);letter-spacing:-.03em;line-height:1.15}.tz-faq-header>p:last-child{max-width:600px;margin:12px 0 0;color:#667085;font-size:18px;line-height:1.7}.tz-faq-list{border:1px solid #e5e7eb;border-radius:14px;background:#fff;overflow:hidden}.tz-faq-item{border-bottom:1px solid #edf0f3}.tz-faq-item:last-child{border-bottom:0}.tz-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:18px 22px;color:#0f2747;font-size:16px;font-weight:700;line-height:1.45;cursor:pointer;list-style:none}.tz-faq-item summary::-webkit-details-marker{display:none}.tz-faq-item summary:hover{background:#fffaf5;color:#ea580c}.tz-faq-item summary:focus-visible{outline:2px solid #f97316;outline-offset:-3px}.tz-faq-chevron{flex:0 0 auto;color:#f97316;font-size:20px;transition:transform 160ms ease}.tz-faq-item[open] summary{background:#fffaf5;color:#ea580c}.tz-faq-item[open] .tz-faq-chevron{transform:rotate(180deg)}.tz-faq-answer{padding:0 22px 20px;color:#667085;font-size:15px;font-weight:400;line-height:1.7}.tz-faq-answer p{margin:0 0 12px;max-width:none}.tz-faq-answer p:last-child{margin-bottom:0}.tz-faq-answer strong{color:#0f2747;font-weight:700}.tz-faq-answer a{color:#0f2747;font-weight:600;text-decoration:underline;text-underline-offset:3px}.tz-faq-answer a:hover{color:#ea580c}.tz-faq-answer ol,.tz-faq-answer ul{margin:0 0 12px;padding-left:22px}.tz-faq-answer li{margin-bottom:6px}.tz-faq-answer ol{list-style:decimal}.tz-faq-answer ul{list-style:disc}.tz-faq-answer table{width:100%;margin:0 0 12px;border-collapse:collapse;font-size:14px}.tz-faq-answer th,.tz-faq-answer td{padding:8px 10px;border:1px solid #e5e7eb;text-align:left;vertical-align:top}.tz-faq-answer th{background:#f7f8fa;color:#0f2747;font-weight:700}.tz-faq-answer .article-table{overflow-x:auto;margin:0 0 12px}.tz-faq-answer .article-table table{margin:0}
.tz-welcome .welcome-chevron{transition:transform .15s}
.tz-welcome .welcome-faq[open] .welcome-chevron{transform:rotate(180deg)}
@media(min-width:768px){
.tz-welcome .md\:px-12{padding-inline:48px}
.tz-welcome .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tz-welcome .md\:text-5xl{font-size:48px;line-height:1.15}
.tz-welcome .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tz-welcome .md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.tz-welcome .md\:p-10{padding:40px}
.tz-welcome .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tz-welcome .md\:flex-row{flex-direction:row}
}
@media(max-width:767px){
.tz-welcome .py-20{padding-block:48px}
.tz-welcome .py-16{padding-block:48px}
.tz-welcome .welcome-stats>div:nth-child(3){border-left:1px solid var(--home-border)}
.tz-welcome .welcome-stats>div:nth-child(n+3){border-top:1px solid var(--home-border)}
.tz-welcome .welcome-actions{width:100%}
.tz-welcome .welcome-actions>a{flex:1 1 180px}
.tz-welcome .text-4xl{font-size:34px}
.tz-welcome .text-3xl{font-size:28px}
.tz-welcome section>.max-w-5xl.text-left{padding-inline:24px}
}
@media(prefers-reduced-motion:reduce){.tz-welcome *{transition:none!important}}

/* Numbered service details and editorial cards share the landing accent. */
.tz-welcome .welcome-marketing-visual{margin:0}
.tz-welcome .welcome-numbered-list{display:grid;gap:16px;margin:0 0 24px;padding:0;list-style:none}
.tz-welcome .welcome-numbered-list>li{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:12px}
.tz-welcome .welcome-list-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--home-orange);border-radius:50%;background:var(--home-soft-orange);color:var(--home-orange-hover);font-size:12px;font-weight:700}
.tz-welcome a.welcome-facebook-button{display:flex;justify-content:center;align-items:center;width:100%;min-height:48px;padding:12px 20px;border:1px solid var(--home-orange);border-radius:8px;background:var(--home-card);color:var(--home-orange-hover);font-size:14px;font-weight:700;text-decoration:none;transition:background .15s,color .15s,border-color .15s}
.tz-welcome a.welcome-facebook-button:hover{background:var(--home-orange-hover);border-color:var(--home-orange-hover);color:var(--home-card)}
.tz-welcome .welcome-growth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:center;align-items:stretch;gap:24px;text-align:left}
.tz-welcome .welcome-growth-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--home-border);border-radius:18px;background:var(--home-card);box-shadow:0 6px 24px rgba(15,39,71,.06)}
.tz-welcome .welcome-growth-card>h3{margin:0;padding:16px;background:var(--home-orange);color:var(--home-card);text-align:center;font-family:var(--home-font);font-size:18px;line-height:1.4;font-weight:700;letter-spacing:0}
.tz-welcome .welcome-growth-card .welcome-numbered-list{padding:14px;margin:0;gap:14px}
.tz-welcome .welcome-growth-card .welcome-numbered-list>li{grid-template-columns:32px minmax(0,1fr);gap:10px}
.tz-welcome .welcome-growth-card .welcome-list-number{width:30px;height:30px;border:1px solid var(--home-orange);background:var(--home-card);color:var(--home-orange);font-family:var(--home-font);font-size:14px;line-height:1;font-weight:600}
.tz-welcome .welcome-growth-card h4{margin:1px 0 3px;font-family:var(--home-font);font-size:14px;line-height:1.25;font-weight:700;letter-spacing:0;color:var(--home-navy)}
.tz-welcome .welcome-growth-card p{margin:0;font-size:13px;color:var(--home-muted);line-height:1.35;font-weight:400}
.tz-welcome .welcome-advantages>.max-w-5xl{padding-inline:24px}
.tz-welcome .welcome-advantage-card{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:16px;min-width:0;padding:24px;border:1px solid var(--home-border);border-radius:10px;background:var(--home-card);transition:border-color 160ms ease}
.tz-welcome .welcome-advantage-card p{font-size:15px;line-height:1.65}
.tz-welcome .welcome-advantage-card:hover{border-color:var(--home-orange-40)}
@media(min-width:1200px){.tz-welcome .welcome-growth-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:767px){.tz-welcome .welcome-advantage-card{padding:20px}.tz-welcome .welcome-growth-grid{grid-template-columns:minmax(0,1fr);gap:20px;max-width:400px;margin-inline:auto}}

/* Homepage content styles; the public palette lives in the shared navigation stylesheet. */
.tz-welcome :is(h1,h2,h3,h4)[class]{color:var(--home-navy)}
.tz-welcome :is(.hero h1 .text-white,.growth-section>h2 .orange){color:var(--home-navy)}
.tz-welcome .growth-section>h2{font-weight:700;font-size:clamp(22px,2.4vw,26px);letter-spacing:0}
.tz-welcome .growth-section>.orange{color:var(--home-orange);font-size:13px;font-weight:600;letter-spacing:.08em}
.tz-welcome .welcome-growth-card>h3{color:var(--home-card)}
.tz-welcome .cta-section{background:var(--home-soft-orange)}
.tz-welcome .cta-section :is(.text-white,.text-orange-50){color:var(--home-navy)}
.tz-welcome .cta-section a.bg-gray-900{color:var(--home-card)}
.tz-welcome .shadow-lg{box-shadow:0 6px 24px rgba(15,39,71,.06)}
.tz-welcome .shadow-sm{box-shadow:0 2px 8px rgba(15,39,71,.04)}

.tz-welcome .welcome-facebook-card{border:1px solid var(--tz-orange);background:var(--home-card)}
.tz-welcome .welcome-facebook-card h3{color:var(--tz-orange)}
.tz-welcome .welcome-hover-card{border:1px solid var(--home-border);transition:transform 180ms ease,border-color 180ms ease,box-shadow 180ms ease}
.tz-welcome .welcome-facebook-card.welcome-hover-card{border-color:var(--home-orange-40)}
.tz-welcome .welcome-hover-card:hover{border-color:var(--home-orange-40)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
    .tz-welcome .welcome-hover-card:hover{transform:translateY(-4px);border-color:var(--home-orange-40);box-shadow:0 10px 24px rgba(15,39,71,.09)}
}
.tz-welcome .welcome-hover-card:focus-within{border-color:var(--home-orange-40)}
.tz-welcome .welcome-closing-cta{overflow:hidden;padding-block:40px;background-color:var(--home-soft-orange);animation:welcome-growth-background 4s ease-in-out both}
.tz-welcome .welcome-closing-inner{position:relative;display:flex;align-items:center;justify-content:center}
.tz-welcome .welcome-closing-copy{position:relative;z-index:1;max-width:620px;width:100%;text-align:center}
.tz-welcome .welcome-closing-copy .welcome-actions{justify-content:center}
.tz-welcome .welcome-all-faqs{margin-top:24px}
.tz-welcome .welcome-closing-visual{display:flex;justify-content:center;align-items:center;width:38%;max-width:430px}
.tz-welcome .welcome-closing-visual img{display:block;width:100%;height:auto;max-height:270px;object-fit:contain;border-radius:18px}
.tz-welcome .welcome-closing-copy h3{font-size:clamp(26px,3vw,34px);line-height:1.25}
@keyframes welcome-growth-background{0%,100%{background-position:calc(100% - 80px) 50%}50%{background-position:calc(100% - 80px) calc(50% - 10px)}}
@media(max-width:767px){
    .tz-welcome .hero-content{padding-block:24px}
    .tz-welcome .welcome-hero-image{max-width:280px}
    .tz-welcome .welcome-closing-inner{min-height:0}
    .tz-welcome .welcome-closing-copy{width:100%;max-width:none}
    .tz-welcome .welcome-closing-visual{width:36%;max-width:260px}
}
@media(prefers-reduced-motion:reduce){.tz-welcome .welcome-closing-cta{animation:none}.tz-welcome .welcome-hover-card:hover{transform:none}}
@media(max-width:767px){.tz-welcome .welcome-closing-inner{flex-direction:column;align-items:stretch;gap:24px}.tz-welcome .welcome-closing-visual{width:100%;max-width:320px;margin-inline:auto}}
.tz-welcome .hero-login-link{display:none}
.tz-public-drawer-note{display:block;color:var(--tz-muted,#667085);font-size:13px;padding:12px 0}
@media(max-width:767px){.tz-welcome .hero-services-link{display:none}.tz-welcome .hero-login-link{display:inline-flex}}
@media(max-width:767px){.tz-welcome .hero .welcome-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tz-welcome .hero .welcome-actions a{display:flex;align-items:center;justify-content:center;padding-inline:12px;text-align:center;white-space:nowrap}.tz-welcome .hero .hero-services-link{display:none}.tz-welcome .hero .hero-login-link{display:flex}}
.tz-welcome .hero-login-link{display:inline-flex}
.tz-welcome .hero-login-link{display:inline-flex;align-items:center;color:#0F2747;font-weight:600;text-decoration:none;padding:12px 0}
.tz-welcome .hero-login-link:hover{color:var(--home-orange)}
.tz-welcome .hero-register-link{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:767px){.tz-welcome .hero .welcome-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.tz-welcome .hero .hero-login-link{font-size:13px}.tz-welcome .hero .hero-register-link{padding-inline:18px;white-space:nowrap}}
.tz-welcome .hero-login-link{padding:12px 24px;color:#111827;border:1px solid #d1d5db;border-radius:6px;background:#fff}
.tz-welcome .hero-login-link:hover{color:#111827;border-color:var(--home-orange);background:var(--home-soft-orange)}
@media(max-width:767px){.tz-welcome .hero .welcome-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tz-welcome .hero .welcome-actions a{display:flex;align-items:center;justify-content:center;padding-inline:12px;text-align:center;white-space:nowrap}.tz-welcome .hero .hero-login-link{padding:12px}.tz-welcome .hero .hero-register-link{padding-inline:12px}}
@media(max-width:767px){.tz-welcome .home-learning-layout{grid-template-columns:1fr;gap:24px;text-align:center}.tz-welcome .home-learning-layout .home-learning-links{justify-content:center}}
.tz-welcome .welcome-platform-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.tz-welcome .welcome-platform{font-size:12px;gap:5px}
@media(max-width:767px){.tz-welcome .welcome-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:767px){.tz-welcome .welcome-platform-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px 4px}.tz-welcome .welcome-platform{display:flex;flex-direction:column;gap:3px;font-size:10px;line-height:1.15}.tz-welcome .welcome-platform img{width:18px;height:18px}}
.tz-welcome .welcome-platform-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
/* Final homepage rhythm and mobile layout polish. */
.tz-welcome .hero-content{padding-block:64px}
.tz-welcome .services-section,.tz-welcome .audience-section,.tz-welcome .working-process-section,.tz-welcome .welcome-advantages,.tz-welcome .faq-section,.tz-welcome .home-learning-section{padding-block:64px}
.tz-welcome .services-section .welcome-platform-grid{margin-bottom:32px}
.tz-welcome .welcome-advantages .max-w-5xl{gap:20px}
.tz-welcome .welcome-advantage-card{padding:20px}
.tz-welcome .home-learning-section{padding-block:56px}
.tz-welcome .welcome-closing-cta{padding-block:48px}
@media(max-width:767px){
    .tz-welcome .hero-content{display:flex;flex-direction:column;padding-top:28px;padding-bottom:48px;gap:22px;text-align:center}
    .tz-welcome .hero-image{order:-1;width:100%}
    .tz-welcome .welcome-hero-image{width:100%;max-width:320px;margin-inline:auto}
    .tz-welcome .hero-text{display:flex;flex-direction:column;align-items:center}
    .tz-welcome .hero-text h1{font-size:36px;line-height:1.1;margin-bottom:14px}
    .tz-welcome .hero-text>p{max-width:520px;font-size:16px;line-height:1.6;margin-bottom:22px}
    .tz-welcome .services-section,.tz-welcome .audience-section,.tz-welcome .working-process-section,.tz-welcome .welcome-advantages,.tz-welcome .faq-section{padding-block:48px}
    .tz-welcome .home-learning-section{padding-block:44px}
    .tz-welcome .welcome-advantages .max-w-5xl{gap:14px}
    .tz-welcome .welcome-advantage-card{padding:18px}
    .tz-welcome .welcome-closing-cta{padding-block:36px}
}

@media(max-width:767px){.tz-faq-page{padding:36px 16px 56px}.tz-faq-header{margin-bottom:22px}.tz-faq-header h1{font-size:36px}.tz-faq-header>p:last-child{font-size:14px}.tz-faq-item summary{min-height:60px;padding:16px;font-size:15px}.tz-faq-answer{padding:0 16px 18px;font-size:15px}}

.tz-faq-item summary{justify-content:flex-start;gap:14px}.tz-faq-number{flex:0 0 24px;color:#f97316;font-variant-numeric:tabular-nums}.tz-faq-question{flex:1;min-width:0}.tz-faq-chevron{margin-left:auto}

.tz-welcome .tz-home-hero-button{box-sizing:border-box;border:1px solid #0f2747;border-radius:8px;min-height:44px;padding:11px 19px}
.tz-welcome .tz-home-hero-button:hover{border-color:#f97316}


.tz-welcome .home-learning-links{display:flex;flex-wrap:wrap;gap:12px}.tz-welcome .home-learning-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 16px;border:1px solid #0f2747;border-radius:8px;background:#fff;color:#0f2747;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.tz-welcome .home-learning-button:hover{border-color:#f97316;background:#0f2747;color:#fff;text-decoration:none}@media(max-width:767px){.tz-welcome .home-learning-button{flex:1 1 180px}}


.tz-welcome .welcome-platform-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 10px}
@media(max-width:767px){.tz-welcome .welcome-platform-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 6px}}


@keyframes tz-platform-hover{0%,100%{transform:translateY(-2px) rotate(0)}25%{transform:translateY(-2px) rotate(-1.5deg)}75%{transform:translateY(-2px) rotate(1.5deg)}}
.tz-welcome .welcome-platform:hover{animation:tz-platform-hover .28s ease-in-out both}
@media(prefers-reduced-motion:reduce){.tz-welcome .welcome-platform:hover{animation:none}}


.tz-welcome .home-learning-points{display:grid;gap:14px;margin:0 0 24px;text-align:left}.tz-welcome .home-learning-points>div{padding-left:14px;border-left:2px solid var(--home-orange)}.tz-welcome .home-learning-points h3{margin:0 0 3px;color:var(--home-navy);font-size:15px;font-weight:700}.tz-welcome .home-learning-points p{margin:0;color:var(--home-muted);font-size:14px;line-height:1.5}


.tz-welcome .home-learning-points{gap:8px;margin-bottom:20px}.tz-welcome .home-learning-points>div{padding-left:0;border-left:0}.tz-welcome .home-learning-points h3{margin:0}.tz-welcome .home-learning-points p{margin:0;line-height:1.5}


.tz-welcome .home-learning-layout>div>p{margin-bottom:16px!important}

/* Hero: trust badges + live stats, revealed on load without JS so they never stay hidden. */
.tz-welcome .hero-trust-row{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:20px}
.tz-welcome .hero-trust-badge{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--home-navy)}
.tz-welcome .hero-trust-badge img{width:18px;height:18px;object-fit:contain}
.tz-welcome .hero-stats-row{display:flex;flex-wrap:wrap;gap:28px;margin-top:24px;padding-top:20px;border-top:1px solid var(--home-border)}
.tz-welcome .hero-eyebrow{margin:0 0 12px;color:var(--home-orange-hover);font-size:13px;font-weight:800;letter-spacing:.09em}
.tz-welcome .welcome-home-faq{background:#f7f8fa}
.tz-welcome .welcome-faq-list{border:1px solid #e5e7eb;border-radius:14px;background:#fff;overflow:hidden}
.tz-welcome .welcome-faq{border-bottom:1px solid #edf0f3;padding-inline:20px}
.tz-welcome .welcome-faq:last-child{border-bottom:0}
.tz-welcome .welcome-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:60px;padding:16px 2px;color:var(--home-navy);font-size:16px;font-weight:700;cursor:pointer;list-style:none}
.tz-welcome .welcome-faq summary::-webkit-details-marker{display:none}
.tz-welcome .welcome-faq summary:hover{color:var(--home-orange-hover)}
.tz-welcome .welcome-faq>p{padding:0 2px 18px;color:var(--home-muted);font-size:15px;line-height:1.7}
.tz-welcome .welcome-faq>p a{color:var(--home-navy);text-decoration:underline;text-underline-offset:3px}
.tz-welcome .welcome-faq[open] summary{color:var(--home-orange-hover)}
.tz-welcome .welcome-faq .tz-faq-number,.tz-terms-list .tz-faq-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#fff4eb;box-shadow:0 3px 9px rgb(249 115 22 / 18%);color:#ea580c;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}
.tz-terms-list{display:block;width:100%;max-width:none;margin:0;box-sizing:border-box}
.tz-public-document-page .tz-terms-list{display:block;width:100%;max-width:none;margin:0;box-sizing:border-box}
.tz-public-document-page .tz-legal-body,.tz-public-document-page .tz-terms-list,.tz-public-document-page .tz-term-item,.tz-public-document-page .tz-term-item summary,.tz-public-document-page .tz-term-answer{width:100%;max-width:none;box-sizing:border-box}
.tz-public-document-page .tz-term-answer p,.tz-public-document-page .tz-term-answer ul{width:100%;max-width:none}
.tz-terms-list.tz-faq-list{border:0;border-radius:0;background:transparent;overflow:visible}
.tz-terms-list .tz-term-item{border-bottom:1px solid #edf0f3}
.tz-terms-list .tz-term-item:last-child{border-bottom:0}
.tz-terms-list .tz-term-item summary{padding-block:16px}
.tz-terms-list .tz-term-answer{padding:2px 22px 22px;color:#475467;font-size:16px;line-height:1.75}
.tz-terms-list .tz-term-answer h3{margin:24px 0 8px;color:#0f2747;font-size:19px}
.tz-terms-list .tz-term-answer p{margin:0 0 12px}
body.tz-public.tz-legal-document .tz-terms-list .tz-term-answer{color:#475467;font-size:16px;line-height:1.75}
body.tz-public.tz-legal-document .tz-term-answer .tz-term-clauses{list-style:none;margin:0;padding:0}
body.tz-public.tz-legal-document .tz-term-clauses>.tz-term-clause{display:grid;grid-template-columns:4.5ch minmax(0,1fr);gap:14px;align-items:start;margin:0 0 22px;padding:0}
body.tz-public.tz-legal-document .tz-term-clauses>.tz-term-clause:last-child{margin-bottom:0}
body.tz-public.tz-legal-document .tz-term-answer .tz-terms-subnumber{display:block;margin:0;padding:0;min-width:0;height:auto;border:0;border-radius:0;background:none;box-shadow:none;color:#0f2747;font-size:inherit;font-weight:600;line-height:inherit;font-variant-numeric:tabular-nums;white-space:nowrap}
body.tz-public.tz-legal-document .tz-term-clause-text{min-width:0;color:inherit;overflow-wrap:anywhere}
body.tz-public.tz-legal-document .tz-term-clause-text p{margin:0 0 12px;color:inherit;font-size:16px;line-height:1.75}
body.tz-public.tz-legal-document .tz-term-clause-text>:last-child{margin-bottom:0}
body.tz-public.tz-legal-document .tz-term-answer ul{list-style:disc;margin:12px 0 0;padding-left:22px;color:inherit;box-sizing:border-box}
body.tz-public.tz-legal-document .tz-term-answer ul>li{margin:0 0 7px;padding:0;color:inherit}
body.tz-public.tz-legal-document .tz-term-answer ul>li::marker{color:#344054}
@media(max-width:767px){body.tz-public.tz-legal-document .tz-terms-list .tz-term-answer{padding:2px 12px 20px;font-size:15px;line-height:1.7}body.tz-public.tz-legal-document .tz-term-clause-text p{font-size:15px;line-height:1.7}body.tz-public.tz-legal-document .tz-term-clauses>.tz-term-clause{gap:12px}}
.tz-terms-list .tz-term-item[open] summary{background:#fffaf5;color:#ea580c}
.tz-terms-list .tz-term-item summary:hover{background:#fffaf5;color:#ea580c}
.tz-terms-list .tz-term-item summary:focus-visible{outline:2px solid #f97316;outline-offset:-3px}
[data-refund-sections] .tz-term-item{scroll-margin-top:96px}
body.tz-public.tz-legal-document [data-refund-sections] .tz-term-answer h3{margin:24px 0 10px;color:#0f2747;font-size:19px;line-height:1.4}
@media print{[data-refund-sections] .tz-faq-chevron{display:none}[data-refund-sections] .tz-term-item summary{break-after:avoid}[data-refund-sections] .tz-term-answer{display:block}}
.tz-public-document-page .tz-legal-body>p{display:block;width:100%;max-width:none}
.tz-faq-page .tz-faq-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:linear-gradient(145deg,#fff7ed,#ffedd5);box-shadow:0 3px 10px rgb(249 115 22 / 22%);color:#ea580c;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}
.tz-welcome .welcome-closing-cta{background:#fff7ed}
@media(max-width:767px){.tz-welcome .hero-eyebrow{font-size:11px}.tz-welcome .welcome-home-faq{padding-block:48px}.tz-welcome .welcome-faq{padding-inline:16px}.tz-welcome .welcome-faq summary{font-size:15px}}
.tz-welcome .hero-stat{display:flex;flex-direction:column}
.tz-welcome .hero-stat-number{font-size:24px;font-weight:800;color:var(--home-navy);line-height:1.15;font-variant-numeric:tabular-nums}
.tz-welcome .hero-stat-label{font-size:12px;color:var(--home-muted);font-weight:500}
@media(max-width:767px){
    .tz-welcome .hero-trust-row{justify-content:center;margin-top:16px}
    .tz-welcome .hero-stats-row{justify-content:center;gap:20px;text-align:center;margin-top:20px;padding-top:16px}
    .tz-welcome .hero-stat{align-items:center}
}

/* Hero content fades/slides in on load; each direct child staggers slightly. */
@keyframes tzHeroIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.tz-welcome .hero-text>*{animation:tzHeroIn .6s ease both}
.tz-welcome .hero-text>*:nth-child(1){animation-delay:.05s}
.tz-welcome .hero-text>*:nth-child(2){animation-delay:.15s}
.tz-welcome .hero-text>*:nth-child(3){animation-delay:.25s}
.tz-welcome .hero-text>*:nth-child(4){animation-delay:.35s}
.tz-welcome .hero-text>*:nth-child(5){animation-delay:.45s}
@media(prefers-reduced-motion:reduce){.tz-welcome .hero-text>*{animation:none}}

/* Primary hero CTA gets a soft pulsing glow to draw the eye. */
@keyframes tzCtaGlow{0%,100%{box-shadow:0 0 0 0 var(--home-orange-40)}50%{box-shadow:0 0 0 8px rgb(249 115 22 / 0%)}}
.tz-welcome .tz-cta-glow{animation:tzCtaGlow 2.4s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){.tz-welcome .tz-cta-glow{animation:none}}

/* Buttons: gentle grow on hover. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
    .tz-welcome a.tz-public-nav-cta,.tz-welcome a.tz-public-nav-login,.tz-welcome .tz-home-hero-button{transition:transform .15s ease,background-color .15s ease,color .15s ease,border-color .15s ease}
    .tz-welcome a.tz-public-nav-cta:hover,.tz-welcome a.tz-public-nav-login:hover,.tz-welcome .tz-home-hero-button:hover{transform:translateY(-1px) scale(1.02)}
}

/* Platform icons: a soft colour box behind each icon instead of a bare glyph. */
.tz-welcome .welcome-platform-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--home-soft-orange);flex-shrink:0}
.tz-welcome .welcome-platform-icon img{width:20px;height:20px}
@media(max-width:767px){.tz-welcome .welcome-platform-icon{width:32px;height:32px;border-radius:9px}.tz-welcome .welcome-platform-icon img{width:18px;height:18px}}

/* Audience / "who it's for" cards. */
.tz-welcome .tz-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.tz-welcome .tz-audience-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:24px;text-align:left;border-radius:14px;background:var(--home-card)}
.tz-welcome .tz-audience-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:var(--home-soft-orange);color:var(--home-orange-hover)}
.tz-welcome .tz-audience-label{font-size:16px;font-weight:700;color:var(--home-navy)}
.tz-welcome .tz-audience-desc{font-size:14px;color:var(--home-muted);line-height:1.6}
@media(max-width:767px){.tz-welcome .tz-audience-grid{grid-template-columns:minmax(0,1fr);gap:12px}.tz-welcome .tz-audience-card{padding:18px;flex-direction:row;align-items:center;gap:14px}.tz-welcome .tz-audience-icon{width:40px;height:40px;flex-shrink:0}.tz-welcome .tz-audience-label{font-size:15px}.tz-welcome .tz-audience-desc{font-size:13px;line-height:1.5}}

/* Working-process stepper: a connected horizontal timeline on desktop, a connected vertical one on mobile. */
.tz-welcome .tz-steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1024px;margin:0 auto;padding-inline:24px}
.tz-welcome .tz-steps::before{content:"";position:absolute;top:22px;left:12.5%;right:12.5%;height:2px;background:var(--home-border);z-index:0}
.tz-welcome .tz-step{position:relative;z-index:1;text-align:center;padding-inline:8px}
.tz-welcome .tz-step-marker{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0 auto 16px;border-radius:50%;border:2px solid var(--home-orange);background:var(--home-card);color:var(--home-orange-hover);font-weight:800;font-size:14px}
.tz-welcome .tz-step-body h4{font-size:15px;font-weight:700;color:var(--home-navy);margin-bottom:6px}
.tz-welcome .tz-step-body p{font-size:14px;color:var(--home-muted);line-height:1.6}
@media(max-width:767px){
    .tz-welcome .tz-steps{grid-template-columns:minmax(0,1fr);gap:0;padding-inline:8px;max-width:420px}
    .tz-welcome .tz-steps::before{display:none}
    .tz-welcome .tz-step{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;text-align:left;padding-bottom:28px;padding-inline:0}
    .tz-welcome .tz-step:last-child{padding-bottom:0}
    .tz-welcome .tz-step::after{content:"";position:absolute;left:21px;top:44px;bottom:0;width:2px;background:var(--home-border)}
    .tz-welcome .tz-step:last-child::after{display:none}
    .tz-welcome .tz-step-marker{margin:0}
}

/* Generic scroll-reveal system. Elements are only ever hidden once JS confirms it can reveal them again. */
.tz-reveal,.tz-reveal-group{opacity:1;transform:none}
.tz-reveal[data-armed],.tz-reveal-group[data-armed]{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}
.tz-reveal[data-armed].is-visible,.tz-reveal-group[data-armed].is-visible{opacity:1;transform:translateY(0)}
.tz-reveal-group[data-armed]>*{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease;transition-delay:calc(var(--tz-reveal-i,0) * 60ms)}
.tz-reveal-group[data-armed].is-visible>*{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){
    .tz-reveal[data-armed],.tz-reveal-group[data-armed],.tz-reveal-group[data-armed]>*{opacity:1;transform:none;transition:none}
}
