:root{--bg:#fff;--bg-elevated:#f7f7f8;--bg-card:#fff;--bg-card-hover:#f9f9fa;--bg-subtle:#fafafa;--surface:#f2f2f3;--surface-raised:#eaeaec;--surface-light:#f8f7f5;--surface-warm:#faf9f7;--accent:#1e56a0;--accent-hover:#174b8b;--accent-muted:#1e56a014;--accent-glow:#1e56a00a;--blue:#2563eb;--blue-muted:#2563eb14;--white:#fff;--white-95:#fffffff2;--white-80:#fffc;--white-60:#fff9;--white-40:#fff6;--white-20:#fff3;--white-12:#ffffff1f;--white-08:#ffffff14;--white-04:#ffffff0a;--dark:#0f0f10;--dark-80:#0f0f10cc;--dark-60:#0f0f1099;--text-primary:#111;--text-secondary:#555;--text-muted:#999;--text-dark:#111;--text-dark-secondary:#555;--success:#16a34a;--error:#dc2626;--border:#00000014;--border-strong:#00000026;--border-light:#0000000a;--border-dark:#0000001f;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:clamp(.7rem, .65rem + .2vw, .75rem);--text-sm:clamp(.8rem, .75rem + .2vw, .875rem);--text-base:clamp(.9rem, .85rem + .2vw, 1rem);--text-lg:clamp(1rem, .9rem + .4vw, 1.125rem);--text-xl:clamp(1.15rem, 1rem + .5vw, 1.3rem);--text-2xl:clamp(1.4rem, 1.1rem + 1vw, 1.875rem);--text-3xl:clamp(1.8rem, 1.3rem + 1.5vw, 2.5rem);--text-4xl:clamp(2.2rem, 1.5rem + 2.5vw, 3.5rem);--text-5xl:clamp(2.8rem, 1.8rem + 3.5vw, 4.5rem);--text-hero:clamp(2.6rem, 1.5rem + 3.5vw, 4.5rem);--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;--sp-12:3rem;--sp-16:4rem;--sp-20:5rem;--sp-24:6rem;--sp-32:8rem;--sp-40:10rem;--sp-section:clamp(5rem, 4rem + 4vw, 10rem);--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 12px 40px #0009;--shadow-glow:0 0 60px #c8a45c0f;--shadow-card:0 1px 0 #ffffff0a, 0 4px 20px #0006;--ease:cubic-bezier(.16, 1, .3, 1);--ease-out:cubic-bezier(.33, 1, .68, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.15s;--dur-md:.3s;--dur-slow:.5s;--dur-xl:.8s;--container:1280px;--container-sm:840px;--container-xs:640px;--header-h:80px;--gutter:clamp(1.25rem, 1rem + 1.5vw, 3rem)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.7;overflow-x:hidden}img,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}input,textarea,select{font-family:inherit;font-size:inherit}::selection{background:var(--blue);color:var(--white)}.container{width:100%;max-width:var(--container);padding:0 var(--gutter);margin:0 auto}.container-sm{max-width:var(--container-sm);padding:0 var(--gutter);margin:0 auto}.container-xs{max-width:var(--container-xs);padding:0 var(--gutter);margin:0 auto}.display-hero{font-family:var(--font-sans);font-size:var(--text-hero);letter-spacing:-.04em;color:var(--white);font-weight:800;line-height:1}.display-xl{font-family:var(--font-sans);font-size:var(--text-5xl);letter-spacing:-.03em;font-weight:800;line-height:1.05}.h1{font-family:var(--font-sans);font-size:var(--text-4xl);letter-spacing:-.03em;font-weight:800;line-height:1.1}.h2{font-family:var(--font-sans);font-size:var(--text-3xl);letter-spacing:-.02em;font-weight:700;line-height:1.15}.h3{font-family:var(--font-sans);font-size:var(--text-2xl);letter-spacing:-.01em;font-weight:600;line-height:1.25}.h4{font-family:var(--font-sans);font-size:var(--text-xl);font-weight:600;line-height:1.3}.body-lg{font-size:var(--text-lg);line-height:1.75}.body-sm{font-size:var(--text-sm);line-height:1.6}.overline{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600}.section-label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.75rem;margin-bottom:1.25rem;font-weight:600;display:inline-flex}.section-label:before{content:"";background:var(--accent);width:32px;height:1px;display:block}.section{padding:var(--sp-section) 0;position:relative}.section-dark{background:var(--bg);color:var(--text-primary)}.section-elevated{-webkit-backdrop-filter:blur(4px);color:var(--text-primary);background:#f7f7f8b3}.section-light{background:var(--surface-light);color:var(--text-dark)}.section-light .section-label{color:var(--accent)}.section-light .h2,.section-light .h3{color:var(--text-dark)}.section-light p{color:var(--text-dark-secondary)}.section-divider{background:var(--border);border:none;height:1px}.btn{font-family:var(--font-sans);font-size:var(--text-sm);letter-spacing:.02em;border-radius:var(--radius-xs);cursor:pointer;transition:all var(--dur-md) var(--ease);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 2rem;font-weight:500;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn svg{flex-shrink:0;width:16px;height:16px}.btn-primary{background:linear-gradient(135deg, var(--accent) 0%, #2468b5 100%);color:var(--white);border-color:#0000;font-weight:600;position:relative;overflow:hidden}.btn-primary:after{content:"";background:linear-gradient(90deg,#0000,#ffffff26,#0000);width:50%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn-primary:hover:after{left:100%}.btn-primary:hover{background:linear-gradient(135deg, var(--accent-hover) 0%, #1e56a0 100%);transform:translateY(-1px);box-shadow:0 4px 20px #1e56a04d}.btn-outline{-webkit-backdrop-filter:blur(8px);color:var(--text-primary);background:#fff9;border-color:#0000001a}.btn-outline:hover{border-color:var(--accent);color:var(--accent);background:#ffffffd9;box-shadow:0 2px 12px #1e56a01a}.btn-outline-dark{color:var(--text-dark);background:0 0;border-color:#00000026}.btn-outline-dark:hover{background:#00000008;border-color:#0000004d}.btn-ghost{color:var(--accent);background:0 0;border:none;padding:.5rem 0}.btn-ghost:hover{color:var(--accent-hover)}.btn-ghost:after{content:"→";transition:transform var(--dur-md) var(--ease);margin-left:.25rem}.btn-ghost:hover:after{transform:translate(4px)}.btn-sm{font-size:var(--text-xs);padding:.625rem 1.25rem}.btn-lg{font-size:var(--text-base);padding:1rem 2.5rem}.site-header{z-index:1000;height:var(--header-h);transition:all var(--dur-slow) var(--ease);-webkit-backdrop-filter:blur(20px)saturate(1.8);background:#ffffffe0;border-bottom:1px solid #0000000f;position:fixed;top:0;left:0;right:0;box-shadow:0 1px 12px #00000008}.site-header:after{content:"";background:var(--border);opacity:1;height:1px;transition:opacity var(--dur-slow) var(--ease);position:absolute;bottom:0;left:0;right:0}.site-header.scrolled{background:#fffffff0;border-bottom:1px solid #1e56a01a;box-shadow:0 4px 20px #0000000f}.site-header.scrolled:after{opacity:1}.header-inner{height:var(--header-h);justify-content:space-between;align-items:center;display:flex}.site-logo{flex-shrink:0;align-items:center;text-decoration:none;display:flex}.logo-name{letter-spacing:-.02em;color:var(--text-primary);font-size:1.15rem;font-weight:700;line-height:1.2}.main-nav{align-items:center;gap:0;display:flex}.nav-link{font-size:var(--text-sm);color:var(--text-secondary);transition:color var(--dur-fast) var(--ease);letter-spacing:.01em;align-items:center;gap:.25rem;padding:.5rem 1rem;font-weight:500;display:flex}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.header-phone{color:var(--text-secondary);transition:color var(--dur-fast) var(--ease)}.site-header .btn-primary{background:var(--accent);color:var(--white)}body.is-homepage .site-header:not(.scrolled){-webkit-backdrop-filter:none;box-shadow:none;background:0 0;border-bottom:none}body.is-homepage .site-header:not(.scrolled):after{opacity:0}body.is-homepage .site-header:not(.scrolled) .logo-name{color:var(--white)}body.is-homepage .site-header:not(.scrolled) .nav-link{color:var(--white-80)}body.is-homepage .site-header:not(.scrolled) .nav-link:hover,body.is-homepage .site-header:not(.scrolled) .nav-link.active{color:var(--white)}body.is-homepage .site-header:not(.scrolled) .header-phone{color:var(--white-80)}body.is-homepage .site-header:not(.scrolled) .header-phone:hover{color:var(--white)}body.is-homepage .site-header:not(.scrolled) .hamburger span{background:var(--white)}.nav-link svg{opacity:.4;width:12px;height:12px;transition:transform var(--dur-md) var(--ease), opacity var(--dur-fast)}.nav-item{position:relative}.nav-item .nav-link svg{opacity:.4;width:12px;height:12px;transition:transform var(--dur-md) var(--ease), opacity var(--dur-fast)}.nav-item:hover .nav-link svg{opacity:.7;transform:rotate(180deg)}.nav-dropdown{background:var(--white);border:1px solid var(--border);opacity:0;visibility:hidden;pointer-events:none;z-index:1001;min-width:240px;padding:1.25rem 1.5rem 1rem;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(6px);box-shadow:0 12px 40px #0000001a}.nav-dropdown:before{content:"";height:12px;position:absolute;top:-12px;left:0;right:0}.nav-item:hover>.nav-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.nav-dd-grid{border-bottom:1px solid var(--border);grid-template-rows:repeat(7,auto);grid-auto-flow:column;gap:.125rem 2rem;margin-bottom:.75rem;padding-bottom:.75rem;display:grid}.nav-dd-link{color:var(--text-secondary);transition:color var(--dur-fast) var(--ease);white-space:nowrap;padding:.35rem 0;font-size:.875rem;line-height:1.45;display:block}.nav-dd-link:hover{color:var(--accent)}.nav-dd-viewall{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);transition:gap var(--dur-md) var(--ease);align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;display:inline-flex}.nav-dd-viewall:hover{color:var(--accent-hover);gap:.5rem}.header-cta{align-items:center;gap:1rem;display:flex}.header-phone{font-size:var(--text-sm);color:var(--white-60);transition:color var(--dur-fast);align-items:center;gap:.4rem;display:flex}.header-phone svg{width:16px;height:16px}.header-phone:hover{color:var(--white)}.header-cta .btn-primary{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;padding:.625rem 1.5rem}.hamburger{cursor:pointer;z-index:1001;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;display:none}.hamburger span{background:var(--text-primary);width:100%;height:1.5px;transition:all var(--dur-md) var(--ease);transform-origin:50%;display:block}.hamburger.open span:first-child{transform:translateY(6.5px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-nav{z-index:999;background:var(--white);padding:calc(var(--header-h) + 1.5rem) var(--gutter) 2rem;transition:transform var(--dur-slow) var(--ease);position:fixed;inset:0;overflow-y:auto;transform:translate(100%)}.mobile-nav.open{transform:translate(0)}.mobile-nav[hidden]{display:block}.mobile-nav-section{padding:1rem 0}.mobile-nav-title{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem;font-weight:600}.mobile-nav-link{font-size:var(--text-lg);color:var(--text-primary);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:.75rem 0;font-weight:500;display:flex}.mobile-nav-link svg{width:16px;height:16px;color:var(--text-muted)}.mobile-sub-link{font-size:var(--text-sm);color:var(--text-secondary);border-left:1px solid var(--border);padding:.5rem 0 .5rem 1rem;display:block}.mobile-sub-link:hover{color:var(--text-primary)}.mobile-nav-divider{background:var(--border);height:1px;margin:.25rem 0}.text-blue{color:var(--accent)!important}.skip-link{background:var(--accent);color:var(--dark);border-radius:var(--radius-sm);z-index:10000;font-size:var(--text-sm);padding:.5rem 1rem;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem}.homepage-hero{height:100vh;min-height:600px;max-height:100vh;padding-top:var(--header-h);align-items:center;display:flex;position:relative;overflow:hidden}.hero-bg-wrap{z-index:0;position:absolute;inset:0}.hero-bg-img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform 12s linear;transform:scale(1.05)}.homepage-hero:hover .hero-bg-img{transform:scale(1)}.hero-overlay{z-index:1;background:linear-gradient(#0a0a0b4d 0%,#0a0a0b1a 30%,#0a0a0b80 60%,#0a0a0beb 100%);position:absolute;inset:0}.hero-glass-accent{z-index:2;pointer-events:none;position:absolute;inset:0}.hero-glass-pane{border:1px solid #ffffff0f;border-radius:2px;position:absolute}.hero-glass-pane-1{background:linear-gradient(135deg,#ffffff05 0%,#0000 100%);width:200px;height:300px;top:15%;right:8%;transform:rotate(-5deg)}.hero-glass-pane-2{background:linear-gradient(135deg,#c8a45c08 0%,#0000 100%);width:160px;height:240px;top:25%;right:15%;transform:rotate(3deg)}.hero-glass-pane-3{background:linear-gradient(135deg,#ffffff04 0%,#0000 100%);width:120px;height:180px;bottom:20%;right:20%;transform:rotate(-2deg)}.hero-content{z-index:3;grid-template-columns:1fr auto;align-items:center;gap:3rem;display:grid;position:relative}.hero-text{max-width:600px}.hero-h1{font-family:var(--font-sans);font-size:var(--text-hero);letter-spacing:-.045em;color:var(--white);text-transform:none;margin-bottom:1rem;font-weight:800;line-height:1.05}.hero-desc{font-size:var(--text-lg);color:var(--white-60);max-width:480px;margin-bottom:1.75rem;line-height:1.65}.hero-actions{align-items:center;gap:1rem;display:flex}.hero-cards{flex-direction:column;gap:.75rem;display:flex}.hero-stat-card{text-align:center;min-width:140px;padding:1.25rem 1.75rem}.glass-panel{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1f;border:1px solid #fff3}.hero-stat-num{font-family:var(--font-sans);font-size:var(--text-2xl);color:var(--white);margin-bottom:.2rem;font-weight:800;line-height:1}.hero-stat-label{font-size:var(--text-xs);color:var(--white-40);letter-spacing:.05em;font-weight:500}.trust-strip{background:var(--bg-elevated);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:1.5rem 0}.trust-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:2.5rem;display:flex}.trust-item{align-items:center;gap:.625rem;display:flex}.trust-item-icon{width:20px;height:20px;color:var(--accent);opacity:.7}.trust-item-icon svg{width:100%;height:100%}.trust-item-text{font-size:var(--text-sm);color:var(--text-secondary);font-weight:400}.trust-sep{background:var(--border);width:1px;height:20px}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(3rem,2rem + 4vw,6rem);display:grid}.about-img-wrap{border-radius:var(--radius-lg);position:relative;overflow:hidden}.about-img{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto}.about-img-badge{text-align:center;padding:1rem 1.25rem;position:absolute;bottom:1.5rem;left:1.5rem}.about-badge-num{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--white);font-weight:700;line-height:1}.about-badge-text{font-size:var(--text-xs);color:var(--white-60);margin-top:.25rem}.about-differentiators{flex-direction:column;gap:1rem;margin-top:2rem;display:flex}.about-diff-item{align-items:flex-start;gap:.75rem;display:flex}.about-diff-icon{width:20px;height:20px;color:var(--accent);flex-shrink:0;margin-top:.15rem}.about-diff-icon svg{width:100%;height:100%}.about-diff-title{font-size:var(--text-sm);color:var(--text-primary);margin-bottom:.125rem;font-weight:600}.about-diff-desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.service-families-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.service-family-card{-webkit-backdrop-filter:blur(6px);border-radius:var(--radius-lg);transition:all var(--dur-md) var(--ease);background:#ffffffb3;border:1px solid #ffffff80;flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000a,0 4px 16px #00000008}.service-family-card:hover{border-color:#1e56a026;transform:translateY(-4px);box-shadow:0 8px 30px #1e56a01f,0 2px 8px #0000000f}.service-family-img{aspect-ratio:4/3;position:relative;overflow:hidden}.service-family-img img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-xl) var(--ease)}.service-family-card:hover .service-family-img img{transform:scale(1.05)}.service-family-overlay{background:linear-gradient(#0000 40%,#0a0a0b99 100%);position:absolute;inset:0}.service-family-body{flex-direction:column;flex:1;padding:1.5rem;display:flex}.service-family-title{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:.5rem;font-weight:600}.service-family-desc{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.service-family-services{flex-wrap:wrap;gap:.375rem;margin-bottom:auto;padding-bottom:1rem;display:flex}.service-family-chip{border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-muted);white-space:nowrap;padding:.25rem .5rem;font-size:.7rem}.service-family-chip-more{color:var(--accent);border-color:var(--accent-muted)}.service-card-link{font-size:var(--text-sm);color:var(--accent);transition:gap var(--dur-md) var(--ease);align-items:center;gap:.375rem;margin-top:auto;font-weight:500;display:inline-flex}.service-family-card:hover .service-card-link{gap:.625rem}.service-card-link svg{transition:transform var(--dur-md) var(--ease)}.tag{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-xs);background:var(--accent-muted);color:var(--text-secondary);align-items:center;padding:.25rem .625rem;font-size:.65rem;font-weight:600;display:inline-flex}.popular-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.popular-card{border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border);transition:border-color var(--dur-md) var(--ease), transform var(--dur-md) var(--ease);text-decoration:none;position:relative;overflow:hidden}.popular-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.popular-card-img{aspect-ratio:16/10;overflow:hidden}.popular-card-img img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-xl) var(--ease)}.popular-card:hover .popular-card-img img{transform:scale(1.05)}.popular-card-body{padding:1.25rem 1.5rem 1.5rem}.popular-card-title{font-size:var(--text-lg);color:var(--text-primary);margin:.5rem 0 .25rem;font-weight:600}.popular-card-area{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:1rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;display:grid}.project-card{border-radius:var(--radius-lg);aspect-ratio:4/3;cursor:pointer;position:relative;overflow:hidden}.project-card img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-xl) var(--ease)}.project-card:hover img{transform:scale(1.06)}.project-card-overlay{opacity:.7;transition:opacity var(--dur-md) var(--ease);background:linear-gradient(#0000 30%,#0a0a0bd9 100%);flex-direction:column;justify-content:flex-end;padding:1.5rem;display:flex;position:absolute;inset:0}.project-card:hover .project-card-overlay{opacity:1}.project-card-title{font-size:var(--text-lg);color:var(--white);margin-bottom:.25rem;font-weight:600}.project-card-loc{font-size:var(--text-sm);color:var(--white-60)}.filter-bar{flex-wrap:wrap;gap:.5rem;margin-bottom:2.5rem;display:flex}.filter-btn{font-size:var(--text-sm);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer;transition:all var(--dur-fast) var(--ease);background:0 0;padding:.5rem 1.25rem;font-weight:500}.filter-btn:hover,.filter-btn.active{color:var(--accent);border-color:var(--accent);background:var(--accent-muted)}.ba-layout{grid-template-columns:1fr 1.2fr;align-items:center;gap:4rem;display:grid}.before-after{aspect-ratio:16/9;border-radius:var(--radius-lg);cursor:ew-resize;position:relative;overflow:hidden}.ba-after,.ba-before{position:absolute;inset:0}.ba-after img,.ba-before-inner img{object-fit:cover;width:100%;height:100%}.ba-before{z-index:1}.ba-before-inner{width:50%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.ba-divider{background:var(--accent);z-index:3;cursor:ew-resize;width:2px;height:100%;position:absolute;top:0;left:50%}.ba-divider:before{content:"";background:var(--accent);border:2px solid var(--white);border-radius:50%;width:36px;height:36px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.process-grid{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.process-step{border-right:1px solid var(--border);padding:2.5rem 2rem;position:relative}.process-step:last-child{border-right:none}.process-step:nth-child(n+4){border-top:1px solid var(--border)}.process-num{font-family:var(--font-sans);font-size:var(--text-3xl);color:var(--text-muted);opacity:.3;margin-bottom:1rem;font-weight:800;line-height:1}.process-title{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:.5rem;font-weight:600}.process-desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.7}.faq-item{border-bottom:1px solid var(--border)}.faq-question{width:100%;font-size:var(--text-lg);color:var(--text-primary);text-align:left;cursor:pointer;transition:color var(--dur-fast);background:0 0;border:none;justify-content:space-between;align-items:center;padding:1.25rem 0;font-weight:500;display:flex}.faq-question:hover{color:var(--accent)}.faq-question svg{width:18px;height:18px;color:var(--text-muted);transition:transform var(--dur-md) var(--ease);flex-shrink:0}.faq-item.open .faq-question svg{transform:rotate(45deg)}.faq-answer{max-height:0;transition:max-height var(--dur-slow) var(--ease), padding var(--dur-slow) var(--ease);overflow:hidden}.faq-answer.open{max-height:500px;padding-bottom:1.25rem}.faq-answer p{font-size:var(--text-base);color:var(--text-secondary);max-width:640px;line-height:1.75}.quote-form{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-lg);background:#ffffffbf;border:1px solid #fff9;padding:2rem;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.quote-form-title{font-size:var(--text-xl);color:var(--text-primary);margin-bottom:1.5rem;font-weight:600}.form-group{margin-bottom:1.25rem}.form-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:.5rem;font-weight:500;display:block}.form-input,.form-textarea,.form-select{width:100%;font-size:var(--text-base);color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--dur-fast);outline:none;padding:.75rem 1rem}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--accent)}.form-textarea{resize:vertical;min-height:100px}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-error{font-size:var(--text-xs);color:var(--error);margin-top:.25rem}.checkbox-grid{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.checkbox-item{font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;align-items:center;gap:.5rem;padding:.375rem 0;display:flex}.checkbox-item input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent)}.cta-section{padding:var(--sp-section) 0;background:var(--bg-elevated);text-align:center;position:relative}.cta-section:before{content:"";background:linear-gradient(90deg, transparent, var(--border-strong), transparent);width:80%;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.cta-title{font-family:var(--font-sans);font-size:var(--text-4xl);color:var(--text-primary);letter-spacing:-.03em;margin-bottom:1rem;font-weight:800}.cta-desc{font-size:var(--text-lg);color:var(--text-secondary);max-width:500px;margin:0 auto 2.5rem;line-height:1.7}.cta-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.page-hero{min-height:60vh;padding-top:calc(var(--header-h) + 3rem);align-items:flex-end;padding-bottom:4rem;display:flex;position:relative;overflow:hidden}.page-hero-bg{z-index:0;position:absolute;inset:0}.page-hero-bg img{object-fit:cover;width:100%;height:100%}.page-hero-overlay{z-index:1;background:linear-gradient(#0a0a0b66 0%,#0a0a0b99 50%,#0a0a0bf2 100%);position:absolute;inset:0}.page-hero-content{z-index:2;max-width:680px;position:relative}.page-hero-h1{font-family:var(--font-sans);font-size:var(--text-4xl);color:var(--white);letter-spacing:-.03em;margin-bottom:1rem;font-weight:800;line-height:1.1}.page-hero-desc{font-size:var(--text-lg);color:var(--white-60);max-width:560px;line-height:1.75}.page-hero-actions{gap:1rem;margin-top:2rem;display:flex}.page-header{padding-top:calc(var(--header-h) + 2.5rem);background:linear-gradient(135deg,#0b0e14 0%,#141929 50%,#1a2040 100%);padding-bottom:2.5rem;position:relative;overflow:hidden}.page-header:before{content:"";pointer-events:none;background:radial-gradient(at 20% 80%,#1e56a01f 0%,#0000 50%),radial-gradient(at 80% 20%,#2563eb0f 0%,#0000 50%);position:absolute;inset:0}.page-header:after{content:"";background:linear-gradient(90deg,#0000,#1e56a040,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.page-header .container{z-index:1;position:relative}.page-header-label{text-transform:uppercase;letter-spacing:.08em;color:#38bdf8d9;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.75rem;font-weight:600;display:inline-flex}.page-header-label svg{width:14px;height:14px}.page-header h1{font-family:var(--font-sans);color:#fff;letter-spacing:-.02em;margin-bottom:.75rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.15}.page-header-desc{color:#ffffff8c;max-width:560px;font-size:1rem;line-height:1.65}.page-header-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.breadcrumb{font-size:var(--text-xs);color:var(--white-40);align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.breadcrumb a{color:var(--white-40);transition:color var(--dur-fast)}.breadcrumb a:hover{color:var(--white-80)}.breadcrumb-sep{color:var(--white-20)}.breadcrumb-dark{color:var(--text-muted)}.breadcrumb-dark a{color:var(--text-secondary);font-weight:500}.breadcrumb-dark a:hover{color:var(--accent)}.breadcrumb-dark .breadcrumb-sep{color:var(--border-strong)}.breadcrumb-center{text-align:center;justify-content:center}.site-footer-inner{background:var(--bg-elevated);border-top:1px solid var(--border)}.footer-top{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;padding:5rem 0 4rem;display:grid}.footer-brand .logo-name{font-family:var(--font-sans);font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:1rem;font-weight:800;display:block}.footer-brand .logo-sub{margin-bottom:1rem;display:block}.footer-brand-desc{font-size:var(--text-sm);color:var(--text-muted);max-width:320px;margin-bottom:1.5rem;line-height:1.7}.footer-social{gap:.75rem;display:flex}.footer-social a{border:1px solid var(--border);width:36px;height:36px;color:var(--text-secondary);transition:all var(--dur-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.footer-social a:hover{border-color:var(--dark);color:var(--text-primary);background:var(--accent-muted)}.footer-social svg{width:16px;height:16px}.footer-col-title{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1.25rem;font-weight:600}.footer-link{font-size:var(--text-sm);color:var(--text-secondary);transition:color var(--dur-fast);padding:.25rem 0;display:block}.footer-link:hover{color:var(--text-primary)}.footer-bottom{border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 0;display:flex}.footer-legal{gap:1.5rem;display:flex}.footer-legal a{color:var(--text-muted);transition:color var(--dur-fast)}.footer-legal a:hover{color:var(--text-secondary)}.hub-trust-bar{background:var(--bg-elevated);border-bottom:1px solid var(--border);padding:1.5rem 0}.hub-trust-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.hub-trust-item{align-items:center;gap:1rem;display:flex}.hub-trust-icon{border-radius:var(--radius-md);background:var(--accent-muted);width:44px;height:44px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.hub-trust-icon svg{width:22px;height:22px}.hub-trust-title{font-size:var(--text-sm);color:var(--text-primary);margin-bottom:.15rem;font-weight:700}.hub-trust-desc{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.35}.section-underline{background:var(--accent);border-radius:2px;width:48px;height:3px;margin:.75rem auto 0}.hub-catalog-grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.hub-catalog-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform var(--dur-md) var(--ease), box-shadow var(--dur-md) var(--ease), border-color var(--dur-md);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.hub-catalog-card:hover{border-color:#1e56a033;transform:translateY(-4px);box-shadow:0 12px 32px #00000014}.hub-catalog-img{aspect-ratio:16/10;background:var(--surface);width:100%;position:relative;overflow:hidden}.hub-catalog-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.hub-catalog-card:hover .hub-catalog-img img{transform:scale(1.04)}.hub-catalog-body{flex-direction:column;flex:1;padding:1.5rem;display:flex}.hub-catalog-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.15rem;font-weight:700;line-height:1.3}.hub-catalog-desc{color:var(--text-secondary);flex:1;margin-bottom:1.25rem;font-size:.875rem;line-height:1.65}.hub-catalog-link{color:var(--accent);transition:gap var(--dur-fast);align-items:center;gap:.4rem;margin-top:auto;font-size:.875rem;font-weight:600;display:inline-flex}.hub-catalog-card:hover .hub-catalog-link{gap:.65rem}.sp-rooms-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.sp-room-card{border-radius:var(--radius-lg);overflow:hidden}.sp-room-img{aspect-ratio:4/3;width:100%;position:relative;overflow:hidden}.sp-room-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.sp-room-card:hover .sp-room-img img{transform:scale(1.05)}.sp-room-overlay{background:linear-gradient(#0000 50%,#000000a6 100%);align-items:flex-end;padding:1.25rem;display:flex;position:absolute;inset:0}.sp-room-name{color:#fff;letter-spacing:.01em;font-size:1rem;font-weight:700}.sp-ideas-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.sp-idea-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform var(--dur-md) var(--ease), border-color var(--dur-md);padding:1.75rem}.sp-idea-card:hover{border-color:#1e56a033;transform:translateY(-3px)}.sp-idea-num{font-family:var(--font-mono,monospace);color:var(--accent);opacity:.7;margin-bottom:.75rem;font-size:.8rem;font-weight:700}.sp-idea-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.05rem;font-weight:700;line-height:1.3}.sp-idea-desc{color:var(--text-secondary);font-size:.875rem;line-height:1.65}.sp-why-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.sp-why-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--dur-md);align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.sp-why-item:hover{border-color:#1e56a033}.sp-why-icon{background:#1e56a01f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.sp-why-icon svg{width:18px;height:18px;color:var(--accent)}.hub-standards-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;display:grid}.hub-standard-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform var(--dur-md);padding:2rem 1.5rem;position:relative}.hub-standard-card:hover{border-color:var(--accent);transform:translateY(-4px)}.hub-standard-icon{font-family:var(--font-display);color:var(--accent);opacity:.7;margin-bottom:1rem;font-size:1.5rem;font-weight:800}.hub-standard-card h4{color:var(--text-primary);margin-bottom:.75rem;font-size:1.1rem;font-weight:700}.hub-standard-card p{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.55}.hub-consultancy-section{background:var(--bg-primary);color:var(--text-primary);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:5rem 0;position:relative;overflow:hidden}.hub-consultancy-section:before,.hub-consultancy-section:after,.hub-consultancy-grid-bg{display:none}.hub-consultancy-wrapper{z-index:2;grid-template-columns:1fr 1fr;align-items:start;gap:3.5rem;display:grid;position:relative}.hub-consultancy-info{padding-top:.5rem}.quote-luxury-pill{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;background:#1e56a014;border:1px solid #1e56a02e;border-radius:6px;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.35rem .9rem;font-size:.75rem;font-weight:600;display:inline-flex}.quote-pill-pulse{background:#22c55e;border-radius:50%;flex-shrink:0;width:7px;height:7px;position:relative}.quote-pill-pulse:after{content:"";background:#22c55e59;border-radius:50%;animation:2s cubic-bezier(0,0,.2,1) infinite pingDot;position:absolute;inset:-3px}@keyframes pingDot{0%{opacity:.7;transform:scale(1)}75%,to{opacity:0;transform:scale(2.2)}}.hub-consultancy-info h2{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:1rem;font-size:clamp(1.75rem,2.8vw,2.25rem);font-weight:700;line-height:1.25}.quote-highlight-gradient{color:var(--primary);background:0 0;-webkit-background-clip:unset;-webkit-text-fill-color:unset}.hub-consultancy-info p.quote-lead{color:var(--text-secondary);margin-bottom:2rem;font-size:1rem;line-height:1.75}.quote-luxury-cards{flex-direction:column;gap:.75rem;margin-bottom:2rem;display:flex}.quote-feature-card{background:var(--bg-secondary);border:1px solid var(--border);transition:border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border-radius:10px;align-items:flex-start;gap:1rem;padding:1rem 1.15rem;display:flex}.quote-feature-card:hover{border-color:var(--primary);background:var(--bg-secondary);transform:none;box-shadow:0 2px 12px #1e56a014}.quote-feature-icon-box{background:#1e56a014;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.quote-feature-icon-box svg{width:18px;height:18px}.quote-feature-text{flex-direction:column;gap:.15rem;display:flex}.quote-feature-text strong{color:var(--text-primary);font-size:.9rem;font-weight:600}.quote-feature-text span{color:var(--text-secondary);font-size:.825rem;line-height:1.5}.quote-direct-contact-wrap{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;padding-top:1.5rem;display:flex}.quote-direct-label{color:var(--text-tertiary);font-size:.825rem;font-weight:500}.quote-direct-pills{flex-wrap:wrap;gap:.75rem;display:flex}.quote-pill-btn{transition:all var(--dur-fast) var(--ease);border-radius:8px;align-items:center;gap:.5rem;padding:.6rem 1.15rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.quote-wa-pill{color:#16a34a;background:#25d36614;border:1px solid #25d3664d}.quote-wa-pill svg{fill:currentColor;width:16px;height:16px}.quote-wa-pill:hover{color:#16a34a;background:#25d36626;border-color:#16a34a;transform:translateY(-1px);box-shadow:0 2px 12px #25d36626}.quote-phone-pill{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary)}.quote-phone-pill svg{width:16px;height:16px;stroke:var(--primary)}.quote-phone-pill:hover{border-color:var(--primary);color:var(--text-primary);transform:translateY(-1px);box-shadow:0 2px 12px #1e56a01a}.hub-consultancy-form-box{background:var(--bg-secondary);border:1px solid var(--border);border-radius:16px;padding:2.25rem;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a}.hub-consultancy-form-box:before{content:"";background:linear-gradient(90deg, var(--primary), #2563eb, var(--primary));border-radius:16px 16px 0 0;height:3px;position:absolute;top:0;left:0;right:0}.hub-form-title{color:var(--text-primary);letter-spacing:-.015em;margin-bottom:.3rem;font-size:1.3rem;font-weight:700}.hub-form-subtitle{color:var(--text-secondary);margin-bottom:1.5rem;font-size:.85rem;line-height:1.5}.hub-consult-form .form-group{margin-bottom:1.1rem}.hub-consult-form .form-label{color:var(--text-primary);margin-bottom:.35rem;font-size:.825rem;font-weight:600;display:block}.hub-consult-form .form-input,.hub-consult-form .form-textarea{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);width:100%;transition:all var(--dur-fast);box-sizing:border-box;border-radius:8px;padding:.75rem 1rem;font-size:.925rem}.hub-consult-form .form-input::placeholder,.hub-consult-form .form-textarea::placeholder{color:var(--text-tertiary)}.hub-consult-form .form-input:focus,.hub-consult-form .form-textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #1e56a01a}.hub-consult-form select.form-input option{background:var(--bg-primary);color:var(--text-primary)}.quote-submit-btn{background:var(--primary);color:#fff;cursor:pointer;width:100%;transition:all var(--dur-fast);border:none;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;margin-top:.75rem;padding:.9rem 1.75rem;font-size:.95rem;font-weight:700;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #1e56a040}.quote-submit-btn:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 16px #1e56a059}.quote-submit-btn:active{transform:translateY(0)}.form-trust-footer{color:var(--text-tertiary);text-align:center;justify-content:center;align-items:center;gap:.4rem;margin-top:1rem;font-size:.75rem;display:flex}.form-trust-footer svg{color:#22c55e;width:13px;height:13px}.btn-glass{-webkit-backdrop-filter:blur(12px);color:var(--white);transition:all var(--dur-fast) var(--ease);background:#ffffff1f;border:1px solid #ffffff40;justify-content:center;align-items:center;display:inline-flex}.btn-glass:hover{color:var(--white);background:#ffffff38;border-color:#fff6}@media (width<=1024px){.hub-trust-grid,.hub-standards-grid{grid-template-columns:repeat(2,1fr)}.hub-consultancy-wrapper{grid-template-columns:1fr;gap:2.5rem}}@media (width<=640px){.hub-trust-grid,.hub-standards-grid,.hub-catalog-grid{grid-template-columns:1fr}.hub-consultancy-form-box{padding:1.5rem}}.sp-overview-grid{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.sp-overview-content{max-width:600px}.sp-overview-image{border-radius:var(--radius-lg);aspect-ratio:6/5;overflow:hidden}.sp-overview-image img{object-fit:cover;width:100%;height:100%}.sp-quick-stats{border-top:1px solid var(--border);gap:2.5rem;padding-top:2rem;display:flex}.sp-stat-num{font-size:var(--text-2xl);color:var(--accent);margin-bottom:.25rem;font-weight:800;line-height:1}.sp-stat-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.sp-features-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.sp-feature-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform var(--dur-md), border-color var(--dur-md), box-shadow var(--dur-md);padding:2rem 1.5rem}.sp-feature-card:hover{border-color:#1e56a040;transform:translateY(-4px);box-shadow:0 8px 24px #0000000f}.sp-feature-icon{border-radius:var(--radius-md);background:var(--accent-muted);justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:1.25rem;display:flex}.sp-feature-icon svg{width:22px;height:22px;color:var(--accent)}.sp-feature-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.05rem;font-weight:700}.sp-feature-desc{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.7}.sp-apps-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.sp-app-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--dur-md), transform var(--dur-md);padding:2rem 1.5rem}.sp-app-card:hover{border-color:var(--accent);transform:translateY(-3px)}.sp-app-num{font-family:var(--font-mono,var(--font-sans));font-size:var(--text-2xl);color:var(--accent);opacity:.35;margin-bottom:.75rem;font-weight:800;line-height:1}.sp-app-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.05rem;font-weight:700}.sp-app-desc{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.65}.sp-options-layout{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}.sp-options-grid{flex-direction:column;gap:.75rem;display:flex}.sp-option-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--dur-md);align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.sp-option-item:hover{border-color:var(--accent)}.sp-option-item svg{color:var(--accent);flex-shrink:0;margin-top:1px}.sp-option-item span{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.sp-process-timeline{grid-template-columns:repeat(5,1fr);gap:1.5rem;display:grid;position:relative}.sp-process-timeline:before{content:"";background:var(--border);z-index:0;height:2px;position:absolute;top:28px;left:calc(10% + 20px);right:calc(10% + 20px)}.sp-process-step{text-align:center;z-index:1;position:relative}.sp-process-num{background:var(--accent);width:56px;height:56px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.25rem;font-size:1rem;font-weight:800;display:flex;position:relative;box-shadow:0 4px 12px #1e56a040}.sp-process-content{padding:0 .25rem}.sp-process-title{color:var(--text-primary);margin-bottom:.375rem;font-size:1rem;font-weight:700}.sp-process-desc{font-size:var(--text-xs);color:var(--text-secondary);margin:0;line-height:1.6}.sp-related-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.sp-related-card{-webkit-backdrop-filter:blur(6px);border-radius:var(--radius-lg);transition:all var(--dur-md) var(--ease);background:#ffffffb3;border:1px solid #ffffff80;text-decoration:none;overflow:hidden;box-shadow:0 1px 3px #0000000a,0 4px 16px #00000008}.sp-related-card:hover{border-color:#1e56a026;transform:translateY(-4px);box-shadow:0 8px 30px #1e56a01f,0 2px 8px #0000000f}.sp-related-img{aspect-ratio:16/10;position:relative;overflow:hidden}.sp-related-img img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-xl) var(--ease)}.sp-related-card:hover .sp-related-img img{transform:scale(1.05)}.sp-related-overlay{background:linear-gradient(#0000 40%,#0a0a0b66 100%);position:absolute;inset:0}.sp-related-body{padding:1.25rem}.sp-related-title{color:var(--text-primary);margin-bottom:.375rem;font-size:1.05rem;font-weight:600}.sp-related-desc{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:.75rem;line-height:1.5}.related-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.related-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color var(--dur-md), transform var(--dur-md);padding:1.25rem;text-decoration:none}.related-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.related-card h4{font-size:var(--text-base);color:var(--text-primary);margin-bottom:.25rem;font-weight:600}.related-card p{font-size:var(--text-sm);color:var(--text-muted);margin:0}.split-cards{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.split-card{border-radius:var(--radius-lg);aspect-ratio:16/10;position:relative;overflow:hidden}.split-card img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-xl) var(--ease)}.split-card:hover img{transform:scale(1.05)}.split-card-content{background:linear-gradient(#0000 30%,#0a0a0bd9 100%);flex-direction:column;justify-content:flex-end;padding:2rem;display:flex;position:absolute;inset:0}.split-card-label{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem;font-weight:600}.split-card-title{font-size:var(--text-2xl);color:var(--white);margin-bottom:.5rem;font-weight:700}.split-card-desc{font-size:var(--text-sm);color:var(--white-60);line-height:1.6}.contact-grid{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.contact-method{border-bottom:1px solid var(--border);align-items:flex-start;gap:1rem;padding:1.5rem 0;display:flex}.contact-method-icon{border-radius:var(--radius-sm);border:1px solid var(--border);width:42px;height:42px;color:var(--text-secondary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-method-icon svg{width:18px;height:18px}.contact-method-label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.25rem;font-weight:600}.contact-method-value{font-size:var(--text-lg);color:var(--text-primary);font-weight:500}.wa-bubble{color:#fff;z-index:900;width:52px;height:52px;transition:transform var(--dur-md) var(--ease);background:#25d366;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 4px 16px #25d3664d}.wa-bubble:hover{transform:scale(1.1)}.wa-bubble svg{width:26px;height:26px}.back-to-top{background:var(--white);border:1px solid var(--border);width:40px;height:40px;color:var(--text-secondary);z-index:900;opacity:0;visibility:hidden;transition:all var(--dur-md) var(--ease);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:2rem;right:5.5rem;box-shadow:0 2px 10px #00000014}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top:hover{background:var(--bg-elevated);color:var(--text-primary)}.back-to-top svg{width:18px;height:18px}.mobile-action-bar{z-index:800;background:var(--white);border-top:1px solid var(--border);padding:.5rem var(--gutter);display:none;position:fixed;bottom:0;left:0;right:0}.mobile-action-bar-inner{gap:.5rem;display:flex}.mob-action-btn{font-size:var(--text-xs);border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-secondary);background:0 0;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:.625rem;font-weight:500;display:flex}.mob-action-btn svg{width:16px;height:16px}.mob-action-btn.wa{color:#25d366;border-color:#25d3664d}.mob-action-btn.cta{background:var(--accent);color:var(--dark);border-color:var(--accent);font-weight:600}.reveal{opacity:0;transition:opacity var(--dur-xl) var(--ease), transform var(--dur-xl) var(--ease);transform:translateY(32px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.text-center{text-align:center}.text-left{text-align:left}.flex{display:flex}.flex-center{justify-content:center;align-items:center}.gap-4{gap:1rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.w-full{width:100%}@media (width<=1024px){.hero-content{grid-template-columns:1fr}.hero-cards{flex-direction:row;gap:.75rem}.hero-stat-card{flex:1;min-width:auto}.about-grid{grid-template-columns:1fr;gap:2.5rem}.about-image{order:-1}.service-families-grid{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr 1fr;gap:2.5rem}.ba-layout{grid-template-columns:1fr;gap:2rem}.split-cards{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:2.5rem}.process-grid{grid-template-columns:repeat(2,1fr)}.sp-overview-grid{grid-template-columns:1fr;gap:2.5rem}.sp-features-grid{grid-template-columns:repeat(2,1fr)}.sp-options-layout{grid-template-columns:1fr;gap:2rem}.sp-process-timeline{grid-template-columns:repeat(3,1fr)}.sp-process-timeline:before{display:none}.sp-related-grid,.hub-standards-grid,.hub-catalog-grid,.sp-rooms-grid,.sp-ideas-grid{grid-template-columns:repeat(2,1fr)}.sp-why-grid{grid-template-columns:1fr}}@media (width<=768px){.main-nav,.header-phone,.header-cta .btn-primary{display:none}.hamburger{display:flex}.mobile-action-bar{display:block}.wa-bubble{bottom:5rem;right:1.25rem}.back-to-top{bottom:5rem;right:4.5rem}.service-families-grid,.popular-grid,.projects-grid{grid-template-columns:1fr}.hero-cards{flex-direction:column}.hero-stat-card{min-width:auto}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .btn{justify-content:center;width:100%}.process-grid{grid-template-columns:1fr}.process-step{border-right:none;border-bottom:1px solid var(--border)}.process-step:nth-child(n+4){border-top:none}.related-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr;gap:2rem}.footer-bottom{text-align:center;flex-direction:column;gap:.75rem}.checkbox-grid,.sp-features-grid,.sp-apps-grid{grid-template-columns:1fr}.sp-process-timeline{grid-template-columns:repeat(2,1fr);gap:1.25rem}.sp-related-grid{grid-template-columns:1fr}.sp-quick-stats{flex-wrap:wrap;gap:1.5rem}.hub-standards-grid,.hub-catalog-grid,.sp-rooms-grid,.sp-ideas-grid,.sp-why-grid{grid-template-columns:1fr}}@media (width<=480px){.homepage-hero{min-height:90vh}.page-hero{min-height:50vh}.hero-quick-links{display:none}}.project-modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:9999;opacity:0;visibility:hidden;background:#0f0f10d9;justify-content:center;align-items:center;padding:1.5rem;transition:opacity .25s,visibility .25s;display:flex;position:fixed;inset:0}.project-modal-backdrop.active{opacity:1;visibility:visible}.project-modal-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;flex-direction:column;width:100%;max-width:920px;max-height:90vh;transition:transform .25s;display:flex;position:relative;overflow:hidden;transform:scale(.95);box-shadow:0 25px 60px #00000059}.project-modal-backdrop.active .project-modal-card{transform:scale(1)}.project-modal-close{z-index:10;color:#fff;cursor:pointer;background:#0f0f10b3;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:background .2s,transform .2s;display:flex;position:absolute;top:1rem;right:1rem}.project-modal-close:hover{background:#000;transform:scale(1.08)}.project-modal-body{grid-template-columns:1.15fr 1fr;max-height:90vh;display:grid;overflow-y:auto}.project-modal-img-wrap{background:#111;justify-content:center;align-items:center;min-height:350px;display:flex}.project-modal-img-wrap img{object-fit:contain;background:#0d0d0e;width:100%;height:100%;max-height:80vh}.project-modal-info{flex-direction:column;justify-content:space-between;gap:1.5rem;padding:2rem;display:flex}.project-card{cursor:pointer}@media (width<=768px){.project-modal-body{grid-template-columns:1fr}.project-modal-img-wrap{min-height:250px}.project-modal-info{padding:1.25rem}}@media print{.site-header,.wa-bubble,.back-to-top,.mobile-action-bar,.project-modal-backdrop{display:none!important}body{color:#000;background:#fff}.section{padding:2rem 0}}
