/* Incremental homepage storytelling. No global palette or contact geometry changes. */
.enterprise-picture-slot{min-width:0;width:min(100%,calc((var(--scene-height,100vh) - 190px)*1.5));aspect-ratio:3 / 2;align-self:center;justify-self:center;max-height:none}
.enterprise-photo-caption{position:absolute;left:20px;bottom:18px;max-width:calc(100% - 40px);padding:7px 12px;background:rgb(255 255 255 / .9);color:var(--yc-light-text);font-size:12px;line-height:1.5;border-radius:5px}
.connection-map{height:100%;display:flex;flex-direction:column;gap:12px;padding:20px;background:var(--yc-light-canvas,#fff);color:var(--yc-light-text);box-sizing:border-box}
.connection-map-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;flex:none}
.connection-map-heading h2{font-size:clamp(26px,2.4vw,42px);margin:6px 0;line-height:1.2;color:var(--yc-light-text)}
.connection-map-heading p{margin:0 0 0 auto;max-width:50%;text-align:right;font-size:14px;line-height:1.5;color:var(--yc-light-secondary)}
.connection-map-heading strong{font-size:clamp(40px,5vw,76px);line-height:1;color:var(--yc-light-primary);font-weight:600}
.connection-map-heading strong span{font-size:.55em;vertical-align:top}
.connection-map-nav{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:8px}
.connection-map-nav button{border:0;background:none;color:var(--yc-light-secondary);padding:0;font:inherit;font-size:12px;line-height:1.5}
.connection-map-nav button:hover,.connection-map-nav button:focus-visible{color:var(--yc-light-primary)}
.connection-map-graphic{flex:1;min-height:0;display:grid;place-items:center;overflow:hidden}
.connection-map-graphic>svg,.connection-map-graphic>img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.connection-map .route{stroke:#28a9ff;stroke-opacity:1;stroke-dasharray:1 1;stroke-dashoffset:0;opacity:1;animation:none!important}
.connection-map.map-managed:not(.map-started) .route{stroke-dashoffset:1;opacity:0}
.connection-regions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;flex:none}
.connection-regions button{display:block;text-align:left;min-width:0;border:0;padding:12px;background:rgb(255 255 255 / .08);border-radius:12px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--yc-light-text);font:inherit;transition:color .2s}
.connection-regions button b{display:block;font-size:14px;line-height:1.4;margin-bottom:5px}
.connection-regions button span{display:block;color:var(--yc-light-secondary);font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.connection-map.map-managed:not(.map-started) .connection-regions button{opacity:0}
.connection-map.has-region-focus .route{opacity:.18!important}
.connection-map.has-region-focus .route.is-highlighted{opacity:1!important;stroke:#28a9ff!important;stroke-width:.65!important}
.connection-regions button:hover b,.connection-regions button:focus-visible b{color:var(--yc-light-primary)}
.connection-map-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;flex:none}
.connection-map-foot p{font-size:11px;line-height:1.5;color:var(--yc-light-secondary);margin:0;max-width:76%}
.connection-map-foot a{font-size:12px;line-height:1.5;white-space:nowrap}
.enterprise-desktop .enterprise-layout{position:static}
.enterprise-desktop .enterprise-themes{opacity:var(--map-copy-opacity,1);transform:translateY(var(--map-copy-y,0px));transition:none}
.enterprise-desktop .enterprise-pictures{position:absolute;left:var(--map-x);top:var(--map-y);width:var(--map-w);height:var(--map-h);aspect-ratio:auto;max-height:none;z-index:3;border-radius:var(--map-radius,12px);transition:none}
.enterprise-desktop .enterprise-visual[data-picture="0"]>img{object-fit:cover;object-position:50% 55%}
.enterprise-desktop .enterprise-visual[data-picture="1"]>img{object-fit:cover;object-position:50% 70%}
.enterprise-desktop .enterprise-visual[data-picture="2"]{pointer-events:none}
.enterprise-desktop .enterprise-visual[data-picture="2"].is-active{pointer-events:auto}
.enterprise-desktop .connection-map{padding:var(--map-padding,20px)}
.enterprise-desktop .connection-map-heading,.enterprise-desktop .connection-regions,.enterprise-desktop .connection-map-foot{opacity:var(--map-details-opacity,0)}
.enterprise-desktop .connection-map-heading{max-height:calc(140px * var(--map-expand,0));overflow:hidden}
.enterprise-desktop .connection-regions{max-height:calc(100px * var(--map-expand,0));overflow:hidden}
.enterprise-desktop .connection-map-foot{max-height:calc(45px * var(--map-expand,0));overflow:hidden}
.enterprise-desktop .connection-map:not(.map-expanded) .connection-map-nav{visibility:hidden}
.enterprise-scene-shell:not(.enterprise-desktop) .enterprise-picture-slot{display:none}
.enterprise-scene-shell:not(.enterprise-desktop) .enterprise-mobile-picture{position:relative}
.enterprise-scene-shell:not(.enterprise-desktop) .enterprise-item:not(:last-child) .enterprise-mobile-picture{height:auto;aspect-ratio:3 / 2}
.enterprise-scene-shell:not(.enterprise-desktop) .enterprise-item:last-child .enterprise-mobile-picture{height:auto;max-height:none;overflow:visible}
.enterprise-scene-shell:not(.enterprise-desktop) .connection-map{height:auto;padding:0;background:transparent;gap:16px}
.enterprise-scene-shell:not(.enterprise-desktop) .connection-map-heading{display:none}
.enterprise-scene-shell:not(.enterprise-desktop) .connection-map-graphic{aspect-ratio:1.6;flex:none}
.enterprise-scene-shell:not(.enterprise-desktop) .connection-regions{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.product-world{padding-bottom:clamp(28px,3vw,48px)}
.featured-products{padding-top:clamp(28px,3vw,48px)}
body.at-home #app .product-world .scroll-reveal,body.at-home #app .featured-products .scroll-reveal{transform:translateY(16px)}
body.at-home #app .product-world .scroll-reveal.visible,body.at-home #app .featured-products .scroll-reveal.visible{transform:none}
.article-example-note{font-size:13px;color:var(--yc-light-secondary);border-left:2px solid var(--yc-light-divider);padding-left:14px;line-height:1.7;margin:24px 0}
.article-page figcaption{font-size:13px;color:var(--yc-light-secondary);line-height:1.7;margin-top:10px}
@media(max-width:767px){
 .enterprise-scene-shell:not(.enterprise-desktop) .enterprise-mobile-picture{margin-left:0}
 .enterprise-scene-shell:not(.enterprise-desktop) .connection-regions{grid-template-columns:repeat(2,minmax(0,1fr))}
 .connection-map-foot{align-items:flex-start;flex-direction:column;gap:8px}.connection-map-foot p{max-width:none}
 body.at-home #app .product-world .scroll-reveal,body.at-home #app .featured-products .scroll-reveal{transform:translateY(10px)}
 body.at-home #app .product-world .scroll-reveal.visible,body.at-home #app .featured-products .scroll-reveal.visible{transform:none}
}
@media(prefers-reduced-motion:reduce){
 .connection-map .route{stroke-dashoffset:0!important;opacity:1!important}
 .connection-map .connection-regions button{opacity:1!important;transform:none!important}
 body.at-home #app .product-world .scroll-reveal,body.at-home #app .featured-products .scroll-reveal{transform:none}
}

/* Image attributes reserve ratio, never impose a desktop pixel height on mobile. */
.editorial-main img{width:100%;height:auto;aspect-ratio:1.7;object-fit:cover}
.article-layout article img,.article-layout aside img{height:auto}
.editorial-article-body section{margin:32px 0}
.editorial-article-body h2{font-size:22px;line-height:1.5;margin:0 0 14px;color:var(--yc-light-text)}
.editorial-article-body p{line-height:1.9}

.enterprise-scene-shell:not(.enterprise-desktop) .connection-map-foot a{display:none}
.connection-map.has-region-focus .route.is-highlighted{stroke-opacity:1}

/* Full-map contrast stays local to the enterprise scroll scene. */
.enterprise-desktop .connection-map{
 --yc-light-text:#f4f8ff;--yc-light-secondary:#bdcce0;
 --yc-light-primary:#75caff;--yc-light-divider:rgb(191 215 242 / .25);
 --yc-light-canvas:#0b1d34;
 background:#0b1d34;color:#f4f8ff;
}
.enterprise-desktop[data-enterprise-tone] .enterprise-scene-stage,
.enterprise-desktop[data-enterprise-tone] .enterprise-section{
 background:color-mix(in srgb,#0b1d34 calc(var(--map-expand,0) * 100%),var(--enterprise-tone-bg));
}
.enterprise-desktop .connection-map .route{stroke-opacity:.9}
.enterprise-desktop .connection-map .text-link{color:#75caff}
.enterprise-desktop .connection-map button:focus-visible,
.enterprise-desktop .connection-map a:focus-visible{outline:2px solid #75caff;outline-offset:4px}

/* Expanded map gives the geography the stage, with five compact glass cards. */
.enterprise-desktop .connection-map-graphic{overflow:visible}
.enterprise-desktop .connection-map-graphic>svg{transform:scale(1.22);transform-origin:center}
.enterprise-desktop .connection-map.map-expanded{gap:10px}
.enterprise-desktop .connection-map-heading{position:relative;z-index:1}
.connection-regions{grid-template-columns:repeat(5,minmax(0,1fr));position:relative;z-index:1}
.enterprise-desktop .connection-regions{max-height:calc(125px * var(--map-expand,0))}
.enterprise-desktop .connection-regions button{padding:18px 16px;min-height:92px;border:0;border-radius:12px;background:rgb(255 255 255 / .08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.enterprise-desktop .connection-regions button b{font-size:22px;color:#fff;margin-bottom:12px}
.enterprise-desktop .connection-regions button span{color:#c5d4e8}
.enterprise-desktop .connection-regions button:hover,.enterprise-desktop .connection-regions button:focus-visible{background:rgb(255 255 255 / .12);border-color:transparent}
.enterprise-desktop .connection-map-foot{position:relative;z-index:1}

/* A visible ticked spine joins the three overview nodes, following panel height. */
#app .enterprise-scene-shell .enterprise-item:not(:last-child)::before{
 content:'';position:absolute;left:17px;top:50px;bottom:4px;width:12px;
 opacity:1;pointer-events:none;
 background:repeating-linear-gradient(to bottom,#e2e5e9 0 3px,transparent 3px 13px);
}
#app .enterprise-scene-shell .enterprise-item.is-active:not(:last-child)::before{
 background:repeating-linear-gradient(to bottom,#e2e5e9 0 3px,transparent 3px 13px);
 opacity:1;
}

/* Homepage recommendations share the catalogue card content and cover ratio. */
#app .featured-products .catalogue-cover{aspect-ratio:4 / 3;overflow:hidden}
#app .featured-products .catalogue-cover img{display:block;width:100%;height:100%;aspect-ratio:4 / 3;object-fit:cover}
#app .featured-products .catalogue-card .body{padding:24px}
#app .featured-products .catalogue-card h3{margin:0 0 10px}
#app .featured-products .catalogue-card .card-summary{margin:0;font-size:16px;line-height:24px}

.enterprise-scene-shell:not(.enterprise-desktop) .connection-map{background:#0e1230;--yc-light-text:#f4f8ff;--yc-light-secondary:#bdcce0;color:#f4f8ff}

#app .editorial-list .editorial-summary{margin:0;color:var(--yc-light-secondary);font-size:14px;line-height:22px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

#app .editorial-main .editorial-main-summary{margin:0;color:var(--yc-light-secondary);font-size:14px;line-height:22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

#app .editorial-main{min-width:0}
