/* Requested refinements, shared across the existing Claude components. */
.mph-oto{--service-hero:url(/assets/images/oto43.webp)}
.mph-ele{--service-hero:url(/assets/images/ele43.webp)}
.mph-mak{--service-hero:url(/assets/images/mak43.webp)}
.mph-ser{--service-hero:url(/assets/images/ser43.webp)}
.mph-yaz{--service-hero:url(/assets/images/yaz43.webp)}
.root .ph.mph{background-image:var(--service-hero);background-position:center;background-size:cover;background-repeat:no-repeat}
.root .ph.mph::after{display:none}
.service-capabilities>div{min-width:0;min-height:190px}
.service-capabilities .h3{font-size:20px}.service-capabilities .p{font-size:14.5px}
.service-capabilities .h3,.service-capabilities .p{overflow-wrap:break-word}
@media(max-width:1000px){.root .service-capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 .root .service-capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-capabilities>div{min-height:0;padding:20px 14px;gap:12px}
 .service-capabilities .h3{font-size:16px;line-height:1.4}
 .service-capabilities .p{font-size:14px;line-height:1.65}
}
/* Keep DOM/tab order equal to the desktop visual order. Mobile uses grid placement. */
.thm .day-birds{position:absolute;right:6px;top:50%;width:18px;height:12px;transform:translateY(-50%);color:#17202e;opacity:1;pointer-events:none;user-select:none;transition:opacity .4s ease}
.thm.on .day-birds{opacity:0}
@media(max-width:1100px){.thm .day-birds{right:2px;width:12px;height:8px}}
@media(prefers-reduced-motion:reduce){.thm .day-birds{transition:none}}
.team.team-with-network{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}
.network-visual>span{display:grid;place-items:center;aspect-ratio:1;position:relative;z-index:1;width:58%;max-width:190px;border-radius:50%;background:linear-gradient(135deg,#05C4FD,#3289ED 50%,#7A28D4);color:#fff;font-family:Manrope,sans-serif;font-weight:800;font-size:clamp(44px,5vw,64px);box-shadow:0 16px 40px -24px #3289ed88}
@media(max-width:1000px){.team.team-with-network{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.team.team-with-network{grid-template-columns:minmax(0,1fr)}}
/* The same logo card family as the home partner strip, in both reference sections. */
.clogo3.reference-logo{width:auto;flex:1;flex-direction:row;height:56px;padding:9px 14px;gap:10px;transform:none;background:#fff}
.reference-logo .cl-img,.reference-logo .cl-wm{position:relative;z-index:1}
.reference-logo .cl-img{max-width:100%}
.reference-logo::after{pointer-events:none}
.reference-logo:hover .cl-wm strong,.reference-logo:hover .cl-wm span{color:#fff}
.root .tg3{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.tg3 .tc{padding:30px;gap:22px}.tg3 .who2{margin-top:auto}
@media(max-width:767px){.root .tg3{grid-template-columns:minmax(0,1fr)}.tg3 .tc,.tst-g .tc{padding:22px}}
.dkm .tc:hover{border-color:#3289ed66;box-shadow:0 18px 36px -28px #05c4fd66}
/* Specific bright separators, without touching signal/accent strokes. */
.dkm .root .drow,.dkm .root .jump,.dkm .root .jump a{border-color:#24324c}
.dkm .mega .wrap>div:last-child{border-top-color:#24324c!important}
.dkm .sheet path[stroke="#C3CCD9"]{stroke:#34466a}
.dkm .sheet rect[stroke="#C3CCD9"]{stroke:#34466a}
.mobile-service-cta{display:none}
@media(max-width:767px){
 .prt .lg2{padding-inline:14px}
 .prt .lgm{max-width:calc(100% - 12px);box-sizing:border-box}
 .svc .desktop-service-cta{display:none}
 .svc .mobile-service-cta{display:inline-flex;align-self:flex-start;gap:10px;min-height:44px;margin-top:10px}
 .svc.dk .mobile-service-cta{color:#5fd3fc}
 .svc .ph-photo::before,.dkm .svc .ph-photo::before{opacity:1}
 .svc .ph-photo::after{opacity:0}
 .svc .tw{opacity:0}.svc .tw i{animation:none}
}
@media(min-width:1101px){
 .mega-g{align-items:stretch}
 .mega-g .mcol{display:flex;flex-direction:column}
 .mega-g .mcol h4{min-height:4.1em;display:flex;align-items:flex-start}
 .mega-g .mcol ul{flex:1}
 .mega-g .mcol li a{min-height:62px}
 .ixg{align-items:stretch}
 .ixg .ix .h3{min-height:4.2em}
 .ixg .ix a{min-height:84px;box-sizing:border-box}
}
.ringing-phone{flex:none;transform-origin:50% 20%;animation:gentle-ring 6s ease-in-out infinite}
@keyframes gentle-ring{0%,6%,16%,100%{transform:rotate(0)}8%,12%{transform:rotate(12deg)}10%,14%{transform:rotate(-12deg)}}
html{scrollbar-width:thin;scrollbar-color:#627fA6 #eef1f6}
html[data-theme=dark]{scrollbar-color:#4b6b94 #0b1220}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:#eef1f6}
*::-webkit-scrollbar-thumb{background:#627fA6;border:2px solid #eef1f6;border-radius:8px}
html[data-theme=dark] *::-webkit-scrollbar-track{background:#0b1220}
html[data-theme=dark] *::-webkit-scrollbar-thumb{background:#4b6b94;border-color:#0b1220}
.floating-action{position:fixed;z-index:25;bottom:calc(18px + env(safe-area-inset-bottom,0px));width:48px;height:48px;display:grid;place-items:center;border:1px solid #b7cce6;border-radius:14px;background:#f7f8faed;color:#1c66c9;box-shadow:0 8px 28px #0b122020;cursor:pointer;transition:background .2s,transform .2s,opacity .2s}
.floating-action svg{width:23px;height:23px}
.floating-action:hover{background:#eaf3ff;transform:translateY(-2px)}
.floating-action:focus-visible{outline:3px solid #3289ed;outline-offset:4px}
.whatsapp-widget{left:16px}.back-to-top{right:16px}
html[data-theme=dark] .floating-action{background:#111a2bed;color:#5fd3fc;border-color:#2b4263}
html[data-theme=dark] .floating-action:hover{background:#16213a}
.whatsapp-dialog .phone-label i{background:#24b978;box-shadow:0 0 10px #24b97860}
.whatsapp-dialog .phone-call{color:#168052}
html[data-theme=dark] .whatsapp-dialog .phone-call{color:#69dba9}
.whatsapp-dialog .phone-heading{margin-bottom:24px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ringing-phone{animation:none}.floating-action{transition:none}}
@media(forced-colors:active){.floating-action,.phone-dialog{border:1px solid ButtonText}}

.whatsapp-open{overflow:hidden}
.reference-map .reference-pin{left:50.015%;top:50.138%}
@media(max-width:767px){.root .ftr{padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}}
.dkm .mega .mono[style*="#1C66C9"],.dkm .ix>.mono{color:#5fd3fc!important}
@supports(grid-template-rows:subgrid){
 @media(min-width:1101px){
  .mega .mega-g{grid-template-rows:repeat(6,auto);row-gap:0}
  .mega .mcol{display:grid;grid-row:span 6;grid-template-rows:subgrid}
  .mega .mcol h4{min-height:0}
  .mega .mcol ul{display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:2px}
  .mega .mcol li a{height:100%;min-height:44px;align-items:flex-start;padding-block:10px;box-sizing:border-box}
  .root .ixg{grid-template-rows:repeat(6,auto);row-gap:6px}
  .ixg .ix{display:grid;grid-row:span 6;grid-template-rows:subgrid}
  .ixg .ix .h3{min-height:0}
  .ixg .ix a{min-height:56px}
 }
}

.whatsapp-widget{left:max(16px,env(safe-area-inset-left,0px))}.back-to-top{right:max(16px,env(safe-area-inset-right,0px))}
.reference-logo:hover{transform:translateY(-3px)}
.reference-logo .client-logo-pending{font-family:Manrope,sans-serif;font-size:13px;letter-spacing:0;color:#4b5567}
.reference-logo .client-logo-pending small{font-size:9px;letter-spacing:0;text-transform:none}
.discipline-list{border-top:1px solid #d9dfe8}.dkm .discipline-list{border-color:#24324c}
.dkm .team .mono[style*="#7A28D4"]{color:#b5a4ff!important}
@media(hover:none) and (min-width:768px){.svc .ph-photo::before,.dkm .svc .ph-photo::before{opacity:.82}.svc .ph-photo::after{opacity:.18}}
.svc .svc-title-link{color:inherit;font:inherit;text-decoration:none}
@media(min-width:768px){.svc .svc-title-link::after{content:'';position:absolute;inset:0;z-index:1}}

.client-logo-pending{position:relative;display:flex;flex-direction:column;gap:3px;font-family:Manrope,sans-serif;color:#4b5567;font-size:13px;font-weight:700;line-height:1.3}.client-logo-pending small{font-size:9px;font-weight:400}.reference-logo:hover .client-logo-pending{color:#fff}

/* Alpha PNG logos turn white; the gradient tile itself is never filtered. */
.reference-logo .cl-img{transition:filter .25s ease}
.reference-logo:hover .cl-img{filter:brightness(0) invert(1)}
@media(prefers-reduced-motion:reduce){.reference-logo .cl-img{transition:none}}
.reference-map .reference-pin-label{text-transform:none}

/* Original licensed glyphs, local assets; no custom brand drawing or icon font. */
.floating-action{-webkit-tap-highlight-color:transparent}
.floating-action .widget-glyph{display:block;background:currentColor;mask-position:center;mask-repeat:no-repeat;mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain;pointer-events:none;user-select:none;transition:scale .25s ease}
.whatsapp-glyph{width:28px;height:28px;mask-image:url(/assets/icons/vendor/whatsapp.svg);-webkit-mask-image:url(/assets/icons/vendor/whatsapp.svg)}
.top-glyph{width:24px;height:24px;mask-image:url(/assets/icons/vendor/chevron-up.svg);-webkit-mask-image:url(/assets/icons/vendor/chevron-up.svg)}
.floating-action.whatsapp-widget,html[data-theme=dark] .floating-action.whatsapp-widget{width:52px;height:52px;border:0;border-radius:50%;color:#fff;background:linear-gradient(135deg,#05C4FD 0%,#1C66C9 45%,#7A28D4 100%);box-shadow:0 8px 24px #3289ed33;animation:widget-float 5s ease-in-out infinite;transition:transform .25s ease,box-shadow .3s ease}
@keyframes widget-float{0%,100%{translate:0 0}50%{translate:0 -4px}}
.floating-action.whatsapp-widget:hover,html[data-theme=dark] .floating-action.whatsapp-widget:hover{background:linear-gradient(135deg,#05C4FD 0%,#1C66C9 45%,#7A28D4 100%);box-shadow:-5px 0 20px #05c4fd40,5px 0 20px #7a28d440,0 8px 26px #3289ed55}
.floating-action:hover .widget-glyph{scale:1.1}
.floating-action.back-to-top{border:1px solid transparent;border-radius:50%;background:linear-gradient(#f7f8fa,#f7f8fa) padding-box,linear-gradient(135deg,#05c4fd80,#3289ed80,#7a28d480) border-box;opacity:0;translate:0 6px;visibility:hidden;pointer-events:none;transition:opacity .25s ease,translate .25s ease,transform .2s ease,visibility 0s .25s}
.floating-action.back-to-top.is-visible{opacity:1;translate:0 0;visibility:visible;pointer-events:auto;transition-delay:0s}
/* Clockwise arc from twelve o'clock; only the two-pixel outer ring is painted. */
.back-to-top::before{content:'';position:absolute;inset:-4px;border-radius:50%;pointer-events:none;background:conic-gradient(#05c4fd 0deg,#3289ed calc(var(--scroll-progress,0)*180deg),#7a28d4 calc(var(--scroll-progress,0)*360deg),transparent calc(var(--scroll-progress,0)*360deg));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px))}
html[data-theme=dark] .floating-action.back-to-top{border-color:transparent;background:linear-gradient(#111a2b,#111a2b) padding-box,linear-gradient(135deg,#05c4fd70,#3289ed70,#7a28d470) border-box}
.floating-action.back-to-top:hover{background:linear-gradient(#eaf3ff,#eaf3ff) padding-box,linear-gradient(135deg,#05c4fd,#3289ed,#7a28d4) border-box}
html[data-theme=dark] .floating-action.back-to-top:hover{background:linear-gradient(#16213a,#16213a) padding-box,linear-gradient(135deg,#05c4fd,#3289ed,#7a28d4) border-box}
@media(forced-colors:active){.floating-action.whatsapp-widget,.floating-action.back-to-top{border:1px solid ButtonText;background:ButtonFace;color:ButtonText}}
@media(prefers-reduced-motion:reduce){.floating-action.whatsapp-widget,html[data-theme=dark] .floating-action.whatsapp-widget{animation:none}.floating-action.back-to-top,.floating-action.whatsapp-widget,html[data-theme=dark] .floating-action.whatsapp-widget,.floating-action .widget-glyph{transition:none}}

/* Only the five verified category hero navigations, not capability matrices. */
.service-jump.jump-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-jump.jump-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.service-jump .jump-label{display:flex;gap:14px;align-items:baseline}
@media(max-width:767px){
 .root .service-jump{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;row-gap:0}
 .root .service-jump a{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:start;gap:8px;min-width:0;min-height:64px;padding:14px 0;margin-top:0;border-top:0;border-bottom:1px solid #d9dfe8;font-size:14px}
 .service-jump .jump-label{flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
 .service-jump .jump-label>.mono{font-size:10.5px;white-space:nowrap;line-height:1.5}
 .service-jump .jump-title{min-width:0;overflow-wrap:anywhere;line-height:1.5}
 .service-jump a>svg{margin-top:2px;min-width:16px}
 .root.dkm .service-jump a{border-bottom-color:#24324c}
 .service-jump a:focus-visible{outline-offset:-3px}
}
