:root{--th-deep-blue:#0E5F8C;--th-teal:#12B79A;--th-orange:#F5A623;--th-charcoal:#2B2F33;--th-cream:#FFF8EE;--th-cream-2:#FEF3E0;--th-muted:#5A6573;--th-line:rgba(43,47,51,0.12)}.th-page{background:var(--th-cream);min-height:100vh;font-family:Heebo,system-ui,-apple-system,sans-serif;color:var(--th-charcoal)}.th-hero{position:relative;overflow:hidden;padding:64px 24px 40px;background:radial-gradient(60% 80% at 85% 20%,rgba(18,183,154,.14),transparent 70%),radial-gradient(55% 65% at 15% 80%,rgba(245,166,35,.12),transparent 70%),linear-gradient(180deg,var(--th-cream) 0,#FDF2E0 100%)}.th-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(14,95,140,.04) 1px,transparent 1.5px);background-size:28px 28px;opacity:.55;pointer-events:none}.th-hero-inner{max-width:1320px;margin:0 auto;position:relative;z-index:2;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}.th-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(14,95,140,.08);color:var(--th-deep-blue);padding:7px 16px;border-radius:999px;font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}.th-eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--th-teal);box-shadow:0 0 10px var(--th-teal)}.th-hero h1{font-size:clamp(40px,5.2vw,68px);font-weight:900;letter-spacing:-.035em;line-height:1.02;color:var(--th-charcoal);margin-bottom:18px}.th-hero h1 em{font-style:normal;background:linear-gradient(135deg,#0E5F8C,#12B79A 60%,#F5A623);-webkit-background-clip:text;background-clip:text;color:transparent}.th-hero p{font-size:18px;color:var(--th-muted);max-width:580px;line-height:1.6}.th-hero-meta{display:flex;gap:28px;margin-top:26px;flex-wrap:wrap}.th-meta-item{display:flex;align-items:center;gap:12px}.th-meta-item .num{font-size:30px;font-weight:900;letter-spacing:-.02em;background:linear-gradient(135deg,var(--th-deep-blue),var(--th-teal));-webkit-background-clip:text;background-clip:text;color:transparent}.th-meta-item .lbl{font-size:12.5px;color:var(--th-muted);font-weight:600;line-height:1.25}.th-hero-visual{position:relative;aspect-ratio:1/1;max-width:440px;margin-inline-start:auto}.th-hero-ring{position:absolute;inset:10%;border-radius:50%;border:2px dashed rgba(14,95,140,.2);animation:thSpin 40s linear infinite}.th-hero-ring.r2{inset:22%;border-color:rgba(245,166,35,.3);animation:thSpin 28s linear infinite reverse}@keyframes thSpin{to{transform:rotate(1turn)}}.th-hero-octo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:62%;height:62%;animation:thFloat 7s ease-in-out infinite;filter:drop-shadow(0 20px 40px rgba(14,95,140,.28))}.th-hero-octo img{width:100%;height:100%;object-fit:contain}@keyframes thFloat{0%,to{transform:translate(-50%,-50%) rotate(-3deg)}50%{transform:translate(-50%,-54%) rotate(3deg)}}.th-floater{position:absolute;background:#fff;padding:9px 14px;border-radius:14px;font-size:12.5px;font-weight:800;color:var(--th-charcoal);display:flex;align-items:center;gap:8px;box-shadow:0 12px 28px rgba(14,95,140,.16);border:1px solid var(--th-line)}.th-floater svg{color:var(--th-deep-blue)}.th-floater.f1{top:6%;right:6%;animation:thFloat 6s ease-in-out infinite}.th-floater.f2{top:32%;left:-4%;animation:thFloat 5.2s ease-in-out .4s infinite}.th-floater.f3{bottom:22%;right:-2%;animation:thFloat 7s ease-in-out .9s infinite}.th-floater.f4{bottom:6%;left:8%;animation:thFloat 5.8s ease-in-out 1.3s infinite}.th-filter-bar{max-width:1320px;margin:0 auto;padding:36px 24px 0;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.th-search{flex:1 1 280px;min-width:260px;position:relative}.th-search input{width:100%;padding:14px 50px 14px 18px;border-radius:16px;border:1.5px solid var(--th-line);background:#fff;font-size:15px;font-weight:500;font-family:inherit;color:var(--th-charcoal);transition:border-color .2s,box-shadow .2s}.th-search input:focus{outline:none;border-color:var(--th-deep-blue);box-shadow:0 0 0 4px rgba(14,95,140,.08)}.th-search svg{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--th-muted);pointer-events:none}.th-cats{display:flex;gap:8px;flex-wrap:wrap}.th-cat{padding:11px 18px;border-radius:999px;border:1.5px solid var(--th-line);background:#fff;font-size:13.5px;font-weight:700;color:var(--th-charcoal);font-family:inherit;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.th-cat .count{background:rgba(43,47,51,.08);padding:2px 8px;border-radius:999px;font-size:11px;color:var(--th-muted);transition:all .2s}.th-cat:hover{border-color:var(--th-deep-blue);color:var(--th-deep-blue)}.th-cat.active{background:var(--th-charcoal);color:#fff;border-color:var(--th-charcoal)}.th-cat.active .count{background:rgba(255,255,255,.2);color:#fff}.th-grid-wrap{max-width:1320px;margin:0 auto;padding:30px 24px 90px}.th-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.th-cube{--c1:#0E5F8C;--c2:#12B79A;position:relative;background:#fff;border:1px solid var(--th-line);border-radius:22px;padding:26px 24px 24px;overflow:hidden;cursor:pointer;transition:transform .35s cubic-bezier(.2,.8,.3,1),box-shadow .35s,border-color .35s;display:flex;flex-direction:column;gap:14px;min-height:236px;isolation:isolate;text-decoration:none;color:inherit}.th-cube:before{inset:0;background:linear-gradient(135deg,var(--c1) 0,var(--c2) 100%);z-index:0}.th-cube:after,.th-cube:before{content:"";position:absolute;opacity:0;transition:opacity .4s}.th-cube:after{top:-40%;left:-40%;width:150%;height:150%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.25),transparent 50%);pointer-events:none;z-index:1}.th-cube>*{position:relative;z-index:2}.th-cube:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(14,95,140,.22);border-color:transparent}.th-cube:hover:after,.th-cube:hover:before{opacity:1}.th-cube-deco{position:absolute;top:20px;left:20px;width:76px;height:76px;opacity:.12;color:var(--c1);transition:color .4s,opacity .4s,transform .4s;z-index:1}.th-cube:hover .th-cube-deco{color:#fff;opacity:.28;transform:rotate(-12deg) scale(1.1)}.th-cube-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(14,95,140,.1),rgba(18,183,154,.1));color:var(--c1);transition:all .4s;position:relative;z-index:2}.th-cube:hover .th-cube-icon{background:rgba(255,255,255,.22);color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.18)}.th-cube h3{font-size:18px;font-weight:900;letter-spacing:-.015em;color:var(--th-charcoal);line-height:1.2;transition:color .3s}.th-cube p{font-size:13.5px;color:var(--th-muted);line-height:1.55;transition:color .3s;margin-top:-4px}.th-cube:hover h3{color:#fff}.th-cube:hover p{color:rgba(255,255,255,.9)}.th-cube-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px}.th-cube-tag{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--th-muted);background:rgba(43,47,51,.06);padding:4px 10px;border-radius:999px;transition:all .3s}.th-cube:hover .th-cube-tag{background:rgba(255,255,255,.22);color:#fff}.th-cube-arrow{width:34px;height:34px;border-radius:50%;background:rgba(43,47,51,.06);display:grid;place-items:center;color:var(--th-charcoal);transition:all .3s}.th-cube:hover .th-cube-arrow{background:#fff;color:var(--c1);transform:translateX(-4px)}.th-cube .status{position:absolute;top:16px;left:16px;z-index:3;display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;color:var(--th-teal);background:rgba(18,183,154,.12);padding:3px 10px;border-radius:999px}.th-cube .status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.th-cube .status.soon{color:#B8730E;background:rgba(245,166,35,.18)}.th-cube.soon{opacity:.88}.th-cube.soon:hover{opacity:1}.th-cube:hover .status{background:rgba(255,255,255,.25);color:#fff}.th-cube.v-blue{--c1:#0E5F8C;--c2:#3AA7D4}.th-cube.v-teal{--c1:#12B79A;--c2:#0C8F78}.th-cube.v-orange{--c1:#F5A623;--c2:#D07808}.th-cube.v-coral{--c1:#E8625F;--c2:#C23C44}.th-cube.v-violet{--c1:#6B5BD1;--c2:#8A4BC9}.th-cube.v-gold{--c1:#C79210;--c2:#8B6400}.th-cube.v-sky{--c1:#4A90E2;--c2:#1A5FA8}.th-cube.v-mint{--c1:#2BC4A7;--c2:#1A9588}.th-cube.v-sand{--c1:#B8844B;--c2:#8A5A2A}.th-cube.v-plum{--c1:#A14B8C;--c2:#6B2F62}.th-cube.v-forest{--c1:#4A8A5C;--c2:#2B5A38}.th-cube.v-sunset{--c1:#E87848;--c2:#A14228}.th-cube.v-deep{--c1:#164E6D;--c2:#0A2F4D}.th-cube.v-lime{--c1:#9AB834;--c2:#6D8823}.th-cube.v-rose{--c1:#E06A8F;--c2:#A33862}.th-cube.v-azure{--c1:#2F8ECB;--c2:#0E5F8C}.th-cube.v-amber{--c1:#E8A838;--c2:#B87218}.th-cube.v-ocean{--c1:#10778A;--c2:#084651}.th-foot-strip{max-width:1320px;margin:40px auto 0;padding:0 24px}.th-foot-box{background:#fff;border:1px solid var(--th-line);border-radius:22px;padding:28px 32px;gap:24px;justify-content:space-between;box-shadow:0 14px 40px rgba(14,95,140,.08)}.th-foot-box,.th-foot-box .l{display:flex;align-items:center}.th-foot-box .l{gap:18px}.th-foot-box .l .ic{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,rgba(245,166,35,.18),rgba(245,166,35,.05));display:grid;place-items:center;color:var(--th-orange);flex-shrink:0}.th-foot-box h4{font-size:17px;font-weight:900;letter-spacing:-.01em;margin-bottom:4px;color:var(--th-charcoal)}.th-foot-box p{font-size:13.5px;color:var(--th-muted)}.th-foot-box .r{display:flex;gap:10px;flex-shrink:0}.th-btn-primary{padding:12px 22px;border-radius:999px;background:linear-gradient(135deg,var(--th-orange) 0,#FF8A3D 100%);color:#fff;font-weight:800;border:0;display:inline-flex;align-items:center;gap:8px}.th-btn-login,.th-btn-primary{font-size:14px;text-decoration:none;cursor:pointer}.th-btn-login{padding:12px 20px;border-radius:999px;border:1.5px solid var(--th-line);background:#fff;color:var(--th-charcoal);font-weight:700}.th-btn-login:hover{border-color:var(--th-deep-blue);color:var(--th-deep-blue)}.th-empty{display:none;text-align:center;padding:60px 20px;color:var(--th-muted)}.th-empty.show{display:block}.th-empty .em{font-size:56px;margin-bottom:10px}.th-empty h3{font-size:22px;font-weight:900;color:var(--th-charcoal);margin-bottom:8px}@media (max-width:1100px){.th-hero-inner{grid-template-columns:1fr;gap:30px}.th-hero-visual{max-width:360px;margin:0 auto}.th-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:820px){.th-grid{grid-template-columns:repeat(2,1fr)}.th-foot-box{flex-direction:column;align-items:flex-start}}@media (max-width:520px){.th-grid{grid-template-columns:1fr}.th-cats{overflow-x:auto;flex-wrap:nowrap;width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:none}.th-cats::-webkit-scrollbar{display:none}}