.visual-hotwire{display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 40%,#f9fcfe,#e4eef5)!important;container-type:inline-size}.cnc-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:22px 24px 0;color:#355e79}.cnc-heading strong{font:600 22px var(--heading);letter-spacing:-.6px}.cnc-heading strong span{font:400 14px var(--body);letter-spacing:1px}.cnc-heading>span{font-size:14px}.cnc-scene{display:block;width:100%;min-height:0;flex:1;overflow:visible}.cnc-flow{display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px;color:#3d6780;padding:0 20px 20px;line-height:1.5}.cnc-flow .icon{width:16px;height:16px;flex-shrink:0}.cnc-wire-travel{offset-path:path('M320 404C334 361 426 351 560 415C419 442 338 426 320 404Z');offset-rotate:0deg;animation:cnc-cut 9s linear infinite}.cnc-profile{animation:cnc-path 3s linear infinite}.service-project>.visual-hotwire{height:285px!important}.case-hero>.visual-hotwire{height:560px!important;max-width:1000px;margin:auto}.portfolio-grid .visual-hotwire{height:360px!important}.compact-project .visual-hotwire{height:220px!important}.compact-project .cnc-heading{padding:12px 14px 0}.compact-project .cnc-heading strong{font-size:17px}.compact-project .cnc-heading>span,.compact-project .cnc-flow{display:none}
@keyframes cnc-cut{to{offset-distance:100%}}@keyframes cnc-path{to{stroke-dashoffset:-52}}
@container(max-width:420px){.cnc-heading{padding:18px 16px 0;flex-wrap:wrap;gap:8px}.cnc-heading strong{font-size:20px}.cnc-flow{gap:7px;padding:0 12px 16px}.cnc-flow span{max-width:95px;text-align:center}.cnc-heading>span{display:none}}
@media(max-width:600px){.case-hero>.visual-hotwire{height:330px!important}.service-project>.visual-hotwire{height:285px!important}}
@media(prefers-reduced-motion:reduce){.cnc-wire-travel{animation:none;offset-distance:30%}.cnc-profile{animation:none}}
.whatsapp-float{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:35;display:flex;gap:10px;align-items:center;justify-content:center;background:#15804a;color:white;border:1px solid #ffffff65;border-radius:32px;padding:14px 20px;min-height:56px;box-shadow:0 5px 22px #15573930;font-weight:600;font-size:15px;transition:background .2s,transform .2s}.whatsapp-float svg{width:27px;height:27px;flex-shrink:0}.whatsapp-float:hover{background:#0d663b;transform:translateY(-2px)}.contact-feedback{position:fixed;bottom:94px;right:24px;z-index:60;padding:14px 20px;border:1px solid #d6e4ed;border-radius:10px;background:white;box-shadow:0 8px 30px #18394e20;color:#284b63;max-width:min(350px,calc(100vw - 40px));font-size:15px}.site-footer{padding-bottom:90px}
@media(max-width:600px){.whatsapp-float{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:56px;height:56px;padding:12px}.whatsapp-float>span{display:none}.contact-feedback{right:16px;bottom:85px}.contact-direct>span{overflow-wrap:anywhere}}
.service-project>.project-visual:not(.screen-visual){height:285px!important}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 28px}.archive-capture{display:block;position:relative;border:1px solid #dbe5ec;border-radius:12px;overflow:hidden;background:#eef3f7;transition:transform .2s,box-shadow .2s}.archive-capture:hover{transform:translateY(-4px);box-shadow:0 12px 28px #1d405218}.archive-capture img{width:100%;height:270px;object-fit:cover;object-position:top;display:block}.archive-capture .browser-chrome{padding:12px;gap:5px;height:39px}.archive-capture .browser-chrome span{margin-left:8px;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-open{position:absolute;right:12px;bottom:12px;background:white;border-radius:50%;padding:9px;box-shadow:0 3px 16px #163b5320;display:flex}.archive-open .icon{width:20px;height:20px}.archive-card h3{font-size:23px;margin:20px 0 8px;letter-spacing:-.5px}.archive-card p{font-size:16px;line-height:1.6;color:var(--muted);margin:0}.archive-more{margin-top:40px}.archive-more>summary{width:fit-content;display:flex;align-items:center;gap:18px;border:1px solid #c3d5e2;border-radius:9px;padding:16px 22px;cursor:pointer;font-size:17px;font-weight:600;list-style:none}.archive-more>summary::-webkit-details-marker{display:none}.archive-more>summary>span{color:var(--blue)}.archive-more[open]>summary{margin-bottom:35px}.archive-more[open]>summary>.icon{transform:rotate(45deg)}.archive-infrastructure{margin-top:65px;border-top:1px solid #d9e4eb;padding-top:38px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.archive-infrastructure h3{font-size:25px;margin:0 0 12px}.archive-infrastructure p{color:var(--muted);font-size:17px}.archive-infrastructure ul{list-style:none;display:flex;flex-wrap:wrap;gap:14px;margin:0;padding:0;align-content:start}.archive-infrastructure li{background:#f0f5f9;padding:13px 18px;border-radius:7px;font-size:17px}.client-archive[hidden]{display:none}
@media(max-width:1000px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.archive-grid{grid-template-columns:1fr;gap:34px}.archive-capture img{height:300px}.archive-infrastructure{grid-template-columns:1fr;gap:16px}.archive-more>summary{font-size:16px;gap:12px;padding:14px 16px}}
@media(prefers-reduced-motion:reduce){.archive-capture{transition:none}}
.service-project>.visual-prime{display:flex;flex-direction:column}.service-project .prime-top,.service-project .console-bar{flex-shrink:0}.service-project .camera-scene{flex:1;min-height:0;height:auto;margin-top:16px}.service-project .console-bar{margin-top:12px}
.archive-card:not(:has(.archive-capture)){grid-column:1/-1;order:1;border-top:1px solid #d9e4eb;padding:22px 0;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.archive-card:not(:has(.archive-capture)) h3{margin:0}
/* Equal visual weight for the two leading homepage stories. */
.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.featured-grid>.project-card:not(.project-imars){display:flex;flex-direction:column}
.featured-grid>.project-card:not(.project-imars)>.project-visual{height:360px!important;flex-shrink:0}
.featured-grid>.project-card:not(.project-imars)>.project-info{flex:1}
.featured-grid>.project-topvoos>.screen-visual{display:flex!important;flex-direction:column}
.featured-grid>.project-topvoos .browser-chrome{flex-shrink:0}
.featured-grid>.project-topvoos .screen-visual img{height:0!important;min-height:0;flex:1;aspect-ratio:auto}
.featured-grid>.project-prime>.visual-prime{display:flex;flex-direction:column}
.featured-grid>.project-prime .prime-top,.featured-grid>.project-prime .console-bar{flex-shrink:0}
.featured-grid>.project-prime .camera-scene{flex:1;min-height:0;height:auto}
/* A distinct transition from delivery approach to the conversation. */
.service-page .service-method{padding-bottom:64px}
.service-page .contact-section{background:#edf5fb;border-top:1px solid #cedfea;padding-block:72px}
.service-page .contact-form{background:#fff;border-color:#c9dce9;box-shadow:0 12px 36px #244b6910}
@media(max-width:900px){.featured-grid{grid-template-columns:1fr}}
@media(max-width:620px){.featured-grid>.project-card:not(.project-imars)>.project-visual{height:300px!important}.service-page .service-method{padding-bottom:44px}.service-page .contact-section{padding-block:48px}}
@media(max-width:620px){.featured-grid>.project-card.project-topvoos>.screen-visual{height:auto!important}.featured-grid>.project-topvoos .screen-visual img{height:auto!important;flex:none;aspect-ratio:16/9}}
/* Compact, consistently sized project gallery. */
.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 28px;padding-top:48px;padding-bottom:56px}
.portfolio-grid .project-visual{height:240px!important;min-height:0}
.portfolio-grid .screen-visual{display:flex!important;flex-direction:column}
.portfolio-grid .browser-chrome{flex-shrink:0}
.portfolio-grid .screen-visual img{height:0!important;min-height:0;flex:1;aspect-ratio:auto}
.portfolio-grid .visual-prime{display:flex;flex-direction:column;padding:20px}
.portfolio-grid .prime-top,.portfolio-grid .console-bar{flex-shrink:0}
.portfolio-grid .camera-scene{flex:1;min-height:0;height:auto;margin-top:15px}
.portfolio-grid .console-bar{margin-top:10px}
.portfolio-copy{padding:18px 0 0}.portfolio-copy h2{font-size:24px;line-height:1.4;gap:12px;margin:10px 0}.portfolio-copy h2 .icon{flex-shrink:0}.portfolio-copy p{font-size:16px;margin-bottom:12px}.portfolio-copy .eyebrow{letter-spacing:.5px}
.portfolio-infrastructure{margin-bottom:64px}
@media(max-width:1000px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.portfolio-grid{grid-template-columns:1fr;gap:34px;padding-top:32px;padding-bottom:40px}.portfolio-filters{gap:8px}.portfolio-filters button{padding:11px 15px}.portfolio-infrastructure{margin-bottom:44px}}
.language-flag{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:21px;line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;letter-spacing:0}.language-options a{justify-content:flex-start;gap:11px}.language-options a>.icon{margin-left:auto}

/* Clear scene selection, with a quiet control for automatic rotation. */
.scene-tabs{background:#e3eef7;border:1px solid #bad1e3;padding:5px;gap:4px;border-radius:12px;box-shadow:0 5px 18px #173e6410}
.scene-tab{min-height:46px;padding:12px 16px;font-size:15px;font-weight:600;color:#36546d;border-radius:8px}
.scene-tab .icon{width:17px;height:17px;flex-shrink:0}
.scene-tab:hover{background:#d2e5f3;color:#123d61}
.scene-tab.active,.scene-tab.active:hover{background:#0879bc;color:#fff;box-shadow:0 3px 9px #065c9638}
.scene-tab:focus-visible,.scene-rotation:focus-visible{outline:3px solid #104e7a;outline-offset:3px}
.scene-rotation{display:inline-flex;align-items:center;gap:8px;min-height:36px;background:transparent;color:#48677f;font-size:14px;padding:4px 10px;border-radius:6px}
.scene-rotation[hidden]{display:none}
.scene-rotation:hover{background:#e3eef7;color:#123d61}
.scene-rotation svg{width:14px;height:14px}
.rotation-play,.scene-rotation[aria-pressed="true"] .rotation-pause{display:none}
.scene-rotation[aria-pressed="true"] .rotation-play{display:block}
@media(max-width:600px){.scene-tabs{width:100%;justify-content:center;gap:3px}.scene-tab{justify-content:center;flex:1;padding:11px 8px;font-size:14px;gap:6px}}
