
:root{--g900:#252525;--g800:#2B2B2B;--g700:#333333;--g600:#3B3B3B;--g500:#464646;--g400:#5A5A5A;--cu:#9F312B;--cu-l:#B9443E;--cu-d:#75241F;--cu-glow:rgba(159,49,43,.20);--nv:#333333;--nv-l:#404040;--wh:#F3F5F7;--wh-d:#C4CAD0;--tx:#C4CAD0;--red:#DC3545;--red-soft:rgba(220,53,69,.14);--bdr:rgba(159,49,43,.24);--bdr-s:rgba(196,202,208,.08);--shadow:0 24px 80px rgba(0,0,0,.38);--cont:min(1240px,calc(100% - 3rem));--spad:clamp(4rem,7vw,6.75rem) 0;--nav-h:86px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:'Barlow',Arial,sans-serif;background:var(--g900);color:var(--wh);line-height:1.68;overflow-x:hidden}body::before{content:'';position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='250'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='250' height='250' filter='url(%23n)'/%3E%3C/svg%3E")}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--cu)}button,input,select,textarea{font:inherit}::selection{background:var(--cu);color:var(--g900)}.wrap{width:var(--cont);margin-inline:auto}.narrow{max-width:920px}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:10000;background:var(--cu);color:var(--g900);padding:.75rem 1rem;font-family:'Barlow Condensed',sans-serif;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transform:translateY(-150%);transition:transform .2s}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:2px solid var(--cu);outline-offset:4px}.emergency-ribbon{position:fixed;top:0;left:0;right:0;z-index:350;text-align:center;background:var(--red);color:var(--wh);font-family:'Barlow Condensed',sans-serif;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;padding:.4rem 1rem}.emergency-ribbon a:hover{color:var(--wh)}.site-header{position:fixed;top:31px;left:0;right:0;z-index:300;transition:background .28s,border-color .28s,box-shadow .28s}.site-header.is-scrolled{background:rgba(37,37,37,.96);border-bottom:1px solid var(--bdr-s);box-shadow:0 14px 40px rgba(0,0,0,.45);backdrop-filter:blur(14px)}.nav-shell{width:var(--cont);margin:0 auto;display:flex;align-items:center;gap:1.25rem;min-height:74px}.brand{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.brand-mark{width:44px;height:44px;display:grid;place-items:center;background:var(--cu);color:var(--g900);font-family:'Bebas Neue',sans-serif;font-size:1.7rem;line-height:1}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-text strong{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:1.25rem;letter-spacing:.1em;text-transform:uppercase;color:var(--wh)}.brand-text small{font-size:.64rem;color:var(--cu);letter-spacing:.16em;text-transform:uppercase}.desktop-nav{display:flex;align-items:center;gap:.05rem;margin-left:auto}.desktop-nav a{font-family:'Barlow Condensed',sans-serif;font-size:.86rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--wh-d);padding:.55rem .62rem;border:1px solid transparent}.desktop-nav a:hover,.desktop-nav a.active{color:var(--cu);border-color:rgba(159,49,43,.22);background:rgba(159,49,43,.055)}.header-actions{display:flex;align-items:center;gap:.75rem}.header-phone{font-family:'Barlow Condensed',sans-serif;font-weight:900;letter-spacing:.06em;color:var(--wh);white-space:nowrap}.header-phone:hover{text-decoration:underline;text-decoration-color:var(--cu);text-underline-offset:4px}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--bdr);background:transparent;color:var(--wh);cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{width:22px;height:2px;background:currentColor;transition:transform .25s,opacity .25s}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu{display:none;overflow:hidden;max-height:0;border-top:1px solid var(--bdr-s);background:var(--g800);transition:max-height .35s ease}.mobile-menu.open{max-height:760px}.mobile-menu a{display:block;padding:1rem 1.5rem;font-family:'Barlow Condensed',sans-serif;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--bdr-s);color:var(--wh)}.mobile-menu a.active{color:var(--cu)}.mobile-menu-actions{display:grid;gap:.75rem;padding:1.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:1.5px solid transparent;padding:1rem 1.45rem;font-family:'Barlow Condensed',sans-serif;font-weight:900;letter-spacing:.095em;text-transform:uppercase;line-height:1;cursor:pointer;transition:transform .25s,background .25s,border-color .25s,color .25s,box-shadow .25s;text-align:center}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--cu);color:var(--g900)}.btn-primary:hover{background:var(--cu-l);color:var(--g900);box-shadow:0 14px 34px rgba(159,49,43,.32)}.btn-outline{background:rgba(37,37,37,.22);border-color:rgba(196,202,208,.36);color:var(--wh)}.btn-outline:hover{border-color:var(--cu);color:var(--cu)}.btn-small{padding:.72rem 1rem;font-size:.82rem}.btn-dark{background:var(--g900);color:var(--wh)}.btn-dark:hover{background:var(--g600);color:var(--wh)}.btn-outline-dark{border-color:rgba(37,37,37,.35);color:var(--g900);background:rgba(37,37,37,.08)}.btn-alert{background:var(--red);color:var(--wh)}.breadcrumb{position:relative;z-index:2;background:var(--g900);border-bottom:1px solid var(--bdr-s);padding:calc(var(--nav-h) + 3rem) 0 1rem}.breadcrumb ol{width:var(--cont);margin:0 auto;list-style:none;display:flex;gap:.5rem;flex-wrap:wrap;color:var(--tx);font-size:.86rem}.breadcrumb li+li::before{content:'/' ;margin-right:.5rem;color:var(--cu)}.breadcrumb a{color:var(--wh-d)}.page-hero{position:relative;min-height:clamp(640px,88vh,880px);display:flex;align-items:center;background-image:var(--hero-image);background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}.page-hero::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(159,49,43,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(159,49,43,.035) 1px,transparent 1px);background-size:64px 64px}.hero-overlay{position:absolute;inset:0;background:linear-gradient(118deg,rgba(37,37,37,.96) 0%,rgba(37,37,37,.82) 42%,rgba(51,51,51,.58) 70%,rgba(37,37,37,.88) 100%)}.hero-home{--hero-image:url('images/home/hero-home-commercial-kitchen-equipment-service-ri-ma-ct-kismet.webp')}.hero-pm{--hero-image:url('images/services/planned-maintenance/hero-planned-maintenance-commercial-kitchen-equipment-kismet.webp')}.hero-repairs{--hero-image:url('images/services/repairs/hero-on-site-commercial-kitchen-equipment-repair-kismet.webp')}.hero-installations{--hero-image:url('images/services/installations/hero-commercial-kitchen-equipment-installation-kismet.webp')}.hero-emergency{--hero-image:url('images/emergency/hero-24-7-emergency-commercial-kitchen-repair-kismet.webp')}.hero-willcall{--hero-image:url('images/will-call/hero-will-call-commercial-kitchen-parts-service-kismet.webp')}.hero-about{--hero-image:url('images/about/hero-about-owner-operated-commercial-kitchen-technician-kismet.webp')}.hero-portfolio{--hero-image:url('images/portfolio/hero-portfolio-commercial-kitchen-equipment-projects-kismet.webp')}.hero-areas{--hero-image:url('images/service-areas/service-area-map-rhode-island-massachusetts-connecticut-kismet.webp')}.hero-contact{--hero-image:url('images/contact/hero-contact-commercial-kitchen-repair-wrench-kismet.webp')}.hero-legal{--hero-image:url('images/shared/close-up-commercial-kitchen-repair-wrench-kismet.webp')}.hero-alert .hero-overlay{background:linear-gradient(118deg,rgba(37,37,37,.94) 0%,rgba(37,37,37,.88) 45%,rgba(84,12,18,.54) 82%,rgba(37,37,37,.92) 100%)}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,820px);padding:calc(var(--nav-h) + 4rem) 0 4rem}.eyebrow{display:inline-flex;align-items:center;gap:.65rem;font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--cu);margin-bottom:1rem}.eyebrow::before{content:'';width:32px;height:2px;background:currentColor}.section-header-center .eyebrow{justify-content:center}.section-header-center .eyebrow::before{display:none}.page-hero h1{font-family:'Barlow Condensed',sans-serif;font-size:clamp(3rem,7vw,6rem);line-height:.98;text-transform:uppercase;letter-spacing:.01em;max-width:880px}.hero-subtitle{font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.75;color:var(--wh-d);max-width:660px;margin:1.4rem 0 2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.hero-proof{display:flex;flex-wrap:wrap;gap:1px;background:var(--bdr-s);margin-top:3rem;max-width:840px}.hero-proof div{background:rgba(43,43,43,.78);padding:1.1rem 1.3rem;min-width:138px}.hero-proof strong{display:block;font-family:'Bebas Neue',sans-serif;font-size:2.15rem;color:var(--cu);line-height:1}.hero-proof span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--wh-d)}.section{padding:var(--spad);position:relative}.section-dark{background:var(--g900)}.section-charcoal{background:var(--g800)}.section-navy{background:var(--nv)}.section-header{max-width:760px;margin-bottom:2.6rem}.section-header-center{margin-left:auto;margin-right:auto;text-align:center}.section-header h2,.cta-band h2{font-family:'Barlow Condensed',sans-serif;font-size:clamp(2.25rem,4.5vw,4rem);line-height:1;text-transform:uppercase;letter-spacing:.01em}.section-header p,.cta-band p,.card p,.process-step p,.related-card small,.industry-card p,.area-card p,.legal-content p{color:var(--wh-d)}.section-header>p:not(.eyebrow){font-size:1.05rem;line-height:1.78;margin-top:1rem}.trust-bar{background:var(--g800);border-top:1px solid var(--bdr);border-bottom:1px solid var(--bdr)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--bdr-s)}.trust-grid div{background:var(--g800);padding:1.55rem}.trust-grid strong{display:block;font-family:'Barlow Condensed',sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--wh);font-size:1.08rem}.trust-grid span{display:block;color:var(--tx);font-size:.9rem;margin-top:.25rem}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center}.align-start{align-items:start}.sticky-card{position:sticky;top:8.5rem;background:var(--g700);border:1px solid var(--bdr);box-shadow:var(--shadow);padding:2.2rem}.sticky-card h3,.info-panel h2,.contact-card h3,.status-card h2{font-family:'Barlow Condensed',sans-serif;font-size:1.45rem;letter-spacing:.06em;text-transform:uppercase;color:var(--wh);margin-bottom:1rem}.card-media{margin:-1px -1px 1.35rem;overflow:hidden;border-bottom:1px solid var(--bdr-s);height:180px}.card-media.tall{height:240px;margin:-2.2rem -2.2rem 1.6rem}.card-media img,.industry-photo img,.image-frame img,.ba-img img,.area-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(15%) brightness(.76) contrast(1.1);transition:transform .5s,filter .5s}.card:hover .card-media img,.industry-card:hover .industry-photo img,.ba-card:hover .ba-img img{transform:scale(1.045);filter:grayscale(0) brightness(.86) contrast(1.05)}.check-list{list-style:none;display:grid;gap:.7rem;margin:1rem 0 1.6rem}.check-list li{position:relative;color:var(--wh-d);padding-left:1.3rem}.check-list li::before{content:'';position:absolute;left:0;top:.68rem;width:7px;height:7px;background:var(--cu)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--bdr-s)}.process-step{background:var(--g700);padding:2rem}.process-step span{font-family:'Bebas Neue',sans-serif;font-size:2.4rem;color:var(--cu);line-height:1}.process-step h3,.card h3,.industry-card h3,.area-card h3,.ba-card h3{font-family:'Barlow Condensed',sans-serif;font-size:1.18rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--wh);margin:.5rem 0}.process-step p,.card p{font-size:.95rem}.media-grid,.feature-grid,.related-grid,.industry-grid,.areas-grid,.ba-grid,.contact-grid,.two-col-cards{display:grid;gap:1px;background:var(--bdr-s)}.media-grid{grid-template-columns:repeat(3,1fr)}.media-grid.three{grid-template-columns:repeat(3,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}.feature-grid.four{grid-template-columns:repeat(4,1fr)}.card,.info-panel,.related-card,.contact-card,.ba-card{background:var(--g700);border:1px solid transparent;overflow:hidden;transition:background .28s,border-color .28s,transform .28s}.card:hover,.related-card:hover,.contact-card:hover{background:var(--g600);border-color:var(--bdr);transform:translateY(-2px)}.card-body{padding:1.7rem}.card-kicker{font-family:'Barlow Condensed',sans-serif;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--cu);font-size:.78rem}.text-link{display:inline-flex;margin-top:1rem;font-family:'Barlow Condensed',sans-serif;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--cu)}.willcall-band{background:linear-gradient(135deg,rgba(159,49,43,.94),rgba(159,49,43,.9)),url('images/will-call/will-call-commercial-kitchen-parts-storage-service-kismet.webp') center/cover}.willcall-band .section-header h2,.willcall-band .section-header p,.willcall-band .eyebrow,.willcall-band p{color:var(--g900)}.willcall-band .eyebrow::before{background:var(--g900)}.willcall-proof{background:rgba(37,37,37,.18);border:1px solid rgba(37,37,37,.25);padding:2rem;color:var(--g900)}.willcall-proof strong{display:block;font-family:'Bebas Neue',sans-serif;font-size:3.8rem;line-height:.95}.willcall-proof span{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.industry-grid{grid-template-columns:repeat(4,1fr)}.industry-card{background:var(--g700);overflow:hidden}.industry-photo{height:180px;overflow:hidden}.industry-card div:last-child{padding:1.35rem}.image-frame{position:relative;overflow:hidden;border:1px solid var(--bdr);background:var(--g700);min-height:360px}.image-frame::after{content:'';position:absolute;inset:0;border-top:3px solid var(--cu);pointer-events:none}.image-frame img{min-height:360px}.image-frame.portrait{aspect-ratio:3/4;min-height:auto}.image-frame.portrait img{height:100%;min-height:auto}.image-stack{position:relative}.small-overlap{width:62%;min-height:190px;margin:-5rem 0 0 auto;box-shadow:var(--shadow)}.small-overlap img{min-height:190px}.big-quote{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.2rem,5vw,4rem);line-height:1;color:var(--cu);letter-spacing:.05em;margin:1.5rem 0}.section-cta{background:var(--g900)}.cta-band{position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(51,51,51,.96),rgba(37,37,37,.88)),url('images/shared/cta-banner-commercial-kitchen-service-wrench-kismet.webp') center/cover;border:1px solid var(--bdr);padding:clamp(2rem,5vw,3.4rem);display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}.cta-emergency{background:linear-gradient(110deg,rgba(84,12,18,.94),rgba(37,37,37,.9)),url('images/emergency/cta-banner-emergency-service-red-warning-light-kismet.webp') center/cover}.cta-willcall{background:linear-gradient(110deg,rgba(159,49,43,.92),rgba(160,95,46,.9)),url('images/will-call/will-call-commercial-kitchen-parts-storage-service-kismet.webp') center/cover}.cta-willcall h2,.cta-willcall p,.cta-willcall .eyebrow{color:var(--g900)}.cta-actions{display:flex;flex-wrap:wrap;gap:1rem}.areas-grid{grid-template-columns:repeat(3,1fr)}.area-card{position:relative;overflow:hidden;min-height:320px}.area-photo{position:absolute;inset:0}.area-photo img{filter:grayscale(20%) brightness(.34) contrast(1.1)}.area-card:hover .area-photo img{filter:grayscale(5%) brightness(.42) contrast(1.05)}.area-content{position:relative;z-index:2;text-align:center;padding:3.6rem 1.6rem}.area-content strong{display:block;font-family:'Bebas Neue',sans-serif;color:var(--cu);font-size:6rem;line-height:1}.service-map{background:var(--g800);border:1px solid var(--bdr-s);padding:2.2rem;margin-top:1px;text-align:center}.service-map img{margin:auto;opacity:.92}.service-map figcaption{font-family:'Barlow Condensed',sans-serif;color:var(--tx);font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;margin-top:1rem}.ba-grid{grid-template-columns:repeat(3,1fr)}.ba-card{background:var(--g800)}.ba-img{aspect-ratio:3/2;overflow:hidden}.ba-label{border-top:3px solid var(--cu);padding:1.5rem}.related-grid{grid-template-columns:repeat(4,1fr)}.related-card{display:block;padding:1.8rem}.related-card span{display:block;font-family:'Barlow Condensed',sans-serif;color:var(--cu);font-weight:900;letter-spacing:.15em;text-transform:uppercase;font-size:.76rem}.related-card strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:1.25rem;text-transform:uppercase;line-height:1.1;margin:.45rem 0;color:var(--wh)}.emergency-strip{background:var(--red-soft);border-top:1px solid rgba(220,53,69,.35);border-bottom:1px solid rgba(220,53,69,.35);padding:1.3rem 0}.emergency-strip .wrap{display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.emergency-strip strong{font-family:'Barlow Condensed',sans-serif;font-size:1.35rem;text-transform:uppercase;letter-spacing:.08em}.info-panel{padding:2rem}.copper-panel{background:linear-gradient(135deg,rgba(159,49,43,.18),rgba(27,30,33,1))}.two-col-cards{grid-template-columns:1fr 1fr}.faq-list{display:grid;gap:.85rem}.faq-item{background:var(--g800);border:1px solid var(--bdr-s);padding:1.2rem 1.35rem}.faq-item[open]{border-color:var(--bdr);background:var(--g700)}.faq-item summary{cursor:pointer;font-family:'Barlow Condensed',sans-serif;font-size:1.12rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--wh);list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'+';float:right;color:var(--cu);font-size:1.4rem;line-height:1}.faq-item[open] summary::after{content:'–'}.faq-item p{color:var(--wh-d);margin-top:.7rem}.contact-grid{grid-template-columns:repeat(4,1fr)}.contact-card{padding:1.7rem}.contact-card p{color:var(--wh-d)}.form-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:4rem;align-items:start}.form-shell{background:var(--g700);border:1px solid var(--bdr);padding:2rem;box-shadow:var(--shadow)}.request-form .hp-field{position:absolute;left:-10000px;opacity:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:flex;flex-direction:column;gap:.38rem}.field-wide{grid-column:1/-1}.field label{font-family:'Barlow Condensed',sans-serif;font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;color:var(--wh-d)}.field label span,.field-error{color:var(--cu)}input,select,textarea{width:100%;background:var(--g900);border:1.5px solid var(--bdr-s);color:var(--wh);padding:.85rem 1rem;outline:none;transition:border-color .25s,box-shadow .25s}textarea{min-height:140px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--cu);box-shadow:0 0 0 3px rgba(159,49,43,.12)}.field-error{min-height:1rem;font-size:.82rem}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--red);box-shadow:0 0 0 3px rgba(220,53,69,.12)}.form-error-summary{display:none;background:rgba(220,53,69,.12);border:1px solid rgba(220,53,69,.35);padding:.9rem 1rem;color:#ffdce0;margin-bottom:1rem}.form-error-summary.show{display:block}.form-submit{width:min(420px,100%);margin:1.5rem auto 0}.form-note,.field small,.emergency-note{color:var(--tx);font-size:.9rem;margin-top:1rem}.emergency-note{padding:1rem;border-left:3px solid var(--red);background:rgba(220,53,69,.1)}.contact-side{margin-top:2rem;min-height:240px}.contact-side img{min-height:240px}.legal-content{background:var(--g700);border:1px solid var(--bdr);padding:clamp(1.5rem,4vw,3rem)}.legal-block+ .legal-block{margin-top:2.2rem;padding-top:2.2rem;border-top:1px solid var(--bdr-s)}.legal-block h2{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--wh);font-size:1.6rem;margin-bottom:.75rem}.legal-block p+p{margin-top:.75rem}.status-card{background:var(--g700);border:1px solid var(--bdr);padding:2.4rem;text-align:center}.site-footer{background:var(--g900);border-top:1px solid var(--bdr-s);padding:4.5rem 0 2rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.15fr;gap:3rem}.footer-brand p,.site-footer p{color:var(--tx)}.footer-slogan{font-family:'Bebas Neue',sans-serif!important;color:var(--cu)!important;font-size:1.7rem;letter-spacing:.08em;margin:1rem 0!important}.site-footer h2{font-family:'Barlow Condensed',sans-serif;color:var(--cu);font-size:.86rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1rem}.footer-links{list-style:none;display:grid;gap:.45rem}.footer-links a,.site-footer a{color:var(--wh-d)}.footer-links a:hover,.site-footer a:hover{color:var(--cu)}.footer-bottom{border-top:1px solid var(--bdr-s);margin-top:3rem;padding-top:1.4rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--tx);font-size:.86rem}.mobile-sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:250;background:rgba(37,37,37,.96);border-top:1px solid var(--bdr);padding:.75rem 1rem;gap:.75rem}.mobile-sticky-cta .btn{flex:1;padding:.85rem}.fade-in{animation:fadeUp .7s ease both}@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
@media(max-width:1180px){.desktop-nav{display:none}.menu-toggle{display:flex}.mobile-menu{display:block}.header-phone,.header-actions .btn-small{display:none}.process-grid,.industry-grid{grid-template-columns:repeat(2,1fr)}.media-grid,.media-grid.three,.ba-grid{grid-template-columns:repeat(2,1fr)}.feature-grid.four{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:repeat(2,1fr)}.form-layout{grid-template-columns:1fr}.sticky-card{position:static}}
@media(max-width:820px){:root{--cont:min(1240px,calc(100% - 2rem))}.split-grid,.two-col-cards,.areas-grid,.related-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:repeat(2,1fr)}.page-hero{min-height:640px}.hero-grid{padding-top:calc(var(--nav-h) + 5rem)}.hero-proof{display:grid;grid-template-columns:1fr 1fr}.cta-band{grid-template-columns:1fr}.cta-actions{flex-direction:column}.industry-grid,.process-grid,.media-grid,.media-grid.three,.ba-grid,.feature-grid,.feature-grid.four,.contact-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.breadcrumb{padding-top:calc(var(--nav-h) + 3.8rem)}.mobile-sticky-cta{display:flex}body{padding-bottom:78px}.small-overlap{width:84%;margin:-3rem 0 0 auto}}
@media(max-width:480px){.emergency-ribbon{font-size:.68rem;letter-spacing:.08em}.brand-text strong{font-size:1.05rem}.brand-text small{font-size:.56rem}.page-hero h1{font-size:clamp(2.55rem,14vw,4.2rem)}.hero-actions .btn,.cta-actions .btn{width:100%}.hero-proof{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.form-shell{padding:1.25rem}.service-map{padding:1rem}.area-content strong{font-size:4.8rem}}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE NAVIGATION V2 — adaptive, no-wrap, no-layout-shift
   Keeps every page on the same menu system while preventing the
   header from squeezing, wrapping, or pushing hero content.
═══════════════════════════════════════════════════════════════ */
:root{--ribbon-h:31px;--nav-min-h:74px;--nav-wide:min(1760px,calc(100% - clamp(2rem,5vw,7rem)))}
.emergency-ribbon{min-height:var(--ribbon-h);display:flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.15}
.site-header{top:var(--ribbon-h)}
.nav-shell{width:var(--nav-wide);min-height:var(--nav-min-h);gap:clamp(.75rem,1.15vw,1.5rem);flex-wrap:nowrap;isolation:isolate}
.brand{min-width:0;position:relative;z-index:2}
.brand-mark{width:clamp(40px,2.6vw,52px);height:clamp(40px,2.6vw,52px);font-size:clamp(1.55rem,1.25vw,2rem)}
.brand-text strong{font-size:clamp(1.05rem,.86vw,1.35rem);white-space:nowrap}
.brand-text small{font-size:clamp(.54rem,.43vw,.68rem);white-space:nowrap;letter-spacing:clamp(.11em,.18vw,.18em)}
.desktop-nav{flex:1 1 auto;min-width:0;margin-left:0;justify-content:center;gap:clamp(.06rem,.18vw,.2rem);white-space:nowrap;overflow:visible}
.desktop-nav a{white-space:nowrap;font-size:clamp(.72rem,.56vw,.86rem);padding:.54rem clamp(.38rem,.42vw,.66rem);letter-spacing:clamp(.055em,.075vw,.078em);line-height:1.05;flex:0 0 auto}
.header-actions{margin-left:0;flex:0 0 auto;min-width:max-content;position:relative;z-index:2}
.header-phone{font-size:clamp(.84rem,.62vw,.96rem);white-space:nowrap}
.header-actions .btn-small{white-space:nowrap;min-height:44px;padding:.72rem clamp(.85rem,.85vw,1.15rem)}
.site-header.is-scrolled{backdrop-filter:none;-webkit-backdrop-filter:none}
.perf-rich .site-header.is-scrolled{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}

/* Compact navigation for notebooks, tablets, old desktops and narrow browsers */
@media(max-width:1599px){
  .nav-shell{width:min(1180px,calc(100% - clamp(1.5rem,4vw,4rem)))}
  .desktop-nav{display:none!important}
  .menu-toggle{display:flex!important;flex:0 0 44px}
  .header-actions{margin-left:auto}
  .mobile-menu{display:block;position:fixed;top:calc(var(--ribbon-h) + var(--nav-min-h) + .5rem);right:clamp(1rem,3vw,2.25rem);left:auto;width:min(460px,calc(100vw - 2rem));max-height:0;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-10px,0);overflow:auto;background:linear-gradient(180deg,rgba(43,43,43,.985),rgba(37,37,37,.985));border:1px solid var(--bdr);box-shadow:0 30px 90px rgba(0,0,0,.55);transition:max-height .34s ease,opacity .24s ease,transform .24s ease,visibility .24s;z-index:330}
  .mobile-menu.open{max-height:calc(100dvh - var(--ribbon-h) - var(--nav-min-h) - 2rem);opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,0,0)}
  .mobile-menu a{padding:1.02rem 1.25rem;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:1.04rem;line-height:1.1;background:transparent;transition:background .2s,color .2s,padding-left .2s}
  .mobile-menu a:hover,.mobile-menu a.active{background:rgba(159,49,43,.075);color:var(--cu);padding-left:1.45rem}
  .mobile-menu-actions{padding:1.15rem;display:grid;grid-template-columns:1fr;gap:.75rem;background:rgba(196,202,208,.025)}
  html.nav-open body::after{content:'';position:fixed;inset:0;z-index:280;background:rgba(37,37,37,.44);backdrop-filter:none;pointer-events:auto}
  .perf-rich.nav-open body::after{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
}
@media(min-width:1600px){
  .menu-toggle{display:none!important}
  .mobile-menu{display:none!important}
  html.nav-open body::after{display:none!important}
}
@media(max-width:1024px){
  :root{--nav-min-h:70px}
  .nav-shell{width:calc(100% - 2rem)}
  .brand-text strong{font-size:1.08rem;letter-spacing:.085em}
  .brand-text small{font-size:.56rem;letter-spacing:.12em}
  .header-actions .btn-small{display:inline-flex}
  .header-phone{display:inline-flex}
}
@media(max-width:820px){
  .site-header{background:rgba(37,37,37,.94);border-bottom:1px solid var(--bdr-s)}
  .header-actions .btn-small{display:none!important}
  .mobile-menu{left:1rem;right:1rem;width:auto;top:calc(var(--ribbon-h) + var(--nav-min-h) + .45rem)}
  .mobile-menu.open{max-height:calc(100dvh - var(--ribbon-h) - var(--nav-min-h) - 1.5rem)}
}
@media(max-width:620px){
  :root{--nav-min-h:66px}
  .nav-shell{width:calc(100% - 1.25rem);gap:.75rem}
  .brand{gap:.58rem}
  .brand-mark{width:40px;height:40px;font-size:1.55rem}
  .brand-text strong{font-size:1.02rem;letter-spacing:.075em}
  .brand-text small{font-size:.52rem;letter-spacing:.105em;max-width:158px;overflow:hidden;text-overflow:ellipsis}
  .header-phone{display:none!important}
  .menu-toggle{width:42px;height:42px}
  .mobile-menu{left:.75rem;right:.75rem}
  .mobile-menu a{font-size:1rem;padding:.98rem 1rem}
}
@media(max-width:380px){
  .brand-text small{display:none}
  .brand-text strong{font-size:1rem}
  .nav-shell{width:calc(100% - 1rem)}
}

/* Performance adaptation: low-power devices keep the visual identity but avoid expensive layers. */
.perf-lite body::before{display:none}
.perf-lite .page-hero::after{opacity:.45;background-size:96px 96px}
.perf-lite .card-media img,.perf-lite .industry-photo img,.perf-lite .area-photo img,.perf-lite .ba-img img,.perf-lite .image-frame img{transition:none!important;filter:brightness(.86) contrast(1.03)!important}
.perf-lite .btn:hover,.perf-lite .card:hover .card-media img,.perf-lite .industry-card:hover .industry-photo img,.perf-lite .area-card:hover .area-photo img{transform:none!important}
.perf-rich .mobile-menu{box-shadow:0 36px 110px rgba(0,0,0,.62),0 0 0 1px rgba(159,49,43,.08) inset}
.perf-rich .site-header{transition:background .28s,border-color .28s,box-shadow .28s,transform .28s}


