/* Application expansion: retain the site's forest/apricot editorial language. */
.category-panoramas{padding:72px clamp(24px,7vw,112px);background:#edf2e9;color:#173d2e}
.category-panoramas h2{font-size:clamp(2rem,4vw,3.5rem);margin:0 0 24px}
.panorama-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.panorama-options button{min-height:44px;padding:10px 18px;background:transparent;color:#173d2e;border:1px solid #a9bba9;font:inherit;cursor:pointer}
.panorama-options button[aria-pressed=true]{background:#173d2e;color:#f6eedf}
.panorama-options button:focus-visible,.panorama-view:focus-visible{outline:3px solid #ab7029;outline-offset:4px}
.panorama-view{display:block;color:inherit;text-decoration:none}.panorama-view img,.category-panorama>img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain}
.panorama-view>span{display:block;padding:15px 0;font-weight:600}
.category-panorama{margin:24px 0 32px}.category-panorama figcaption{display:flex;justify-content:space-between;gap:20px;padding:14px 0;color:#173d2e;font-size:.875rem}
.category-panorama figcaption span{font-size:.75rem;color:#52675a;max-width:65%}
@media(max-width:660px){.category-panoramas{padding:48px 20px}.panorama-options button{padding:10px 12px}.category-panorama figcaption{display:block}.category-panorama figcaption span{display:block;max-width:none;margin-top:8px}}
.system-illustrated .module-flow{grid-template-columns:minmax(190px,.72fr) 70px 2fr;gap:18px;align-items:stretch}
.system-illustrated .module-source{padding:18px;gap:14px;min-height:0;align-self:start}
.system-illustrated .module-source>img{width:100%;height:230px;object-fit:cover;margin-bottom:8px}
.system-illustrated .module-source strong{margin-top:12px}
.system-illustrated .connector i{width:50px}
.system-illustrated .module-destinations{gap:18px}
.system-illustrated .module-destinations article{padding:0 0 18px;overflow:hidden;gap:8px}
.system-illustrated .module-destinations article>span,.system-illustrated .module-destinations article>strong,.system-illustrated .module-destinations article>small,.module-explore{margin:0 18px}
.module-image-link{display:block;overflow:hidden;margin-bottom:8px}
.module-image-link img{width:100%;height:180px;object-fit:cover;display:block;transition:transform .3s}
.module-image-link:hover img{transform:scale(1.025)}
.module-explore{display:block;margin-top:auto;padding-top:12px;color:#f0e1c6;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}
.system-illustrated .module-flow small{color:#cfdbd2}
.application-editorial{padding:90px clamp(24px,7vw,112px);background:#f7f7ef;color:#173d2e}
.application-heading{max-width:950px;margin-bottom:42px}.application-heading h2{font-size:clamp(2.2rem,4vw,3.8rem)}
.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}
.application-card{color:inherit;text-decoration:none;min-width:0}.application-card figure{margin:0;overflow:hidden;background:#e4eadf}
.application-card figure img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .3s}
.application-card:hover figure img{transform:scale(1.025)}
.application-card>div{display:flex;align-items:baseline;gap:13px;padding:17px 0;border-bottom:1px solid #c9d2c5}
.application-card h3{font:400 clamp(1.25rem,1.7vw,1.65rem)/1.3 var(--serif);margin:0;flex:1}.application-card span{font-size:.8rem}
.scene-note{font-size:.8rem;line-height:1.6;color:#52675a;margin:24px 0 0}
.category-scenes{margin-top:26px}.category-scenes>p{font-size:.875rem;font-weight:600;margin:0 0 12px}
.category-scene-options{display:flex;gap:8px;flex-wrap:wrap}.category-scene-options button{border:1px solid #a9bba9;background:transparent;color:#173d2e;padding:11px 13px;min-height:44px;font:inherit;font-size:.875rem;cursor:pointer}
.category-scene-options button[aria-pressed="true"]{background:#173d2e;color:#f6eedf;border-color:#173d2e}
.catalog-category-lead figure{min-width:0}.catalog-category-lead #catalog-lead-image{aspect-ratio:1/1;object-fit:cover}
.catalog-category-lead .scene-note{font-size:.75rem;max-width:420px;margin-top:14px}
.dialog-gallery{display:flex;overflow-x:auto;scrollbar-width:thin;gap:10px;max-height:135px}
.dialog-gallery button{flex:0 0 104px;min-width:0;position:relative}
.dialog-gallery img{aspect-ratio:3/2}.dialog-gallery button>span{display:block;padding:6px;font-size:.7rem;line-height:1.25;white-space:normal;color:#173d2e}
.dialog-media>figure.is-concept>img{object-fit:contain;background:#edf2e9}
.dialog-media>figure.is-expanded-scene{align-self:center;min-height:0;height:auto;aspect-ratio:3/2;width:100%}
.dialog-media>figure.is-expanded-scene>img{display:block;width:100%;height:100%;object-fit:contain}
.dialog-scene-note{grid-row:3;margin:0;padding:8px 14px;background:#edf2e9;font-size:.75rem;color:#52675a;line-height:1.4}
.dialog-media{grid-template-rows:minmax(0,1fr) auto auto}
.application-card:focus-visible,.module-image-link:focus-visible,.module-explore:focus-visible,.category-scene-options button:focus-visible,.dialog-gallery button:focus-visible{outline:3px solid #ab7029;outline-offset:4px}
@media(max-width:1050px){.system-illustrated .module-flow{grid-template-columns:1fr}.system-illustrated .module-source{display:none}.system-illustrated .connector{display:none}.application-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:660px){.application-editorial{padding:64px 24px}.application-grid{grid-template-columns:1fr;gap:25px}.application-heading{margin-bottom:28px}.system-illustrated .module-destinations{grid-template-columns:1fr 1fr;gap:14px}.system-illustrated .module-destinations article:nth-child(n){grid-column:auto}.system-illustrated .module-destinations article:last-child{grid-column:1/-1}.module-image-link img{height:145px}.system-illustrated .module-flow strong{font-size:1.25rem}.system-illustrated .module-flow small{font-size:.85rem}.system-illustrated .module-destinations article>span,.system-illustrated .module-destinations article>strong,.system-illustrated .module-destinations article>small,.module-explore{margin-left:12px;margin-right:12px}.dialog-gallery button{flex-basis:100px}.catalog-category-lead #catalog-lead-image{aspect-ratio:4/3}.category-scene-options button{flex:1 1 120px}}
@media(prefers-reduced-motion:reduce){.application-card figure img,.module-image-link img{transition:none}}

/* Mobile product detail: the floating close button must not reserve a column. */
@media(max-width:660px){
  .product-dialog{overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}
  .product-dialog .dialog-close,.is-arabic .product-dialog .dialog-close{position:fixed;top:calc(env(safe-area-inset-top) + 12px);z-index:5;float:none;margin:0;min-width:48px;min-height:48px;padding:9px 13px;box-shadow:0 3px 14px rgba(5,27,19,.16)}
  .product-dialog .dialog-close{width:48px;padding:0;font-size:0;line-height:1}
  .product-dialog .dialog-close::after{content:'×';font-size:28px;font-weight:400}
  .product-dialog .dialog-close{right:12px;left:auto}
  .is-arabic .product-dialog .dialog-close{right:auto;left:12px}
  .dialog-layout,.dialog-media,.dialog-content{width:100%;min-width:0}
  .dialog-content{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  .dialog-gallery{scroll-snap-type:x proximity;overscroll-behavior-inline:contain}
  .dialog-gallery button{scroll-snap-align:start}
}
