/* Curved surface transitions restored; shared title system retained. */
.editorial #in-action{padding-bottom:clamp(70px,7vw,110px)}
.editorial #product{padding-top:clamp(120px,10vw,170px);padding-bottom:clamp(100px,9vw,145px)}
.quiet-section-seam{position:absolute;left:0;width:100%;height:clamp(46px,5.4vw,88px);pointer-events:none;z-index:4;overflow:hidden}

.quiet-section-seam-to-light{top:0}
.quiet-section-seam-to-dark{bottom:calc(100% - 1px)}
.editorial #software{position:relative;padding-top:clamp(100px,9vw,150px);background:#000!important;--feature-height:0px;--tile-boundary:0px;overflow:visible}
.editorial #software>.section-heading{position:absolute;top:clamp(100px,9vw,150px);left:var(--pad);width:27%;margin:0;z-index:4;padding:0}
.editorial #software>.section-heading .included{max-width:23ch;white-space:normal;line-height:1.45}
.software-scene{position:relative;isolation:isolate;width:calc(100% + 2 * var(--pad));margin-inline:calc(-1 * var(--pad));z-index:3}
.editorial #software .software-scene .connected-poster{position:relative;width:100%;margin:0}
.editorial #software .software-scene .connected-poster>img{width:100%;height:auto}
.monitor-platforms{position:absolute;top:10%;right:4.2%;width:clamp(190px,17vw,310px);z-index:5;color:#d9eaf0}
.monitor-platforms>p{font:500 17px/1.4 Arial,sans-serif;letter-spacing:-.02em;color:#8caab9;margin:0 0 25px}
.monitor-platforms ul{list-style:none;padding:0;margin:0;display:grid;gap:22px}
.monitor-platforms li{display:flex;align-items:center;gap:16px;margin:0;padding:0;font:600 clamp(18px,1.55vw,25px)/1.2 Arial,sans-serif;letter-spacing:-.025em;color:#d8eaf0}
.monitor-platforms svg{width:28px;height:28px;flex:none;opacity:.85}
.monitor-platforms .feature-platform{display:grid;place-items:center;flex:none;width:28px;font:400 29px/1 TMDisplay,Impact,sans-serif;color:#a4dfeb}
.editorial #in-action .explanation-intro{padding-top:clamp(50px,5vw,90px);padding-bottom:clamp(30px,3vw,48px)}
.editorial #in-action .film-eyebrow{font:400 clamp(30px,2.8vw,48px)/1.04 TMDisplay,Impact,sans-serif!important;letter-spacing:-.02em;margin:0 0 14px;color:#d6e8ee}
.editorial #in-action #explanations-title{font-size:clamp(68px,8vw,144px);line-height:1.02;letter-spacing:-.025em}
.editorial #in-action #explanations-title .action-title-word{background-image:linear-gradient(#c2f6fc,#74ddeb);color:#93dce7}
@media(min-width:1800px){.monitor-platforms{top:11%;right:5.5%}.monitor-platforms ul{gap:28px}}
@media(max-width:1100px) and (min-width:801px){.monitor-platforms{top:9%;right:2.5%;width:180px}.monitor-platforms>p{font-size:15px;margin-bottom:17px}.monitor-platforms ul{gap:16px}.monitor-platforms li{font-size:18px;gap:11px}.monitor-platforms svg{width:24px;height:24px}.monitor-platforms .feature-platform{width:24px;font-size:25px}.editorial #software>.section-heading h2{font-size:clamp(62px,7.7vw,90px)}}
@media(max-width:800px){
 .editorial #product{padding-top:100px;padding-bottom:100px}.quiet-section-seam{height:44px}
 .editorial #in-action{padding-bottom:60px}.editorial #software{padding-top:70px}
 .editorial #software>.section-heading{position:relative;inset:auto;width:auto;margin:0 0 24px;padding:0}
 .editorial #software>.section-heading .included{max-width:none;margin-top:18px}
 .monitor-platforms{position:relative;inset:auto;width:auto;margin:20px var(--pad) 0;padding:25px 0 0}
 .monitor-platforms>p{font-size:16px;margin-bottom:20px}
 .monitor-platforms ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
 .monitor-platforms li{font-size:16px;gap:11px;align-items:center}
 .monitor-platforms svg{width:25px;height:25px}.monitor-platforms .feature-platform{font-size:26px;width:25px}
 .editorial #in-action .film-eyebrow{font-size:30px!important}.editorial #in-action #explanations-title{font-size:clamp(58px,14vw,90px)}
 .editorial #in-action .explanation-intro{padding-top:40px;padding-bottom:30px}
}
@media(max-width:580px){.monitor-platforms ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px}.monitor-platforms li{font-size:18px;gap:13px}.monitor-platforms>p{font-size:16px}.monitor-platforms{margin-top:18px;padding-top:18px}.editorial #software{padding-bottom:70px}}

/* One title system for the films, hardware and software sections. */
.editorial #in-action .section-heading{display:flex;text-align:left;margin:0;padding:0;gap:0}
.editorial #in-action .film-eyebrow,
.editorial #product>.section-heading .eyebrow,
.editorial #software>.section-heading .eyebrow{font:400 clamp(26px,2.2vw,38px)/1.1 TMDisplay,Impact,sans-serif!important;letter-spacing:-.02em;margin:0 0 14px}
.editorial #in-action .film-eyebrow{color:#b5f3fb}
.editorial #in-action #explanations-title,
.editorial #product>.section-heading h2,
.editorial #software>.section-heading h2{font-family:TMDisplay,Impact,"Arial Narrow",sans-serif;font-weight:400;font-size:clamp(68px,8vw,144px);line-height:1.02;letter-spacing:-.025em;text-align:left;width:max-content;max-width:100%;color:#edf9fc}
.editorial #product>.section-heading h2{color:#102029}
.editorial #in-action #explanations-title .action-title-word{display:inline-block;background-image:linear-gradient(#b5f3fb,#4eaabb);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:#74ddeb}
.quiet-section-seam svg{display:block;width:100%;height:100%}
/* Align platform logos to the final guide column instead of floating a separate UI beside the shot. */
.monitor-platforms{top:12%;right:var(--pad);width:calc((100% - 2 * var(--pad))/6);padding-left:clamp(12px,1.6vw,28px);color:#edf9fc}
.monitor-platforms ul{display:flex;flex-direction:column;gap:26px}
.monitor-platforms li{display:flex;align-items:center;gap:14px;font:400 clamp(23px,2vw,32px)/1.1 TMDisplay,Impact,sans-serif;letter-spacing:-.02em;color:#e3f0f5}
.monitor-platforms svg,.monitor-platforms img{width:36px;height:36px;object-fit:contain;flex:none;opacity:1}
.monitor-platforms svg{color:#b5f3fb}
@media(min-width:1800px){.monitor-platforms{top:12%;right:var(--pad)}.monitor-platforms ul{gap:32px}}
@media(max-width:1100px) and (min-width:801px){.monitor-platforms{top:13%;right:var(--pad);width:calc((100% - 2 * var(--pad))/6);padding-left:8px}.monitor-platforms ul{gap:20px}.monitor-platforms li{font-size:22px;gap:9px}.monitor-platforms svg,.monitor-platforms img{width:28px;height:28px}}
@media(max-width:800px){
 .editorial #in-action #explanations-title,.editorial #product>.section-heading h2,.editorial #software>.section-heading h2{font-size:clamp(58px,14vw,90px)}
 .editorial #in-action .film-eyebrow,.editorial #product>.section-heading .eyebrow,.editorial #software>.section-heading .eyebrow{font-size:26px!important}
 .monitor-platforms{position:relative;inset:auto;width:auto;padding:0;margin:24px var(--pad) 0}
 .monitor-platforms ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
 .monitor-platforms li{flex-direction:column;align-items:center;gap:12px;font-size:23px}
 .monitor-platforms svg,.monitor-platforms img{width:34px;height:34px}
}
@media(max-width:400px){.monitor-platforms li{font-size:21px}.monitor-platforms ul{gap:10px}}

/* Platform information must remain readable: the global copy size is !important. */
.editorial #software .monitor-platforms li{font-size:clamp(30px,2.5vw,40px)!important;line-height:1.1;gap:16px}
.editorial #software .monitor-platforms svg,.editorial #software .monitor-platforms img{width:46px;height:46px}
.editorial #software .monitor-platforms ul{gap:26px}
.editorial #software>.section-heading .included{font-size:18px!important;line-height:1.4;max-width:25ch}
@media(max-width:1100px) and (min-width:801px){
 .editorial #software .monitor-platforms{padding-left:0}
 .editorial #software .monitor-platforms li{font-size:28px!important;gap:10px}
 .editorial #software .monitor-platforms svg,.editorial #software .monitor-platforms img{width:34px;height:34px}
 .editorial #software .monitor-platforms ul{gap:22px}
}
@media(max-width:800px){
 .editorial #software .monitor-platforms li{font-size:28px!important}
 .editorial #software .monitor-platforms svg,.editorial #software .monitor-platforms img{width:40px;height:40px}
 .editorial #software .monitor-platforms ul{gap:24px 16px}
 .editorial #software>.section-heading .included{font-size:17px!important;max-width:none}
}
@media(max-width:580px){
 .editorial #software .monitor-platforms ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
 .editorial #software .monitor-platforms li{flex-direction:row;justify-content:flex-start;gap:14px}
}
@media(min-width:801px){
 .editorial #software .monitor-platforms{top:8%}
 .editorial #software .monitor-platforms ul{gap:clamp(14px,1.4vw,24px)}
}
@media(max-width:360px){
 .editorial #software .monitor-platforms li{font-size:24px!important;gap:8px}
 .editorial #software .monitor-platforms svg,.editorial #software .monitor-platforms img{width:32px;height:32px}
 .editorial #software .monitor-platforms ul{gap:22px 16px}
}

/* Light follows the actual curved surface boundary: a fine core over a soft cyan halo. */
.quiet-section-seam,.quiet-section-seam svg{overflow:visible}
.seam-edge-halo{stroke-width:8px;opacity:.5;filter:blur(5px)}
.seam-edge-light{filter:drop-shadow(0 0 2px #74ddebcc) drop-shadow(0 0 6px #74ddeb66)}
@media(max-width:800px){.seam-edge-halo{stroke-width:6px;filter:blur(4px);opacity:.45}}

/* The effects themselves follow the curved boundary instead of stopping at a rectangular host. */
body.editorial{--section-edge-height:clamp(46px,5.4vw,88px)}
.editorial #in-action .action-background-surface{
 bottom:calc(-1 * var(--section-edge-height));background:#000;
 mask-image:linear-gradient(#fff,#fff),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V30C1060 5 530 110 0 58Z' fill='white'/%3E%3C/svg%3E");
 mask-size:100% calc(100% - var(--section-edge-height)),100% var(--section-edge-height);
 mask-position:top,bottom;mask-repeat:no-repeat;mask-composite:add;
}
.software-effect-surface{
 position:absolute;inset:calc(-1 * var(--section-edge-height)) 0 0;z-index:0;pointer-events:none;background:#000;
 mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0 22C500 90 990 0 1440 52V100H0Z' fill='white'/%3E%3C/svg%3E"),linear-gradient(#fff,#fff);
 mask-size:100% var(--section-edge-height),100% calc(100% - var(--section-edge-height));
 mask-position:top,bottom;mask-repeat:no-repeat;mask-composite:add;
}
.editorial #software .software-effect-surface .monitor-pulsar{inset:0;width:100%;height:100%;mask-image:none}
/* The extended effect surfaces now supply the black fill underneath the glowing paths. */
.quiet-section-seam svg>path:not([class]){fill:transparent}
@media(max-width:800px){body.editorial{--section-edge-height:44px}}

/* Match the software mask to its SVG edge down to the one-pixel overlap. */
.software-effect-surface{top:calc(1px - var(--section-edge-height))}
.quiet-section-seam svg{shape-rendering:geometricPrecision}
.seam-edge-light,.seam-edge-halo,.seam-runner{stroke-linecap:round;stroke-linejoin:round}
/* An optical flare has a continuous radial falloff, with no finite bright stroke. */
.edge-optical-flare{position:absolute;left:0;top:0;width:clamp(230px,27vw,440px);height:clamp(60px,7vw,105px);pointer-events:none;opacity:0;mix-blend-mode:screen;will-change:transform,opacity;filter:brightness(1.4);
 background:radial-gradient(ellipse 17% 30% at 50% 50%,#efffffcc 0%,#b5f3fb66 20%,#74ddeb18 48%,transparent 78%),radial-gradient(ellipse 50% 42% at 50% 50%,#74ddeb55 0%,#74ddeb22 26%,#74ddeb08 52%,transparent 78%)}
.edge-optical-flare::before{content:"";position:absolute;inset:28% 3%;background:radial-gradient(ellipse 50% 50% at 50% 50%,#b5f3fb77 0%,#74ddeb25 22%,#74ddeb08 45%,transparent 80%);filter:blur(7px)}
.edge-optical-flare::after{content:"";position:absolute;left:0;right:0;top:calc(50% - 1px);height:2px;background:linear-gradient(90deg,transparent 0%,#74ddeb08 16%,#b5f3fb44 36%,#eaffffc4 50%,#b5f3fb44 64%,#74ddeb08 84%,transparent 100%);filter:blur(1.3px)}
.motion-paused .edge-optical-flare{visibility:hidden}
@media(max-width:800px){.edge-optical-flare{width:220px;height:64px}.edge-optical-flare::before{filter:blur(6px)}}
@media(prefers-reduced-motion:reduce){.edge-optical-flare{display:none}}