/* ===== V6 menu, carousel and premium process upgrades ===== */
:root{--nav-desktop-break:1320px;--nav-shadow:0 24px 60px rgba(0,0,0,.42);--premium-red:rgba(220,53,69,.18)}
.site-header{position:fixed;isolation:isolate}
.site-header::after{content:'';position:absolute;left:0;right:0;bottom:-22px;height:28px;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.16) 40%,rgba(0,0,0,0) 100%);filter:blur(8px);opacity:.92}
.nav-shell{position:relative;z-index:2}
.desktop-nav{gap:.18rem}
.desktop-nav>a,.nav-dropdown-toggle{font-family:'Barlow Condensed',sans-serif;font-size:clamp(.92rem,.65vw,1rem);font-weight:800;letter-spacing:.075em;text-transform:uppercase;color:var(--wh-d);padding:.72rem .8rem;border:1px solid transparent;background:transparent;cursor:pointer;line-height:1.02;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;transition:color .22s,border-color .22s,background .22s,box-shadow .22s,transform .22s}
.desktop-nav>a:hover,.desktop-nav>a.active,.nav-dropdown-toggle:hover,.nav-dropdown-toggle.active,.nav-dropdown.open .nav-dropdown-toggle,.nav-dropdown.is-current .nav-dropdown-toggle{color:var(--cu);border-color:rgba(159,49,43,.22);background:rgba(159,49,43,.055);box-shadow:0 0 0 1px rgba(159,49,43,.04) inset}
.nav-item{position:relative}.nav-dropdown{display:flex;align-items:center}.nav-dropdown-toggle::after{content:'▾';font-size:.78em;margin-left:.5rem;transform:translateY(-.02em);opacity:.9}.nav-mega-panel{position:absolute;top:calc(100% + 1rem);left:50%;transform:translate(-50%,12px);width:min(1020px,70vw);padding:1.35rem;border:1px solid rgba(159,49,43,.18);background:linear-gradient(180deg,rgba(43,43,43,.985),rgba(37,37,37,.985));box-shadow:0 34px 90px rgba(0,0,0,.58),0 0 0 1px rgba(196,202,208,.03) inset;border-radius:16px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .26s ease,transform .26s ease,visibility .26s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.nav-dropdown.open .nav-mega-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.nav-mega-panel::before{content:'';position:absolute;top:-12px;left:50%;transform:translateX(-50%) rotate(45deg);width:22px;height:22px;background:rgba(43,43,43,.985);border-left:1px solid rgba(159,49,43,.18);border-top:1px solid rgba(159,49,43,.18)}
.nav-mega-header{padding:.4rem .4rem 1rem;border-bottom:1px solid rgba(196,202,208,.08);margin-bottom:1rem}.nav-mega-kicker{font-family:'Barlow Condensed',sans-serif;font-size:.82rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--cu);margin-bottom:.35rem}.nav-mega-header strong{display:block;font-size:1.15rem;line-height:1.2;margin-bottom:.35rem;color:var(--wh)}.nav-mega-header span{display:block;color:var(--tx);font-size:.96rem}.nav-mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.nav-mega-card{display:grid;gap:.45rem;padding:1rem 1rem 1.05rem;border:1px solid rgba(196,202,208,.07);background:linear-gradient(180deg,rgba(196,202,208,.03),rgba(51,51,51,.06));border-radius:14px;min-height:132px;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease}.nav-mega-card:hover,.nav-mega-card.active{transform:translateY(-3px);border-color:rgba(159,49,43,.28);background:linear-gradient(180deg,rgba(159,49,43,.08),rgba(220,53,69,.08));box-shadow:0 18px 44px rgba(0,0,0,.26),0 0 0 1px rgba(159,49,43,.06) inset}.nav-mega-label{font-family:'Barlow Condensed',sans-serif;font-size:1.04rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--wh)}.nav-mega-card small{font-size:.92rem;line-height:1.55;color:var(--wh-d)}
.mobile-submenu{border-bottom:1px solid var(--bdr-s)}.mobile-submenu-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;font-family:'Barlow Condensed',sans-serif;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--wh);background:transparent;border:0;cursor:pointer}.mobile-submenu-toggle.active{color:var(--cu)}.mobile-submenu-icon{position:relative;display:inline-block;width:14px;height:14px}.mobile-submenu-icon::before,.mobile-submenu-icon::after{content:'';position:absolute;left:50%;top:50%;width:14px;height:2px;background:currentColor;transform:translate(-50%,-50%);transition:transform .22s ease,opacity .22s ease}.mobile-submenu-icon::after{transform:translate(-50%,-50%) rotate(90deg)}.mobile-submenu.open .mobile-submenu-icon::after{opacity:0}.mobile-submenu-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s ease;background:rgba(196,202,208,.02)}.mobile-submenu.open .mobile-submenu-panel{grid-template-rows:1fr}.mobile-submenu-panel>a{overflow:hidden;padding:.92rem 2rem .92rem 2.15rem;font-size:.96rem;background:transparent}.mobile-submenu-panel a:hover,.mobile-submenu-panel a.active{background:rgba(159,49,43,.06);color:var(--cu)}
.premium-carousel{display:grid;gap:1.25rem}.carousel-shell{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center}.carousel-viewport{overflow:hidden}.carousel-track{display:flex;gap:1.1rem;will-change:transform;transition:transform .45s cubic-bezier(.22,.61,.36,1)}.carousel-card{flex:0 0 calc((100% - 2.2rem)/3);min-width:0}.carousel-card.card{background:linear-gradient(180deg,rgba(30,34,38,.98),rgba(18,21,24,.98));border:1px solid rgba(196,202,208,.07);box-shadow:0 18px 50px rgba(0,0,0,.22)}.carousel-card.card:hover{transform:translateY(-4px);border-color:rgba(159,49,43,.24);box-shadow:0 26px 64px rgba(0,0,0,.34),0 0 0 1px rgba(220,53,69,.08) inset}.carousel-btn{width:52px;height:52px;border-radius:999px;border:1px solid rgba(159,49,43,.26);background:linear-gradient(180deg,rgba(43,43,43,.96),rgba(37,37,37,.96));color:var(--wh);display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.25);transition:transform .22s ease,border-color .22s ease,color .22s ease,background .22s ease}.carousel-btn:hover{transform:translateY(-2px);color:var(--cu);border-color:rgba(159,49,43,.42);background:linear-gradient(180deg,rgba(159,49,43,.08),rgba(220,53,69,.06))}.carousel-btn:disabled{opacity:.38;cursor:not-allowed;transform:none}.carousel-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.carousel-progress{display:flex;align-items:center;gap:.55rem}.carousel-dot{width:11px;height:11px;border-radius:999px;border:1px solid rgba(159,49,43,.32);background:rgba(196,202,208,.12);cursor:pointer;transition:transform .22s ease,background .22s ease,border-color .22s ease}.carousel-dot.active{background:var(--cu);border-color:var(--cu);transform:scale(1.16)}
.premium-process-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem}.process-step-premium{position:relative;isolation:isolate;overflow:hidden;min-height:330px;display:flex;flex-direction:column;justify-content:flex-end;padding:2rem 2rem 2rem;border:1px solid rgba(196,202,208,.06);background:linear-gradient(180deg,rgba(43,43,43,.92),rgba(37,37,37,.92));box-shadow:0 18px 50px rgba(0,0,0,.24);transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}.process-step-premium::before{content:'';position:absolute;inset:0;background-image:var(--step-bg);background-size:cover;background-position:center;transform:scale(1.02);filter:brightness(.48) saturate(.92);transition:transform .45s ease,filter .35s ease;z-index:-2}.process-step-premium::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(37,37,37,.18) 0%,rgba(37,37,37,.72) 45%,rgba(37,37,37,.92) 100%),radial-gradient(circle at 80% 20%,rgba(220,53,69,.02),transparent 35%);z-index:-1;transition:background .28s ease,box-shadow .28s ease}.process-step-premium:hover{transform:translateY(-4px);border-color:rgba(220,53,69,.28);box-shadow:0 26px 64px rgba(0,0,0,.34),0 0 0 1px rgba(159,49,43,.08) inset}.process-step-premium:hover::before{transform:scale(1.06);filter:brightness(.62) saturate(1)}.process-step-premium:hover::after{background:linear-gradient(180deg,rgba(37,37,37,.12) 0%,rgba(37,37,37,.62) 44%,rgba(37,37,37,.9) 100%),radial-gradient(circle at 80% 20%,rgba(220,53,69,.16),transparent 42%)}.process-step-premium span{position:absolute;top:1.6rem;left:1.7rem;font-family:'Barlow Condensed',sans-serif;font-size:3rem;font-weight:900;line-height:1;color:var(--cu)}.process-step-premium h3{font-family:'Barlow Condensed',sans-serif;font-size:2rem;line-height:1.02;letter-spacing:.04em;text-transform:uppercase;margin:0 0 .8rem;max-width:11ch}.process-step-premium p{margin:0;max-width:28ch;color:rgba(196,202,208,.92);font-size:1.02rem;line-height:1.7;transition:transform .22s ease,color .22s ease}.process-step-premium:hover p{transform:translateY(-2px);color:#fff}
.card,.feature-card,.area-card,.industry-card{transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}.card:hover,.feature-card:hover,.area-card:hover,.industry-card:hover{border-color:rgba(159,49,43,.24);box-shadow:0 24px 60px rgba(0,0,0,.26),0 0 0 1px rgba(220,53,69,.06) inset;transform:translateY(-3px)}
@media(max-width:1319px){.desktop-nav{display:none!important}.menu-toggle{display:flex!important}.mobile-menu{display:block;position:fixed;top:calc(var(--ribbon-h) + var(--nav-min-h) + .5rem);right:clamp(1rem,3vw,2.25rem);left:auto;width:min(460px,calc(100vw - 2rem));max-height:0;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-10px,0);overflow:auto;background:linear-gradient(180deg,rgba(43,43,43,.985),rgba(37,37,37,.985));border:1px solid var(--bdr);box-shadow:0 30px 90px rgba(0,0,0,.55);transition:max-height .34s ease,opacity .24s ease,transform .24s ease,visibility .24s;z-index:330}.mobile-menu.open{max-height:calc(100dvh - var(--ribbon-h) - var(--nav-min-h) - 2rem);opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,0,0)}.header-actions{margin-left:auto}.header-phone,.header-actions .btn-small{display:none}.nav-shell{width:min(1280px,calc(100% - clamp(1.5rem,4vw,4rem)))} }
@media(min-width:1320px){.menu-toggle,.mobile-menu{display:none!important}}
@media(max-width:1080px){.carousel-card{flex-basis:calc((100% - 1.1rem)/2)}.nav-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.premium-process-grid{grid-template-columns:1fr}.process-step-premium{min-height:290px}.carousel-shell{grid-template-columns:1fr;gap:.85rem}.carousel-btn{display:none}.carousel-card{flex-basis:100%}.carousel-footer{justify-content:center}.premium-carousel .btn{width:100%}}
@media(max-width:620px){.process-step-premium{padding:1.7rem 1.4rem 1.5rem}.process-step-premium h3{font-size:1.75rem}.process-step-premium p{font-size:.98rem}.site-header::after{opacity:.65}}


/* ═══════════════════════════════════════════════════════════════
   UX / UI REFINEMENT V7 — header, heroes, carousel, PM sections
═══════════════════════════════════════════════════════════════ */
:root{
  --nav-desktop-break:1450px;
  --nav-panel-shadow:0 18px 40px rgba(0,0,0,.26),0 30px 100px rgba(0,0,0,.52),0 1px 0 rgba(196,202,208,.03) inset;
}
html,body{overflow-x:hidden}
.section-header h2,
.page-hero h1,
.card h3,
.process-step h3,
.info-panel h2,
.related-card strong,
.legal-block h2,
.faq-item summary,
.cta-band h2{text-wrap:balance}
.section-header>p:not(.eyebrow),
.hero-subtitle,
.card p,
.process-step p,
.info-panel p,
.info-panel li{font-size:clamp(1rem,.5vw + .92rem,1.16rem)}

/* Header layout */
.nav-shell{
  width:min(1760px,calc(100% - clamp(1.4rem,4vw,4.4rem)));
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  column-gap:clamp(1rem,1.4vw,1.9rem);
  row-gap:.5rem;
  position:relative;
}
.site-header{
  background:linear-gradient(180deg,rgba(7,10,14,.94),rgba(7,10,14,.82));
  border-bottom:1px solid rgba(196,202,208,.04);
  box-shadow:0 20px 80px rgba(0,0,0,.28);
  backdrop-filter:blur(12px);
}
.site-header::after{
  content:'';
  position:absolute;
  left:0;right:0;bottom:-30px;
  height:30px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,0));
}
.brand{min-width:0;z-index:2}
.desktop-nav{
  margin-left:0;
  justify-self:center;
  justify-content:center;
  align-items:center;
  gap:clamp(.18rem,.35vw,.5rem);
  min-width:0;
}
.desktop-nav > a,
.desktop-nav > .nav-item > .nav-dropdown-toggle{
  font-size:clamp(.92rem,.32vw + .84rem,1.02rem);
  font-weight:900;
  letter-spacing:.055em;
  padding:.72rem .8rem;
  line-height:1;
  white-space:nowrap;
}
.header-actions{
  justify-self:end;
  min-width:max-content;
  gap:clamp(.85rem,1vw,1.2rem);
}
.header-phone{font-size:clamp(.98rem,.18vw + .92rem,1.06rem)}
.header-actions .btn-small{padding:.9rem 1.2rem;font-size:.96rem}

/* Mega menu */
.nav-item{position:relative}
.nav-mega-panel{
  width:min(1120px,calc(100vw - 4rem));
  left:50%;
  transform:translate(-50%,14px);
  top:calc(100% + 12px);
  padding:1.6rem;
  border:1px solid rgba(159,49,43,.18);
  background:linear-gradient(180deg,rgba(37,37,37,.985),rgba(15,18,22,.975));
  box-shadow:var(--nav-panel-shadow);
  border-radius:20px;
}
.nav-item.open .nav-mega-panel{transform:translate(-50%,0)}
.nav-mega-panel::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:20px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(196,202,208,.02),transparent 40%);
}
.nav-mega-head h3{
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(1.85rem,1vw + 1.35rem,2.25rem);
  line-height:1;
  text-transform:none;
}
.nav-mega-head p{font-size:1rem;line-height:1.7;color:var(--wh-d)}
.nav-mega-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.desktop-nav .nav-mega-card,
.nav-mega-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:.7rem;
  min-height:156px;
  padding:1.25rem 1.2rem !important;
  border-radius:16px;
  border:1px solid rgba(196,202,208,.06) !important;
  background:linear-gradient(180deg,rgba(21,24,28,.95),rgba(13,15,18,.95));
  color:var(--wh) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  white-space:normal !important;
  box-shadow:none;
}
.desktop-nav .nav-mega-card:hover,
.nav-mega-card:hover{
  color:var(--wh) !important;
  border-color:rgba(159,49,43,.32) !important;
  background:linear-gradient(180deg,rgba(25,28,33,.98),rgba(16,18,22,.98));
  box-shadow:0 18px 40px rgba(0,0,0,.28),0 0 0 1px rgba(159,49,43,.1) inset;
}
.nav-mega-card strong{
  font-family:'Barlow Condensed',sans-serif;
  font-size:1.72rem;
  line-height:.95;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:var(--wh);
}
.nav-mega-card small{
  display:block;
  font-family:'Barlow',Arial,sans-serif;
  font-size:1rem;
  line-height:1.62;
  font-weight:500;
  letter-spacing:0;
  text-transform:none;
  color:var(--wh-d);
}

/* Hero refinement */
.page-hero{
  min-height:clamp(660px,88vh,920px);
  background-position:center center;
}
.hero-grid{
  grid-template-columns:minmax(0,min(860px,100%));
  padding:calc(var(--nav-h) + clamp(4.8rem,7vh,6.3rem)) 0 clamp(4rem,8vh,6rem);
}
.page-hero h1{
  font-size:clamp(3rem,5.6vw,6.1rem);
  line-height:.94;
  letter-spacing:.012em;
  max-width:min(12ch,100%);
  overflow-wrap:anywhere;
}
.hero-subtitle{
  max-width:min(64ch,100%);
  margin:1.5rem 0 2.2rem;
}
.hero-actions{gap:1rem 1rem}
.hero-proof{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:rgba(196,202,208,.06);
  max-width:1120px;
  border:1px solid rgba(196,202,208,.06);
  box-shadow:0 18px 60px rgba(0,0,0,.22);
}
.hero-proof div{
  min-width:0;
  padding:1.55rem 1.45rem 1.35rem;
  background:linear-gradient(180deg,rgba(22,24,27,.88),rgba(16,18,22,.92));
}
.hero-proof strong{font-size:clamp(3rem,2.5vw,4.3rem);line-height:.92}
.hero-proof span{font-size:clamp(.88rem,.3vw + .82rem,1rem);line-height:1.35;letter-spacing:.12em}

/* Service carousel — one slide at a time */
.service-carousel{gap:1.6rem}
.service-carousel .carousel-shell{
  position:relative;
  display:block;
  padding-inline:clamp(4rem,7vw,6rem);
}
.service-carousel .carousel-viewport{overflow:hidden}
.service-carousel .carousel-track{gap:0;align-items:stretch}
.service-carousel .carousel-card{
  flex:0 0 100%;
  width:100%;
  min-width:0;
}
.service-carousel .carousel-card.card{
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);
  min-height:560px;
  max-width:100%;
}
.service-carousel .card-media,
.service-carousel .card-body{min-width:0}
.service-carousel .card-media{height:100%}
.service-carousel .card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  min-height:560px;
}
.service-carousel .card-body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(2rem,3vw,3.25rem);
}
.service-carousel .card h3{font-size:clamp(2rem,2vw,2.7rem);line-height:.96;margin-bottom:1rem}
.service-carousel .card p{max-width:34ch}
.service-carousel .text-link{margin-top:1.35rem}
.service-carousel .carousel-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
}
.service-carousel .carousel-btn.prev{left:0}
.service-carousel .carousel-btn.next{right:0}
.service-carousel .carousel-btn:hover{transform:translateY(calc(-50% - 2px))}
.service-carousel .carousel-footer{
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:1.15rem;
}
.service-carousel .carousel-progress{justify-content:center}

/* PM / feature panels */
.info-panel,
.process-step-premium,
.hero-proof div,
.contact-card,
.related-card,
.form-shell,
.legal-content,
.status-card,
.area-card,
.card,
.industry-card{
  box-shadow:0 14px 42px rgba(0,0,0,.12);
}
.process-grid.premium-process-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.35rem;
}
.process-step-premium{
  position:relative;
  display:grid;
  align-content:start;
  gap:.9rem;
  min-height:360px;
  padding:1.7rem 1.8rem 2rem;
  border:1px solid rgba(196,202,208,.08);
  background:
    linear-gradient(180deg,rgba(8,10,12,.82),rgba(8,10,12,.93)),
    radial-gradient(circle at 50% 0%,rgba(220,53,69,.18),transparent 36%),
    var(--step-bg) center/cover no-repeat;
  overflow:hidden;
}
.process-step-premium::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(159,49,43,.02),transparent 34%,rgba(220,53,69,.05));
  opacity:0;
  transition:opacity .3s ease,background .3s ease;
  pointer-events:none;
}
.process-step-premium:hover{
  border-color:rgba(220,53,69,.34);
  box-shadow:0 22px 70px rgba(0,0,0,.3),0 0 0 1px rgba(220,53,69,.12) inset;
}
.process-step-premium:hover::after{opacity:1}
.process-step-premium span{
  position:relative;
  top:auto;left:auto;
  display:block;
  font-family:'Bebas Neue',sans-serif;
  font-size:clamp(3.3rem,3vw,4.2rem);
  line-height:.88;
  color:var(--cu);
  margin:0;
}
.process-step-premium h3{
  position:relative;
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(1.9rem,1.6vw,2.45rem);
  line-height:.93;
  text-transform:uppercase;
  max-width:12ch;
  margin:0;
}
.process-step-premium p{
  position:relative;
  margin-top:.25rem;
  max-width:30ch;
  color:rgba(196,202,208,.88);
}

/* General card/grid hierarchy improvements */
.card h3,
.info-panel h2,
.related-card strong,
.contact-card h3,
.legal-block h2{line-height:.98}
.info-panel{padding:clamp(1.8rem,2.2vw,2.5rem)}
.two-col-cards{gap:1.35rem}

/* Responsive refinements */
@media (max-width: 1450px){
  .desktop-nav{display:none}
  .menu-toggle{display:flex;justify-self:end}
  .mobile-menu{display:block}
  .header-phone,.header-actions .btn-small{display:none}
  .nav-shell{grid-template-columns:auto 1fr auto}
}
@media (max-width: 1180px){
  .nav-shell{width:min(100%,calc(100% - 2rem))}
  .page-hero{min-height:680px}
  .hero-grid{grid-template-columns:minmax(0,1fr)}
  .hero-proof{grid-template-columns:repeat(2,minmax(0,1fr));max-width:100%}
  .service-carousel .carousel-card.card{grid-template-columns:1fr;min-height:auto}
  .service-carousel .card-media img{min-height:360px}
  .service-carousel .card-body{padding:2rem}
  .nav-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 820px){
  .page-hero h1{font-size:clamp(2.8rem,11vw,4.7rem);max-width:100%}
  .hero-grid{padding-top:calc(var(--nav-h) + 5.2rem)}
  .hero-proof{grid-template-columns:1fr}
  .service-carousel .carousel-shell{padding-inline:0}
  .service-carousel .carousel-btn{top:auto;bottom:-4.25rem;transform:none}
  .service-carousel .carousel-btn.prev{left:calc(50% - 62px)}
  .service-carousel .carousel-btn.next{right:calc(50% - 62px)}
  .service-carousel .carousel-btn:hover{transform:translateY(-2px)}
  .service-carousel .carousel-footer{padding-top:4.6rem}
  .process-grid.premium-process-grid{grid-template-columns:1fr}
}
@media (max-width: 560px){
  .nav-shell{width:calc(100% - 1rem);column-gap:.75rem}
  .brand-text small{display:none}
  .page-hero{min-height:620px}
  .hero-grid{padding-top:calc(var(--nav-h) + 4.7rem)}
  .hero-subtitle{font-size:1rem;line-height:1.65}
  .hero-proof div{padding:1.2rem 1rem}
  .service-carousel .card-media img{min-height:250px}
  .service-carousel .card-body{padding:1.35rem}
  .service-carousel .card h3{font-size:1.85rem}
  .process-step-premium{padding:1.4rem 1.2rem 1.5rem;min-height:300px}
  .process-step-premium h3{font-size:1.7rem;max-width:100%}
}


/* ═══════════════════════════════════════════════════════════════
   V8 FINAL VISUAL AUDIT — no squeeze, no overlap, page-wide polish
   Purpose: stabilize hierarchy across all pages and devices.
═══════════════════════════════════════════════════════════════ */

:root{
  --nav-min-h:72px;
  --ribbon-h:31px;
  --cont:min(1260px,calc(100% - clamp(2rem,4.8vw,5.5rem)));
  --spad:clamp(4.5rem,7vw,7.5rem) 0;
}

/* Global hierarchy and readability */
body{
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
p, li, small, .hero-subtitle, .section-header>p:not(.eyebrow){
  overflow-wrap:normal;
  word-break:normal;
}
h1,h2,h3,.btn,.desktop-nav a,.nav-dropdown-toggle{
  overflow-wrap:normal;
  word-break:normal;
}
.section-header{
  max-width:min(860px,100%);
}
.section-header-center{
  text-align:center;
}
.section-header h2,
.cta-band h2{
  font-size:clamp(2.45rem,3.7vw,4.25rem);
  line-height:1.04;
  letter-spacing:.012em;
}
.section-header>p:not(.eyebrow){
  max-width:760px;
  margin-inline:auto;
  font-size:clamp(1.03rem,.45vw + .95rem,1.18rem);
}

/* Header: aligned, visible and stable */
.emergency-ribbon{
  height:var(--ribbon-h);
  padding:.35rem 1rem !important;
  font-size:clamp(.68rem,.22vw + .62rem,.82rem);
  z-index:500;
}
.site-header{
  top:var(--ribbon-h) !important;
  min-height:var(--nav-min-h);
  background:linear-gradient(180deg,rgba(8,10,13,.965),rgba(10,12,15,.92)) !important;
  border-bottom:1px solid rgba(196,202,208,.055);
  box-shadow:0 18px 70px rgba(0,0,0,.32);
  z-index:490;
}
.site-header::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-34px;
  height:34px;
  background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.10) 45%,rgba(0,0,0,0));
  pointer-events:none;
}
.nav-shell{
  min-height:var(--nav-min-h) !important;
  width:min(1640px,calc(100% - clamp(2rem,4vw,5rem))) !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  gap:clamp(1rem,1.6vw,2rem) !important;
  align-items:center !important;
}
.brand{
  min-width:max-content !important;
}
.brand-mark{
  width:clamp(40px,2.2vw,48px) !important;
  height:clamp(40px,2.2vw,48px) !important;
}
.brand-text strong{
  font-size:clamp(1.08rem,.55vw + .92rem,1.28rem) !important;
}
.brand-text small{
  font-size:clamp(.54rem,.22vw + .48rem,.64rem) !important;
  letter-spacing:.15em !important;
}
.desktop-nav{
  justify-self:center !important;
  justify-content:center !important;
  display:flex;
  gap:clamp(.32rem,.38vw,.62rem) !important;
  min-width:0 !important;
  overflow:visible !important;
}
.desktop-nav > a,
.nav-dropdown-toggle{
  font-size:clamp(.94rem,.23vw + .86rem,1.04rem) !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  padding:.72rem .78rem !important;
  min-height:42px;
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
  line-height:1 !important;
}
.header-actions{
  justify-self:end !important;
  gap:clamp(.85rem,1vw,1.1rem) !important;
  min-width:max-content !important;
}
.header-phone{
  font-size:clamp(.96rem,.22vw + .88rem,1.07rem) !important;
}
.header-actions .btn-small{
  font-size:.95rem !important;
  padding:.88rem 1.15rem !important;
  min-height:44px;
}

/* Services mega panel: fixed to viewport so it never crops or overlays badly */
.nav-dropdown{
  position:static !important;
}
.nav-dropdown-toggle::after{
  content:"";
  width:0;height:0;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-top:5px solid currentColor;
  margin-left:.55rem;
  opacity:.7;
}
.nav-mega-panel{
  position:fixed !important;
  top:calc(var(--ribbon-h) + var(--nav-min-h) + 12px) !important;
  left:50% !important;
  right:auto !important;
  width:min(1080px,calc(100vw - 2.5rem)) !important;
  max-height:calc(100dvh - var(--ribbon-h) - var(--nav-min-h) - 32px) !important;
  overflow:auto !important;
  transform:translate3d(-50%,12px,0) !important;
  padding:1.45rem !important;
  border:1px solid rgba(159,49,43,.22) !important;
  border-radius:0 !important;
  background:
    linear-gradient(180deg,rgba(17,19,22,.99),rgba(10,12,15,.99)),
    radial-gradient(circle at 20% 0%,rgba(159,49,43,.12),transparent 34%) !important;
  box-shadow:0 32px 110px rgba(0,0,0,.58),0 0 0 1px rgba(196,202,208,.035) inset !important;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:505 !important;
}
.nav-dropdown.open .nav-mega-panel{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translate3d(-50%,0,0) !important;
}
.nav-mega-panel::before{
  display:none !important;
}
.nav-mega-header{
  padding:.2rem .15rem 1.15rem !important;
  margin:0 0 1.15rem !important;
  border-bottom:1px solid rgba(196,202,208,.08) !important;
}
.nav-mega-kicker{
  font-size:.82rem !important;
  letter-spacing:.18em !important;
}
.nav-mega-header strong{
  font-family:"Barlow Condensed",Arial,sans-serif !important;
  font-size:clamp(1.5rem,1vw + 1.2rem,2rem) !important;
  line-height:1.05 !important;
  text-transform:uppercase;
}
.nav-mega-header span{
  max-width:62ch;
  color:var(--wh-d) !important;
  font-size:1rem !important;
}
.nav-mega-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1rem !important;
}
.desktop-nav .nav-mega-card,
.nav-mega-card{
  min-width:0 !important;
  min-height:150px !important;
  padding:1.15rem !important;
  border-radius:0 !important;
  border:1px solid rgba(196,202,208,.075) !important;
  background:
    linear-gradient(180deg,rgba(196,202,208,.035),rgba(196,202,208,.015)),
    linear-gradient(135deg,rgba(159,49,43,.055),rgba(51,51,51,.12)) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:.7rem !important;
  white-space:normal !important;
  text-align:left !important;
  overflow:hidden !important;
}
.nav-mega-card:hover,
.nav-mega-card.active{
  transform:translateY(-2px) !important;
  background:
    linear-gradient(180deg,rgba(159,49,43,.09),rgba(220,53,69,.055)),
    linear-gradient(135deg,rgba(196,202,208,.035),rgba(51,51,51,.12)) !important;
  border-color:rgba(159,49,43,.36) !important;
}
.nav-mega-label,
.nav-mega-card strong{
  font-family:"Barlow Condensed",Arial,sans-serif !important;
  font-size:clamp(1.25rem,.5vw + 1.04rem,1.55rem) !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  color:var(--wh) !important;
  white-space:normal !important;
}
.nav-mega-card small{
  font-family:"Barlow",Arial,sans-serif !important;
  font-size:clamp(.92rem,.18vw + .88rem,1rem) !important;
  line-height:1.58 !important;
  font-weight:500 !important;
  color:var(--wh-d) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  white-space:normal !important;
}

/* Safer desktop breakpoint for real-world notebooks and zoom */
@media(max-width:1500px){
  .desktop-nav{display:none !important}
  .menu-toggle{display:flex !important;justify-self:end}
  .mobile-menu{display:block !important}
  .header-phone,
  .header-actions .btn-small{display:none !important}
  .nav-shell{grid-template-columns:auto minmax(0,1fr) auto !important}
}
@media(min-width:1501px){
  .menu-toggle,
  .mobile-menu{display:none !important}
}

/* Mobile panel */
.mobile-menu{
  position:fixed !important;
  top:calc(var(--ribbon-h) + var(--nav-min-h) + .55rem) !important;
  left:auto !important;
  right:clamp(1rem,3vw,2rem) !important;
  width:min(460px,calc(100vw - 2rem)) !important;
  border:1px solid rgba(159,49,43,.2) !important;
  box-shadow:0 26px 90px rgba(0,0,0,.58) !important;
  border-radius:0 !important;
  background:linear-gradient(180deg,rgba(17,19,22,.99),rgba(10,12,15,.99)) !important;
}
.mobile-menu.open{
  max-height:calc(100dvh - var(--ribbon-h) - var(--nav-min-h) - 1.5rem) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* Heroes: never cut titles */
.page-hero{
  min-height:min(980px,max(690px,88svh)) !important;
  overflow:hidden !important;
  align-items:center !important;
}
.hero-grid{
  padding:calc(var(--nav-min-h) + var(--ribbon-h) + clamp(3.5rem,6vh,5.5rem)) 0 clamp(4rem,7vh,5.8rem) !important;
  grid-template-columns:minmax(0,min(900px,100%)) !important;
}
.page-hero h1{
  font-size:clamp(3rem,5.25vw,5.85rem) !important;
  line-height:1.03 !important;
  letter-spacing:.012em !important;
  max-width:min(14ch,100%) !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.hero-subtitle{
  max-width:66ch !important;
  font-size:clamp(1.02rem,.45vw + .94rem,1.18rem) !important;
}

/* Proof cards / PM benefits hero */
.hero-proof{
  width:min(1120px,100%) !important;
  max-width:1120px !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:1px !important;
  border:1px solid rgba(196,202,208,.07) !important;
  background:rgba(196,202,208,.065) !important;
}
.hero-proof div{
  min-width:0 !important;
  padding:1.45rem 1.35rem !important;
  background:linear-gradient(180deg,rgba(20,23,27,.92),rgba(13,15,18,.96)) !important;
}
.hero-proof strong{
  display:block !important;
  font-family:"Bebas Neue",Arial,sans-serif !important;
  font-size:clamp(2.25rem,2vw,3.35rem) !important;
  line-height:.95 !important;
  color:var(--cu) !important;
  white-space:normal !important;
}
.hero-proof span{
  display:block !important;
  margin-top:.45rem !important;
  font-family:"Barlow Condensed",Arial,sans-serif !important;
  font-size:clamp(.88rem,.24vw + .82rem,1rem) !important;
  font-weight:700 !important;
  line-height:1.35 !important;
  letter-spacing:.18em !important;
  color:var(--wh-d) !important;
  text-transform:uppercase !important;
}

/* Services carousel: exactly one card per slide */
.service-carousel{
  width:min(1320px,100%) !important;
  margin-inline:auto !important;
}
.service-carousel .carousel-shell{
  display:grid !important;
  grid-template-columns:54px minmax(0,1fr) 54px !important;
  gap:1.15rem !important;
  align-items:center !important;
  padding:0 !important;
}
.service-carousel .carousel-viewport{
  overflow:hidden !important;
  min-width:0 !important;
}
.service-carousel .carousel-track{
  display:flex !important;
  gap:0 !important;
}
.service-carousel .carousel-card{
  flex:0 0 100% !important;
  width:100% !important;
  min-width:100% !important;
}
.service-carousel .carousel-card.card{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
  min-height:520px !important;
  max-width:100% !important;
  border:1px solid rgba(196,202,208,.08) !important;
  background:linear-gradient(180deg,rgba(25,29,33,.98),rgba(15,17,20,.98)) !important;
}
.service-carousel .card-media{
  height:100% !important;
  min-height:520px !important;
}
.service-carousel .card-media img{
  width:100% !important;
  height:100% !important;
  min-height:520px !important;
  object-fit:cover !important;
}
.service-carousel .card-body{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
  padding:clamp(2rem,3.4vw,3.4rem) !important;
}
.service-carousel .card h3{
  font-size:clamp(2rem,2vw,2.85rem) !important;
  line-height:1 !important;
  max-width:13ch !important;
}
.service-carousel .card p{
  max-width:36ch !important;
  line-height:1.72 !important;
}
.service-carousel .carousel-btn{
  position:static !important;
  transform:none !important;
  align-self:center !important;
  justify-self:center !important;
}
.service-carousel .carousel-btn:hover{
  transform:translateY(-2px) !important;
}
.service-carousel .carousel-footer{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:1.1rem !important;
  margin-top:1.25rem !important;
}
.carousel-progress{
  justify-content:center !important;
}

/* Process cards: no number/title overlap */
.process-grid.premium-process-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:1.5rem !important;
}
.process-step-premium{
  min-height:360px !important;
  padding:1.65rem 1.8rem 2rem !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  gap:.75rem !important;
  position:relative !important;
  overflow:hidden !important;
  border:1px solid rgba(196,202,208,.08) !important;
  background:linear-gradient(180deg,rgba(8,10,12,.24),rgba(8,10,12,.82) 52%,rgba(8,10,12,.96)) !important;
}
.process-step-premium::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
  background-image:var(--step-bg) !important;
  background-size:cover !important;
  background-position:center !important;
  filter:brightness(.48) saturate(.92) !important;
  transform:scale(1.02) !important;
}
.process-step-premium::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1 !important;
  background:
    linear-gradient(180deg,rgba(37,37,37,.12),rgba(37,37,37,.72) 48%,rgba(37,37,37,.96)),
    radial-gradient(circle at 82% 20%,rgba(220,53,69,.04),transparent 38%) !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.process-step-premium:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(220,53,69,.34) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 0 1px rgba(159,49,43,.1) inset !important;
}
.process-step-premium:hover::after{
  background:
    linear-gradient(180deg,rgba(37,37,37,.08),rgba(37,37,37,.62) 48%,rgba(37,37,37,.94)),
    radial-gradient(circle at 82% 20%,rgba(220,53,69,.16),transparent 42%) !important;
}
.process-step-premium span{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  display:block !important;
  font-family:"Bebas Neue",Arial,sans-serif !important;
  font-size:clamp(3rem,2.6vw,4.1rem) !important;
  line-height:.85 !important;
  margin:0 0 .45rem 0 !important;
  color:var(--cu) !important;
}
.process-step-premium h3{
  position:relative !important;
  display:block !important;
  font-size:clamp(1.75rem,1.25vw,2.35rem) !important;
  line-height:1.02 !important;
  max-width:16ch !important;
  margin:0 !important;
  color:var(--wh) !important;
}
.process-step-premium p{
  position:relative !important;
  max-width:34ch !important;
  margin:.15rem 0 0 0 !important;
  line-height:1.7 !important;
}

