:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-blue:#5096cb;--brand-blue-dark:#3a7aaa;--brand-blue-light:#7eb8e0;--brand-red:#e43a3a;--brand-red-dark:#c42f2f;--brand-black:#211d1e;--text:var(--brand-black);--text-muted:#5a5f66;--bg:#fff;--bg-subtle:#f4f6f8;--bg-blue:#eef4f9;--border:#d8dee6;--shadow-sm:0 1px 3px #211d1e14;--shadow-md:0 4px 16px #211d1e14;--shadow-lg:0 20px 48px #5096cb29;--radius:6px;--radius-lg:10px;--radius-xl:14px;--font:"Source Sans 3", system-ui, sans-serif;--wrap:min(1100px, calc(100% - 2rem));--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.4, .64, 1);font-family:var(--font);text-rendering:optimizelegibility;line-height:1.55}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-width:320px;color:var(--text);margin:0;overflow-x:hidden}img{max-width:100%}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}.page{background:var(--bg);position:relative}.page-bg{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.page-bg-orb{filter:blur(80px);opacity:.28;border-radius:50%;animation:18s ease-in-out infinite orb-float;position:absolute}.page-bg-orb--blue{background:var(--brand-blue-light);width:28rem;height:28rem;top:-8rem;right:-6rem}.page-bg-orb--red{background:#f5a8a8;width:22rem;height:22rem;animation-delay:-6s;bottom:20%;left:-10rem}@keyframes orb-float{0%,to{transform:translate(0)scale(1)}50%{transform:translate(2rem,1.5rem)scale(1.08)}}.reveal{opacity:0;transition:opacity .75s var(--ease-out), transform .75s var(--ease-out);transition-delay:var(--reveal-delay,0s);transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.site-header{z-index:40;border-bottom:3px solid var(--brand-blue);background:var(--bg);box-shadow:var(--shadow-sm);position:sticky;top:0}.site-header.is-scrolled{box-shadow:var(--shadow-md)}.site-header-inner{width:var(--wrap);transition:padding .35s var(--ease-out);justify-content:space-between;align-items:center;gap:1.25rem;margin:0 auto;padding:.75rem 0;display:flex}.site-header.is-scrolled .site-header-inner{padding:.55rem 0}.brand{min-width:0;transition:transform .3s var(--ease-spring);align-items:center;gap:.85rem;display:flex}.brand:hover{transform:translateY(-1px)}.brand-logo{object-fit:contain;width:3.25rem;height:3.25rem;transition:transform .4s var(--ease-spring);flex-shrink:0}.brand:hover .brand-logo{transform:scale(1.05)rotate(-2deg)}.brand-text strong{font-size:1.05rem;font-weight:700;line-height:1.2;display:block}.brand-text small{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-top:.1rem;font-size:.7rem;font-weight:600;display:block}.nav-links{flex-wrap:wrap;justify-content:center;gap:.15rem 1.5rem;display:flex}.nav-links a{color:var(--text-muted);font-size:.95rem;font-weight:600;transition:color .2s;position:relative}.nav-links a:after{background:linear-gradient(90deg, var(--brand-blue), var(--brand-red));transform-origin:100%;width:100%;height:2px;transition:transform .35s var(--ease-out);content:"";position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a:focus-visible{color:var(--brand-blue-dark)}.nav-links a:hover:after,.nav-links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.nav-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.3rem;width:2.75rem;height:2.75rem;padding:0;transition:border-color .2s,background .2s;display:none}.nav-toggle:hover,.nav-toggle:focus-visible{border-color:var(--brand-blue);background:var(--bg-blue)}.nav-toggle-bar{background:var(--brand-black);width:1.15rem;height:2px;transition:transform .25s var(--ease-out), opacity .2s ease;border-radius:999px;display:block}.site-header.is-menu-open .nav-toggle-bar:first-child{transform:translateY(5px)rotate(45deg)}.site-header.is-menu-open .nav-toggle-bar:nth-child(2){opacity:0}.site-header.is-menu-open .nav-toggle-bar:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.nav-links-cta{display:none}.nav-backdrop{z-index:44;cursor:pointer;background:#211d1e73;border:0;padding:0;position:fixed;inset:0}.header-cta{border-radius:var(--radius);background:var(--brand-red);color:#fff;white-space:nowrap;transition:transform .25s var(--ease-spring), box-shadow .25s ease, background .2s ease;flex-shrink:0;padding:.6rem 1rem;font-size:.95rem;font-weight:700;position:relative;overflow:hidden}.header-cta:hover,.header-cta:focus-visible{background:var(--brand-red-dark);transform:translateY(-2px);box-shadow:0 8px 24px #e43a3a59}.header-cta-pulse{background:linear-gradient(105deg,#0000 40%,#ffffff59 50%,#0000 60%);animation:3.5s ease-in-out infinite cta-shine;position:absolute;inset:0;transform:translate(-100%)}@keyframes cta-shine{0%,70%,to{transform:translate(-100%)}85%{transform:translate(100%)}}main{z-index:1;position:relative}.section{width:var(--wrap);margin:0 auto;padding:4rem 0}.section-alt{background:linear-gradient(180deg, var(--bg-subtle) 0%, var(--bg) 100%);width:100%;max-width:none}.section-alt>.reveal,.section-alt>.section-title,.section-alt>.realisation-grid,.section-alt>.service-grid,.section-alt>.catalog-stack,.section-alt .catalog-stack{width:var(--wrap);margin-left:auto;margin-right:auto}.section-alt{padding:4rem 0}.section-title{max-width:640px;margin-bottom:2.25rem}.section-eyebrow{color:var(--brand-blue-dark);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .5rem;font-size:.75rem;font-weight:700}.section-title h2,h1{letter-spacing:-.02em;margin:0 0 .75rem;font-weight:700;line-height:1.15}.section-title h2{font-size:clamp(1.65rem,3.5vw,2.25rem)}.section-lead{color:var(--text-muted);margin:0;font-size:1.05rem}.text-gradient{background:linear-gradient(120deg, var(--brand-blue-dark) 0%, var(--brand-blue) 45%, var(--brand-red) 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.hero{background:var(--bg-subtle);width:100%;max-width:none;margin:0;padding:3rem 0 2rem}.hero-grid{width:var(--wrap);grid-template-columns:minmax(0,1fr) minmax(300px,.95fr);align-items:center;gap:2.5rem;margin:0 auto;display:grid}.hero-kicker{color:var(--brand-blue-dark);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:.85rem;font-weight:700;display:inline-flex}.hero-kicker-dot{background:var(--brand-red);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.25)}}.hero h1{color:var(--brand-black);animation:hero-title-in 1s var(--ease-out) both;font-size:clamp(2rem,5vw,3rem)}.hero-title-period{color:var(--brand-red)}@keyframes hero-title-in{0%{opacity:0;transform:translateY(20px)}}.hero-lead{max-width:520px;color:var(--text-muted);animation:hero-title-in 1s var(--ease-out) .1s both;margin:0 0 1.75rem;font-size:1.12rem}.hero-actions{animation:hero-title-in 1s var(--ease-out) .2s both;flex-wrap:wrap;gap:.75rem;margin-bottom:2rem;display:flex}.hero-guarantees{animation:hero-title-in 1s var(--ease-out) .3s both;gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.hero-guarantees li{opacity:0;animation:guarantee-in .6s var(--ease-out) forwards;animation-delay:calc(.4s + var(--i) * 80ms);align-items:center;gap:.55rem;font-size:.95rem;display:flex}@keyframes guarantee-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.hero-guarantees li:before{background:var(--brand-red);content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px}.hero-visual-wrap{width:100%}.hero-media{aspect-ratio:4/3;border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-lg);margin:0;position:relative;overflow:hidden}.hero-media-glow{z-index:0;pointer-events:none;background:radial-gradient(circle at 30% 30%,#5096cb59,#0000 55%);animation:4s ease-in-out infinite glow-pulse;position:absolute;inset:-20%}@keyframes glow-pulse{0%,to{opacity:.55}50%{opacity:1}}.hero-slide{opacity:0;transition:opacity 1.1s var(--ease-out), transform 6s linear;position:absolute;inset:0;transform:scale(1.06)}.hero-slide.is-active{opacity:1;z-index:1;transform:scale(1)}.hero-slide-image{object-fit:cover;width:100%;height:100%;display:block}.hero-dots{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#211d1e73;border-radius:999px;gap:.45rem;padding:.35rem .6rem;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.hero-dots button{cursor:pointer;width:8px;height:8px;transition:transform .3s var(--ease-spring), background .2s ease, width .3s var(--ease-out);background:#ffffff73;border:0;border-radius:50%;padding:0}.hero-dots button.is-active{background:#fff;border-radius:4px;width:22px}.partners-band{background:linear-gradient(180deg, var(--bg) 0%, var(--bg-subtle) 100%);border-block:1px solid var(--border);width:100%;padding:3rem 0 3.25rem}.partners-band-head{width:var(--wrap);text-align:center;margin:0 auto 1.75rem}.partners-band-head .section-eyebrow{justify-content:center}.partners-band-head h2{margin-bottom:.5rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.partners-band-lead{max-width:520px;color:var(--text-muted);margin:0 auto;font-size:1rem;line-height:1.55}.partners-band-viewport{position:relative;overflow:hidden}.partners-band-fade{z-index:2;pointer-events:none;width:5rem;position:absolute;top:0;bottom:0}.partners-band-fade--left{background:linear-gradient(90deg, var(--bg-subtle), transparent);left:0}.partners-band-fade--right{background:linear-gradient(270deg, var(--bg-subtle), transparent);right:0}.partners-band-track{gap:1.25rem;width:max-content;padding:.5rem 0;animation:50s linear infinite partners-scroll;display:flex}.partners-band:hover .partners-band-track{animation-play-state:paused}@keyframes partners-scroll{to{transform:translate(-50%)}}.partners-band-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);width:10.5rem;box-shadow:var(--shadow-sm);transition:transform .35s var(--ease-spring), box-shadow .35s ease, border-color .3s ease;flex:none;align-content:start;gap:.65rem;margin:0;padding:1rem 1rem .85rem;display:grid}.partners-band-item:hover{box-shadow:var(--shadow-md);border-color:#5096cb80;transform:translateY(-4px)}.partners-band-item img{object-fit:contain;object-position:center;filter:grayscale(.15);width:100%;height:3.25rem;transition:filter .3s;display:block}.partners-band-item:hover img{filter:grayscale(0)}.partners-band-item figcaption{text-align:center;gap:.1rem;display:grid}.partners-band-item figcaption strong{color:var(--text);font-size:.78rem;font-weight:700}.partners-band-item figcaption span{color:var(--text-muted);font-size:.68rem}.image-marquee{border-block:1px solid var(--border);background:var(--bg);width:100%;margin:0 0 1rem;position:relative;overflow:hidden}.image-marquee-fade{z-index:2;pointer-events:none;width:4rem;position:absolute;top:0;bottom:0}.image-marquee-fade--left{background:linear-gradient(90deg, var(--bg), transparent);left:0}.image-marquee-fade--right{background:linear-gradient(270deg, var(--bg), transparent);right:0}.image-marquee-track{gap:.85rem;width:max-content;padding:1rem 0;animation:42s linear infinite marquee;display:flex}.image-marquee:hover .image-marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-50%)}}.image-marquee-item{aspect-ratio:4/3;border-radius:var(--radius);border:1px solid var(--border);width:11rem;box-shadow:var(--shadow-sm);transition:transform .35s var(--ease-spring);flex:none;margin:0;overflow:hidden}.image-marquee-item:hover{z-index:1;transform:scale(1.05)translateY(-4px)}.image-marquee-item img{object-fit:cover;width:100%;height:100%;display:block}.trust-bar{background:linear-gradient(135deg, var(--brand-blue-dark) 0%, var(--brand-blue) 50%, var(--brand-blue-dark) 100%);color:#fff;background-size:200% 200%;grid-template-columns:repeat(3,1fr);animation:8s infinite trust-gradient;display:grid}@keyframes trust-gradient{0%,to{background-position:0%}50%{background-position:100%}}.trust-bar-item{text-align:center;opacity:0;animation:trust-item-in .7s var(--ease-out) forwards;animation-delay:calc(var(--i) * .12s);padding:1.5rem;transform:translateY(16px)}@keyframes trust-item-in{to{opacity:1;transform:translateY(0)}}.trust-bar strong{font-size:2rem;font-weight:700;line-height:1;display:block}.trust-bar span{opacity:.9;margin-top:.35rem;font-size:.88rem;display:block}.button{border-radius:var(--radius);min-height:2.85rem;transition:transform .25s var(--ease-spring), box-shadow .25s ease, border-color .2s ease, background .2s ease, color .2s ease;justify-content:center;align-items:center;padding:0 1.4rem;font-size:.95rem;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.button>span{z-index:1;position:relative}.button-primary{border:2px solid var(--brand-blue);background:linear-gradient(135deg, var(--brand-blue) 0%, var(--brand-blue-dark) 100%);color:#fff;box-shadow:0 4px 20px #5096cb59}.button-primary:before{transition:transform .6s var(--ease-out);content:"";background:linear-gradient(105deg,#0000 30%,#ffffff40 50%,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.button-primary:hover,.button-primary:focus-visible{transform:translateY(-3px);box-shadow:0 12px 32px #5096cb73}.button-primary:hover:before{transform:translate(120%)}.button-outline{border:2px solid var(--border);background:var(--bg);color:var(--brand-black)}.button-outline:hover,.button-outline:focus-visible{border-color:var(--brand-blue);color:var(--brand-blue-dark);transform:translateY(-2px)}.button-block{width:100%}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem;display:grid}.service-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-sm);transition:transform .4s var(--ease-spring), box-shadow .4s ease, border-color .3s ease;overflow:hidden}.service-card:hover{box-shadow:var(--shadow-lg);border-color:#5096cb73;transform:translateY(-8px)}.service-card-media{aspect-ratio:16/10;margin:0;position:relative;overflow:hidden}.service-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out);display:block}.service-card:hover .service-card-media img{transform:scale(1.08)}.service-card-index{border-radius:var(--radius);color:#fff;background:#211d1ebf;padding:.25rem .5rem;font-size:.75rem;font-weight:700;position:absolute;top:.75rem;right:.75rem}.service-card-body{border-top:3px solid #0000;padding:1.2rem 1.25rem 1.3rem;transition:border-color .3s}.service-card:hover .service-card-body{border-top-color:var(--brand-blue)}.service-card h3{margin:0 0 .4rem;font-size:1.05rem;font-weight:700}.service-card p{color:var(--text-muted);margin:0;font-size:.92rem}.commitment-band{width:var(--wrap);border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-lg);transition:box-shadow .4s var(--ease-out);grid-template-columns:minmax(260px,1fr) minmax(0,1.05fr);gap:0;margin:0 auto 4rem;display:grid;overflow:hidden}.commitment-band:hover{box-shadow:0 24px 56px #5096cb33}.commitment-band-media{min-height:260px;margin:0;position:relative;overflow:hidden}.commitment-band-media img{object-fit:cover;width:100%;height:100%;min-height:260px;transition:transform 8s linear;display:block}.commitment-band:hover .commitment-band-media img{transform:scale(1.06)}.commitment-band-overlay{pointer-events:none;background:linear-gradient(90deg,#0000 40%,#211d1e26 100%);position:absolute;inset:0}.commitment-band-copy{background:var(--bg);border-left:4px solid var(--brand-red);flex-direction:column;justify-content:center;gap:1.1rem;padding:2rem 2.25rem;display:flex}.commitment-band-copy h2{margin:0;font-size:clamp(1.35rem,2.5vw,1.7rem);font-weight:700;line-height:1.2}.commitment-band-copy p{color:var(--text-muted);margin:0}.google-reviews-section{overflow:hidden}.google-reviews-head{gap:1.75rem;margin-bottom:2rem;display:grid}.google-reviews-summary{border:1px solid var(--border);border-radius:var(--radius-xl);background:linear-gradient(135deg, #fff 0%, var(--bg-blue) 100%);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;padding:1.25rem 1.5rem;display:flex}.google-reviews-badge{border:1px solid var(--border);color:var(--text-muted);background:#fff;border-radius:999px;align-items:center;gap:.55rem;padding:.45rem .85rem;font-size:.82rem;font-weight:700;display:inline-flex}.google-reviews-badge-mark{color:#fff;background:linear-gradient(135deg,#4285f4 0%,#34a853 45%,#fbbc05 75%,#ea4335 100%);border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;font-size:.82rem;font-weight:800;display:inline-grid}.google-reviews-score{flex-wrap:wrap;align-items:center;gap:.65rem .85rem;display:flex}.google-reviews-score strong{color:var(--brand-blue-dark);font-size:2rem;line-height:1}.google-reviews-score>span:last-child{color:var(--text-muted);font-size:.92rem}.google-reviews-cta{margin-left:auto}.star-rating{gap:.12rem;display:inline-flex}.star-rating-star{color:#d5dbe3;font-size:1rem;line-height:1}.star-rating .star-rating-star.is-filled{color:#f4b400}.google-reviews-viewport{position:relative;overflow:hidden}.google-reviews-band{width:100vw;margin-left:calc(50% - 50vw);overflow:hidden}.google-reviews-fade{z-index:2;pointer-events:none;width:4rem;position:absolute;top:0;bottom:0}.google-reviews-fade--left{background:linear-gradient(90deg, var(--bg) 0%, transparent 100%);left:0}.google-reviews-fade--right{background:linear-gradient(270deg, var(--bg) 0%, transparent 100%);right:0}.google-reviews-track{will-change:transform;gap:1rem;width:max-content;padding:.25rem 0 .5rem;animation:80s linear infinite google-reviews-marquee;display:flex}@keyframes google-reviews-marquee{to{transform:translate(-25%)}}.google-review-card{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff;flex:0 0 clamp(280px,32vw,340px);padding:1.25rem 1.35rem}.google-review-card-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem;display:flex}.google-review-author{align-items:center;gap:.75rem;display:flex}.google-review-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex;overflow:hidden}.google-review-avatar--initial{background:linear-gradient(135deg, var(--brand-blue) 0%, var(--brand-blue-dark) 100%);color:#fff;text-transform:uppercase;font-size:.95rem;font-weight:700;line-height:1}.google-review-avatar--photo img{object-fit:cover;width:100%;height:100%;display:block}.google-review-author strong{font-size:.95rem;display:block}.google-review-author span{color:var(--text-muted);margin-top:.15rem;font-size:.78rem;display:block}.google-review-card p{color:var(--text);margin:0;font-size:.95rem}.showroom-section{overflow:hidden}.showroom-layout{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--bg);box-shadow:var(--shadow-lg);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:0;display:grid;overflow:hidden}.showroom-media{background:var(--bg-subtle);min-height:100%;margin:0;position:relative;overflow:hidden}.showroom-tour{color:#fff;width:100%;min-height:480px;display:block;position:relative;overflow:hidden}.showroom-preview{object-fit:cover;width:100%;height:100%;min-height:480px;transition:transform .55s var(--ease-out);display:block}.showroom-tour:hover .showroom-preview,.showroom-tour:focus-visible .showroom-preview{transform:scale(1.04)}.showroom-tour-overlay{background:linear-gradient(#211d1e14 0%,#211d1e47 55%,#211d1e9e 100%);transition:background .3s;position:absolute;inset:0}.showroom-tour:hover .showroom-tour-overlay,.showroom-tour:focus-visible .showroom-tour-overlay{background:linear-gradient(#211d1e1f 0%,#211d1e5c 55%,#211d1eb8 100%)}.showroom-tour-cta{z-index:1;color:var(--brand-blue-dark);box-shadow:var(--shadow-lg);transition:transform .3s var(--ease-spring), box-shadow .3s ease;background:#fffffff5;border-radius:999px;align-items:center;gap:.85rem;padding:.95rem 1.35rem;font-size:.98rem;font-weight:700;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.showroom-tour:hover .showroom-tour-cta,.showroom-tour:focus-visible .showroom-tour-cta{transform:translate(-50%,-50%)scale(1.04);box-shadow:0 24px 48px #211d1e3d}.showroom-tour-play{background:linear-gradient(135deg, var(--brand-blue) 0%, var(--brand-blue-dark) 100%);border-radius:50%;width:2.5rem;height:2.5rem;position:relative;box-shadow:inset 0 0 0 2px #fff3}.showroom-tour-play:after{content:"";border-top:.45rem solid #0000;border-bottom:.45rem solid #0000;border-left:.72rem solid #fff;position:absolute;top:50%;left:54%;transform:translate(-50%,-50%)}.showroom-media-caption{color:#fff;background:linear-gradient(#0000 0%,#211d1ec7 100%);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;font-size:.85rem;display:flex;position:absolute;bottom:0;left:0;right:0}.showroom-media-caption span{font-weight:700}.showroom-media-caption a{border-radius:var(--radius);color:#fff;background:#ffffff26;padding:.35rem .65rem;font-size:.78rem;font-weight:700;transition:background .2s}.showroom-media-caption a:hover,.showroom-media-caption a:focus-visible{background:var(--brand-blue)}.showroom-panel{background:linear-gradient(180deg, #fff 0%, var(--bg-blue) 100%);border-left:1px solid var(--border);align-content:center;gap:1.35rem;padding:2rem 2rem 2.25rem;display:grid}.showroom-panel-kicker{color:var(--brand-blue-dark);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .5rem;font-size:.75rem;font-weight:700}.showroom-panel address{font-size:1.05rem;font-style:normal;font-weight:700;line-height:1.45}.showroom-panel-hours{color:var(--text-muted);margin:.85rem 0 0;font-size:.92rem}.showroom-highlights{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.showroom-highlights li{color:var(--text);padding-left:1.2rem;font-size:.95rem;position:relative}.showroom-highlights li:before{content:"";background:var(--brand-red);border-radius:50%;width:.45rem;height:.45rem;position:absolute;top:.55rem;left:0}.showroom-actions{gap:.75rem;display:grid}.showroom-actions .button{width:100%}.team-band{width:var(--wrap);border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--bg);box-shadow:var(--shadow-lg);transition:box-shadow .4s var(--ease-out);grid-template-columns:minmax(260px,1fr) minmax(0,1.05fr);gap:0;margin:0 auto 2rem;display:grid;overflow:hidden}.team-band:hover{box-shadow:0 24px 56px #5096cb2e}.team-band-media{min-height:280px;margin:0;position:relative;overflow:hidden}.team-band-media img{object-fit:cover;width:100%;height:100%;min-height:280px;transition:transform 8s linear;display:block}.team-band:hover .team-band-media img{transform:scale(1.06)}.team-band-overlay{pointer-events:none;background:linear-gradient(90deg,#0000 35%,#211d1e1f 100%);position:absolute;inset:0}.team-band-copy{border-left:4px solid var(--brand-blue);flex-direction:column;justify-content:center;gap:1.25rem;padding:2rem 2.25rem;display:flex}.team-band-copy p{color:var(--text-muted);margin:0;font-size:1.02rem;line-height:1.6}.team-gallery{width:var(--wrap);grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:0 auto 2rem;display:grid}.team-gallery-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-sm);transition:transform .35s var(--ease-spring), box-shadow .35s ease, border-color .3s ease;margin:0;overflow:hidden}.team-gallery-item:hover{border-color:var(--brand-blue);box-shadow:var(--shadow-md);transform:translateY(-4px)}.team-gallery-media{aspect-ratio:4/3;position:relative;overflow:hidden}.team-gallery-media img{object-fit:cover;width:100%;height:100%;transition:transform .55s var(--ease-out);display:block}.team-gallery-item:hover .team-gallery-media img{transform:scale(1.06)}.team-gallery-item figcaption{border-top:3px solid var(--brand-blue);background:var(--bg);color:var(--brand-black);text-align:center;padding:.6rem .7rem;font-size:.78rem;font-weight:700;transition:border-color .3s}.team-gallery-item:hover figcaption{border-top-color:var(--brand-red)}.team-pillars{width:var(--wrap);grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:0 auto;display:grid}.team-pillar{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-sm);transition:transform .35s var(--ease-spring), box-shadow .35s ease, border-color .3s ease;overflow:hidden}.team-pillar:hover{border-color:var(--brand-blue);box-shadow:var(--shadow-md);transform:translateY(-4px)}.team-pillar-media{aspect-ratio:16/10;margin:0;position:relative;overflow:hidden}.team-pillar-media img{object-fit:cover;width:100%;height:100%;transition:transform .55s var(--ease-out);display:block}.team-pillar:hover .team-pillar-media img{transform:scale(1.06)}.team-pillar-body{border-top:3px solid var(--brand-blue);padding:1.1rem 1.2rem 1.25rem;transition:border-color .3s}.team-pillar:hover .team-pillar-body{border-top-color:var(--brand-red)}.team-pillar h3{margin:0 0 .4rem;font-size:1rem;font-weight:700}.team-pillar p{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.5}.catalog-stack{gap:2.75rem;display:grid}.catalog-block{border-top:1px solid var(--border);padding-top:2rem}.catalog-block:first-child{border-top:0;padding-top:0}.catalog-block-header{border-bottom:2px solid var(--bg-blue);margin-bottom:1.5rem;padding-bottom:1rem}.catalog-block-eyebrow{color:var(--brand-blue-dark);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .35rem;font-size:.72rem;font-weight:700}.catalog-block-header h3{margin:0 0 .35rem;font-size:1.25rem;font-weight:700}.catalog-block-header p{max-width:640px;color:var(--text-muted);margin:0;font-size:.95rem}.catalog-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;display:grid}.catalog-tile{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-sm);opacity:0;transition:transform .35s var(--ease-spring), box-shadow .35s ease, border-color .25s ease;margin:0;overflow:hidden;transform:translateY(10px)}.reveal.is-visible .catalog-tile{animation:catalog-tile-in .5s var(--ease-out) forwards;animation-delay:calc(.12s + var(--tile-delay,0s))}@keyframes catalog-tile-in{to{opacity:1;transform:translateY(0)}}.catalog-tile:hover{border-color:var(--brand-blue);box-shadow:var(--shadow-md);transform:translateY(-5px)scale(1.02)}.catalog-tile-media{aspect-ratio:4/3;background:var(--bg-subtle);position:relative;overflow:hidden}.catalog-tile-media:after{opacity:0;content:"";pointer-events:none;background:linear-gradient(#0000 55%,#211d1e14 100%);transition:opacity .3s;position:absolute;inset:0}.catalog-tile:hover .catalog-tile-media:after{opacity:1}.catalog-tile-media img{object-fit:cover;width:100%;height:100%;transition:transform .45s var(--ease-out);display:block}.catalog-tile:hover .catalog-tile-media img{transform:scale(1.1)}.catalog-tile-shine{transition:transform .7s var(--ease-out);pointer-events:none;background:linear-gradient(120deg,#0000 30%,#fff6 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.catalog-tile:hover .catalog-tile-shine{transform:translate(100%)}.catalog-tile figcaption{border-top:3px solid var(--brand-blue);background:var(--bg);color:var(--brand-black);letter-spacing:.02em;text-align:center;padding:.6rem .65rem;font-size:.78rem;font-weight:700;transition:border-color .25s,color .25s}.catalog-tile:hover figcaption{border-top-color:var(--brand-red);color:var(--brand-blue-dark)}.realisation-section-head{border-bottom:2px solid var(--bg-blue);margin-bottom:2rem;padding-bottom:1rem}.realisation-section-head .section-title{margin-bottom:0}.realisation-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem;display:grid}.realisation-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-sm);transition:transform .35s var(--ease-spring), box-shadow .35s ease, border-color .25s ease;overflow:hidden}.realisation-card.is-featured{grid-column:span 2}.realisation-card.is-featured .realisation-card-media{aspect-ratio:16/9}.realisation-card:hover{border-color:var(--brand-blue);box-shadow:var(--shadow-md);transform:translateY(-5px)}.realisation-card-media{aspect-ratio:4/3;background:var(--bg-subtle);margin:0;position:relative;overflow:hidden}.realisation-card-index{z-index:2;border-radius:var(--radius);color:#fff;letter-spacing:.06em;background:#211d1eb8;padding:.3rem .55rem;font-size:.72rem;font-weight:700;position:absolute;top:.75rem;left:.75rem}.realisation-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .55s var(--ease-out);display:block}.realisation-card:hover .realisation-card-media img{transform:scale(1.08)}.realisation-card-shine{z-index:1;transition:transform .7s var(--ease-out);pointer-events:none;background:linear-gradient(120deg,#0000 30%,#ffffff59 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.realisation-card:hover .realisation-card-shine{transform:translate(100%)}.realisation-card-overlay{z-index:1;opacity:0;pointer-events:none;background:linear-gradient(#0000 45%,#211d1e8c 100%);transition:opacity .35s;position:absolute;inset:0}.realisation-card:hover .realisation-card-overlay{opacity:1}.realisation-card-body{border-top:3px solid var(--brand-blue);padding:.9rem 1rem 1rem;transition:border-color .3s}.realisation-card:hover .realisation-card-body{border-top-color:var(--brand-red)}.realisation-card h3{margin:0 0 .35rem;font-size:.92rem;font-weight:700;line-height:1.35}.realisation-card-caption{background:var(--bg-blue);color:var(--brand-blue-dark);letter-spacing:.02em;border-radius:999px;align-items:center;margin:0;padding:.2rem .5rem;font-size:.68rem;font-weight:700;display:inline-flex}.step-list{grid-template-columns:repeat(3,1fr);gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.step-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);box-shadow:var(--shadow-sm);transition:transform .35s var(--ease-spring), box-shadow .35s ease, border-color .3s ease;gap:1rem;padding:1.5rem;display:grid;position:relative}.step-item:hover{border-color:var(--brand-blue);box-shadow:var(--shadow-md);transform:translateY(-4px)}.step-number{border-radius:var(--radius);background:linear-gradient(135deg, var(--brand-blue), var(--brand-blue-dark));color:#fff;width:2.5rem;height:2.5rem;transition:transform .35s var(--ease-spring);place-items:center;font-size:1.1rem;font-weight:700;display:grid;box-shadow:0 4px 14px #5096cb66}.step-item:hover .step-number{transform:scale(1.08)}.step-item h3{margin:0 0 .35rem;font-size:1.05rem;font-weight:700}.step-item p{color:var(--text-muted);margin:0;font-size:.92rem}.contact-section{background:linear-gradient(180deg, var(--bg-blue) 0%, var(--bg) 100%);width:100%;max-width:none;padding:4rem 0}.contact-section-inner{width:var(--wrap);margin:0 auto}.contact-section-head{border-bottom:2px solid #5096cb40;margin-bottom:2rem;padding-bottom:1rem}.contact-section-head .section-title{margin-bottom:0}.contact-layout{border-radius:var(--radius-xl);border:1px solid var(--border);background:var(--bg);box-shadow:var(--shadow-lg);transition:box-shadow .4s var(--ease-out);grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:0;display:grid;overflow:hidden}.contact-layout:hover{box-shadow:0 24px 56px #5096cb2e}.contact-media{min-height:100%;margin:0;position:relative;overflow:hidden}.contact-map{background:var(--bg-subtle);border:0;width:100%;height:100%;min-height:420px;display:block}.contact-media-caption{color:#fff;background:linear-gradient(#0000 0%,#211d1ec7 100%);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;font-size:.85rem;display:flex;position:absolute;bottom:0;left:0;right:0}.contact-media-caption span{font-weight:700}.contact-media-caption a{border-radius:var(--radius);color:#fff;background:#ffffff26;padding:.35rem .65rem;font-size:.78rem;font-weight:700;transition:background .2s}.contact-media-caption a:hover,.contact-media-caption a:focus-visible{background:var(--brand-blue)}.contact-panel{gap:1.35rem;padding:2rem 2.25rem 2.25rem;display:grid}.contact-channels{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.contact-channel{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-subtle);transition:transform .25s var(--ease-spring), border-color .2s ease, box-shadow .25s ease;gap:.15rem;padding:.75rem .8rem;display:grid}.contact-channel:hover,.contact-channel:focus-visible{border-color:var(--brand-blue);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.contact-channel strong{font-size:.82rem;font-weight:700}.contact-channel span{color:var(--text-muted);font-size:.72rem}.contact-channel--phone{border-top:3px solid var(--brand-red)}.contact-channel--email{border-top:3px solid var(--brand-blue)}.contact-channel--map{border-top:3px solid var(--brand-black)}.contact-details{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-subtle);padding:1rem 1.1rem}.contact-phone{color:var(--brand-red);letter-spacing:-.02em;transition:transform .3s var(--ease-spring), color .2s ease;margin-bottom:.65rem;font-size:clamp(1.65rem,3.5vw,2.15rem);font-weight:700;line-height:1.1;display:inline-block}.contact-phone:hover,.contact-phone:focus-visible{color:var(--brand-red-dark);transform:scale(1.02)}address{margin-bottom:.5rem;font-style:normal;font-weight:600;line-height:1.5}.contact-email{color:var(--brand-blue-dark);text-underline-offset:.15em;margin-bottom:.45rem;font-weight:700;text-decoration:underline;display:inline-block}.contact-email:hover,.contact-email:focus-visible{color:var(--brand-blue)}.contact-hours{color:var(--text-muted);margin:0;font-size:.92rem}.contact-form{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);border-left:4px solid var(--brand-blue);gap:.85rem;padding:1.15rem 1.15rem 1.25rem;display:grid}.contact-form-head h3{margin:0 0 .25rem;font-size:1.05rem;font-weight:700}.contact-form-head p{color:var(--text-muted);margin:0;font-size:.88rem}.contact-field{gap:.35rem;display:grid}.contact-field span{letter-spacing:.02em;font-size:.78rem;font-weight:700}.contact-field input,.contact-field textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text);font:inherit;padding:.65rem .75rem;transition:border-color .2s,box-shadow .2s}.project-select{position:relative}.project-select-trigger{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;transition:border-color .2s,box-shadow .2s,background-color .2s;display:flex}.project-select-placeholder{color:var(--text-muted)}.project-select-chevron{color:var(--text-muted);transition:transform .25s var(--ease-out);flex-shrink:0}.project-select-chevron--open{transform:rotate(180deg)}.project-select--open .project-select-trigger,.project-select-trigger:focus-visible{border-color:var(--brand-blue);outline:none;box-shadow:0 0 0 3px #5096cb33}.project-select--disabled .project-select-trigger{opacity:.6;cursor:not-allowed}.project-select-menu{z-index:20;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);box-shadow:var(--shadow-md);animation:project-select-in .18s var(--ease-out);margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .35rem);left:0;right:0}@keyframes project-select-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.project-select-option{border-radius:calc(var(--radius) - 2px);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .65rem;transition:background-color .15s,color .15s;display:flex}.project-select-option--active,.project-select-option:hover{background:var(--bg-blue)}.project-select-option--selected{color:var(--brand-blue-dark);font-weight:600}.project-select-option svg{color:var(--brand-blue);flex-shrink:0}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--brand-blue);outline:none;box-shadow:0 0 0 3px #5096cb33}.contact-field textarea{resize:vertical;min-height:6.5rem}.contact-captcha{min-height:65px}.contact-form-feedback{border-radius:var(--radius);margin:0;padding:.75rem .85rem;font-size:.88rem;line-height:1.45}.contact-form-feedback--success{color:#2e7d32;background:#2e7d321a;border:1px solid #2e7d3240}.contact-form-feedback--error{color:#c62828;background:#c6282814;border:1px solid #c6282838}.contact-reassurances{flex-wrap:wrap;gap:.45rem .65rem;margin:0;padding:0;list-style:none;display:flex}.contact-reassurances li{background:var(--bg-blue);color:var(--brand-blue-dark);border-radius:999px;padding:.3rem .6rem;font-size:.72rem;font-weight:700}.site-footer{background:var(--brand-black);color:#ffffffbf;position:relative;overflow:hidden}.site-footer-accent{background:linear-gradient(90deg, var(--brand-blue), var(--brand-red), var(--brand-blue));background-size:200% 100%;height:4px;animation:4s linear infinite footer-bar}@keyframes footer-bar{to{background-position:200% 0}}.site-footer-inner{width:var(--wrap);flex-wrap:wrap;justify-content:space-between;gap:.75rem;margin:0 auto;padding:1.5rem 0;font-size:.9rem;display:flex}.site-footer p{margin:0}.site-footer a{color:#fff;font-weight:600;transition:color .2s}.site-footer a:hover,.site-footer a:focus-visible{color:var(--brand-blue)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.catalog-tile,.reveal.is-visible .catalog-tile{opacity:1;animation:none;transform:none}.image-marquee-track,.partners-band-track,.google-reviews-track{animation:none}.partners-band-track,.google-reviews-band{overflow-x:auto}.google-reviews-track{transform:none}.partners-band-track{flex-wrap:wrap;justify-content:center;width:auto;padding:0 1rem}.hero-slide{transition:none}}@media (width<=1100px){:root{--wrap:min(1100px, calc(100% - 1.75rem))}.catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=900px){:root{--wrap:min(1100px, calc(100% - 1.5rem))}.nav-toggle{display:inline-flex}.header-cta{display:none}.nav-links{z-index:45;border-left:1px solid var(--border);background:var(--bg);width:min(18rem,88vw);box-shadow:var(--shadow-lg);transition:transform .35s var(--ease-out);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;margin:0;padding:5.5rem 1.25rem 1.5rem;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%)}.nav-links.is-open{transform:translate(0)}.nav-links a{border-bottom:1px solid var(--border);padding:.85rem 0;font-size:1rem}.nav-links a:after{display:none}.nav-links-cta{border-radius:var(--radius);background:var(--brand-red);color:#fff;border:0;justify-content:center;align-items:center;margin-top:1rem;padding:.75rem 1rem;font-size:1rem;font-weight:700;display:inline-flex}.hero-grid,.commitment-band,.team-band,.showroom-layout,.contact-layout{grid-template-columns:1fr}.hero{padding:2.25rem 0 1.75rem}.hero h1{font-size:clamp(1.75rem,6vw,2.5rem)}.hero-actions .button{flex:auto;min-width:min(100%,16rem)}.commitment-band-copy,.team-band-copy,.showroom-panel{border-left:0;border-top:4px solid var(--brand-blue)}.team-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.team-pillars{grid-template-columns:1fr}.service-grid,.realisation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.realisation-card.is-featured{grid-column:span 2}.step-list{grid-template-columns:1fr}.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.partners-band-head h2{font-size:clamp(1.35rem,4vw,1.75rem)}.page-bg-orb--blue{width:18rem;height:18rem}.page-bg-orb--red{width:14rem;height:14rem}}@media (width<=600px){:root{--wrap:min(1100px, calc(100% - 1.25rem))}.site-header-inner{gap:.75rem}.brand-text small{font-size:.62rem}.trust-bar{grid-template-columns:1fr}.trust-bar-item{padding:1.15rem 1.25rem}.trust-bar strong{font-size:1.65rem}.hero{padding-top:1.5rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%;min-width:0}.google-reviews-summary{flex-direction:column;align-items:stretch}.google-reviews-cta{width:100%;margin-left:0}.google-reviews-fade{width:2rem}.showroom-tour,.showroom-preview{min-height:320px}.section,.section-alt{padding:2.5rem 0}.service-grid,.realisation-grid{grid-template-columns:1fr;gap:1rem}.realisation-card.is-featured{grid-column:span 1}.realisation-card.is-featured .realisation-card-media{aspect-ratio:4/3}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.team-gallery{grid-template-columns:1fr}.team-band-copy,.contact-panel{padding:1.5rem 1.25rem}.contact-section{padding:2.5rem 0}.contact-channels{grid-template-columns:1fr}.contact-layout{border-radius:var(--radius-lg)}.contact-map{min-height:260px}.contact-phone{word-break:break-word;font-size:clamp(1.55rem,8vw,2rem)}.site-footer-inner{flex-direction:column;align-items:flex-start;padding:1.25rem 0}.partners-band-item,.image-marquee-item{width:9rem}}@media (width<=380px){.brand-text strong{font-size:.95rem}.catalog-grid{grid-template-columns:1fr}}
