:root{--ink:#101216;--ink2:#191c21;--cream:#f5f4f0;--paper:#fff;--gold:#b89b4d;--muted:#70757a;--max:1440px;--gutter:clamp(28px,6vw,104px)}*{box-sizing:border-box}html{background:var(--ink);color-scheme:dark;scroll-behavior:smooth;scroll-padding-top:90px;overflow-x:hidden}body{margin:0;max-width:100%;overflow-x:hidden;background:var(--ink);color:#fff;font:400 16px/1.6 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid #e6c87c;outline-offset:4px}button{font:inherit}.container{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.052em;line-height:1.17}h2{font-size:clamp(36px,4.4vw,66px);font-weight:700}.dark-section{background:var(--ink);color:#fff;color-scheme:dark}.light-section{background:var(--cream);color:var(--ink);color-scheme:light}.section-pad{padding-block:clamp(88px,10vw,150px)}.muted{color:#909496}.skip-link{position:absolute;top:-70px;left:14px;z-index:100;background:#fff;color:#111;padding:12px}.skip-link:focus{top:12px}.site-header{color:#fff}.header-inner{height:98px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.13)}.brand-image{display:inline-flex;align-items:center;flex-shrink:0}.brand-image img{display:block;width:auto;height:42px;max-width:160px}.navigation{display:flex;align-items:center;gap:clamp(20px,2.6vw,46px);font-size:13px;font-weight:600}.navigation>a{transition:color .2s}.navigation>a:hover{color:#d8c18a}.nav-contact{padding:12px 19px;border:1px solid rgba(184,155,77,.4);border-radius:10px;background:rgba(255,255,255,.06);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav-contact:hover{background:rgba(184,155,77,.1)}.menu-toggle{display:none}.hero{position:relative;overflow:hidden;isolation:isolate;min-height:750px;background:var(--ink)}.hero-grid{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:100px 100px;mask-image:linear-gradient(90deg,transparent 10%,#000 100%)}.orb{position:absolute;z-index:-1;pointer-events:none;width:390px;height:390px;border-radius:50%;filter:blur(90px);opacity:.12}.orb-one{right:8%;top:15%;background:var(--gold)}.orb-two{right:-15%;bottom:-25%;background:#798797}.hero-layout{position:relative;display:grid;grid-template-columns:1.12fr .88fr;align-items:center;min-height:750px;padding-top:125px;padding-bottom:100px}.hero-copy{position:relative;z-index:2}.eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:34px;color:#d8bd79;font-size:11px;font-weight:700;letter-spacing:.19em}.eyebrow-dark{color:#8c7538}.eyebrow-line{width:28px;height:1px;background:var(--gold)}.hero h1{font-size:clamp(50px,5.2vw,84px);font-weight:700;margin-bottom:27px}.hero h1 em,.contact h2 em{font-style:normal;color:var(--gold)}.hero-intro{max-width:490px;font-size:15px;line-height:1.85;color:#b5bbc3;margin-bottom:34px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.hero-actions .button-gold,.hero-actions .text-link{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:16px 27px;border-radius:14px;font-size:13px;font-weight:700;text-align:center;letter-spacing:.01em;position:relative;overflow:hidden;text-decoration:none;-webkit-backdrop-filter:blur(38px) saturate(155%) brightness(1.22);backdrop-filter:blur(38px) saturate(155%) brightness(1.22);background:rgba(42,45,52,.27);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 28px rgba(0,0,0,.22);transition:background .18s,border-color .18s,transform .18s}.hero-actions .button-gold{border:1px solid rgba(184,155,77,.7);color:#fff}.hero-actions .text-link{border:1px solid rgba(255,255,255,.3);color:#fff}.hero-actions .button-gold:before,.hero-actions .text-link:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(165deg,rgba(255,255,255,.15),transparent 70%)}.hero-actions a:hover{background:rgba(72,77,88,.3);transform:translateY(-2px)}.hero-art{position:relative;width:min(100%,530px);aspect-ratio:1;justify-self:center;filter:drop-shadow(0 0 45px rgba(184,155,77,.1))}.ring,.axis,.core,.core-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%}.ring{border:1px solid rgba(184,155,77,.35)}.ring-outer{width:97%;height:97%;border-style:dashed;animation:spin 65s linear infinite}.ring-middle{width:75%;height:75%;border-color:rgba(205,215,220,.45);animation:pulse 5s ease-in-out infinite}.ring-inner{width:51%;height:51%;border-color:rgba(184,155,77,.55)}.axis{width:92%;height:39%;border:1px solid rgba(190,197,203,.35);transform:translate(-50%,-50%) rotate(-35deg)}.axis-b{transform:translate(-50%,-50%) rotate(40deg);border-color:rgba(184,155,77,.5)}.axis-c{transform:translate(-50%,-50%) rotate(90deg);border-color:rgba(190,197,203,.17)}.core{width:19%;height:19%;background:radial-gradient(circle at 38% 30%,#d7c38e,#8b7135 38%,#27272a 69%,#111);box-shadow:0 0 70px rgba(184,155,77,.2)}.core-glow{width:31%;height:31%;border:1px solid rgba(184,155,77,.2)}.art-label{position:absolute;font-size:9px;letter-spacing:.18em;color:#8c9299}.art-label-top{top:5%;right:-3%}.art-label-bottom{bottom:4%;left:0}.hero-bottom{position:absolute;bottom:28px;left:0;right:0;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.16em;color:#81858a}.intro-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:10%}.intro h2,.section-heading h2,.ecosystem h2{font-size:clamp(36px,4.25vw,66px)}.intro-right{padding-top:35px;max-width:450px}.intro-right p,.ecosystem-layout p{color:#555b5f;font-size:15px;line-height:1.9;margin-bottom:20px}.inline-link{display:inline-flex;align-items:center;justify-content:center;margin-top:14px;padding:14px 22px;border:1px solid #c7c5bf;border-radius:11px;background:rgba(255,255,255,.8);font-size:13px;font-weight:700;text-decoration:none;box-shadow:0 6px 22px rgba(16,18,22,.035);transition:border-color .2s,transform .2s,box-shadow .2s}.inline-link:hover{border-color:var(--gold);box-shadow:0 10px 25px rgba(16,18,22,.07);transform:translateY(-2px)}.expertise{padding-top:20px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading>p{max-width:240px;line-height:1.7;font-size:13px;color:#71767b;margin-bottom:6px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.service-card{display:grid;grid-template-rows:18px 110px minmax(0,1fr);align-content:stretch;gap:18px;min-height:340px;padding:26px 24px;background:#fff;border:1px solid #e0dfda;border-radius:10px;box-shadow:0 2px 9px rgba(15,19,23,.018);transition:transform .25s,border-color .25s,box-shadow .25s}.service-card:hover{transform:translateY(-4px);border-color:#c6b78a;box-shadow:0 16px 38px rgba(16,18,22,.08)}.service-card:focus-visible{outline:2px solid var(--gold)}.card-head{color:#92979a;font-size:11px}.service-symbol{width:98px;height:98px;margin:auto;display:grid;place-items:center}.service-symbol svg{width:96px;height:96px;fill:none;stroke:#ad913f;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service-symbol svg .dot{fill:#ad913f;stroke:none}.service-card h3{font-size:18px;line-height:1.3;margin-bottom:12px}.service-card p{margin-bottom:0;font-size:12px;line-height:1.85;color:#696f74}.statement{overflow:hidden}.statement h2{font-size:clamp(39px,5.2vw,80px);max-width:950px;margin-bottom:35px}.statement h2 span{color:var(--gold)}.statement-layout>p:last-of-type{max-width:530px;color:#b2b7bd;line-height:1.9}.statement-track{display:flex;gap:12px;margin-top:60px}.statement-track span{height:2px;background:#4c4e52;flex:1}.statement-track span:first-child{background:var(--gold)}.ecosystem-layout{display:grid;grid-template-columns:1fr .65fr;gap:12%;align-items:start}.ecosystem-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:25px;max-width:470px}.ecosystem-tags span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:11px 12px;border:1px solid #d5d4cf;border-radius:7px;font-size:12px;font-weight:600;text-align:center;white-space:normal}.contact{background:#191c21}.contact-layout{display:flex;justify-content:flex-start;align-items:center;gap:clamp(30px,4.5vw,72px)}.contact h2{font-size:clamp(44px,6vw,90px);margin-bottom:0}.ui-arrow{display:inline-block;width:.72em;height:.72em;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;position:relative;transform:translateY(.08em)}.ui-arrow:after{content:"";position:absolute;width:1.08em;height:1.5px;background:currentColor;right:-.06em;top:-.04em;transform-origin:right center;transform:rotate(-45deg)}.site-footer{background:var(--ink);color:#fff;padding:38px 0 28px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:25px;color:#adb1b8;font-size:11px;flex-wrap:wrap}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes pulse{50%{opacity:.45}}@media(max-width:1100px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:320px}.hero-layout{grid-template-columns:1fr}.hero-copy{z-index:2}.hero-art{position:absolute;right:-7%;width:50%;opacity:.65}.hero h1{max-width:730px}}@media(max-width:700px){:root{--gutter:clamp(26px,7vw,40px)}.header-inner{height:77px}.brand-image img{height:36px;max-width:146px}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;position:relative;z-index:30;width:44px;height:44px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.4);border-radius:9px;cursor:pointer}.menu-toggle span{display:block;width:19px;height:2px;background:#fff;border-radius:2px;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.navigation{position:absolute;top:calc(100% - 1px);left:16px;right:16px;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px 16px 18px;background:#1b1e23;border:1px solid #3c4147;border-radius:12px;box-shadow:0 25px 55px rgba(0,0,0,.35);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-9px);transition:opacity .2s,transform .2s,visibility .2s}.navigation.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.navigation a{padding:13px 10px;color:#f4f4f4;font-size:14px;border-bottom:1px solid rgba(255,255,255,.08)}.navigation a:last-child{border:0}.navigation .nav-contact{margin-top:10px;padding:14px 15px;min-height:51px;color:#dec482;background:rgba(255,255,255,.065);border:1px solid rgba(184,155,77,.36);border-radius:10px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hero,.hero-layout{min-height:750px}.hero-layout{padding-top:145px;padding-bottom:105px;align-items:start}.hero h1{font-size:clamp(40px,10vw,58px)}.hero-intro{max-width:360px}.hero-art{width:80%;right:-22%;top:400px;opacity:.4}.hero-actions{flex-direction:column;align-items:stretch;max-width:100%;gap:12px}.hero-actions .button-gold,.hero-actions .text-link{width:100%;min-width:0}.hero-bottom{bottom:27px;justify-content:flex-end}.hero-bottom span:first-child{display:none}.eyebrow{font-size:10px}.intro-layout,.ecosystem-layout{grid-template-columns:1fr;gap:30px}.intro-right{padding-top:0}.section-heading{display:block}.section-heading>p{margin-top:20px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:310px;padding:20px 17px}.service-card h3{font-size:15px}.service-card p{font-size:11px}.service-symbol,.service-symbol svg{width:76px;height:76px}.statement h2,.contact h2{font-size:clamp(37px,8.5vw,55px)}.section-pad{padding-block:80px}.expertise{padding-top:12px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:13px}}@media(max-width:420px){.service-grid{grid-template-columns:1fr}.service-card{min-height:250px}.hero-art{top:410px}.contact h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* L::eS precision scrollbar — subtle translucent carbon / champagne */
:root {
  scrollbar-width: thin;
  scrollbar-color: rgba(184,155,77,.58) rgba(16,18,22,.16);
}
::-webkit-scrollbar { width: 7px; height: 7px; }
::-webkit-scrollbar-track { background: rgba(16,18,22,.08); }
::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg,rgba(214,193,137,.64),rgba(184,155,77,.38));
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
}
::-webkit-scrollbar-thumb:hover { background: rgba(184,155,77,.8); }
::-webkit-scrollbar-corner { background: transparent; }