/* Info panels and two-column cards */
.two-col-cards{
  gap:1.5rem !important;
  align-items:stretch !important;
}
.info-panel{
  border:1px solid rgba(196,202,208,.075) !important;
  background:linear-gradient(180deg,rgba(24,27,31,.98),rgba(16,18,21,.98)) !important;
  padding:clamp(2rem,2.6vw,3rem) !important;
}
.copper-panel{
  background:
    linear-gradient(135deg,rgba(159,49,43,.17),rgba(18,21,24,.98) 60%),
    radial-gradient(circle at 80% 10%,rgba(220,53,69,.12),transparent 36%) !important;
}
.info-panel h2{
  font-size:clamp(2rem,1.3vw,2.7rem) !important;
  line-height:1.02 !important;
  margin-bottom:1.15rem !important;
}
.check-list{
  display:grid !important;
  gap:.85rem !important;
}
.check-list li{
  line-height:1.62 !important;
}

/* Broader page elements */
.card-media{overflow:hidden}
.card-media img,
.industry-photo img,
.area-photo img,
.ba-img img,
.image-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.card-body{
  padding:clamp(1.6rem,2vw,2.25rem) !important;
}
.card h3{
  font-size:clamp(1.6rem,.85vw,2rem) !important;
}
.card p{
  line-height:1.72 !important;
}

/* Responsive */
@media(max-width:1180px){
  :root{--cont:min(1240px,calc(100% - 2rem))}
  .page-hero{min-height:680px !important}
  .hero-proof{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .service-carousel .carousel-shell{
    grid-template-columns:1fr !important;
    gap:1rem !important;
  }
  .service-carousel .carousel-card.card{
    grid-template-columns:1fr !important;
    min-height:auto !important;
  }
  .service-carousel .card-media,
  .service-carousel .card-media img{
    min-height:340px !important;
  }
  .service-carousel .carousel-btn{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:5 !important;
  }
  .service-carousel .carousel-btn.prev{left:.9rem !important}
  .service-carousel .carousel-btn.next{right:.9rem !important}
  .service-carousel .carousel-btn:hover{transform:translateY(calc(-50% - 2px)) !important}
}
@media(max-width:900px){
  .nav-shell{width:calc(100% - 1.5rem) !important}
  .brand-text small{max-width:180px;overflow:hidden;text-overflow:ellipsis}
  .page-hero h1{
    font-size:clamp(2.6rem,10vw,4.5rem) !important;
    max-width:100% !important;
  }
  .hero-grid{
    padding-top:calc(var(--nav-min-h) + var(--ribbon-h) + 3.8rem) !important;
  }
  .hero-proof{grid-template-columns:1fr !important}
  .process-grid.premium-process-grid{grid-template-columns:1fr !important}
  .two-col-cards{grid-template-columns:1fr !important}
}
@media(max-width:560px){
  :root{--cont:min(1240px,calc(100% - 1.25rem));--nav-min-h:66px}
  .emergency-ribbon{font-size:.64rem;letter-spacing:.075em}
  .brand-mark{width:40px !important;height:40px !important}
  .brand-text strong{font-size:1rem !important}
  .brand-text small{display:none !important}
  .page-hero{min-height:620px !important}
  .page-hero h1{
    font-size:clamp(2.35rem,12vw,3.75rem) !important;
    line-height:1.05 !important;
  }
  .hero-subtitle{font-size:.98rem !important;line-height:1.65 !important}
  .hero-actions .btn{width:100%}
  .service-carousel .card-media,
  .service-carousel .card-media img{min-height:245px !important}
  .service-carousel .card-body{padding:1.35rem !important}
  .service-carousel .card h3{font-size:1.7rem !important;max-width:100% !important}
  .service-carousel .carousel-btn{width:44px !important;height:44px !important}
  .process-step-premium{min-height:290px !important;padding:1.3rem 1.15rem 1.45rem !important}
  .process-step-premium span{font-size:2.85rem !important}
  .process-step-premium h3{font-size:1.55rem !important;max-width:100% !important}
  .process-step-premium p{font-size:.98rem !important}
}

/* ═══════════════════════════════════════════════════════════════
   KISMET V9 — FINAL UX/UI HARDENING LAYER
   Goal: stable premium layout, no squeeze, no overlap, no cut titles.
═══════════════════════════════════════════════════════════════ */

:root{
  --v9-ribbon:30px;
  --v9-nav:76px;
  --v9-max:1280px;
  --v9-cont:min(var(--v9-max), calc(100% - clamp(1.35rem, 4vw, 5rem)));
  --v9-copper:#9F312B;
  --v9-dark:#252525;
  --v9-panel:#2B2B2B;
  --v9-panel2:#333333;
  --v9-line:rgba(196,202,208,.08);
  --v9-copper-line:rgba(159,49,43,.28);
}

html{
  overflow-x:hidden;
  scroll-padding-top:calc(var(--v9-ribbon) + var(--v9-nav) + 24px);
}
body{
  overflow-x:hidden;
  background:var(--g900);
  color:var(--wh);
  line-height:1.7;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto}

/* Universal anti-squeeze rules */
.wrap,
.nav-shell,
.hero-grid,
.footer-grid,
.section-header,
.card,
.card-body,
.info-panel,
.process-step,
.contact-card,
.related-card,
.faq-item,
.legal-content,
.form-shell{
  min-width:0;
}
h1,h2,h3,h4,
.page-hero h1,
.section-header h2,
.card h3,
.process-step h3,
.info-panel h2,
.cta-band h2{
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
p,li,small,.hero-subtitle{
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

/* Containers and sections */
.wrap{
  width:var(--v9-cont) !important;
  margin-inline:auto !important;
}
.section{
  padding:clamp(4.6rem, 6.5vw, 7.2rem) 0 !important;
}
.section-header{
  max-width:860px !important;
  margin-bottom:clamp(2.2rem, 4vw, 3.5rem) !important;
}
.section-header-center{
  margin-inline:auto !important;
  text-align:center !important;
}
.section-header h2,
.cta-band h2{
  font-size:clamp(2.35rem, 3.55vw, 4.25rem) !important;
  line-height:1.04 !important;
  letter-spacing:.012em !important;
}
.section-header>p:not(.eyebrow),
.cta-band p{
  max-width:760px;
  margin-inline:auto;
  font-size:clamp(1.02rem, .42vw + .95rem, 1.18rem) !important;
  line-height:1.78 !important;
}

/* Emergency ribbon */
.emergency-ribbon{
  height:var(--v9-ribbon) !important;
  min-height:var(--v9-ribbon) !important;
  padding:0 1rem !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:fixed !important;
  top:0 !important;
  z-index:1000 !important;
  background:var(--red) !important;
  color:var(--wh) !important;
  font-size:clamp(.62rem, .25vw + .58rem, .78rem) !important;
  letter-spacing:.12em !important;
  line-height:1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* Header: predictable, centered, premium */
.site-header{
  position:fixed !important;
  top:var(--v9-ribbon) !important;
  left:0 !important;
  right:0 !important;
  min-height:var(--v9-nav) !important;
  z-index:990 !important;
  background:linear-gradient(180deg, rgba(9,11,14,.975), rgba(9,11,14,.94)) !important;
  border-bottom:1px solid rgba(196,202,208,.055) !important;
  box-shadow:0 20px 72px rgba(0,0,0,.36) !important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.site-header::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:-32px !important;
  height:32px !important;
  pointer-events:none !important;
  background:linear-gradient(180deg, rgba(0,0,0,.30), rgba(0,0,0,.08) 50%, transparent) !important;
  filter:none !important;
  opacity:1 !important;
}
.nav-shell{
  min-height:var(--v9-nav) !important;
  width:min(1680px, calc(100% - clamp(1.5rem, 4vw, 4.75rem))) !important;
  margin-inline:auto !important;
  display:grid !important;
  grid-template-columns:auto minmax(0, 1fr) auto !important;
  align-items:center !important;
  gap:clamp(1rem, 1.45vw, 2rem) !important;
  position:relative !important;
}
.brand{
  display:flex !important;
  align-items:center !important;
  gap:.78rem !important;
  min-width:max-content !important;
  flex-shrink:0 !important;
}
.brand-mark{
  width:clamp(40px, 2.25vw, 50px) !important;
  height:clamp(40px, 2.25vw, 50px) !important;
  font-size:clamp(1.5rem, 1vw + 1rem, 1.95rem) !important;
}
.brand-text strong{
  font-size:clamp(1.05rem, .5vw + .9rem, 1.3rem) !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.brand-text small{
  font-size:clamp(.52rem, .2vw + .48rem, .64rem) !important;
  letter-spacing:.15em !important;
  white-space:nowrap !important;
}

/* Desktop nav: only for truly wide screens */
.desktop-nav{
  display:flex !important;
  justify-self:center !important;
  align-items:center !important;
  justify-content:center !important;
  gap:clamp(.25rem, .34vw, .55rem) !important;
  min-width:0 !important;
  margin:0 !important;
  white-space:nowrap !important;
}
.desktop-nav > a,
.nav-dropdown-toggle{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  padding:.72rem .78rem !important;
  border:1px solid transparent !important;
  background:transparent !important;
  color:var(--wh-d) !important;
  font-family:"Barlow Condensed", Arial, sans-serif !important;
  font-size:clamp(.92rem, .22vw + .86rem, 1.02rem) !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
  line-height:1 !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  transition:background .22s ease, color .22s ease, border-color .22s ease, transform .22s ease !important;
}
.desktop-nav > a:hover,
.desktop-nav > a.active,
.nav-dropdown.open .nav-dropdown-toggle,
.nav-dropdown-toggle:hover,
.nav-dropdown-toggle.active{
  color:var(--cu) !important;
  border-color:rgba(159,49,43,.28) !important;
  background:rgba(159,49,43,.07) !important;
}
.nav-dropdown-toggle::after{
  content:"" !important;
  display:inline-block !important;
  margin-left:.55rem !important;
  width:0 !important;
  height:0 !important;
  border-left:4px solid transparent !important;
  border-right:4px solid transparent !important;
  border-top:5px solid currentColor !important;
  opacity:.75 !important;
}
.header-actions{
  justify-self:end !important;
  display:flex !important;
  align-items:center !important;
  gap:clamp(.8rem, 1vw, 1.15rem) !important;
  min-width:max-content !important;
  margin:0 !important;
}
.header-phone{
  color:var(--wh) !important;
  font-family:"Barlow Condensed", Arial, sans-serif !important;
  font-size:clamp(.96rem, .2vw + .9rem, 1.06rem) !important;
  font-weight:900 !important;
  letter-spacing:.055em !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.header-actions .btn-small{
  min-height:44px !important;
  padding:.86rem 1.15rem !important;
  font-size:.94rem !important;
  white-space:nowrap !important;
}

/* Mega menu: viewport anchored, no overflow, no compressed text */
.nav-dropdown{position:static !important}
.nav-mega-panel{
  position:fixed !important;
  top:calc(var(--v9-ribbon) + var(--v9-nav) + 12px) !important;
  left:50% !important;
  width:min(1060px, calc(100vw - 2rem)) !important;
  max-height:calc(100dvh - var(--v9-ribbon) - var(--v9-nav) - 32px) !important;
  overflow:auto !important;
  padding:1.4rem !important;
  border:1px solid rgba(159,49,43,.25) !important;
  border-radius:0 !important;
  background:
    radial-gradient(circle at 22% 0%, rgba(159,49,43,.12), transparent 30%),
    linear-gradient(180deg, rgba(18,20,24,.992), rgba(9,11,14,.992)) !important;
  box-shadow:0 32px 110px rgba(0,0,0,.62), inset 0 1px 0 rgba(196,202,208,.04) !important;
  transform:translate3d(-50%, 12px, 0) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:1200 !important;
  transition:opacity .24s ease, transform .24s ease, visibility .24s ease !important;
}
.nav-dropdown.open .nav-mega-panel{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translate3d(-50%, 0, 0) !important;
}
.nav-mega-panel::before{display:none !important}
.nav-mega-header{
  padding:.15rem .1rem 1.1rem !important;
  margin:0 0 1.1rem !important;
  border-bottom:1px solid rgba(196,202,208,.08) !important;
}
.nav-mega-kicker{
  color:var(--cu) !important;
  font-family:"Barlow Condensed", Arial, sans-serif !important;
  font-size:.82rem !important;
  font-weight:900 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}
.nav-mega-header strong{
  display:block !important;
  color:var(--wh) !important;
  font-family:"Barlow Condensed", Arial, sans-serif !important;
  font-size:clamp(1.45rem, 1vw + 1.1rem, 2rem) !important;
  font-weight:900 !important;
  line-height:1.04 !important;
  text-transform:uppercase !important;
  letter-spacing:.025em !important;
  margin:.45rem 0 .35rem !important;
}
.nav-mega-header span{
  display:block !important;
  color:var(--wh-d) !important;
  font-size:1rem !important;
  line-height:1.65 !important;
  max-width:68ch !important;
}
.nav-mega-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:1rem !important;
}
.desktop-nav .nav-mega-card,
.nav-mega-card{
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  align-items:flex-start !important;
  gap:.68rem !important;
  min-width:0 !important;
  min-height:150px !important;
  padding:1.15rem !important;
  border:1px solid rgba(196,202,208,.075) !important;
  border-radius:0 !important;
  background:
    linear-gradient(180deg, rgba(196,202,208,.035), rgba(196,202,208,.012)),
    linear-gradient(135deg, rgba(159,49,43,.06), rgba(51,51,51,.13)) !important;
  text-align:left !important;
  white-space:normal !important;
  overflow:hidden !important;
  color:var(--wh) !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:normal !important;
  transform:none !important;
}
.nav-mega-card:hover,
.nav-mega-card.active{
  border-color:rgba(159,49,43,.38) !important;
  background:
    linear-gradient(180deg, rgba(159,49,43,.095), rgba(220,53,69,.06)),
    linear-gradient(135deg, rgba(196,202,208,.035), rgba(51,51,51,.13)) !important;
  color:var(--wh) !important;
  transform:translateY(-2px) !important;
}
.nav-mega-label,
.nav-mega-card strong{
  display:block !important;
  font-family:"Barlow Condensed", Arial, sans-serif !important;
  font-size:clamp(1.24rem, .45vw + 1.05rem, 1.52rem) !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
  color:var(--wh) !important;
  white-space:normal !important;
}
.nav-mega-card small{
  display:block !important;
  font-family:"Barlow", Arial, sans-serif !important;
  font-size:clamp(.92rem, .16vw + .88rem, 1rem) !important;
  line-height:1.58 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:var(--wh-d) !important;
  white-space:normal !important;
}

/* Robust mobile switch: use compact nav unless screen is truly wide */
@media(max-width:1580px){
  .desktop-nav{display:none !important}
  .menu-toggle{display:flex !important}
  .mobile-menu{display:block !important}
  .header-phone,
  .header-actions .btn-small{display:none !important}
  .nav-shell{grid-template-columns:auto minmax(0,1fr) auto !important}
}
@media(min-width:1581px){
  .menu-toggle,
  .mobile-menu{display:none !important}
}
.menu-toggle{
  justify-self:end !important;
  width:44px !important;
  height:44px !important;
  border:1px solid rgba(159,49,43,.28) !important;
  background:rgba(196,202,208,.025) !important;
}
.mobile-menu{
  position:fixed !important;
  top:calc(var(--v9-ribbon) + var(--v9-nav) + .55rem) !important;
  right:clamp(.75rem, 3vw, 2rem) !important;
  left:auto !important;
  width:min(460px, calc(100vw - 1.5rem)) !important;
  max-height:0 !important;
  overflow:auto !important;
  border:1px solid rgba(159,49,43,.22) !important;
  border-radius:0 !important;
  background:linear-gradient(180deg, rgba(18,20,24,.995), rgba(9,11,14,.995)) !important;
  box-shadow:0 28px 95px rgba(0,0,0,.64) !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(-8px) !important;
}
.mobile-menu.open{
  max-height:calc(100dvh - var(--v9-ribbon) - var(--v9-nav) - 1.5rem) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}
.mobile-menu a,
.mobile-submenu-toggle{
  min-height:48px !important;
  padding:1rem 1.15rem !important;
  font-size:1rem !important;
  line-height:1.1 !important;
}
.mobile-submenu-panel{
  max-height:0 !important;
  overflow:hidden !important;
  transition:max-height .26s ease !important;
}
.mobile-submenu.open .mobile-submenu-panel{max-height:460px !important}
.mobile-submenu-panel a{padding:.9rem 1.65rem !important;font-size:.94rem !important}

/* Heroes: safe heights and title scale */
.page-hero{
  min-height:max(650px, 82svh) !important;
  display:flex !important;
  align-items:center !important;
  overflow:hidden !important;
  background-size:cover !important;
}
.hero-grid{
  position:relative !important;
  z-index:3 !important;
  grid-template-columns:minmax(0, min(940px, 100%)) !important;
  padding:calc(var(--v9-ribbon) + var(--v9-nav) + clamp(3.6rem, 6vh, 5.4rem)) 0 clamp(4rem, 7vh, 5.6rem) !important;
}
.page-hero h1{
  max-width:min(950px, 100%) !important;
  font-size:clamp(3rem, 4.65vw, 5.65rem) !important;
  line-height:1.05 !important;
  letter-spacing:.012em !important;
  white-space:normal !important;
}
.hero-subtitle{
  max-width:66ch !important;
  font-size:clamp(1.02rem, .35vw + .96rem, 1.17rem) !important;
  line-height:1.75 !important;
}
.hero-actions{gap:1rem !important}

/* PM proof cards and stats */
.hero-proof{
  display:grid !important;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap:1px !important;
  width:min(1120px, 100%) !important;
  max-width:1120px !important;
  border:1px solid rgba(196,202,208,.075) !important;
  background:rgba(196,202,208,.07) !important;
  box-shadow:0 20px 70px rgba(0,0,0,.25) !important;
}
.hero-proof div{
  min-width:0 !important;
  padding:1.35rem 1.25rem !important;
  background:linear-gradient(180deg, rgba(22,25,29,.94), rgba(37,37,37,.96)) !important;
}
.hero-proof strong{
  display:block !important;
  color:var(--cu) !important;
  font-size:clamp(2.3rem, 2vw, 3.35rem) !important;
  line-height:.95 !important;
}
.hero-proof span{
  display:block !important;
  margin-top:.46rem !important;
  color:var(--wh-d) !important;
  font-family:"Barlow Condensed", Arial, sans-serif !important;
  font-size:clamp(.88rem, .2vw + .84rem, 1rem) !important;
  font-weight:700 !important;
  letter-spacing:.16em !important;
  line-height:1.35 !important;
  text-transform:uppercase !important;
}

/* Services carousel: one card, centered controls */
.service-carousel{
  width:min(1320px, 100%) !important;
  margin-inline:auto !important;
}
.service-carousel .carousel-shell{
  display:grid !important;
  grid-template-columns:54px minmax(0, 1fr) 54px !important;
  align-items:center !important;
  gap:1.1rem !important;
  padding:0 !important;
}
.service-carousel .carousel-viewport{
  overflow:hidden !important;
  min-width:0 !important;
}
.service-carousel .carousel-track{
  display:flex !important;
  gap:0 !important;
  align-items:stretch !important;
}
.service-carousel .carousel-card{
  flex:0 0 100% !important;
  width:100% !important;
  min-width:100% !important;
}
.service-carousel .carousel-card.card{
  display:grid !important;
  grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr) !important;
  min-height:520px !important;
  border:1px solid rgba(196,202,208,.08) !important;
  background:linear-gradient(180deg, rgba(23,26,30,.98), rgba(14,16,19,.98)) !important;
}
.service-carousel .card-media{
  height:100% !important;
  min-height:520px !important;
}
.service-carousel .card-media img{
  width:100% !important;
  height:100% !important;
  min-height:520px !important;
  object-fit:cover !important;
}
.service-carousel .card-body{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:clamp(2rem, 3.2vw, 3.35rem) !important;
}
.service-carousel .card h3{
  max-width:13ch !important;
  font-size:clamp(2rem, 1.75vw, 2.75rem) !important;
  line-height:1 !important;
  margin-bottom:1rem !important;
}
.service-carousel .card p{
  max-width:38ch !important;
  line-height:1.75 !important;
}
.service-carousel .carousel-btn{
  position:static !important;
  transform:none !important;
  justify-self:center !important;
  align-self:center !important;
  width:54px !important;
  height:54px !important;
}
.service-carousel .carousel-btn:hover{transform:translateY(-2px) !important}
.service-carousel .carousel-footer{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:1.1rem !important;
  margin-top:1.35rem !important;
}
.carousel-progress{justify-content:center !important}

/* Process cards: number/title/description always visible */
.process-grid.premium-process-grid,
.process-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:1.45rem !important;
}
.process-step-premium,
.process-step{
  min-width:0 !important;
}
.process-step-premium{
  position:relative !important;
  isolation:isolate !important;
  min-height:360px !important;
  padding:1.55rem 1.7rem 1.85rem !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
  gap:.72rem !important;
  overflow:hidden !important;
  border:1px solid rgba(196,202,208,.08) !important;
  background:var(--g800) !important;
}
.process-step-premium::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
  background-image:var(--step-bg) !important;
  background-size:cover !important;
  background-position:center !important;
  filter:brightness(.45) saturate(.92) !important;
  transform:scale(1.02) !important;
}
.process-step-premium::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1 !important;
  background:
    linear-gradient(180deg, rgba(37,37,37,.08), rgba(37,37,37,.68) 46%, rgba(37,37,37,.97)),
    radial-gradient(circle at 82% 18%, rgba(220,53,69,.04), transparent 40%) !important;
  pointer-events:none !important;
  opacity:1 !important;
}
.process-step-premium:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(220,53,69,.34) !important;
  box-shadow:0 24px 72px rgba(0,0,0,.34), inset 0 0 0 1px rgba(159,49,43,.1) !important;
}
.process-step-premium:hover::after{
  background:
    linear-gradient(180deg, rgba(37,37,37,.05), rgba(37,37,37,.58) 46%, rgba(37,37,37,.95)),
    radial-gradient(circle at 82% 18%, rgba(220,53,69,.15), transparent 43%) !important;
}
.process-step-premium span{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  display:block !important;
  margin:0 0 .35rem 0 !important;
  font-family:"Bebas Neue", Arial, sans-serif !important;
  font-size:clamp(3rem, 2.3vw, 4rem) !important;
  line-height:.85 !important;
  color:var(--cu) !important;
}
.process-step-premium h3{
  position:relative !important;
  display:block !important;
  margin:0 !important;
  max-width:16ch !important;
  color:var(--wh) !important;
  font-size:clamp(1.65rem, 1.25vw, 2.35rem) !important;
  line-height:1.03 !important;
}
.process-step-premium p{
  position:relative !important;
  margin:.1rem 0 0 0 !important;
  max-width:36ch !important;
  color:rgba(196,202,208,.88) !important;
  font-size:clamp(.98rem, .25vw + .92rem, 1.08rem) !important;
  line-height:1.68 !important;
}

/* Cards, images and panels */
.card{
  border:1px solid rgba(196,202,208,.075) !important;
  background:linear-gradient(180deg, rgba(24,27,31,.98), rgba(15,17,20,.98)) !important;
}
.card:hover{
  border-color:rgba(159,49,43,.3) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.30), inset 0 0 0 1px rgba(220,53,69,.08) !important;
}
.card-media{overflow:hidden !important}
.card-media img,
.industry-photo img,
.area-photo img,
.ba-img img,
.image-frame img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
.card-body{
  padding:clamp(1.55rem, 2vw, 2.25rem) !important;
}
.card h3{
  font-size:clamp(1.55rem, .75vw + 1.28rem, 2rem) !important;
  line-height:1.04 !important;
  margin-bottom:.85rem !important;
}
.card p{line-height:1.72 !important}

.info-panel{
  padding:clamp(1.8rem, 2.6vw, 3rem) !important;
  border:1px solid rgba(196,202,208,.075) !important;
  background:linear-gradient(180deg, rgba(24,27,31,.98), rgba(15,17,20,.98)) !important;
}
.copper-panel{
  background:
    radial-gradient(circle at 80% 8%, rgba(220,53,69,.13), transparent 38%),
    linear-gradient(135deg, rgba(159,49,43,.17), rgba(18,21,24,.98) 62%) !important;
}
.info-panel h2{
  font-size:clamp(1.95rem, 1.2vw, 2.65rem) !important;
  line-height:1.04 !important;
  margin-bottom:1.15rem !important;
}
.check-list{
  display:grid !important;
  gap:.82rem !important;
}
.check-list li{line-height:1.62 !important}

/* responsive */
@media(max-width:1180px){
  :root{--v9-cont:min(1240px, calc(100% - 2rem))}
  .page-hero{min-height:680px !important}
  .hero-proof{grid-template-columns:repeat(2, minmax(0, 1fr)) !important}
  .service-carousel .carousel-shell{
    grid-template-columns:1fr !important;
    gap:1rem !important;
  }
  .service-carousel .carousel-card.card{
    grid-template-columns:1fr !important;
    min-height:auto !important;
  }
  .service-carousel .card-media,
  .service-carousel .card-media img{
    min-height:340px !important;
  }
  .service-carousel .carousel-btn{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:4 !important;
  }
  .service-carousel .carousel-btn.prev{left:.85rem !important}
  .service-carousel .carousel-btn.next{right:.85rem !important}
  .service-carousel .carousel-btn:hover{transform:translateY(calc(-50% - 2px)) !important}
}
@media(max-width:900px){
  :root{--v9-cont:min(1240px, calc(100% - 1.5rem))}
  .nav-shell{width:calc(100% - 1.5rem) !important}
  .brand-text small{max-width:170px !important; overflow:hidden !important; text-overflow:ellipsis !important}
  .page-hero h1{
    font-size:clamp(2.6rem, 9vw, 4.5rem) !important;
    max-width:100% !important;
  }
  .hero-grid{
    padding-top:calc(var(--v9-ribbon) + var(--v9-nav) + 3.4rem) !important;
  }
  .hero-proof{grid-template-columns:1fr !important}
  .process-grid.premium-process-grid,
  .process-grid{grid-template-columns:1fr !important}
  .two-col-cards,
  .split-grid,
  .media-grid,
  .media-grid.three,
  .feature-grid,
  .feature-grid.four,
  .industry-grid,
  .areas-grid,
  .related-grid,
  .contact-grid,
  .ba-grid{grid-template-columns:1fr !important}
}
@media(max-width:560px){
  :root{
    --v9-cont:min(1240px, calc(100% - 1.15rem));
    --v9-nav:66px;
  }
  .emergency-ribbon{
    font-size:.62rem !important;
    letter-spacing:.07em !important;
  }
  .nav-shell{width:calc(100% - 1rem) !important}
  .brand-mark{width:40px !important;height:40px !important}
  .brand-text strong{font-size:1rem !important}
  .brand-text small{display:none !important}
  .page-hero{min-height:620px !important}
  .page-hero h1{
    font-size:clamp(2.25rem, 11.5vw, 3.65rem) !important;
    line-height:1.06 !important;
  }
  .hero-subtitle{
    font-size:.98rem !important;
    line-height:1.65 !important;
  }
  .hero-actions .btn,
  .cta-actions .btn{width:100% !important}
  .service-carousel .card-media,
  .service-carousel .card-media img{
    min-height:245px !important;
  }
  .service-carousel .card-body{padding:1.25rem !important}
  .service-carousel .card h3{
    font-size:1.65rem !important;
    max-width:100% !important;
  }
  .service-carousel .carousel-btn{width:44px !important;height:44px !important}
  .process-step-premium{
    min-height:288px !important;
    padding:1.25rem 1.1rem 1.4rem !important;
  }
  .process-step-premium span{font-size:2.8rem !important}
  .process-step-premium h3{
    font-size:1.5rem !important;
    max-width:100% !important;
  }
  .process-step-premium p{font-size:.97rem !important}
}


/* ═══════════════════════════════════════════════════════════════
   KISMET V10 — CINEMATIC MICROINTERACTIONS + FINAL UX POLISH
   Design intent: premium industrial movement, lightweight by default,
   richer only on capable devices, reduced-motion safe.
═══════════════════════════════════════════════════════════════ */

:root{
  --v10-ease:cubic-bezier(.22,1,.36,1);
  --v10-ease-strong:cubic-bezier(.16,1,.3,1);
  --v10-cinema-shadow:0 28px 80px rgba(0,0,0,.38),0 1px 0 rgba(196,202,208,.04) inset;
  --v10-copper-soft:rgba(159,49,43,.16);
  --v10-red-soft:rgba(220,53,69,.12);
  --v10-focus:rgba(159,49,43,.34);
}

/* Better perceived loading and smoother compositing */
.site-header,
.page-hero,
.card,
.info-panel,
.process-step-premium,
.cta-band,
.nav-mega-panel,
.mobile-menu,
.service-carousel .carousel-card{
  transform:translateZ(0);
  backface-visibility:hidden;
}

/* Cinematic header entrance */
.site-header{
  transition:
    background .38s var(--v10-ease),
    border-color .38s var(--v10-ease),
    box-shadow .38s var(--v10-ease),
    transform .38s var(--v10-ease) !important;
}
.site-header.is-scrolled{
  background:linear-gradient(180deg,rgba(7,9,12,.985),rgba(9,11,14,.965)) !important;
  box-shadow:0 18px 80px rgba(0,0,0,.46) !important;
}
.site-header::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(159,49,43,.42),transparent);
  opacity:.55;
  pointer-events:none;
}

/* Premium link underline behavior */
.desktop-nav > a,
.nav-dropdown-toggle,
.text-link,
.footer-links a,
.site-footer a{
  position:relative;
}
.desktop-nav > a::after,
.nav-dropdown-toggle::before,
.footer-links a::after,
.site-footer a::after{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:.38rem;
  height:1px;
  background:var(--cu);
  opacity:0;
  transition:left .28s var(--v10-ease), right .28s var(--v10-ease), opacity .28s var(--v10-ease);
}
.desktop-nav > a:hover::after,
.desktop-nav > a.active::after,
.nav-dropdown-toggle:hover::before,
.nav-dropdown.open .nav-dropdown-toggle::before,
.footer-links a:hover::after,
.site-footer a:hover::after{
  left:.75rem;
  right:.75rem;
  opacity:.72;
}

/* Button microinteractions */
.btn{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:
    transform .28s var(--v10-ease),
    border-color .28s var(--v10-ease),
    color .28s var(--v10-ease),
    background .28s var(--v10-ease),
    box-shadow .28s var(--v10-ease) !important;
}
.btn::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:-1;
  background:linear-gradient(110deg,transparent 0%,rgba(196,202,208,.26) 45%,transparent 70%);
  transform:translateX(-115%);
  transition:transform .65s var(--v10-ease);
}
.btn:hover::before{
  transform:translateX(115%);
}
.btn-primary:hover{
  box-shadow:0 18px 44px rgba(159,49,43,.32),0 0 0 1px rgba(196,202,208,.08) inset !important;
}
.btn-outline:hover{
  box-shadow:0 16px 42px rgba(0,0,0,.28),0 0 0 1px rgba(159,49,43,.18) inset !important;
}

