/* Catalog presentation: transparent surfaces, bounded blur and native-size demos. */
.detail-heading{min-width:0;max-width:100%}.light-effects .card-info{background:#ffffffca}.light-effects .product-card{background:#ffffff75}
.software-box{position:absolute;top:57px;left:17%;width:66%;height:215px;display:flex;transform:rotate(-5deg);filter:drop-shadow(6px 14px 9px #25252724)}.box-spine{width:16%;writing-mode:vertical-rl;transform:skewY(12deg);background:#4f4c4a;color:#fff;letter-spacing:2px;font-size:9px;padding:16px 7px}.box-face{position:relative;background:#f8fffce0;border:1px solid #f6dfd1;width:84%;padding:12px 10px;overflow:hidden;display:flex;flex-direction:column}.box-brand{font-size:6px;letter-spacing:1px;color:#4f4c4a}.box-face strong{font-family:var(--display);font-size:18px;line-height:1.05;margin-top:14px;z-index:1}.box-face img{position:absolute;bottom:15px;right:0;height:120px;width:100%;object-fit:cover;mix-blend-mode:multiply}.box-edition{position:absolute;bottom:8px;font-size:6px;letter-spacing:1px}.drawer-cards .software-box{top:45px;height:185px}
.showcase-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.showcase-top .showcase-label{margin:0;font-size:8px;letter-spacing:1.3px}
.catalog-all{background:#ffffff60;border:1px solid #ffffffa6;border-radius:20px;padding:10px 13px;font-size:11px;white-space:nowrap}
.cards{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#ee69375c transparent;padding:28px 4px 22px;overscroll-behavior-x:contain;position:relative}
.product-card{flex:0 0 clamp(215px,19vw,310px);height:420px;padding:12px;background:linear-gradient(145deg,#ffffff42,#ffffff18);border:1px solid #ffffffbf;box-shadow:0 12px 32px #4f4c4a14;scroll-snap-align:start}
.product-card:after{display:none}
.product-card{backdrop-filter:none;-webkit-backdrop-filter:none}
.showcase{transform:none;margin-top:20px}
.product-card .card-photo{position:absolute;inset:45px 8px auto;width:calc(100% - 16px);height:240px;object-fit:contain;object-position:center;z-index:0;mix-blend-mode:normal}
.card-info{position:relative;display:block;padding:16px 13px 14px;border:1px solid #ffffffbc;border-radius:9px;background:#ffffffa6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.card-category{display:block;font-size:8px;letter-spacing:.8px;min-height:12px;margin-bottom:8px;color:#4f4c4a}
.card-name{display:block;font-size:28px;letter-spacing:-1px;line-height:1.05}
.card-line{display:block;height:2px;margin-top:13px}
.card-number,.card-open{background:#ffffffb3;border:1px solid #ffffffa1;z-index:2}
.product-card.active,.product-card:hover{border-color:#ee69378c;box-shadow:0 14px 28px #4f4c4a22}
.slide-dots{gap:5px}.slide-dot{width:12px}.slide-dot:after{border-radius:4px}
.back-link{background:#ffffffa8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.purchase-box{background:linear-gradient(145deg,#ffffffb3,#fff4ec38);border:1px solid #f6dfd1b0;box-shadow:0 14px 40px #4f4c4a08}
.price{font-size:44px}.price-consult{font-size:34px}.purchase-notes{flex-wrap:wrap}
.catalog-drawer{background:#fffffff2;border-color:#ffffffb5}
.drawer-cards .card-info{backdrop-filter:none;-webkit-backdrop-filter:none}
.drawer-handle{background:#ffffff69;border-color:#ffffffa8}
.drawer-content{padding-top:30px}
.drawer-content h2{font-size:36px}.drawer-description{max-width:470px}
.drawer-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:0;padding:20px 0}
.drawer-cards .product-card{width:100%;height:360px;padding:10px;transform:none}
.drawer-cards .card-photo{height:205px;top:35px}
.drawer-cards .card-info{padding:14px}.drawer-cards .card-name{font-size:25px}
.drawer-cards .card-category{margin-top:0;font-size:8px}
.drawer-search{margin-top:20px}.catalog-count{font-size:11px;color:#4f4c4a;margin-top:12px}
.catalog-search input{background:#ffffff70}
.drawer-scrim{background:#25252725}
dialog{background:#ffffffed}
dialog::backdrop{background:#25252748}
.demo-section{max-width:1500px;margin:auto;padding:30px 9% 60px 6%}
.demo-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}
.demo-heading h2{font-size:48px;font-weight:500;letter-spacing:-2px;line-height:1.1;margin-top:10px}
.demo-tabs{display:flex;gap:10px;overflow:auto;padding:7px 3px 17px;scrollbar-width:thin}
.demo-tabs button{display:flex;gap:12px;align-items:center;padding:12px 17px;border-radius:25px;background:#f4f9f666;border:1px solid #f6dfd1b5;font-size:12px;white-space:nowrap}
.demo-tabs button[aria-pressed=true]{background:#fff4ec88;border-color:#77716c;color:#4f4c4a}
.demo-tabs button>span{font-weight:600}
.demo-canvas{background:linear-gradient(120deg,#fff4ec66,#fff4ec4d);padding:16px;border:1px solid #f6dfd1;border-radius:16px;box-shadow:0 20px 60px #4f4c4a12}
.demo-toolbar{display:flex;align-items:center;gap:20px;padding:4px 6px 18px;color:#4f4c4a;font-size:12px}
.demo-toolbar .window-dots{font-size:8px;letter-spacing:3px;color:#d8b6a2}
#demo-caption{margin-left:auto;font-size:11px}
.demo-viewport{max-height:660px;overflow:auto;border:1px solid #f6dfd1;border-radius:6px;background:#fff;overscroll-behavior:contain}
.demo-viewport img{width:100%;height:auto;max-width:none}
.demo-footnote{font-size:11px;color:#77716c;margin-top:16px;text-align:right}
#image-dialog{width:min(1500px,calc(100% - 28px));height:min(900px,calc(100svh - 35px));max-height:calc(100svh - 35px);padding:0;overflow:hidden;background:#f8fcfaf2}
.image-toolbar{min-height:67px;padding:12px 18px;display:flex;align-items:center;gap:16px;border-bottom:1px solid #f6dfd1}
#image-caption{font-size:13px;flex:1;line-height:1.5}
#image-actual{background:#ffffff73;border:1px solid #f6dfd1;padding:10px 14px;border-radius:25px;font-size:12px}
#image-actual[aria-pressed=true]{background:#fff4ec}
#image-dialog .dialog-close{position:static;flex-shrink:0;background:#ffffff8c;box-shadow:none}
.image-stage{height:calc(100% - 67px);overflow:auto;overscroll-behavior:contain;background:#fff}
#image-dialog img{display:block;width:100%;height:auto;max-width:none}
.light-effects .product-card,.light-effects .card-info,.light-effects .catalog-drawer,.light-effects .back-link,.light-effects .drawer-scrim,.light-effects .purchase-box,.light-effects dialog,.light-effects .card-number,.light-effects .card-open{backdrop-filter:none;-webkit-backdrop-filter:none}
.light-effects dialog::backdrop{backdrop-filter:none}
.light-effects .catalog-drawer{background:#f6fcf9ed}
@media(min-width:1600px){.product-card{height:470px}.product-card .card-photo{height:280px}.card-name{font-size:33px}}
@media(max-width:1100px){.hero-title{font-size:64px}.product-card{flex-basis:230px}.hero-signature{max-width:190px}.hero-bottom{gap:15px}.carousel-controls{gap:13px}}
@media(max-width:960px){.product-card{flex-basis:clamp(215px,60vw,290px);height:365px;padding:10px}.product-card .card-photo{height:210px;top:35px}.card-info{padding:14px}.card-name{font-size:27px}.hero-copy{min-height:350px}.hero-title{font-size:67px;overflow-wrap:normal}.hero-meta{flex-wrap:wrap;line-height:1.7}.hero-main{padding-bottom:125px}.hero{min-height:1020px}.slide-dots{display:none}.showcase-top{gap:10px}.showcase-top .showcase-label{font-size:7px;letter-spacing:.8px}.showcase-top .showcase-label span{width:15px}.catalog-all{font-size:10px;padding:9px 10px}.demo-section{padding:24px 70px 42px 7%}.demo-heading{display:block}.demo-heading h2{font-size:38px}.demo-heading .button{margin-top:10px}.demo-canvas{padding:8px}.demo-toolbar{flex-wrap:wrap;font-size:11px;gap:10px;padding:8px 3px 12px}#demo-caption{display:none}.demo-viewport{max-height:510px}.demo-viewport img{min-width:750px}.demo-footnote{text-align:left;line-height:1.6}.demo-tabs button{font-size:11px;padding:10px 12px}.drawer-content{padding-top:28px}.drawer-cards{grid-template-columns:1fr;gap:15px}.drawer-cards .product-card{height:330px;min-height:330px}.drawer-cards .card-photo{height:195px;top:32px}.drawer-cards .card-info{padding:12px}.drawer-cards .card-name{font-size:25px}.drawer-cards .card-line{display:none}.drawer-content h2{font-size:30px}.drawer-description{font-size:12px}.image-toolbar{min-height:100px;gap:10px;flex-wrap:wrap;padding:10px}#image-caption{width:calc(100% - 50px);flex:auto;font-size:11px}#image-actual{order:3;font-size:11px;padding:8px 12px}.image-stage{height:calc(100% - 100px)}.purchase-box{order:0}}
@media(max-width:400px){.hero-title{font-size:57px;letter-spacing:-3px}.hero-copy{min-height:360px}.hero-description{font-size:14px}.showcase-top .showcase-label{font-size:6px}.showcase-top .showcase-label span{display:none}.demo-section{padding-left:6%;padding-right:61px}.drawer-cards .product-card{height:305px;min-height:305px}.drawer-cards .card-photo{height:165px}.card-category{font-size:7px}.drawer-cards .card-name{font-size:23px}}
@media(max-width:400px){.detail-heading h1{font-size:38px}.software-box{height:180px;top:45px}.box-face strong{font-size:16px}.drawer-cards .software-box{height:155px;top:40px}}
@media(prefers-reduced-motion:reduce){.product-card,.card-info,.catalog-drawer,.back-link,.drawer-scrim,.purchase-box,dialog{backdrop-filter:none;-webkit-backdrop-filter:none}dialog::backdrop{backdrop-filter:none}}

/* Whole-card windows: arrows stay beside the products at every viewport. */
.showcase-rail{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px}
.showcase-rail>.icon-button{position:relative;z-index:3;background:#ffffffb3;box-shadow:0 4px 18px #4f4c4a14}
.showcase-rail>.cards{--visible-cards:2;gap:16px;margin:0;padding:28px 4px 22px;scroll-snap-type:x mandatory;scroll-padding-inline:4px;scrollbar-width:none}
.showcase-rail>.cards::-webkit-scrollbar{display:none}
.showcase-rail .product-card{flex:0 0 calc((100% - (var(--visible-cards) - 1)*16px)/var(--visible-cards));scroll-snap-align:start;scroll-snap-stop:always}
.showcase-top,.showcase-hint{margin-left:52px;margin-right:52px}
.marketplace-buy{gap:14px;line-height:1.4;text-align:left}
.purchase-label{line-height:1.6;max-width:310px}
@media(min-width:961px){.hero-main{grid-template-columns:minmax(0,35fr) minmax(0,62fr)}.hero-title{font-size:clamp(62px,6.3vw,105px)}.showcase-rail .card-name{font-size:clamp(24px,2.2vw,32px)}}
@media(min-width:1760px){.showcase-rail>.cards{--visible-cards:3}}
@media(max-width:960px){.showcase-rail>.cards{--visible-cards:2}.showcase-rail .product-card{height:365px}.showcase-rail>.icon-button{width:40px;height:40px}.showcase-rail{grid-template-columns:40px minmax(0,1fr) 40px}.showcase-top,.showcase-hint{margin-left:50px;margin-right:50px}.hero-copy{min-height:360px}}
@media(max-width:619px){.showcase-rail>.cards{--visible-cards:1}.showcase-rail .product-card{height:365px}.showcase-rail{grid-template-columns:34px minmax(0,1fr) 34px;gap:6px}.showcase-rail>.icon-button{width:34px;height:40px}.showcase-top,.showcase-hint{margin-left:40px;margin-right:40px}.showcase-top{flex-wrap:wrap;gap:10px}.showcase-label{font-size:7px}.showcase-hint{font-size:10px;line-height:1.5}.hero-copy{min-height:380px}}
@media(max-width:400px){.showcase-rail .card-info{padding:13px 10px}.showcase-rail .card-name{font-size:25px}.showcase-rail .card-photo{top:47px;height:190px}.showcase-rail .card-category{font-size:7px}.showcase-rail .product-card{height:340px}.showcase-top{margin-right:0}.hero-main{padding-bottom:110px}}
.product-card{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:8px;align-content:stretch;justify-content:stretch}
.showcase-rail .product-card{height:480px;padding:9px}
.product-card .card-photo{position:static;inset:auto;grid-row:1;min-width:0;min-height:0;width:100%;height:100%;padding:26px 0 0;object-fit:contain;object-position:center}
.product-card .card-info{grid-row:2;padding:10px 12px;border-radius:8px}
.product-card .card-category{font-size:7px;letter-spacing:.6px;min-height:0;margin:0 0 5px}
.product-card .card-name{font-size:24px;line-height:1.05;letter-spacing:-.7px}
.product-card .card-name span{display:inline}.product-card .card-name span+span:before{content:' '}
.product-card .card-line{display:none}
.drawer-cards .product-card{height:430px;min-height:430px}
/* Demonstrations flow with the page; only an explicit original-size zoom can pan. */
.demo-tabs{flex-wrap:wrap;overflow:visible}.demo-tabs button{white-space:normal;text-align:left}
.demo-viewport{display:block;width:100%;max-height:none;overflow:clip;padding:0;cursor:zoom-in}
.demo-viewport img{display:block;width:100%;height:auto;min-width:0;max-width:100%}
.image-stage{display:flex;align-items:center;justify-content:center;overflow:hidden;padding:10px}
html:has(dialog[open]){overflow:hidden}
#image-dialog:not(.actual-size) img{width:100%;height:100%;object-fit:contain}
#image-dialog.actual-size .image-stage{display:block;overflow:auto;padding:0}
#image-dialog.actual-size img{max-width:none;height:auto}
.product-wordmark{line-height:1;margin:20px 0 24px}
.product-wordmark img{display:block;width:100%;height:auto;max-width:620px}
.hero-title.product-wordmark{max-width:550px;margin:26px 0}
.detail-heading{width:min(640px,100%)}
.detail-heading .product-wordmark{width:100%;margin:16px 0 20px}
.hero-images img,.detail-photo{filter:grayscale(1)}
.hero.is-offscreen{visibility:hidden}
.brand .brand-mark{width:72px;height:50px;object-fit:contain;flex-shrink:0}
@media(max-width:960px){.brand{gap:10px}.brand .brand-mark{width:58px;height:40px}}
.light-effects .hero-copy.entering>*{animation:none}
@media(max-width:960px),(hover:none){.card-info,.back-link{backdrop-filter:none;-webkit-backdrop-filter:none}}
.hero-shade{background:linear-gradient(90deg,#fffffff5 0%,#ffffffed 25%,#ffffffa6 43%,#fff4ec21 73%),linear-gradient(0deg,#fff 0%,#ffffffb8 12%,transparent 40%,#fff4ec55 100%)}
@media(max-width:960px){.showcase-rail .product-card{height:445px}.product-card .card-info{padding:9px 11px}.product-card .card-name{font-size:23px}.drawer-cards .product-card{height:400px;min-height:400px}.hero-title.product-wordmark{max-width:510px}.detail-heading .product-wordmark{width:min(570px,100%)}}
@media(max-width:619px){.showcase-rail .product-card{height:420px}.product-card .card-photo{padding-top:24px}.product-card .card-name{font-size:22px}.product-card .card-info{padding:8px 10px}.drawer-cards .product-card{height:365px;min-height:365px}.hero-title.product-wordmark{margin:25px 0}.detail-heading .product-wordmark{margin:20px 0 23px}}
@media(max-width:400px){.showcase-rail .product-card{height:390px}.product-card .card-name{font-size:21px}.drawer-cards .product-card{height:340px;min-height:340px}}
