/* Shared material and response, scoped away from the approved hero artwork. */
:root{--surface-radius:18px;--edge-lilac:#b8a0dc52;--edge-cyan:#80cdd83b;--feedback-ease:cubic-bezier(.2,.65,.25,1)}
.capacity{padding-top:clamp(24px,4vw,56px)}
.capacity-copy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.9fr);gap:46px;align-items:end}
.capacity #capacity-title{font-size:clamp(40px,4.8vw,68px);line-height:1.08;letter-spacing:-.045em}
.capacity .capacity-copy>p{max-width:39ch;font-size:clamp(16px,1.55vw,21px);line-height:1.55;margin:0 0 5px;color:#d9d5e3;letter-spacing:0}
.capacity>.merge-demo{margin-top:18px}
.merge-demo .merge-demo__toolbar{padding:0 0 7px}
.merge-demo .app-perspective{padding:3px;border:1px solid #9c99b03d;border-radius:calc(var(--surface-radius) + 4px);background:linear-gradient(130deg,#a58acd25,#18222b88 32%,#0b1019c9 70%,#75c6d12b);box-shadow:inset 0 1px 0 #e1d8f125,0 12px 30px #0004}
.merge-demo.app-figure--merge .app-frame.merge-demo__stage{border:1px solid #a7b0c126;border-radius:var(--surface-radius);box-shadow:inset 0 1px 0 #ffffff08;will-change:auto}
.capacity .demo-conversion{margin-top:10px!important}
.capacity .connection-chip{margin-top:15px}
/* Photo scenes share the same low-profile frame and inset material edge. */
.dv26 .dv-network-scene,.dv26 .dv-sector{border:1px solid #a7a0b52d;border-radius:var(--surface-radius);background:#05090e;box-shadow:inset 0 1px 0 #e9e0ff13,0 9px 24px #0003;max-width:100%;min-width:0}
.dv26 .dv-network-scene::after{border-radius:inherit;background:linear-gradient(180deg,#07101903 30%,#06091458 68%,#05090ee8)}
.dv26 .dv-sector::after{border-radius:inherit;background:linear-gradient(180deg,#06091400 24%,#07091372 65%,#05090eec)}
.dv26 .dv-network-scene>figcaption,.dv26 .dv-sector>div{padding:0;left:28px;right:28px;bottom:28px}
.dv26 .dv-sector>div{position:relative;left:auto;right:auto;bottom:auto;padding:28px}
.dv26 .dv-capability-composition{gap:clamp(30px,4vw,60px);margin-top:32px;align-items:center}
.dv26 .dv-sector-strip{gap:24px;margin-top:32px}
.dv26 .dv-scene{padding-top:clamp(76px,8.1vw,124px)}
.dv26 .dv-intro{padding-top:86px}
.dv26 .dv-asset-scene{border-bottom:0;margin-top:25px}
.dv26 .dv-asset-scene::after{content:"";position:absolute;bottom:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent,#ba9ee733,#81cbd533,transparent);pointer-events:none}
.dv26 .dv-layer{border:1px solid #a5a1bb22;border-top-color:#b6a7d24f;border-radius:11px;background:linear-gradient(115deg,#17131f80,#0a151d64);box-shadow:inset 0 1px 0 #ffffff04}
/* Feedback is consistent across actual controls, including touch and keyboard.
   No transform is applied to logo links, simulated product UI or background. */
:where(button,a,summary,select){touch-action:manipulation}
:where(button,a,summary,select):not([disabled]){transition:color .18s var(--feedback-ease),background-color .18s var(--feedback-ease),border-color .18s var(--feedback-ease),box-shadow .22s var(--feedback-ease),filter .18s var(--feedback-ease),transform .22s var(--feedback-ease)}
:where(button,a,summary,select):focus-visible{outline:2px solid #95deec;outline-offset:4px}
:where(button,a,summary,select):not([disabled]):active{filter:brightness(1.13)}
:where(.button,.cp-button,.cp-link,.text-link,.dv-button,.dv-link,.connection-chip,.connection-floating,.merge-demo__control,.motion-toggle,.menu-toggle,.dialog-dismiss,.dialog-close):not([disabled]):active{transform:translateY(1px) scale(.988)}
:where(.language-picker,summary):active{background-color:#a492c514}
:where(button[disabled]){cursor:default}
@media(hover:hover) and (pointer:fine){
 :where(.button,.cp-button,.dv-button,.connection-chip,.connection-floating,.merge-demo__control,.motion-toggle,.dialog-dismiss):not([disabled]):hover{filter:brightness(1.09);transform:translateY(-2px);border-color:#b6c8df96;box-shadow:0 6px 18px #05030b4d,inset 0 1px 0 #e6ddff1f}
 .button-primary:hover{box-shadow:0 7px 24px #7536b94d,0 0 17px #459abe24,inset 0 1px 0 #ffeaff52}
 :where(.text-link,.cp-link,.dv-link,.site-header nav a,.expanded-footer a,.dv-reading-list>a,.dv-service-path>li>a):hover{color:#caedfa}
 :where(.text-link,.dv-link)>span[aria-hidden=true]{transition:transform .2s var(--feedback-ease)}
 :where(.text-link,.dv-link):hover>span[aria-hidden=true]{transform:translateX(4px)}
 :where(summary,.language-picker,.menu-toggle):hover{background-color:#a492c510}
 .dv26 .dv-sector:hover,.dv26 .dv-sector:focus-within{border-color:#b6acc164;box-shadow:0 12px 28px #0004,inset 0 1px 0 #d9c4ed2a}
 .dv26 .dv-sector:hover>img{transform:scale(1.02)}
}
.dv26 .dv-sector:focus-visible>img{transform:scale(1.02)}
.dv26 .dv-sector:active{transform:translateY(1px);border-color:#9dd9e1a6}
@media(max-width:760px){
 :root{--surface-radius:15px}
 .capacity{padding-top:20px;display:flex;flex-direction:column}
 .capacity-copy{display:block;order:0}
 .capacity #capacity-title{font-size:clamp(25px,6.2vw,34px);line-height:1.12}
 .capacity .capacity-copy>p{font-size:14px;line-height:1.48;margin:10px 0 0;max-width:45ch}
 .capacity>.merge-demo{order:1;margin-top:10px}
 .merge-demo .merge-demo__toolbar{padding:0 0 5px}
 .merge-demo .app-perspective{padding:2px;border-radius:calc(var(--surface-radius) + 3px);box-shadow:inset 0 1px 0 #e1d8f11c,0 8px 20px #0003}
 .capacity>.demo-conversion{order:2;margin-top:8px!important}
 .capacity>.connection-chip{order:3}
 .dv26 .dv-scene{padding-top:64px}
 .dv26 .dv-intro{padding-top:50px}
 .dv26 .dv-capability-composition,.dv26 .dv-sector-strip{gap:22px;margin-top:26px}
 .dv26 .dv-network-scene>figcaption{left:24px;right:24px;bottom:24px}
 .dv26 .dv-sector>div{padding:24px}
}
@media(prefers-reduced-motion:reduce){
 :where(button,a,summary,select),.dv26 .dv-sector>img{transition:none!important}
 :where(.button,.cp-button,.cp-link,.text-link,.dv-button,.dv-link,.connection-chip,.connection-floating,.merge-demo__control,.motion-toggle,.menu-toggle,.dialog-dismiss,.dialog-close,.dv-sector):is(:hover,:active,:focus-visible){transform:none!important}
 .dv26 .dv-sector>img{transform:none!important}
}
/* Owner-selected example results: no billed currency or claimed API measurement. */
.merge-demo .merge-demo__q-grid.merge-demo__results{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:13px}
.merge-demo .merge-demo__q-card.merge-demo__result{padding:24px 18px;justify-content:center;align-items:flex-start;background:linear-gradient(140deg,#0a1412e6,#050a0be8);border-color:#75be9c30;border-radius:13px}
.merge-demo .merge-demo__result>strong.merge-demo__result-value{font-size:clamp(39px,4.7vw,68px);color:#80e3aa;font-weight:540;letter-spacing:-.06em;line-height:1.05;margin:0 0 14px;white-space:nowrap}
.merge-demo .merge-demo__result-copy h3{font-size:clamp(18px,1.65vw,24px);font-weight:450;line-height:1.18;letter-spacing:-.025em;color:#eff8f2;margin:0}
.merge-demo .merge-demo__result-copy p{font-size:12px;line-height:1.45;color:#b5c9c0;margin:12px 0 0}
.merge-demo .merge-demo__compare{width:100%;margin-top:23px;display:grid;gap:10px}
.merge-demo .merge-demo__compare>div{display:grid;gap:5px}
.merge-demo .merge-demo__compare span{font-size:12px;line-height:1.2;color:#aebeb7}
.merge-demo .merge-demo__compare i{display:block;height:4px;border-radius:4px}
.merge-demo .merge-demo__bar-before{width:100%;background:#74847d}
.merge-demo .merge-demo__bar-after{width:35%;background:linear-gradient(90deg,#4fbb84,#8deab4)}
@media(max-width:1000px){
 .merge-demo .merge-demo__q-grid.merge-demo__results{grid-template-columns:minmax(0,1fr);grid-template-rows:1.4fr 1fr 1fr;gap:6px}
 .merge-demo .merge-demo__q-card.merge-demo__result{display:grid;grid-template-columns:90px minmax(0,1fr);gap:0 13px;align-items:center;justify-content:initial;padding:8px 13px;border-radius:10px}
 .merge-demo .merge-demo__result>strong.merge-demo__result-value{font-size:32px;line-height:1;margin:0;letter-spacing:-.05em}
 .merge-demo .merge-demo__result-copy h3{font-size:15px;line-height:1.1;margin:0}
 .merge-demo .merge-demo__result-copy p{font-size:12px;line-height:1.3;margin:4px 0 0}
 .merge-demo .merge-demo__compare{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:13px;margin-top:7px}
 .merge-demo .merge-demo__compare>div{gap:4px}
 .merge-demo .merge-demo__compare span{font-size:12px;line-height:1.1}
 .merge-demo .merge-demo__compare i{height:3px}
}
@media(max-width:380px){
 .merge-demo .merge-demo__q-card.merge-demo__result{grid-template-columns:79px minmax(0,1fr);column-gap:10px;padding:7px 10px}
 .merge-demo .merge-demo__result>strong.merge-demo__result-value{font-size:28px}
 .merge-demo .merge-demo__result-copy h3{font-size:14px}
 .merge-demo .merge-demo__result-copy p{font-size:12px;line-height:1.22}
}

/* Owner-requested wording stays within the established text column. */
.hero-copy h1 span{font-size:.84em;line-height:1.12;max-width:100%;white-space:normal}

body.viewing-merge-demo .connection-floating{display:none}

/* Mouse-down feedback comes after hover, so it remains visible on fine pointers. */
:where(button,a,summary,select):not([disabled]):active{filter:brightness(1.13)}
:where(.button,.cp-button,.cp-link,.text-link,.dv-button,.dv-link,.connection-chip,.connection-floating,.merge-demo__control,.motion-toggle,.menu-toggle,.dialog-dismiss,.dialog-close):not([disabled]):active,
:where(.button,.cp-button,.cp-link,.text-link,.dv-button,.dv-link,.connection-chip,.connection-floating,.merge-demo__control,.motion-toggle,.menu-toggle,.dialog-dismiss,.dialog-close):not([disabled]):hover:active{transform:translateY(1px) scale(.988);box-shadow:inset 0 1px 5px #0003}

/* Compact guided benefits retain all explanations without dense text columns. */
.editorial-proof{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:clamp(36px,6vw,88px);align-items:start}
.editorial-proof>.eyebrow{grid-column:1/-1;margin-bottom:24px!important}
.editorial-proof #proof-title{font-size:clamp(30px,3.35vw,46px);line-height:1.17;letter-spacing:-.035em;max-width:19ch}
.editorial-proof #proof-title strong{font-weight:550}
.editorial-proof #proof-title span{margin-top:14px;color:#ccc5da;font-weight:350}
.benefit-journey{display:grid;gap:12px}
.benefit-step{position:relative;border:1px solid #b1a4c31c;border-radius:18px;background:linear-gradient(110deg,#16111e75,#07141a60);box-shadow:inset 0 1px 0 #e5d8ef08;overflow:hidden}
.benefit-step summary{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:8px 20px;padding:22px 24px;list-style:none;cursor:pointer}
.benefit-step summary::-webkit-details-marker{display:none}
.benefit-step .benefit-label{grid-column:1;margin:0;font-size:12px;line-height:1.4;letter-spacing:.08em;color:#c7b0e4}
.benefit-step h3{grid-column:1;margin:0;font-size:clamp(19px,1.8vw,24px);line-height:1.24;font-weight:450;letter-spacing:-.025em}
.benefit-plus{grid-column:2;grid-row:1/3;align-self:center;width:18px;height:18px;position:relative;color:#a7dbe6}
.benefit-plus::before,.benefit-plus::after{content:"";position:absolute;width:14px;height:1px;left:2px;top:8px;background:currentColor;transition:transform .2s}
.benefit-plus::after{transform:rotate(90deg)}
.benefit-step[open] .benefit-plus::after{transform:rotate(0)}
.benefit-step[open]{border-color:#bbabcf38;background:linear-gradient(110deg,#21142c80,#08192375)}
.benefit-step>p{padding:0 24px 24px;margin:0;max-width:61ch;font-size:16px;line-height:1.6;color:#d5cfdf;font-weight:350}
@media(hover:hover){.benefit-step summary:hover{background:#b495d708}.benefit-step:hover{border-color:#a4bccb47}}
.benefit-step summary:focus-visible{outline-offset:-4px;border-radius:17px}
.benefit-step summary:active{background:#b495d715}
@media(max-width:760px){.editorial-proof{display:block}.editorial-proof #proof-title{font-size:30px;max-width:25ch}.editorial-proof #proof-title span{margin-top:8px}.benefit-journey{margin-top:25px;gap:10px}.benefit-step summary{padding:19px 20px;gap:7px 15px}.benefit-step h3{font-size:20px}.benefit-step>p{padding:0 20px 22px;font-size:16px}}
@media(prefers-reduced-motion:reduce){.benefit-plus::after{transition:none}}
/* Feather only Shadow's narrow black/glow perimeter, preserving the solid emblem. */
.product-shadow .product-symbol{mask-image:linear-gradient(90deg,transparent,#000 5%,#000 96%,transparent),linear-gradient(180deg,transparent,#000 6%,#000 94%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 96%,transparent),linear-gradient(180deg,transparent,#000 6%,#000 94%,transparent);-webkit-mask-composite:source-in}

/* HOME50 mobile product matte refinement.
   The effective source windows in styles.css (lines 17-37) already contain
   the full names/emblems. Preserve those windows and their original scale.
   Feather only the narrow outer matte/reflection perimeter on both axes;
   retain the existing screen composition and fully opaque emblem interior. */
@media (max-width:760px) {
  #ecossistema .product-check .product-symbol,
  #ecossistema .product-merge .product-symbol,
  #ecossistema .product-shadow .product-symbol {
    -webkit-mask-image:linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent), linear-gradient(180deg, transparent, #000 4%, #000 96%, transparent);
    mask-image:linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent), linear-gradient(180deg, transparent, #000 4%, #000 96%, transparent);
    -webkit-mask-composite:source-in;
    mask-composite:intersect;
  }
  #ecossistema .product-check .product-word,
  #ecossistema .product-merge .product-word,
  #ecossistema .product-shadow .product-word {
    -webkit-mask-image:linear-gradient(90deg, transparent, #000 1%, #000 99%, transparent), linear-gradient(180deg, transparent, #000 5%, #000 95%, transparent);
    mask-image:linear-gradient(90deg, transparent, #000 1%, #000 99%, transparent), linear-gradient(180deg, transparent, #000 5%, #000 95%, transparent);
    -webkit-mask-composite:source-in;
    mask-composite:intersect;
  }
}