/* Hero cinematic depth */
.page-hero{
  isolation:isolate;
}
.page-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at var(--hero-mx, 76%) var(--hero-my, 35%), rgba(159,49,43,.10), transparent 26%),
    radial-gradient(circle at 12% 90%, rgba(51,51,51,.18), transparent 34%);
  opacity:.72;
  transition:opacity .35s var(--v10-ease);
}
.hero-overlay{
  z-index:0;
}
.page-hero::after{
  z-index:2;
  opacity:.7;
}
.hero-grid{
  z-index:3 !important;
}
.hero-copy{
  transition:transform .55s var(--v10-ease), opacity .55s var(--v10-ease);
}
.page-hero h1{
  text-shadow:0 18px 50px rgba(0,0,0,.42);
}
.eyebrow{
  position:relative;
}
.eyebrow::after{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 20px rgba(159,49,43,.58);
}

/* Scroll reveal system */
[data-reveal]{
  opacity:0;
  transform:translate3d(0,28px,0);
  transition:
    opacity .72s var(--v10-ease),
    transform .72s var(--v10-ease),
    filter .72s var(--v10-ease);
  filter:blur(4px);
}
[data-reveal].is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
  filter:blur(0);
}
[data-reveal="scale"]{
  transform:translate3d(0,24px,0) scale(.985);
}
[data-reveal="scale"].is-visible{
  transform:translate3d(0,0,0) scale(1);
}

/* Cards: cinematic hover without layout shift */
.card,
.info-panel,
.process-step-premium,
.industry-card,
.area-card,
.ba-card,
.related-card,
.contact-card,
.faq-item,
.legal-content,
.status-card{
  transition:
    transform .34s var(--v10-ease),
    border-color .34s var(--v10-ease),
    box-shadow .34s var(--v10-ease),
    background .34s var(--v10-ease),
    filter .34s var(--v10-ease) !important;
}
.card:hover,
.info-panel:hover,
.industry-card:hover,
.area-card:hover,
.ba-card:hover,
.related-card:hover,
.contact-card:hover{
  transform:translate3d(0,-4px,0) !important;
  box-shadow:var(--v10-cinema-shadow) !important;
}
.card-media img,
.industry-photo img,
.area-photo img,
.ba-img img,
.image-frame img{
  transition:
    transform .85s var(--v10-ease),
    filter .85s var(--v10-ease),
    opacity .85s var(--v10-ease) !important;
}
.card:hover .card-media img,
.industry-card:hover .industry-photo img,
.area-card:hover .area-photo img,
.ba-card:hover .ba-img img,
.image-frame:hover img{
  transform:scale(1.055);
  filter:brightness(.92) contrast(1.08) saturate(1.04);
}

/* Fine premium edge lighting */
.card::after,
.info-panel::after,
.process-step-premium::after,
.related-card::after,
.contact-card::after{
  transition:opacity .34s var(--v10-ease), background .34s var(--v10-ease) !important;
}
.card{
  position:relative;
  overflow:hidden;
}
.card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at var(--card-mx, 80%) var(--card-my, 0%), rgba(159,49,43,.13), transparent 34%);
  opacity:0;
  pointer-events:none;
  transition:opacity .34s var(--v10-ease);
}
.card:hover::before{
  opacity:1;
}

/* Mega menu: more luxurious but still readable */
.nav-mega-panel{
  animation:none;
}
.nav-dropdown.open .nav-mega-panel{
  animation:v10MegaIn .32s var(--v10-ease) both;
}
@keyframes v10MegaIn{
  from{opacity:0;transform:translate3d(-50%,14px,0) scale(.985)}
  to{opacity:1;transform:translate3d(-50%,0,0) scale(1)}
}
.nav-mega-card{
  position:relative;
}
.nav-mega-card::after{
  content:"";
  position:absolute;
  left:1rem;
  right:1rem;
  bottom:0;
  height:2px;
  background:linear-gradient(90deg,rgba(159,49,43,.8),rgba(220,53,69,.48));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .32s var(--v10-ease);
}
.nav-mega-card:hover::after,
.nav-mega-card.active::after{
  transform:scaleX(1);
}

/* Carousel V10 */
.service-carousel{
  position:relative;
}
.service-carousel .carousel-viewport{
  border:1px solid rgba(196,202,208,.075);
  box-shadow:0 22px 74px rgba(0,0,0,.26);
}
.service-carousel .carousel-card.card{
  border:0 !important;
}
.service-carousel .carousel-card{
  opacity:.72;
  transition:opacity .38s var(--v10-ease), transform .38s var(--v10-ease);
}
.service-carousel .carousel-card.is-active{
  opacity:1;
}
.service-carousel .carousel-btn{
  border-color:rgba(159,49,43,.32) !important;
  background:
    radial-gradient(circle at 50% 20%, rgba(159,49,43,.12), transparent 48%),
    linear-gradient(180deg,rgba(18,20,24,.98),rgba(9,11,14,.98)) !important;
}
.service-carousel .carousel-btn:hover{
  border-color:rgba(159,49,43,.55) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.34),0 0 28px rgba(159,49,43,.12) !important;
}
.carousel-dot{
  position:relative;
}
.carousel-dot::after{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:inherit;
}
.carousel-dot.active{
  width:26px !important;
  transform:none !important;
}

/* Process cards: controlled reveal */
.process-step-premium{
  overflow:hidden;
}
.process-step-premium::before{
  transition:transform .9s var(--v10-ease), filter .9s var(--v10-ease) !important;
}
.process-step-premium:hover::before{
  transform:scale(1.07) !important;
  filter:brightness(.56) saturate(1.03) !important;
}
.process-step-premium span,
.process-step-premium h3,
.process-step-premium p{
  transition:transform .35s var(--v10-ease), color .35s var(--v10-ease), opacity .35s var(--v10-ease) !important;
}
.process-step-premium:hover span,
.process-step-premium:hover h3,
.process-step-premium:hover p{
  transform:translateY(-3px);
}
.process-step-premium:hover p{
  color:#fff !important;
}

/* FAQ premium details */
.faq-item{
  overflow:hidden;
}
.faq-item summary{
  transition:color .25s var(--v10-ease);
}
.faq-item:hover summary,
.faq-item[open] summary{
  color:var(--cu) !important;
}
.faq-item[open]{
  box-shadow:0 18px 48px rgba(0,0,0,.22),0 0 0 1px rgba(159,49,43,.12) inset !important;
}

/* Forms: better microinteractions */
input,select,textarea{
  transition:
    border-color .26s var(--v10-ease),
    box-shadow .26s var(--v10-ease),
    background .26s var(--v10-ease),
    transform .26s var(--v10-ease) !important;
}
input:focus,select:focus,textarea:focus{
  transform:translateY(-1px);
  box-shadow:0 0 0 3px rgba(159,49,43,.13),0 14px 34px rgba(0,0,0,.16) !important;
}

/* Mobile/touch safety: no hover-heavy behavior */
@media (hover:none){
  .card:hover,
  .info-panel:hover,
  .industry-card:hover,
  .area-card:hover,
  .ba-card:hover,
  .related-card:hover,
  .contact-card:hover,
  .process-step-premium:hover{
    transform:none !important;
  }
  .card:hover .card-media img,
  .industry-card:hover .industry-photo img,
  .area-card:hover .area-photo img,
  .ba-card:hover .ba-img img,
  .image-frame:hover img{
    transform:none !important;
  }
}

/* Rich devices get extra cinematic feeling */
.perf-rich .page-hero{
  background-attachment:fixed;
}
.perf-rich .hero-copy{
  will-change:transform;
}
.perf-rich [data-reveal]{
  transition-duration:.84s;
}

/* Lite devices stay fast and clean */
.perf-lite .page-hero::before,
.perf-lite body::before{
  display:none !important;
}
.perf-lite [data-reveal]{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  transition:none !important;
}
.perf-lite .card:hover,
.perf-lite .info-panel:hover,
.perf-lite .industry-card:hover,
.perf-lite .area-card:hover,
.perf-lite .ba-card:hover,
.perf-lite .related-card:hover,
.perf-lite .contact-card:hover,
.perf-lite .process-step-premium:hover{
  transform:none !important;
}

/* Reduced motion compliance */
@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
  }
  [data-reveal]{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }
  .perf-rich .page-hero{
    background-attachment:scroll;
  }
}

/* Smaller screen carousel refinement */
@media(max-width:1180px){
  .service-carousel .carousel-viewport{
    border:1px solid rgba(196,202,208,.07);
  }
}
@media(max-width:560px){
  [data-reveal]{
    opacity:1;
    transform:none;
    filter:none;
  }
  .carousel-dot.active{
    width:22px !important;
  }
}


/* ========================================================================== */
/* V11: MASTER SYSTEM FINAL OVERRIDE — motion, responsive, SEO UX hardening    */
/* ========================================================================== */
:root{
  --g900:#252525;--g800:#2B2B2B;--g700:#333333;--g600:#3B3B3B;--g500:#464646;--g400:#5A5A5A;
  --cu:#9F312B;--cu-l:#B9443E;--cu-d:#75241F;--cu-glow:rgba(159,49,43,.20);--shadow-cu:0 8px 32px rgba(159,49,43,.18);
  --nv:#333333;--nv-l:#404040;--wh:#F3F5F7;--wh-d:#C4CAD0;--tx:#C4CAD0;--red:#DC3545;--red-soft:rgba(220,53,69,.14);
  --bdr:rgba(159,49,43,.24);--bdr-s:rgba(196,202,208,.08);--shadow:0 24px 80px rgba(0,0,0,.38);
  --spad:clamp(3.5rem,6vw,6rem) 0;--cont:min(1280px,calc(100% - clamp(1.5rem,5vw,6rem)));
  --ribbon-h:31px;--nav-min-h:74px;--nav-h:calc(var(--ribbon-h) + var(--nav-min-h));
  --ease-out-expo:cubic-bezier(0.16,1,0.3,1);--ease-out-quart:cubic-bezier(0.25,1,0.5,1);--ease-in-out-silk:cubic-bezier(0.37,0,0.63,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ease-sharp:cubic-bezier(0.4,0,0.2,1);--ease-reveal:cubic-bezier(0.22,1,0.36,1);
  --dur-instant:80ms;--dur-fast:160ms;--dur-base:280ms;--dur-smooth:420ms;--dur-cinematic:680ms;--dur-epic:1100ms;
  --stagger-1:0ms;--stagger-2:80ms;--stagger-3:160ms;--stagger-4:240ms;--stagger-5:320ms;--stagger-6:400ms;
}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes scaleReveal{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@keyframes slideRight{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideLeft{from{opacity:0;transform:translateX(32px)}to{opacity:1;transform:translateX(0)}}
@keyframes heroWord{from{opacity:0;transform:translateY(40px) skewY(2deg);filter:blur(4px)}to{opacity:1;transform:translateY(0) skewY(0);filter:blur(0)}}
@keyframes imageWipe{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes lineDraw{from{width:0;opacity:0}to{width:36px;opacity:1}}
@keyframes countUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes btnShimmer{0%{background-position:-200% center}100%{background-position:200% center}}
@keyframes progressGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes grainPulse{0%,100%{transform:translate(0,0)}20%{transform:translate(-1px,1px)}40%{transform:translate(1px,-1px)}60%{transform:translate(-1px,-1px)}80%{transform:translate(1px,1px)}}
@keyframes copperPulse{0%,100%{box-shadow:0 0 0 0 rgba(159,49,43,.4)}50%{box-shadow:0 0 0 8px rgba(159,49,43,0)}}

html{scroll-padding-top:calc(var(--nav-h) + 1.5rem);overflow-x:hidden}body{font-family:'Barlow',Arial,sans-serif;background:var(--g900);color:var(--wh);overflow-x:hidden}body::before{opacity:.028;animation:grainPulse 9s steps(2,end) infinite}.wrap,.v9-cont{width:var(--cont);max-width:var(--cont);margin-inline:auto}.skip-nav{position:fixed;top:.75rem;left:.75rem;z-index:10000;background:var(--cu);color:var(--g900);padding:.75rem 1.5rem;font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:1rem;letter-spacing:.08em;text-transform:uppercase;transform:translateY(-160%);transition:transform var(--dur-fast) var(--ease-sharp),top var(--dur-fast) var(--ease-sharp)}.skip-nav:focus{transform:translateY(0)}
.scroll-bar{position:fixed;top:0;left:0;right:0;height:2px;z-index:9999;background:transparent;pointer-events:none}.scroll-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--cu-d),var(--cu),var(--cu-l));transform-origin:left;transition:width 60ms linear}.emergency-ribbon{height:var(--ribbon-h);display:flex;align-items:center;justify-content:center;padding:.35rem 1rem;line-height:1.1;animation:copperPulse 2.8s var(--ease-in-out-silk) infinite}.site-header{top:var(--ribbon-h);min-height:var(--nav-min-h)}.nav-shell{width:var(--cont)!important;min-height:var(--nav-min-h);display:flex!important;align-items:center;gap:clamp(.65rem,1.1vw,1.35rem);flex-wrap:nowrap}.brand{min-width:0}.brand-mark{flex:0 0 44px;border-radius:0}.brand-text{min-width:0}.brand-text strong,.brand-text small{white-space:nowrap}.desktop-nav{min-width:0;flex:1 1 auto;display:flex;align-items:center;justify-content:center;gap:clamp(.08rem,.35vw,.45rem);overflow:visible}.desktop-nav>a,.nav-dropdown-toggle{position:relative;white-space:nowrap;font-size:clamp(.72rem,.72vw,.94rem)!important;padding:.72rem clamp(.38rem,.5vw,.78rem)!important;border-radius:0!important;transition:color var(--dur-fast) var(--ease-sharp),background var(--dur-fast) var(--ease-sharp),border-color var(--dur-fast) var(--ease-sharp),transform var(--dur-fast) var(--ease-out-expo)}.desktop-nav>a::after,.nav-dropdown-toggle::after{content:'';position:absolute;left:.5rem;right:.5rem;bottom:.38rem;height:1px;background:var(--cu);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-smooth) var(--ease-out-expo)}.desktop-nav>a:hover::after,.desktop-nav>a.active::after,.desktop-nav a.nav-active::after,.nav-dropdown.open .nav-dropdown-toggle::after{transform:scaleX(1)}.desktop-nav a.nav-active,.desktop-nav a.nav-active:hover{color:var(--cu)!important}.header-actions{flex:0 0 auto}.nav-mega-panel{border-radius:0!important;transform:translate(-50%,10px);transition:opacity var(--dur-base) var(--ease-out-expo),transform var(--dur-base) var(--ease-out-expo),visibility var(--dur-base) var(--ease-sharp)}.nav-dropdown.open .nav-mega-panel{animation:fadeDown var(--dur-base) var(--ease-out-expo) both}.mobile-menu{border-radius:0!important}.mobile-menu a,.mobile-submenu-toggle{min-height:48px;align-items:center}.mobile-menu.open{overscroll-behavior:contain}html.nav-open body{overflow:hidden}

.page-hero{min-height:clamp(620px,86vh,900px);display:flex;align-items:center;background-position:center 42%;isolation:isolate}.page-hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--hero-mx,70%) var(--hero-my,38%),rgba(159,49,43,.18),transparent 28%);opacity:.55;z-index:1}.hero-overlay{z-index:0}.page-hero::after{z-index:1}.hero-grid{position:relative;z-index:2;width:100%;padding-top:calc(var(--nav-h) + clamp(3rem,5vw,5rem));padding-bottom:clamp(3rem,5vw,5rem)}.hero-copy{max-width:min(900px,100%)}.page-hero h1,.hero-title{font-family:'Barlow Condensed',sans-serif;font-size:clamp(2.6rem,8vw,6.5rem);line-height:.92;letter-spacing:.04em;text-wrap:balance;max-width:10.8ch;overflow:visible}.hero-subtitle,.section-body{font-size:clamp(.95rem,1.2vw + .5rem,1.12rem);line-height:1.75;color:var(--wh-d);text-wrap:pretty}.hero-actions{align-items:center}.hero-proof{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:880px;border:1px solid var(--bdr-s);gap:0;background:rgba(196,202,208,.06)}.hero-proof div{min-width:0;border-right:1px solid var(--bdr-s);background:rgba(43,43,43,.78)}.hero-proof div:last-child{border-right:0}.hero-proof strong,.stat-number,.stat-num{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.15rem,5vw,4.25rem);line-height:.9;color:var(--cu);letter-spacing:.05em}.section{padding:var(--spad);position:relative}.section-title,.section-header h2,.section-header-center h2{font-size:clamp(2rem,4.5vw + .5rem,5rem);line-height:.92;text-wrap:balance}.eyebrow{display:flex;align-items:center;gap:.875rem;font-family:'Barlow Condensed',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--cu);margin-bottom:1rem}.eyebrow::before{content:'';display:block;width:36px!important;height:1px;background:var(--cu);flex-shrink:0;animation:lineDraw .6s var(--ease-out-expo) .3s both}.section-header-center .eyebrow::before{display:block}.ls-tight{letter-spacing:.02em}.ls-base{letter-spacing:.06em}.ls-wide{letter-spacing:.1em}.ls-wider{letter-spacing:.16em}.ls-widest{letter-spacing:.24em}

.btn,.btn-copper,.btn-primary{border-radius:0!important}.btn-copper,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;min-height:52px;font-family:'Bebas Neue',sans-serif;font-size:1.05rem;letter-spacing:.12em;text-transform:uppercase;color:var(--wh)!important;background:linear-gradient(135deg,var(--cu-d) 0%,var(--cu) 50%,var(--cu-l) 100%)!important;background-size:200% 100%!important;border:1px solid rgba(159,49,43,.5)!important;box-shadow:0 4px 24px rgba(159,49,43,.22);cursor:pointer;text-decoration:none;transition:background-position var(--dur-smooth) var(--ease-in-out-silk),box-shadow var(--dur-base) var(--ease-out-expo),transform var(--dur-base) var(--ease-out-expo)}.btn-copper:hover,.btn-primary:hover{background-position:100% 0!important;box-shadow:0 8px 40px rgba(159,49,43,.35),0 0 0 1px var(--cu-l)!important;color:var(--wh)!important}.btn-copper:active,.btn-primary:active{transform:translateY(1px) scale(.99)}.btn-secondary,.btn-outline{background:transparent;border:1px solid rgba(159,49,43,.4);color:var(--cu-l);box-shadow:none}.btn-secondary:hover,.btn-outline:hover{background:rgba(159,49,43,.08);border-color:var(--cu);color:var(--wh)}.btn-emergency,.btn-alert{background:linear-gradient(135deg,#B5242F,var(--red))!important;border-color:rgba(220,53,69,.5)!important;box-shadow:0 4px 24px rgba(220,53,69,.25)!important;color:var(--wh)!important}.btn-emergency:hover,.btn-alert:hover{box-shadow:0 8px 40px rgba(220,53,69,.4)!important}.text-link{position:relative;color:var(--cu)}.text-link::after{content:'';position:absolute;left:0;bottom:-2px;width:0;height:1px;background:var(--cu);transition:width var(--dur-smooth) var(--ease-out-expo)}.text-link:hover::after{width:100%}

.section-dark{background:var(--g900)}.section-charcoal{background:var(--g800)}.section-panel{background:var(--g700)}.section-navy{background:var(--nv);background-image:radial-gradient(ellipse at 50% 0%,rgba(159,49,43,.12) 0%,transparent 60%)}.section-copper{background:var(--cu);background-image:linear-gradient(135deg,rgba(160,95,46,.6) 0%,rgba(159,49,43,0) 100%)}.section + .section-charcoal::before,.section-charcoal + .section::before{content:'';display:block;height:1px;background:var(--bdr-s);margin:0 auto;max-width:var(--cont)}.card,.svc-card,.process-step,.process-step-premium,.industry-card,.portfolio-card,.ba-card,.area-card,.info-panel,.contact-card,.related-card{border-radius:0!important;transition:transform var(--dur-base) var(--ease-out-expo),box-shadow var(--dur-base) var(--ease-out-expo),border-color var(--dur-fast) var(--ease-sharp);cursor:default}.card:hover,.svc-card:hover,.industry-card:hover,.area-card:hover,.info-panel:hover,.contact-card:hover,.related-card:hover{transform:translateY(-4px);border-color:rgba(159,49,43,.5);box-shadow:0 16px 48px rgba(0,0,0,.3),0 0 0 1px rgba(159,49,43,.12)}.card:hover img,.svc-card:hover img,.industry-card:hover img,.area-card:hover img{transform:scale(1.04);filter:brightness(.88) contrast(1.06)}.process-step:hover::before,.process-step-premium:hover::after{animation:lineDraw .35s var(--ease-out-expo) forwards}.section-img,.card-media img,.industry-photo img,.area-photo img,.ba-img img,.image-frame img,.service-visual img{width:100%;display:block;object-fit:cover;filter:brightness(.82) contrast(1.06) saturate(.95);transition:transform var(--dur-cinematic) var(--ease-out-expo),filter var(--dur-smooth) var(--ease-sharp)}.section-img-wrap,.card-media,.industry-photo,.area-photo,.ba-img,.image-frame,.service-visual{position:relative;overflow:hidden}.section-img-wrap::after,.service-visual::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--cu),transparent)}.section-img-wrap:hover .section-img,.image-frame:hover img,.service-visual:hover img{transform:scale(1.04);filter:brightness(.88) contrast(1.04) saturate(1)}.portrait-img{aspect-ratio:3/4;object-fit:cover;object-position:center top;filter:brightness(.9) contrast(1.08) saturate(.9);border-left:3px solid var(--cu)}.service-visual{margin:0;border:1px solid var(--bdr-s);box-shadow:var(--shadow)}.service-visual img{height:min(44vh,420px);min-height:280px}.service-visual figcaption{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tx);padding:.75rem 0;font-family:'Barlow Condensed',sans-serif;font-weight:700;background:var(--g900)}

input,select,textarea{background:var(--g700);border:1px solid var(--bdr-s);color:var(--wh);padding:.875rem 1rem;font-family:'Barlow',sans-serif;font-size:.95rem;border-radius:0!important;width:100%;outline:none;transition:border-color var(--dur-fast) var(--ease-sharp),background var(--dur-fast) var(--ease-sharp),box-shadow var(--dur-fast) var(--ease-sharp),transform var(--dur-fast) var(--ease-out-expo)}input:focus,select:focus,textarea:focus{border-color:var(--cu);background:rgba(159,49,43,.06);box-shadow:0 0 0 3px rgba(159,49,43,.12),inset 0 1px 0 rgba(159,49,43,.08)!important}input::placeholder,textarea::placeholder{color:var(--tx);opacity:.7}.field-wrap{position:relative}.field-label{position:absolute;top:.875rem;left:1rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tx);font-family:'Barlow Condensed',sans-serif;font-weight:700;transition:top var(--dur-fast) var(--ease-out-expo),font-size var(--dur-fast) var(--ease-out-expo),color var(--dur-fast) var(--ease-sharp);pointer-events:none}input:focus + .field-label,input:not(:placeholder-shown) + .field-label{top:-.75rem;font-size:.62rem;color:var(--cu);background:var(--g800);padding:0 .25rem}footer,.site-footer{background:var(--g900);border-top:1px solid var(--bdr-s);padding:clamp(3rem,5vw,5rem) 0 2rem;position:relative}footer::before,.site-footer::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:200px;height:1px;background:linear-gradient(90deg,transparent,var(--cu),transparent)}.footer-tagline{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:.12em;color:var(--cu);margin-top:.5rem}

[data-reveal]{opacity:1;will-change:auto;transition:none}html.perf-standard [data-reveal],html.perf-rich [data-reveal]{opacity:0;will-change:opacity,transform}[data-reveal].is-visible{opacity:1;animation-fill-mode:both;animation-timing-function:var(--ease-reveal)}[data-reveal="up"].is-visible{animation:fadeUp var(--dur-cinematic) var(--ease-reveal) both}[data-reveal="down"].is-visible{animation:fadeDown var(--dur-smooth) var(--ease-reveal) both}[data-reveal="left"].is-visible{animation:slideRight var(--dur-cinematic) var(--ease-reveal) both}[data-reveal="right"].is-visible{animation:slideLeft var(--dur-cinematic) var(--ease-reveal) both}[data-reveal="scale"].is-visible{animation:scaleReveal var(--dur-cinematic) var(--ease-out-expo) both}[data-reveal="image"].is-visible{animation:imageWipe var(--dur-epic) var(--ease-out-quart) both}[data-delay="1"].is-visible{animation-delay:var(--stagger-1)}[data-delay="2"].is-visible{animation-delay:var(--stagger-2)}[data-delay="3"].is-visible{animation-delay:var(--stagger-3)}[data-delay="4"].is-visible{animation-delay:var(--stagger-4)}[data-delay="5"].is-visible{animation-delay:var(--stagger-5)}[data-delay="6"].is-visible{animation-delay:var(--stagger-6)}.hw{display:inline-block;animation:heroWord .7s var(--ease-out-expo) both}.stat-num.is-counting{animation:countUp var(--dur-smooth) var(--ease-out-expo) both}

/* Responsive Canonical System: 320 / 480 / 768 / 1024 / 1280 / 1600 / 2560 */
@media (max-width:1023px){.desktop-nav{display:none!important}.menu-toggle{display:flex!important;margin-left:auto;flex:0 0 44px}.mobile-menu{display:block!important;position:fixed;top:calc(var(--ribbon-h) + var(--nav-min-h) + .5rem);right:clamp(.75rem,3vw,2.25rem);left:auto;width:min(460px,calc(100vw - 1.5rem));max-height:0;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-10px,0);overflow:auto;background:linear-gradient(180deg,rgba(43,43,43,.985),rgba(37,37,37,.985));border:1px solid var(--bdr);box-shadow:0 30px 90px rgba(0,0,0,.55);transition:max-height .34s var(--ease-out-expo),opacity .24s var(--ease-sharp),transform .24s var(--ease-sharp),visibility .24s;z-index:330}.mobile-menu.open{max-height:calc(100dvh - var(--ribbon-h) - var(--nav-min-h) - 2rem);opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,0,0)}.header-actions{margin-left:auto}.header-phone,.header-actions .btn-small{display:none}.nav-shell{width:calc(100% - clamp(1rem,4vw,2.5rem))!important}.brand-text strong{font-size:clamp(1rem,3vw,1.2rem)}.brand-text small{font-size:clamp(.54rem,1.7vw,.64rem)}.breadcrumb{padding-top:calc(var(--nav-h) + 2.5rem)}.page-hero{min-height:clamp(590px,82vh,760px)}.hero-grid{padding-top:calc(var(--nav-h) + 3.5rem);grid-template-columns:1fr}.hero-proof{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-actions .btn,.cta-actions .btn{min-width:min(100%,220px)}.service-carousel .carousel-controls{left:50%;right:auto;transform:translateX(-50%);display:flex;align-items:center;justify-content:center}.carousel-viewport{overflow:hidden}.carousel-track{display:flex}.carousel-card{flex:0 0 100%;max-width:100%}}
@media (min-width:1024px){.desktop-nav{display:flex!important}.menu-toggle,.mobile-menu{display:none!important}.header-phone,.header-actions .btn-small{display:none!important}.page-hero{min-height:720px}.service-carousel .carousel-card{flex:0 0 100%;max-width:100%}}
@media (min-width:1280px){.header-phone{display:inline-flex!important}.header-actions .btn-small{display:inline-flex!important}.page-hero h1,.hero-title{font-size:clamp(4.5rem,4.5vw,6rem)}.media-grid.three,.industry-grid,.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1600px){.wrap,.v9-cont,.nav-shell{max-width:1480px!important}.page-hero h1,.hero-title{font-size:clamp(5.25rem,4.6vw,7rem)}.svc-card,.card{padding:clamp(1.8rem,1.5vw,2.4rem)}}
@media (min-width:2560px){.wrap,.v9-cont,.nav-shell{max-width:1760px!important}body{font-size:18px}.page-hero{background-size:cover;background-position:center 35%}.svc-card,.card{padding:3rem}section,.section{padding:clamp(5rem,8vw,9rem) 0}.page-hero h1,.hero-title{font-size:7.5rem}}
@media (min-width:768px) and (max-width:1023px){.process-grid,.industry-grid,.media-grid,.media-grid.three,.ba-grid,.feature-grid.four,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-hero h1,.hero-title{font-size:clamp(3.5rem,6vw,5rem)}}
@media (max-width:767px){body{padding-bottom:80px}.mobile-sticky-cta,.mobile-sticky-bar{display:grid!important;grid-template-columns:1fr 1fr;gap:.75rem;position:fixed;bottom:0;left:0;right:0;z-index:800;background:var(--g900);border-top:1px solid var(--bdr);padding:.875rem 1.25rem;box-shadow:0 -8px 32px rgba(0,0,0,.4)}.page-hero h1,.hero-title{font-size:clamp(2.6rem,12.5vw,4.5rem);line-height:.92;max-width:100%}.hero-subtitle{font-size:1rem}.hero-actions{display:grid;grid-template-columns:1fr;width:100%}.hero-actions .btn{width:100%}.hero-proof{grid-template-columns:1fr 1fr}.section-header h2,.section-header-center h2{font-size:clamp(2.2rem,10vw,3.7rem)}.service-visual img{height:320px}}
@media (min-width:768px){.mobile-sticky-cta,.mobile-sticky-bar{display:none!important}}
@media (max-width:479px){.emergency-ribbon{font-size:.65rem;letter-spacing:.07em;padding-inline:.5rem}.nav-shell{width:calc(100% - 1rem)!important}.brand-mark{width:40px;height:40px;flex-basis:40px}.brand-text strong{font-size:.98rem}.brand-text small{max-width:160px;overflow:hidden;text-overflow:ellipsis}.mobile-menu{left:.75rem!important;right:.75rem!important;width:auto!important}.hero-proof{grid-template-columns:1fr}.page-hero{min-height:620px}.page-hero h1,.hero-title{font-size:clamp(2.45rem,14vw,4.05rem)}}
@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.page-hero{image-rendering:-webkit-optimize-contrast}}
@media (hover:none){.card:hover,.info-panel:hover,.industry-card:hover,.area-card:hover,.ba-card:hover,.related-card:hover,.contact-card:hover,.process-step-premium:hover{transform:none!important}.card:hover img,.industry-card:hover img,.area-card:hover img,.ba-card:hover img,.image-frame:hover img{transform:none!important}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-reveal]{opacity:1!important;transform:none!important;filter:none!important}.perf-rich .page-hero{background-attachment:scroll}.scroll-fill{transition:none!important}}


