:root{--portal-dark:#0a0e27;--portal-primary:#1e3a5f;--portal-accent:#ff6b35;--portal-gold:#ffd700;--portal-surface:#f0f2f8;--portal-card:#ffffff;--portal-text:#1a1a2e;--portal-text-muted:#64748b;--portal-glass:rgba(255, 255, 255, 0.08);--portal-glass-border:rgba(255, 255, 255, 0.12);--portal-radius:20px;--portal-radius-sm:12px;--portal-shadow:0 8px 32px rgba(10, 14, 39, 0.12);--portal-shadow-lg:0 20px 60px rgba(10, 14, 39, 0.15);--portal-transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1)}.portal-body{font-family:Inter,'Segoe UI',system-ui,-apple-system,sans-serif;color:var(--portal-text);background-color:var(--portal-surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.portal-header-solid{background:var(--portal-dark);padding:0;border-bottom:1px solid rgba(255,255,255,.08)}.portal-header-solid.scrolled{background:#fff;border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 2px 20px rgba(0,0,0,.08)}.portal-container{max-width:1320px;padding:0 20px;margin:0 auto;width:100%}.portal-text-accent{color:var(--portal-accent)!important}.portal-text-gold{color:var(--portal-gold)!important}.portal-text-white{color:#fff!important}.portal-text-muted{color:var(--portal-text-muted)!important}.portal-bg-dark{background-color:var(--portal-dark)!important}.portal-bg-surface{background-color:var(--portal-surface)!important}.portal-bg-primary{background-color:var(--portal-primary)!important}.portal-bg-card{background-color:var(--portal-card)!important}.portal-section-tag{display:inline-flex;align-items:center;gap:16px;font-size:.75rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--portal-accent);margin-bottom:16px}.portal-section-tag::after,.portal-section-tag::before{content:'';display:block;width:40px;height:2px;background:var(--portal-accent)}.portal-section-title{font-size:2.5rem;font-weight:800;color:var(--portal-text);line-height:1.15;margin-bottom:20px;letter-spacing:-.02em}.portal-section-title--light{color:#fff}.portal-section-desc{font-size:1.0625rem;color:var(--portal-text-muted);max-width:600px;line-height:1.7}.portal-section-desc--light{color:rgba(255,255,255,.7)}.portal-section-header{text-align:center;margin-bottom:60px}.portal-section-header .portal-section-desc{margin-left:auto;margin-right:auto}.portal-btn-primary{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;background:var(--portal-accent);color:#fff;font-size:.9375rem;font-weight:600;border:2px solid var(--portal-accent);border-radius:50px;text-decoration:none;cursor:pointer;transition:var(--portal-transition);letter-spacing:.3px;position:relative;overflow:hidden}.portal-btn-primary::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.portal-btn-primary:hover{background:#e55a28;border-color:#e55a28;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px rgba(255,107,53,.35);text-decoration:none}.portal-btn-primary:hover::before{left:100%}.portal-btn-outline{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;background:0 0;color:#fff;font-size:.9375rem;font-weight:600;border:2px solid rgba(255,255,255,.4);border-radius:50px;text-decoration:none;cursor:pointer;transition:var(--portal-transition);letter-spacing:.3px}.portal-btn-outline:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff;transform:translateY(-2px);text-decoration:none}.portal-btn-outline--dark{color:var(--portal-text);border-color:var(--portal-text)}.portal-btn-outline--dark:hover{background:var(--portal-text);color:#fff}.portal-header{position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;background:0 0;transition:var(--portal-transition);padding:0}.portal-header.scrolled{background:#fff;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 2px 20px rgba(0,0,0,.08);padding:0}.portal-header-inner{display:flex;align-items:center;justify-content:space-between}.portal-header-logo img{max-height:48px;width:auto;transition:var(--portal-transition)}.portal-header.scrolled .portal-header-logo img{max-height:40px}.portal-header-nav{display:flex;align-items:center;gap:8px;list-style:none;margin:0;padding:0}.portal-nav-link{color:#fff;font-size:.9375rem;font-weight:500;letter-spacing:.3px;text-decoration:none;padding:8px 16px;position:relative;transition:var(--portal-transition)}.portal-nav-link::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--portal-accent);transition:all .3s cubic-bezier(.4, 0, .2, 1);transform:translateX(-50%);border-radius:1px}.portal-nav-link.active,.portal-nav-link:hover{color:#fff;text-decoration:none}.portal-nav-link.active::after,.portal-nav-link:hover::after{width:70%}.portal-header.scrolled .portal-nav-link{color:var(--portal-text)}.portal-header.scrolled .portal-nav-link:focus,.portal-header.scrolled .portal-nav-link:hover{color:var(--portal-accent)}.portal-header.scrolled .portal-btn-action{color:var(--portal-text);border-color:rgba(0,0,0,.15)}.portal-header.scrolled .portal-btn-action:hover{background:rgba(0,0,0,.05)}.portal-header.scrolled .navbar-toggler-icon{filter:none!important}.portal-header.scrolled .portal-header-search-btn{color:var(--portal-text)}.portal-header.scrolled .portal-header-search-btn:hover{background:rgba(0,0,0,.05)}.portal-header-actions{display:flex;align-items:center;gap:12px}.portal-header-right{display:none}@media (min-width:992px){.portal-header-right{display:flex!important;align-items:center;gap:8px}}.portal-header-search-btn{background:0 0;border:none;color:#1a1a2e;font-size:1.125rem;cursor:pointer;padding:8px;border-radius:50%;transition:var(--portal-transition);display:flex;align-items:center;justify-content:center}.portal-header-search-btn:hover{background:rgba(0,0,0,.05)}.portal-mobile-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;background:0 0;border:none;cursor:pointer;padding:0;z-index:1001}.portal-mobile-toggle span{display:block;width:24px;height:2px;background:#fff;border-radius:2px;transition:var(--portal-transition);transform-origin:center}.portal-mobile-toggle.active span:first-child{transform:translateY(7px) rotate(45deg)}.portal-mobile-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.portal-mobile-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.portal-lang-switcher{position:relative}.portal-lang-btn{display:flex;align-items:center;gap:6px;background:0 0;border:1px solid rgba(0,0,0,.15);border-radius:8px;padding:6px 12px;cursor:pointer;transition:var(--portal-transition);color:#1a1a2e;font-size:.8125rem;font-weight:600;letter-spacing:.5px;line-height:1}.portal-lang-btn:hover{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.25)}.portal-lang-arrow{font-size:.5625rem;transition:transform .3s ease}.portal-lang-switcher.open .portal-lang-arrow{transform:rotate(180deg)}.portal-lang-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:#fff;border-radius:var(--portal-radius-sm);box-shadow:0 12px 40px rgba(10,14,39,.18);border:1px solid rgba(0,0,0,.06);padding:6px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .25s cubic-bezier(.4, 0, .2, 1);z-index:1050}.portal-lang-switcher.open .portal-lang-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.portal-lang-option{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--portal-text);font-size:.8125rem;font-weight:500;transition:background .2s}.portal-lang-option:hover{background:var(--portal-surface);color:var(--portal-text);text-decoration:none}.portal-lang-option.active{background:rgba(255,107,53,.08);color:var(--portal-accent)}.portal-lang-code{font-weight:700;letter-spacing:.5px;min-width:24px}.portal-lang-name{flex:1}.portal-lang-check{font-size:.6875rem;color:var(--portal-accent);margin-left:auto}.portal-header.scrolled .portal-lang-btn{color:var(--portal-text);border-color:rgba(0,0,0,.15)}.portal-header.scrolled .portal-lang-btn:hover{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.25)}.portal-mobile-actions{padding:16px 0;border-top:1px solid rgba(255,255,255,.1);margin-top:12px;display:flex;flex-direction:column;gap:12px}.portal-mobile-lang{display:flex;gap:8px}.portal-mobile-lang-item{display:flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.7);font-size:.8125rem;font-weight:700;letter-spacing:.5px;text-decoration:none;transition:all .2s;flex:1;text-align:center}.portal-mobile-lang-item:hover{background:rgba(255,255,255,.1);color:#fff;text-decoration:none}.portal-mobile-lang-item.active{background:var(--portal-accent);border-color:var(--portal-accent);color:#fff}.portal-header.scrolled .portal-mobile-actions{border-top-color:rgba(0,0,0,.08)}.portal-header.scrolled .portal-mobile-lang-item{color:var(--portal-text-muted);border-color:rgba(0,0,0,.12)}.portal-header.scrolled .portal-mobile-lang-item:hover{background:var(--portal-surface);color:var(--portal-text)}.portal-header.scrolled .portal-mobile-lang-item.active{background:var(--portal-accent);border-color:var(--portal-accent);color:#fff}.portal-header .dropdown-menu{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:var(--portal-radius-sm);box-shadow:0 12px 40px rgba(10,14,39,.18);padding:6px;margin-top:8px;min-width:200px;animation:portalDropIn .25s cubic-bezier(.4,0,.2,1)}@keyframes portalDropIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.portal-header .dropdown-menu .dropdown-item{color:var(--portal-text);font-size:.875rem;font-weight:500;padding:8px 14px;border-radius:8px;transition:background .2s}.portal-header .dropdown-menu .dropdown-item:focus,.portal-header .dropdown-menu .dropdown-item:hover{background:var(--portal-surface);color:var(--portal-accent)}.portal-header .dropdown-submenu{position:relative}.portal-header .dropdown-submenu>.dropdown-menu{top:-6px;left:100%;margin-top:0;margin-left:4px}.portal-header .dropdown-submenu>.dropdown-item::after{content:'\f105';font-family:'Font Awesome 6 Free';font-weight:900;float:right;font-size:.75rem;opacity:.4;margin-left:8px}.portal-search-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:2000;background:rgba(10,14,39,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:var(--portal-transition)}.portal-search-overlay.active{opacity:1;visibility:visible}.portal-search-overlay-inner{width:100%;max-width:720px;padding:0 20px;transform:scale(.9);transition:transform .4s cubic-bezier(.4, 0, .2, 1)}.portal-search-overlay.active .portal-search-overlay-inner{transform:scale(1)}.portal-search-overlay-input{width:100%;background:0 0;border:none;border-bottom:2px solid rgba(255,255,255,.2);color:#fff;font-size:clamp(1.5rem, 3vw, 2.5rem);font-weight:300;padding:16px 0;outline:0;letter-spacing:-.01em;transition:border-color .3s ease}.portal-search-overlay-input::placeholder{color:rgba(255,255,255,.35)}.portal-search-overlay-input:focus{border-bottom-color:var(--portal-accent)}.portal-search-overlay-close{position:absolute;top:32px;right:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:50%;color:#fff;font-size:1.25rem;cursor:pointer;transition:var(--portal-transition)}.portal-search-overlay-close:hover{background:rgba(255,107,53,.2);border-color:var(--portal-accent);transform:rotate(90deg)}.portal-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background-color:var(--portal-dark)}.portal-hero-bg{position:absolute;inset:0;width:100%;height:100%}.portal-hero-bg .portal-hero-slide{position:absolute;inset:0;width:100%;height:100%;background-size:cover;background-position:center;transition:opacity 1s ease}.portal-hero-bg .portal-hero-slide.active{opacity:1}.portal-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,14,39,.4) 0,rgba(10,14,39,.5) 40%,rgba(10,14,39,.7) 100%);z-index:1}.portal-hero-content{position:relative;z-index:2;padding-top:100px}.portal-hero-tag{display:inline-flex;align-items:center;gap:12px;font-size:.75rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--portal-accent);margin-bottom:24px}.portal-hero-tag::before{content:'';display:block;width:40px;height:2px;background:var(--portal-accent)}.portal-hero-title{font-size:clamp(2.5rem, 5vw, 4.5rem);font-weight:800;line-height:1.1;color:#fff;margin-bottom:24px;letter-spacing:-.02em;max-width:800px;transition:opacity .4s ease,transform .4s ease}.portal-hero-desc{font-size:1.125rem;max-width:600px;color:rgba(255,255,255,.8);line-height:1.7;margin-bottom:40px}.portal-hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.portal-scroll-indicator{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,.5);font-size:.75rem;letter-spacing:2px;text-transform:uppercase;text-decoration:none;transition:color .3s ease}.portal-scroll-indicator:hover{color:var(--portal-accent);text-decoration:none}.portal-scroll-indicator .portal-scroll-chevron,.portal-scroll-indicator i{animation:portalBounce 2s infinite}@keyframes portalBounce{0%,100%,20%,50%,80%{transform:translateY(0)}40%{transform:translateY(8px)}60%{transform:translateY(4px)}}.portal-bento{position:relative;z-index:10;margin-top:45px;padding-bottom:60px}.portal-bento .container{position:relative;z-index:2}.portal-bento-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.portal-bento-card{background:var(--portal-card);border:1px solid rgba(0,0,0,.06);border-radius:var(--portal-radius);padding:40px 32px;text-align:center;transition:var(--portal-transition);position:relative;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.08)}.portal-bento-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--portal-accent),var(--portal-gold));transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.4, 0, .2, 1)}.portal-bento-card:hover{transform:translateY(-8px);border-color:rgba(255,107,53,.2);box-shadow:0 12px 40px rgba(255,107,53,.15)}.portal-bento-card:hover::before{transform:scaleX(1)}.portal-bento-icon{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--portal-accent),#ff8f5e);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#fff;font-size:1.25rem;box-shadow:0 8px 20px rgba(255,107,53,.3)}.portal-bento-title{font-size:1.125rem;font-weight:700;color:var(--portal-text);margin-bottom:12px}.portal-bento-desc{color:var(--portal-text-muted);font-size:.9375rem;line-height:1.6;margin:0}.portal-about{padding:120px 0;background:var(--portal-card)}.portal-about-row{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.portal-about-gallery{display:grid;grid-template-columns:3fr 2fr;grid-template-rows:auto auto;gap:16px;position:relative}.portal-about-img-main{grid-row:1/3;border-radius:var(--portal-radius);overflow:hidden;aspect-ratio:3/4}.portal-about-img-main img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.portal-about-img-main:hover img{transform:scale(1.04)}.portal-about-img-secondary{border-radius:16px;overflow:hidden;border:4px solid #fff;box-shadow:var(--portal-shadow-lg);margin-left:-40px;align-self:end;position:relative;z-index:2}.portal-about-img-secondary img{width:100%;height:100%;object-fit:cover}.portal-about-badge{position:absolute;bottom:24px;left:-20px;background:var(--portal-dark);border-radius:var(--portal-radius-sm);padding:20px 24px;text-align:center;z-index:3;box-shadow:var(--portal-shadow-lg);min-width:120px}.portal-about-badge-number{font-size:2.5rem;font-weight:800;color:var(--portal-accent);line-height:1;display:block}.portal-about-badge-text{font-size:.8125rem;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:1px;margin-top:4px;display:block}.portal-about-content .portal-section-tag{justify-content:flex-start}.portal-about-content .portal-section-tag::before{display:none}.portal-about-text{font-size:1.0625rem;color:var(--portal-text-muted);line-height:1.8;margin-bottom:32px}.portal-check-list{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}.portal-check-item{display:flex;align-items:flex-start;gap:16px}.portal-check-icon{width:40px;height:40px;min-width:40px;border-radius:50%;background:rgba(255,107,53,.1);color:var(--portal-accent);display:flex;align-items:center;justify-content:center;font-size:.875rem}.portal-check-title{font-size:1rem;font-weight:600;color:var(--portal-text);margin-bottom:2px}.portal-check-subtitle{font-size:.875rem;color:var(--portal-text-muted);line-height:1.5}.portal-stats{background:var(--portal-dark);padding:80px 0}.portal-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.portal-stat-item{text-align:center;padding:20px 32px;border-right:1px solid rgba(255,255,255,.1)}.portal-stat-item:last-child{border-right:none}.portal-stat-number{font-size:3rem;font-weight:800;color:var(--portal-accent);line-height:1;margin-bottom:8px;display:block}.portal-stat-label{font-size:.8125rem;color:#fff;text-transform:uppercase;letter-spacing:2px;font-weight:500}.portal-services{background:var(--portal-surface);padding:120px 0}.portal-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.portal-service-card{background:var(--portal-card);border-radius:var(--portal-radius);padding:40px 30px;position:relative;transition:var(--portal-transition);overflow:hidden;border:1px solid transparent}.portal-service-card:hover{transform:translateY(-6px);box-shadow:var(--portal-shadow-lg);border-color:rgba(255,107,53,.15)}.portal-service-number{position:absolute;top:20px;right:24px;font-size:3rem;font-weight:800;color:var(--portal-surface);line-height:1;user-select:none;pointer-events:none}.portal-service-icon{width:64px;height:64px;color:var(--portal-accent);font-size:1.75rem;display:flex;align-items:center;justify-content:center;margin-bottom:24px;position:relative}.portal-service-icon::after{content:'';position:absolute;bottom:-4px;left:0;width:32px;height:3px;background:var(--portal-accent);border-radius:2px}.portal-service-title{font-size:1.25rem;font-weight:700;color:var(--portal-text);margin-bottom:12px}.portal-service-desc{font-size:.9375rem;color:var(--portal-text-muted);line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:24px}.portal-service-link{display:inline-flex;align-items:center;gap:8px;color:var(--portal-text);font-size:.875rem;font-weight:600;text-decoration:none;transition:var(--portal-transition)}.portal-service-link .portal-arrow,.portal-service-link i{transition:transform .3s ease}.portal-service-link:hover{color:var(--portal-accent);text-decoration:none}.portal-service-link:hover .portal-arrow,.portal-service-link:hover i{transform:translateX(6px)}.portal-projects{padding:120px 0;background:var(--portal-card)}.portal-projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.portal-project-card{position:relative;overflow:hidden;border-radius:var(--portal-radius);cursor:pointer;group:true}.portal-project-card-img{aspect-ratio:16/10;overflow:hidden}.portal-project-card-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(20%);transition:all .6s cubic-bezier(.4, 0, .2, 1)}.portal-project-card:hover .portal-project-card-img img{filter:grayscale(0%);transform:scale(1.05)}.portal-project-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,14,39,.85) 0,rgba(10,14,39,.2) 50%,transparent 100%);transition:var(--portal-transition)}.portal-project-card:hover .portal-project-overlay{background:linear-gradient(0deg,rgba(10,14,39,.9) 0,rgba(10,14,39,.3) 50%,rgba(10,14,39,.1) 100%)}.portal-project-content{position:absolute;bottom:0;left:0;right:0;padding:30px;z-index:2;transform:translateY(10px);transition:transform .4s ease}.portal-project-card:hover .portal-project-content{transform:translateY(0)}.portal-project-category{display:inline-block;padding:4px 14px;background:var(--portal-accent);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;border-radius:50px;margin-bottom:12px}.portal-project-title{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:8px}.portal-project-link{display:inline-flex;align-items:center;gap:8px;color:var(--portal-accent);font-size:.875rem;font-weight:600;text-decoration:none;opacity:0;transform:translateY(8px);transition:all .3s ease .1s}.portal-project-card:hover .portal-project-link{opacity:1;transform:translateY(0)}.portal-project-link:hover{color:var(--portal-gold);text-decoration:none}.portal-process{background:var(--portal-dark);padding:120px 0;overflow:hidden}.portal-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;position:relative}.portal-process-grid::before{content:'';position:absolute;top:40px;left:15%;right:15%;height:2px;border-top:2px dashed rgba(255,255,255,.15);z-index:0}.portal-step{text-align:center;position:relative;z-index:1;padding:0 10px}.portal-step-number{width:80px;height:80px;border-radius:50%;border:2px solid var(--portal-accent);background:0 0;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:1.5rem;color:var(--portal-accent);transition:var(--portal-transition)}.portal-step.active .portal-step-number,.portal-step:hover .portal-step-number{background:var(--portal-accent);color:#fff;box-shadow:0 8px 25px rgba(255,107,53,.35)}.portal-step-title{font-size:1.0625rem;font-weight:700;color:#fff;margin-bottom:8px}.portal-step-desc{font-size:.875rem;color:rgba(255,255,255,.6);line-height:1.6}.portal-faq{padding:120px 0;background:var(--portal-surface)}.portal-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.portal-accordion{display:flex;flex-direction:column;gap:12px}.portal-accordion-item{background:var(--portal-card);border-radius:var(--portal-radius-sm);overflow:hidden;border:1px solid transparent;transition:var(--portal-transition)}.portal-accordion-item.active{border-left:3px solid var(--portal-accent);background:#fff8f5}.portal-accordion-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:0 0;border:none;cursor:pointer;font-size:1.0625rem;font-weight:600;color:var(--portal-text);text-align:left;transition:color .3s ease}.portal-accordion-btn:hover{color:var(--portal-accent)}.portal-accordion-icon{width:28px;height:28px;min-width:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--portal-surface);color:var(--portal-text-muted);font-size:.75rem;transition:var(--portal-transition)}.portal-accordion-item.active .portal-accordion-icon{background:var(--portal-accent);color:#fff;transform:rotate(180deg)}.portal-accordion-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4, 0, .2, 1),padding .3s ease}.portal-accordion-item.active .portal-accordion-body{max-height:300px}.portal-accordion-content{padding:0 24px 20px;font-size:.9375rem;color:var(--portal-text-muted);line-height:1.7}.portal-blog{padding:120px 0;background:var(--portal-card)}.portal-blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.portal-blog-featured{position:relative;border-radius:var(--portal-radius);overflow:hidden;grid-row:1/3;min-height:480px}.portal-blog-featured img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.portal-blog-featured:hover img{transform:scale(1.04)}.portal-blog-featured-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,14,39,.85) 0,transparent 60%)}.portal-blog-featured-content{position:absolute;bottom:0;left:0;right:0;padding:36px;z-index:2}.portal-blog-date{display:inline-block;padding:4px 14px;background:var(--portal-accent);color:#fff;font-size:.75rem;font-weight:600;border-radius:50px;margin-bottom:12px}.portal-blog-category{display:inline-block;padding:4px 14px;background:rgba(255,255,255,.15);color:#fff;font-size:.75rem;font-weight:500;border-radius:50px;margin-left:8px;margin-bottom:12px}.portal-blog-featured-title{font-size:1.5rem;font-weight:700;color:#fff;line-height:1.3;margin-bottom:8px}.portal-blog-featured-title a{color:inherit;text-decoration:none;transition:color .3s ease}.portal-blog-featured-title a:hover{color:var(--portal-accent)}.portal-blog-item{display:flex;gap:20px;padding:24px;background:var(--portal-surface);border-radius:var(--portal-radius-sm);transition:var(--portal-transition);border:1px solid transparent}.portal-blog-item:hover{background:var(--portal-card);box-shadow:var(--portal-shadow);border-color:rgba(255,107,53,.1)}.portal-blog-item-img{width:140px;min-width:140px;border-radius:12px;overflow:hidden}.portal-blog-item-img img{width:100%;height:100%;object-fit:cover;aspect-ratio:1}.portal-blog-item-content{flex:1;display:flex;flex-direction:column;justify-content:center}.portal-blog-item-title{font-size:1.0625rem;font-weight:700;color:var(--portal-text);margin-bottom:8px;line-height:1.4}.portal-blog-item-title a{color:inherit;text-decoration:none;transition:color .3s ease}.portal-blog-item-title a:hover{color:var(--portal-accent)}.portal-blog-read-more{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:600;color:var(--portal-accent);text-decoration:none;transition:gap .3s ease}.portal-blog-read-more:hover{gap:10px;color:var(--portal-accent);text-decoration:none}.portal-cta{position:relative;background:linear-gradient(135deg,var(--portal-primary) 0,var(--portal-dark) 100%);padding:100px 0;overflow:hidden;text-align:center}.portal-cta::before{content:'';position:absolute;top:-100px;right:-100px;width:400px;height:400px;border-radius:50%;background:rgba(255,107,53,.08);pointer-events:none}.portal-cta::after{content:'';position:absolute;bottom:-60px;left:-60px;width:250px;height:250px;border-radius:50%;background:rgba(255,215,0,.05);pointer-events:none}.portal-cta-content{position:relative;z-index:2;max-width:700px;margin:0 auto}.portal-cta-title{font-size:2.5rem;font-weight:800;color:#fff;margin-bottom:16px;line-height:1.2}.portal-cta-subtitle{font-size:1.125rem;color:rgba(255,255,255,.7);margin-bottom:36px;line-height:1.7}.portal-contact{padding:120px 0;background:var(--portal-surface)}.portal-contact-grid{display:grid;grid-template-columns:5fr 7fr;gap:40px;align-items:stretch}.portal-contact-info{display:flex;flex-direction:column;gap:28px}.portal-contact-item{display:flex;align-items:flex-start;gap:16px}.portal-contact-icon{width:48px;height:48px;min-width:48px;border-radius:50%;background:rgba(255,107,53,.1);color:var(--portal-accent);display:flex;align-items:center;justify-content:center;font-size:1.125rem}.portal-contact-label{font-size:.8125rem;color:var(--portal-text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}.portal-contact-value{font-size:1rem;font-weight:600;color:var(--portal-text)}.portal-contact-value a{color:inherit;text-decoration:none;transition:color .3s ease}.portal-contact-value a:hover{color:var(--portal-accent)}.portal-contact-socials{display:flex;gap:12px;margin-top:12px}.portal-contact-social-link{width:44px;height:44px;border-radius:50%;background:var(--portal-card);border:1px solid rgba(0,0,0,.06);display:flex;align-items:center;justify-content:center;color:var(--portal-text);font-size:1rem;text-decoration:none;transition:var(--portal-transition)}.portal-contact-social-link:hover{background:var(--portal-accent);border-color:var(--portal-accent);color:#fff;transform:translateY(-3px);box-shadow:0 6px 16px rgba(255,107,53,.3)}.portal-contact-map{border-radius:var(--portal-radius);overflow:hidden;height:100%;min-height:400px;border:1px solid rgba(0,0,0,.06)}.portal-contact-map iframe{width:100%;height:100%;border:none;display:block}.portal-footer{background:var(--portal-dark);color:rgba(255,255,255,.7);padding-top:80px}.portal-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;padding-bottom:60px;border-bottom:1px solid rgba(255,255,255,.08)}.portal-footer-brand p{font-size:.9375rem;line-height:1.7;margin-top:20px}.portal-footer-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:20px;letter-spacing:.3px}.portal-footer-links{list-style:none;padding:0;margin:0}.portal-footer-links li{margin-bottom:10px}.portal-footer-links a{color:rgba(255,255,255,.6);text-decoration:none;font-size:.9375rem;transition:all .3s ease;display:inline-flex;align-items:center;gap:6px}.portal-footer-links a:hover{color:var(--portal-accent);padding-left:4px}.portal-footer-bottom{padding:28px 0;display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.portal-footer-bottom a{color:var(--portal-accent);text-decoration:none}.portal-footer-bottom a:hover{text-decoration:underline}@keyframes portalFadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes portalPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes portalSlideIn{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes portalFadeIn{from{opacity:0}to{opacity:1}}@keyframes portalScaleIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.portal-animate{opacity:0;animation:portalFadeUp .6s ease forwards}.portal-animate-slide{opacity:0;animation:portalSlideIn .6s ease forwards}.portal-delay-1{animation-delay:.1s}.portal-delay-2{animation-delay:.2s}.portal-delay-3{animation-delay:.3s}.portal-delay-4{animation-delay:.4s}.portal-delay-5{animation-delay:.5s}.portal-reveal{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.portal-reveal.revealed{opacity:1;transform:translateY(0)}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}.portal-back-to-top{position:fixed;bottom:32px;right:32px;width:48px;height:48px;border-radius:50%;background:var(--portal-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.125rem;text-decoration:none;z-index:900;opacity:0;visibility:hidden;transform:translateY(16px);transition:var(--portal-transition);box-shadow:0 6px 20px rgba(255,107,53,.35);border:none;cursor:pointer}.portal-back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.portal-back-to-top:hover{background:#e55a28;transform:translateY(-4px);color:#fff}@media (max-width:991.98px){.portal-mobile-toggle{display:flex}.portal-header-nav{position:fixed;top:0;right:-320px;width:300px;height:100vh;background:var(--portal-dark);flex-direction:column;align-items:flex-start;padding:80px 30px 30px;gap:4px;transition:right .4s cubic-bezier(.4, 0, .2, 1);z-index:999;box-shadow:-10px 0 40px rgba(0,0,0,.3);overflow-y:auto}.portal-header-nav.open{right:0}.portal-nav-link{display:block;width:100%;padding:12px 0;font-size:1rem;border-bottom:1px solid rgba(255,255,255,.06)}.portal-nav-link::after{bottom:-1px;left:0;transform:none}.portal-nav-link.active::after,.portal-nav-link:hover::after{width:40px}.portal-hero-title{font-size:clamp(2rem, 6vw, 3rem)}.portal-bento-grid{grid-template-columns:1fr;gap:16px}.portal-bento{margin-top:-40px}.portal-about-row{grid-template-columns:1fr;gap:40px}.portal-about-gallery{max-width:500px;margin:0 auto}.portal-stats-grid{grid-template-columns:repeat(2,1fr)}.portal-stat-item:nth-child(2){border-right:none}.portal-stat-item:first-child,.portal-stat-item:nth-child(2){border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:30px}.portal-stat-item:nth-child(3),.portal-stat-item:nth-child(4){padding-top:30px}.portal-services-grid{grid-template-columns:repeat(2,1fr)}.portal-projects-grid{grid-template-columns:1fr}.portal-process-grid{grid-template-columns:repeat(2,1fr);gap:40px 30px}.portal-process-grid::before{display:none}.portal-faq-grid{grid-template-columns:1fr;gap:40px}.portal-blog-grid{grid-template-columns:1fr}.portal-blog-featured{grid-row:auto;min-height:360px}.portal-contact-grid{grid-template-columns:1fr;gap:30px}.portal-contact-map{min-height:350px}.portal-footer-grid{grid-template-columns:1fr 1fr;gap:30px}.portal-footer-brand{grid-column:1/-1}.portal-cta-title{font-size:2rem}.portal-section-title{font-size:2rem}}@media (max-width:575.98px){.portal-hero{min-height:90vh}.portal-hero-content{padding-top:80px}.portal-hero-title{font-size:clamp(1.75rem, 7vw, 2.5rem)}.portal-hero-desc{font-size:1rem}.portal-hero-actions{flex-direction:column;align-items:flex-start}.portal-btn-outline,.portal-btn-primary{width:100%;justify-content:center}.portal-scroll-indicator{bottom:24px}.portal-bento{margin-top:-30px}.portal-bento-card{padding:28px 24px}.portal-about{padding:80px 0}.portal-about-badge{position:relative;bottom:auto;left:auto;margin-top:16px;display:inline-block}.portal-about-img-secondary{margin-left:0}.portal-stats-grid{grid-template-columns:repeat(2,1fr)}.portal-stat-number{font-size:2.25rem}.portal-stat-item{padding:16px}.portal-services{padding:80px 0}.portal-services-grid{grid-template-columns:1fr}.portal-service-card{padding:30px 24px}.portal-projects{padding:80px 0}.portal-projects-grid{grid-template-columns:1fr}.portal-process{padding:80px 0}.portal-process-grid{grid-template-columns:1fr;gap:40px}.portal-step-number{width:64px;height:64px;font-size:1.25rem}.portal-faq{padding:80px 0}.portal-blog{padding:80px 0}.portal-blog-item{flex-direction:column}.portal-blog-item-img{width:100%;min-width:0}.portal-blog-item-img img{aspect-ratio:16/9}.portal-cta{padding:60px 0}.portal-cta-title{font-size:1.75rem}.portal-contact{padding:80px 0}.portal-footer-grid{grid-template-columns:1fr}.portal-footer-brand{grid-column:auto}.portal-footer-bottom{flex-direction:column;gap:12px;text-align:center}.portal-section-tag{font-size:.6875rem;letter-spacing:3px}.portal-section-tag::after,.portal-section-tag::before{width:24px}.portal-section-title{font-size:1.75rem}.portal-search-overlay-close{top:16px;right:16px}.portal-back-to-top{bottom:20px;right:20px;width:42px;height:42px}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}.portal-hero-bg .portal-hero-slide,.portal-hero-bg img{transition:none;transform:none}.portal-scroll-indicator .portal-scroll-chevron,.portal-scroll-indicator i{animation:none}.portal-animate,.portal-animate-slide{opacity:1;animation:none;transform:none}.portal-reveal{opacity:1;transform:none}}@media print{.portal-back-to-top,.portal-header,.portal-scroll-indicator,.portal-search-overlay{display:none!important}.portal-hero{min-height:auto;padding:40px 0}.portal-bento{margin-top:0}.portal-bento-card,.portal-project-card,.portal-service-card{break-inside:avoid}body{color:#000!important;background:#fff!important}}