:root{--tmv-color-primary:#0b06a7;--tmv-color-primary-dark:#08048a;--tmv-color-primary-light:#eeefff;--tmv-color-primary-rgb:11, 6, 167;--tmv-color-accent:#0ed5fd;--tmv-color-accent-dark:#067a94;--tmv-color-accent-light:#e6fbff;--tmv-color-accent-rgb:14, 213, 253;--tmv-color-highlight:#ff6b35;--tmv-color-highlight-light:#fff0eb;--tmv-color-success:#0ed5fd;--tmv-color-danger:#e5484d;--tmv-color-dark:#0d1117;--tmv-color-text:#1a202c;--tmv-color-text-primary:#1a202c;--tmv-color-text-secondary:#4a5568;--tmv-color-text-muted:#5a6a7e;--tmv-color-border:#d1d8e0;--tmv-color-bg:#fff;--tmv-color-bg-light:#f7f9fc;--tmv-color-bg-alt:#eef2f8;--tmv-color-surface:#f7f9fc;--tmv-color-white:#fff;--tmv-font-display:"Space Grotesk", sans-serif;--tmv-font-heading:"Space Grotesk", sans-serif;--tmv-font-body:"Inter", sans-serif;--tmv-font-mono:"JetBrains Mono", monospace;--tmv-gradient-primary:linear-gradient(135deg, var(--tmv-color-primary), var(--tmv-color-accent));--tmv-fs-xs:.75rem;--tmv-fs-sm:.875rem;--tmv-fs-base:1rem;--tmv-fs-md:1.125rem;--tmv-fs-lg:1.25rem;--tmv-fs-xl:1.5rem;--tmv-fs-2xl:1.875rem;--tmv-fs-3xl:2.25rem;--tmv-fs-4xl:3rem;--tmv-fs-5xl:3.75rem;--tmv-fs-6xl:4.5rem;--tmv-radius-xs:4px;--tmv-radius-sm:8px;--tmv-radius-md:12px;--tmv-radius-lg:16px;--tmv-radius-xl:24px;--tmv-radius-2xl:32px;--tmv-radius-full:9999px;--tmv-shadow-xs:0 1px 3px #0000000f;--tmv-shadow-sm:0 4px 12px #0b06a714;--tmv-shadow-md:0 8px 32px #0b06a71f;--tmv-shadow-lg:0 16px 48px #0b06a729;--tmv-shadow-xl:0 24px 64px #0b06a733;--tmv-shadow-card:0 2px 20px #0000000f;--tmv-shadow-hover:0 12px 40px #0b06a72e;--tmv-transition:all .3s cubic-bezier(.4, 0, .2, 1);--tmv-transition-base:all .3s cubic-bezier(.4, 0, .2, 1);--tmv-transition-fast:all .15s cubic-bezier(.4, 0, .2, 1);--tmv-transition-slow:all .5s cubic-bezier(.4, 0, .2, 1);--section-py:100px;--navbar-height:80px;--z-sticky:1000;--z-overlay:1100;--z-header-open:1300}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden}body{font-family:var(--tmv-font-body);font-size:var(--tmv-fs-base);color:var(--tmv-color-text);background-color:var(--tmv-color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.7;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--tmv-color-primary);transition:var(--tmv-transition);text-decoration:none}a:hover{color:var(--tmv-color-primary-dark)}ul,ol{margin:0;padding:0;list-style:none}::selection{background:var(--tmv-color-primary);color:var(--tmv-color-white)}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.02em;font-weight:700;line-height:1.2}h1,.h1{font-size:clamp(2.5rem, 5vw, var(--tmv-fs-6xl))}h2,.h2{font-size:clamp(2rem, 4vw, var(--tmv-fs-4xl))}h3,.h3{font-size:clamp(1.5rem, 3vw, var(--tmv-fs-2xl))}h4,.h4{font-size:var(--tmv-fs-xl)}h5,.h5{font-size:var(--tmv-fs-lg)}h6,.h6{font-size:var(--tmv-fs-base)}p{font-size:var(--tmv-fs-base);color:var(--tmv-color-text-secondary);line-height:1.8}.display-text{font-family:var(--tmv-font-display);letter-spacing:-.03em;font-weight:800}.text-gradient{background:linear-gradient(135deg, var(--tmv-color-primary) 0%, var(--tmv-color-accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.section-tag{background:var(--tmv-color-primary-light);color:var(--tmv-color-primary);font-family:var(--tmv-font-body);font-size:var(--tmv-fs-sm);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--tmv-radius-full);align-items:center;gap:.5rem;margin-bottom:1rem;padding:.375rem 1rem;font-weight:600;display:inline-flex}.section-tag.accent{background:var(--tmv-color-accent-light);color:var(--tmv-color-accent-dark)}.section-tag.highlight{background:var(--tmv-color-highlight-light);color:var(--tmv-color-highlight)}.section-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.03em;margin-bottom:1rem;font-size:clamp(1.875rem,3.5vw,2.75rem);font-weight:800;line-height:1.15}.section-subtitle{max-width:540px;color:var(--tmv-color-text-secondary);line-height:1.75;font-size:var(--tmv-fs-base)}.section-subtitle.mx-auto{max-width:600px}@media (max-width:480px){.cta-section .section-tag{font-size:var(--tmv-fs-xs)}}.section-py{padding-top:var(--section-py);padding-bottom:var(--section-py)}.section-pt{padding-top:var(--section-py)}.section-pb{padding-bottom:var(--section-py)}.bg-light-custom{background-color:var(--tmv-color-bg-light)}.bg-alt{background-color:var(--tmv-color-bg-alt)}.bg-dark-custom{background-color:var(--tmv-color-dark)}.bg-primary-custom{background-color:var(--tmv-color-primary)}.dot-grid-bg{background-image:radial-gradient(circle,#0b06a71f 1px,#0000 1px);background-size:28px 28px}.line-grid-bg{background-image:linear-gradient(#0b06a70f 1px,#0000 1px),linear-gradient(90deg,#0b06a70f 1px,#0000 1px);background-size:40px 40px}.btn-primary-custom{background:var(--tmv-color-primary);color:var(--tmv-color-white);font-family:var(--tmv-font-body);font-weight:600;font-size:var(--tmv-fs-base);border-radius:var(--tmv-radius-full);border:2px solid var(--tmv-color-primary);cursor:pointer;transition:var(--tmv-transition);white-space:nowrap;align-items:center;gap:.5rem;padding:.875rem 1.75rem;display:inline-flex}.btn-primary-custom:hover{background:var(--tmv-color-primary-dark);border-color:var(--tmv-color-primary-dark);color:var(--tmv-color-white);box-shadow:var(--tmv-shadow-md);transform:translateY(-2px)}.btn-outline-custom{color:var(--tmv-color-text);font-family:var(--tmv-font-body);font-weight:600;font-size:var(--tmv-fs-base);border-radius:var(--tmv-radius-full);border:2px solid var(--tmv-color-border);cursor:pointer;transition:var(--tmv-transition);white-space:nowrap;background:0 0;align-items:center;gap:.5rem;padding:.875rem 1.75rem;display:inline-flex}.btn-outline-custom:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary);box-shadow:var(--tmv-shadow-sm);transform:translateY(-2px)}.btn-accent-custom{background:var(--tmv-color-accent);color:var(--tmv-color-primary);font-family:var(--tmv-font-body);font-weight:600;font-size:var(--tmv-fs-base);border-radius:var(--tmv-radius-full);border:2px solid var(--tmv-color-accent);cursor:pointer;transition:var(--tmv-transition);white-space:nowrap;align-items:center;gap:.5rem;padding:.875rem 1.75rem;display:inline-flex}.btn-accent-custom:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:var(--tmv-color-white);box-shadow:var(--tmv-shadow-md);transform:translateY(-2px)}.btn-sm-custom{font-size:var(--tmv-fs-sm);padding:.625rem 1.25rem}.btn-lg-custom{font-size:var(--tmv-fs-md);padding:1.125rem 2.25rem}@media (max-width:991px){.btn-lg-custom{font-size:var(--tmv-fs-base);padding:.875rem 1.75rem}}.badge-custom{border-radius:var(--tmv-radius-full);font-size:var(--tmv-fs-xs);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:.375rem;padding:.375rem .875rem;font-weight:600;display:inline-flex}.badge-primary{background:var(--tmv-color-primary-light);color:var(--tmv-color-primary)}.badge-accent{background:var(--tmv-color-accent-light);color:var(--tmv-color-accent-dark)}.badge-highlight{background:var(--tmv-color-highlight-light);color:var(--tmv-color-highlight)}.divider-line{background:var(--tmv-gradient-primary);border-radius:var(--tmv-radius-full);width:60px;height:3px;margin-bottom:1.5rem}.preloader{z-index:9999;background:#0d1117;justify-content:center;align-items:center;width:100%;height:100dvh;margin:0;transition:transform .85s cubic-bezier(.76,0,.24,1);display:flex;position:fixed;inset:0;overflow:hidden}.preloader.slide-up{transform:translateY(-100%)}.preloader-inner{flex-direction:column;align-items:center;gap:clamp(1.125rem,4vw,1.75rem);max-width:100%;padding-inline:1.5rem;transition:opacity .3s;display:flex}.preloader.fade-content .preloader-inner{opacity:0}.preloader-bar{border-radius:var(--tmv-radius-full);background:#ffffff1f;width:clamp(140px,40vw,200px);max-width:100%;height:3px;overflow:hidden}.preloader-bar-fill{background:var(--tmv-gradient-primary);border-radius:var(--tmv-radius-full);width:0;height:100%;animation:1.5s cubic-bezier(.4,0,.2,1) forwards preloaderFill}@keyframes preloaderFill{0%{width:0}60%{width:70%}to{width:100%}}noscript .preloader{display:none!important}.navbar-logo-img{object-fit:contain;width:auto;max-width:240px;height:52px;display:block}.preloader-logo-img{object-fit:contain;width:auto;max-width:min(280px,80vw);height:72px;display:block}.footer-logo-img{object-fit:contain;width:auto;max-width:200px;height:52px;margin-bottom:0;display:block}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--tmv-color-bg-light)}::-webkit-scrollbar-thumb{background:var(--tmv-color-primary);border-radius:var(--tmv-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--tmv-color-primary-dark)}.back-to-top{background:var(--tmv-color-primary);width:48px;height:48px;color:var(--tmv-color-white);border-radius:var(--tmv-radius-md);z-index:99;opacity:0;visibility:hidden;transition:var(--tmv-transition);box-shadow:var(--tmv-shadow-md);border:none;justify-content:center;align-items:center;font-size:1.125rem;display:flex;position:fixed;bottom:5.75rem;right:2rem;transform:translateY(16px)}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--tmv-color-primary-dark);color:var(--tmv-color-white);box-shadow:var(--tmv-shadow-lg);transform:translateY(-4px)}@media (max-width:1199px){.back-to-top{bottom:5.25rem;right:1rem}}.header-scroll-sentinel{pointer-events:none;visibility:hidden;width:1px;height:1px;position:absolute;top:50px;left:0}.site-header{width:100%;z-index:var(--z-sticky);background:#fff;border-bottom:1px solid #0000;padding:.1rem 0;transition:top .35s,width .35s,left .35s,right .35s,background .35s,box-shadow .35s,padding .35s,border-radius .35s,border-color .35s;position:fixed;top:0;left:0;right:0}body{padding-top:var(--navbar-height,80px)}.site-header.scrolled{-webkit-backdrop-filter:blur(18px)saturate(180%);backdrop-filter:blur(18px)saturate(180%);--navbar-height:72px;background:#ffffffeb;border:1px solid #0f172a14;border-radius:999px;width:auto;max-width:70%;margin:auto;padding:.45rem 30px;top:12px;left:16px;right:16px;overflow:visible;box-shadow:0 10px 40px #0f172a24,0 2px 8px #0f172a0f}.site-header.scrolled .main-nav .nav-link{padding-top:.7rem;padding-bottom:.7rem}.site-header.scrolled .main-nav .nav-link:before{bottom:10px}.site-header.scrolled .navbar-logo-img{height:40px}.site-header.header-dark.scrolled{background:#0d1117e0;border-color:#ffffff24;box-shadow:0 10px 40px #00000047,0 2px 8px #00000029}.navbar-brand-text,.navbar-brand{font-family:var(--tmv-font-display);color:var(--tmv-color-dark);letter-spacing:-.04em;font-size:1.625rem;font-weight:800;line-height:1;outline:none!important}.navbar-brand-text span{color:var(--tmv-color-primary)}.navbar-brand-dot{background:var(--tmv-color-accent);vertical-align:super;border-radius:50%;width:6px;height:6px;margin-left:2px;display:inline-block}.main-nav .nav-link{font-family:var(--tmv-font-body);color:var(--tmv-color-text);transition:var(--tmv-transition);white-space:nowrap;padding:1.75rem .65rem;font-size:.875rem;font-weight:500;position:relative}.main-nav .nav-link:before{content:"";background:var(--tmv-color-primary);border-radius:var(--tmv-radius-full);height:2px;transition:var(--tmv-transition);transform-origin:0;position:absolute;bottom:22px;left:.65rem;right:.65rem;transform:scaleX(0)}.main-nav .nav-link:hover{color:var(--tmv-color-primary)}.main-nav .nav-link:hover:before{transform:scaleX(1)}.main-nav .nav-link.active{color:var(--tmv-color-primary)}.main-nav .nav-link.active:before{transform:scaleX(1)}.nav-actions{align-items:center;gap:.75rem;display:flex}.nav-cta{background:var(--tmv-color-primary);color:var(--tmv-color-white);font-family:var(--tmv-font-body);border-radius:var(--tmv-radius-full);border:2px solid var(--tmv-color-primary);transition:var(--tmv-transition);white-space:nowrap;cursor:pointer;align-items:center;padding:.625rem 1.375rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.nav-cta:hover{background:var(--tmv-color-primary-dark);border-color:var(--tmv-color-primary-dark);color:var(--tmv-color-white);box-shadow:var(--tmv-shadow-sm);transform:translateY(-1px)}.nav-outline{color:var(--tmv-color-text);font-family:var(--tmv-font-body);border-radius:var(--tmv-radius-full);border:2px solid var(--tmv-color-border);transition:var(--tmv-transition);padding:.625rem 1.375rem;font-size:.9375rem;font-weight:600}.nav-outline:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.site-header.header-dark .navbar-brand-text{color:var(--tmv-color-white)}.site-header.header-dark .main-nav .nav-link{color:#ffffffd9}.site-header.header-dark .main-nav .nav-link:hover,.site-header.header-dark .main-nav .nav-link.active{color:var(--tmv-color-white)}.site-header.header-dark .nav-outline{color:#ffffffd9;border-color:#ffffff4d}.site-header.header-dark .nav-outline:hover{color:var(--tmv-color-white);border-color:var(--tmv-color-white);background:#ffffff14}.site-header.header-dark .nav-cta{background:var(--tmv-color-white);color:var(--tmv-color-primary);border-color:var(--tmv-color-white)}.site-header.header-dark .nav-cta:hover{color:var(--tmv-color-white);background:0 0;border-color:#fff9}.site-header.header-dark .navbar-toggler-custom{border-color:#ffffff4d}.site-header.header-dark .navbar-toggler-custom span{background:var(--tmv-color-white)}.dropdown-menu-custom{border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);box-shadow:var(--tmv-shadow-lg);background:var(--tmv-color-white);min-width:220px;padding:.75rem}.dropdown-item-custom{border-radius:var(--tmv-radius-md);color:var(--tmv-color-text);transition:var(--tmv-transition);align-items:center;gap:.75rem;padding:.625rem .875rem;font-size:.9375rem;font-weight:500;display:flex}.dropdown-item-custom:hover{background:var(--tmv-color-primary-light);color:var(--tmv-color-primary)}.dropdown-item-custom .icon{background:var(--tmv-color-bg-light);border-radius:var(--tmv-radius-sm);width:32px;height:32px;color:var(--tmv-color-primary);transition:var(--tmv-transition);flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;display:flex}.dropdown-item-custom:hover .icon{background:var(--tmv-color-primary);color:var(--tmv-color-white)}.navbar-toggler-custom{border:2px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm);cursor:pointer;width:40px;height:40px;transition:var(--tmv-transition);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;display:flex}.navbar-toggler-custom span{background:var(--tmv-color-text);border-radius:var(--tmv-radius-full);width:20px;height:2px;transition:var(--tmv-transition);display:block}.navbar-toggler-custom:hover{border-color:var(--tmv-color-primary)}.navbar-toggler-custom:hover span{background:var(--tmv-color-primary)}.mobile-nav-overlay{z-index:1050;-webkit-backdrop-filter:blur(2px);background:#0f172a73;display:none;position:fixed;inset:0}.mobile-nav-overlay.is-open{display:block}.mobile-nav-panel{display:none}.site-header.is-open{z-index:var(--z-header-open,1300)}.site-header:has(+.mobile-nav-overlay.is-open){z-index:var(--z-header-open,1300)}.hero-section{min-height:calc(100vh - var(--navbar-height));background-color:var(--tmv-color-white);align-items:center;padding:50px 0;display:flex;position:relative;overflow:hidden}.hero-bg-pattern{z-index:0;background-image:radial-gradient(circle,#0b06a712 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.hero-blob-1{z-index:0;background:radial-gradient(circle,#0b06a71f 0%,#0000 70%);border-radius:50%;width:600px;height:600px;animation:8s ease-in-out infinite blobFloat;position:absolute;top:-15%;right:-10%}.hero-blob-2{z-index:0;background:radial-gradient(circle,#0ed5fd1a 0%,#0000 70%);border-radius:50%;width:500px;height:500px;animation:10s ease-in-out infinite reverse blobFloat;position:absolute;bottom:-20%;left:-10%}.hero-particles{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}@keyframes blobFloat{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-30px)scale(1.05)}66%{transform:translate(-20px,20px)scale(.95)}}.hero-content{z-index:1;position:relative}.hero-tag{background:var(--tmv-color-primary-light);max-width:100%;color:var(--tmv-color-primary);font-size:var(--tmv-fs-sm);border-radius:var(--tmv-radius-full);border:1px solid #0b06a733;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.25rem .875rem;font-weight:600;animation:.6s forwards slideDown;display:inline-flex}@media (max-width:575px){.hero-tag{font-size:var(--tmv-fs-xs)}}.hero-tag-rotate{line-height:1.25;transition:opacity .35s,transform .35s;display:inline-block}.hero-tag-rotate.is-out{opacity:0;transform:translateY(-6px)}.hero-tag .dot{background:var(--tmv-color-accent);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.hero-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.04em;margin-bottom:1.5rem;font-size:clamp(2.5rem,5.5vw,5rem);font-weight:800;line-height:1.1}.hero-title .typed-wrap{white-space:nowrap;display:inline;position:relative}.hero-title .hero-typed.text-gradient{display:inline}.hero-title .typed-cursor,.typed-cursor{vertical-align:baseline;margin-left:2px;font-weight:300;animation:.7s step-end infinite typed-cursor-blink;display:inline;color:var(--tmv-color-primary)!important;-webkit-text-fill-color:var(--tmv-color-primary)!important;background:0 0!important;background-clip:unset!important;-webkit-background-clip:unset!important}@keyframes typed-cursor-blink{0%,to{opacity:1}50%{opacity:0}}@media (prefers-reduced-motion:reduce){.typed-cursor{opacity:1;animation:none}}.hero-description{color:var(--tmv-color-text-muted);max-width:520px;margin-bottom:2.5rem}@media (max-width:991px){.hero-title>br{display:none}.hero-description{max-width:100%}}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:3rem;display:flex}.hero-play-btn{color:var(--tmv-color-text);font-weight:600;font-size:var(--tmv-fs-base);transition:var(--tmv-transition);align-items:center;gap:.75rem;display:inline-flex}.hero-play-btn .play-icon{background:var(--tmv-color-white);width:52px;height:52px;box-shadow:var(--tmv-shadow-md);color:var(--tmv-color-primary);transition:var(--tmv-transition);border:2px solid var(--tmv-color-border);border-radius:50%;justify-content:center;align-items:center;font-size:1.125rem;display:flex}.hero-play-btn:hover{color:var(--tmv-color-primary)}.hero-play-btn:hover .play-icon{background:var(--tmv-color-primary);color:var(--tmv-color-white);box-shadow:var(--tmv-shadow-lg);transform:scale(1.05)}@media (max-width:480px){.home2-hero .hero-play-btn{display:none}}.hero-stats{flex-wrap:wrap;align-items:center;gap:2rem;display:flex}.hero-stat-item{text-align:left}.hero-stat-number{font-family:var(--tmv-font-display);font-weight:800;font-size:var(--tmv-fs-2xl);color:var(--tmv-color-text);letter-spacing:-.03em;line-height:1}.hero-stat-label{color:var(--tmv-color-text-muted);margin-top:.25rem}.hero-stat-divider{background:var(--tmv-color-border);width:1px;height:40px}.hero-visual{z-index:1;position:relative}.hero-card-main{background:var(--tmv-color-white);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);box-shadow:var(--tmv-shadow-xl);position:relative;overflow:hidden}.hero-photo{border-radius:var(--tmv-radius-xl);box-shadow:var(--tmv-shadow-xl);border:1px solid var(--tmv-color-border);aspect-ratio:4/5;background:var(--tmv-color-bg-light);position:relative;overflow:hidden}.hero-photo img{object-fit:cover;width:100%;height:100%;display:block}.hero-photo:after{content:"";background:linear-gradient(160deg, rgba(var(--tmv-color-primary-rgb), .1), rgba(var(--tmv-color-accent-rgb), .1));pointer-events:none;position:absolute;inset:0}.hero-bento-col{z-index:1;position:relative}.hero-bento{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:minmax(0,auto);gap:1rem;display:grid}.bento-tile{border-radius:var(--tmv-radius-xl);min-width:0;box-shadow:var(--tmv-shadow-md);border:1px solid var(--tmv-color-border);transition:var(--tmv-transition);position:relative;overflow:hidden}.bento-tile:hover{box-shadow:var(--tmv-shadow-hover);transform:translateY(-4px)}.bento-photo-lg,.bento-dark{grid-column:1/-1}.bento-photo-lg{height:240px}.bento-photo-lg img,.bento-photo-sm img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.4,0,.2,1);display:block}.bento-photo-lg:hover img,.bento-photo-sm:hover img{transform:scale(1.06)}.bento-badge{border-radius:var(--tmv-radius-full);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-primary);box-shadow:var(--tmv-shadow-sm);background:#ffffffeb;align-items:center;gap:.4rem;padding:.4rem .8rem;font-weight:600;display:inline-flex;position:absolute;top:.9rem;left:.9rem}.bento-badge i{color:var(--tmv-color-accent)}.bento-accent{color:#fff;background:var(--tmv-gradient-primary);border-color:#0000;flex-direction:column;justify-content:center;height:190px;padding:1.5rem;display:flex}.bento-accent-icon{border-radius:var(--tmv-radius-md);background:#fff3;place-items:center;width:46px;height:46px;margin-bottom:.9rem;font-size:1.15rem;display:grid}.bento-accent-num{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-4xl);line-height:1}.bento-accent-label{font-size:var(--tmv-fs-sm);color:#ffffffd9;margin-top:.4rem}@media (max-width:1399px){.bento-accent-num{font-size:var(--tmv-fs-3xl)}}.bento-photo-sm{height:190px}.bento-tag{border-radius:var(--tmv-radius-full);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:var(--tmv-fs-xs);letter-spacing:.04em;background:#0d1117b3;padding:.35rem .75rem;font-weight:600;position:absolute;bottom:.9rem;left:.9rem}.bento-dark{background:var(--tmv-color-dark);border-color:#0000;justify-content:space-between;align-items:center;gap:1rem;height:110px;padding:0 1.4rem;display:flex}.bento-clients{align-items:center;gap:.9rem;display:flex}.bento-avatars{display:flex}.bento-avatars img{object-fit:cover;border:2px solid var(--tmv-color-dark);border-radius:50%;width:40px;height:40px;margin-left:-12px}.bento-avatars img:first-child{margin-left:0}.bento-clients-num{font-family:var(--tmv-font-display);font-weight:600;font-size:var(--tmv-fs-base);color:#fff}.bento-stars{color:#f5a623;align-items:center;gap:.2rem;margin-top:.25rem;font-size:.7rem;display:flex}.bento-stars span{color:#fff9;font-size:var(--tmv-fs-xs);margin-left:.35rem}.bento-play{color:#fff;background:var(--tmv-gradient-primary);width:54px;height:54px;box-shadow:0 0 0 0 rgba(var(--tmv-color-accent-rgb), .5);transition:var(--tmv-transition-fast);border-radius:50%;flex:none;place-items:center;font-size:1.1rem;text-decoration:none;animation:2.4s ease-out infinite bentoPulse;display:grid}.bento-play:hover{color:#fff;transform:scale(1.08)}@keyframes bentoPulse{0%{box-shadow:0 0 0 0 rgba(var(--tmv-color-accent-rgb), .45)}70%{box-shadow:0 0 0 16px rgba(var(--tmv-color-accent-rgb), 0)}to{box-shadow:0 0 0 0 rgba(var(--tmv-color-accent-rgb), 0)}}@media (max-width:575px){.hero-bento{grid-template-columns:auto}.bento-accent-num{font-size:var(--tmv-fs-3xl)}.bento-avatars{display:none}}.hero-card-header{background:var(--tmv-color-dark);align-items:center;gap:.5rem;padding:1rem 1.25rem;display:flex}.header-dot{border-radius:50%;width:12px;height:12px}.dot-red{background:#ff5f57}.dot-yellow{background:#febc2e}.dot-green{background:#28c840}.hero-card-header-title{font-family:var(--tmv-font-mono);font-size:var(--tmv-fs-xs);color:#ffffff80;margin-left:.5rem}.hero-card-body{padding:1.5rem}.metric-row{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.metric-item{background:var(--tmv-color-bg-light);border-radius:var(--tmv-radius-md);text-align:center;border:1px solid var(--tmv-color-border);padding:1rem}.metric-value{font-family:var(--tmv-font-display);font-weight:800;font-size:var(--tmv-fs-xl);letter-spacing:-.03em;margin-bottom:.25rem}.metric-label{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-muted);font-weight:500}.metric-up{color:var(--tmv-color-accent)}.metric-primary{color:var(--tmv-color-primary)}.metric-highlight{color:var(--tmv-color-highlight)}.chart-bar-wrap{border-bottom:1px solid var(--tmv-color-border);align-items:flex-end;gap:.5rem;height:80px;margin-bottom:1rem;padding:.5rem 0;display:flex}.chart-bar{border-radius:var(--tmv-radius-xs) var(--tmv-radius-xs) 0 0;background:var(--tmv-color-primary-light);transition:var(--tmv-transition-slow);flex:1;position:relative;overflow:hidden}.chart-bar:after{content:"";background:linear-gradient(#ffffff4d 0%,#0000 100%);height:40%;position:absolute;top:0;left:0;right:0}.chart-bar.active{background:linear-gradient(180deg, var(--tmv-color-primary) 0%, var(--tmv-color-primary-dark) 100%)}.chart-bar.accent{background:linear-gradient(180deg, var(--tmv-color-accent) 0%, var(--tmv-color-accent-dark) 100%)}.progress-items{flex-direction:column;gap:.75rem;display:flex}.progress-item{align-items:center;gap:.75rem;display:flex}.progress-label{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text);min-width:60px;font-weight:600}.progress-track{background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-full);flex:1;height:6px;overflow:hidden}.progress-fill{border-radius:var(--tmv-radius-full);background:var(--tmv-gradient-primary);height:100%;animation:1.5s forwards progressGrow}@keyframes progressGrow{0%{width:0}}.progress-pct{font-size:var(--tmv-fs-xs);color:var(--tmv-color-primary);text-align:right;min-width:36px;font-weight:700}.hero-float-card{background:var(--tmv-color-white);border-radius:var(--tmv-radius-lg);box-shadow:var(--tmv-shadow-lg);border:1px solid var(--tmv-color-border);z-index:2;padding:.875rem 1.125rem;animation:5s ease-in-out infinite floatCard;position:absolute}.hero-float-card-1{animation-delay:0s;top:-1.5rem;left:-2rem}.hero-float-card-2{animation-delay:2.5s;bottom:-1.5rem;right:-1.5rem}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float-card-icon{border-radius:var(--tmv-radius-sm);background:var(--tmv-color-primary-light);width:36px;height:36px;color:var(--tmv-color-primary);justify-content:center;align-items:center;margin-bottom:.375rem;font-size:1rem;display:flex}.float-card-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-sm);color:var(--tmv-color-text);line-height:1.2}.float-card-sub{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-muted);margin-top:.125rem}.home2-hero{background:#0b1220;align-items:center;min-height:calc(100vh - 95px);padding:5rem 0;display:flex;position:relative;overflow:hidden}.home2-hero__bg{z-index:0;background-position:50%;background-size:cover;position:absolute;inset:0}.home2-hero__overlay{z-index:1;background:linear-gradient(100deg,#081020f0 0%,#081020c7 42%,#08102059 100%),linear-gradient(#08102000,#0810208c);position:absolute;inset:0}.home2-hero .container{z-index:2;position:relative}.home2-hero__inner{color:#fff;max-width:680px}.home2-hero__tag{border-radius:var(--tmv-radius-full);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:var(--tmv-fs-sm);letter-spacing:.01em;background:#ffffff14;border:1px solid #ffffff29;align-items:center;gap:.55rem;margin-bottom:1.5rem;padding:.5rem 1rem;font-weight:500;display:inline-flex}.home2-hero__tag .dot{background:var(--tmv-color-accent);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #0ed5fd40}.home2-hero__title{font-family:var(--tmv-font-display);letter-spacing:-.02em;color:#fff;margin-bottom:1.4rem;font-size:clamp(2.5rem,5.2vw,4.25rem);font-weight:700;line-height:1.05}.home2-hero__title .text-gradient{background:linear-gradient(90deg,#0ed5fd,#fff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.home2-hero__desc{color:#ffffffd1;max-width:560px;margin-bottom:2.2rem}.home2-hero__actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:3rem;display:flex}.home2-hero__trust{flex-wrap:wrap;gap:2.5rem;display:flex}.home2-hero__trust-item{flex-direction:column;display:flex}.home2-hero__trust-num{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-3xl);color:#fff;line-height:1}.home2-hero__trust-label{color:#fff9;margin-top:.4rem}.home2-feature-strip{z-index:5;margin-top:-60px;position:relative}.home2-fcard{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);height:100%;box-shadow:var(--tmv-shadow-lg);transition:var(--tmv-transition);align-items:flex-start;gap:1.1rem;padding:1.5rem;display:flex}.home2-fcard:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.home2-fcard__ico{border-radius:var(--tmv-radius-md);flex:none;width:56px;height:56px;margin-bottom:0;font-size:0}.home2-fcard__ico svg{width:28px;height:28px}.home2-fcard p{color:var(--tmv-color-text-secondary);margin:0}@media (max-width:1299px){.home2-fcard{padding:1.2rem}}@media (max-width:991px){.home2-feature-strip{margin-top:2.5rem}}.home2-about__media{border-radius:var(--tmv-radius-2xl);box-shadow:var(--tmv-shadow-lg);position:relative;overflow:hidden}.home2-about__media img{object-fit:cover;width:100%;height:100%;display:block}.home2-about__badge{border-radius:var(--tmv-radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--tmv-shadow-md);background:#ffffffeb;align-items:center;gap:1rem;padding:1.1rem 1.4rem;display:flex;position:absolute;bottom:1.5rem;left:1.5rem}.home2-about__badge-num{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-4xl);background:var(--tmv-gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;line-height:1}.home2-about__badge-label{max-width:150px}.home2-feature-list{gap:1.1rem;margin:1.75rem 0 2rem;padding:0;list-style:none;display:grid}.home2-feature-list li{align-items:flex-start;gap:.9rem;display:flex}.home2-feature-ico{border-radius:var(--tmv-radius-sm);background:var(--tmv-color-primary-light);width:44px;height:44px;color:var(--tmv-color-primary);font-size:var(--tmv-fs-lg);flex:none;place-items:center;display:grid}.home2-feature-list h6,.home2-feature-list .h6{font-family:var(--tmv-fs-lg)}.home2-scard{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);height:100%;transition:var(--tmv-transition);overflow:hidden}.home2-scard:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.home2-scard__media{aspect-ratio:16/10;position:relative}.home2-scard__media img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1)}.home2-scard:hover .home2-scard__media img{transform:scale(1.07)}.home2-scard__ico{border-radius:var(--tmv-radius-md);background:var(--tmv-color-primary-light);width:52px;height:52px;color:var(--tmv-color-primary);place-items:center;font-size:1.15rem;display:grid;position:absolute;bottom:-19px;left:1.1rem}.home2-scard__body{padding:2rem 1.4rem 1.6rem}.home2-scard__body h5,.home2-scard__body .h5{font-family:var(--tmv-font-display);font-weight:600;font-size:var(--tmv-fs-lg);margin:0 0 .6rem}.home2-scard__body p{color:var(--tmv-color-text-secondary);font-size:var(--tmv-fs-base);margin:0 0 1rem;line-height:1.65}.home2-scard__link{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);align-items:center;gap:.4rem;font-weight:600;text-decoration:none;display:inline-flex}.home2-scard__link:hover{gap:.7rem}.home2-stats{background:#0b1220;padding:90px 0;position:relative;overflow:hidden}.home2-stats__bg{opacity:.18;background-position:50%;background-size:cover;position:absolute;inset:0}.home2-stats__overlay{background:linear-gradient(120deg,#0b06a7eb,#0b1220eb);position:absolute;inset:0}.home2-stats .container{z-index:2;position:relative}.home2-stat{text-align:center;color:#fff;padding:0 14px}.home2-stat .counter-number{font-family:var(--tmv-font-display);font-size:clamp(2rem,4vw,3.25rem);font-weight:700;line-height:1;display:block}.home2-stat__label{font-size:var(--tmv-fs-base);color:#ffffffc7;letter-spacing:.02em;margin-top:.6rem}.home2-member{text-align:center;background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);transition:var(--tmv-transition);padding:1.8rem 1.2rem}.home2-member:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.home2-member__photo{object-fit:cover;border:4px solid var(--tmv-color-primary-light);border-radius:50%;width:110px;height:110px;margin:0 auto 1rem}.home2-member h6,.home2-member .h6{font-family:var(--tmv-font-display);font-weight:600;font-size:var(--tmv-fs-md);margin:0 0 .2rem}.home2-member span{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary)}.home2-member__socials{justify-content:center;gap:.6rem;margin-top:.9rem;display:flex}.home2-member__socials a{background:var(--tmv-color-bg-light);width:32px;height:32px;color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-fast);border-radius:50%;place-items:center;font-size:.85rem;display:grid}.home2-member__socials a:hover{background:var(--tmv-color-primary);color:#fff}.home2-cta{text-align:center;padding:110px 0;position:relative;overflow:hidden}.home2-cta__bg{background-position:50%;background-size:cover;position:absolute;inset:0}.home2-cta__overlay{background:linear-gradient(120deg,#0b06a7ed,#0ed5fdd9);position:absolute;inset:0}.home2-cta .container{z-index:2;position:relative}.home2-cta h2,.home2-cta .h2{font-family:var(--tmv-font-display);color:#fff;letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(2rem,4vw,3rem);font-weight:700}.home2-cta p{color:#ffffffe6;font-size:var(--tmv-fs-md);max-width:620px;margin:0 auto 2rem}@media (max-width:991px){.home2-hero{min-height:auto;padding:3.5rem 0}.home2-hero__trust{gap:1.75rem}.home2-about__media{margin-bottom:2rem}}@media (max-width:575px){.home2-hero__trust-num{font-size:var(--tmv-fs-2xl)}.home2-hero__actions{gap:.75rem}}.clients-section{border-top:1px solid var(--tmv-color-border);border-bottom:1px solid var(--tmv-color-border);background:var(--tmv-color-bg-light);padding:3rem 0;overflow:hidden}.clients-label{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;margin-right:2rem;font-weight:600}.marquee-track{align-items:center;gap:4rem;width:max-content;animation:28s linear infinite marqueeScroll;display:flex}.marquee-track-2{animation:28s linear -14s infinite marqueeScroll2}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marqueeScroll2{0%{transform:translate(-50%)}to{transform:translate(0)}}.client-logo-item{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text-muted);letter-spacing:-.03em;white-space:nowrap;transition:var(--tmv-transition);opacity:.5;align-items:center;gap:.5rem;display:flex}.client-logo-item:hover{opacity:1;color:var(--tmv-color-primary)}.client-logo-item i{font-size:1.5rem}.about-image-wrap{border-radius:var(--tmv-radius-xl);position:relative;overflow:visible}.about-image-main{border-radius:var(--tmv-radius-xl);box-shadow:var(--tmv-shadow-xl);z-index:1;position:relative;overflow:hidden}.about-image-main img{object-fit:cover;width:100%;height:500px}.about-image-accent{border-radius:var(--tmv-radius-lg);width:200px;box-shadow:var(--tmv-shadow-lg);border:4px solid var(--tmv-color-white);z-index:2;position:absolute;bottom:-2rem;right:-2rem;overflow:hidden}.about-image-accent img{object-fit:cover;width:100%;height:150px}.about-exp-badge{background:var(--tmv-color-primary);color:var(--tmv-color-white);border-radius:var(--tmv-radius-lg);box-shadow:var(--tmv-shadow-lg);z-index:3;text-align:center;padding:1.25rem 1.5rem;position:absolute;top:2rem;left:-2rem}.about-exp-number{font-family:var(--tmv-font-display);letter-spacing:-.04em;font-size:2.5rem;font-weight:800;line-height:1}.about-exp-text{font-size:var(--tmv-fs-sm);opacity:.85;margin-top:.25rem;font-weight:600;line-height:1.3}.about-checkpoints{flex-direction:column;gap:.875rem;margin:1.5rem 0;display:flex}.about-checkpoint{align-items:flex-start;gap:.875rem;display:flex}.checkpoint-icon{background:var(--tmv-color-accent-light);width:24px;height:24px;color:var(--tmv-color-accent-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:.125rem;font-size:.75rem;display:flex}.checkpoint-text{color:var(--tmv-color-text-secondary);line-height:1.6}.service-card{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);height:100%;transition:var(--tmv-transition);padding:2rem;position:relative;overflow:hidden}.service-card:before{content:"";background:var(--tmv-gradient-primary);height:3px;transition:var(--tmv-transition);transform-origin:0;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.service-card:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.service-card:hover:before{transform:scaleX(1)}.service-icon{width:68px;height:68px;transition:var(--tmv-transition);background:var(--tmv-color-primary-light);color:var(--tmv-color-primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.5rem;font-size:1.75rem;display:flex}.service-icon svg{flex-shrink:0;width:35px;height:35px;transition:inherit}.service-card:hover .service-icon{background:var(--tmv-color-primary);color:var(--tmv-color-white);transform:scale(1.1)rotate(-5deg)}.service-icon.accent-bg{background:var(--tmv-color-accent-light);color:var(--tmv-color-accent-dark)}.service-card:hover .service-icon.accent-bg{background:var(--tmv-color-accent);color:var(--tmv-color-white)}.service-icon.highlight-bg{background:var(--tmv-color-highlight-light);color:var(--tmv-color-highlight)}.service-card:hover .service-icon.highlight-bg{background:var(--tmv-color-highlight);color:var(--tmv-color-white)}.service-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-xl);color:var(--tmv-color-text);letter-spacing:-.02em;margin-bottom:.75rem}.service-text{color:var(--tmv-color-text-muted);margin-bottom:1.5rem;line-height:1.75}.service-link{color:var(--tmv-color-primary);transition:var(--tmv-transition);font-weight:600;font-size:var(--tmv-fs-sm);align-items:center;gap:.5rem;display:inline-flex}.service-link i{transition:var(--tmv-transition)}.service-link:hover{color:var(--tmv-color-primary-dark)}.service-link:hover i{transform:translate(4px)}.service-features{flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;display:flex}.service-feature-tag{font-size:var(--tmv-fs-sm);border-radius:var(--tmv-radius-full);background:var(--tmv-color-bg-light);color:var(--tmv-color-text-muted);border:1px solid var(--tmv-color-border);padding:.25rem .875rem;font-weight:600}@media (max-width:1199px){.service-icon{width:60px;height:60px}.service-icon svg{width:33px;height:33px}}.process-section{background:var(--tmv-color-bg-light)}.process-step{text-align:center;padding:2rem 1.5rem;position:relative}.process-step-number{background:var(--tmv-color-white);border:2px solid var(--tmv-color-border);width:64px;height:64px;font-family:var(--tmv-font-display);font-weight:800;font-size:var(--tmv-fs-xl);color:var(--tmv-color-primary);z-index:1;transition:var(--tmv-transition);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;display:flex;position:relative}.process-step-connector{background:repeating-linear-gradient(90deg, var(--tmv-color-primary-light) 0, var(--tmv-color-primary-light) 8px, transparent 8px, transparent 18px);z-index:0;width:calc(100% + 1.5rem);height:2px;position:absolute;top:calc(2rem + 32px);left:50%;transform:translateY(-50%)}.process-step:hover .process-step-number{background:var(--tmv-color-primary);color:var(--tmv-color-white);transform:rotate(-8deg)scale(1.05)}.process-step-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-xl);color:var(--tmv-color-text);margin-bottom:.5rem}.process-step-text{color:var(--tmv-color-text-muted);line-height:1.7}.svc-card{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);height:100%;transition:var(--tmv-transition);flex-direction:column;padding:2rem;display:flex;position:relative;overflow:hidden}.svc-card:after{content:"";background:var(--svc-accent,var(--tmv-color-primary));opacity:0;height:3px;transition:opacity var(--tmv-transition);position:absolute;top:0;left:0;right:0}.svc-card:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.svc-card:hover:after{opacity:1}.svc-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.svc-card-icon{border-radius:var(--tmv-radius-md);background:var(--svc-bg,var(--tmv-color-primary-light));width:56px;height:56px;color:var(--svc-accent,var(--tmv-color-primary));transition:var(--tmv-transition);flex-shrink:0;justify-content:center;align-items:center;display:flex}.svc-card:hover .svc-card-icon{background:var(--svc-accent,var(--tmv-color-primary));color:var(--tmv-color-white)}.svc-card-icon svg{width:32px;height:32px}.svc-card-num{font-family:var(--tmv-font-display);color:var(--tmv-color-border);letter-spacing:-.04em;-webkit-user-select:none;user-select:none;font-size:2.5rem;font-weight:800;line-height:1}.svc-card-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-xl);color:var(--tmv-color-text);margin-bottom:.625rem}.svc-card-text{color:var(--tmv-color-text-muted);margin-bottom:1.25rem}.svc-feature-list{flex-direction:column;flex:1;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.svc-feature-list li{color:var(--tmv-color-text-secondary);align-items:center;gap:.5rem;display:flex}.svc-feature-list li svg{color:var(--svc-accent,var(--tmv-color-primary));flex-shrink:0}.svc-card-link{font-size:var(--tmv-fs-sm);color:var(--svc-accent,var(--tmv-color-primary));transition:gap var(--tmv-transition), color var(--tmv-transition);align-items:center;gap:.5rem;margin-top:auto;font-weight:600;text-decoration:none;display:inline-flex}.svc-card-link svg{transition:var(--tmv-transition)}.svc-card-link:hover svg{transform:translate(3px)}.svc-why-card{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);height:100%;transition:var(--tmv-transition);padding:1.75rem 1.5rem}.svc-why-card:hover{box-shadow:var(--tmv-shadow-hover);border-color:var(--tmv-color-primary-light);transform:translateY(-5px)}.svc-why-card .svc-why-icon{border-radius:var(--tmv-radius-md);background:var(--tmv-color-primary-light);width:48px;height:48px;color:var(--tmv-color-primary);transition:var(--tmv-transition);flex-shrink:0;justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.svc-why-card .svc-why-icon svg{width:28px;height:28px}.svc-why-card:hover .svc-why-icon{background:var(--tmv-color-primary);color:var(--tmv-color-white)}.svc-why-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);margin-bottom:.4rem}.svc-why-text{color:var(--tmv-color-text-muted);margin:0;line-height:1.6}.svc-stat-card{border-radius:var(--tmv-radius-xl);text-align:center;height:100%;padding:2rem 1.5rem}.svc-stat-number{font-family:var(--tmv-font-display);letter-spacing:-.04em;margin-bottom:.5rem;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:800;line-height:1}.svc-process-grid{grid-template-columns:repeat(4,1fr);gap:0;display:grid;position:relative}@media (max-width:991px){.svc-process-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:575px){.svc-process-grid{grid-template-columns:1fr}}.svc-process-step{text-align:center;padding:2.5rem 1.5rem;position:relative}.svc-process-step:not(:last-child):after{content:"";background:var(--tmv-color-border);width:1px;height:40px;position:absolute;top:calc(2.5rem + 28px);right:0;transform:translateY(-50%)}@media (max-width:991px){.svc-process-step:nth-child(2):after,.svc-process-step:nth-child(4):after{display:none}}@media (max-width:575px){.svc-process-step:after{display:none}}.svc-process-num{font-family:var(--tmv-font-display);font-size:var(--tmv-fs-xs);letter-spacing:.1em;color:var(--tmv-color-primary);text-transform:uppercase;margin-bottom:1rem;font-weight:700}.svc-process-icon{background:var(--tmv-color-primary-light);width:64px;height:64px;color:var(--tmv-color-primary);transition:var(--tmv-transition);border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.25rem;display:flex}.svc-process-step:hover .svc-process-icon{background:var(--tmv-color-primary);color:var(--tmv-color-white);transform:scale(1.08)}.svc-process-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);margin-bottom:.5rem}.svc-process-text{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);line-height:1.7}.svc-tech-grid{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.svc-tech-badge{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary);transition:var(--tmv-transition);cursor:default;border-radius:100px;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-weight:600;display:inline-flex}.svc-tech-badge:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary);background:var(--tmv-color-primary-light);transform:translateY(-2px)}.svc-tech-badge svg{flex-shrink:0}.counter-section{background:linear-gradient(135deg, var(--tmv-color-primary) 0%, var(--tmv-color-primary-dark) 100%);position:relative;overflow:hidden}.counter-section:before{content:"";background-image:radial-gradient(circle,#ffffff14 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.counter-item{text-align:center;padding:2rem 1rem;position:relative}.counter-value{font-family:var(--tmv-font-display);color:var(--tmv-color-white);letter-spacing:-.04em;margin-bottom:.5rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:800;line-height:1}.counter-suffix{color:var(--tmv-color-accent)}.counter-label{font-size:var(--tmv-fs-base);color:#ffffffbf;font-weight:500}.counter-icon{border-radius:var(--tmv-radius-md);width:60px;height:60px;color:var(--tmv-color-white);background:#ffffff1f;justify-content:center;align-items:center;margin:0 auto 1rem;font-size:1.25rem;display:flex}.counter-icon svg{flex-shrink:0;width:30px;height:30px}.counter-divider{background:#ffffff26;align-self:center;width:1px;height:80px}@media (min-width:992px){.counter-section .col-lg-3:not(:last-child) .counter-item{border-right:1px solid #ffffff26}}.portfolio-filters{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-bottom:3rem;display:flex}.portfolio-filter-btn{background:var(--tmv-color-white);border:1.5px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);font-family:var(--tmv-font-body);font-weight:600;font-size:var(--tmv-fs-sm);border-radius:var(--tmv-radius-full);cursor:pointer;transition:var(--tmv-transition);padding:.5rem 1.25rem}.portfolio-filter-btn:hover,.portfolio-filter-btn.active{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:var(--tmv-color-white)}.portfolio-grid:not(.row){flex-wrap:wrap;margin:0 -12px;display:flex}.portfolio-item{margin-bottom:0;padding:12px}.portfolio-card{border-radius:var(--tmv-radius-xl);box-shadow:var(--tmv-shadow-card);transition:var(--tmv-transition);display:block;position:relative;overflow:hidden}.portfolio-card:hover{box-shadow:var(--tmv-shadow-hover);transform:translateY(-6px)}.portfolio-card-img{object-fit:cover;width:100%;height:280px;transition:var(--tmv-transition-slow);display:block}.portfolio-card:hover .portfolio-card-img{transform:scale(1.1)}.portfolio-card-overlay{opacity:0;transition:var(--tmv-transition);background:linear-gradient(#0000 5%,#000 100%);align-items:flex-end;padding:1.75rem;display:flex;position:absolute;inset:0}.portfolio-showcase .portfolio-card-overlay,.portfolio-card:hover .portfolio-card-overlay{opacity:1}.portfolio-card-info{width:100%}.portfolio-card-cat{font-size:var(--tmv-fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--tmv-color-accent);margin-bottom:.375rem;font-weight:600}.portfolio-card-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-white);margin-bottom:.75rem;line-height:1.2}.portfolio-card-link{background:var(--tmv-color-white);width:40px;height:40px;color:var(--tmv-color-primary);transition:var(--tmv-transition);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:inline-flex}.portfolio-card-link:hover{background:var(--tmv-color-primary);color:var(--tmv-color-white);transform:rotate(45deg)}.portfolio-card-category{font-size:var(--tmv-fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--tmv-color-accent);margin-bottom:.375rem;font-weight:600}.portfolio-card-desc{font-size:var(--tmv-fs-sm);color:#fffc;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:1rem;line-height:1.6;display:-webkit-box;overflow:hidden}.portfolio-card-actions{align-items:center;display:flex}.portfolio-card-btn{background:var(--tmv-color-primary);color:var(--tmv-color-white);font-weight:600;font-size:var(--tmv-fs-sm);border-radius:var(--tmv-radius-full);transition:var(--tmv-transition);align-items:center;gap:.5rem;padding:.5rem 1.125rem;display:inline-flex}.portfolio-card-btn:hover{background:var(--tmv-color-white);color:var(--tmv-color-primary)}.testimonials-section{background:var(--tmv-color-bg-light)}.testimonial-card{background:var(--tmv-color-white);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);width:100%;height:100%;transition:var(--tmv-transition);flex-direction:column;padding:2rem;display:flex;position:relative}.testimonial-card:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-4px)}.testimonial-quote{color:var(--tmv-color-primary-light);margin-bottom:1rem;font-family:Georgia,serif;font-size:3rem;line-height:1;display:block}.testimonial-rating{flex-shrink:0;gap:.25rem;margin-bottom:1rem;display:flex}.testimonial-rating i{color:#f5a623;font-size:.875rem}.testimonial-rating svg{color:#f5a623;width:.875rem;height:.875rem}.testimonial-headline{color:var(--tmv-color-dark);flex-shrink:0;margin:0 0 .5rem;font-size:1rem;font-weight:700}.testimonial-text{font-size:var(--tmv-fs-base);color:var(--tmv-color-text-secondary);-webkit-line-clamp:6;-webkit-box-orient:vertical;flex:auto;margin-bottom:1.5rem;font-style:italic;line-height:1.8;display:-webkit-box;overflow:hidden}.testimonial-author{flex-shrink:0;align-items:center;gap:.875rem;margin-top:auto;display:flex}.testimonial-avatar{object-fit:cover;border:2px solid var(--tmv-color-border);border-radius:50%;width:48px;height:48px}.testimonial-name{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-base);color:var(--tmv-color-text);line-height:1.2}.testimonial-role{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);margin-top:.125rem;font-weight:500}.swiper-pagination-custom .swiper-pagination-bullet{background:var(--tmv-color-border);opacity:1;width:8px;height:8px;transition:var(--tmv-transition)}.swiper-pagination-custom .swiper-pagination-bullet-active{background:var(--tmv-color-primary);border-radius:var(--tmv-radius-full);width:24px}.team-card{background:var(--tmv-color-white);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);transition:var(--tmv-transition);overflow:hidden}.team-card:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.team-img-wrap{position:relative;overflow:hidden}.team-img{object-fit:cover;object-position:top center;width:100%;height:300px;transition:var(--tmv-transition-slow)}.team-card:hover .team-img{transform:scale(1.05)}.team-social-overlay{opacity:0;transition:var(--tmv-transition);background:linear-gradient(#0000 50%,#0b06a799 100%);justify-content:center;align-items:flex-end;gap:.75rem;padding:1.5rem;display:flex;position:absolute;inset:0}.team-card:hover .team-social-overlay{opacity:1}.team-social-btn{background:var(--tmv-color-white);width:38px;height:38px;color:var(--tmv-color-primary);font-size:var(--tmv-fs-base);transition:var(--tmv-transition);border-radius:50%;justify-content:center;align-items:center;display:flex;transform:translateY(20px)}.team-card:hover .team-social-btn{transform:translateY(0)}.team-card:hover .team-social-btn:first-child{transition-delay:50ms}.team-card:hover .team-social-btn:nth-child(2){transition-delay:.1s}.team-card:hover .team-social-btn:nth-child(3){transition-delay:.15s}.team-social-btn:hover{background:var(--tmv-color-primary);color:var(--tmv-color-white)}.team-info{border-top:1px solid var(--tmv-color-border);padding:1.5rem}.team-name{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);letter-spacing:-.02em;margin-bottom:.25rem}.team-role{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);font-weight:600}.pricing-toggle-wrap{justify-content:center;align-items:center;gap:1rem;margin-bottom:3rem;display:flex}.pricing-toggle-label{font-weight:600;font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary)}.pricing-toggle{width:52px;height:28px;position:relative}.pricing-toggle input{opacity:0;width:0;height:0}.pricing-toggle-slider{cursor:pointer;background:var(--tmv-color-border);border-radius:var(--tmv-radius-full);transition:var(--tmv-transition);position:absolute;inset:0}.pricing-toggle-slider:before{content:"";background:var(--tmv-color-white);width:20px;height:20px;transition:var(--tmv-transition);box-shadow:var(--tmv-shadow-xs);border-radius:50%;position:absolute;top:4px;left:4px}.pricing-toggle input:checked+.pricing-toggle-slider{background:var(--tmv-color-primary)}.pricing-toggle input:checked+.pricing-toggle-slider:before{transform:translate(24px)}.pricing-save-badge{background:var(--tmv-color-accent-light);color:var(--tmv-color-accent-dark);font-size:var(--tmv-fs-xs);border-radius:var(--tmv-radius-full);text-transform:uppercase;letter-spacing:.05em;padding:.25rem .625rem;font-weight:700}.pricing-card{background:var(--tmv-color-white);border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);height:100%;transition:var(--tmv-transition);padding:2rem;position:relative}.pricing-card.featured{border-color:var(--tmv-color-primary);background:linear-gradient(180deg, var(--tmv-color-primary-light) 0%, var(--tmv-color-white) 100%);box-shadow:var(--tmv-shadow-lg);transform:scale(1.03)}.pricing-card:hover{box-shadow:var(--tmv-shadow-hover);transform:translateY(-6px)}.pricing-card.featured:hover{transform:scale(1.03)translateY(-6px)}.pricing-popular-badge{background:var(--tmv-color-primary);color:var(--tmv-color-white);font-size:var(--tmv-fs-xs);border-radius:var(--tmv-radius-full);white-space:nowrap;letter-spacing:.04em;text-transform:uppercase;padding:.375rem 1rem;font-weight:700;position:absolute;top:-1rem;left:50%;transform:translate(-50%)}.pricing-plan-name{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-xl);color:var(--tmv-color-text);margin-bottom:.5rem}.pricing-plan-desc{color:var(--tmv-color-text-muted);margin-bottom:1.5rem}.pricing-price-wrap{margin-bottom:1.5rem}.pricing-currency{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-xl);color:var(--tmv-color-text);vertical-align:top;margin-top:.5rem;display:inline-block}.pricing-amount{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.04em;font-size:clamp(2.5rem,4vw,3.5rem);font-weight:800;line-height:1}.pricing-period{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);font-weight:500}.pricing-divider{border:none;border-top:1px solid var(--tmv-color-border);margin:1.5rem 0}.pricing-features{flex-direction:column;gap:.75rem;margin-bottom:2rem;display:flex}.pricing-feature{color:var(--tmv-color-text-secondary);align-items:center;gap:.75rem;display:flex}.pricing-feature i{color:var(--tmv-color-accent);flex-shrink:0;font-size:1rem}.pricing-feature.disabled{color:var(--tmv-color-text-muted);opacity:.5}.pricing-feature.disabled i{color:var(--tmv-color-text-muted)}@media (max-width:991px){.pricing-currency{margin-top:0}}.blog-card{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);transition:var(--tmv-transition);flex-direction:column;height:100%;display:flex;overflow:hidden}.blog-card:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.blog-card-img-wrap{overflow:hidden}.blog-card-img{object-fit:cover;width:100%;height:220px;transition:var(--tmv-transition-slow)}.blog-card:hover .blog-card-img{transform:scale(1.06)}.blog-card-body{flex-direction:column;flex:1;padding:1.5rem;display:flex}.blog-card-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);letter-spacing:-.02em;transition:var(--tmv-transition);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.75rem;line-height:1.3;display:-webkit-box;overflow:hidden}.blog-card .blog-card-title:hover{text-decoration:underline}.blog-card-excerpt{font-size:var(--tmv-fs-sm);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin-bottom:1.5rem;line-height:1.7;display:-webkit-box;overflow:hidden}.blog-card-meta{border-top:1px solid var(--tmv-color-border);flex-wrap:wrap;align-items:center;gap:1rem;padding-top:1.25rem;display:flex}.blog-meta-author{align-items:center;gap:.5rem;display:flex}.blog-meta-avatar{object-fit:cover;border:2px solid var(--tmv-color-border);border-radius:50%;width:32px;height:32px}.blog-meta-name{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text);font-weight:600}.blog-meta-date{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary)}.blog-meta-read{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary);align-items:center;gap:.375rem;margin-left:auto;display:flex}.cta-section{background:linear-gradient(135deg, var(--tmv-color-dark) 0%, #0b06a7 100%);position:relative;overflow:hidden}.cta-section:before{content:"";background-image:radial-gradient(circle,#ffffff0a 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.cta-blob{border-radius:50%;position:absolute}.cta-blob-1{background:radial-gradient(circle,#0b06a766 0%,#0000 70%);width:400px;height:400px;top:-200px;left:-100px}.cta-blob-2{background:radial-gradient(circle,#0ed5fd4d 0%,#0000 70%);width:300px;height:300px;bottom:-150px;right:-50px}.cta-content,.cta-inner{z-index:1;text-align:center;position:relative}.cta-title{font-family:var(--tmv-font-display);color:var(--tmv-color-white);letter-spacing:-.04em;margin-bottom:1.25rem;font-size:clamp(2rem,4vw,3.5rem);font-weight:800;line-height:1.15}.cta-text{font-size:var(--tmv-fs-md);color:#ffffffb3;max-width:560px;margin:0 auto 2.5rem;line-height:1.75}.cta-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.cta-contact-methods{flex-wrap:wrap;justify-content:center;gap:.875rem;max-width:920px;margin:0 auto 2rem;display:flex}.cta-contact-card{border-radius:var(--tmv-radius-lg);min-width:210px;color:var(--tmv-color-white);text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:var(--tmv-transition);background:#ffffff1a;border:1px solid #fff3;align-items:center;gap:.875rem;padding:.875rem 1.125rem;text-decoration:none;display:flex}.cta-contact-card:hover,.cta-contact-card:focus-visible{color:var(--tmv-color-white);background:#ffffff2e;border-color:#ffffff73;transform:translateY(-3px);box-shadow:0 10px 28px #0000002e}.cta-contact-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:1.2rem;display:inline-flex}.cta-contact-icon--whatsapp{color:#fff;background:#25d366}.cta-contact-icon--call{background:var(--tmv-color-accent);color:var(--tmv-color-primary)}.cta-contact-icon--email{background:var(--tmv-color-white);color:var(--tmv-color-primary)}.cta-contact-icon--visit{color:var(--tmv-color-white);background:#ffffff38}.cta-contact-copy{flex-direction:column;gap:.125rem;min-width:0;display:flex}.cta-contact-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6;font-size:.7rem;font-weight:700}.cta-contact-value{color:var(--tmv-color-white);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;line-height:1.3;overflow:hidden}@media (max-width:575px){.cta-contact-card{min-width:100%}}.cta-tag{color:#ffffffe6;font-family:var(--tmv-font-body);font-size:var(--tmv-fs-sm);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--tmv-radius-full);background:#ffffff1f;border:1px solid #ffffff40;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.375rem 1rem;font-weight:600;display:inline-flex}.btn-white-custom{background:var(--tmv-color-white);color:var(--tmv-color-primary);font-family:var(--tmv-font-body);font-weight:700;font-size:var(--tmv-fs-base);border-radius:var(--tmv-radius-full);border:2px solid var(--tmv-color-white);transition:var(--tmv-transition);align-items:center;gap:.5rem;padding:.875rem 1.75rem;display:inline-flex}.btn-white-custom:hover{color:var(--tmv-color-white);background:0 0;transform:translateY(-2px);box-shadow:0 8px 24px #ffffff26}.btn-ghost-white{color:var(--tmv-color-white);font-family:var(--tmv-font-body);font-weight:600;font-size:var(--tmv-fs-base);border-radius:var(--tmv-radius-full);transition:var(--tmv-transition);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #ffffff40;align-items:center;gap:.5rem;padding:.875rem 1.75rem;display:inline-flex}.btn-ghost-white:hover{color:var(--tmv-color-white);background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.contact-info-item{background:var(--tmv-color-white);border-radius:var(--tmv-radius-lg);border:1px solid var(--tmv-color-border);transition:var(--tmv-transition);align-items:flex-start;gap:1.25rem;margin-bottom:1rem;padding:1.5rem;display:flex}.contact-info-item:hover{box-shadow:var(--tmv-shadow-sm);border-color:var(--tmv-color-primary-light);transform:translate(4px)}.contact-info-icon{border-radius:var(--tmv-radius-md);background:var(--tmv-color-primary-light);width:48px;height:48px;color:var(--tmv-color-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.contact-info-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-base);color:var(--tmv-color-text);margin-bottom:.25rem}.contact-info-text{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);line-height:1.6}.contact-form-wrap{background:var(--tmv-color-white);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);box-shadow:var(--tmv-shadow-card);padding:2.5rem}.form-label-custom{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text);margin-bottom:.5rem;font-weight:600;display:block}.form-control-custom{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md);width:100%;font-family:var(--tmv-font-body);font-size:var(--tmv-fs-base);color:var(--tmv-color-text);background:var(--tmv-color-white);transition:var(--tmv-transition);outline:none;padding:.875rem 1.125rem}.form-control-custom::placeholder{color:var(--tmv-color-text-muted)}.form-control-custom:focus{border-color:var(--tmv-color-primary);box-shadow:0 0 0 4px #0b06a714}textarea.form-control-custom{resize:vertical;min-height:140px}.form-group-custom{margin-bottom:1.25rem}.site-footer{background:var(--tmv-color-dark);color:var(--tmv-color-white);padding-top:4rem}.footer-grid{grid-template-columns:minmax(220px,1.15fr) minmax(140px,.7fr) minmax(280px,1.5fr);align-items:start;gap:2.5rem clamp(2.5rem,6vw,5rem);padding-bottom:3rem;display:grid}.footer-col--brand{padding-right:.5rem}.footer-col--company,.footer-col--services{justify-self:start}.footer-brand-text,.footer-brand{font-family:var(--tmv-font-display);color:var(--tmv-color-white);letter-spacing:-.04em;margin-bottom:1rem;font-size:1.75rem;font-weight:800}.footer-brand-text span{color:var(--tmv-color-primary)}.footer-desc,.footer-about{color:#ffffffa6;max-width:300px;margin:0;font-size:.9375rem;line-height:1.7}.footer-social,.footer-socials{gap:.75rem;display:flex}.footer-social-link{border-radius:var(--tmv-radius-sm);color:#fff9;width:40px;height:40px;transition:var(--tmv-transition);background:#ffffff14;border:1px solid #ffffff1a;justify-content:center;align-items:center;font-size:.9375rem;display:flex}.footer-social-link:hover{background:var(--tmv-color-primary);color:var(--tmv-color-white);border-color:var(--tmv-color-primary);transform:translateY(-3px)}.footer-heading{font-family:var(--tmv-font-display);color:var(--tmv-color-white);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.15rem;font-size:.8125rem;font-weight:700}.footer-links{flex-direction:column;gap:.7rem;margin:0;padding:0;list-style:none;display:flex}.footer-links--services{grid-template-columns:1fr 1fr;gap:.7rem 1.75rem;display:grid}.footer-links li{margin:0;padding:0}.footer-link{color:#ffffffad;align-items:center;font-size:.9375rem;line-height:1.45;text-decoration:none;transition:color .2s;display:inline-flex}.footer-link:before{content:none}.footer-link:hover{color:var(--tmv-color-white)}.footer-link:hover:before{opacity:1;width:auto}@media (max-width:991.98px){.footer-grid{grid-template-columns:1fr 1fr;gap:2.25rem 2rem}.footer-col--brand{grid-column:1/-1}.footer-desc,.footer-about{max-width:420px}}@media (max-width:575.98px){.site-footer{padding-top:3rem}.footer-grid{grid-template-columns:1fr;row-gap:2rem;padding-bottom:2.25rem}.footer-col--brand{grid-column:auto}.footer-desc,.footer-about{max-width:none}.footer-links--services{column-gap:1rem}}.footer-newsletter-label{color:#ffffffad;margin-bottom:1rem;line-height:1.6}.footer-newsletter-form{gap:.5rem;display:flex}.footer-newsletter-input{border-radius:var(--tmv-radius-md);min-width:0;color:var(--tmv-color-white);font-family:var(--tmv-font-body);font-size:var(--tmv-fs-sm);transition:var(--tmv-transition);background:#ffffff14;border:1px solid #ffffff26;outline:none;flex:1;padding:.75rem 1rem}.footer-newsletter-input::placeholder{color:#ffffff59}.footer-newsletter-input:focus{border-color:var(--tmv-color-primary);background:#0b06a71a}.footer-newsletter-btn{background:var(--tmv-color-primary);color:var(--tmv-color-white);border-radius:var(--tmv-radius-md);font-weight:600;font-size:var(--tmv-fs-sm);cursor:pointer;transition:var(--tmv-transition);white-space:nowrap;border:none;padding:.75rem 1.25rem}.footer-newsletter-btn:hover{background:var(--tmv-color-primary-dark)}.footer-bottom{border-top:1px solid #ffffff14;margin-top:0;padding:1.25rem 0}.footer-bottom-text{color:#ffffff85;text-align:center;font-size:.875rem}.footer-bottom-text .copyright-text{color:#ffffffbf;text-decoration:none}.footer-bottom-text .copyright-text:hover{color:#fff}.footer-bottom-links{justify-content:flex-end;gap:1.5rem;display:flex}.footer-bottom-link{color:#ffffff85;transition:var(--tmv-transition)}.footer-bottom-link:hover{color:var(--tmv-color-white)}@media (max-width:991px){.footer-desc,.footer-about{max-width:100%}}.page-hero{background:var(--tmv-color-dark);padding:5rem 0 4.5rem;position:relative;overflow:hidden}.page-hero:before{content:"";background-image:radial-gradient(circle,#ffffff0d 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.page-hero-blob{filter:blur(60px);border-radius:50%;position:absolute}.page-hero-blob-1{background:#0b06a78c;width:600px;height:600px;top:-220px;right:-120px}.page-hero-blob-2{background:#0ed5fd59;width:380px;height:380px;bottom:-160px;left:-60px}.page-hero-content{z-index:1;position:relative}.page-hero-tag{color:#fff;font-size:var(--tmv-fs-sm);border-radius:var(--tmv-radius-full);letter-spacing:.05em;text-transform:uppercase;background:#0b06a780;border:1px solid #639bff8c;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.4rem 1rem;font-weight:600;display:inline-flex;box-shadow:0 0 0 4px #0b06a726}.page-hero-title{font-family:var(--tmv-font-display);color:var(--tmv-color-white);letter-spacing:-.04em;margin-bottom:1rem;font-size:clamp(2rem,4.5vw,3.75rem);font-weight:800;line-height:1.15}.page-hero-text{font-size:var(--tmv-fs-md);color:#ffffffbf;max-width:600px;line-height:1.75}.timeline{padding-left:2.5rem;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--tmv-color-primary), var(--tmv-color-accent), var(--tmv-color-highlight), var(--tmv-color-primary), var(--tmv-color-accent));border-radius:2px;width:2px;position:absolute;top:10px;bottom:10px;left:9px}.timeline-item{padding-bottom:2rem;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-dot{border:3px solid var(--tmv-color-white);border-radius:50%;flex-shrink:0;width:20px;height:20px;position:absolute;top:1.25rem;left:-2.5rem;box-shadow:0 0 0 2px}.timeline-card{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);transition:box-shadow var(--tmv-transition), transform var(--tmv-transition);padding:1.5rem 1.75rem;box-shadow:0 2px 12px #0000000a}.timeline-card:hover{box-shadow:var(--tmv-shadow-card);transition:var(--tmv-transition);transform:translate(4px)}.timeline-year{font-size:var(--tmv-fs-xs);letter-spacing:.1em;text-transform:uppercase;border-radius:100px;align-items:center;margin-bottom:.75rem;padding:.2rem .75rem;font-weight:700;display:inline-flex}.timeline-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);margin-bottom:.5rem;line-height:1.3}.timeline-text{margin:0;line-height:1.7}.breadcrumb-custom{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.5rem;display:flex}.breadcrumb-item-custom{font-size:var(--tmv-fs-sm);color:#ffffffa6;align-items:center;gap:.5rem;display:flex}.breadcrumb-item-custom a{color:#ffffffad;transition:var(--tmv-transition)}.breadcrumb-item-custom a:hover{color:var(--tmv-color-white)}.breadcrumb-item-custom.active{color:var(--tmv-color-accent)}.breadcrumb-sep{color:#ffffff73;font-size:var(--tmv-fs-xs);margin-top:2px;line-height:normal}.sidebar-widget{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);margin-bottom:1.75rem;padding:1.75rem}.sidebar-widget-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);letter-spacing:-.02em;border-bottom:2px solid var(--tmv-color-primary-light);margin-bottom:1.25rem;padding-bottom:1rem;position:relative}.sidebar-widget-title:after{content:"";background:var(--tmv-color-primary);width:40px;height:2px;position:absolute;bottom:-2px;left:0}.sidebar-search-form{gap:.5rem;display:flex}.sidebar-search-input{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md);min-width:0;font-family:var(--tmv-font-body);font-size:var(--tmv-fs-sm);color:var(--tmv-color-text);transition:var(--tmv-transition);outline:none;flex:1;padding:.75rem 1rem}.sidebar-search-input:focus{border-color:var(--tmv-color-primary);box-shadow:0 0 0 3px #0b06a714}.sidebar-search-btn{background:var(--tmv-color-primary);color:var(--tmv-color-white);border-radius:var(--tmv-radius-md);cursor:pointer;width:44px;height:44px;transition:var(--tmv-transition);border:none;justify-content:center;align-items:center;font-size:1rem;display:flex}.sidebar-search-btn:hover{background:var(--tmv-color-primary-dark)}.sidebar-categories{flex-direction:column;gap:.5rem;display:flex}.sidebar-cat-item{border-radius:var(--tmv-radius-md);color:var(--tmv-color-text-secondary);font-size:var(--tmv-fs-sm);transition:var(--tmv-transition);border:1px solid #0000;justify-content:space-between;align-items:center;padding:.625rem .875rem;font-weight:500;display:flex}.sidebar-cat-item:hover{background:var(--tmv-color-primary-light);color:var(--tmv-color-primary);border-color:#0b06a71a}.sidebar-cat-count{background:var(--tmv-color-bg-light);color:var(--tmv-color-text-muted);font-size:var(--tmv-fs-xs);border-radius:var(--tmv-radius-full);padding:.125rem .5rem;font-weight:700}.sidebar-recent-post{border-bottom:1px solid var(--tmv-color-border);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.sidebar-recent-post:last-child{border-bottom:none}.sidebar-recent-img{border-radius:var(--tmv-radius-sm);object-fit:cover;flex-shrink:0;width:72px;height:60px}.sidebar-recent-title{font-family:var(--tmv-font-display);font-weight:600;font-size:var(--tmv-fs-sm);color:var(--tmv-color-text);transition:var(--tmv-transition);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.375rem;line-height:1.35;display:-webkit-box;overflow:hidden}.sidebar-recent-title:hover{color:var(--tmv-color-primary)}.sidebar-recent-date{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-muted)}.sidebar-tag{background:var(--tmv-color-bg-light);border:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);font-size:var(--tmv-fs-xs);border-radius:var(--tmv-radius-full);transition:var(--tmv-transition);padding:.375rem .75rem;font-weight:600}.sidebar-tag:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:var(--tmv-color-white)}.service-single-content{background:var(--tmv-color-white);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);overflow:hidden}.service-single-img{object-fit:cover;width:100%;height:400px}.service-single-body{padding:2.5rem}.service-single-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.03em;margin-bottom:1.25rem;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800}.service-single-text{font-size:var(--tmv-fs-base);color:var(--tmv-color-text-secondary);margin-bottom:1.5rem;line-height:1.85}.service-benefits{flex-direction:column;gap:1rem;margin:2rem 0;display:flex}.service-benefit-item{background:var(--tmv-color-bg-light);border-radius:var(--tmv-radius-lg);border-left:3px solid var(--tmv-color-primary);gap:1rem;padding:1.25rem;display:flex}.benefit-icon{border-radius:var(--tmv-radius-sm);background:var(--tmv-color-primary-light);width:40px;height:40px;color:var(--tmv-color-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex}.benefit-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-base);color:var(--tmv-color-text);margin-bottom:.25rem}.benefit-text{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);line-height:1.6}.services-nav-widget{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);padding:1.75rem}.services-nav-list{flex-direction:column;gap:.375rem;display:flex}.services-nav-link{border-radius:var(--tmv-radius-md);color:var(--tmv-color-text-secondary);font-weight:500;font-size:var(--tmv-fs-sm);transition:var(--tmv-transition);border:1px solid #0000;justify-content:space-between;align-items:center;padding:.875rem 1rem;display:flex}.services-nav-link:hover,.services-nav-link.active{background:var(--tmv-color-primary-light);color:var(--tmv-color-primary);border-color:#0b06a71a}.services-nav-link i{transition:var(--tmv-transition)}.services-nav-link:hover i{transform:translate(4px)}.project-info-card{background:var(--tmv-color-bg-light);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);padding:2rem}.project-info-item{border-bottom:1px solid var(--tmv-color-border);flex-direction:column;gap:.25rem;padding:1rem 0;display:flex}.project-info-label{font-size:var(--tmv-fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--tmv-color-text-muted);font-weight:700}.project-info-value{font-size:var(--tmv-fs-base);color:var(--tmv-color-text);font-weight:600}.project-gallery{grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem;display:grid}.project-gallery-img{border-radius:var(--tmv-radius-lg);height:200px;overflow:hidden}.project-gallery-img img{object-fit:cover;width:100%;height:100%;transition:var(--tmv-transition-slow)}.project-gallery-img:hover img{transform:scale(1.06)}.blog-single-content{background:var(--tmv-color-white);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);overflow:hidden}.blog-single-img{object-fit:cover;width:100%;height:420px}.blog-single-body{padding:2.5rem}.blog-single-meta{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}.blog-single-meta-item{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);align-items:center;gap:.5rem;display:flex}.blog-single-meta-item i{color:var(--tmv-color-primary)}.blog-single-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.03em;margin-bottom:1.5rem;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;line-height:1.2}.blog-single-text{font-size:var(--tmv-fs-base);color:var(--tmv-color-text-secondary);margin-bottom:1.5rem;line-height:1.9}.blog-single-text h3,.blog-single-text .h3{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-xl);color:var(--tmv-color-text);margin-top:2rem;margin-bottom:1rem}.blog-blockquote{border-left:4px solid var(--tmv-color-primary);background:var(--tmv-color-primary-light);border-radius:0 var(--tmv-radius-lg) var(--tmv-radius-lg) 0;margin:2rem 0;padding:1.5rem 2rem}.blog-blockquote p{font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);margin-bottom:.75rem;font-style:italic;line-height:1.7}.blog-blockquote cite{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);font-style:normal;font-weight:700}.blog-tags-wrap{border-top:1px solid var(--tmv-color-border);flex-wrap:wrap;gap:.5rem;margin-top:2rem;padding-top:1.5rem;display:flex}.blog-tag{background:var(--tmv-color-bg-light);border:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);font-size:var(--tmv-fs-xs);border-radius:var(--tmv-radius-full);transition:var(--tmv-transition);padding:.375rem .875rem;font-weight:600}.blog-tag:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:var(--tmv-color-white)}.blog-author-card{background:var(--tmv-color-bg-light);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);gap:1.5rem;margin:2.5rem 0;padding:2rem;display:flex}.blog-author-avatar{object-fit:cover;border:3px solid var(--tmv-color-border);border-radius:50%;flex-shrink:0;width:80px;height:80px}.blog-author-name{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);margin-bottom:.25rem}.blog-author-role{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);margin-bottom:.75rem;font-weight:600}.blog-author-bio{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-muted);line-height:1.7}.comment-list{flex-direction:column;gap:1.5rem;display:flex}.comment-item{background:var(--tmv-color-bg-light);border-radius:var(--tmv-radius-lg);border:1px solid var(--tmv-color-border);gap:1.25rem;padding:1.5rem;display:flex}.comment-name{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-base);color:var(--tmv-color-text)}.comment-date{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-muted)}.comment-reply-btn{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);cursor:pointer;transition:var(--tmv-transition);background:0 0;border:none;margin-top:.5rem;padding:0;font-weight:600}.comment-reply-btn:hover{color:var(--tmv-color-primary-dark)}.page-404{text-align:center;background:var(--tmv-color-bg-light);justify-content:center;align-items:center;min-height:100vh;display:flex}.error-number{font-family:var(--tmv-font-display);color:#0000;-webkit-text-stroke:3px var(--tmv-color-border);letter-spacing:-.05em;margin-bottom:1rem;font-size:clamp(6rem,20vw,14rem);font-weight:800;line-height:1;position:relative}.error-number:after{content:attr(data-text);color:#0000;background:linear-gradient(135deg, var(--tmv-color-primary) 0%, var(--tmv-color-accent) 100%);-webkit-text-stroke:0;clip-path:polygon(0 60%,100% 40%,100% 100%,0 100%);-webkit-background-clip:text;background-clip:text;position:absolute;inset:0}.error-text{font-size:var(--tmv-fs-base);color:var(--tmv-color-text-muted);max-width:400px;margin:0 auto 2.5rem;line-height:1.75}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.animate-slide-up{animation:.6s cubic-bezier(.4,0,.2,1) forwards slideUp}.animate-fade-in{animation:.6s forwards fadeIn}.animate-scale-in{animation:.5s cubic-bezier(.4,0,.2,1) forwards scaleIn}[data-aos=fade-up]{transform:translateY(32px)}[data-aos=fade-down]{transform:translateY(-32px)}[data-aos=zoom-in]{transform:scale(.92)}.glightbox-clean .gclose{background:var(--tmv-color-primary)}@media (max-width:1200px){:root{--section-py:80px}.hero-float-card-1{left:-.75rem}.hero-float-card-2{right:-.75rem}}@media (max-width:1399px){.site-header.is-open{z-index:9999}.site-header{padding:1rem 0}.site-header.scrolled{--navbar-height:70px;width:auto;max-width:100%;margin:0;padding:.35rem 1rem;top:8px;left:8px;right:8px}.site-header.scrolled .navbar-logo-img{max-width:150px;height:36px}.navbar-logo-img{max-width:180px;height:44px}.main-nav{background:var(--tmv-color-white);z-index:1080;flex-direction:column;align-items:stretch;gap:0;width:100%;padding:0 1em;transition:right .35s cubic-bezier(.4,0,.2,1);position:fixed;inset:0;overflow-y:auto;box-shadow:-4px 0 30px #00000024;display:none!important}.main-nav.is-open{top:var(--navbar-height);display:flex!important}.main-nav .nav-link{border-bottom:1px solid var(--tmv-color-border);white-space:normal;width:100%;padding:.875rem 1.25rem}.main-nav .nav-link:before{display:none}.mobile-nav-panel{top:var(--navbar-height);background:var(--tmv-color-white);z-index:1080;flex-direction:column;align-items:stretch;gap:0;padding:0 1rem 1rem;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:-4px 0 30px #00000024}.mobile-nav-link{border-bottom:1px solid var(--tmv-color-border);width:100%;color:var(--tmv-color-text);font-weight:var(--fw-body-semibold);transition:var(--tmv-transition);padding:.875rem 1.25rem;text-decoration:none;display:block}.mobile-nav-link:hover,.mobile-nav-link.active{color:var(--tmv-color-primary);background:#0466c80a}}@media (max-width:991px){:root{--section-py:64px;--navbar-height:70px}.hero-section{min-height:auto;padding-top:3rem;padding-bottom:4rem}.hero-visual{margin-top:3rem}.hero-float-card{display:none}.about-exp-badge{padding:1rem;top:-1rem;left:-.5rem}.about-exp-number{font-size:1.8rem}.about-image-accent{bottom:-.5rem;right:-.5rem}.pricing-card.featured{transform:none}.pricing-card.featured:hover{transform:translateY(-6px)}.counter-divider{display:none}}@media (max-width:767px){:root{--section-py:56px}.hero-title{font-size:clamp(2rem,8vw,3rem)}.hero-stats{gap:1.5rem}.section-title{font-size:clamp(1.625rem,6vw,2.25rem)}.clients-section{padding:2rem 0}.process-step-connector{display:none}.project-gallery{grid-template-columns:1fr}.blog-author-card{flex-direction:column}.blog-author-avatar{width:64px;height:64px}.footer-bottom .d-flex{text-align:center;flex-direction:column;gap:1rem;justify-content:center!important}.footer-bottom-links{justify-content:flex-start}.cta-actions{flex-direction:column;align-items:center}.form-control-custom{padding:.75rem .875rem}}@media (max-width:575px){.hero-stats{justify-content:center;gap:2em}.hero-stat-divider{display:none}.hero-stat-item{text-align:center}.hero-actions{flex-direction:column;align-items:flex-start}.portfolio-filters{justify-content:flex-start}.pricing-toggle-wrap{gap:.75rem}.nav-actions .nav-outline{display:none}.nav-cta{white-space:nowrap;padding:.45rem .85rem;font-size:.8rem}}@media (max-width:479px){.nav-cta{display:none}}.service-single-img{border-radius:var(--tmv-radius-lg);overflow:hidden}.service-single-img img{object-fit:cover;width:100%;height:420px}.service-feature-item{background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-md);border:1px solid var(--tmv-color-border);align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.service-feature-icon{background:var(--tmv-gradient-primary);border-radius:var(--tmv-radius-sm);color:#fff;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;font-size:1.1rem;display:flex}.service-process-list{flex-direction:column;gap:1.5rem;display:flex}.service-process-item{background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-md);border-left:3px solid var(--tmv-color-primary);align-items:flex-start;gap:1.5rem;padding:1.5rem;display:flex}.service-process-num{font-family:var(--tmv-font-heading);color:var(--tmv-color-primary);opacity:.25;min-width:3rem;font-size:2rem;font-weight:800;line-height:1}.tech-stack-grid{flex-wrap:wrap;gap:.6rem;display:flex}.tech-tag{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);border-radius:999px;padding:.4rem 1rem;font-size:.85rem;font-weight:500}.tech-tag:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.sidebar-widget{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);padding:1.75rem}.sidebar-widget-title{font-family:var(--tmv-font-heading);color:var(--tmv-color-text-primary);margin-bottom:1.25rem;font-size:1.05rem;font-weight:700}.services-nav-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.services-nav-link{border-radius:var(--tmv-radius-sm);color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:500;text-decoration:none;display:flex}.services-nav-link:hover,.services-nav-link.active{background:var(--tmv-color-primary);color:#fff}.sidebar-cta-widget{background:var(--tmv-gradient-primary);border-radius:var(--tmv-radius-lg);color:#fff;text-align:center;padding:2rem}.sidebar-cta-icon{opacity:.9;margin-bottom:1rem;font-size:2.5rem}.sidebar-cta-widget h4,.sidebar-cta-widget .h4{font-family:var(--tmv-font-heading);color:#fff;margin-bottom:.5rem}.sidebar-cta-widget p{opacity:.85;margin-bottom:1.25rem;font-size:.9rem}.sidebar-stat-list{flex-direction:column;gap:1rem;display:flex}.sidebar-stat-item{justify-content:space-between;align-items:center;display:flex}.sidebar-stat-num{font-family:var(--tmv-font-heading);color:var(--tmv-color-primary);font-size:1.5rem;font-weight:800}.sidebar-stat-label{color:var(--tmv-color-text-secondary);font-size:.85rem}.sidebar-download-link{background:var(--tmv-color-bg);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm);color:var(--tmv-color-text-primary);transition:var(--tmv-transition-base);align-items:center;gap:.75rem;padding:.85rem 1rem;text-decoration:none;display:flex}.sidebar-download-link:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.sidebar-download-link i:first-child{color:var(--tmv-color-accent);font-size:1.4rem}.sidebar-download-link span{flex-direction:column;font-size:.9rem;font-weight:500;display:flex}.sidebar-download-link small{color:var(--tmv-color-text-secondary);font-size:.75rem;font-weight:400}.service-single-hero-img{object-fit:cover;border-radius:var(--tmv-radius-lg);width:100%;height:440px;margin-bottom:2.5rem;display:block}.service-single-heading{font-family:var(--tmv-font-display);color:var(--tmv-color-heading);margin-bottom:1rem;font-size:clamp(1.4rem,2.5vw,1.85rem);font-weight:800;line-height:1.28}.service-single-subheading{font-family:var(--tmv-font-display);color:var(--tmv-color-heading);margin:2.25rem 0 1rem;font-size:1.15rem;font-weight:700}.service-single-text{color:var(--tmv-color-text-secondary);margin-bottom:1rem;line-height:1.8}.svc-stats-strip{background:var(--tmv-color-border);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);grid-template-columns:repeat(4,1fr);gap:1px;margin:2.5rem 0;display:grid;overflow:hidden}.svc-stat-cell{background:var(--tmv-color-bg-alt);text-align:center;padding:1.5rem 1rem}.svc-stat-num{font-family:var(--tmv-font-display);color:var(--tmv-color-primary);margin-bottom:.3rem;font-size:1.9rem;font-weight:800;line-height:1}.service-single-feature{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md);height:100%;transition:border-color var(--tmv-transition-base), box-shadow var(--tmv-transition-base);align-items:flex-start;gap:.9rem;padding:1.35rem;display:flex}.service-single-feature:hover{border-color:var(--tmv-color-primary);box-shadow:0 4px 20px #0b06a712}.service-single-feature-icon{border-radius:var(--tmv-radius-sm);width:40px;min-width:40px;height:40px;color:var(--tmv-color-primary);background:linear-gradient(135deg,#0b06a71f,#0ed5fd1a);justify-content:center;align-items:center;display:flex}.service-single-feature strong{color:var(--tmv-color-heading);margin-bottom:.3rem;font-size:.88rem;font-weight:700;display:block}.service-single-feature p{color:var(--tmv-color-text-secondary);margin:0;font-size:.82rem;line-height:1.6}.service-single-blockquote{background:var(--tmv-color-bg-alt);border-left:4px solid var(--tmv-color-primary);border-radius:0 var(--tmv-radius-md) var(--tmv-radius-md) 0;margin:2.5rem 0;padding:2rem 2rem 2rem 2.5rem}.service-single-blockquote .sbq-icon{color:var(--tmv-color-primary);opacity:.35;margin-bottom:.65rem;font-size:1.75rem;display:block}.service-single-blockquote p{color:var(--tmv-color-text-primary);margin-bottom:.75rem;font-size:1.05rem;font-style:italic;line-height:1.8}.service-single-blockquote footer{color:var(--tmv-color-text-secondary);font-size:.85rem;font-weight:600}.sidebar-highlights-list{margin:0;padding:0;list-style:none}.sidebar-highlights-list li{border-bottom:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);align-items:center;gap:.65rem;padding:.6rem 0;font-size:.875rem;display:flex}.sidebar-highlights-list li:first-child{padding-top:0}.sidebar-highlights-list li:last-child{border-bottom:none;padding-bottom:0}.sidebar-highlights-list li svg{color:var(--tmv-color-primary);flex-shrink:0;width:14px;height:14px}.sidebar-download-item{border-bottom:1px solid var(--tmv-color-border);align-items:center;gap:.85rem;padding:.9rem 0;display:flex}.sidebar-download-item:first-of-type{padding-top:0}.sidebar-download-item:last-of-type{border-bottom:none;padding-bottom:0}.sidebar-download-icon{border-radius:var(--tmv-radius-sm);width:40px;min-width:40px;height:40px;color:var(--tmv-color-primary);background:#0b06a71a;justify-content:center;align-items:center;display:flex}.sidebar-download-name{color:var(--tmv-color-text-primary);margin-bottom:.2rem;font-size:.83rem;font-weight:600}a.sidebar-dl-link{color:var(--tmv-color-primary);transition:gap var(--tmv-transition-base);align-items:center;gap:.35rem;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-flex}a.sidebar-dl-link:hover{gap:.55rem}.svc-cta-band{background:var(--tmv-gradient-primary);text-align:center;padding:5rem 0;position:relative;overflow:hidden}.svc-cta-band:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 20%,#ffffff12 0%,#0000 50%),radial-gradient(circle at 80%,#ffffff0d 0%,#0000 50%);position:absolute;inset:0}.svc-cta-band-inner{position:relative}.svc-cta-band-title{font-family:var(--tmv-font-display);color:#fff;margin-bottom:.75rem;font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:800}.svc-cta-band-sub{color:#ffffffbf;margin-bottom:2rem;font-size:1.05rem}.svc-cta-band .btn-band-white{color:var(--tmv-color-primary);transition:transform var(--tmv-transition-base), box-shadow var(--tmv-transition-base);background:#fff;border-radius:100px;align-items:center;gap:.55rem;padding:.875rem 2.25rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 6px 24px #0000002e}.svc-cta-band .btn-band-white:hover{color:var(--tmv-color-primary);transform:translateY(-2px);box-shadow:0 12px 32px #00000040}.portfolio-single-hero{border-radius:var(--tmv-radius-lg);display:block;position:relative;overflow:hidden}.portfolio-single-hero img{object-fit:cover;width:100%;height:460px;display:block}.portfolio-single-zoom{width:44px;height:44px;color:var(--tmv-color-text-primary);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;display:flex;position:absolute;bottom:1.25rem;right:1.25rem}.portfolio-blockquote{background:var(--tmv-color-bg-alt);border-left:4px solid var(--tmv-color-primary);border-radius:0 var(--tmv-radius-md) var(--tmv-radius-md) 0;margin:2rem 0;padding:2rem 2rem 2rem 2.5rem}.portfolio-blockquote-icon{color:var(--tmv-color-primary);opacity:.4;margin-bottom:.5rem;font-size:2rem}.portfolio-blockquote p{color:var(--tmv-color-text-primary);margin-bottom:1.25rem;font-size:1.1rem;font-style:italic;line-height:1.7}.portfolio-blockquote-author{align-items:center;gap:1rem;display:flex}.portfolio-blockquote-author img{object-fit:cover;border-radius:50%;width:48px;height:48px}.portfolio-gallery-thumb{border-radius:var(--tmv-radius-md);display:block;position:relative;overflow:hidden}.portfolio-gallery-thumb img{object-fit:cover;width:100%;height:160px;transition:transform .4s;display:block}.portfolio-gallery-thumb:hover img{transform:scale(1.06)}.result-stat{background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-md);border:1px solid var(--tmv-color-border);padding:1.5rem 1rem}.result-stat-num{font-family:var(--tmv-font-heading);color:var(--tmv-color-primary);margin-bottom:.25rem;font-size:2rem;font-weight:800}.result-stat-label{color:var(--tmv-color-text-secondary);font-size:.85rem}.challenge-card{text-align:center;background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-md);border:1px solid var(--tmv-color-border);padding:1.5rem 1rem}.challenge-num{font-family:var(--tmv-font-heading);margin-bottom:.35rem;font-size:1.75rem;font-weight:800}.challenge-num--red{color:#ef4444}.challenge-num--orange{color:var(--tmv-color-highlight)}.challenge-num--yellow{color:#eab308}.challenge-label{color:var(--tmv-color-text-secondary);font-size:.82rem}.project-info-list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.project-info-item{border-bottom:1px solid var(--tmv-color-border);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.85rem 0;display:flex}.project-info-item:last-child{border-bottom:none}.project-info-label{color:var(--tmv-color-text-secondary);align-items:center;gap:.5rem;font-size:.85rem;font-weight:500;display:flex}.project-info-value{color:var(--tmv-color-text-primary);text-align:right;font-size:.85rem;font-weight:600}.related-project-item{background:var(--tmv-color-bg);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm);transition:var(--tmv-transition-base);align-items:center;gap:.85rem;padding:.75rem;display:flex}.related-project-item:hover{border-color:var(--tmv-color-primary)}.related-project-item img{object-fit:cover;border-radius:6px;flex-shrink:0;width:60px;height:45px}.related-project-item strong{color:var(--tmv-color-text-primary);margin-bottom:.15rem;font-size:.9rem;display:block}.related-project-item small{color:var(--tmv-color-text-secondary);font-size:.78rem}.portfolio-nav{border-top:1px solid var(--tmv-color-border)}.portfolio-nav-link{color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);align-items:center;gap:.6rem;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.portfolio-nav-link:hover{color:var(--tmv-color-primary)}.page-hero--blog .page-hero-title{font-size:clamp(1.8rem,3vw,2.8rem)}.blog-post-meta-hero{color:#ffffffe0;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.blog-post-meta-hero strong{color:#fff}.blog-post-author-img{object-fit:cover;border:2px solid #ffffff73;border-radius:50%;width:52px;height:52px}.blog-single-hero-img{border-radius:var(--tmv-radius-lg);overflow:hidden}.blog-single-hero-img img{object-fit:cover;width:100%;height:440px;display:block}.article-body h2,.article-body .h2{font-family:var(--tmv-font-heading);color:var(--tmv-color-text-primary);margin:2.5rem 0 1rem;font-size:1.55rem}.article-blockquote{border-left:4px solid var(--tmv-color-primary);border-radius:0 var(--tmv-radius-md) var(--tmv-radius-md) 0;background:linear-gradient(135deg,#0b06a70f,#0ed5fd0f);margin:2.5rem 0;padding:2rem}.article-blockquote p{color:var(--tmv-color-text-primary);margin-bottom:.75rem;font-size:1.15rem;font-style:italic;line-height:1.7}.article-blockquote cite{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary)}.article-list{margin-bottom:1.5rem;padding-left:1.25rem}.article-list li{margin-bottom:.6rem}.article-code-block{border-radius:var(--tmv-radius-md);border:1px solid var(--tmv-color-border);margin:2rem 0;overflow:hidden}.article-code-header{color:#ffffff80;background:#1e1e2e;justify-content:space-between;align-items:center;padding:.6rem 1.25rem;font-size:.8rem;display:flex}.article-code-lang{background:#ffffff1a;border-radius:4px;padding:.15rem .5rem}.article-tags{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.article-tags-label{color:var(--tmv-color-text-secondary);margin-right:.25rem;font-size:.9rem;font-weight:600}.article-share-btn{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);width:38px;height:38px;color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}.article-share-btn:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff}.author-card{background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-lg);border:1px solid var(--tmv-color-border);gap:1.5rem;padding:2rem;display:flex}.author-card-img{object-fit:cover;border-radius:50%;flex-shrink:0;width:80px;height:80px}.author-card-name{font-family:var(--tmv-font-heading);color:var(--tmv-color-text-primary);font-size:1.1rem;font-weight:700}.author-card-role{color:var(--tmv-color-primary);margin-bottom:.75rem;font-size:.85rem;font-weight:500}.author-card-bio{color:var(--tmv-color-text-secondary);margin-bottom:.75rem;font-size:.9rem;line-height:1.7}.author-card-social{gap:.6rem;display:flex}.author-card-social a{color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);font-size:1rem;text-decoration:none}.author-card-social a:hover{color:var(--tmv-color-primary)}.comment-item{border-bottom:1px solid var(--tmv-color-border);gap:1rem;padding:1.5rem 0;display:flex}.comment-item--reply{padding-left:3.5rem}.comment-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:44px;height:44px}.comment-header strong{color:var(--tmv-color-text-primary)}.comment-author-badge{background:var(--tmv-color-primary);color:#fff;border-radius:999px;padding:.15rem .5rem;font-size:.7rem;font-weight:600}.comment-body p{color:var(--tmv-color-text-secondary);margin-bottom:.5rem;font-size:.93rem;line-height:1.7}.contact-form-input{border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm);width:100%;font-family:var(--tmv-font-body);background:var(--tmv-color-bg-alt);color:var(--tmv-color-text-primary);transition:var(--tmv-transition-base);outline:none;padding:.85rem 1.1rem;font-size:.95rem}.contact-form-input:focus{border-color:var(--tmv-color-primary);box-shadow:0 0 0 3px #0b06a71a}.contact-form-input.is-invalid,.footer-newsletter-input.is-invalid{border-color:#dc2626;box-shadow:0 0 0 3px #dc262614}.contact-phone-row{align-items:stretch;gap:0;display:flex}.contact-phone-row .contact-cc-select{cursor:pointer;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;flex:0 0 118px;max-width:130px;padding-left:.7rem;padding-right:.45rem}.contact-phone-row .contact-phone-input{border-top-left-radius:0;border-bottom-left-radius:0;flex:auto;min-width:0}.contact-phone-row.is-invalid .contact-form-input{border-color:#dc2626}.form-field-help{color:var(--tmv-color-text-secondary);margin-top:.5rem;font-size:.875rem}.form-field-error{color:#dc2626;margin-top:.5rem;font-size:.875rem;line-height:1.5}.hp-field{opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;position:absolute!important;top:auto!important;left:-10000px!important;overflow:hidden!important}.form-captcha-row{align-items:center;gap:.5rem;display:flex}.form-captcha-row .contact-form-input{flex:1;min-width:0}.form-captcha-refresh{cursor:pointer;background:#fff;border:1px solid #0000001f;border-radius:.5rem;flex-shrink:0;width:2.75rem;height:2.75rem;font-size:1.1rem;line-height:1}.form-captcha-refresh:disabled{opacity:.6;cursor:not-allowed}.contact-form-label{color:var(--tmv-color-text-secondary);margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.contact-form-select{appearance:none;cursor:pointer}.sidebar-search{gap:0;display:flex}.sidebar-search-input{border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm) 0 0 var(--tmv-radius-sm);min-width:0;font-family:var(--tmv-font-body);background:var(--tmv-color-bg);color:var(--tmv-color-text-primary);border-right:none;outline:none;flex:1;padding:.75rem 1rem;font-size:.9rem}.sidebar-search-btn{background:var(--tmv-color-primary);border:1px solid var(--tmv-color-primary);border-radius:0 var(--tmv-radius-sm) var(--tmv-radius-sm) 0;color:#fff;cursor:pointer;padding:.75rem 1rem}.sidebar-category-list{margin:0;padding:0;list-style:none}.sidebar-category-link{border-bottom:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);justify-content:space-between;padding:.65rem 0;font-size:.9rem;text-decoration:none;display:flex}.sidebar-category-link:last-child{border-bottom:none}.sidebar-category-link:hover{color:var(--tmv-color-primary)}.sidebar-category-link span{background:var(--tmv-color-bg);border:1px solid var(--tmv-color-border);border-radius:999px;padding:.1rem .5rem;font-size:.78rem}.recent-post-item{border-bottom:1px solid var(--tmv-color-border);align-items:flex-start;gap:.85rem;padding:.6rem 0;display:flex}.recent-post-item:last-child{border-bottom:none}.recent-post-item img{object-fit:cover;border-radius:6px;flex-shrink:0;width:64px;height:48px}.recent-post-title{color:var(--tmv-color-text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .25rem;font-size:.85rem;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.recent-post-date{color:var(--tmv-color-text-secondary);font-size:.75rem}.sidebar-tags{flex-wrap:wrap;gap:.4rem;display:flex}.sidebar-tag{background:var(--tmv-color-bg);border:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);border-radius:999px;padding:.3rem .75rem;font-size:.8rem;text-decoration:none}.sidebar-tag:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.sidebar-newsletter-input{border-radius:var(--tmv-radius-sm);color:#fff;width:100%;font-family:var(--tmv-font-body);background:#ffffff26;border:1px solid #fff3;outline:none;padding:.75rem 1rem}.sidebar-newsletter-input::placeholder{color:#fff9}.blog-card--featured{flex-direction:column;display:flex}.blog-card-img--featured,.blog-card-img--featured img{height:360px}.blog-page-btn{border-radius:var(--tmv-radius-sm);border:1px solid var(--tmv-color-border);width:40px;height:40px;color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);justify-content:center;align-items:center;font-weight:500;text-decoration:none;display:flex}.blog-page-btn.active,.blog-page-btn:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff}.blog-page-ellipsis{color:var(--tmv-color-text-secondary)}.blog-page-next{border-radius:var(--tmv-radius-sm);border:1px solid var(--tmv-color-border);width:40px;height:40px;color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-base);justify-content:center;align-items:center;text-decoration:none;display:flex}.blog-page-next:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff}.join-perk{color:var(--tmv-color-text-secondary);align-items:center;gap:.6rem;font-weight:500;display:flex}.join-perk i{color:var(--tmv-color-primary);font-size:1rem}.join-perk-icon{width:18px;height:18px;color:var(--tmv-color-primary);stroke:currentColor;flex-shrink:0}.join-img-grid{position:relative}.join-img-main{border-radius:var(--tmv-radius-lg);object-fit:cover;width:100%;height:320px;display:block}.join-img-accent{border-radius:var(--tmv-radius-md);border:4px solid var(--tmv-color-bg);width:42%;box-shadow:var(--tmv-shadow-lg);object-fit:cover;height:160px;position:absolute;bottom:-20px;left:-20px}@media (max-width:575px){.join-img-accent{height:120px;bottom:-8px;left:-8px}}.pricing-toggle-wrap{justify-content:center;align-items:center;display:flex}.pricing-toggle-label{color:var(--tmv-color-text-secondary);font-weight:600}.pricing-toggle-switch{width:52px;height:28px;position:relative}.pricing-toggle-input{opacity:0;width:0;height:0;position:absolute}.pricing-toggle-slider{background:var(--tmv-color-border);cursor:pointer;transition:var(--tmv-transition-base);border-radius:999px;position:absolute;inset:0}.pricing-toggle-slider:before{content:"";width:20px;height:20px;transition:var(--tmv-transition-base);box-shadow:var(--tmv-shadow-sm);background:#fff;border-radius:50%;position:absolute;top:4px;left:4px}.pricing-toggle-input:checked+.pricing-toggle-slider{background:var(--tmv-color-primary)}.pricing-toggle-input:checked+.pricing-toggle-slider:before{transform:translate(24px)}.pricing-save-badge{background:var(--tmv-color-accent);color:#fff;border-radius:999px;margin-left:.4rem;padding:.15rem .5rem;font-size:.72rem;font-weight:700}.pricing-card-price--custom{padding:1rem 0}.pricing-custom-label{font-family:var(--tmv-font-heading);color:var(--tmv-color-text-primary);font-size:2rem;font-weight:800}.comparison-table-wrap{background:var(--tmv-color-white);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);overflow-x:auto;box-shadow:0 4px 32px #00000014}.comparison-table{border-collapse:collapse;width:100%;min-width:580px}.comparison-table td{text-align:center;border-bottom:1px solid var(--tmv-color-border);color:var(--tmv-color-text);vertical-align:middle;padding:1rem 1.5rem}.comparison-table td:first-child{text-align:left;color:var(--tmv-color-text);width:32%;padding-left:2rem;font-weight:500}.comparison-table tbody tr:last-child td{border-bottom:none}.comparison-table tbody tr:hover td{background:var(--tmv-color-bg-light)}.comparison-table tbody tr:hover td.comparison-featured{background:#0b06a712!important}.comparison-table thead th{text-align:center;border-bottom:2px solid var(--tmv-color-border);background:var(--tmv-color-bg-light);vertical-align:top;padding:1.75rem 1.5rem 1.5rem}.comparison-table thead th:first-child{text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--tmv-color-text-muted);vertical-align:middle;padding-left:2rem;font-weight:700}.comparison-plan-name{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-lg);color:var(--tmv-color-text);margin-top:.6rem}.comparison-plan-meta{color:var(--tmv-color-text-muted);margin-top:.2rem;font-weight:500}.comparison-popular-tag{color:#fff;letter-spacing:.07em;text-transform:uppercase;background:#ffffff38;border:1px solid #ffffff59;border-radius:999px;padding:.2rem .65rem;font-size:.68rem;font-weight:700;display:inline-block}.comparison-table thead th.comparison-featured{border-left:2px solid var(--tmv-color-primary);border-right:2px solid var(--tmv-color-primary);background:var(--tmv-color-primary)!important;border-bottom-color:var(--tmv-color-primary)!important}.comparison-table thead th.comparison-featured .comparison-plan-name{color:var(--tmv-color-white)}.comparison-table thead th.comparison-featured .comparison-plan-meta{color:#ffffffb3}.comparison-table td.comparison-featured{border-left:2px solid #0b06a726;border-right:2px solid #0b06a726;font-weight:600;color:var(--tmv-color-primary)!important;background:#0b06a70d!important}.comparison-icon-yes{color:#16a34a;display:inline-block}.comparison-icon-no{color:#9ca3af;display:inline-block}.faq-item{margin-bottom:.75rem;overflow:hidden;border:1px solid var(--tmv-color-border)!important;border-radius:var(--tmv-radius-md)!important}.faq-btn{font-family:var(--tmv-font-body);padding:1.25rem 1.5rem;font-weight:600;background:var(--tmv-color-bg-alt)!important;color:var(--tmv-color-text-primary)!important;box-shadow:none!important}.faq-btn:not(.collapsed){color:var(--tmv-color-primary)!important}.faq-body{border-top:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);padding:1.25rem 1.5rem;line-height:1.75}.faq-cat-sidebar{position:sticky;top:110px}.faq-cat-title{margin-bottom:.85rem}.faq-cat-link{color:var(--tmv-color-text);border-left:2px solid #0000;border-radius:8px;align-items:center;gap:.55rem;margin-bottom:.2rem;padding:.55rem .9rem;text-decoration:none;transition:all .18s;display:flex}.faq-cat-link:hover,.faq-cat-link.active{color:#0b06a7;background:#0b06a712;border-left-color:#0b06a7}.faq-cat-link i{opacity:.7;width:16px}.faq-section-label{color:#0b06a7;background:#0b06a714;border-radius:20px;align-items:center;gap:.4rem;margin-bottom:1rem;padding:.28rem .75rem;font-size:.9375rem;font-weight:600;display:inline-flex}.faq-section{margin-bottom:3.5rem}.faq-contact-box{text-align:center;background:linear-gradient(135deg,#0b06a70f 0%,#6366f10f 100%);border:1px solid #0b06a71f;border-radius:16px;margin-top:2rem;padding:2rem}.contact-page-layout .contact-info-card{height:100%}.contact-info-grid .contact-info-card{padding:1.5rem 1.15rem}.contact-info-card{text-align:center;border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);background:#fff;padding:2rem 1.5rem;transition:border-color .25s,box-shadow .25s,transform .25s;position:relative;overflow:hidden}a.contact-info-card--link{color:inherit;text-decoration:none;display:block}a.contact-info-card--link h2,a.contact-info-card--link p{color:inherit}.contact-info-icon .fa-whatsapp{color:#25d366;font-size:1.5rem}.contact-info-card:before{content:"";background:var(--tmv-gradient-primary);height:3px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.contact-info-card:hover{box-shadow:var(--tmv-shadow-hover);border-color:#0000;transform:translateY(-6px)}.contact-info-card:hover:before{transform:scaleX(1)}.contact-info-icon{border-radius:var(--tmv-radius-md);width:56px;height:56px;color:var(--tmv-color-primary);background:#0b06a714;justify-content:center;align-items:center;margin:0 auto 1rem;font-size:1.3rem;transition:background .25s,color .25s;display:flex}.contact-info-card:hover .contact-info-icon{background:var(--tmv-color-primary);color:var(--tmv-color-white);transform:scale(1.1)rotate(-5deg)}.contact-info-card h5,.contact-info-card .h5{color:var(--tmv-color-dark);margin-bottom:.5rem;font-weight:700}.contact-info-card p{margin:0;line-height:1.7}.contact-info-card a{color:var(--tmv-color-text-secondary);text-decoration:none}.contact-info-card a:hover{color:var(--tmv-color-primary)}.contact-form-wrap{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);background:#fff;padding:2.5rem;box-shadow:0 4px 24px #0000000d}.contact-form-label{font-size:var(--tmv-fs-sm);color:var(--tmv-color-dark);letter-spacing:.02em;margin-bottom:.45rem;font-weight:500;display:block}.contact-form-input{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md);width:100%;font-family:var(--tmv-font-body);background:var(--tmv-color-surface);color:var(--tmv-color-dark);appearance:none;outline:none;padding:.85rem 1.1rem;font-size:.93rem;transition:border-color .2s,box-shadow .2s,background .2s}.contact-form-input:focus{border-color:var(--tmv-color-primary);background:#fff;box-shadow:0 0 0 3px #0b06a71a}.contact-form-input::placeholder{color:var(--tmv-color-text-secondary);opacity:.6}.contact-form-select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.contact-form-textarea{resize:vertical;min-height:140px}.contact-checkbox-grid{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}@media (max-width:479px){.contact-checkbox-grid{grid-template-columns:1fr}}.contact-checkbox-item{color:var(--tmv-color-text-secondary);cursor:pointer;border-radius:var(--tmv-radius-sm);border:1.5px solid var(--tmv-color-border);align-items:center;gap:.6rem;padding:.6rem .75rem;font-size:.875rem;transition:border-color .2s,background .2s;display:flex}.contact-checkbox-item:hover{background:#0b06a708;border-color:#0b06a759}.contact-checkbox-item input{width:16px;height:16px;accent-color:var(--tmv-color-primary);flex-shrink:0}.service-multiselect{position:relative}.service-multiselect-trigger{text-align:left;white-space:nowrap;text-overflow:ellipsis;width:100%;display:block;overflow:hidden}.service-multiselect-trigger.is-placeholder{color:var(--tmv-color-text-secondary);opacity:.75}.service-multiselect-trigger.is-open{border-color:var(--tmv-color-primary);box-shadow:0 0 0 3px #0b06a71f}.service-multiselect-panel{z-index:60;border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm);background:#fff;max-height:240px;padding:.35rem;position:absolute;top:calc(100% + .35rem);left:0;right:0;overflow-y:auto;box-shadow:0 10px 28px #0000001f}.service-multiselect-option{color:var(--tmv-color-text-secondary);cursor:pointer;border-radius:var(--tmv-radius-sm);align-items:center;gap:.6rem;padding:.55rem .65rem;font-size:.875rem;transition:background .2s,color .2s;display:flex}.service-multiselect-option:hover,.service-multiselect-option.is-selected{color:var(--tmv-color-text);background:#0b06a70d}.service-multiselect-option input{width:16px;height:16px;accent-color:var(--tmv-color-primary);flex-shrink:0;margin:0}.contact-map-wrap{border-radius:var(--tmv-radius-xl);border:1.5px solid var(--tmv-color-border);overflow:hidden;box-shadow:0 4px 20px #0000000f}.contact-hours-card{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);background:#fff;padding:1.75rem;box-shadow:0 2px 12px #0000000a}.sw-cf-title{border-bottom:1px solid var(--tmv-color-border);padding-bottom:.875rem;position:relative}.sw-cf-title:after{content:"";background:var(--tmv-color-primary);width:32px;height:2px;position:absolute;bottom:-1px;left:0}.contact-hours-card h5,.contact-hours-card .h5{font-family:var(--tmv-font-display);color:var(--tmv-color-dark);align-items:center;gap:.5rem;margin-bottom:1.1rem;font-weight:700;display:flex}.contact-hours-list{margin:0;padding:0;list-style:none}.contact-hours-list li{border-bottom:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);justify-content:space-between;align-items:center;padding:.6rem 0;display:flex}.contact-hours-list li:last-child{border-bottom:none}.contact-hours-list li span:first-child{color:var(--tmv-color-dark);font-weight:600}.contact-hours-closed{font-style:italic}.contact-social-link{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md);color:var(--tmv-color-text-secondary);align-items:center;gap:.85rem;padding:.7rem 1rem;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s,background .2s,transform .2s;display:flex}.contact-social-link:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary);background:#0b06a708;transform:translate(4px)}.contact-social-link i{text-align:center;flex-shrink:0;width:18px;font-size:1rem}.php-email-form .error-message{background:var(--tmv-color-danger);color:var(--tmv-color-white);text-align:left;margin-bottom:24px;padding:15px;font-weight:600;display:none}.php-email-form .sent-message{color:var(--tmv-color-white);background:var(--tmv-color-success);text-align:center;margin-bottom:24px;padding:15px;font-weight:600;display:none}.contact-form-el .sent-message,.contact-form-wrap .sent-message,.project-modal .sent-message{color:#065f46;text-align:center;border-radius:var(--tmv-radius-md,10px);background:#d1fae5;border:1px solid #6ee7b7;margin-top:.75rem;padding:1rem 1.25rem;font-size:.95rem;font-weight:600;line-height:1.45;display:block}.contact-form-el .error-message,.contact-form-wrap .error-message,.project-modal .error-message{color:#991b1b;text-align:left;border-radius:var(--tmv-radius-md,10px);background:#fee2e2;border:1px solid #fca5a5;margin-top:.75rem;padding:.85rem 1rem;font-size:.9rem;font-weight:600;display:block}.project-modal-success{text-align:center;padding:1.5rem 1rem .5rem}.project-modal-success-icon{color:#059669;background:#d1fae5;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1rem;font-size:1.5rem;font-weight:700;display:flex}.project-modal-success-title{color:var(--tmv-color-dark,#0d1117);margin:0 0 .5rem;font-size:1.25rem;font-weight:700}.project-modal-success-text{color:var(--tmv-color-text-secondary,#4a5568);margin:0;font-size:.95rem;line-height:1.5}.php-email-form .loading{color:var(--tmv-color-white);background:var(--tmv-color-primary);text-align:center;margin-bottom:24px;padding:15px;display:none}.php-email-form .loading:before{content:"";border:3px solid var(--tmv-color-primary);border-top-color:var(--tmv-color-white);border-radius:50%;width:24px;height:24px;margin:0 10px -6px 0;animation:1s linear infinite php-email-form-loading;display:inline-block}@keyframes php-email-form-loading{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-section{text-align:center;background:radial-gradient(80% 60% at 50% -10%,#0b06a712 0%,#0000 70%);justify-content:center;align-items:center;min-height:100vh;padding:4rem 0;display:flex;position:relative;overflow:hidden}.error-blob{filter:blur(80px);opacity:.12;pointer-events:none;border-radius:50%;position:absolute}.error-blob-1{background:var(--tmv-color-primary);width:500px;height:500px;top:5%;left:-10%}.error-blob-2{background:var(--tmv-color-accent);width:400px;height:400px;bottom:10%;right:-8%}.error-content{z-index:2;max-width:640px;margin:0 auto;position:relative}.error-number{justify-content:center;align-items:center;gap:.5rem;margin-bottom:2rem;display:flex}.error-digit{font-family:var(--tmv-font-heading);color:#0000;-webkit-text-stroke:3px var(--tmv-color-primary);font-size:clamp(5rem,12vw,9rem);font-weight:800;line-height:1}.error-digit--circle{position:relative}.error-digit-inner{font-family:var(--tmv-font-heading);color:#0000;-webkit-text-stroke:3px var(--tmv-color-accent);font-size:clamp(5rem,12vw,9rem);font-weight:800;animation:8s linear infinite errorSpin;display:inline-block}@keyframes errorSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-title{font-family:var(--tmv-font-heading);color:var(--tmv-color-text-primary);margin-bottom:1rem;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700}.error-text{color:var(--tmv-color-text-secondary);margin-bottom:2.5rem;font-size:1.05rem;line-height:1.75}.error-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:3rem;display:flex}.section-py+.section-py{border-top:1px solid var(--tmv-color-border)}.section-border-none{border:none!important}.section-title{position:relative}a:focus-visible,button:focus-visible{outline:2px solid var(--tmv-color-primary);outline-offset:3px;border-radius:var(--tmv-radius-xs)}img{vertical-align:middle}body{opacity:1}.counter-section .counter-number{font-family:var(--tmv-font-display);color:var(--tmv-color-white);letter-spacing:-.04em;font-size:clamp(2rem,5vw,4rem);font-weight:800;line-height:1}.portfolio-grid~section .counter-number,section .counter-number.text-gradient{color:#0000;background:var(--tmv-gradient-primary);-webkit-background-clip:text;background-clip:text}@media (max-width:991px){.main-nav .nav-link.active{color:var(--tmv-color-primary)}}.page-hero+section{position:relative}.portfolio-item{transition:opacity .35s,transform .35s}.pagination-custom{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-top:3rem;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.marquee-track:hover{animation-play-state:paused}.pricing-card.featured .pricing-plan-name{color:var(--tmv-color-primary)}.service-icon[style*=F0F9FF]{color:#0284c7!important;background:#f0f9ff!important}.cta-section .section-tag,.counter-section .section-tag{color:#ffffffe6;background:#ffffff1f;border:1px solid #fff3}.testimonials-swiper .swiper-pagination{margin-top:2rem;position:static}.testimonials-swiper .swiper-wrapper{align-items:stretch}.testimonials-swiper .swiper-slide{height:auto;display:flex}.main-nav .nav-link[aria-current=page]:before,.main-nav .nav-link.active:before{transform:scaleX(1)}@media (max-width:767px){.portfolio-item{width:50%}}@media (max-width:479px){.portfolio-item{width:100%}}.info-panel{background:var(--tmv-color-white);z-index:2000;flex-direction:column;gap:1.75rem;width:400px;max-width:92vw;height:100vh;padding:2rem 1.75rem;transition:transform .45s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;right:0;overflow:hidden auto;transform:translate(100%);box-shadow:-8px 0 40px #0000001a}.info-panel.is-open{transform:translate(0)}.info-panel-overlay{z-index:1990;-webkit-backdrop-filter:blur(3px);opacity:0;pointer-events:none;background:#00000059;transition:opacity .4s;position:fixed;inset:0}.info-panel-overlay.is-open{opacity:1;pointer-events:all}.info-panel-close{border:1px solid var(--tmv-color-border);width:38px;height:38px;color:var(--tmv-color-text-secondary);cursor:pointer;transition:var(--tmv-transition-fast);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:flex;position:absolute;top:1.25rem;right:1.25rem}.info-panel-close:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary);background:var(--tmv-color-primary-light)}.info-panel-logo{margin-top:.5rem}.info-panel-logo-text{font-family:var(--tmv-font-heading);color:var(--tmv-color-dark);letter-spacing:-.02em;font-size:1.875rem;font-weight:700;line-height:1}.info-panel-logo-text span{color:var(--tmv-color-primary)}.info-panel-tagline{color:var(--tmv-color-text-muted);letter-spacing:.02em;margin-top:.4rem;font-size:.8rem}.info-panel-divider{background:var(--tmv-color-border);flex-shrink:0;height:1px}.info-panel-section-title{font-size:var(--tmv-fs-base);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1.1rem;font-weight:700}.info-panel-contact-item{align-items:flex-start;gap:1rem;margin-bottom:1.1rem;display:flex}.info-panel-contact-item:last-child{margin-bottom:0}.info-panel-contact-icon{background:var(--tmv-color-primary-light);width:40px;height:40px;color:var(--tmv-color-primary);transition:var(--tmv-transition-fast);border:1px solid #0b06a726;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.info-panel-contact-item:hover .info-panel-contact-icon{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:var(--tmv-color-white)}.info-panel-contact-label{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.2rem;font-weight:500}.info-panel-contact-value{color:var(--tmv-color-text);line-height:1.5}.info-panel-gallery{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.info-panel-gallery-item{aspect-ratio:1;background:var(--tmv-color-bg-light);border:1px solid var(--tmv-color-border);border-radius:6px;overflow:hidden}.info-panel-gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.info-panel-gallery-item:hover img{transform:scale(1.1)}.info-panel-social{flex-wrap:wrap;gap:.6rem;display:flex}.info-panel-social a{border:1px solid var(--tmv-color-border);width:36px;height:36px;color:var(--tmv-color-text-secondary);transition:var(--tmv-transition-fast);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;text-decoration:none;display:flex}.info-panel-social a:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary);background:var(--tmv-color-primary-light)}.info-panel-btn{border:1px solid var(--tmv-color-border);cursor:pointer;width:38px;height:38px;transition:var(--tmv-transition-fast);background:0 0;border-radius:8px;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:3.5px;padding:9px;display:inline-flex}.info-panel-btn:hover{border-color:var(--tmv-color-primary);background:var(--tmv-color-primary-light)}.info-panel-btn-dot{background:var(--tmv-color-text-secondary);border-radius:50%;width:4px;height:4px;transition:background .2s}.info-panel-btn:hover .info-panel-btn-dot{background:var(--tmv-color-primary)}.site-header.header-dark .info-panel-btn{border-color:#ffffff40}.site-header.header-dark .info-panel-btn-dot{background:#ffffffbf}.site-header.scrolled .info-panel-btn{border-color:var(--tmv-color-border)}.site-header.scrolled .info-panel-btn-dot{background:var(--tmv-color-text-secondary)}.blog-featured{border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);background:var(--tmv-color-white);grid-template-columns:55% 45%;transition:box-shadow .3s,transform .3s;display:grid;overflow:hidden;box-shadow:0 4px 24px #0000000f}.blog-featured:hover{transform:translateY(-4px);box-shadow:0 20px 60px #0b06a71f}.blog-featured-media{min-height:340px;display:block;position:relative;overflow:hidden}.blog-featured-media img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.25,.46,.45,.94);display:block}.blog-featured:hover .blog-featured-media img{transform:scale(1.05)}.blog-featured-img-overlay{pointer-events:none;background:linear-gradient(135deg,#0b06a738 0%,#0000 60%);position:absolute;inset:0}.blog-cat-badge{background:var(--tmv-color-primary);color:#fff;text-transform:uppercase;letter-spacing:.08em;z-index:1;pointer-events:none;border-radius:999px;padding:.28rem .85rem;font-size:.69rem;font-weight:700;position:absolute;top:1rem;left:1rem}.blog-cat-badge--featured{background:var(--tmv-color-accent)}.blog-featured-content{flex-direction:column;justify-content:center;padding:2.5rem;display:flex}.blog-post-category{font-size:var(--tmv-fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--tmv-color-primary);align-items:center;gap:.45rem;margin-bottom:.625rem;font-weight:700;display:flex}.blog-post-category:before{content:"";background:var(--tmv-color-primary);border-radius:999px;flex-shrink:0;width:18px;height:2px;display:inline-block}.blog-featured-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.2rem,2.2vw,1.6rem);font-weight:700;line-height:1.3}.blog-featured-title a{color:inherit;text-decoration:none;transition:color .2s}.blog-featured-title a:hover{text-decoration:underline}.blog-featured-excerpt{color:var(--tmv-color-text-secondary);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin-bottom:1.75rem;line-height:1.75;display:-webkit-box;overflow:hidden}.blog-featured-footer{border-top:1px solid var(--tmv-color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:auto;padding-top:1.5rem;display:flex}.blog-author-chip{align-items:center;gap:.75rem;display:flex}.blog-author-chip-img{object-fit:cover;border:2px solid var(--tmv-color-border);border-radius:50%;flex-shrink:0;width:40px;height:40px}.blog-author-chip-name{font-weight:600;font-size:var(--tmv-fs-sm);color:var(--tmv-color-text);line-height:1.3}.blog-author-chip-meta{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-secondary)}.blog-read-link{font-weight:700;font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);border:1.5px solid var(--tmv-color-primary);white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .9rem;text-decoration:none;transition:all .2s;display:inline-flex}.blog-read-link:hover{background:var(--tmv-color-primary);color:#fff;gap:.65rem}.blog-section-label{text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:1rem;font-size:.71rem;font-weight:700;display:flex}.blog-section-label:before,.blog-section-label:after{content:"";background:var(--tmv-color-border);flex:1;height:1px}.blog-section-label:before{background:var(--tmv-color-primary);max-width:36px}.blog-post-card{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);flex-direction:column;height:100%;transition:box-shadow .3s,transform .3s,border-color .3s;display:flex;overflow:hidden}.blog-post-card:hover{border-color:#0000;transform:translateY(-5px);box-shadow:0 18px 52px #0b06a71a}.bpc-cat{background:var(--tmv-color-primary);color:#fff;text-transform:uppercase;letter-spacing:.07em;pointer-events:none;border-radius:999px;padding:.22rem .7rem;font-size:.67rem;font-weight:700;position:absolute;top:.75rem;left:.75rem}.bpc-avatar{object-fit:cover;border:2px solid var(--tmv-color-border);border-radius:50%;flex-shrink:0;width:30px;height:30px}.bpc-meta{flex:1;min-width:0}.bpc-author{color:var(--tmv-color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:600;display:block;overflow:hidden}.bpc-date{color:var(--tmv-color-text-secondary);font-size:.72rem}.bpc-read-time{color:var(--tmv-color-text-secondary);white-space:nowrap;align-items:center;gap:.3rem;font-size:.72rem;display:flex}.blog-pag-nav{justify-content:center;align-items:center;gap:.375rem;padding-top:3rem;display:flex}.blog-pag-btn{border-radius:var(--tmv-radius-md);border:1.5px solid var(--tmv-color-border);width:42px;height:42px;color:var(--tmv-color-text-secondary);background:var(--tmv-color-white);justify-content:center;align-items:center;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.blog-pag-btn:hover,.blog-pag-btn.active{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff;box-shadow:0 4px 14px #0b06a759}.blog-pag-dots{color:var(--tmv-color-text-secondary);padding:0 .25rem;font-size:1.1rem}.blog-sidebar{flex-direction:column;gap:1.5rem;display:flex;position:sticky;top:112px}.sw{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);padding:1.625rem}.sw-title{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-md);color:var(--tmv-color-text);border-bottom:1px solid var(--tmv-color-border);letter-spacing:-.01em;margin-bottom:1.125rem;padding-bottom:.875rem;position:relative}.sw-title:after{content:"";background:var(--tmv-color-primary);width:32px;height:2px;position:absolute;bottom:-1px;left:0}.sw-search{display:flex}.sw-search-input{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md) 0 0 var(--tmv-radius-md);min-width:0;font-family:var(--tmv-font-body);color:var(--tmv-color-text);background:var(--tmv-color-bg-alt);border-right:none;outline:none;flex:1;padding:.7rem 1rem;font-size:.87rem;transition:border-color .2s}.sw-search-input:focus{border-color:var(--tmv-color-primary);background:#fff}.sw-search-btn{background:var(--tmv-color-primary);border:1.5px solid var(--tmv-color-primary);border-radius:0 var(--tmv-radius-md) var(--tmv-radius-md) 0;color:#fff;cursor:pointer;padding:.7rem 1rem;font-size:.9rem;transition:background .2s}.sw-search-btn:hover{background:var(--tmv-color-primary-dark)}.sw-cats{margin:0;padding:0;list-style:none}.sw-cat{border-bottom:1px solid var(--tmv-color-border);justify-content:space-between;align-items:center;padding:.55rem 0;text-decoration:none;transition:padding-left .2s;display:flex}.sw-cats li:last-child .sw-cat{border-bottom:none}.sw-cat-name{color:var(--tmv-color-text-secondary);align-items:center;gap:.5rem;transition:color .2s;display:flex}.sw-cat-name:before{content:"";background:var(--tmv-color-border);border-radius:50%;flex-shrink:0;width:6px;height:6px;transition:background .2s}.sw-cat:hover{padding-left:.25rem}.sw-cat:hover .sw-cat-name{color:var(--tmv-color-primary)}.sw-cat:hover .sw-cat-name:before{background:var(--tmv-color-primary)}.sw-cat-count{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);border-radius:999px;padding:.1rem .55rem;font-size:.71rem;font-weight:700}.sw-recent{flex-direction:column;gap:1rem;display:flex}.sw-recent-item{border-bottom:1px solid var(--tmv-color-border);align-items:flex-start;gap:.875rem;padding-bottom:1rem;text-decoration:none;display:flex}.sw-recent-item:last-child{border-bottom:none;padding-bottom:0}.sw-recent-img{object-fit:cover;border-radius:var(--tmv-radius-sm);flex-shrink:0;width:64px;height:52px}.sw-recent-info{flex:1;min-width:0}.sw-recent-title{color:var(--tmv-color-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.25rem;font-weight:600;line-height:1.4;transition:color .2s;display:-webkit-box;overflow:hidden}.sw-recent-item:hover .sw-recent-title{text-decoration:underline}.sw-recent-date{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-secondary);align-items:center;gap:.3rem;display:flex}.sw-tags{flex-wrap:wrap;gap:.4rem;display:flex}.sw-tag{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary);border-radius:999px;padding:.3rem .8rem;font-weight:500;text-decoration:none;transition:all .2s}.sw-tag:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff;transform:translateY(-1px)}.sw-nl-badge{color:#fff;letter-spacing:.09em;text-transform:uppercase;z-index:1;background:#ffffff26;border:1px solid #ffffff40;border-radius:100px;align-items:center;gap:.4rem;margin-bottom:.9rem;padding:.28rem .75rem;font-size:.68rem;font-weight:700;display:inline-flex;position:relative}.sw-nl-badge-dot{background:#7dd3fc;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite sw-pulse}@keyframes sw-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}.sw-nl-form{z-index:1;position:relative}.sw-nl-input{border-radius:var(--tmv-radius-md);color:#fff;width:100%;font-family:var(--tmv-font-body);background:#ffffff1f;border:1.5px solid #ffffff38;outline:none;margin-bottom:.625rem;padding:.7rem 1rem;font-size:.875rem;transition:border-color .2s,background .2s}.sw-nl-input::placeholder{color:#ffffff73}.sw-nl-input:focus{background:#ffffff2e;border-color:#ffffffa6}.sw-nl-btn{width:100%;color:var(--tmv-color-primary);border-radius:var(--tmv-radius-md);font-family:var(--tmv-font-display);cursor:pointer;background:#fff;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;font-weight:700;transition:all .2s;display:flex}.sw-nl-btn:hover{background:#e8f0ff;transform:translateY(-1px);box-shadow:0 8px 24px #00000040}.sw-nl-fine{color:#ffffff61;text-align:center;z-index:1;margin-top:.625rem;margin-bottom:0;font-size:.7rem;position:relative}.sw-toc-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sw-toc-item{border-bottom:1px solid var(--tmv-color-border)}.sw-toc-item:last-child{border-bottom:none}.sw-toc-link{color:var(--tmv-color-text-secondary);align-items:flex-start;gap:.6rem;padding:.55rem 0;font-size:.86rem;line-height:1.4;text-decoration:none;transition:all .2s;display:flex}.sw-toc-link:before{content:"";background:var(--tmv-color-border);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:.35rem;transition:background .2s,transform .2s}.sw-toc-link:hover{color:var(--tmv-color-primary);padding-left:.2rem}.sw-toc-link:hover:before{background:var(--tmv-color-primary);transform:scale(1.4)}.reading-progress-bar{background:var(--tmv-gradient-primary);z-index:9999;pointer-events:none;border-radius:0 999px 999px 0;width:0%;height:3px;transition:width .1s linear;position:fixed;top:0;left:0}.article-cover{border-radius:var(--tmv-radius-xl);margin-bottom:3rem;overflow:hidden;box-shadow:0 8px 40px #0000001a}.article-cover img{object-fit:cover;width:100%;height:460px;display:block}.article-body{color:var(--tmv-color-text-secondary);font-size:1.05rem;line-height:1.9}.article-lead{color:var(--tmv-color-text);border-bottom:2px solid var(--tmv-color-border);margin-bottom:2.5rem;padding-bottom:2rem;font-size:1.17rem;font-weight:500;line-height:1.75}.article-body h2,.article-body .h2{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.02em;border-left:3px solid var(--tmv-color-primary);margin:2.75rem 0 1rem;padding-left:1rem;font-size:clamp(1.22rem,2.4vw,1.52rem);font-weight:700;line-height:1.3}.article-body h3,.article-body .h3{font-family:var(--tmv-font-display);color:var(--tmv-color-text);margin:2rem 0 .75rem;font-size:1.15rem;font-weight:700}.article-body p{margin-bottom:1.5rem}.article-body a{color:var(--tmv-color-primary);text-underline-offset:3px;text-decoration:underline}.article-body strong{color:var(--tmv-color-text);font-weight:600}.article-blockquote{border-left:4px solid var(--tmv-color-primary);border-radius:0 var(--tmv-radius-xl) var(--tmv-radius-xl) 0;background:linear-gradient(135deg,#0b06a70a,#0ed5fd0a);margin:2.5rem 0;padding:2rem 2rem 2rem 2.5rem;position:relative}.article-blockquote:before{content:"”";color:var(--tmv-color-primary);opacity:.15;pointer-events:none;font-size:4.5rem;line-height:1;position:absolute;bottom:-.9rem;right:1.5rem}.article-blockquote p{color:var(--tmv-color-text);margin-bottom:.5rem;font-size:1.12rem;font-style:italic;line-height:1.7;position:relative}.article-blockquote cite{color:var(--tmv-color-text-secondary);font-style:normal}@media (max-width:575px){.article-blockquote{padding:1.5rem}.article-blockquote:before{bottom:-1.5rem}}.article-list{margin-bottom:1.5rem;padding-left:1.5rem;list-style:outside}.article-list li{margin-bottom:.625rem;padding-left:.25rem}.article-code-block{border-radius:var(--tmv-radius-lg);border:1px solid #2a2b3d;margin:2rem 0;overflow:hidden;box-shadow:0 8px 32px #0000002e}.article-code-header{color:#fff6;font-size:.77rem;font-family:var(--tmv-font-mono);background:#1a1b26;justify-content:space-between;align-items:center;padding:.65rem 1.25rem;display:flex}.article-code-dots{gap:5px;display:flex}.article-code-dots span{border-radius:50%;width:10px;height:10px}.article-code-dots span:first-child{background:#ff5f56}.article-code-dots span:nth-child(2){background:#febc2e}.article-code-dots span:nth-child(3){background:#27c93f}.article-code-lang{color:#fff9;background:#ffffff14;border-radius:4px;padding:.2rem .6rem}.article-code-block pre{background:#1a1b26;margin:0;padding:1.5rem;overflow-x:auto}.article-code-block code{font-family:var(--tmv-font-mono);color:#c0caf5;font-size:.87rem;line-height:1.7}.article-meta-row{border-top:1px solid var(--tmv-color-border);border-bottom:1px solid var(--tmv-color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:2.5rem 0;padding:1.5rem 0;display:flex}.article-tags-group{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.article-tag-label{font-weight:700;font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary);margin-right:.25rem}.article-share-group{align-items:center;gap:.5rem;display:flex}.article-share-label{font-weight:700;font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary)}.article-share-btn{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);width:36px;height:36px;color:var(--tmv-color-text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:.88rem;text-decoration:none;transition:all .2s;display:flex}.article-share-btn:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff;transform:translateY(-2px)}.article-author-card{background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);gap:1.5rem;margin:2.5rem 0;padding:2rem;display:flex}.article-author-avatar{object-fit:cover;width:80px;height:80px;box-shadow:0 0 0 2px var(--tmv-color-primary);border:3px solid #fff;border-radius:50%;flex-shrink:0}.article-author-name{font-family:var(--tmv-font-display);font-weight:700;font-size:var(--tmv-fs-md);color:var(--tmv-color-text);margin-bottom:.2rem}.article-author-role{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);margin-bottom:.625rem;font-weight:600}.article-author-bio{color:var(--tmv-color-text-secondary);margin-bottom:.75rem;line-height:1.7}.article-author-socials{gap:.5rem;display:flex}.article-author-socials a{border:1px solid var(--tmv-color-border);width:32px;height:32px;color:var(--tmv-color-text-secondary);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;text-decoration:none;transition:all .2s;display:flex}.article-author-socials a:hover{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff}.article-post-nav{grid-template-columns:1fr 1fr;gap:1rem;margin:2.5rem 0;display:grid}.article-nav-item{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);padding:1.25rem;text-decoration:none;transition:all .2s;display:block}.article-nav-item:hover{border-color:var(--tmv-color-primary);background:var(--tmv-color-primary-light);transform:translateY(-2px)}.article-nav-item--next{text-align:right}.article-nav-label{text-transform:uppercase;letter-spacing:.08em;color:var(--tmv-color-primary);align-items:center;gap:.35rem;margin-bottom:.35rem;font-size:.71rem;font-weight:700;display:flex}.article-nav-item--next .article-nav-label{justify-content:flex-end}.article-nav-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.related-posts{border-top:1px solid var(--tmv-color-border);margin-top:3rem;padding-top:3rem}.glightbox-clean .gslide-desc{font-size:var(--tmv-fs-base);font-family:inherit}.proj-results-row{background:var(--tmv-color-border);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);grid-template-columns:repeat(3,1fr);gap:1px;margin:2rem 0 0;display:grid;overflow:hidden}@media (max-width:767px){.proj-results-row{grid-template-columns:1fr}}.proj-result-cell{background:var(--tmv-color-bg-alt);text-align:center;padding:1.5rem 1rem}.proj-result-num{font-family:var(--tmv-font-display);color:var(--tmv-color-primary);margin-bottom:.3rem;font-size:2rem;font-weight:800;line-height:1}.proj-result-label{color:var(--tmv-color-text-primary);margin-bottom:.25rem;font-weight:600}.proj-result-desc{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text-secondary);line-height:1.5;margin:0!important}.proj-gallery-grid{grid-template-columns:1fr 1fr;gap:.75rem;margin:1.5rem 0 2rem;display:grid}.proj-gallery-item{border-radius:var(--tmv-radius-md);display:block;position:relative;overflow:hidden}.proj-gallery-item img{object-fit:cover;width:100%;height:190px;transition:transform .45s;display:block}.proj-gallery-item:hover img{transform:scale(1.04)}.proj-gallery-item--wide{grid-column:1/-1}.proj-gallery-item--wide img{height:260px}@media (max-width:575px){.proj-gallery-grid{grid-template-columns:1fr}.proj-gallery-item img{height:220px}}.sw-nav-list{margin:0 0 .5rem;padding:0;list-style:none}.sw-nav-link{border-radius:var(--tmv-radius-sm);color:var(--tmv-color-text-secondary);justify-content:space-between;align-items:center;gap:.65rem;padding:.65rem .75rem;text-decoration:none;transition:all .2s;display:flex}.sw-nav-link:hover,.sw-nav-link.active{background:var(--tmv-color-primary);color:#fff}.sw-cta{background:var(--tmv-gradient-primary);text-align:center;color:#fff;border:none}.sw-cta .sw-title{color:#fff;border-bottom-color:#fff3}.sw-cta .sw-title:after{background:#ffffff73}.sw-cta-text{color:#ffffffd1;margin-bottom:1.25rem;font-size:.875rem}.proj-details-list{margin:0;padding:0;list-style:none}.proj-details-item{border-bottom:1px solid var(--tmv-color-border);justify-content:space-between;align-items:baseline;gap:1rem;padding:.6rem 0;display:flex}.proj-details-val i{font-size:var(--tmv-fs-sm)}.proj-details-item:first-child{padding-top:0}.proj-details-item:last-child{border-bottom:none;padding-bottom:0}.proj-details-key{color:var(--tmv-color-text-secondary);flex-shrink:0}.proj-details-val{color:var(--tmv-color-text-primary);text-align:right}.proj-details-val a{color:var(--tmv-color-primary);text-decoration:none}.proj-details-val a:hover{text-decoration:underline}.sw-related-post{border-bottom:1px solid var(--tmv-color-border);align-items:flex-start;gap:.85rem;padding:.75rem 0;text-decoration:none;display:flex}.sw-related-post:first-of-type{padding-top:0}.sw-related-post:last-of-type{border-bottom:none;padding-bottom:0}.sw-related-img{border-radius:var(--tmv-radius-sm);object-fit:cover;flex-shrink:0;width:64px;height:50px}.sw-related-cat{color:var(--tmv-color-primary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.2rem;font-size:.7rem;font-weight:600}.sw-related-title{color:var(--tmv-color-text-primary);font-size:.82rem;font-weight:600;line-height:1.4}.sw-related-post:hover .sw-related-title{color:var(--tmv-color-primary)}.sw-highlights{margin:0;padding:0;list-style:none}.sw-highlights li{border-bottom:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);align-items:center;gap:.6rem;padding:.55rem 0;display:flex}.sw-highlights li:first-child{padding-top:0}.sw-highlights li:last-child{border-bottom:none;padding-bottom:0}.sw-highlights li svg{color:var(--tmv-color-primary);flex-shrink:0;width:14px;height:14px}.sw-download{border-bottom:1px solid var(--tmv-color-border);align-items:center;gap:.75rem;padding:.75rem 0;display:flex}.sw-download:first-of-type{padding-top:0}.sw-download:last-of-type{border-bottom:none;padding-bottom:0}.sw-download-icon{border-radius:var(--tmv-radius-sm);width:40px;min-width:40px;height:40px;color:var(--tmv-color-primary);background:#0b06a71a;justify-content:center;align-items:center;display:flex}.sw-download-name{font-size:var(--tmv-fs-base);color:var(--tmv-color-text-primary);margin-bottom:.15rem;font-weight:500}.sw-dl-link{font-size:var(--tmv-fs-sm);color:var(--tmv-color-primary);align-items:center;gap:.3rem;font-weight:500;text-decoration:none;transition:gap .2s;display:inline-flex}.sw-dl-link>i{font-size:var(--tmv-fs-sm)}.related-posts-heading{font-family:var(--tmv-font-display);color:var(--tmv-color-text);align-items:center;gap:.75rem;margin-bottom:1.75rem;font-size:1.35rem;font-weight:700;display:flex}.related-posts-heading:before{content:"";background:var(--tmv-color-primary);border-radius:999px;flex-shrink:0;width:4px;height:24px}.comments-wrap{border-top:1px solid var(--tmv-color-border);margin-top:3rem;padding-top:3rem}.comments-heading{font-family:var(--tmv-font-display);color:var(--tmv-color-dark);align-items:center;gap:.75rem;margin-bottom:1.75rem;font-size:1.25rem;font-weight:700;display:flex}.comments-count-badge{background:var(--tmv-color-primary);color:#fff;border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:700}.comment-thread{flex-direction:column;gap:.85rem;display:flex}.comment-item{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);background:#fff;gap:1rem;padding:1.35rem 1.5rem;transition:border-color .2s,box-shadow .2s;display:flex}.comment-item:hover{border-color:#0b06a733;box-shadow:0 4px 20px #0b06a712}.comment-item--reply{border:1.5px solid #0b06a71f;border-left:3px solid var(--tmv-color-primary);border-radius:var(--tmv-radius-lg);background:#0b06a708;gap:1rem;margin-left:3rem;padding:1.25rem 1.5rem;transition:border-color .2s,box-shadow .2s;display:flex}.comment-item--reply:hover{border-color:#0b06a740;box-shadow:0 4px 16px #0b06a714}.comment-avatar{object-fit:cover;border:2px solid var(--tmv-color-border);border-radius:50%;flex-shrink:0;width:44px;height:44px}.comment-item--reply .comment-avatar{border-color:#0b06a74d;box-shadow:0 0 0 3px #0b06a714}.comment-body-inner{flex:1;min-width:0}.comment-header{flex-wrap:wrap;align-items:center;gap:.55rem;margin-bottom:.45rem;display:flex}.comment-author{font-family:var(--tmv-font-display);color:var(--tmv-color-dark);font-weight:700;font-size:var(--tmv-fs-md)}.comment-badge{background:var(--tmv-color-primary);color:#fff;letter-spacing:.03em;border-radius:999px;padding:.14rem .55rem;font-size:.66rem;font-weight:700}.comment-date{font-size:var(--tmv-fs-xs);color:var(--tmv-color-text-secondary);margin-left:auto}.comment-text{color:var(--tmv-color-text-secondary);margin-bottom:.6rem;line-height:1.75}.comment-form-wrap{border-radius:var(--tmv-radius-xl);border:1.5px solid var(--tmv-color-border);background:#fff;margin-top:2.5rem;box-shadow:0 4px 20px #0000000d}.comment-form-body{padding:2rem}.comment-form-title{border-bottom:1px solid var(--tmv-color-border);margin-bottom:1.5rem;padding-bottom:1.25rem}.comment-form-title h4,.comment-form-title .h4{font-family:var(--tmv-font-display);color:var(--tmv-color-text);margin-bottom:.25rem;font-weight:700}.comment-form-title p{margin-bottom:0}.cmt-label{color:var(--tmv-color-text-secondary);margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.cmt-input{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md);width:100%;font-family:var(--tmv-font-body);background:var(--tmv-color-surface);color:var(--tmv-color-text);outline:none;padding:.85rem 1.1rem;font-size:.93rem;transition:border-color .2s,box-shadow .2s,background .2s}.cmt-input:focus{border-color:var(--tmv-color-primary);background:#fff;box-shadow:0 0 0 3px #0b06a71a}.cmt-input::placeholder{color:var(--tmv-color-text-secondary);opacity:.65}textarea.cmt-input{resize:vertical;min-height:130px}@media (max-width:991px){.blog-sidebar{position:static}}@media (max-width:767px){.blog-featured{grid-template-columns:1fr}.blog-featured-media{aspect-ratio:16/9;min-height:240px}.blog-featured-content{padding:1.5rem}.article-cover img{height:260px}.article-author-card{flex-direction:column}.article-post-nav{grid-template-columns:1fr}.article-meta-row{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.comment-date{margin-left:unset}.comment-item--reply{margin-left:1rem;padding:.875rem 1rem}}.ps-hero-wrap{border-radius:var(--tmv-radius-xl);margin-bottom:3rem;display:block;position:relative;overflow:hidden;box-shadow:0 12px 48px #00000024}.ps-hero-wrap img{object-fit:cover;width:100%;height:500px;transition:transform .65s cubic-bezier(.25,.46,.45,.94);display:block}.ps-hero-wrap:hover img{transform:scale(1.03)}.ps-hero-zoom{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:46px;height:46px;color:var(--tmv-color-text);background:#ffffffeb;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;transition:all .2s;display:flex;position:absolute;bottom:1.25rem;right:1.25rem;box-shadow:0 4px 16px #00000026}.ps-hero-zoom:hover{background:var(--tmv-color-primary);color:#fff;transform:scale(1.1)}.ps-stats-bar{background:var(--tmv-color-dark);border-radius:var(--tmv-radius-xl);grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:3rem;display:grid;overflow:hidden}.ps-stats-bar-item{text-align:center;border-right:1px solid #ffffff14;padding:1.5rem 1.25rem;position:relative}.ps-stats-bar-item:last-child{border-right:none}.ps-stats-bar-num{font-family:var(--tmv-font-display);color:var(--tmv-color-accent);letter-spacing:-.02em;margin-bottom:.3rem;font-size:1.6rem;font-weight:700;line-height:1.1}.ps-stats-bar-label{color:#ffffff80;text-transform:uppercase;letter-spacing:.07em;font-size:.73rem;font-weight:500}.ps-section{margin-bottom:3rem}.ps-section-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--tmv-color-primary);align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:.7rem;font-weight:700;display:flex}.ps-section-eyebrow:before{content:"";background:var(--tmv-color-primary);border-radius:999px;flex-shrink:0;width:24px;height:2px}.ps-section-heading{font-family:var(--tmv-font-display);color:var(--tmv-color-text);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.3rem,2.5vw,1.65rem);font-weight:700;line-height:1.3}.ps-text{color:var(--tmv-color-text-secondary);margin-bottom:1.25rem;font-size:.97rem;line-height:1.85}.ps-text:last-child{margin-bottom:0}.ps-challenge-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0;display:grid}.ps-challenge-item{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);text-align:center;padding:1.5rem 1.25rem;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.ps-challenge-item:hover{border-color:var(--tmv-color-primary);box-shadow:0 4px 20px #0b06a714}.ps-challenge-item:before{content:"";background:var(--tmv-color-primary);height:3px;position:absolute;top:0;left:0;right:0}.ps-challenge-item:nth-child(2):before{background:var(--tmv-color-highlight)}.ps-challenge-item:nth-child(3):before{background:var(--tmv-color-accent)}.ps-challenge-num{font-family:var(--tmv-font-display);color:var(--tmv-color-primary);letter-spacing:-.03em;margin-bottom:.4rem;font-size:2rem;font-weight:800;line-height:1.1}.ps-challenge-item:nth-child(2) .ps-challenge-num{color:var(--tmv-color-highlight)}.ps-challenge-item:nth-child(3) .ps-challenge-num{color:var(--tmv-color-accent)}.ps-challenge-desc{color:var(--tmv-color-text-secondary);font-size:.8rem;line-height:1.5}.ps-process-list{flex-direction:column;gap:1rem;margin:1.5rem 0;display:flex}.ps-process-item{background:var(--tmv-color-bg-alt);border-radius:var(--tmv-radius-lg);border:1px solid var(--tmv-color-border);align-items:flex-start;gap:1.25rem;padding:1.375rem;transition:border-color .2s,transform .2s;display:flex}.ps-process-item:hover{border-color:var(--tmv-color-primary);transform:translate(4px)}.ps-process-num{background:var(--tmv-gradient-primary);width:40px;height:40px;font-family:var(--tmv-font-display);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.87rem;font-weight:700;display:flex;box-shadow:0 4px 12px #0b06a74d}.ps-process-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);margin-bottom:.3rem;font-size:.95rem;font-weight:700}.ps-process-text{color:var(--tmv-color-text-secondary);margin:0;font-size:.87rem;line-height:1.65}.ps-gallery{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;gap:.75rem;margin:1.5rem 0;display:grid}.ps-gallery-item{border-radius:var(--tmv-radius-lg);background:var(--tmv-color-bg-alt);display:block;position:relative;overflow:hidden}.ps-gallery-item:first-child{grid-row:1/3}.ps-gallery-item img{object-fit:cover;width:100%;height:100%;min-height:180px;transition:transform .5s cubic-bezier(.25,.46,.45,.94);display:block}.ps-gallery-item:first-child img{min-height:360px}.ps-gallery-item:hover img{transform:scale(1.06)}.ps-gallery-overlay{opacity:0;color:#fff;background:#0b06a799;justify-content:center;align-items:center;font-size:1.5rem;transition:opacity .3s;display:flex;position:absolute;inset:0}.ps-gallery-item:hover .ps-gallery-overlay{opacity:1}.ps-quote{background:var(--tmv-color-dark);border-radius:var(--tmv-radius-xl);margin:2rem 0;padding:2.5rem 2.5rem 2.5rem 3rem;position:relative;overflow:hidden}.ps-quote:before{content:"“";color:var(--tmv-color-primary);opacity:.2;pointer-events:none;font-family:Georgia,serif;font-size:8rem;line-height:1;position:absolute;top:-1rem;left:1.5rem}.ps-quote-text{color:#ffffffe6;margin-bottom:1.5rem;font-size:1.1rem;font-style:italic;line-height:1.75;position:relative}.ps-quote-author{align-items:center;gap:1rem;display:flex}.ps-quote-avatar{object-fit:cover;border:2px solid var(--tmv-color-primary);border-radius:50%;flex-shrink:0;width:48px;height:48px}.ps-quote-name{font-family:var(--tmv-font-display);color:#fff;margin-bottom:.1rem;font-size:.95rem;font-weight:700}.ps-quote-role{color:#ffffff80;font-size:.8rem}.ps-results{grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0;display:grid}.ps-result-item{border-radius:var(--tmv-radius-xl);border:1px solid var(--tmv-color-border);background:var(--tmv-color-white);text-align:center;padding:2rem 1.5rem;transition:box-shadow .3s,transform .3s;position:relative;overflow:hidden}.ps-result-item:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0b06a71a}.ps-result-item:after{content:"";background:var(--tmv-gradient-primary);transform-origin:0;height:3px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.ps-result-item:hover:after{transform:scaleX(1)}.ps-result-icon{border-radius:var(--tmv-radius-md);background:var(--tmv-color-primary-light);width:48px;height:48px;color:var(--tmv-color-primary);justify-content:center;align-items:center;margin:0 auto .875rem;font-size:1.2rem;display:flex}.ps-result-num{font-family:var(--tmv-font-display);color:var(--tmv-color-primary);letter-spacing:-.03em;background:var(--tmv-gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.3rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;line-height:1.1}.ps-result-label{color:var(--tmv-color-text-secondary);font-size:.83rem;font-weight:500;line-height:1.4}.ps-tags{border-top:1px solid var(--tmv-color-border);flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.ps-tag{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);color:var(--tmv-color-text-secondary);border-radius:999px;padding:.35rem .9rem;font-size:.8rem;font-weight:600;transition:all .2s}.ps-tag:hover{background:var(--tmv-color-primary-light);border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.ps-project-nav{border-top:1px solid var(--tmv-color-border);grid-template-columns:1fr 1fr;gap:1rem;margin-top:2.5rem;padding-top:2.5rem;display:grid}.ps-nav-item{border:1.5px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);align-items:center;gap:1rem;padding:1.25rem;text-decoration:none;transition:all .2s;display:flex}.ps-nav-item:hover{border-color:var(--tmv-color-primary);background:var(--tmv-color-primary-light);transform:translateY(-2px)}.ps-nav-item--next{text-align:right;justify-content:flex-end}.ps-nav-arrow{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);width:40px;height:40px;color:var(--tmv-color-text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;transition:all .2s;display:flex}.ps-nav-item:hover .ps-nav-arrow{background:var(--tmv-color-primary);border-color:var(--tmv-color-primary);color:#fff}.ps-nav-label{text-transform:uppercase;letter-spacing:.08em;color:var(--tmv-color-primary);margin-bottom:.2rem;font-size:.71rem;font-weight:700}.ps-nav-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);font-size:.92rem;font-weight:600;line-height:1.3}.pss-sidebar{flex-direction:column;gap:1.5rem;display:flex;position:sticky;top:100px}.pss-widget{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-xl);padding:1.625rem}.pss-widget-title{font-family:var(--tmv-font-display);color:var(--tmv-color-text);border-bottom:1px solid var(--tmv-color-border);letter-spacing:-.01em;margin-bottom:1.125rem;padding-bottom:.875rem;font-size:1rem;font-weight:700;position:relative}.pss-widget-title:after{content:"";background:var(--tmv-color-primary);width:32px;height:2px;position:absolute;bottom:-1px;left:0}.pss-info-list{margin:0;padding:0;list-style:none}.pss-info-item{border-bottom:1px solid var(--tmv-color-border);align-items:flex-start;gap:.875rem;padding:.75rem 0;display:flex}.pss-info-item:last-child{border-bottom:none;padding-bottom:0}.pss-info-icon{border-radius:var(--tmv-radius-sm);background:var(--tmv-color-primary-light);width:34px;height:34px;color:var(--tmv-color-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;display:flex}.pss-info-label{text-transform:uppercase;letter-spacing:.07em;color:var(--tmv-color-text-secondary);margin-bottom:.15rem;font-size:.73rem;font-weight:700}.pss-info-value{color:var(--tmv-color-text);font-size:.9rem;font-weight:600;line-height:1.4}.pss-info-link{color:var(--tmv-color-primary);align-items:center;gap:.3rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:gap .2s;display:inline-flex}.pss-info-link:hover{gap:.5rem}.pss-tech-grid{flex-wrap:wrap;gap:.5rem;display:flex}.pss-tech-badge{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm);color:var(--tmv-color-text-secondary);align-items:center;gap:.45rem;padding:.4rem .875rem;font-size:.82rem;font-weight:600;transition:all .2s;display:inline-flex}.pss-tech-badge:hover{background:var(--tmv-color-primary-light);border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.pss-tech-badge i{color:var(--tmv-color-primary);font-size:.85rem}.pss-cta{text-align:center;color:#fff;background:linear-gradient(145deg,#0b06a7 0%,#0ed5fd 100%);border-color:#0000}.pss-cta-icon{border-radius:var(--tmv-radius-lg);background:#ffffff26;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1rem;font-size:1.4rem;display:flex}.pss-cta .pss-widget-title{color:#fff;border-bottom-color:#fff3}.pss-cta .pss-widget-title:after{background:#ffffff73}.pss-cta-text{opacity:.85;margin-bottom:1.25rem;font-size:.88rem;line-height:1.6}.pss-cta-btn{width:100%;color:var(--tmv-color-primary);border-radius:var(--tmv-radius-md);font-family:var(--tmv-font-display);text-align:center;cursor:pointer;background:#fff;border:none;padding:.8rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:all .2s;display:block}.pss-cta-btn:hover{color:var(--tmv-color-primary);background:#ffffffeb;box-shadow:0 4px 16px #0003}.pss-related{flex-direction:column;gap:.875rem;display:flex}.pss-related-item{border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-lg);background:var(--tmv-color-bg-alt);align-items:center;gap:.875rem;padding:.75rem;text-decoration:none;transition:all .2s;display:flex}.pss-related-item:hover{border-color:var(--tmv-color-primary);background:var(--tmv-color-primary-light);transform:translate(3px)}.pss-related-img{object-fit:cover;border-radius:var(--tmv-radius-sm);flex-shrink:0;width:68px;height:52px}.pss-related-name{font-family:var(--tmv-font-display);color:var(--tmv-color-text);margin-bottom:.2rem;font-size:.9rem;font-weight:700;transition:color .2s}.pss-related-item:hover .pss-related-name{color:var(--tmv-color-primary)}.pss-related-cat{color:var(--tmv-color-text-secondary);align-items:center;gap:.3rem;font-size:.73rem;display:flex}.pss-related-cat:before{content:"";background:var(--tmv-color-accent);border-radius:50%;flex-shrink:0;width:5px;height:5px}@media (max-width:991px){.pss-sidebar{position:static}.ps-stats-bar{grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.ps-hero-wrap img{height:300px}.ps-stats-bar{grid-template-columns:repeat(2,1fr)}.ps-challenge-grid,.ps-results,.ps-gallery{grid-template-columns:1fr}.ps-gallery-item:first-child{grid-row:auto}.ps-gallery-item img,.ps-gallery-item:first-child img{min-height:220px}.ps-project-nav{grid-template-columns:1fr}.ps-quote{padding:1.75rem}}.sw-contact-cta{border-radius:var(--tmv-radius-xl);color:#fff;text-align:center;background:linear-gradient(145deg,#0b06a7 0%,#0ed5fd 100%);padding:1.75rem 1.625rem;position:relative;overflow:hidden}.sw-contact-cta:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(-45deg,#ffffff08 0 1px,#0000 0 50%);background-size:16px 16px;position:absolute;inset:0}.sw-contact-cta-glow{pointer-events:none;background:radial-gradient(circle,#ffffff1f 0%,#0000 70%);border-radius:50%;width:200px;height:200px;position:absolute;top:-70px;right:-70px}.sw-contact-cta-icon{border-radius:var(--tmv-radius-md);color:#fff;background:#ffffff26;border:1px solid #ffffff38;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:1rem;margin-left:auto;margin-right:auto;font-size:1.15rem;display:flex;position:relative}.sw-contact-cta-title{font-family:var(--tmv-font-display);color:#fff;margin-bottom:.6rem;font-weight:700;position:relative}.sw-contact-cta-text{color:#ffffffa6;margin-bottom:1.25rem;font-size:.85rem;line-height:1.65;position:relative}.sw-contact-cta-btn{width:100%;color:var(--tmv-color-primary);border-radius:var(--tmv-radius-md);font-family:var(--tmv-font-display);background:#fff;justify-content:center;align-items:center;gap:.5rem;margin-bottom:1.1rem;padding:.75rem 1rem;font-size:.9375rem;font-weight:700;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s;display:flex;position:relative}.sw-contact-cta-btn:hover{color:var(--tmv-color-primary);background:#e8f0ff;transform:translateY(-1px);box-shadow:0 6px 20px #0003}.sw-contact-cta-btn i{transition:transform .2s}.sw-contact-cta-btn:hover i{transform:translate(3px)}.sw-contact-cta-meta{flex-wrap:wrap;justify-content:space-between;gap:.4rem;display:flex;position:relative}.sw-contact-cta-meta span{color:#ffffff80;align-items:center;gap:.45rem;font-size:.8rem;display:flex}.team-card-bio{color:var(--tmv-color-text-secondary);margin-top:.6rem;margin-bottom:0;line-height:1.65}.ts-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--tmv-color-primary);align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.72rem;font-weight:700;display:flex}.ts-section-label:before{content:"";background:var(--tmv-color-primary);border-radius:1px;width:24px;height:2px}.ts-about-text{color:var(--tmv-color-text-secondary);margin-bottom:1.1rem;font-size:1rem;line-height:1.85}.sw-contact-cta-meta i{color:#fff6;font-size:.7rem}.flex-1{flex:1}.icon-accent{color:var(--tmv-color-accent)}.icon-highlight{color:var(--tmv-color-highlight)}.icon-star{color:#f5a623}.service-icon--blue{color:#0284c7;background:#f0f9ff}.service-icon--orange{color:#ea580c;background:#fff7ed}.service-icon--purple{color:#7c3aed;background:#f5f3ff}.service-icon--green{color:#059669;background:#ecfdf5}.section-bg-light{background:var(--tmv-color-bg-light)}.section-bg-alt{background:var(--tmv-color-bg-alt)}.price-annual{display:none}.pricing-amount--custom{font-size:2.25rem}.section-tag--cta{color:#fffc;border-color:#fff3}.section-tag--inline-flex{display:inline-flex}.text-color-accent{color:var(--tmv-color-accent)}.footer-newsletter-meta{font-size:var(--tmv-fs-xs);color:#ffffff59}.stat-box-bg{background:var(--tmv-color-bg-light)}.stat-num--primary{font-family:var(--tmv-font-display);color:var(--tmv-color-primary);letter-spacing:-.04em;font-size:2rem;font-weight:800}.stat-num--accent{font-family:var(--tmv-font-display);color:var(--tmv-color-accent);letter-spacing:-.04em;font-size:2rem;font-weight:800}.timeline-dot--primary{color:var(--tmv-color-primary);background:var(--tmv-color-primary)}.timeline-dot--accent{color:var(--tmv-color-accent);background:var(--tmv-color-accent)}.timeline-dot--highlight{color:var(--tmv-color-highlight);background:var(--tmv-color-highlight)}.timeline-year--primary{background:var(--tmv-color-primary-light);color:var(--tmv-color-primary)}.timeline-year--accent{color:var(--tmv-color-accent-dark);background:#0ed5fd1a}.timeline-year--highlight{color:#b45309;background:#f59e0b1a}.svc-card--web{--svc-accent:var(--tmv-color-primary);--svc-bg:var(--tmv-color-primary-light)}.svc-card--mobile{--svc-accent:#7c3aed;--svc-bg:#f5f3ff}.svc-card--ai{--svc-accent:var(--tmv-color-accent-dark);--svc-bg:#0ed5fd14}.svc-card--cloud{--svc-accent:#0284c7;--svc-bg:#e0f2fe}.svc-card--security{--svc-accent:#dc2626;--svc-bg:#fef2f2}.svc-card--data{--svc-accent:#d97706;--svc-bg:#fff7ed}.svc-card--marketing{--svc-accent:#059669;--svc-bg:#ecfdf5}.svc-stat-card--primary{background:var(--tmv-color-primary);color:var(--tmv-color-white)}.svc-stat-card--accent{color:var(--tmv-color-accent-dark);background:#0ed5fd1a;border:1px solid #0ed5fd33}.svc-stat-card--white{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border)}.svc-stat-card--dark{background:var(--tmv-color-dark);color:var(--tmv-color-white)}.svc-stat-number--primary{color:var(--tmv-color-primary)}.svc-stat-label--muted{color:var(--tmv-color-text-muted)}.map-iframe{border:0;width:100%;display:block}.contact-hours-note{color:var(--tmv-color-text-secondary);line-height:1.65}.mb-2rem{margin-bottom:2rem}.blog-post-meta-date{color:#ffffffbf;font-size:.83rem}.home2-hero__bg{background-image:url(../media/hero-bg.01xqfmkmz_50s.jpg)}.home2-cta__bg{background-image:url(../media/team-working.3et163wdtgcvx.jpg)}.nav-item-dropdown{position:relative}.nav-link-parent{cursor:pointer;align-items:center;gap:.3rem;display:inline-flex}.nav-chevron{flex-shrink:0;font-size:.6rem;transition:transform .25s}@media (min-width:1200px){.nav-dropdown{background:var(--tmv-color-white);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-md);opacity:0;visibility:hidden;z-index:200;pointer-events:none;min-width:190px;padding:.4rem 0;transition:opacity .2s,transform .2s,visibility 0s linear .2s;position:absolute;top:100%;left:0;transform:translateY(6px);box-shadow:0 8px 30px #0000001a}.nav-item-dropdown:hover .nav-dropdown{opacity:1;visibility:visible;pointer-events:all;transition:opacity .2s,transform .2s;transform:translateY(0)}.nav-item-dropdown:hover .nav-chevron{transform:rotate(180deg)}}.nav-dropdown-link{font-size:var(--tmv-fs-sm);color:var(--tmv-color-text);transition:var(--tmv-transition-fast);white-space:nowrap;padding:.6rem 1.25rem;font-weight:500;text-decoration:none;display:block}.nav-dropdown-link:hover{color:var(--tmv-color-primary);background:var(--tmv-color-primary-light)}.nav-dropdown-link.active{color:var(--tmv-color-primary);background:var(--tmv-color-primary-light);font-weight:600}@media (max-width:1399px){.nav-item-dropdown{width:100%}.nav-link-parent{border-bottom:1px solid var(--tmv-color-border);width:100%;color:var(--tmv-color-text);justify-content:space-between;align-items:center;padding:.875rem 1.25rem;font-size:1rem;font-weight:600;display:flex}.nav-link-parent.active,.nav-link-parent.is-open{color:var(--tmv-color-primary)}.nav-link-parent.is-open .nav-chevron{transform:rotate(180deg)}.nav-dropdown{border-radius:0 0 var(--tmv-radius-sm) var(--tmv-radius-sm);max-height:0;padding:0 0 0 16px;transition:max-height .3s;overflow:hidden}.nav-dropdown.is-open{max-height:400px}.nav-dropdown-link{border-bottom:1px solid var(--tmv-color-border)}.nav-dropdown-link:last-child{border-bottom:none}}.mobile-nav-close{border:1.5px solid var(--tmv-color-border);cursor:pointer;width:36px;height:36px;color:var(--tmv-color-text-secondary);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;transition:all .2s;display:flex}.mobile-nav-close:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.project-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1400;opacity:0;visibility:hidden;background:#0d11178c;transition:opacity .25s,visibility .25s;position:fixed;inset:0}.project-modal-overlay.is-open{opacity:1;visibility:visible}.project-modal{z-index:1410;pointer-events:none;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.project-modal.is-open{pointer-events:auto}.project-modal-dialog{border-radius:var(--tmv-radius-xl);border:1.5px solid var(--tmv-color-border);width:100%;max-width:600px;max-height:min(92vh,820px);box-shadow:var(--tmv-shadow-xl);opacity:0;background:#fff;padding:1.75rem 1.75rem 1.5rem;transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .28s;overflow-y:auto;transform:translateY(16px)scale(.98)}.project-modal.is-open .project-modal-dialog{opacity:1;transform:translateY(0)scale(1)}.project-modal-top{border-bottom:1px solid var(--tmv-color-border);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.35rem;padding-bottom:1.15rem;display:flex}.project-modal-tag{letter-spacing:.06em;text-transform:uppercase;color:var(--tmv-color-primary);align-items:center;margin-bottom:.35rem;font-size:.75rem;font-weight:600;display:inline-flex}.project-modal-title{font-family:var(--tmv-font-heading);color:var(--tmv-color-dark);margin:0 0 .35rem;font-size:1.5rem;font-weight:700;line-height:1.25}.project-modal-text{color:var(--tmv-color-text-secondary);margin:0;font-size:.9375rem;line-height:1.6}.project-modal-close{border:1.5px solid var(--tmv-color-border);width:40px;height:40px;color:var(--tmv-color-text-secondary);cursor:pointer;transition:var(--tmv-transition-fast);background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.project-modal-close:hover{border-color:var(--tmv-color-primary);color:var(--tmv-color-primary)}.project-modal .contact-form-textarea{min-height:110px}.project-phone-field{background:var(--tmv-color-bg-alt);border:1px solid var(--tmv-color-border);border-radius:var(--tmv-radius-sm);width:100%;min-height:48px;transition:var(--tmv-transition-base);align-items:stretch;display:flex;overflow:hidden}.project-phone-field:focus-within{border-color:var(--tmv-color-primary);box-shadow:0 0 0 3px #0b06a71a}.project-phone-field.is-invalid{border-color:#dc2626;box-shadow:0 0 0 3px #dc262614}.project-phone-cc{min-width:112px;max-width:132px;font-family:var(--tmv-font-body);color:var(--tmv-color-text-primary);cursor:pointer;appearance:auto;background:0 0;border:0;outline:none;flex:none;padding:0 .55rem 0 .85rem;font-size:.9rem}.project-phone-divider{background:var(--tmv-color-border);flex-shrink:0;align-self:stretch;width:1px;margin:.55rem 0}.project-phone-input{min-width:0;font-family:var(--tmv-font-body);color:var(--tmv-color-text-primary);background:0 0;border:0;outline:none;flex:auto;padding:.85rem 1rem;font-size:.95rem}.project-phone-input::placeholder{color:var(--tmv-color-text-muted)}@media (max-width:575.98px){.project-modal-dialog{padding:1.25rem 1.15rem 1.15rem}.project-modal-title{font-size:1.3rem}.project-phone-cc{min-width:100px;max-width:118px;padding-left:.65rem}}.whatsapp-float{color:#fff;z-index:98;background:#25d366;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.75rem;text-decoration:none;transition:transform .25s,box-shadow .25s;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 4px 16px #25d36666}.whatsapp-float:hover{color:#fff;transform:translateY(-3px)scale(1.05);box-shadow:0 8px 24px #25d36673}@media (max-width:1199px){.whatsapp-float{width:52px;height:52px;font-size:1.625rem;bottom:1.5rem;right:1rem}}@media (prefers-reduced-motion:reduce){.site-header,.site-header.scrolled,.whatsapp-float{transition:none}}