/* ========================================================================== */
/* V12: KISMET REBRAND COMPLETE — palette + official logo/symbol system       */
/* Palette source: #C4CAD0 / #333333 / #9F312B                                */
/* ========================================================================== */
:root{
  --brand-steel:#C4CAD0;
  --brand-graphite:#333333;
  --brand-red:#9F312B;
  --g900:#252525;
  --g800:#2B2B2B;
  --g700:#333333;
  --g600:#3B3B3B;
  --g500:#464646;
  --g400:#5A5A5A;
  --cu:#9F312B;
  --cu-l:#B9443E;
  --cu-d:#75241F;
  --cu-glow:rgba(159,49,43,.22);
  --nv:#333333;
  --nv-l:#404040;
  --wh:#F3F5F7;
  --wh-d:#C4CAD0;
  --tx:#C4CAD0;
  --red:#9F312B;
  --red-soft:rgba(159,49,43,.16);
  --bdr:rgba(159,49,43,.34);
  --bdr-s:rgba(196,202,208,.13);
  --shadow:0 24px 80px rgba(0,0,0,.42);
  --shadow-cu:0 8px 32px rgba(159,49,43,.22);
}
body{
  background:
    radial-gradient(circle at 18% 0%, rgba(159,49,43,.14), transparent 30%),
    linear-gradient(180deg,#252525 0%,#333333 48%,#252525 100%);
  color:var(--wh);
}
body::before{opacity:.018}
::selection{background:var(--brand-red);color:#fff}
.site-header.is-scrolled,
.mobile-menu,
.nav-mega-panel,
.site-footer,
footer{
  background:rgba(37,37,37,.965)!important;
  border-color:rgba(196,202,208,.14)!important;
}
.emergency-ribbon{
  background:linear-gradient(90deg,#75241F 0%,#9F312B 48%,#75241F 100%)!important;
  color:#fff!important;
  box-shadow:0 1px 0 rgba(196,202,208,.16);
  animation:kismetRedPulse 3.2s var(--ease-in-out-silk) infinite!important;
}
@keyframes kismetRedPulse{0%,100%{box-shadow:0 0 0 0 rgba(159,49,43,.38)}50%{box-shadow:0 0 0 7px rgba(159,49,43,0)}}
.scroll-fill{background:linear-gradient(90deg,#75241F,#9F312B,#C4CAD0)!important}
.brand{display:inline-flex;align-items:center;gap:0;min-width:0;text-decoration:none!important;color:inherit!important}
.brand-logo{display:block;width:clamp(168px,13vw,236px);height:auto;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.28));transition:opacity var(--dur-fast) var(--ease-sharp),transform var(--dur-base) var(--ease-out-expo),filter var(--dur-base) var(--ease-out-expo)}
.brand:hover .brand-logo{transform:translateY(-1px);filter:drop-shadow(0 10px 24px rgba(159,49,43,.20))}
.brand-footer{display:block;width:max-content;max-width:100%}
.brand-footer .brand-logo{width:min(280px,100%)}
.brand-mark,.brand-text{display:none!important}
.site-header .nav-shell{gap:clamp(.7rem,1vw,1.3rem)}
.desktop-nav a,.nav-dropdown-toggle,.mobile-menu a,.mobile-submenu-toggle{color:var(--wh-d)!important}
.desktop-nav a:hover,.desktop-nav a.active,.desktop-nav a.nav-active,.nav-dropdown.open .nav-dropdown-toggle,.mobile-menu a.active{color:var(--wh)!important;background:rgba(159,49,43,.13)!important;border-color:rgba(159,49,43,.38)!important}
.nav-mega-card{background:rgba(51,51,51,.68)!important;border-color:rgba(196,202,208,.11)!important}
.nav-mega-card:hover{background:rgba(159,49,43,.16)!important;border-color:rgba(159,49,43,.45)!important}
.page-hero::before{background:radial-gradient(circle at var(--hero-mx,72%) var(--hero-my,38%),rgba(159,49,43,.18),transparent 30%)!important}
.page-hero::after{background-image:linear-gradient(rgba(196,202,208,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(196,202,208,.032) 1px,transparent 1px)!important}
.hero-overlay{background:linear-gradient(118deg,rgba(37,37,37,.97) 0%,rgba(51,51,51,.86) 44%,rgba(159,49,43,.28) 76%,rgba(37,37,37,.92) 100%)!important}
.hero-alert .hero-overlay{background:linear-gradient(118deg,rgba(37,37,37,.96) 0%,rgba(51,51,51,.88) 45%,rgba(159,49,43,.48) 82%,rgba(37,37,37,.94) 100%)!important}
.hero-copy{position:relative;isolation:isolate}
.hero-copy::before{content:'';position:absolute;right:clamp(-2rem,-4vw,-.5rem);top:clamp(-3rem,-6vw,-1rem);width:clamp(210px,28vw,420px);aspect-ratio:1/1;background:url('images/brand/kismet-symbol-light.webp') center/contain no-repeat;opacity:.055;z-index:-1;pointer-events:none;filter:drop-shadow(0 20px 50px rgba(0,0,0,.2))}
.section-header{position:relative;isolation:isolate}
.section-header::after{content:'';position:absolute;right:0;top:-1.4rem;width:clamp(48px,6vw,96px);aspect-ratio:1/1;background:url('images/brand/kismet-symbol-red.webp') center/contain no-repeat;opacity:.055;z-index:-1;pointer-events:none}
.section-header-center::after{left:50%;right:auto;transform:translateX(-50%);opacity:.045}
.eyebrow,.footer-slogan,.footer-tagline,.hero-proof strong,.stat-number,.stat-num,.area-content strong{color:var(--brand-red)!important}
.eyebrow::before{background:var(--brand-red)!important}
.page-hero h1,.hero-title,.section-header h2,.cta-band h2{color:var(--wh)!important;text-shadow:0 14px 52px rgba(0,0,0,.35)}
.hero-subtitle,.section-header p,.card p,.industry-card p,.area-card p,.legal-content p,.site-footer p{color:rgba(196,202,208,.86)!important}
.trust-bar,.section-charcoal,.section-dark,.section-navy{background:linear-gradient(180deg,rgba(51,51,51,1),rgba(43,43,43,1))!important}
.section-dark{background:linear-gradient(180deg,#252525,#2B2B2B)!important}
.section-panel,.card,.svc-card,.process-step,.industry-card,.area-card,.ba-card,.info-panel,.contact-card,.related-card,.legal-content,.status-card,.form-shell,.contact-panel{background:linear-gradient(180deg,rgba(59,59,59,.92),rgba(51,51,51,.94))!important;border-color:rgba(196,202,208,.13)!important}
.card:hover,.svc-card:hover,.industry-card:hover,.area-card:hover,.info-panel:hover,.contact-card:hover,.related-card:hover,.ba-card:hover{border-color:rgba(159,49,43,.54)!important;box-shadow:0 18px 52px rgba(0,0,0,.32),0 0 0 1px rgba(159,49,43,.16)!important}
.btn-primary,.btn-copper{background:linear-gradient(135deg,#75241F 0%,#9F312B 52%,#B9443E 100%)!important;border-color:rgba(159,49,43,.7)!important;color:#fff!important;box-shadow:0 10px 30px rgba(159,49,43,.26)!important}
.btn-primary:hover,.btn-copper:hover{box-shadow:0 14px 42px rgba(159,49,43,.38),0 0 0 1px rgba(196,202,208,.18)!important;color:#fff!important}
.btn-outline,.btn-secondary{border-color:rgba(196,202,208,.32)!important;color:var(--wh-d)!important;background:rgba(51,51,51,.35)!important}
.btn-outline:hover,.btn-secondary:hover{border-color:rgba(159,49,43,.62)!important;background:rgba(159,49,43,.14)!important;color:#fff!important}
.btn-dark{background:#333333!important;border-color:rgba(196,202,208,.16)!important;color:#fff!important}
.btn-outline-dark{border-color:rgba(51,51,51,.38)!important;color:#333333!important;background:rgba(196,202,208,.88)!important}
.willcall-band,.cta-band{background:linear-gradient(135deg,#C4CAD0 0%,#ECEFF2 55%,#C4CAD0 100%)!important;color:#333333!important}
.willcall-band h2,.willcall-band p,.cta-band h2,.cta-band p{color:#333333!important;text-shadow:none!important}
.willcall-band .eyebrow,.cta-band .eyebrow{color:#9F312B!important}
.willcall-band .eyebrow::before,.cta-band .eyebrow::before{background:#9F312B!important}
.section-img,.card-media img,.industry-photo img,.area-photo img,.ba-img img,.image-frame img,.service-visual img{filter:brightness(.78) contrast(1.08) saturate(.82)!important}
.section-img-wrap::after,.service-visual::after,footer::before,.site-footer::before{background:linear-gradient(90deg,transparent,var(--brand-red),var(--brand-steel),transparent)!important}
input,select,textarea{background:rgba(37,37,37,.72)!important;border-color:rgba(196,202,208,.18)!important;color:#fff!important}
input:focus,select:focus,textarea:focus{border-color:#9F312B!important;background:rgba(159,49,43,.08)!important;box-shadow:0 0 0 3px rgba(159,49,43,.16)!important}
.mobile-sticky-cta,.mobile-sticky-bar{background:rgba(37,37,37,.98)!important;border-color:rgba(159,49,43,.36)!important}
.site-footer{overflow:hidden}
.site-footer::after{content:'';position:absolute;right:clamp(1rem,5vw,6rem);bottom:1rem;width:clamp(140px,18vw,280px);aspect-ratio:1/1;background:url('images/brand/kismet-symbol-light.webp') center/contain no-repeat;opacity:.045;pointer-events:none}
@media (min-width:1024px) and (max-width:1279px){.brand-logo{width:clamp(152px,15vw,190px)}.desktop-nav>a,.nav-dropdown-toggle{font-size:.68rem!important;padding:.68rem .28rem!important}.nav-shell{gap:.55rem!important}}
@media (max-width:767px){.brand-logo{width:min(190px,58vw)}.hero-copy::before{width:220px;right:-70px;top:-35px;opacity:.045}.section-header::after{width:68px;opacity:.04}}
@media (max-width:479px){.brand-logo{width:min(172px,58vw)}.site-header .nav-shell{gap:.45rem}.menu-toggle{width:42px;height:42px;flex-basis:42px}.page-hero h1,.hero-title{letter-spacing:.025em}}

/* ========================================================================== */
/* V13: LUXURY UX/UI FINAL REFINEMENT — responsive menu, polish, consistency  */
/* Official identity anchored to #C4CAD0 / #333333 / #9F312B                  */
/* ========================================================================== */
body.v13-luxury-system{
  --brand-steel:#C4CAD0;
  --brand-graphite:#333333;
  --brand-red:#9F312B;
  --surface-0:#252525;
  --surface-1:#2B2B2B;
  --surface-2:#333333;
  --surface-3:#3B3B3B;
  --steel-soft:rgba(196,202,208,.86);
  --steel-muted:rgba(196,202,208,.68);
  --red-soft:rgba(159,49,43,.18);
  --red-line:rgba(159,49,43,.42);
  --glass-dark:rgba(37,37,37,.82);
  --glass-panel:rgba(51,51,51,.74);
  --premium-border:rgba(196,202,208,.14);
  --premium-shadow:0 28px 90px rgba(0,0,0,.38);
  --premium-shadow-soft:0 18px 54px rgba(0,0,0,.28);
  --cont:min(1320px,calc(100% - clamp(1.25rem,5vw,6rem)));
  background:
    radial-gradient(circle at 16% -10%, rgba(159,49,43,.18), transparent 28%),
    radial-gradient(circle at 88% 8%, rgba(196,202,208,.055), transparent 24%),
    linear-gradient(180deg,#252525 0%,#333333 46%,#252525 100%) !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
body.v13-luxury-system img{max-width:100%;height:auto}
body.v13-luxury-system h1,
body.v13-luxury-system h2,
body.v13-luxury-system h3,
body.v13-luxury-system .btn,
body.v13-luxury-system .desktop-nav a,
body.v13-luxury-system .nav-dropdown-toggle{
  overflow-wrap:break-word;
  hyphens:auto;
}
body.v13-luxury-system h1,
body.v13-luxury-system h2{ text-wrap:balance; }
body.v13-luxury-system p,
body.v13-luxury-system li{ text-wrap:pretty; }
body.v13-luxury-system .wrap{width:var(--cont)!important;max-width:var(--cont)!important}

/* Header + menu: stable, elegant, never squeezed */
body.v13-luxury-system .emergency-ribbon{
  min-height:31px;
  padding:.42rem clamp(.75rem,2vw,1.5rem)!important;
  font-size:clamp(.64rem,1.2vw,.78rem)!important;
  letter-spacing:clamp(.055em,.6vw,.14em)!important;
  background:linear-gradient(90deg,#75241F 0%,#9F312B 50%,#75241F 100%)!important;
}
body.v13-luxury-system .site-header{
  backdrop-filter:blur(18px) saturate(1.05);
  -webkit-backdrop-filter:blur(18px) saturate(1.05);
}
body.v13-luxury-system .site-header.is-scrolled,
body.v13-luxury-system .site-header:focus-within{
  background:rgba(37,37,37,.975)!important;
  border-bottom:1px solid var(--premium-border)!important;
  box-shadow:0 18px 60px rgba(0,0,0,.42)!important;
}
body.v13-luxury-system .nav-shell{
  min-height:76px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:clamp(.55rem,1.1vw,1.35rem)!important;
  width:var(--cont)!important;
  max-width:1680px!important;
}
body.v13-luxury-system .brand-logo-header{
  width:clamp(168px,12.4vw,232px)!important;
  max-height:54px!important;
  object-fit:contain!important;
}
body.v13-luxury-system .desktop-nav{
  flex:1 1 auto!important;
  min-width:0!important;
  justify-content:center!important;
  gap:clamp(.08rem,.35vw,.42rem)!important;
}
body.v13-luxury-system .desktop-nav > a,
body.v13-luxury-system .nav-dropdown-toggle{
  min-height:42px!important;
  padding:.72rem clamp(.42rem,.55vw,.82rem)!important;
  font-size:clamp(.72rem,.66vw,.88rem)!important;
  letter-spacing:.085em!important;
  color:rgba(196,202,208,.9)!important;
  border:1px solid transparent!important;
  background:transparent!important;
}
body.v13-luxury-system .desktop-nav > a:hover,
body.v13-luxury-system .desktop-nav > a.active,
body.v13-luxury-system .desktop-nav > a.nav-active,
body.v13-luxury-system .nav-dropdown.open .nav-dropdown-toggle,
body.v13-luxury-system .nav-dropdown-toggle:hover{
  color:#fff!important;
  border-color:rgba(159,49,43,.38)!important;
  background:rgba(159,49,43,.115)!important;
}
body.v13-luxury-system .nav-mega-panel{
  width:min(1050px,calc(100vw - 3rem))!important;
  max-height:min(74vh,680px)!important;
  overflow:auto!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 14% 0%,rgba(159,49,43,.18),transparent 28%),
    linear-gradient(180deg,rgba(51,51,51,.985),rgba(37,37,37,.99))!important;
  border:1px solid rgba(196,202,208,.16)!important;
  box-shadow:0 38px 120px rgba(0,0,0,.62)!important;
}
body.v13-luxury-system .nav-mega-card{
  min-height:116px!important;
  padding:1.08rem!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
}
body.v13-luxury-system .header-actions{margin-left:auto!important;gap:.7rem!important}
body.v13-luxury-system .header-phone{
  font-size:clamp(.88rem,.72vw,1rem)!important;
  color:#fff!important;
}
body.v13-luxury-system .menu-toggle{
  flex:0 0 46px!important;
  width:46px!important;
  height:46px!important;
  background:rgba(51,51,51,.66)!important;
  border-color:rgba(196,202,208,.2)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.24)!important;
}
body.v13-luxury-system .menu-toggle:hover{border-color:rgba(159,49,43,.52)!important;color:#fff!important}
body.v13-luxury-system .mobile-menu{
  border-radius:0!important;
  border:1px solid rgba(196,202,208,.16)!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(159,49,43,.2),transparent 32%),
    linear-gradient(180deg,rgba(51,51,51,.992),rgba(37,37,37,.995))!important;
  box-shadow:0 36px 110px rgba(0,0,0,.64)!important;
}
body.v13-luxury-system .mobile-menu a,
body.v13-luxury-system .mobile-submenu-toggle{
  min-height:52px!important;
  padding:1rem 1.35rem!important;
  display:flex!important;
  align-items:center!important;
  color:rgba(196,202,208,.94)!important;
}
body.v13-luxury-system .mobile-submenu-panel > a{padding-left:2.15rem!important;font-size:.96rem!important}
body.v13-luxury-system .mobile-menu a:hover,
body.v13-luxury-system .mobile-menu a.active,
body.v13-luxury-system .mobile-submenu-toggle:hover{
  background:rgba(159,49,43,.14)!important;
  color:#fff!important;
}

/* Hero: luxury composition with real symbol placement */
body.v13-luxury-system .page-hero{
  min-height:clamp(620px,84svh,900px)!important;
  background-position:center 42%!important;
  overflow:hidden!important;
}
body.v13-luxury-system .hero-overlay{
  background:
    linear-gradient(112deg,rgba(37,37,37,.985) 0%,rgba(51,51,51,.9) 46%,rgba(159,49,43,.22) 76%,rgba(37,37,37,.96) 100%)!important;
}
body.v13-luxury-system .hero-brand-symbol{
  position:absolute;
  z-index:1;
  right:clamp(-5rem,3vw,4rem);
  top:50%;
  width:clamp(220px,26vw,520px);
  height:auto;
  transform:translateY(-50%);
  opacity:.055;
  pointer-events:none;
  filter:drop-shadow(0 30px 70px rgba(0,0,0,.38));
}
body.v13-luxury-system .hero-grid{
  z-index:3!important;
  padding-top:calc(var(--nav-h) + clamp(3.4rem,5.4vw,6rem))!important;
  padding-bottom:clamp(3.5rem,6vw,6rem)!important;
}
body.v13-luxury-system .hero-copy{max-width:min(920px,100%)!important}
body.v13-luxury-system .page-hero h1{
  max-width:11.5ch!important;
  font-size:clamp(3rem,7.2vw,6.8rem)!important;
  line-height:.88!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}
body.v13-luxury-system .hero-subtitle{
  max-width:710px!important;
  font-size:clamp(1rem,1.1vw,1.22rem)!important;
  line-height:1.74!important;
  color:rgba(196,202,208,.9)!important;
}
body.v13-luxury-system .hero-actions{gap:.85rem 1rem!important}
body.v13-luxury-system .hero-proof{
  max-width:900px!important;
  margin-top:clamp(2rem,3.6vw,3.5rem)!important;
  border:1px solid rgba(196,202,208,.14)!important;
  box-shadow:0 22px 70px rgba(0,0,0,.25)!important;
}
body.v13-luxury-system .hero-proof div{padding:clamp(1rem,1.6vw,1.35rem)!important}
body.v13-luxury-system .hero-proof span{color:rgba(196,202,208,.78)!important;line-height:1.22!important}

/* Visual rhythm and section refinement */
body.v13-luxury-system .section{
  padding:clamp(4rem,7vw,7.4rem) 0!important;
  border-top:1px solid rgba(196,202,208,.06);
}
body.v13-luxury-system .section:first-child{border-top:0}
body.v13-luxury-system .section-dark,
body.v13-luxury-system .section-charcoal,
body.v13-luxury-system .section-navy{
  background:
    radial-gradient(circle at 90% 10%,rgba(159,49,43,.08),transparent 30%),
    linear-gradient(180deg,rgba(37,37,37,1),rgba(51,51,51,1))!important;
}
body.v13-luxury-system .section-header{
  max-width:820px!important;
  margin-bottom:clamp(2rem,4vw,3.4rem)!important;
}
body.v13-luxury-system .section-header-center{max-width:900px!important}
body.v13-luxury-system .section-header h2,
body.v13-luxury-system .cta-band h2{
  font-size:clamp(2.2rem,4.3vw,5.15rem)!important;
  line-height:.9!important;
  letter-spacing:.025em!important;
}
body.v13-luxury-system .section-header > p:not(.eyebrow){
  max-width:72ch!important;
  color:rgba(196,202,208,.82)!important;
}
body.v13-luxury-system .eyebrow{
  gap:.85rem!important;
  font-size:clamp(.68rem,.75vw,.8rem)!important;
  line-height:1.15!important;
  color:#C4CAD0!important;
}
body.v13-luxury-system .eyebrow::before{
  width:42px!important;
  height:1px!important;
  background:#9F312B!important;
}
body.v13-luxury-system .section-header-center .eyebrow{justify-content:center!important}
body.v13-luxury-system .section-header-center .eyebrow::after{
  content:'';
  display:block;
  width:42px;
  height:1px;
  background:#9F312B;
}

/* Cards, grids and imagery */
body.v13-luxury-system .card,
body.v13-luxury-system .process-step,
body.v13-luxury-system .process-step-premium,
body.v13-luxury-system .industry-card,
body.v13-luxury-system .area-card,
body.v13-luxury-system .ba-card,
body.v13-luxury-system .related-card,
body.v13-luxury-system .contact-card,
body.v13-luxury-system .info-panel,
body.v13-luxury-system .form-shell,
body.v13-luxury-system .legal-content,
body.v13-luxury-system .status-card,
body.v13-luxury-system .sticky-card{
  border-radius:0!important;
  background:
    linear-gradient(180deg,rgba(59,59,59,.94),rgba(51,51,51,.96))!important;
  border:1px solid rgba(196,202,208,.14)!important;
  box-shadow:var(--premium-shadow-soft)!important;
}
body.v13-luxury-system .card:hover,
body.v13-luxury-system .process-step-premium:hover,
body.v13-luxury-system .industry-card:hover,
body.v13-luxury-system .area-card:hover,
body.v13-luxury-system .ba-card:hover,
body.v13-luxury-system .related-card:hover,
body.v13-luxury-system .contact-card:hover,
body.v13-luxury-system .info-panel:hover{
  transform:translateY(-5px)!important;
  border-color:rgba(159,49,43,.56)!important;
  box-shadow:0 24px 80px rgba(0,0,0,.36),0 0 0 1px rgba(159,49,43,.12) inset!important;
}
body.v13-luxury-system .card-media,
body.v13-luxury-system .industry-photo,
body.v13-luxury-system .area-photo,
body.v13-luxury-system .image-frame,
body.v13-luxury-system .ba-img,
body.v13-luxury-system .service-visual{
  overflow:hidden!important;
  border-radius:0!important;
  background:#333333!important;
}
body.v13-luxury-system .card-media img,
body.v13-luxury-system .industry-photo img,
body.v13-luxury-system .area-photo img,
body.v13-luxury-system .image-frame img,
body.v13-luxury-system .ba-img img,
body.v13-luxury-system .service-visual img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  filter:brightness(.78) contrast(1.08) saturate(.86)!important;
  transition:transform var(--dur-cinematic) var(--ease-out-expo),filter var(--dur-smooth) var(--ease-sharp)!important;
}
body.v13-luxury-system .card:hover .card-media img,
body.v13-luxury-system .industry-card:hover .industry-photo img,
body.v13-luxury-system .area-card:hover .area-photo img,
body.v13-luxury-system .image-frame:hover img,
body.v13-luxury-system .ba-card:hover .ba-img img{
  transform:scale(1.035)!important;
  filter:brightness(.86) contrast(1.06) saturate(.94)!important;
}
body.v13-luxury-system .industry-grid,
body.v13-luxury-system .areas-grid,
body.v13-luxury-system .related-grid,
body.v13-luxury-system .media-grid.three,
body.v13-luxury-system .feature-grid.four{
  gap:clamp(1rem,1.8vw,1.5rem)!important;
}
body.v13-luxury-system .process-grid,
body.v13-luxury-system .industry-grid,
body.v13-luxury-system .areas-grid,
body.v13-luxury-system .media-grid.three{
  align-items:stretch!important;
}
body.v13-luxury-system .card h3,
body.v13-luxury-system .process-step h3,
body.v13-luxury-system .industry-card h3,
body.v13-luxury-system .area-card h3{
  text-wrap:balance!important;
  line-height:.98!important;
}

/* Buttons + CTAs */
body.v13-luxury-system .btn{
  min-height:52px!important;
  border-radius:0!important;
  padding:1rem clamp(1.25rem,2vw,2rem)!important;
  letter-spacing:.11em!important;
  box-shadow:none;
}
body.v13-luxury-system .btn-primary,
body.v13-luxury-system .btn-copper{
  color:#fff!important;
  background:linear-gradient(135deg,#75241F 0%,#9F312B 52%,#B9443E 100%)!important;
  border:1px solid rgba(159,49,43,.7)!important;
  box-shadow:0 12px 34px rgba(159,49,43,.28)!important;
}
body.v13-luxury-system .btn-primary:hover,
body.v13-luxury-system .btn-copper:hover{
  color:#fff!important;
  box-shadow:0 18px 48px rgba(159,49,43,.38),0 0 0 1px rgba(196,202,208,.16)!important;
}
body.v13-luxury-system .btn-outline{
  color:rgba(196,202,208,.94)!important;
  background:rgba(51,51,51,.28)!important;
  border:1px solid rgba(196,202,208,.34)!important;
}
body.v13-luxury-system .btn-outline:hover{
  color:#fff!important;
  background:rgba(159,49,43,.16)!important;
  border-color:rgba(159,49,43,.58)!important;
}
body.v13-luxury-system .cta-band,
body.v13-luxury-system .willcall-band{
  position:relative;
  overflow:hidden;
  border-radius:0!important;
  background:linear-gradient(135deg,#C4CAD0 0%,#EEF1F3 54%,#C4CAD0 100%)!important;
  color:#333333!important;
  box-shadow:0 26px 90px rgba(0,0,0,.28)!important;
}
body.v13-luxury-system .cta-band::after,
body.v13-luxury-system .willcall-band::after{
  content:'';
  position:absolute;
  right:clamp(-3rem,2vw,2rem);
  top:50%;
  width:clamp(150px,18vw,320px);
  aspect-ratio:1/1;
  transform:translateY(-50%);
  background:url('images/brand/kismet-symbol-charcoal.webp') center/contain no-repeat;
  opacity:.065;
  pointer-events:none;
}
body.v13-luxury-system .cta-band > *,
body.v13-luxury-system .willcall-band > *{position:relative;z-index:1}

/* Carousel: one polished slide, centered controls */
body.v13-luxury-system .service-carousel .carousel-shell{
  position:relative!important;
  padding-inline:clamp(0rem,4vw,4.75rem)!important;
}
body.v13-luxury-system .service-carousel .carousel-viewport{
  border:1px solid rgba(196,202,208,.12)!important;
  background:rgba(37,37,37,.38)!important;
  box-shadow:var(--premium-shadow-soft)!important;
}
body.v13-luxury-system .service-carousel .carousel-card{
  flex:0 0 100%!important;
  max-width:100%!important;
}
body.v13-luxury-system .service-carousel .carousel-card.card{
  display:grid!important;
  grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr)!important;
  min-height:clamp(440px,44vw,560px)!important;
  box-shadow:none!important;
  border:0!important;
}
body.v13-luxury-system .service-carousel .carousel-btn{
  z-index:4!important;
  border-radius:0!important;
  background:rgba(37,37,37,.92)!important;
  border:1px solid rgba(196,202,208,.24)!important;
  color:#fff!important;
}
body.v13-luxury-system .carousel-dot{
  border-radius:0!important;
  width:18px!important;
  height:3px!important;
  border:0!important;
  background:rgba(196,202,208,.24)!important;
}
body.v13-luxury-system .carousel-dot.active{background:#9F312B!important;width:34px!important;transform:none!important}

/* Forms */
body.v13-luxury-system input,
body.v13-luxury-system select,
body.v13-luxury-system textarea{
  min-height:50px!important;
  border-radius:0!important;
  background:rgba(37,37,37,.74)!important;
  border:1px solid rgba(196,202,208,.18)!important;
  color:#fff!important;
}
body.v13-luxury-system textarea{min-height:148px!important}
body.v13-luxury-system input:focus,
body.v13-luxury-system select:focus,
body.v13-luxury-system textarea:focus{
  border-color:#9F312B!important;
  box-shadow:0 0 0 3px rgba(159,49,43,.16)!important;
}
body.v13-luxury-system .field-error{color:#C4CAD0!important}
body.v13-luxury-system .field.has-error input,
body.v13-luxury-system .field.has-error select,
body.v13-luxury-system .field.has-error textarea{border-color:#9F312B!important}

/* Footer */
body.v13-luxury-system .site-footer{
  position:relative;
  background:linear-gradient(180deg,#252525,#333333)!important;
  border-top:1px solid rgba(196,202,208,.13)!important;
}
body.v13-luxury-system .brand-logo-footer{width:min(300px,100%)!important}
body.v13-luxury-system .footer-grid{align-items:start!important}
body.v13-luxury-system .site-footer h2{color:#C4CAD0!important}
body.v13-luxury-system .footer-slogan{color:#9F312B!important}
body.v13-luxury-system .footer-bottom{border-top-color:rgba(196,202,208,.12)!important}

/* Requested responsive checkpoints */
@media (max-width:1199.98px){
  body.v13-luxury-system .desktop-nav{display:none!important}
  body.v13-luxury-system .menu-toggle{display:flex!important;margin-left:auto!important}
  body.v13-luxury-system .mobile-menu{
    display:block!important;
    position:fixed!important;
    top:calc(var(--ribbon-h) + var(--nav-min-h) + .65rem)!important;
    right:clamp(.75rem,3vw,1.5rem)!important;
    left:auto!important;
    width:min(470px,calc(100vw - 1.5rem))!important;
    max-height:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate3d(0,-10px,0)!important;
    overflow:auto!important;
    transition:max-height .34s var(--ease-out-expo),opacity .24s var(--ease-sharp),transform .24s var(--ease-sharp),visibility .24s!important;
    z-index:340!important;
  }
  body.v13-luxury-system .mobile-menu.open{
    max-height:calc(100dvh - var(--ribbon-h) - var(--nav-min-h) - 1.5rem)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate3d(0,0,0)!important;
  }
  body.v13-luxury-system .header-phone,
  body.v13-luxury-system .header-actions .btn-small{display:none!important}
}
@media (min-width:1200px){
  body.v13-luxury-system .desktop-nav{display:flex!important}
  body.v13-luxury-system .menu-toggle,
  body.v13-luxury-system .mobile-menu{display:none!important}
  body.v13-luxury-system .header-phone,
  body.v13-luxury-system .header-actions .btn-small{display:none!important}
}
@media (min-width:1440px){
  body.v13-luxury-system .header-phone{display:inline-flex!important}
  body.v13-luxury-system .header-actions .btn-small{display:inline-flex!important}
}
@media (max-width:1280px){
  body.v13-luxury-system .service-carousel .carousel-card.card{grid-template-columns:.95fr 1.05fr!important}
  body.v13-luxury-system .page-hero h1{font-size:clamp(2.85rem,7.3vw,5.8rem)!important}
}
@media (max-width:1024px){
  body.v13-luxury-system .split-grid,
  body.v13-luxury-system .form-layout{grid-template-columns:1fr!important;gap:clamp(1.5rem,4vw,2.5rem)!important}
  body.v13-luxury-system .process-grid,
  body.v13-luxury-system .industry-grid,
  body.v13-luxury-system .areas-grid,
  body.v13-luxury-system .related-grid,
  body.v13-luxury-system .media-grid.three,
  body.v13-luxury-system .feature-grid.four,
  body.v13-luxury-system .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.v13-luxury-system .service-carousel .carousel-card.card{grid-template-columns:1fr!important;min-height:auto!important}
  body.v13-luxury-system .service-carousel .card-media,
  body.v13-luxury-system .service-carousel .card-media img{min-height:330px!important}
  body.v13-luxury-system .sticky-card{position:relative!important;top:auto!important}
}
@media (max-width:768px){
  body.v13-luxury-system{--cont:min(100% - 1.35rem,720px)}
  body.v13-luxury-system .nav-shell{min-height:72px!important;width:calc(100% - 1.25rem)!important}
  body.v13-luxury-system .brand-logo-header{width:min(190px,56vw)!important;max-height:48px!important}
  body.v13-luxury-system .page-hero{min-height:clamp(590px,84svh,760px)!important;background-position:center!important}
  body.v13-luxury-system .hero-brand-symbol{right:-92px;top:42%;width:260px;opacity:.045}
  body.v13-luxury-system .hero-grid{padding-top:calc(var(--nav-h) + 3rem)!important;padding-bottom:3rem!important}
  body.v13-luxury-system .page-hero h1{max-width:12ch!important;font-size:clamp(2.65rem,12vw,4.8rem)!important;line-height:.9!important}
  body.v13-luxury-system .hero-subtitle{font-size:1rem!important;line-height:1.68!important}
  body.v13-luxury-system .hero-actions,
  body.v13-luxury-system .cta-actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  body.v13-luxury-system .hero-actions .btn,
  body.v13-luxury-system .cta-actions .btn{width:100%!important;min-width:0!important}
  body.v13-luxury-system .hero-proof{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.v13-luxury-system .section{padding:clamp(3.4rem,10vw,5rem) 0!important}
  body.v13-luxury-system .section-header h2,
  body.v13-luxury-system .cta-band h2{font-size:clamp(2.05rem,9.2vw,3.5rem)!important}
  body.v13-luxury-system .process-grid,
  body.v13-luxury-system .industry-grid,
  body.v13-luxury-system .areas-grid,
  body.v13-luxury-system .related-grid,
  body.v13-luxury-system .media-grid.three,
  body.v13-luxury-system .feature-grid.four,
  body.v13-luxury-system .contact-grid,
  body.v13-luxury-system .trust-grid{grid-template-columns:1fr!important}
  body.v13-luxury-system .footer-grid{grid-template-columns:1fr!important;gap:2rem!important}
  body.v13-luxury-system .footer-bottom{display:grid!important;gap:.6rem!important}
  body.v13-luxury-system .mobile-sticky-cta{display:flex!important}
  body.v13-luxury-system{padding-bottom:82px!important}
}
@media (max-width:640px){
  body.v13-luxury-system .mobile-menu{left:.75rem!important;right:.75rem!important;width:auto!important}
  body.v13-luxury-system .hero-proof div{border-right:0!important;border-bottom:1px solid rgba(196,202,208,.1)!important}
  body.v13-luxury-system .service-carousel .card-media,
  body.v13-luxury-system .service-carousel .card-media img{min-height:250px!important}
  body.v13-luxury-system .service-carousel .card-body{padding:1.35rem!important}
  body.v13-luxury-system .cta-band,
  body.v13-luxury-system .willcall-band{padding:1.35rem!important}
}
@media (max-width:480px){
  body.v13-luxury-system{--cont:calc(100% - 1rem)}
  body.v13-luxury-system .emergency-ribbon{font-size:.62rem!important;letter-spacing:.04em!important}
  body.v13-luxury-system .brand-logo-header{width:min(168px,54vw)!important}
  body.v13-luxury-system .menu-toggle{width:42px!important;height:42px!important;flex-basis:42px!important}
  body.v13-luxury-system .page-hero h1{font-size:clamp(2.35rem,13.8vw,4rem)!important;letter-spacing:.02em!important}
  body.v13-luxury-system .hero-proof{grid-template-columns:1fr!important}
  body.v13-luxury-system .btn{min-height:50px!important;padding:.95rem 1rem!important}
}
@media (max-width:360px){
  body.v13-luxury-system .brand-logo-header{width:148px!important}
  body.v13-luxury-system .page-hero h1{font-size:2.4rem!important}
  body.v13-luxury-system .hero-subtitle{font-size:.94rem!important}
  body.v13-luxury-system .mobile-menu a,
  body.v13-luxury-system .mobile-submenu-toggle{padding:.9rem 1rem!important}
}
@media (min-width:1920px){
  body.v13-luxury-system{--cont:min(1680px,calc(100% - 10rem));font-size:18px}
  body.v13-luxury-system .nav-shell{max-width:1680px!important}
  body.v13-luxury-system .page-hero{min-height:920px!important;background-position:center 38%!important}
  body.v13-luxury-system .page-hero h1{font-size:7.2rem!important}
  body.v13-luxury-system .section{padding:clamp(6rem,7vw,9rem) 0!important}
}
@media (min-width:2560px){
  body.v13-luxury-system{--cont:min(1760px,calc(100% - 14rem));font-size:19px}
  body.v13-luxury-system .nav-shell{max-width:1760px!important}
  body.v13-luxury-system .page-hero h1{font-size:7.6rem!important}
  body.v13-luxury-system .card,
  body.v13-luxury-system .industry-card,
  body.v13-luxury-system .area-card{padding:clamp(2rem,1.8vw,3rem)!important}
}
@media (hover:none){
  body.v13-luxury-system .card:hover,
  body.v13-luxury-system .process-step-premium:hover,
  body.v13-luxury-system .industry-card:hover,
  body.v13-luxury-system .area-card:hover{transform:none!important}
}
@media (prefers-reduced-motion:reduce){
  body.v13-luxury-system *,
  body.v13-luxury-system *::before,
  body.v13-luxury-system *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  body.v13-luxury-system [data-reveal]{opacity:1!important;transform:none!important;filter:none!important}
}


/* KISMET V15 — complete image placement system: every real site image is organized into contextual portfolio groups */
.visual-index-strip{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  margin-top:1.35rem;
}
.visual-index-strip a{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:.55rem .85rem;
  border:1px solid rgba(196,202,208,.22);
  background:rgba(51,51,51,.45);
  color:var(--wh-d);
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.78rem;
  text-decoration:none;
  transition:background var(--dur-fast) var(--ease-sharp),border-color var(--dur-fast) var(--ease-sharp),color var(--dur-fast) var(--ease-sharp),transform var(--dur-base) var(--ease-out-expo);
}
.visual-index-strip a:hover,
.visual-index-strip a:focus-visible{
  background:rgba(159,49,43,.22);
  border-color:rgba(159,49,43,.62);
  color:var(--wh);
  transform:translateY(-2px);
}
.image-system-section{
  content-visibility:auto;
  contain-intrinsic-size:900px;
}
.image-system-header{
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.image-library-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(1rem,2vw,1.5rem);
}
.image-library-card{
  min-width:0;
  background:linear-gradient(180deg,rgba(196,202,208,.045),rgba(196,202,208,.018));
  border:1px solid var(--bdr-s);
  overflow:hidden;
  box-shadow:0 20px 70px rgba(0,0,0,.18);
  transition:transform var(--dur-base) var(--ease-out-expo),box-shadow var(--dur-base) var(--ease-out-expo),border-color var(--dur-fast) var(--ease-sharp);
}
.image-library-card:hover{
  transform:translateY(-5px);
  border-color:rgba(159,49,43,.55);
  box-shadow:0 24px 84px rgba(0,0,0,.32),0 0 0 1px rgba(159,49,43,.12);
}
.image-library-link{
  display:grid;
  height:100%;
  color:inherit;
  text-decoration:none;
}
.image-library-media{
  position:relative;
  overflow:hidden;
  aspect-ratio:4/3;
  background:var(--g900);
}
.image-library-media::after{
  content:'';
  position:absolute;
  inset:auto 0 0 0;
  height:3px;
  background:linear-gradient(90deg,transparent,var(--cu),transparent);
  opacity:.9;
}
.image-library-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:brightness(.82) contrast(1.07) saturate(.95);
  transform:scale(1.001);
  transition:transform var(--dur-cinematic) var(--ease-out-expo),filter var(--dur-smooth) var(--ease-sharp);
}
.image-library-card:hover .image-library-media img{
  transform:scale(1.045);
  filter:brightness(.9) contrast(1.06) saturate(1);
}
.image-library-body{
  display:grid;
  align-content:start;
  gap:.65rem;
  padding:clamp(1.15rem,2vw,1.45rem);
}
.image-library-body h3{
  margin:0;
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(1.15rem,1.4vw,1.45rem);
  font-weight:900;
  line-height:1.05;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--wh);
  text-wrap:balance;
}
.image-library-body p{
  margin:0;
  color:var(--wh-d);
  font-size:.95rem;
  line-height:1.62;
}
.image-library-body .text-link{
  margin-top:.35rem;
  align-self:end;
}
@media (max-width:1024px){
  .image-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:640px){
  .image-library-grid{grid-template-columns:1fr;}
  .visual-index-strip a{flex:1 1 calc(50% - .65rem);justify-content:center;}
}
@media (max-width:360px){
  .visual-index-strip a{flex-basis:100%;}
  .image-library-body{padding:1rem;}
}
@media (min-width:1920px){
  .image-library-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .image-library-media{aspect-ratio:16/11;}
}

/* KISMET V16 — CRITICAL IMAGE VISIBILITY FIX
   Purpose: all real images must remain visible even if scroll-reveal, lazy loading or browser performance mode fails. */
.card-media,
.image-library-media,
.industry-photo,
.area-photo,
.ba-img,
.image-frame,
.section-img-wrap,
.service-visual,
.contact-side,
.hero-symbol-lockup,
.brand-symbol-watermark {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  filter: none !important;
  clip-path: inset(0 0 0 0) !important;
}
.card-media img,
.image-library-media img,
.industry-photo img,
.area-photo img,
.ba-img img,
.image-frame img,
.section-img-wrap img,
.service-visual img,
.contact-side img,
img.image-visible-critical {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  object-position: center center;
  clip-path: inset(0 0 0 0) !important;
  position: relative;
  z-index: 1;
}
.card-media,
.image-library-media,
.industry-photo,
.area-photo,
.ba-img,
.image-frame {
  background: linear-gradient(135deg, rgba(196,202,208,.08), rgba(51,51,51,.96)) !important;
  min-height: clamp(220px, 24vw, 360px);
}
.media-grid .card .card-media,
.image-library-media {
  aspect-ratio: 16 / 10;
}
.industry-photo,
.area-photo,
.ba-img,
.image-frame {
  aspect-ratio: 4 / 3;
}
.card-media img,
.image-library-media img,
.industry-photo img,
.area-photo img,
.ba-img img,
.image-frame img {
  height: 100% !important;
}
.image-load-error {
  display: grid !important;
  place-items: center;
  min-height: 240px;
  border: 1px solid rgba(159,49,43,.42) !important;
  background:
    linear-gradient(135deg, rgba(159,49,43,.12), rgba(51,51,51,.96)),
    #333333 !important;
}
.image-load-error::before {
  content: 'Image path needs review';
  position: absolute;
  z-index: 2;
  color: #C4CAD0;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: .82rem;
  opacity: .78;
}
.image-load-error img { opacity: 0 !important; }
@media (max-width: 640px) {
  .card-media,
  .image-library-media,
  .industry-photo,
  .area-photo,
  .ba-img,
  .image-frame {
    min-height: 220px !important;
    aspect-ratio: 4 / 3;
  }
}

/* KISMET V16 — service map visibility fallback */
.service-map, .service-map img{opacity:1!important;visibility:visible!important;clip-path:inset(0 0 0 0)!important;filter:none!important;}
.service-map img{display:block!important;width:100%!important;height:auto!important;object-fit:cover!important;}

/* ========================================================================== */
/* KISMET V17 — FOOTER ALIGNMENT FIX                                           */
/* Purpose: keep footer columns perfectly inside the viewport on desktop,       */
/* tablet, mobile and ultra-wide displays. Prevents right-column clipping.      */
/* ========================================================================== */
.site-footer{
  overflow:hidden!important;
  padding-block:clamp(3.25rem,5vw,5.75rem) clamp(1.4rem,2.4vw,2.25rem)!important;
}
.site-footer .wrap{
  width:min(calc(100% - clamp(1.5rem,6vw,7.5rem)),1360px)!important;
  max-width:1360px!important;
  margin-inline:auto!important;
}
.site-footer .footer-grid{
  display:grid!important;
  grid-template-columns:minmax(280px,1.32fr) minmax(160px,.72fr) minmax(160px,.72fr) minmax(240px,.92fr)!important;
  gap:clamp(2rem,3.8vw,4.25rem)!important;
  align-items:start!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
}
.site-footer .footer-grid > *{
  min-width:0!important;
  max-width:100%!important;
}
.site-footer .footer-brand{
  max-width:560px!important;
}
.site-footer .brand-footer{
  display:inline-flex!important;
  max-width:100%!important;
  width:max-content!important;
}
.site-footer .brand-logo-footer{
  width:min(340px,100%)!important;
  max-width:100%!important;
  height:auto!important;
}
.site-footer .footer-slogan{
  max-width:100%!important;
  line-height:1.08!important;
  text-wrap:balance!important;
}
.site-footer p,
.site-footer li,
.site-footer a{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.site-footer .footer-links{
  gap:.62rem!important;
}
.site-footer .footer-links a{
  display:inline-block!important;
  line-height:1.45!important;
}
.site-footer h2{
  line-height:1!important;
  white-space:normal!important;
  text-wrap:balance!important;
}
.site-footer .footer-bottom{
  width:min(calc(100% - clamp(1.5rem,6vw,7.5rem)),1360px)!important;
  max-width:1360px!important;
  margin-inline:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1.25rem!important;
}
.site-footer::after{
  right:clamp(1rem,4vw,5rem)!important;
  width:clamp(120px,14vw,230px)!important;
  max-width:28vw!important;
  opacity:.04!important;
}
@media (min-width:1920px){
  body.v13-luxury-system .site-footer .wrap,
  body.v13-luxury-system .site-footer .footer-bottom{
    width:min(calc(100% - 14rem),1440px)!important;
    max-width:1440px!important;
  }
  body.v13-luxury-system .site-footer .footer-grid{
    grid-template-columns:minmax(300px,1.38fr) minmax(170px,.74fr) minmax(170px,.74fr) minmax(260px,.95fr)!important;
    gap:clamp(2.5rem,3vw,4.5rem)!important;
  }
}
@media (max-width:1180px){
  body.v13-luxury-system .site-footer .footer-grid,
  .site-footer .footer-grid{
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;
    gap:2.4rem 3rem!important;
  }
  .site-footer .footer-brand{
    grid-column:1 / -1!important;
    max-width:720px!important;
  }
}
@media (max-width:768px){
  body.v13-luxury-system .site-footer .wrap,
  body.v13-luxury-system .site-footer .footer-bottom,
  .site-footer .wrap,
  .site-footer .footer-bottom{
    width:calc(100% - 1.5rem)!important;
    max-width:720px!important;
  }
  body.v13-luxury-system .site-footer .footer-grid,
  .site-footer .footer-grid{
    grid-template-columns:1fr!important;
    gap:2rem!important;
  }
  .site-footer .footer-brand{
    grid-column:auto!important;
  }
  .site-footer .brand-footer{
    width:100%!important;
    justify-content:flex-start!important;
  }
  .site-footer .brand-logo-footer{
    width:min(285px,82vw)!important;
  }
  .site-footer .footer-bottom{
    display:grid!important;
    justify-content:start!important;
    text-align:left!important;
  }
  .site-footer::after{
    right:-28px!important;
    bottom:28px!important;
    width:190px!important;
    opacity:.032!important;
  }
}
@media (max-width:420px){
  .site-footer .brand-logo-footer{width:min(245px,78vw)!important;}
  .site-footer{padding-block:3rem 1.5rem!important;}
  .site-footer h2{font-size:.78rem!important;letter-spacing:.14em!important;}
  .site-footer .footer-slogan{font-size:1.45rem!important;}
}

/* ========================================================================== */
/* KISMET V18 — FOOTER FULL VISIBILITY + FUNCTIONAL MENU FIX                   */
/* Purpose: remove cramped right-column behavior and guarantee every footer     */
/* menu item remains fully visible on desktop, notebook, tablet and mobile.     */
/* ========================================================================== */
.site-footer.footer-v18{
  position:relative!important;
  overflow:hidden!important;
  width:100%!important;
  max-width:100vw!important;
  padding:clamp(3.75rem,5vw,5.75rem) 0 clamp(1.5rem,2.4vw,2.25rem)!important;
  background:
    radial-gradient(circle at 20% 12%, rgba(196,202,208,.055), transparent 34%),
    linear-gradient(180deg, rgba(37,37,37,.98), rgba(30,30,30,.99))!important;
}
.site-footer.footer-v18::before{
  content:''!important;
  position:absolute!important;
  top:0!important;
  left:50%!important;
  width:min(72rem, calc(100% - 2rem))!important;
  height:1px!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(90deg, transparent, rgba(159,49,43,.86), rgba(196,202,208,.48), transparent)!important;
}
.site-footer.footer-v18::after{
  content:''!important;
  position:absolute!important;
  right:max(1rem, calc((100vw - 1320px) / 2))!important;
  bottom:1.25rem!important;
  width:clamp(120px,13vw,240px)!important;
  max-width:24vw!important;
  aspect-ratio:1/1!important;
  background:url('images/brand/kismet-symbol-light.webp') center/contain no-repeat!important;
  opacity:.035!important;
  pointer-events:none!important;
}
.footer-v18 .footer-shell{
  position:relative!important;
  z-index:2!important;
  width:min(calc(100% - clamp(2rem,7vw,8rem)),1320px)!important;
  max-width:1320px!important;
  margin-inline:auto!important;
}
.footer-v18 .footer-main{
  display:grid!important;
  grid-template-columns:minmax(0, .92fr) minmax(0, 1.08fr)!important;
  gap:clamp(2.5rem,5vw,6rem)!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
}
.footer-v18 .footer-brand{
  max-width:600px!important;
  min-width:0!important;
}
.footer-v18 .brand-footer{
  display:inline-flex!important;
  width:min(320px,100%)!important;
  max-width:100%!important;
  align-items:center!important;
}
.footer-v18 .brand-logo-footer{
  width:100%!important;
  max-width:320px!important;
  height:auto!important;
  flex:0 1 auto!important;
}
.footer-v18 .footer-slogan{
  margin:1.15rem 0 1rem!important;
  max-width:600px!important;
  color:var(--brand-red,var(--cu))!important;
  font-family:'Bebas Neue',sans-serif!important;
  font-size:clamp(1.45rem,2.2vw,1.95rem)!important;
  line-height:1.05!important;
  letter-spacing:.08em!important;
  text-wrap:balance!important;
}
.footer-v18 .footer-summary{
  max-width:620px!important;
  line-height:1.75!important;
}
.footer-v18 .footer-menu{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:clamp(1.35rem,2.6vw,3rem)!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.footer-v18 .footer-col{
  min-width:0!important;
  max-width:100%!important;
}
.footer-v18 h2{
  margin:0 0 1rem!important;
  font-family:'Barlow Condensed',sans-serif!important;
  font-size:.82rem!important;
  font-weight:900!important;
  line-height:1.08!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  color:var(--brand-red,var(--cu))!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  text-wrap:balance!important;
}
.footer-v18 .footer-links{
  display:grid!important;
  gap:.68rem!important;
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}
.footer-v18 .footer-links li{
  min-width:0!important;
  max-width:100%!important;
}
.footer-v18 .footer-links a,
.footer-v18 .footer-contact a{
  display:inline!important;
  max-width:100%!important;
  color:rgba(196,202,208,.84)!important;
  font-size:.96rem!important;
  line-height:1.45!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  white-space:normal!important;
  hyphens:none!important;
}
.footer-v18 .footer-links a:hover,
.footer-v18 .footer-contact a:hover{
  color:var(--brand-red,var(--cu))!important;
}
.footer-v18 .footer-contact p{
  margin:0 0 1rem!important;
  max-width:100%!important;
  color:rgba(196,202,208,.84)!important;
  font-size:.96rem!important;
  line-height:1.62!important;
  overflow-wrap:break-word!important;
}
.footer-v18 .footer-contact strong{
  color:rgba(244,242,238,.92)!important;
  font-weight:700!important;
}
.footer-v18 .footer-bottom{
  width:100%!important;
  max-width:100%!important;
  margin:clamp(2.5rem,4vw,3.75rem) 0 0!important;
  padding-top:1.35rem!important;
  border-top:1px solid rgba(196,202,208,.12)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:1rem!important;
  flex-wrap:wrap!important;
  color:rgba(196,202,208,.76)!important;
  font-size:.9rem!important;
  line-height:1.5!important;
}
@media (min-width:1920px){
  .footer-v18 .footer-shell{
    width:min(calc(100% - 12rem),1360px)!important;
    max-width:1360px!important;
  }
  .footer-v18 .footer-main{
    grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr)!important;
    gap:clamp(4rem,5vw,7rem)!important;
  }
}
@media (max-width:1320px){
  .footer-v18 .footer-main{
    grid-template-columns:1fr!important;
    gap:2.75rem!important;
  }
  .footer-v18 .footer-brand{
    max-width:760px!important;
  }
  .footer-v18 .footer-summary{
    max-width:760px!important;
  }
  .footer-v18 .footer-menu{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:860px){
  .footer-v18 .footer-shell{
    width:calc(100% - 2rem)!important;
  }
  .footer-v18 .footer-menu{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:2rem!important;
  }
  .footer-v18 .footer-contact{
    grid-column:1 / -1!important;
  }
  .footer-v18 .footer-bottom{
    display:grid!important;
    justify-content:start!important;
    text-align:left!important;
  }
  .site-footer.footer-v18::after{
    right:-36px!important;
    bottom:2rem!important;
    width:180px!important;
    max-width:48vw!important;
    opacity:.028!important;
  }
}
@media (max-width:560px){
  .site-footer.footer-v18{
    padding-block:3rem 1.35rem!important;
  }
  .footer-v18 .footer-shell{
    width:calc(100% - 1.5rem)!important;
  }
  .footer-v18 .brand-footer{
    width:min(280px,84vw)!important;
  }
  .footer-v18 .brand-logo-footer{
    max-width:280px!important;
  }
  .footer-v18 .footer-menu{
    grid-template-columns:1fr!important;
    gap:1.75rem!important;
  }
  .footer-v18 h2{
    font-size:.78rem!important;
    letter-spacing:.15em!important;
  }
  .footer-v18 .footer-links a,
  .footer-v18 .footer-contact a,
  .footer-v18 .footer-contact p{
    font-size:.94rem!important;
  }
}

/* =========================================================
   KISMET V19 — HERO COMPOSITION FIX
   Goal: title, subtitle and CTA buttons fully visible/aligned;
   keep one brand watermark only in the lower-right hero corner.
   ========================================================= */
body.v13-luxury-system .hero-copy::before{
  display:none!important;
  content:none!important;
}
body.v13-luxury-system .page-hero .hero-brand-symbol{
  top:auto!important;
  left:auto!important;
  right:clamp(-5rem,2vw,3.25rem)!important;
  bottom:clamp(1.25rem,5vw,5.25rem)!important;
  width:clamp(220px,27vw,620px)!important;
  max-width:42vw!important;
  transform:none!important;
  opacity:.065!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.v13-luxury-system .hero-home{
  min-height:clamp(700px,88svh,920px)!important;
  align-items:center!important;
  background-position:center 44%!important;
}
body.v13-luxury-system .hero-home .hero-overlay{
  background:
    linear-gradient(105deg,rgba(37,37,37,.985) 0%,rgba(37,37,37,.94) 34%,rgba(51,51,51,.68) 58%,rgba(159,49,43,.28) 82%,rgba(37,37,37,.92) 100%)!important;
}
body.v13-luxury-system .hero-home .hero-grid{
  display:flex!important;
  align-items:center!important;
  min-height:inherit!important;
  padding-top:calc(var(--nav-h) + clamp(2.75rem,4vw,4.75rem))!important;
  padding-bottom:clamp(3.75rem,5vw,5.5rem)!important;
}
body.v13-luxury-system .hero-home .hero-copy{
  width:min(820px,100%)!important;
  max-width:min(820px,100%)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0!important;
}
body.v13-luxury-system .hero-home .eyebrow{
  margin-bottom:clamp(.85rem,1vw,1.15rem)!important;
}
body.v13-luxury-system .hero-home h1{
  max-width:820px!important;
  font-size:clamp(3rem,5.55vw,5.9rem)!important;
  line-height:.94!important;
  letter-spacing:.032em!important;
  text-wrap:balance!important;
  overflow:visible!important;
  margin:0!important;
}
body.v13-luxury-system .hero-home .hero-subtitle{
  max-width:720px!important;
  margin:clamp(1.1rem,1.6vw,1.45rem) 0 clamp(1.35rem,2vw,1.75rem)!important;
  line-height:1.62!important;
  text-wrap:pretty!important;
}
body.v13-luxury-system .hero-home .hero-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:.9rem!important;
  width:auto!important;
  margin:0!important;
}
body.v13-luxury-system .hero-home .hero-actions .btn{
  min-height:54px!important;
  min-width:0!important;
  width:auto!important;
  white-space:normal!important;
}
body.v13-luxury-system .hero-home .hero-proof{
  margin-top:clamp(1.6rem,2.5vw,2.35rem)!important;
  max-width:820px!important;
}
@media (max-width:1280px){
  body.v13-luxury-system .hero-home h1{
    font-size:clamp(2.85rem,6.25vw,5.25rem)!important;
    max-width:760px!important;
  }
  body.v13-luxury-system .hero-home .hero-copy{max-width:min(760px,100%)!important}
}
@media (max-width:1024px){
  body.v13-luxury-system .hero-home{
    min-height:clamp(680px,86svh,820px)!important;
  }
  body.v13-luxury-system .page-hero .hero-brand-symbol{
    width:clamp(190px,32vw,360px)!important;
    right:-4.5rem!important;
    bottom:2.5rem!important;
    opacity:.045!important;
  }
}
@media (max-width:768px){
  body.v13-luxury-system .hero-home{
    min-height:clamp(680px,88svh,820px)!important;
    background-position:center center!important;
  }
  body.v13-luxury-system .hero-home .hero-grid{
    align-items:flex-start!important;
    padding-top:calc(var(--nav-h) + 3.15rem)!important;
    padding-bottom:3.25rem!important;
  }
  body.v13-luxury-system .hero-home h1{
    max-width:100%!important;
    font-size:clamp(2.55rem,11vw,4.15rem)!important;
    line-height:.94!important;
    letter-spacing:.025em!important;
  }
  body.v13-luxury-system .hero-home .hero-subtitle{
    max-width:100%!important;
    margin:1rem 0 1.25rem!important;
  }
  body.v13-luxury-system .hero-home .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  body.v13-luxury-system .hero-home .hero-actions .btn{
    width:100%!important;
  }
  body.v13-luxury-system .hero-home .hero-proof{
    margin-top:1.35rem!important;
  }
  body.v13-luxury-system .page-hero .hero-brand-symbol{
    width:230px!important;
    max-width:62vw!important;
    right:-80px!important;
    bottom:1rem!important;
    opacity:.04!important;
  }
}
@media (max-width:480px){
  body.v13-luxury-system .hero-home{
    min-height:760px!important;
  }
  body.v13-luxury-system .hero-home .hero-grid{
    padding-top:calc(var(--nav-h) + 2.6rem)!important;
  }
  body.v13-luxury-system .hero-home h1{
    font-size:clamp(2.35rem,12.5vw,3.55rem)!important;
    line-height:.96!important;
  }
  body.v13-luxury-system .hero-home .eyebrow{
    font-size:.65rem!important;
    letter-spacing:.17em!important;
  }
}
@media (min-width:1440px){
  body.v13-luxury-system .hero-home .hero-copy{max-width:860px!important;width:min(860px,100%)!important}
  body.v13-luxury-system .hero-home h1{max-width:860px!important;font-size:clamp(4.6rem,5.2vw,6rem)!important}
}
@media (min-width:1920px){
  body.v13-luxury-system .hero-home{
    min-height:clamp(820px,88svh,960px)!important;
  }
  body.v13-luxury-system .hero-home h1{
    font-size:6.05rem!important;
    max-width:880px!important;
    line-height:.94!important;
  }
  body.v13-luxury-system .hero-home .hero-copy{max-width:880px!important;width:min(880px,100%)!important}
}
@media (min-width:2560px){
  body.v13-luxury-system .hero-home h1{
    font-size:6.6rem!important;
    max-width:980px!important;
  }
  body.v13-luxury-system .hero-home .hero-copy{max-width:980px!important;width:min(980px,100%)!important}
}

/* =========================================================
   KISMET V20 — GLOBAL HERO SIZE STANDARDIZATION
   Goal: every hero section uses the same visual height and the same
   content alignment rhythm across home, service pages, portfolio,
   contact, legal and system pages. Keeps page-specific copy, CTAs,
   imagery and proof blocks intact.
   ========================================================= */
body.v13-luxury-system{
  --kismet-hero-height:clamp(740px,88svh,920px);
  --kismet-hero-pad-x:0px;
}
body.v13-luxury-system .page-hero,
body.v13-luxury-system .hero-home,
body.v13-luxury-system .hero-pm,
body.v13-luxury-system .hero-repairs,
body.v13-luxury-system .hero-installations,
body.v13-luxury-system .hero-emergency,
body.v13-luxury-system .hero-willcall,
body.v13-luxury-system .hero-about,
body.v13-luxury-system .hero-portfolio,
body.v13-luxury-system .hero-areas,
body.v13-luxury-system .hero-contact,
body.v13-luxury-system .hero-legal{
  min-height:var(--kismet-hero-height)!important;
  height:var(--kismet-hero-height)!important;
  max-height:none!important;
  display:flex!important;
  align-items:center!important;
  background-size:cover!important;
  background-position:center center!important;
  overflow:hidden!important;
}
body.v13-luxury-system .page-hero .hero-grid{
  min-height:var(--kismet-hero-height)!important;
  height:var(--kismet-hero-height)!important;
  width:var(--cont)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  grid-template-columns:unset!important;
  padding-top:calc(var(--nav-h) + clamp(2.6rem,4vw,4.5rem))!important;
  padding-bottom:clamp(2.75rem,4.8vw,5rem)!important;
}
body.v13-luxury-system .breadcrumb + .page-hero .hero-grid{
  padding-top:clamp(3rem,4.6vw,5rem)!important;
  padding-bottom:clamp(3rem,4.6vw,5rem)!important;
}
body.v13-luxury-system .page-hero .hero-copy,
body.v13-luxury-system .hero-home .hero-copy{
  width:min(900px,100%)!important;
  max-width:min(900px,100%)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  position:relative!important;
  z-index:3!important;
  gap:0!important;
}
body.v13-luxury-system .page-hero .eyebrow,
body.v13-luxury-system .hero-home .eyebrow{
  margin:0 0 clamp(.8rem,1vw,1.1rem)!important;
}
body.v13-luxury-system .page-hero h1,
body.v13-luxury-system .hero-home h1,
body.v13-luxury-system .hero-title{
  width:min(900px,100%)!important;
  max-width:min(900px,100%)!important;
  font-size:clamp(3rem,5.25vw,5.85rem)!important;
  line-height:.94!important;
  letter-spacing:.03em!important;
  text-wrap:balance!important;
  overflow:visible!important;
  margin:0!important;
}
body.v13-luxury-system .page-hero .hero-subtitle,
body.v13-luxury-system .hero-home .hero-subtitle{
  width:min(760px,100%)!important;
  max-width:min(760px,100%)!important;
  margin:clamp(1.05rem,1.55vw,1.45rem) 0 clamp(1.25rem,1.85vw,1.75rem)!important;
  font-size:clamp(1rem,1.02vw,1.18rem)!important;
  line-height:1.62!important;
  text-wrap:pretty!important;
}
body.v13-luxury-system .page-hero .hero-actions,
body.v13-luxury-system .hero-home .hero-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  align-items:center!important;
  gap:.9rem!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
}
body.v13-luxury-system .page-hero .hero-actions .btn,
body.v13-luxury-system .hero-home .hero-actions .btn{
  min-height:54px!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
}
body.v13-luxury-system .page-hero .hero-proof,
body.v13-luxury-system .hero-home .hero-proof{
  max-width:900px!important;
  margin-top:clamp(1.45rem,2.2vw,2.25rem)!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
body.v13-luxury-system .page-hero .hero-brand-symbol{
  top:auto!important;
  left:auto!important;
  right:clamp(-5rem,2vw,3.25rem)!important;
  bottom:clamp(1rem,4.6vw,5rem)!important;
  width:clamp(220px,27vw,620px)!important;
  max-width:42vw!important;
  transform:none!important;
  opacity:.055!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.v13-luxury-system .hero-copy::before{display:none!important;content:none!important;}
@media (max-width:1280px){
  body.v13-luxury-system{--kismet-hero-height:clamp(720px,87svh,880px);}
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{
    font-size:clamp(2.85rem,5.9vw,5.25rem)!important;
    width:min(820px,100%)!important;
    max-width:min(820px,100%)!important;
  }
  body.v13-luxury-system .page-hero .hero-copy,
  body.v13-luxury-system .hero-home .hero-copy{width:min(820px,100%)!important;max-width:min(820px,100%)!important;}
}
@media (max-width:1024px){
  body.v13-luxury-system{--kismet-hero-height:clamp(700px,86svh,840px);}
  body.v13-luxury-system .page-hero .hero-grid{
    padding-top:calc(var(--nav-h) + 3rem)!important;
    padding-bottom:3.25rem!important;
  }
  body.v13-luxury-system .breadcrumb + .page-hero .hero-grid{
    padding-top:3.25rem!important;
    padding-bottom:3.25rem!important;
  }
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{
    font-size:clamp(2.7rem,7.2vw,4.85rem)!important;
    width:min(760px,100%)!important;
    max-width:min(760px,100%)!important;
  }
  body.v13-luxury-system .page-hero .hero-proof,
  body.v13-luxury-system .hero-home .hero-proof{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body.v13-luxury-system .page-hero .hero-brand-symbol{width:clamp(190px,32vw,360px)!important;right:-4.5rem!important;bottom:2.5rem!important;opacity:.04!important;}
}
@media (max-width:768px){
  body.v13-luxury-system{--kismet-hero-height:clamp(780px,96svh,900px);}
  body.v13-luxury-system .page-hero,
  body.v13-luxury-system .hero-home{background-position:center center!important;}
  body.v13-luxury-system .page-hero .hero-grid{
    align-items:center!important;
    padding-top:calc(var(--nav-h) + 2.75rem)!important;
    padding-bottom:3rem!important;
  }
  body.v13-luxury-system .breadcrumb + .page-hero .hero-grid{
    padding-top:2.75rem!important;
    padding-bottom:3rem!important;
  }
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(2.35rem,10.4vw,4rem)!important;
    line-height:.96!important;
    letter-spacing:.024em!important;
  }
  body.v13-luxury-system .page-hero .hero-subtitle,
  body.v13-luxury-system .hero-home .hero-subtitle{
    width:100%!important;
    max-width:100%!important;
    margin:1rem 0 1.2rem!important;
    font-size:1rem!important;
    line-height:1.6!important;
  }
  body.v13-luxury-system .page-hero .hero-actions,
  body.v13-luxury-system .hero-home .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    gap:.75rem!important;
  }
  body.v13-luxury-system .page-hero .hero-actions .btn,
  body.v13-luxury-system .hero-home .hero-actions .btn{width:100%!important;min-height:52px!important;}
  body.v13-luxury-system .page-hero .hero-proof,
  body.v13-luxury-system .hero-home .hero-proof{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin-top:1.15rem!important;
  }
  body.v13-luxury-system .page-hero .hero-proof div{padding:.9rem .95rem!important;}
  body.v13-luxury-system .page-hero .hero-proof strong{font-size:clamp(1.5rem,7vw,2rem)!important;}
  body.v13-luxury-system .page-hero .hero-proof span{font-size:.68rem!important;line-height:1.18!important;}
  body.v13-luxury-system .page-hero .hero-brand-symbol{width:230px!important;max-width:62vw!important;right:-82px!important;bottom:.85rem!important;opacity:.035!important;}
}
@media (max-width:480px){
  body.v13-luxury-system{--kismet-hero-height:820px;}
  body.v13-luxury-system .page-hero .hero-grid{padding-top:calc(var(--nav-h) + 2.25rem)!important;padding-bottom:2.35rem!important;}
  body.v13-luxury-system .breadcrumb + .page-hero .hero-grid{padding-top:2.25rem!important;padding-bottom:2.35rem!important;}
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{font-size:clamp(2.08rem,10.6vw,3.25rem)!important;line-height:.98!important;}
  body.v13-luxury-system .page-hero .eyebrow,
  body.v13-luxury-system .hero-home .eyebrow{font-size:.63rem!important;letter-spacing:.15em!important;}
  body.v13-luxury-system .page-hero .hero-proof,
  body.v13-luxury-system .hero-home .hero-proof{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:360px){
  body.v13-luxury-system{--kismet-hero-height:840px;}
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{font-size:2rem!important;}
  body.v13-luxury-system .page-hero .hero-subtitle,
  body.v13-luxury-system .hero-home .hero-subtitle{font-size:.93rem!important;}
  body.v13-luxury-system .page-hero .hero-proof div{padding:.78rem .72rem!important;}
}
@media (min-width:1920px){
  body.v13-luxury-system{--kismet-hero-height:920px;}
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{font-size:6.05rem!important;width:min(960px,100%)!important;max-width:min(960px,100%)!important;}
  body.v13-luxury-system .page-hero .hero-copy,
  body.v13-luxury-system .hero-home .hero-copy{width:min(960px,100%)!important;max-width:min(960px,100%)!important;}
}
@media (min-width:2560px){
  body.v13-luxury-system{--kismet-hero-height:960px;}
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{font-size:6.6rem!important;width:min(1040px,100%)!important;max-width:min(1040px,100%)!important;}
  body.v13-luxury-system .page-hero .hero-copy,
  body.v13-luxury-system .hero-home .hero-copy{width:min(1040px,100%)!important;max-width:min(1040px,100%)!important;}
}

/* ==========================================================================
   KISMET V21 — FINAL SECTION CORRECTION SYSTEM
   Fixes: home hero spacing, premium PM cards, scroll image reveal cards,
   five-part carousel, will-call visibility, and two-column galleries.
   ========================================================================== */
body.v13-luxury-system .hero-copy::before{display:none!important;content:none!important;}
body.v13-luxury-system .page-hero .hero-brand-symbol{
  top:auto!important;
  left:auto!important;
  right:clamp(-96px,-3.8vw,-34px)!important;
  bottom:clamp(-90px,-4vw,-38px)!important;
  width:clamp(300px,24vw,520px)!important;
  opacity:.07!important;
  transform:none!important;
  z-index:1!important;
}
body.v13-luxury-system .page-hero .hero-grid{z-index:2!important;}

/* Image 1 — home hero breathes; proof points become a clean second section */
body.v13-luxury-system .hero-home{
  min-height:clamp(720px,86svh,860px)!important;
  align-items:center!important;
}
body.v13-luxury-system .hero-home .hero-grid{
  padding-top:calc(var(--nav-h) + clamp(4.5rem,7vh,6.5rem))!important;
  padding-bottom:clamp(4.5rem,7vh,6rem)!important;
}
body.v13-luxury-system .hero-home .hero-copy{
  width:min(980px,100%)!important;
  max-width:min(980px,100%)!important;
}
body.v13-luxury-system .hero-home h1{
  max-width:min(980px,100%)!important;
  font-size:clamp(4.05rem,5.65vw,6.25rem)!important;
  line-height:.95!important;
  letter-spacing:.045em!important;
  text-wrap:balance!important;
}
body.v13-luxury-system .hero-home .hero-subtitle{
  max-width:780px!important;
  margin-top:1.35rem!important;
  margin-bottom:2.1rem!important;
  line-height:1.72!important;
}
body.v13-luxury-system .hero-home .hero-proof{display:none!important;}
body.v13-luxury-system .v21-trust-section{
  position:relative!important;
  z-index:3!important;
  padding:0 0 clamp(2.5rem,4vw,4rem)!important;
  margin-top:0!important;
  border-top:1px solid rgba(196,202,208,.14)!important;
  border-bottom:1px solid rgba(159,49,43,.22)!important;
  background:linear-gradient(180deg,rgba(25,25,25,1),rgba(38,38,38,1))!important;
}
body.v13-luxury-system .v21-trust-section .wrap{
  transform:translateY(-32px);
}
body.v13-luxury-system .v21-stats-grid,
body.v13-luxury-system .v21-feature-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:1px!important;
  background:rgba(196,202,208,.13)!important;
  border:1px solid rgba(196,202,208,.14)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
}
body.v13-luxury-system .v21-stats-grid div,
body.v13-luxury-system .v21-feature-grid div{
  background:linear-gradient(180deg,rgba(32,34,35,.96),rgba(25,25,25,.98))!important;
  padding:clamp(1.25rem,2vw,2rem)!important;
  min-width:0!important;
}
body.v13-luxury-system .v21-stats-grid strong{
  display:block!important;
  font-family:'Bebas Neue',sans-serif!important;
  font-size:clamp(2.3rem,4vw,4rem)!important;
  line-height:.9!important;
  letter-spacing:.08em!important;
  color:#9F312B!important;
}
body.v13-luxury-system .v21-stats-grid span,
body.v13-luxury-system .v21-feature-grid span{
  display:block!important;
  margin-top:.5rem!important;
  font-family:'Barlow Condensed',sans-serif!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:rgba(196,202,208,.82)!important;
}
body.v13-luxury-system .v21-feature-grid{border-top:0!important;box-shadow:0 18px 54px rgba(0,0,0,.22)!important;}
body.v13-luxury-system .v21-feature-grid strong{
  color:#F4F2EE!important;
  font-family:'Barlow Condensed',sans-serif!important;
  font-size:1.05rem!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.v13-luxury-system .v21-feature-grid span{
  font-family:'Barlow',sans-serif!important;
  font-weight:400!important;
  text-transform:none!important;
  letter-spacing:.01em!important;
  line-height:1.62!important;
  color:rgba(196,202,208,.78)!important;
}

/* Images 2 and 3 — premium four-card UX with scroll-revealed imagery */
body.v13-luxury-system .v21-pm-process{
  overflow:hidden!important;
  background:
    radial-gradient(circle at 78% 14%,rgba(159,49,43,.16),transparent 35%),
    linear-gradient(180deg,#2b2b2b 0%,#252525 100%)!important;
}
body.v13-luxury-system .v21-pm-process .section-header-center{
  max-width:940px!important;
  margin-bottom:clamp(2.25rem,4vw,4.5rem)!important;
}
body.v13-luxury-system .v21-process-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(1rem,2vw,1.8rem)!important;
  width:min(1120px,100%)!important;
  margin-inline:auto!important;
}
body.v13-luxury-system .v21-process-grid .process-step-premium{
  min-height:clamp(420px,38vw,560px)!important;
  padding:clamp(2.35rem,3.4vw,4rem)!important;
  border:1px solid rgba(196,202,208,.22)!important;
  background:linear-gradient(180deg,rgba(22,23,24,.94),rgba(37,37,37,.92))!important;
  box-shadow:0 28px 80px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.025)!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  isolation:isolate!important;
}
body.v13-luxury-system .v21-process-grid .process-step-premium::before{
  opacity:0!important;
  transform:translateY(28px) scale(1.08)!important;
  transition:opacity 950ms cubic-bezier(.22,1,.36,1), transform 1100ms cubic-bezier(.22,1,.36,1), filter 900ms cubic-bezier(.22,1,.36,1)!important;
  filter:brightness(.36) contrast(1.12) saturate(.92)!important;
}
body.v13-luxury-system .v21-process-grid .process-step-premium.is-visible::before,
body.v13-luxury-system .v21-process-grid .process-step-premium:hover::before{
  opacity:.74!important;
  transform:translateY(0) scale(1.02)!important;
}
body.v13-luxury-system .v21-process-grid .process-step-premium::after{
  opacity:1!important;
  background:
    linear-gradient(90deg,rgba(159,49,43,.55) 0 2px,transparent 2px 100%),
    linear-gradient(180deg,rgba(18,19,20,.38) 0%,rgba(18,19,20,.64) 44%,rgba(18,19,20,.96) 100%)!important;
}
body.v13-luxury-system .v21-process-grid .process-step-premium span{
  position:relative!important;
  top:auto!important;left:auto!important;
  display:block!important;
  margin:0 0 1.25rem!important;
  color:#9F312B!important;
  font-size:clamp(4rem,7vw,6rem)!important;
  letter-spacing:.06em!important;
}
body.v13-luxury-system .v21-process-grid .process-step-premium span::after{
  content:'';display:block;width:56px;height:2px;background:#9F312B;margin-top:1rem;
}
body.v13-luxury-system .v21-process-grid .process-step-premium h3{
  max-width:12ch!important;
  font-size:clamp(2.35rem,4vw,3.4rem)!important;
  line-height:.95!important;
  color:#fff!important;
  text-shadow:0 12px 38px rgba(0,0,0,.48)!important;
}
body.v13-luxury-system .v21-process-grid .process-step-premium p{
  max-width:34ch!important;
  margin-top:1.15rem!important;
  color:rgba(244,242,238,.9)!important;
  font-size:clamp(1.02rem,1.35vw,1.22rem)!important;
  line-height:1.62!important;
}

/* Image 4 — minimal, centered five-part carousel */
body.v13-luxury-system .v21-services-carousel-section{
  background:linear-gradient(180deg,#1b1c1d 0%,#111315 100%)!important;
  overflow:hidden!important;
}
body.v13-luxury-system .v21-service-carousel{
  position:relative!important;
  width:min(1280px,100%)!important;
  margin:clamp(2rem,4vw,4rem) auto 0!important;
}
body.v13-luxury-system .v21-service-carousel .carousel-shell{
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr) 64px!important;
  gap:clamp(.75rem,2vw,1.8rem)!important;
  align-items:center!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
body.v13-luxury-system .v21-service-carousel .carousel-viewport{
  overflow:hidden!important;
  border:1px solid rgba(196,202,208,.2)!important;
  background:linear-gradient(180deg,rgba(21,23,25,.96),rgba(14,16,18,.98))!important;
  box-shadow:0 28px 90px rgba(0,0,0,.42)!important;
}
body.v13-luxury-system .v21-service-carousel .carousel-track{display:flex!important;transition:transform 620ms cubic-bezier(.22,1,.36,1)!important;will-change:transform!important;}
body.v13-luxury-system .v21-service-carousel .carousel-card{
  display:grid!important;
  grid-template-columns:minmax(0,1.02fr) minmax(340px,.98fr)!important;
  align-items:center!important;
  gap:clamp(2rem,4vw,4.5rem)!important;
  flex:0 0 100%!important;
  max-width:100%!important;
  padding:clamp(1.25rem,2vw,2rem)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  opacity:.45!important;
  transform:scale(.985)!important;
  transition:opacity 420ms ease,transform 620ms cubic-bezier(.22,1,.36,1)!important;
}
body.v13-luxury-system .v21-service-carousel .carousel-card.is-active{opacity:1!important;transform:scale(1)!important;}
body.v13-luxury-system .v21-service-carousel .card-media{aspect-ratio:1.02/1!important;border:1px solid rgba(196,202,208,.18)!important;box-shadow:0 18px 50px rgba(0,0,0,.34)!important;}
body.v13-luxury-system .v21-service-carousel .card-media img{height:100%!important;width:100%!important;object-fit:cover!important;filter:brightness(.72) contrast(1.08) saturate(.94)!important;}
body.v13-luxury-system .v21-service-carousel .card-body{padding:clamp(1rem,2vw,2rem)!important;max-width:520px!important;}
body.v13-luxury-system .v21-service-carousel .slide-kicker{display:block!important;color:#9F312B!important;font-family:'Barlow Condensed',sans-serif!important;font-size:clamp(1.5rem,2.8vw,2.15rem)!important;font-weight:900!important;margin-bottom:1rem!important;letter-spacing:.08em!important;}
body.v13-luxury-system .v21-service-carousel .slide-kicker::after{content:'';display:block;width:44px;height:2px;background:#9F312B;margin-top:.85rem;}
body.v13-luxury-system .v21-service-carousel h3{font-size:clamp(2.45rem,4.4vw,4.25rem)!important;line-height:.92!important;max-width:11ch!important;}
body.v13-luxury-system .v21-service-carousel p{font-size:clamp(1rem,1.2vw,1.15rem)!important;line-height:1.72!important;color:rgba(196,202,208,.82)!important;max-width:44ch!important;}
body.v13-luxury-system .v21-service-carousel .carousel-btn{
  width:56px!important;height:56px!important;border-radius:999px!important;
  display:grid!important;place-items:center!important;
  border:1px solid rgba(196,202,208,.18)!important;
  background:radial-gradient(circle at 50% 0%,rgba(196,202,208,.1),rgba(18,19,20,.96))!important;
  color:#fff!important;box-shadow:0 12px 36px rgba(0,0,0,.35)!important;
  transition:transform .26s cubic-bezier(.34,1.56,.64,1),border-color .26s ease,box-shadow .26s ease!important;
}
body.v13-luxury-system .v21-service-carousel .carousel-btn:hover{transform:scale(1.06)!important;border-color:rgba(159,49,43,.62)!important;box-shadow:0 0 0 1px rgba(159,49,43,.22),0 18px 42px rgba(0,0,0,.45)!important;}
body.v13-luxury-system .v21-service-carousel .carousel-btn:disabled{opacity:.36!important;cursor:not-allowed!important;transform:none!important;}
body.v13-luxury-system .v21-carousel-footer{display:grid!important;gap:1.4rem!important;margin-top:1.8rem!important;justify-items:center!important;}
body.v13-luxury-system .v21-carousel-dots{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:clamp(.8rem,3vw,4rem)!important;width:min(1040px,100%)!important;background:transparent!important;}
body.v13-luxury-system .v21-carousel-dots .carousel-dot{
  border:0!important;background:transparent!important;color:rgba(196,202,208,.45)!important;text-align:left!important;padding:0!important;display:grid!important;gap:.28rem!important;cursor:pointer!important;min-width:0!important;
}
body.v13-luxury-system .v21-carousel-dots .dot-number{font-family:'Barlow Condensed',sans-serif!important;font-size:1.4rem!important;font-weight:900!important;letter-spacing:.06em!important;}
body.v13-luxury-system .v21-carousel-dots .dot-label{font-family:'Barlow Condensed',sans-serif!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:.78rem!important;line-height:1.15!important;}
body.v13-luxury-system .v21-carousel-dots .dot-line{height:2px;width:100%;background:rgba(196,202,208,.18)!important;margin-top:.5rem!important;position:relative!important;overflow:hidden!important;}
body.v13-luxury-system .v21-carousel-dots .dot-line::after{content:'';position:absolute;inset:0;background:#9F312B;transform:scaleX(0);transform-origin:left;transition:transform 520ms cubic-bezier(.22,1,.36,1);}
body.v13-luxury-system .v21-carousel-dots .carousel-dot.active,
body.v13-luxury-system .v21-carousel-dots .carousel-dot[aria-current="true"]{color:#f4f2ee!important;}
body.v13-luxury-system .v21-carousel-dots .carousel-dot.active .dot-number,
body.v13-luxury-system .v21-carousel-dots .carousel-dot[aria-current="true"] .dot-number{color:#9F312B!important;}
body.v13-luxury-system .v21-carousel-dots .carousel-dot.active .dot-line::after,
body.v13-luxury-system .v21-carousel-dots .carousel-dot[aria-current="true"] .dot-line::after{transform:scaleX(1)!important;}
body.v13-luxury-system .carousel-hint{font-family:'Barlow Condensed',sans-serif!important;letter-spacing:.18em!important;text-transform:uppercase!important;color:rgba(196,202,208,.55)!important;}

/* Image 5 — will-call text visibility on light section and will-call hero */
body.v13-luxury-system .willcall-band{
  background:linear-gradient(135deg,#F4F6F8 0%,#DDE3E8 58%,#C4CAD0 100%)!important;
  color:#333333!important;
  padding:clamp(5rem,8vw,8rem) 0!important;
}
body.v13-luxury-system .willcall-band .section-header{max-width:760px!important;margin-bottom:0!important;}
body.v13-luxury-system .willcall-band h2{color:#333333!important;text-shadow:none!important;font-size:clamp(3rem,5.6vw,5.75rem)!important;line-height:.94!important;max-width:780px!important;}
body.v13-luxury-system .willcall-band p{color:rgba(51,51,51,.84)!important;text-shadow:none!important;font-size:clamp(1.03rem,1.25vw,1.18rem)!important;line-height:1.66!important;max-width:760px!important;}
body.v13-luxury-system .willcall-band .eyebrow{color:#9F312B!important;text-shadow:none!important;}
body.v13-luxury-system .willcall-band .eyebrow::before{background:#9F312B!important;}
body.v13-luxury-system .willcall-proof{background:rgba(255,255,255,.35)!important;border:1px solid rgba(51,51,51,.24)!important;box-shadow:0 18px 60px rgba(51,51,51,.12)!important;}
body.v13-luxury-system .willcall-proof strong{color:#333333!important;text-shadow:none!important;}
body.v13-luxury-system .willcall-proof span{color:#333333!important;}
body.v13-luxury-system .hero-willcall .hero-subtitle{color:rgba(244,242,238,.94)!important;max-width:820px!important;}

/* Image 6 — two images side by side only for gallery grids */
body.v13-luxury-system .media-grid.three,
body.v13-luxury-system .portfolio-grid,
body.v13-luxury-system .v21-two-column-gallery{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(1.25rem,2.2vw,2rem)!important;
}
body.v13-luxury-system .media-grid.three .card-media,
body.v13-luxury-system .portfolio-grid .card-media{
  aspect-ratio:16/10!important;
  border:1px solid rgba(196,202,208,.2)!important;
}
body.v13-luxury-system .media-grid.three img,
body.v13-luxury-system .portfolio-grid img{height:100%!important;width:100%!important;object-fit:cover!important;}

@media (max-width:1180px){
  body.v13-luxury-system .v21-service-carousel .carousel-shell{grid-template-columns:1fr!important;}
  body.v13-luxury-system .v21-service-carousel .carousel-btn{display:none!important;}
  body.v13-luxury-system .v21-service-carousel .carousel-card{grid-template-columns:1fr!important;gap:1.5rem!important;}
  body.v13-luxury-system .v21-service-carousel .card-media{aspect-ratio:16/10!important;}
}
@media (max-width:900px){
  body.v13-luxury-system .v21-stats-grid,
  body.v13-luxury-system .v21-feature-grid,
  body.v13-luxury-system .v21-process-grid,
  body.v13-luxury-system .media-grid.three,
  body.v13-luxury-system .portfolio-grid{grid-template-columns:1fr 1fr!important;}
  body.v13-luxury-system .v21-process-grid .process-step-premium{min-height:380px!important;}
  body.v13-luxury-system .v21-carousel-dots{grid-template-columns:repeat(5,minmax(92px,1fr))!important;overflow-x:auto!important;padding-bottom:.4rem!important;}
}
@media (max-width:640px){
  body.v13-luxury-system .hero-home{min-height:clamp(690px,88svh,780px)!important;}
  body.v13-luxury-system .hero-home h1{font-size:clamp(2.35rem,11vw,3.65rem)!important;line-height:.98!important;}
  body.v13-luxury-system .hero-home .hero-grid{padding-top:calc(var(--nav-h) + 2.5rem)!important;padding-bottom:3rem!important;}
  body.v13-luxury-system .v21-trust-section .wrap{transform:none!important;padding-top:1.25rem!important;}
  body.v13-luxury-system .v21-stats-grid,
  body.v13-luxury-system .v21-feature-grid,
  body.v13-luxury-system .v21-process-grid,
  body.v13-luxury-system .media-grid.three,
  body.v13-luxury-system .portfolio-grid{grid-template-columns:1fr!important;}
  body.v13-luxury-system .v21-process-grid .process-step-premium{min-height:340px!important;padding:1.6rem!important;}
  body.v13-luxury-system .v21-process-grid .process-step-premium span{font-size:3.25rem!important;}
  body.v13-luxury-system .v21-process-grid .process-step-premium h3{font-size:2.1rem!important;}
  body.v13-luxury-system .v21-carousel-dots{grid-template-columns:1fr!important;overflow:visible!important;gap:.9rem!important;}
  body.v13-luxury-system .v21-carousel-dots .carousel-dot{grid-template-columns:42px 1fr!important;align-items:center!important;}
  body.v13-luxury-system .v21-carousel-dots .dot-line{grid-column:1 / -1!important;}
  body.v13-luxury-system .willcall-band{padding:4rem 0!important;}
  body.v13-luxury-system .willcall-band h2{font-size:clamp(2.45rem,12vw,3.45rem)!important;}
}


/* ==========================================================================
   KISMET V22 — FINAL AUDITED DELIVERY LAYER
   Purpose: final consistency pass after image/content placement.
   Guarantees: no cramped trust section, safe hero content, stable grids,
   image visibility, footer visibility and mobile-first readability.
   ========================================================================== */
body.v13-luxury-system{
  --kismet-hero-height:clamp(760px,88svh,920px);
}
body.v13-luxury-system .page-hero,
body.v13-luxury-system .hero-home,
body.v13-luxury-system .hero-pm,
body.v13-luxury-system .hero-repairs,
body.v13-luxury-system .hero-installations,
body.v13-luxury-system .hero-emergency,
body.v13-luxury-system .hero-willcall,
body.v13-luxury-system .hero-about,
body.v13-luxury-system .hero-portfolio,
body.v13-luxury-system .hero-areas,
body.v13-luxury-system .hero-contact,
body.v13-luxury-system .hero-legal{
  min-height:var(--kismet-hero-height)!important;
  height:auto!important;
  overflow:hidden!important;
}
body.v13-luxury-system .page-hero .hero-grid,
body.v13-luxury-system .hero-home .hero-grid{
  min-height:var(--kismet-hero-height)!important;
  height:auto!important;
  padding-top:calc(var(--nav-h) + clamp(4.8rem,7vh,6.75rem))!important;
  padding-bottom:clamp(4.4rem,7vh,6rem)!important;
}
body.v13-luxury-system .breadcrumb + .page-hero .hero-grid{
  padding-top:clamp(4.2rem,6vw,6rem)!important;
  padding-bottom:clamp(4rem,6vw,5.75rem)!important;
}
body.v13-luxury-system .page-hero h1,
body.v13-luxury-system .hero-home h1,
body.v13-luxury-system .hero-title{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance!important;
}
body.v13-luxury-system .page-hero .hero-subtitle,
body.v13-luxury-system .hero-home .hero-subtitle,
body.v13-luxury-system .section-header p,
body.v13-luxury-system .card p,
body.v13-luxury-system .process-step p{
  overflow-wrap:break-word!important;
  text-wrap:pretty!important;
}
body.v13-luxury-system .v21-trust-section{
  padding-top:clamp(2.2rem,4vw,4.2rem)!important;
  padding-bottom:clamp(2.8rem,4.4vw,4.6rem)!important;
  margin-top:0!important;
}
body.v13-luxury-system .v21-trust-section .wrap{
  transform:none!important;
  padding-top:0!important;
}
body.v13-luxury-system .v21-stats-grid,
body.v13-luxury-system .v21-feature-grid{
  width:min(1120px,100%)!important;
  margin-inline:auto!important;
}
body.v13-luxury-system .v21-feature-grid{
  margin-top:1px!important;
}
body.v13-luxury-system .process-step-premium,
body.v13-luxury-system .card,
body.v13-luxury-system .image-library-card,
body.v13-luxury-system .industry-card,
body.v13-luxury-system .area-card{
  min-width:0!important;
  overflow:hidden!important;
}
body.v13-luxury-system .process-step-premium h3,
body.v13-luxury-system .card h3,
body.v13-luxury-system .image-library-card h3,
body.v13-luxury-system .industry-card h3{
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
}
body.v13-luxury-system img,
body.v13-luxury-system .card-media,
body.v13-luxury-system .image-library-media,
body.v13-luxury-system .image-frame,
body.v13-luxury-system .industry-photo,
body.v13-luxury-system .area-photo,
body.v13-luxury-system .service-visual{
  opacity:1!important;
  visibility:visible!important;
}
body.v13-luxury-system .image-library-grid,
body.v13-luxury-system .portfolio-grid,
body.v13-luxury-system .media-grid.three,
body.v13-luxury-system .v21-two-column-gallery{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(1.15rem,2.2vw,2rem)!important;
}
body.v13-luxury-system .image-library-media,
body.v13-luxury-system .portfolio-grid .card-media,
body.v13-luxury-system .media-grid.three .card-media{
  aspect-ratio:16/10!important;
}
body.v13-luxury-system .image-library-media img,
body.v13-luxury-system .portfolio-grid img,
body.v13-luxury-system .media-grid.three img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}
body.v13-luxury-system .site-footer,
body.v13-luxury-system footer{
  overflow:hidden!important;
}
body.v13-luxury-system .footer-grid,
body.v13-luxury-system .footer-main,
body.v13-luxury-system .footer-menu-grid{
  max-width:min(1280px,calc(100% - clamp(2rem,6vw,7rem)))!important;
  margin-inline:auto!important;
}
body.v13-luxury-system .footer-col,
body.v13-luxury-system .footer-brand-panel,
body.v13-luxury-system .footer-contact{
  min-width:0!important;
}
body.v13-luxury-system .footer-col a,
body.v13-luxury-system .footer-col p,
body.v13-luxury-system .footer-bottom{
  overflow-wrap:anywhere!important;
}
@media (max-width:1024px){
  body.v13-luxury-system{--kismet-hero-height:clamp(720px,88svh,880px);}
  body.v13-luxury-system .page-hero .hero-grid,
  body.v13-luxury-system .hero-home .hero-grid{
    padding-top:calc(var(--nav-h) + 3.4rem)!important;
    padding-bottom:3.6rem!important;
  }
}
@media (max-width:768px){
  body.v13-luxury-system{--kismet-hero-height:clamp(760px,94svh,920px);}
  body.v13-luxury-system .v21-stats-grid,
  body.v13-luxury-system .v21-feature-grid,
  body.v13-luxury-system .v21-process-grid,
  body.v13-luxury-system .image-library-grid,
  body.v13-luxury-system .portfolio-grid,
  body.v13-luxury-system .media-grid.three,
  body.v13-luxury-system .v21-two-column-gallery{
    grid-template-columns:1fr!important;
  }
  body.v13-luxury-system .v21-trust-section{padding-top:1.6rem!important;}
}
@media (max-width:480px){
  body.v13-luxury-system{--kismet-hero-height:820px;}
  body.v13-luxury-system .page-hero .hero-grid,
  body.v13-luxury-system .hero-home .hero-grid{
    padding-top:calc(var(--nav-h) + 2.35rem)!important;
    padding-bottom:2.6rem!important;
  }
  body.v13-luxury-system .page-hero h1,
  body.v13-luxury-system .hero-home h1,
  body.v13-luxury-system .hero-title{
    font-size:clamp(2.05rem,10.2vw,3.18rem)!important;
    line-height:.99!important;
    letter-spacing:.024em!important;
  }
  body.v13-luxury-system .hero-actions .btn{
    width:100%!important;
    min-height:52px!important;
  }
}
@media (min-width:1920px){
  body.v13-luxury-system{--kismet-hero-height:920px;}
  body.v13-luxury-system .wrap,
  body.v13-luxury-system .nav-shell{
    max-width:1760px!important;
  }
}

/* ========================================================================== 
   KISMET V23 — SENIOR PRECISION UX/UI AUDIT LAYER
   Purpose: final visual sizing, alignment, contrast and device-fit pass.
   Applied after V22 to stabilize every section across mobile, tablet, laptop,
   desktop, ultrawide and 4K without changing content order or brand identity.
   ========================================================================== */
html{overflow-x:hidden!important;scroll-padding-top:calc(var(--nav-h,86px) + 42px)!important;}
body.v23-precision-system{overflow-x:hidden!important;min-width:320px!important;background:#252525!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
body.v23-precision-system *{min-width:0;}
body.v23-precision-system :where(h1,h2,h3,h4,p,li,a,span,strong,small){overflow-wrap:break-word;word-break:normal;}
body.v23-precision-system :where(h1,h2,h3,.hero-title,.section-title){text-wrap:balance;hyphens:none;}
body.v23-precision-system :where(p,li,.hero-subtitle,.section-header p,.footer-summary){text-wrap:pretty;}
body.v23-precision-system :where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid rgba(159,49,43,.9)!important;outline-offset:4px!important;box-shadow:0 0 0 6px rgba(159,49,43,.18)!important;}
body.v23-precision-system .wrap,
body.v23-precision-system .nav-shell,
body.v23-precision-system .footer-v18 .footer-shell{width:min(1360px,calc(100% - clamp(1.5rem,5vw,7rem)))!important;margin-inline:auto!important;}
body.v23-precision-system .section{padding-block:clamp(4.75rem,7vw,7.5rem)!important;}
body.v23-precision-system .section-header{max-width:min(860px,100%)!important;margin-bottom:clamp(2rem,4vw,3.5rem)!important;}
body.v23-precision-system .section-header-center{margin-inline:auto!important;text-align:center!important;}
body.v23-precision-system .section-header h2{font-size:clamp(2.75rem,5.1vw,5.8rem)!important;line-height:.93!important;letter-spacing:.035em!important;max-width:14ch!important;margin-inline:auto!important;}
body.v23-precision-system .section-header:not(.section-header-center) h2{margin-inline:0!important;max-width:15ch!important;}
body.v23-precision-system .section-header p{font-size:clamp(1rem,1.2vw,1.18rem)!important;line-height:1.75!important;color:rgba(196,202,208,.82)!important;max-width:760px!important;}
body.v23-precision-system .eyebrow{font-size:clamp(.68rem,.8vw,.82rem)!important;letter-spacing:.22em!important;line-height:1.1!important;gap:.8rem!important;}
body.v23-precision-system .eyebrow::before{width:clamp(30px,3.2vw,46px)!important;flex:0 0 auto!important;}

/* Header: balanced sizing and anti-crowding rules */
body.v23-precision-system .alert-bar{min-height:34px!important;padding:.48rem 1rem!important;font-size:clamp(.72rem,.9vw,.9rem)!important;letter-spacing:.14em!important;text-align:center!important;}
body.v23-precision-system .site-header{top:34px!important;background:rgba(12,14,16,.92)!important;border-bottom:1px solid rgba(196,202,208,.08)!important;backdrop-filter:blur(16px)!important;}
body.v23-precision-system .site-header .nav-shell{min-height:78px!important;gap:clamp(.65rem,1.2vw,1.45rem)!important;}
body.v23-precision-system .brand-logo{width:clamp(162px,12vw,238px)!important;max-height:64px!important;object-fit:contain!important;}
body.v23-precision-system .desktop-nav{gap:clamp(.12rem,.35vw,.42rem)!important;margin-left:auto!important;}
body.v23-precision-system .desktop-nav a,
body.v23-precision-system .nav-dropdown-toggle{font-size:clamp(.76rem,.78vw,.92rem)!important;letter-spacing:.09em!important;padding:.78rem .78rem!important;min-height:44px!important;display:inline-flex!important;align-items:center!important;}
body.v23-precision-system .header-actions{gap:clamp(.55rem,1vw,1rem)!important;}
body.v23-precision-system .header-phone{font-size:clamp(.9rem,1vw,1.08rem)!important;}
body.v23-precision-system .header-actions .btn{min-height:50px!important;padding-inline:clamp(1.05rem,1.7vw,1.8rem)!important;white-space:nowrap!important;}

/* Hero system: one refined optical height and consistent information scale */
body.v23-precision-system{--v23-hero-height:clamp(660px,78svh,820px);--v23-hero-pad-top:calc(var(--nav-h,86px) + clamp(3.35rem,6svh,5.75rem));--v23-hero-pad-bottom:clamp(3.2rem,5.5svh,5.2rem);}
body.v23-precision-system .page-hero,
body.v23-precision-system .hero-home,
body.v23-precision-system .hero-pm,
body.v23-precision-system .hero-repairs,
body.v23-precision-system .hero-installations,
body.v23-precision-system .hero-emergency,
body.v23-precision-system .hero-willcall,
body.v23-precision-system .hero-about,
body.v23-precision-system .hero-portfolio,
body.v23-precision-system .hero-areas,
body.v23-precision-system .hero-contact,
body.v23-precision-system .hero-legal{min-height:var(--v23-hero-height)!important;height:auto!important;display:grid!important;overflow:hidden!important;}
body.v23-precision-system .page-hero .hero-grid,
body.v23-precision-system .hero-home .hero-grid{min-height:var(--v23-hero-height)!important;padding-top:var(--v23-hero-pad-top)!important;padding-bottom:var(--v23-hero-pad-bottom)!important;display:grid!important;align-items:center!important;grid-template-columns:minmax(0,1fr)!important;}
body.v23-precision-system .breadcrumb + .page-hero .hero-grid{padding-top:clamp(4.6rem,6vw,6.2rem)!important;padding-bottom:clamp(4.1rem,5vw,5.5rem)!important;}
body.v23-precision-system .page-hero h1,
body.v23-precision-system .hero-home h1,
body.v23-precision-system .hero-title{font-size:clamp(3.1rem,5.85vw,6.35rem)!important;line-height:.91!important;letter-spacing:.045em!important;max-width:min(1080px,100%)!important;margin:0!important;}
body.v23-precision-system .page-hero:not(.hero-home) h1{font-size:clamp(3rem,5.1vw,5.55rem)!important;max-width:980px!important;}
body.v23-precision-system .hero-subtitle{font-size:clamp(1rem,1.28vw,1.22rem)!important;line-height:1.72!important;max-width:min(760px,100%)!important;margin:clamp(1rem,2.2vw,1.55rem) 0 clamp(1.45rem,2.7vw,2.1rem)!important;color:rgba(244,245,247,.84)!important;}
body.v23-precision-system .hero-actions{gap:clamp(.8rem,1.3vw,1.05rem)!important;align-items:center!important;}
body.v23-precision-system .hero-actions .btn,
body.v23-precision-system .btn{min-height:clamp(50px,4.2vw,60px)!important;padding:clamp(.9rem,1vw,1.08rem) clamp(1.2rem,2.1vw,2.1rem)!important;font-size:clamp(.9rem,1vw,1.1rem)!important;letter-spacing:.12em!important;}
body.v23-precision-system .hero-symbol:not(.hero-symbol-corner),
body.v23-precision-system .hero-brand-symbol:not(.hero-symbol-corner){display:none!important;}
body.v23-precision-system .hero-symbol-corner,
body.v23-precision-system .page-hero::after{opacity:.045!important;}

/* Trust/info band: always separated, readable and never compressed */
body.v23-precision-system .v21-trust-section{padding-top:clamp(2.4rem,4vw,4rem)!important;padding-bottom:clamp(3.25rem,4.8vw,5rem)!important;margin-top:0!important;}
body.v23-precision-system .v21-trust-section .wrap{width:min(1160px,calc(100% - clamp(1.5rem,5vw,7rem)))!important;transform:none!important;padding-top:0!important;}
body.v23-precision-system .v21-stats-grid,
body.v23-precision-system .v21-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%!important;max-width:1160px!important;margin-inline:auto!important;}
body.v23-precision-system .v21-stats-grid div,
body.v23-precision-system .v21-feature-grid div{padding:clamp(1.3rem,2.2vw,2.15rem)!important;}
body.v23-precision-system .v21-stats-grid strong{font-size:clamp(2.3rem,3.8vw,3.85rem)!important;line-height:.9!important;}
body.v23-precision-system .v21-stats-grid span{font-size:clamp(.72rem,.9vw,.86rem)!important;letter-spacing:.18em!important;}
body.v23-precision-system .v21-feature-grid strong{font-size:clamp(.96rem,1vw,1.15rem)!important;line-height:1.15!important;}
body.v23-precision-system .v21-feature-grid span{font-size:clamp(.88rem,1vw,1.02rem)!important;line-height:1.66!important;}

/* Process cards: senior-grid proportions, contrast and scroll reveal stability */
body.v23-precision-system .v21-process-grid,
body.v23-precision-system .premium-process-grid{width:min(1180px,100%)!important;gap:clamp(1rem,2.1vw,1.85rem)!important;align-items:stretch!important;}
body.v23-precision-system .v21-process-grid .process-step-premium,
body.v23-precision-system .premium-process-grid .process-step-premium{min-height:clamp(350px,31vw,500px)!important;padding:clamp(2rem,3.2vw,3.75rem)!important;display:flex!important;justify-content:flex-end!important;gap:clamp(.9rem,1.4vw,1.25rem)!important;}
body.v23-precision-system .process-step-premium span{font-size:clamp(3.25rem,5.4vw,5.6rem)!important;line-height:.82!important;letter-spacing:.03em!important;margin-bottom:clamp(.65rem,1.3vw,1rem)!important;}
body.v23-precision-system .process-step-premium h3{font-size:clamp(2.1rem,3.3vw,3.45rem)!important;line-height:.95!important;letter-spacing:.03em!important;max-width:11ch!important;}
body.v23-precision-system .process-step-premium p{font-size:clamp(1rem,1.2vw,1.18rem)!important;line-height:1.7!important;max-width:30ch!important;color:rgba(244,245,247,.86)!important;}
body.v23-precision-system .process-step-premium::before{background-image:var(--step-bg)!important;background-size:cover!important;background-position:center!important;}
body.v23-precision-system .process-step-premium.is-visible::before{opacity:.72!important;transform:translateY(0) scale(1.015)!important;}

/* Premium carousel: five slides, centered controls and stable viewport */
body.v23-precision-system .v21-service-carousel{width:min(1320px,100%)!important;}
body.v23-precision-system .v21-service-carousel .carousel-shell{grid-template-columns:clamp(48px,5vw,68px) minmax(0,1fr) clamp(48px,5vw,68px)!important;align-items:center!important;gap:clamp(.65rem,1.5vw,1.4rem)!important;}
body.v23-precision-system .v21-service-carousel .carousel-control{width:clamp(46px,4.2vw,62px)!important;height:clamp(46px,4.2vw,62px)!important;display:grid!important;place-items:center!important;border-radius:50%!important;align-self:center!important;justify-self:center!important;}
body.v23-precision-system .v21-service-carousel .carousel-viewport{min-height:clamp(430px,46vw,650px)!important;}
body.v23-precision-system .v21-service-carousel .carousel-card{min-height:clamp(430px,46vw,650px)!important;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr)!important;padding:clamp(1.25rem,2.2vw,2.2rem)!important;gap:clamp(1.6rem,3.5vw,4.6rem)!important;}
body.v23-precision-system .v21-service-carousel .card-media{height:auto!important;min-height:0!important;aspect-ratio:1.08/1!important;margin:0!important;}
body.v23-precision-system .v21-service-carousel .card-body{padding:clamp(1rem,2vw,2.4rem)!important;}
body.v23-precision-system .v21-service-carousel h3{font-size:clamp(2.25rem,3.8vw,4rem)!important;line-height:.94!important;max-width:12ch!important;}
body.v23-precision-system .v21-service-carousel p{font-size:clamp(.98rem,1.12vw,1.14rem)!important;line-height:1.75!important;max-width:46ch!important;}
body.v23-precision-system .v21-carousel-dots{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:clamp(.9rem,2vw,1.5rem)!important;width:min(1080px,100%)!important;margin:clamp(1.4rem,2.6vw,2.1rem) auto 0!important;}
body.v23-precision-system .v21-carousel-dots .carousel-dot{text-align:left!important;min-height:72px!important;padding:.2rem 0!important;}
body.v23-precision-system .v21-carousel-dots .dot-number{font-size:clamp(1.05rem,1.4vw,1.35rem)!important;}
body.v23-precision-system .v21-carousel-dots .dot-label{font-size:clamp(.68rem,.86vw,.82rem)!important;line-height:1.2!important;letter-spacing:.08em!important;}
body.v23-precision-system .v21-carousel-dots .dot-line{height:2px!important;margin-top:.72rem!important;}

/* Will-call: preserve character while fixing legibility */
body.v23-precision-system .willcall-band{background:linear-gradient(135deg,rgba(238,242,245,.95),rgba(203,210,216,.94)),url('images/will-call/will-call-commercial-kitchen-parts-storage-service-kismet.webp') center/cover!important;color:#252525!important;padding-block:clamp(5rem,8vw,8rem)!important;}
body.v23-precision-system .willcall-band .split-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr)!important;gap:clamp(2.4rem,5vw,5.5rem)!important;align-items:center!important;}
body.v23-precision-system .willcall-band .eyebrow,
body.v23-precision-system .willcall-band .section-header h2,
body.v23-precision-system .willcall-band .section-header p,
body.v23-precision-system .willcall-band p{color:#252525!important;text-shadow:none!important;}
body.v23-precision-system .willcall-band .section-header h2{font-size:clamp(3rem,5.7vw,5.9rem)!important;line-height:.92!important;max-width:12ch!important;}
body.v23-precision-system .willcall-band .section-header p{font-size:clamp(1.02rem,1.2vw,1.16rem)!important;line-height:1.68!important;max-width:780px!important;color:rgba(37,37,37,.82)!important;}
body.v23-precision-system .willcall-band .willcall-proof{background:linear-gradient(180deg,rgba(255,255,255,.54),rgba(196,202,208,.46))!important;border:1px solid rgba(37,37,37,.24)!important;box-shadow:0 24px 70px rgba(37,37,37,.16)!important;color:#252525!important;padding:clamp(1.6rem,2.8vw,2.6rem)!important;}
body.v23-precision-system .willcall-band .willcall-proof strong{font-size:clamp(2rem,3.4vw,3.6rem)!important;line-height:.92!important;color:#252525!important;}
body.v23-precision-system .willcall-band .willcall-proof span{display:block!important;margin-top:.85rem!important;font-size:clamp(.82rem,1vw,1rem)!important;letter-spacing:.12em!important;color:#252525!important;}

/* Image galleries: exactly two visual columns when space allows */
body.v23-precision-system .v21-two-column-gallery,
body.v23-precision-system .media-grid.two,
body.v23-precision-system .image-duo,
body.v23-precision-system .gallery-duo{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(1rem,2vw,1.6rem)!important;align-items:stretch!important;}
body.v23-precision-system .v21-two-column-gallery :where(.image-frame,.card-media,.image-library-media),
body.v23-precision-system .media-grid.two :where(.image-frame,.card-media,.image-library-media){aspect-ratio:16/10!important;height:auto!important;min-height:0!important;}
body.v23-precision-system .v21-two-column-gallery img,
body.v23-precision-system .media-grid.two img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;}

/* Footer: compact, fully visible and stable on all screen widths */
body.v23-precision-system .footer-v18{padding-block:clamp(3.6rem,5.8vw,6rem) clamp(1.5rem,2.6vw,2.3rem)!important;}
body.v23-precision-system .footer-v18 .footer-shell{width:min(1240px,calc(100% - clamp(1.5rem,5vw,7rem)))!important;}
body.v23-precision-system .footer-v18 .footer-main{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:clamp(2rem,4.5vw,5rem)!important;}
body.v23-precision-system .footer-v18 .footer-brand{max-width:560px!important;}
body.v23-precision-system .footer-v18 .brand-logo-footer{max-width:300px!important;}
body.v23-precision-system .footer-v18 .footer-menu{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(1rem,2.2vw,2.3rem)!important;}
body.v23-precision-system .footer-v18 .footer-links a,
body.v23-precision-system .footer-v18 .footer-contact p{font-size:clamp(.88rem,1vw,1rem)!important;line-height:1.52!important;}
body.v23-precision-system .footer-v18 .footer-bottom{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important;}

/* Global media/card fit */
body.v23-precision-system img{max-width:100%!important;height:auto;}
body.v23-precision-system :where(.card,.industry-card,.area-card,.image-library-card,.portfolio-card,.contact-card,.info-panel){height:auto!important;min-width:0!important;}
body.v23-precision-system :where(.card-media,.industry-photo,.area-photo,.image-frame,.service-visual,.image-library-media){overflow:hidden!important;background:#1d1e20!important;}
body.v23-precision-system :where(.card-media,.industry-photo,.area-photo,.image-frame,.service-visual,.image-library-media) img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;}

@media (min-width:1920px){
  body.v23-precision-system{--v23-hero-height:clamp(760px,76svh,880px);}
  body.v23-precision-system .wrap,
  body.v23-precision-system .nav-shell{width:min(1560px,calc(100% - 10rem))!important;}
  body.v23-precision-system .page-hero h1,
  body.v23-precision-system .hero-home h1{font-size:clamp(5.2rem,4.9vw,6.9rem)!important;max-width:1220px!important;}
  body.v23-precision-system .section-header h2{font-size:clamp(4.3rem,4vw,6.15rem)!important;}
}
@media (min-width:2560px){
  body.v23-precision-system{--v23-hero-height:900px;}
  body.v23-precision-system .wrap,
  body.v23-precision-system .nav-shell{width:min(1760px,calc(100% - 14rem))!important;}
  body.v23-precision-system .page-hero h1,
  body.v23-precision-system .hero-home h1{font-size:7.05rem!important;}
  body.v23-precision-system .v21-trust-section .wrap{max-width:1280px!important;}
}
@media (max-width:1320px){
  body.v23-precision-system .header-phone{display:none!important;}
  body.v23-precision-system .header-actions .btn{padding-inline:1.15rem!important;}
}
@media (max-width:1180px){
  body.v23-precision-system{--v23-hero-height:clamp(630px,78svh,800px);}
  body.v23-precision-system .desktop-nav,
  body.v23-precision-system .header-actions{display:none!important;}
  body.v23-precision-system .menu-toggle{display:inline-flex!important;margin-left:auto!important;}
  body.v23-precision-system .brand-logo{width:clamp(158px,22vw,230px)!important;}
  body.v23-precision-system .page-hero h1,
  body.v23-precision-system .hero-home h1{font-size:clamp(3rem,7.2vw,5.45rem)!important;max-width:940px!important;}
  body.v23-precision-system .v21-stats-grid,
  body.v23-precision-system .v21-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body.v23-precision-system .footer-v18 .footer-main{grid-template-columns:1fr!important;}
  body.v23-precision-system .footer-v18 .footer-brand{max-width:760px!important;}
}
@media (max-width:900px){
  body.v23-precision-system{--v23-hero-height:auto;}
  body.v23-precision-system .site-header .nav-shell{min-height:72px!important;}
  body.v23-precision-system .page-hero,
  body.v23-precision-system .hero-home{min-height:auto!important;}
  body.v23-precision-system .page-hero .hero-grid,
  body.v23-precision-system .hero-home .hero-grid{min-height:auto!important;padding-top:calc(var(--nav-h,86px) + 3.4rem)!important;padding-bottom:4rem!important;}
  body.v23-precision-system .page-hero h1,
  body.v23-precision-system .hero-home h1{font-size:clamp(2.75rem,9.4vw,4.8rem)!important;line-height:.94!important;letter-spacing:.035em!important;}
  body.v23-precision-system .hero-subtitle{max-width:660px!important;}
  body.v23-precision-system .split-grid,
  body.v23-precision-system .willcall-band .split-grid{grid-template-columns:1fr!important;}
  body.v23-precision-system .v21-process-grid,
  body.v23-precision-system .premium-process-grid{grid-template-columns:1fr!important;}
  body.v23-precision-system .v21-process-grid .process-step-premium,
  body.v23-precision-system .premium-process-grid .process-step-premium{min-height:360px!important;}
  body.v23-precision-system .v21-service-carousel .carousel-shell{grid-template-columns:1fr!important;}
  body.v23-precision-system .v21-service-carousel .carousel-control{position:static!important;display:inline-grid!important;}
  body.v23-precision-system .v21-service-carousel .carousel-prev{grid-row:2!important;justify-self:start!important;margin-top:1rem!important;}
  body.v23-precision-system .v21-service-carousel .carousel-next{grid-row:2!important;justify-self:end!important;margin-top:-62px!important;}
  body.v23-precision-system .v21-service-carousel .carousel-card{grid-template-columns:1fr!important;min-height:0!important;}
  body.v23-precision-system .v21-service-carousel .card-media{aspect-ratio:16/10!important;}
  body.v23-precision-system .v21-carousel-dots{grid-template-columns:repeat(5,minmax(126px,1fr))!important;overflow-x:auto!important;scroll-snap-type:x proximity!important;padding-bottom:.6rem!important;}
  body.v23-precision-system .v21-carousel-dots .carousel-dot{scroll-snap-align:start!important;}
  body.v23-precision-system .v21-two-column-gallery,
  body.v23-precision-system .media-grid.two,
  body.v23-precision-system .image-duo,
  body.v23-precision-system .gallery-duo{grid-template-columns:1fr!important;}
}
@media (max-width:640px){
  body.v23-precision-system .wrap,
  body.v23-precision-system .nav-shell,
  body.v23-precision-system .footer-v18 .footer-shell{width:min(100% - 1.35rem,100%)!important;}
  body.v23-precision-system .alert-bar{font-size:.68rem!important;letter-spacing:.1em!important;line-height:1.25!important;}
  body.v23-precision-system .site-header{top:34px!important;}
  body.v23-precision-system .brand-logo{width:clamp(138px,47vw,190px)!important;}
  body.v23-precision-system .page-hero .hero-grid,
  body.v23-precision-system .hero-home .hero-grid{padding-top:calc(var(--nav-h,86px) + 2.55rem)!important;padding-bottom:3.4rem!important;}
  body.v23-precision-system .page-hero h1,
  body.v23-precision-system .hero-home h1{font-size:clamp(2.35rem,12vw,3.55rem)!important;line-height:.98!important;letter-spacing:.025em!important;}
  body.v23-precision-system .hero-subtitle{font-size:1rem!important;line-height:1.65!important;}
  body.v23-precision-system .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:.85rem!important;}
  body.v23-precision-system .hero-actions .btn{width:100%!important;min-height:54px!important;}
  body.v23-precision-system .section{padding-block:clamp(3.6rem,13vw,5.1rem)!important;}
  body.v23-precision-system .section-header h2{font-size:clamp(2.25rem,10.8vw,3.5rem)!important;line-height:.98!important;}
  body.v23-precision-system .v21-stats-grid,
  body.v23-precision-system .v21-feature-grid{grid-template-columns:1fr!important;}
  body.v23-precision-system .v21-stats-grid div,
  body.v23-precision-system .v21-feature-grid div{padding:1.25rem!important;}
  body.v23-precision-system .process-step-premium span{font-size:3rem!important;}
  body.v23-precision-system .process-step-premium h3{font-size:2rem!important;max-width:12ch!important;}
  body.v23-precision-system .v21-service-carousel .carousel-card{padding:1rem!important;gap:1.15rem!important;}
  body.v23-precision-system .v21-service-carousel .card-body{padding:.5rem .25rem 1rem!important;}
  body.v23-precision-system .v21-service-carousel h3{font-size:clamp(2rem,10vw,2.8rem)!important;}
  body.v23-precision-system .willcall-band .section-header h2{font-size:clamp(2.4rem,11vw,3.55rem)!important;}
  body.v23-precision-system .footer-v18 .footer-menu{grid-template-columns:1fr!important;gap:1.6rem!important;}
  body.v23-precision-system .footer-v18 .footer-bottom{display:grid!important;grid-template-columns:1fr!important;align-items:start!important;}
}
@media (max-width:380px){
  body.v23-precision-system .brand-logo{width:136px!important;}
  body.v23-precision-system .page-hero h1,
  body.v23-precision-system .hero-home h1{font-size:clamp(2.05rem,12.6vw,2.85rem)!important;letter-spacing:.02em!important;}
  body.v23-precision-system .hero-subtitle{font-size:.95rem!important;}
  body.v23-precision-system .btn{font-size:.84rem!important;letter-spacing:.1em!important;padding-inline:.95rem!important;}
  body.v23-precision-system .v21-process-grid .process-step-premium,
  body.v23-precision-system .premium-process-grid .process-step-premium{min-height:320px!important;padding:1.35rem!important;}
}
@media (prefers-reduced-motion:reduce){
  body.v23-precision-system *,
  body.v23-precision-system *::before,
  body.v23-precision-system *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}

/* V23 hotfix: actual ribbon class and mobile toggle parent visibility */
body.v23-precision-system .emergency-ribbon{min-height:34px!important;padding:.48rem 1rem!important;font-size:clamp(.72rem,.9vw,.9rem)!important;letter-spacing:.14em!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important;}
body.v23-precision-system .emergency-ribbon a{line-height:1.2!important;}
@media (max-width:1180px){
  body.v23-precision-system .header-actions{display:flex!important;margin-left:auto!important;}
  body.v23-precision-system .header-actions .header-phone,
  body.v23-precision-system .header-actions .btn{display:none!important;}
  body.v23-precision-system .menu-toggle{display:inline-flex!important;}
}
@media (max-width:640px){body.v23-precision-system .emergency-ribbon{font-size:.68rem!important;letter-spacing:.1em!important;line-height:1.25!important;}}


/* =========================================================
   V24 — Hover Image Reveal for PM Process Cards
   Goal: images appear clearly when the user passes the mouse over each card,
   while keeping text readable and the grid refined across devices.
   ========================================================= */
body.v24-hover-image-system .process-step-premium,
body.v24-hover-image-system .v21-process-grid .process-step-premium{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  cursor:pointer !important;
  background:
    linear-gradient(180deg,rgba(18,19,20,.98),rgba(34,35,36,.96)) !important;
  border-color:rgba(196,202,208,.22) !important;
}

body.v24-hover-image-system .v21-process-grid .process-step-premium::before,
body.v24-hover-image-system .process-step-premium::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
  opacity:0 !important;
  background-image:var(--step-bg) !important;
  background-size:cover !important;
  background-position:center !important;
  transform:scale(1.08) translateY(18px) !important;
  filter:brightness(.44) contrast(1.14) saturate(.95) blur(.2px) !important;
  transition:
    opacity 760ms cubic-bezier(.22,1,.36,1),
    transform 1050ms cubic-bezier(.22,1,.36,1),
    filter 900ms cubic-bezier(.22,1,.36,1) !important;
  will-change:opacity,transform,filter !important;
}

body.v24-hover-image-system .v21-process-grid .process-step-premium::after,
body.v24-hover-image-system .process-step-premium::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1 !important;
  opacity:1 !important;
  background:
    linear-gradient(90deg,rgba(159,49,43,.62) 0 2px,transparent 2px 100%),
    radial-gradient(circle at 12% 18%,rgba(159,49,43,.10),transparent 30%),
    linear-gradient(180deg,rgba(13,14,15,.96) 0%,rgba(22,23,24,.94) 56%,rgba(14,15,16,.98) 100%) !important;
  transition:
    background 760ms cubic-bezier(.22,1,.36,1),
    opacity 760ms cubic-bezier(.22,1,.36,1) !important;
}

body.v24-hover-image-system .v21-process-grid .process-step-premium:hover::before,
body.v24-hover-image-system .v21-process-grid .process-step-premium:focus-visible::before,
body.v24-hover-image-system .v21-process-grid .process-step-premium:focus-within::before,
body.v24-hover-image-system .process-step-premium:hover::before,
body.v24-hover-image-system .process-step-premium:focus-visible::before,
body.v24-hover-image-system .process-step-premium:focus-within::before{
  opacity:.86 !important;
  transform:scale(1.015) translateY(0) !important;
  filter:brightness(.60) contrast(1.10) saturate(1.05) blur(0) !important;
}

body.v24-hover-image-system .v21-process-grid .process-step-premium:hover::after,
body.v24-hover-image-system .v21-process-grid .process-step-premium:focus-visible::after,
body.v24-hover-image-system .v21-process-grid .process-step-premium:focus-within::after,
body.v24-hover-image-system .process-step-premium:hover::after,
body.v24-hover-image-system .process-step-premium:focus-visible::after,
body.v24-hover-image-system .process-step-premium:focus-within::after{
  background:
    linear-gradient(90deg,rgba(159,49,43,.78) 0 3px,transparent 3px 100%),
    linear-gradient(180deg,rgba(9,10,11,.30) 0%,rgba(11,12,13,.48) 45%,rgba(10,11,12,.92) 100%),
    radial-gradient(circle at 15% 18%,rgba(159,49,43,.20),transparent 34%) !important;
}

body.v24-hover-image-system .process-step-premium span,
body.v24-hover-image-system .process-step-premium h3,
body.v24-hover-image-system .process-step-premium p{
  position:relative !important;
  z-index:2 !important;
  transition:
    transform 420ms cubic-bezier(.22,1,.36,1),
    color 420ms cubic-bezier(.22,1,.36,1),
    text-shadow 420ms cubic-bezier(.22,1,.36,1) !important;
}

body.v24-hover-image-system .process-step-premium:hover span,
body.v24-hover-image-system .process-step-premium:hover h3,
body.v24-hover-image-system .process-step-premium:hover p,
body.v24-hover-image-system .process-step-premium:focus-visible span,
body.v24-hover-image-system .process-step-premium:focus-visible h3,
body.v24-hover-image-system .process-step-premium:focus-visible p{
  transform:translateY(-4px) !important;
  text-shadow:0 18px 45px rgba(0,0,0,.72) !important;
}

body.v24-hover-image-system .process-step-premium:hover p,
body.v24-hover-image-system .process-step-premium:focus-visible p{
  color:rgba(255,255,255,.96) !important;
}

body.v24-hover-image-system .process-step-premium:focus-visible{
  outline:2px solid rgba(159,49,43,.86) !important;
  outline-offset:4px !important;
}

/* Touch devices do not have true hover; keep the images visible enough by default. */
@media (hover:none), (pointer:coarse){
  body.v24-hover-image-system .v21-process-grid .process-step-premium::before,
  body.v24-hover-image-system .process-step-premium::before{
    opacity:.55 !important;
    transform:scale(1.03) translateY(0) !important;
    filter:brightness(.48) contrast(1.10) saturate(1) !important;
  }
  body.v24-hover-image-system .process-step-premium::after{
    background:
      linear-gradient(90deg,rgba(159,49,43,.70) 0 2px,transparent 2px 100%),
      linear-gradient(180deg,rgba(10,11,12,.42) 0%,rgba(15,16,17,.62) 48%,rgba(10,11,12,.95) 100%) !important;
  }
}

@media (prefers-reduced-motion: reduce){
  body.v24-hover-image-system .process-step-premium::before,
  body.v24-hover-image-system .process-step-premium::after,
  body.v24-hover-image-system .process-step-premium span,
  body.v24-hover-image-system .process-step-premium h3,
  body.v24-hover-image-system .process-step-premium p{
    transition:none !important;
  }
}

/* V24 specificity guard: scroll reveal must not expose these images before hover on desktop. */
body.v24-hover-image-system.v13-luxury-system .v21-process-grid .process-step-premium.is-visible::before{
  opacity:0 !important;
  transform:scale(1.08) translateY(18px) !important;
  filter:brightness(.44) contrast(1.14) saturate(.95) blur(.2px) !important;
}
body.v24-hover-image-system.v13-luxury-system .v21-process-grid .process-step-premium.is-visible:hover::before,
body.v24-hover-image-system.v13-luxury-system .v21-process-grid .process-step-premium.is-visible:focus-visible::before,
body.v24-hover-image-system.v13-luxury-system .v21-process-grid .process-step-premium.is-visible:focus-within::before{
  opacity:.86 !important;
  transform:scale(1.015) translateY(0) !important;
  filter:brightness(.60) contrast(1.10) saturate(1.05) blur(0) !important;
}
@media (hover:none), (pointer:coarse){
  body.v24-hover-image-system.v13-luxury-system .v21-process-grid .process-step-premium.is-visible::before{
    opacity:.55 !important;
    transform:scale(1.03) translateY(0) !important;
    filter:brightness(.48) contrast(1.10) saturate(1) !important;
  }
}

/* =========================================================
   V25 — SEO/AIO WebP hover images for PM process cards
   Real <img> elements are used for indexing, accessibility and
   stable rendering while preserving the refined hover reveal.
   ========================================================= */
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo{
  overflow:hidden !important;
  background:linear-gradient(180deg,rgba(12,13,14,.99),rgba(21,22,23,.97)) !important;
}
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo::before{
  background-image:none !important;
  opacity:0 !important;
}
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo .process-step-media{
  position:absolute !important;
  inset:0 !important;
  z-index:-2 !important;
  margin:0 !important;
  opacity:0 !important;
  transform:scale(1.075) translateY(18px) !important;
  filter:brightness(.46) contrast(1.16) saturate(.98) blur(.2px) !important;
  transition:opacity 760ms cubic-bezier(.22,1,.36,1),transform 1050ms cubic-bezier(.22,1,.36,1),filter 900ms cubic-bezier(.22,1,.36,1) !important;
  will-change:opacity,transform,filter !important;
  pointer-events:none !important;
}
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo .process-step-media img{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
}
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo:hover .process-step-media,
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo:focus-visible .process-step-media,
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo:focus-within .process-step-media,
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo.is-visible:hover .process-step-media,
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo.is-visible:focus-visible .process-step-media{
  opacity:.9 !important;
  transform:scale(1.015) translateY(0) !important;
  filter:brightness(.62) contrast(1.12) saturate(1.05) blur(0) !important;
}
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo::after{
  background:
    linear-gradient(90deg,rgba(159,49,43,.62) 0 2px,transparent 2px 100%),
    radial-gradient(circle at 14% 18%,rgba(159,49,43,.13),transparent 30%),
    linear-gradient(180deg,rgba(10,11,12,.96) 0%,rgba(16,17,18,.94) 54%,rgba(9,10,11,.98) 100%) !important;
}
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo:hover::after,
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo:focus-visible::after,
body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo:focus-within::after{
  background:
    linear-gradient(90deg,rgba(159,49,43,.78) 0 3px,transparent 3px 100%),
    linear-gradient(180deg,rgba(8,9,10,.24) 0%,rgba(9,10,11,.52) 45%,rgba(8,9,10,.93) 100%),
    radial-gradient(circle at 15% 18%,rgba(159,49,43,.22),transparent 34%) !important;
}
@media (hover:none), (pointer:coarse){
  body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo .process-step-media{
    opacity:.58 !important;
    transform:scale(1.03) translateY(0) !important;
    filter:brightness(.50) contrast(1.12) saturate(1) !important;
  }
  body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo::after{
    background:
      linear-gradient(90deg,rgba(159,49,43,.70) 0 2px,transparent 2px 100%),
      linear-gradient(180deg,rgba(8,9,10,.44) 0%,rgba(12,13,14,.65) 48%,rgba(8,9,10,.95) 100%) !important;
  }
}
@media (prefers-reduced-motion:reduce){
  body.v25-seo-hover-image-system .process-step-premium.has-hover-image-seo .process-step-media{
    transition:none !important;
  }
}