/* Footer rhythm: compact enterprise closing section */
.site-footer{padding-top:30px;padding-bottom:24px}



.footer-bottom{padding-top:19px;gap:14px}
@media(max-width:700px){
 .site-footer{padding-top:32px;padding-bottom:32px}
 
 
 .footer-bottom{gap:10px;padding-top:22px}
 
}

/* Footer: enterprise information architecture */

.footer-main{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.7fr);gap:clamp(30px,5vw,96px);padding-top:58px;padding-bottom:58px}
.footer-brand .brand-image img{height:40px;max-width:160px}
.footer-claim{margin:20px 0 28px;letter-spacing:.18em;font-size:11px;font-weight:700;color:#b89b4d}
.footer-mail{color:#cdd0d5;font-size:14px}
.footer-column a:hover{color:#ddc486}
.footer-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.5vw,50px)}
.footer-column{display:flex;flex-direction:column;gap:13px}
.footer-column h3{font:700 13px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.05em;margin:0 0 6px;color:#f4f4f5}
.footer-column a{width:fit-content;font-size:13px;line-height:1.55;color:#b9bec5;transition:color .2s}
.site-footer .footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:24px;padding-bottom:5px;font-size:11px;color:#a7adb6}
@media(max-width:1000px){.footer-main{grid-template-columns:minmax(0,.75fr) minmax(0,1.8fr);gap:clamp(28px,4vw,58px)}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(20px,3vw,40px);row-gap:36px}.footer-column:nth-child(1){grid-column:1;grid-row:1}.footer-column:nth-child(2){grid-column:1;grid-row:2}.footer-column:nth-child(3){grid-column:2;grid-row:1}}
@media(max-width:700px){.footer-main{grid-template-columns:1fr;gap:46px;padding-top:50px;padding-bottom:46px}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(18px,5vw,28px);row-gap:44px}.footer-column a{font-size:13px}.footer-brand .brand-image img{height:32px;max-width:132px}.site-footer .footer-bottom{gap:8px}}
@media(max-width:360px){.footer-nav{column-gap:16px}}

/* Contact call-to-action: clear enterprise glass control, no decorative arrow */
.contact-button{width:auto;height:auto;min-height:56px;padding:17px 30px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(184,155,77,.64);border-radius:14px;color:#fff;font-size:14px;font-weight:700;background:rgba(51,55,63,.30);-webkit-backdrop-filter:blur(24px) saturate(150%);backdrop-filter:blur(24px) saturate(150%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 12px 28px rgba(0,0,0,.24);transition:background .2s,border-color .2s,transform .2s}
.contact-button:hover{background:rgba(74,78,86,.4);border-color:#d3b975;transform:translateY(-2px)}
@media(max-width:700px){.contact-layout{align-items:flex-start;flex-direction:column;gap:30px}.contact-button{min-height:54px;width:auto;padding:16px 27px}}

/* L::eS scroll-to-top control — fixed frosted glass, slide in from right */
.scroll-top{position:fixed;z-index:40;right:clamp(18px,3vw,42px);bottom:calc(26px + env(safe-area-inset-bottom,0px));width:52px;height:52px;display:grid;place-items:center;padding:0;color:#f7f7f7;background:rgba(35,39,46,.48);border:1px solid rgba(184,155,77,.55);border-radius:15px;-webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%);box-shadow:inset 0 1px rgba(255,255,255,.16),0 12px 32px rgba(0,0,0,.27);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(calc(100% + 54px));transition:transform .35s cubic-bezier(.22,1,.36,1),opacity .28s,visibility .28s,background .2s}
.scroll-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0)}
.scroll-top svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.scroll-top:hover{background:rgba(78,81,88,.53);border-color:#d7be81}
.scroll-top:active{transform:scale(.96)}
@media(max-width:700px){.scroll-top{right:18px;bottom:calc(92px + env(safe-area-inset-bottom,0px));width:46px;height:46px;border-radius:13px}}
@media(prefers-reduced-motion:reduce){.scroll-top{transition:none}.scroll-top:active{transform:none}}

/* Distinct light-surface CTA: enterprise carbon glass rather than invisible white */
.intro .inline-link{
 min-height:55px;
 padding:16px 25px;
 background:linear-gradient(160deg,#30343b,#181b20);
 color:#fff;
 border:1px solid rgba(184,155,77,.5);
 border-radius:12px;
 font-size:14px;
 font-weight:700;
 box-shadow:inset 0 1px rgba(255,255,255,.19),0 12px 28px rgba(15,19,23,.17);
 text-decoration:none;
 transition:transform .2s,box-shadow .2s,border-color .2s;
}
.intro .inline-link:hover{transform:translateY(-2px);border-color:#b89b4d;box-shadow:inset 0 1px rgba(255,255,255,.22),0 16px 34px rgba(15,19,23,.22)}


/* L::eS frosted glass refinement — light-section CTA and scroll control */
.intro .inline-link{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  color:#f8f8f8;
  background:linear-gradient(155deg,rgba(49,54,61,.62),rgba(22,26,32,.74));
  -webkit-backdrop-filter:blur(28px) saturate(145%);
  backdrop-filter:blur(28px) saturate(145%);
  border:1px solid rgba(184,155,77,.50);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,0,0,.12),0 13px 32px rgba(17,20,24,.13),0 0 0 1px rgba(255,255,255,.08);
}
.intro .inline-link::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;
  background:linear-gradient(165deg,rgba(255,255,255,.19),rgba(255,255,255,.035) 42%,transparent 76%);
}
.intro .inline-link:hover{
  background:linear-gradient(155deg,rgba(61,65,72,.68),rgba(30,34,41,.78));
  border-color:rgba(184,155,77,.8);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 16px 36px rgba(17,20,24,.18);
}
.scroll-top{
  background:linear-gradient(150deg,rgba(56,61,69,.46),rgba(30,34,41,.38));
  -webkit-backdrop-filter:blur(28px) saturate(150%);
  backdrop-filter:blur(28px) saturate(150%);
  border-color:rgba(184,155,77,.50);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),inset 0 -1px 0 rgba(255,255,255,.035),0 13px 30px rgba(0,0,0,.17);
}
.scroll-top:hover{
  background:rgba(62,67,76,.56);
  border-color:rgba(211,185,117,.85);
}

/* Consent UI: frosted-carbon, equal choice prominence and mobile-safe layout */
.cookie-banner[hidden],.cookie-preferences[hidden]{display:none!important}
.cookie-banner{position:fixed;z-index:90;left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom,0px));max-width:850px;margin-inline:auto;padding:26px;display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:18px 32px;background:rgba(23,26,32,.88);-webkit-backdrop-filter:blur(28px) saturate(140%);backdrop-filter:blur(28px) saturate(140%);color:#f5f5f5;border:1px solid rgba(184,155,77,.38);border-radius:20px;box-shadow:0 25px 90px rgba(0,0,0,.43),inset 0 1px rgba(255,255,255,.14);max-height:min(85dvh,720px);overflow:auto}
.cookie-kicker{margin:0 0 9px;color:#d5bb78;font-size:10px;font-weight:700;letter-spacing:.17em}
.cookie-info h2{font-size:clamp(20px,2.8vw,27px);font-weight:700;letter-spacing:-.035em;margin:0 0 10px}
.cookie-info p:not(.cookie-kicker){font-size:13px;line-height:1.7;color:#c3c8cd;margin:0 0 12px}
.cookie-info a{font-size:12px;color:#e5d09c;text-decoration:none}
.cookie-info a:hover{text-decoration:underline}.cookie-reopen:hover{text-decoration:none;color:#e5d09c}
.cookie-controls{display:flex;flex-direction:column;justify-content:center;gap:9px}
.cookie-action{width:100%;min-height:43px;background:rgba(255,255,255,.07);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:10px;font-size:12px;font-weight:700;cursor:pointer}
.cookie-action:hover{background:rgba(255,255,255,.13)}
.cookie-accept{border-color:rgba(184,155,77,.72);background:rgba(184,155,77,.13)}
.cookie-settings-toggle{border:0;background:transparent;color:#dfc68d;font-size:12px;padding:7px;cursor:pointer}
.cookie-preferences{grid-column:1/-1;display:grid;gap:13px;padding-top:16px;border-top:1px solid rgba(255,255,255,.15)}
.cookie-preference{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:13px}
.cookie-preference>div,.cookie-preference>span:first-child{display:grid;gap:3px}
.cookie-preference strong{font-size:13px;font-weight:700}
.cookie-preference small,.cookie-preference>div span{font-size:11px;color:#aeb4bb;line-height:1.4}
.cookie-required{font-size:11px;color:#dfc68d;white-space:nowrap}
.cookie-preference input{accent-color:#b89b4d;width:20px;height:20px;flex-shrink:0}
.cookie-save{max-width:230px;justify-self:end}
.cookie-reopen{border:0;background:none;color:#adb1b8;font:inherit;font-size:11px;cursor:pointer;padding:0}
@media(max-width:600px){.cookie-banner{grid-template-columns:1fr;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:21px;gap:16px;max-height:80dvh;border-radius:16px}.cookie-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px}.cookie-settings-toggle{grid-column:1/-1}.cookie-action{min-height:46px}.cookie-save{max-width:none;justify-self:stretch}.cookie-preference{align-items:start}}
@media(prefers-reduced-motion:reduce){.cookie-banner{scroll-behavior:auto}}

/* Footer consent trigger: never underline on desktop, hover or focus. */

.site-footer .footer-bottom button.cookie-reopen,.site-footer .footer-bottom button.cookie-reopen:hover,.site-footer .footer-bottom button.cookie-reopen:focus-visible{text-decoration:none;border-bottom:0}.site-footer .footer-bottom button.cookie-reopen:hover{color:#e5d09c}

/* Smart navigation: solid by default, optional hero-overlay glass on dark heroes. */
.site-header{position:fixed;top:0;left:0;right:0;bottom:auto;z-index:60;background:#101216;transform:translate3d(0,0,0);opacity:1;transition:transform 480ms cubic-bezier(.22,1,.36,1),opacity 380ms ease;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.site-header.is-glass{background:rgba(16,18,22,.88);-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%);box-shadow:0 10px 32px rgba(0,0,0,.18)}
/* Only opt-in pages get transparency at the top; their scrolled header stays frosted.
   CSS lives centrally so regional and future service pages never fork the navbar. */
body.header-over-hero .site-header{background:rgba(16,18,22,.24);-webkit-backdrop-filter:blur(14px) saturate(125%);backdrop-filter:blur(14px) saturate(125%)}
body.header-over-hero .site-header.is-glass{background:rgba(16,18,22,.88);-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%);box-shadow:0 10px 32px rgba(0,0,0,.18)}
body.header-over-hero .site-header:has(.menu-toggle[aria-expanded="true"]){background:rgba(16,18,22,.96);-webkit-backdrop-filter:blur(28px) saturate(145%);backdrop-filter:blur(28px) saturate(145%)}
.site-header.is-glass .header-inner{border-bottom-color:rgba(255,255,255,.11)}
.site-header.is-hidden{transform:translate3d(0,-100%,0);opacity:0;pointer-events:none}
.site-header:focus-within{transform:translate3d(0,0,0);pointer-events:auto}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}}

/* Informational privacy notice, no inactive consent preferences */
.cookie-notice{grid-template-columns:minmax(0,1fr) 165px}
@media(max-width:600px){.cookie-notice{grid-template-columns:1fr}.cookie-notice .cookie-controls{display:block}}

/* Enterprise telephone availability – mainpage only */
.hero-availability-compact{display:flex;width:max-content;max-width:100%;align-items:center;gap:13px;margin-top:29px;margin-bottom:38px;padding:13px 18px;border:1px solid rgba(184,155,77,.4);border-radius:12px;background:rgba(26,29,36,.62);color:#e6d19c;font-size:14px;font-weight:650;line-height:1.45;transition:border-color .2s,background .2s;color:inherit}
.hero-availability-compact:hover{border-color:#b89b4d;background:rgba(38,41,48,.82);color:#fff}
.hero-availability-compact svg{display:block;width:24px;height:24px;flex-shrink:0;color:#d4ba76}
@media(max-width:700px){.hero-availability-compact{gap:10px;margin-top:24px;padding:12px 14px;font-size:13px}.hero-availability-compact svg{width:22px;height:22px}}
.availability{border-top:1px solid #e2dfd5}
.availability-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(40px,7vw,110px);align-items:start}
.availability-heading h2{font-size:clamp(37px,4.1vw,65px);letter-spacing:-.045em}
.availability-content{padding-top:6px}
.availability-content>p:not(.availability-disclaimer){font-size:15px;line-height:1.9;color:#4c535a;margin-bottom:20px}
.availability-phone{position:relative;display:flex;flex-direction:column;gap:10px;min-width:0;margin:34px 0 24px;padding:24px 62px 26px 26px;background:#30363f;border-left:3px solid #b89b4d;border-radius:12px;color:#fff;transition:background .2s}
.availability-phone:hover{background:#39414b}
.availability-phone>span:first-child{font-size:10px;letter-spacing:.16em;font-weight:700;color:#d4ba76}
.availability-phone strong{font-size:clamp(20px,2.5vw,31px);font-weight:650;letter-spacing:-.02em;overflow-wrap:anywhere}
.availability-phone-arrow{position:absolute;right:26px;top:26px;color:#d4ba76;font-size:20px}
.availability-disclaimer{font-size:12px!important;line-height:1.8!important;color:#676d72!important;margin:0!important}
@media(max-width:850px){.availability-layout{grid-template-columns:1fr;gap:20px}.availability-content{padding-top:0}}
@media(max-width:700px){.availability-phone{padding:23px 55px 24px 20px}}

/* Expertise: readable copy on phones, without changing the card grid */
@media(max-width:700px){
  .expertise .section-heading>p{font-size:16px;line-height:1.75;max-width:100%;color:#555d63}
  .expertise .service-card h3{font-size:18px;line-height:1.35}
  .expertise .service-card p{font-size:14px;line-height:1.7}
}

/* Consistent body copy for Approach and Expertise on mobile */
@media(max-width:700px){
  .intro .intro-right p,.expertise .section-heading>p{font-size:16px;line-height:1.8;color:#555d63}
}

/* Mobile section labels: Approach and Expertise */
@media(max-width:700px){.intro .eyebrow-dark,.expertise .eyebrow-dark{font-size:14px;line-height:1.5;letter-spacing:.16em}}

/* Match hero gold eyebrow to mobile section labels */
@media(max-width:700px){.hero .eyebrow{font-size:14px;line-height:1.5;letter-spacing:.16em}}

/* Expertise desktop: balanced two-column heading and readable supporting copy. */
@media(min-width:851px){
  .expertise .section-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(36px,5vw,90px);align-items:end}
  .expertise .section-heading>p{max-width:520px;margin:0 0 8px;font-size:16px;line-height:1.8;color:#555d63}
}
@media(min-width:701px) and (max-width:850px){
  .expertise .section-heading>p{max-width:360px;font-size:16px;line-height:1.8;color:#555d63}
}

/* Hero world globe: native Canvas animation replacing only the central core */
.hero-globe{position:absolute;top:50%;left:50%;width:22%;height:22%;transform:translate(-50%,-50%);display:block;border-radius:50%;box-shadow:0 0 42px rgba(184,155,77,.35),0 0 75px rgba(184,155,77,.14);pointer-events:none}

/* Ecosystem partner presentation */
.ecosystem-partners{margin-top:clamp(56px,7vw,100px);padding-top:clamp(34px,4vw,54px);border-top:1px solid #d8d7d1}
.ecosystem-partners-intro{max-width:760px}
.ecosystem-partners-kicker{color:#8c7538;font-size:13px;font-weight:700;letter-spacing:.16em;margin-bottom:18px}
.ecosystem-partners-intro h3{font-size:clamp(27px,3vw,40px);letter-spacing:-.035em;margin-bottom:16px}
.ecosystem-partners-intro>p:last-child{color:#555d63;font-size:16px;line-height:1.8;margin-bottom:0}
.ecosystem-partner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:32px}
.ecosystem-partner{display:flex;flex-direction:column;justify-content:center;gap:8px;min-height:132px;padding:24px 20px;border:1px solid #d7d6d0;border-radius:11px;background:rgba(255,255,255,.68)}
.ecosystem-partner strong{font-size:clamp(17px,1.8vw,23px);font-weight:700;letter-spacing:-.025em;line-height:1.25}
.ecosystem-partner span{color:#666d72;font-size:13px;line-height:1.5}
.ecosystem-partner-own{border-color:rgba(184,155,77,.6)}
@media(max-width:850px){.ecosystem-partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ecosystem-partners-kicker{font-size:14px}.ecosystem-partner{min-height:115px;padding:20px 16px}.ecosystem-partner strong{font-size:18px}.ecosystem-partner span{font-size:13px}}

/* Official partner artwork in existing Ecosystem cards */
.ecosystem-partner-logo{align-items:flex-start}
.ecosystem-partner-logo img{display:block;width:100%;max-width:190px;height:64px;object-fit:contain;object-position:left center}
@media(max-width:700px){.ecosystem-partner-logo img{height:54px;max-width:100%}}

/* Ecosystem partner cards: white surfaces and requested black marks. */
.ecosystem-partner-grid .ecosystem-partner{align-items:center;justify-content:center;min-height:132px;background:#fff;border-color:#d7d6d0;overflow:hidden}
.ecosystem-partner-grid .ecosystem-partner-logo img{display:block;width:100%;height:76px;max-width:220px;object-fit:contain;object-position:center;filter:none}
.ecosystem-partner-grid .ecosystem-partner-eset{background:#fff;border-color:#d7d6d0}
.ecosystem-partner-grid .ecosystem-partner-eset img,.ecosystem-partner-grid .ecosystem-partner-own img{filter:brightness(0)}
.ecosystem-partner-grid .ecosystem-partner-own{border-color:#d7d6d0}
.ecosystem-partner-grid .ecosystem-partner-own img{height:105px;max-width:100%;transform:scale(1.35)}
.ecosystem-partner-grid .ecosystem-partner-microsoft{flex-direction:row;gap:13px}
.ecosystem-partner-grid .ecosystem-partner-microsoft strong{font-size:clamp(18px,1.75vw,25px);white-space:nowrap}
@media(max-width:700px){.ecosystem-partner-grid .ecosystem-partner{min-height:115px}.ecosystem-partner-grid .ecosystem-partner-logo img{height:64px}.ecosystem-partner-grid .ecosystem-partner-own img{height:88px;transform:scale(1.3)}.ecosystem-partner-grid .ecosystem-partner-microsoft{gap:9px}.ecosystem-partner-grid .ecosystem-partner-microsoft strong{font-size:16px}}

/* Keep the four Ecosystem capabilities in an even two-by-two arrangement. */
@media(max-width:700px){.ecosystem-tags{max-width:100%;gap:10px}.ecosystem-tags span{font-size:clamp(11px,3.2vw,13px);min-height:48px;padding:10px 7px}}

/* Contact form: enterprise two-column layout and responsive controls */
.contact .contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,1fr);gap:clamp(38px,6vw,100px);align-items:start}
.contact-intro-note{max-width:400px;color:#c3c5c8;font-size:16px;line-height:1.8;margin-top:26px}
.contact-form{display:flex;flex-direction:column;gap:20px;min-width:0}
.contact-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.contact-form label{display:flex;flex-direction:column;gap:9px;color:#e4e5e6;font-size:13px;font-weight:600;letter-spacing:.02em}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;min-width:0;border:1px solid #555b65;border-radius:9px;background:#252930;color:#fff;padding:14px 15px;font:inherit;font-size:15px;line-height:1.5;outline:none;transition:border-color .2s,box-shadow .2s}
.contact-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#c3c5c8 50%),linear-gradient(135deg,#c3c5c8 50%,transparent 50%);background-position:calc(100% - 21px) 50%,calc(100% - 16px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px;cursor:pointer}.contact-form select option{background:#252930;color:#fff}.contact-form textarea{resize:vertical;min-height:140px}
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{border-color:#c7a65d;box-shadow:0 0 0 3px rgba(184,155,77,.2)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a3a7ae}
.contact-form .contact-privacy{display:flex;flex-direction:row;align-items:flex-start;gap:12px;font-weight:400;font-size:13px;line-height:1.7;color:#c5c7cb}
.contact-privacy input{margin-top:4px;accent-color:#b89b4d;flex:none}
.contact-privacy a{color:#e0c483;text-decoration:none}.contact-alternative a{color:#e0c483;text-decoration:none}
.contact-form .contact-button{align-self:flex-start;cursor:pointer}
.contact-alternative{margin:0;color:#aeb3b9;font-size:13px}
.contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:850px){.contact .contact-layout{grid-template-columns:1fr;gap:36px}.contact-intro-note{max-width:600px}}
@media(max-width:450px){.contact-form-row{grid-template-columns:1fr}.contact .contact-form{gap:17px}.contact-form .contact-button{width:100%}}

/* Contact validation: inline errors instead of browser tooltips */
.contact-form .contact-field-error{display:block;color:#efb1a8;font-size:12px;line-height:1.5;font-weight:500;letter-spacing:0}
.contact-form input[aria-invalid="true"],.contact-form select[aria-invalid="true"],.contact-form textarea[aria-invalid="true"]{border-color:#d18c83}
.contact-form .contact-form-error{color:#efb1a8;font-size:13px;line-height:1.6;margin:0}
.contact-form .contact-form-error[hidden]{display:none}

/* Expertise: continuous carbon upper panel, restrained technical icons, aligned content. */
.expertise .service-card{display:grid;grid-template-rows:176px minmax(0,1fr);gap:0;padding:0;overflow:hidden;background:#fff;border:1px solid #dcd9d1;border-radius:12px}
.expertise .service-visual{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;background:linear-gradient(145deg,#454953 0%,#343940 52%,#292f36 100%);border-bottom:2px solid #b89b4d}
.expertise .card-head{position:absolute;top:18px;left:20px;color:#e0c68c;font-size:12px;letter-spacing:.12em}
.expertise .service-symbol{width:88px;height:88px;margin:0;display:grid;place-items:center;border:0;border-radius:0;background:none;box-shadow:none}
.expertise .service-symbol svg{width:74px;height:74px;stroke:#e6cf98;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.expertise .service-symbol svg circle{fill:none;stroke:#e6cf98;stroke-width:1.8}
.expertise .service-copy{display:grid;grid-template-rows:minmax(2.7em,auto) auto;align-content:start;gap:14px;padding:24px 22px 32px;min-width:0}
.expertise .service-copy h3{margin:0;align-self:start}
.expertise .service-copy p{margin:0}
@media(max-width:700px){.expertise .service-card{grid-template-rows:150px minmax(0,1fr)}.expertise .service-visual{min-height:150px}.expertise .service-symbol{width:80px;height:80px}.expertise .service-symbol svg{width:68px;height:68px}.expertise .service-copy{grid-template-rows:minmax(2.7em,auto) auto;gap:13px;padding:23px 16px 29px}.expertise .card-head{top:16px;left:16px}}

/* Microsoft partner designation, typographic only. */
.ecosystem-partner.ecosystem-partner-microsoft{flex-direction:column;justify-content:center;gap:3px;text-align:center}
.ecosystem-partner-microsoft strong,.ecosystem-partner-microsoft .microsoft-csp{position:relative;top:10px}
.ecosystem-partner-microsoft .microsoft-csp{font-size:12px;font-weight:600;letter-spacing:.17em;color:#111;line-height:1.4}

/* Uniform gold section labels across all pages, including mobile. */
.eyebrow,.ecosystem-partners-kicker,.availability-phone>span:first-child,.legal-aside>p,.legal-number{font-size:12px;font-weight:700;line-height:1.5;letter-spacing:.16em}
@media(max-width:700px){.eyebrow,.intro .eyebrow-dark,.expertise .eyebrow-dark,.hero .eyebrow,.ecosystem-partners-kicker,.availability-phone>span:first-child,.legal-aside>p,.legal-number{font-size:14px;font-weight:700;line-height:1.5;letter-spacing:.16em}}

/* Industry references: editorial layout, restrained and clearly distinguished from personal experience. */
.industries{border-top:1px solid #e2dfd8}
.industries-heading{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:clamp(25px,5vw,90px);align-items:end;margin-bottom:40px}
.industries-heading>p{color:#626970;font-size:15px;line-height:1.8;max-width:410px;margin:0 0 5px}
.industries-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d6d1c7;border-bottom:1px solid #d6d1c7}
.industries-item{min-width:0;padding:30px 22px 34px}
.industries-item:first-child{padding-left:0}
.industries-item+ .industries-item{border-left:1px solid #d6d1c7}
.industries-index{display:block;color:#967b3e;font-size:12px;font-weight:700;letter-spacing:.16em;margin-bottom:24px}
.industries-item h3{font-size:clamp(22px,2.25vw,32px);line-height:1.18;margin:0;letter-spacing:-.035em}
.industries-item p{font-size:13px;color:#6a7074;margin:10px 0 0}
.industries-experience{max-width:850px;margin:32px 0 0;font-size:14px;line-height:1.85;color:#60686c}
.industries-experience strong{color:#242830}
@media(max-width:850px){.industries-heading{grid-template-columns:1fr;gap:18px}.industries-heading>p{max-width:680px}}
@media(max-width:700px){.industries-grid{grid-template-columns:1fr}.industries-item,.industries-item:first-child{padding:24px 0}.industries-item+ .industries-item{border-left:0;border-top:1px solid #d6d1c7}.industries-index{margin-bottom:12px;font-size:14px}.industries-item h3{font-size:26px}.industries-experience{font-size:15px;line-height:1.75;margin-top:27px}}

/* Substantial customer-industry references: precise readable service scope. */
.industries-item p{font-size:14px;line-height:1.7;margin-top:16px;max-width:29ch}
.industries-index{font-size:11px;letter-spacing:.12em}
@media(max-width:700px){.industries-item p{font-size:15px;line-height:1.65;margin-top:12px}.industries-index{font-size:12px}}

/* Projects: compact cross-industry experience line below recent work. */
.industries-experience{max-width:100%;margin-top:30px;padding-top:22px;border-top:1px solid #d6d1c7;font-size:14px;line-height:1.8}
@media(max-width:700px){.industries-experience{font-size:15px;margin-top:24px;padding-top:20px}}

/* Enterprise expertise: architectural panels with clear hierarchy and restrained visual depth. */
.expertise .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.expertise .service-card{grid-template-rows:200px minmax(0,1fr);min-height:420px;border-radius:15px;border-color:#d5d1c8;box-shadow:0 8px 32px rgba(16,18,22,.045)}
.expertise .service-visual{min-height:200px;background:radial-gradient(circle at 80% 22%,rgba(184,155,77,.17),transparent 43%),linear-gradient(135deg,#383e46 0%,#21262e 65%,#171b21 100%);isolation:isolate}
.expertise .service-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(219,194,140,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(219,194,140,.065) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(120deg,transparent 10%,black 100%);pointer-events:none}
.expertise .service-symbol{width:110px;height:110px;position:relative;z-index:1}
.expertise .service-symbol svg{width:96px;height:96px;stroke:#e1c78d;stroke-width:1.7}
.expertise .card-head{top:21px;left:24px;font-size:11px;font-weight:700;letter-spacing:.16em}
.expertise .service-visual-label{position:absolute;bottom:18px;right:23px;font-size:10px;letter-spacing:.13em;color:#d6c49d;opacity:.78}
.expertise .service-copy{display:flex;flex-direction:column;gap:15px;padding:29px 30px 30px}
.expertise .service-copy h3{font-size:clamp(22px,2.5vw,32px);line-height:1.22;letter-spacing:-.035em;max-width:21ch}
.expertise .service-copy p{font-size:15px;line-height:1.75;max-width:52ch;color:#60676b}
.expertise .service-more{display:flex;gap:10px;align-items:center;margin-top:auto;padding-top:13px;color:#92743d;font-size:12px;font-weight:700;letter-spacing:.035em}
.expertise .service-more span{font-size:18px;transition:transform .2s}
.expertise .service-card:hover .service-more span{transform:translate(3px,-3px)}
@media(max-width:700px){
 .expertise .service-grid{grid-template-columns:1fr;gap:19px}
 .expertise .service-card{grid-template-rows:160px minmax(0,1fr);min-height:360px}
 .expertise .service-visual{min-height:160px}
 .expertise .service-symbol{width:84px;height:84px}
 .expertise .service-symbol svg{width:75px;height:75px}
 .expertise .service-copy{padding:24px 24px 27px;gap:13px}
 .expertise .service-copy h3{font-size:clamp(23px,6vw,29px)}
 .expertise .service-copy p{font-size:15px}
 .expertise .service-visual-label{right:18px;bottom:13px;font-size:9px}
}

/* Expertise cards: single coherent enterprise layout. */
.expertise .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
.expertise .service-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-rows:160px minmax(0,1fr);min-height:0;height:100%;border:1px solid #d5d1c8;border-radius:15px;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.expertise .service-visual{min-height:160px}
.expertise .card-head{position:absolute;top:18px;left:22px;z-index:2;color:#e0c68c;font-size:11px;font-weight:700;letter-spacing:.13em;line-height:1.5}
.expertise .card-head-divider{color:#8e846d;padding:0 4px}
.expertise .service-copy{display:flex;flex-direction:column;gap:13px;padding:24px 27px 27px}
.expertise .service-copy h3{margin:0;font-size:clamp(21px,2.25vw,29px);line-height:1.2;max-width:22ch}
.expertise .service-copy p{margin:0;color:#60676b;font-size:14px;line-height:1.6;max-width:56ch}
.expertise .service-focus{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;margin:5px 0 0;padding:15px 0 0;border-top:1px solid #dfdcd5;list-style:none;color:#555d63;font-size:13px;font-weight:500;line-height:1.5}
.expertise .service-focus li{position:relative;min-width:0;padding-left:15px;color:#555d63}
.expertise .service-focus li::before{content:"";position:absolute;left:0;top:.6em;width:5px;height:5px;border-radius:50%;background:#b89b4d}

@media(hover:hover){.expertise .service-card:hover,.les-motion-ready .expertise .service-card.les-fade.les-visible:hover{transform:translateY(-7px);border-color:rgba(184,155,77,.55);box-shadow:0 17px 34px rgba(16,18,22,.14)}}
.expertise .service-card:focus-visible{outline:2px solid #b89b4d;outline-offset:3px}


@media(max-width:700px){.expertise .service-grid{grid-template-columns:1fr;gap:18px}.expertise .service-card{grid-template-rows:150px minmax(0,1fr)}.expertise .service-visual{min-height:150px}.expertise .service-copy{padding:23px 22px 25px;gap:12px}.expertise .service-copy h3{font-size:clamp(21px,5.5vw,27px)}.expertise .service-focus{grid-template-columns:1fr;font-size:13px}}
@media(max-width:430px){.expertise .service-focus{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.expertise .service-card,.expertise .service-card::after{transition:none}}

/* Quiet reveal motion and clearly interactive technology partner tiles. */
.ecosystem-partner-grid a.ecosystem-partner{position:relative;cursor:pointer;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease}

@media(hover:hover){.ecosystem-partner-grid a.ecosystem-partner:hover{transform:translateY(-4px);border-color:#b89b4d;box-shadow:0 12px 28px rgba(20,24,29,.11);background:#fff}}
.ecosystem-partner-grid a.ecosystem-partner:focus-visible{outline:2px solid #b89b4d;outline-offset:3px}
@media(prefers-reduced-motion:no-preference){.les-motion-ready .les-fade{opacity:0;transform:translateY(15px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.3,1);transition-delay:var(--les-delay,0ms)}.les-motion-ready .les-fade.les-visible{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.ecosystem-partner-grid a.ecosystem-partner,.ecosystem-partner-grid a.ecosystem-partner::after{transition:none}}

/* Partner cards: no decorative arrows, including cached/legacy pseudo-elements. */
.ecosystem-partner-grid .ecosystem-partner::before,.ecosystem-partner-grid .ecosystem-partner::after{content:none!important;display:none!important}

/* Shared L::eS action buttons: assign les-button + les-button--primary/secondary. */
.les-button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch;max-width:720px}
.les-button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:54px;padding:14px 20px;border-radius:14px;border:1px solid rgba(184,155,77,.66);font-size:13px;font-weight:700;line-height:1.5;text-align:center;text-decoration:none;letter-spacing:.01em;position:relative;overflow:hidden;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:transform .2s,background .2s,border-color .2s}
.les-button--primary{background:rgba(184,155,77,.12);border-color:rgba(184,155,77,.75);color:#f5e4bb}
.les-button--secondary{background:rgba(42,46,53,.4);border-color:rgba(255,255,255,.29);color:#fff}
.les-button:hover{transform:translateY(-2px);background:rgba(90,91,89,.3)}
.les-button:focus-visible{outline:2px solid #d3b975;outline-offset:3px}
@media(max-width:700px){.les-button-row{grid-template-columns:minmax(0,1fr);width:100%}}

/* Enforce component geometry even on legacy pages with old hero action rules. */
#content .switch-hero .switch-hero-actions.les-button-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch!important;gap:12px;width:100%;max-width:720px}
#content .switch-hero .switch-hero-actions.les-button-row .les-button{display:inline-flex;width:100%!important;min-width:0;max-width:none;min-height:54px;padding:14px 20px;border-radius:14px;flex:auto}
@media(max-width:700px){#content .switch-hero .switch-hero-actions.les-button-row{grid-template-columns:minmax(0,1fr)}}

/* Ecosystem cards: clear navigation cue with a CSS-drawn arrow, no glyph or emoji. */
.ecosystem-partner-grid .ecosystem-partner{position:relative;padding-bottom:45px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.ecosystem-partner-grid .ecosystem-partner:hover{border-color:#b89b4d;box-shadow:0 8px 22px rgba(16,18,22,.08);transform:translateY(-2px)}
.ecosystem-partner-grid .ecosystem-partner:focus-visible{outline:2px solid #b89b4d;outline-offset:3px}
.ecosystem-partner-grid .ecosystem-partner-link{position:absolute;left:12px;right:12px;bottom:11px;display:flex;align-items:center;justify-content:center;gap:9px;color:#846c37;font-size:11px;font-weight:700;line-height:1.25;text-align:center}
.ecosystem-partner-grid .ecosystem-partner-arrow{position:relative;display:inline-block;flex:none;width:13px;height:13px;color:#94783d}
.ecosystem-partner-grid .ecosystem-partner-arrow::before{content:"";position:absolute;left:1px;top:6px;width:11px;border-top:1.5px solid currentColor}
.ecosystem-partner-grid .ecosystem-partner-arrow::after{content:"";position:absolute;right:1px;top:3px;width:6px;height:6px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg)}
@media(max-width:700px){.ecosystem-partner-grid .ecosystem-partner{padding:16px 10px 43px}.ecosystem-partner-grid .ecosystem-partner-link{font-size:10px;left:6px;right:6px;gap:6px}}

/* Compact partner-card navigation: distinct footer cue, no additional height. */
.ecosystem-partner-grid .ecosystem-partner{padding-bottom:39px}
.ecosystem-partner-grid .ecosystem-partner-link{left:14px;right:14px;bottom:8px;min-height:26px;border-top:1px solid #e5e1d6;padding-top:7px;gap:8px;white-space:nowrap;font-size:11px;line-height:1.2}
.ecosystem-partner-grid .ecosystem-partner-arrow{margin-left:auto}
@media(max-width:700px){.ecosystem-partner-grid .ecosystem-partner{padding-bottom:38px}.ecosystem-partner-grid .ecosystem-partner-link{left:10px;right:10px;bottom:7px;font-size:10px}}

/* Logo tiles remain compact: a single corner chevron indicates navigation. */
.ecosystem-partner-grid .ecosystem-partner{padding:20px;min-height:132px}
.ecosystem-partner-grid .ecosystem-partner-arrow{position:absolute;right:13px;bottom:13px;left:auto;top:auto;display:block;width:8px;height:8px;margin:0;border-right:1.5px solid #a2a5a7;border-top:1.5px solid #a2a5a7;transform:rotate(45deg)}
.ecosystem-partner-grid .ecosystem-partner-arrow::before,.ecosystem-partner-grid .ecosystem-partner-arrow::after{content:none}
@media(max-width:700px){.ecosystem-partner-grid .ecosystem-partner{padding:16px;min-height:115px}.ecosystem-partner-grid .ecosystem-partner-arrow{right:12px;bottom:12px}}

/* Expertise cards: concise page-navigation cue, no nested buttons. */
.expertise .service-card{position:relative;padding-bottom:57px}
.expertise .service-card::after{content:"Mehr erfahren";position:absolute;right:39px;bottom:23px;color:#646a6f;font-size:12px;font-weight:700;letter-spacing:.01em;line-height:1.3}
.expertise .service-card::before{content:"";position:absolute;right:25px;bottom:27px;width:7px;height:7px;border-top:1.5px solid #878d91;border-right:1.5px solid #878d91;transform:rotate(45deg)}
.expertise .service-card:hover::after,.expertise .service-card:focus-visible::after{color:#795f29}
@media(max-width:700px){.expertise .service-card{padding-bottom:58px}.expertise .service-card::after{bottom:21px}.expertise .service-card::before{bottom:25px}}

/* Experience proof point within existing Projects & Experience section. */
.industries-experience-highlight{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.28fr);gap:clamp(20px,5vw,70px);align-items:center;padding:30px 0;margin-top:36px;border-top:1px solid #d8d5cc;border-bottom:1px solid #d8d5cc}
.industries-experience-highlight strong{display:flex;flex-direction:column;gap:3px;color:#a78a49;font-size:clamp(50px,5.5vw,78px);line-height:1.03;letter-spacing:-.045em}
.industries-experience-highlight strong span{font-size:14px;letter-spacing:.06em;color:#343940;line-height:1.5}
.industries-experience-highlight p{margin:0;color:#586168;font-size:15px;line-height:1.8}
@media(max-width:700px){.industries-experience-highlight{grid-template-columns:1fr;gap:17px;padding:25px 0}.industries-experience-highlight strong{font-size:56px}}

/* Shared enterprise navigation */
.navigation{gap:clamp(13px,2vw,34px)}.nav-group{position:relative}
.nav-group-toggle{display:flex;align-items:center;gap:10px;padding:14px 0;border:0;color:#f4f4f4;background:none;cursor:pointer;font:inherit;font-weight:600}
.nav-group-toggle:hover,.nav-group-toggle[aria-expanded="true"],.navigation>.nav-company:hover{color:#ddc78d}
.nav-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}.nav-group-toggle[aria-expanded="true"] .nav-chevron{transform:rotate(225deg) translateY(-1px)}
.nav-dropdown{position:absolute;top:calc(100% + 9px);left:-22px;width:min(390px,90vw);display:grid;gap:3px;padding:12px;background:rgba(24,27,33,.95);border:1px solid rgba(184,155,77,.32);border-radius:15px;box-shadow:0 22px 55px rgba(0,0,0,.4);-webkit-backdrop-filter:blur(26px) saturate(140%);backdrop-filter:blur(26px) saturate(140%);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-7px);transition:opacity .18s,transform .18s,visibility .18s}
.nav-group-toggle[aria-expanded="true"]+.nav-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.nav-dropdown a{display:flex;flex-direction:column;gap:1px;padding:12px 14px;border-radius:8px;color:#f6f6f4;line-height:1.35}
.nav-dropdown a:hover,.nav-dropdown a:focus-visible{background:rgba(184,155,77,.15)}.nav-dropdown strong{font-size:13px;font-weight:600}.nav-dropdown small{font-size:11px;color:#aeb5bc;font-weight:400}.nav-dropdown-services{width:290px}.nav-dropdown-services a{padding:10px 14px}
@media(max-width:700px){.navigation .nav-group{width:100%}.navigation .nav-group-toggle{width:100%;min-height:49px;justify-content:space-between;padding:12px 10px;font-size:14px;border-bottom:1px solid rgba(255,255,255,.08)}.navigation .nav-dropdown{position:static;width:100%;display:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:none;box-shadow:none;border:0;border-radius:9px;background:rgba(255,255,255,.045);padding:6px;margin:4px 0 8px}.navigation .nav-group-toggle[aria-expanded="true"]+.nav-dropdown{display:grid}.navigation .nav-dropdown a{padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.06)}.navigation .nav-dropdown a:last-child{border:0}.navigation .nav-dropdown strong{font-size:13px}}

/* Mobile navigation stays usable with expanded sections on small displays. */
@media(max-width:700px){.navigation{max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}

/* Footer policy and cookie controls as one compact utility group. */
.footer-utility{display:inline-flex;align-items:center;justify-content:flex-end;gap:clamp(12px,2vw,25px);flex-wrap:wrap}.footer-utility>a{font:inherit;color:inherit;text-decoration:none}.footer-utility>a:hover{color:#ddc486}.footer-utility>a:focus-visible{outline:2px solid #e6c87c;outline-offset:4px}

/* Distinguish the two footer utility links without changing the footer layout. */
.footer-utility-separator{font-size:14px;color:#a7adb6;line-height:1}.site-footer .footer-utility>a:hover,.site-footer .footer-utility>a:focus-visible{color:#ddc486;text-decoration:none}

/* Leistungen: four independent, collapsible groups in the existing shared navigation. */
.nav-dropdown-services{width:310px}
.nav-services-section{min-width:0}
.nav-services-section+.nav-services-section{margin-top:3px}
.nav-service-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:46px;padding:12px 14px;border:0;border-radius:9px;background:rgba(255,255,255,.045);color:#f6f6f4;cursor:pointer;text-align:left;font:inherit;font-size:13px;font-weight:600;line-height:1.4}
.nav-service-toggle:hover{background:rgba(255,255,255,.085)}
.nav-service-toggle[aria-expanded="true"]{color:#ddc78d;background:rgba(184,155,77,.10)}
.nav-service-toggle[aria-expanded="true"] .nav-chevron{transform:rotate(225deg) translateY(-1px)}
.nav-service-links{display:none;margin:4px 3px 7px 10px;padding:2px 0 3px 9px;border-left:1px solid rgba(184,155,77,.3)}
.nav-service-toggle[aria-expanded="true"]+.nav-service-links{display:grid;gap:2px}
.nav-dropdown-services .nav-service-links a{padding:11px 12px;border-radius:8px}
@media(min-width:701px){.nav-dropdown-services{max-height:min(76dvh,690px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}
@media(max-width:700px){
 .navigation{max-height:calc(100dvh - 95px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .navigation .nav-dropdown-services .nav-service-toggle{min-height:51px;padding:14px 12px;font-size:14px}
 .navigation .nav-dropdown-services .nav-service-links{margin-left:12px}
 .navigation .nav-dropdown-services .nav-service-links a{padding:12px 11px}
 .navigation .nav-dropdown-services .nav-service-links a:last-child{border-bottom:0}
}
