:root{--paper:#f5f2eb;--ink:#292b27;--muted:#686c62;--line:#dcded3;--gold:#ab8653;--sage:#e1e5d9;--radius:22px;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:5px}a:hover{color:#75603c}a:focus-visible,summary:focus-visible{outline:3px solid #866c3d;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.3rem,6.4vw,6.2rem);margin-bottom:26px}h2{font-size:clamp(2rem,3.4vw,3.25rem)}h3{font-size:1.7rem}.accent{color:var(--gold)}.eyebrow{font-size:.72rem;letter-spacing:.15em;font-weight:600;color:var(--muted);margin-bottom:24px}.lead{font-size:1.2rem;color:var(--muted);line-height:1.65}.site-header,main,.site-footer{width:min(1220px,calc(100% - 96px));margin:auto}.site-header{display:flex;justify-content:space-between;align-items:center;min-height:110px;border-bottom:1px solid var(--line);gap:24px}.wordmark{text-decoration:none;font-size:2.3rem;font-weight:700;line-height:1;letter-spacing:-.1em}.brand-dot{color:var(--gold)}nav{display:flex;gap:32px;flex-wrap:wrap}nav a{text-decoration:none;font-size:.9rem;color:var(--muted)}nav a[aria-current=page]{color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px}.hero,.product-hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:90px 0}.hero .lead{margin-bottom:36px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}.button{display:inline-flex;gap:30px;justify-content:space-between;align-items:center;padding:15px 23px;border-radius:100px;text-decoration:none;min-height:52px;font-size:.9rem;font-weight:600}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#45493e;color:white}.text-link{font-size:.9rem}.chat-scene{min-height:420px;border-radius:var(--radius);position:relative;overflow:hidden;background:#dfe3d7;display:flex;align-items:center;justify-content:center;padding:36px}.scene-shape{position:absolute;border-radius:50%;background:#c4ccba}.shape-one{width:380px;height:380px;right:-100px;top:-140px}.shape-two{width:230px;height:230px;left:-80px;bottom:-100px;background:#cdbd9f}.demo-overlay{position:relative;background:linear-gradient(130deg,rgba(65,69,61,.9),rgba(93,98,87,.87));color:#fff;border:1px solid #ffffff50;box-shadow:0 25px 45px #353b3628;border-radius:18px;width:100%;padding:23px;transform:rotate(-3deg)}.demo-top{font-size:.62rem;letter-spacing:.15em;color:#ffffffb0;display:flex;justify-content:space-between;margin-bottom:24px}.demo-message+.demo-message{margin-top:24px}.tag{font-size:.62rem;background:#f4f3ed;color:#35362f;border-radius:4px;padding:3px 6px}.demo-message small{font-size:.62rem;margin-left:8px;color:#ddd}.demo-message p{font-size:.88rem;margin:8px 0 0;line-height:1.6}.demo-name{color:#bce1d8}.demo-caption{position:absolute;bottom:16px;left:0;width:100%;text-align:center;font-size:.65rem;letter-spacing:.08em;color:#555d4d}.feature-section{padding:54px 0 72px;border-top:1px solid var(--line)}.section-heading{margin-bottom:32px}.section-heading .eyebrow{margin-bottom:12px}.featured-tool{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:42px;background:var(--sage);border-radius:var(--radius);text-decoration:none}.featured-tool h3,.featured-tool h2{margin:20px 0 12px;font-size:2.25rem}.featured-tool p{max-width:620px;margin:0;color:var(--muted)}.pill{font-size:.65rem;letter-spacing:.1em;border:1px solid #a8b19b;border-radius:20px;padding:5px 10px}.round-arrow{border:1px solid #aeb5a4;border-radius:50%;width:56px;height:56px;flex:none;display:grid;place-items:center;font-size:1.5rem}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding:80px 0;border-top:1px solid var(--line)}.social-links{display:flex;flex-wrap:wrap;gap:24px;margin-top:32px}.social-links a{font-size:.9rem}.site-footer{border-top:1px solid var(--line);padding:34px 0 42px;display:flex;align-items:center;gap:30px;font-size:.8rem;color:var(--muted)}.site-footer .wordmark{font-size:1.6rem;color:var(--ink)}.site-footer p{margin:0;flex:1}.download-meta,.registration-note{font-size:.8rem;color:var(--muted);margin:18px 0 0}.registration-note{margin-top:6px}.breadcrumb{display:block;font-size:.8rem;margin-bottom:30px;color:var(--muted)}.product-hero{padding-top:56px;gap:70px}.product-hero h1{font-size:clamp(3rem,5.8vw,5.4rem)}.product-hero .chat-scene{min-height:480px}.product-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;padding:52px 0 65px;border-top:1px solid var(--line)}.product-benefits h2{font-size:1.65rem;line-height:1.2;margin-top:20px}.product-benefits p{font-size:.95rem;color:var(--muted);margin:0}.getting-started{padding:64px 0;border-top:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px;padding-left:24px;margin-top:44px}.steps li::marker{color:var(--gold);font-weight:600}.steps h3{font-size:1.2rem;margin-bottom:12px;letter-spacing:-.02em}.steps p{font-size:.9rem;color:var(--muted)}.support-section{padding:65px 0;border-top:1px solid var(--line)}.accordions{max-width:900px}.accordions details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;cursor:pointer;font-size:1.05rem;padding:23px 0}summary::-webkit-details-marker{display:none}summary span{color:var(--gold);font-size:1.5rem;line-height:1}details[open] summary span{transform:rotate(45deg)}.details-body{padding:0 0 28px;max-width:780px;font-size:.95rem;color:var(--muted);overflow-wrap:anywhere}.document-copy{white-space:pre-wrap;line-height:1.8}.details-body dt{font-weight:600;color:var(--ink);margin-top:24px}.details-body dd{margin:6px 0 0}.hash{display:block;font-size:.8rem;overflow-wrap:anywhere}.support-contact{margin:30px 0 10px;font-size:.9rem}.independent-note{font-size:.75rem;color:var(--muted)}.simple-intro{padding:85px 0 100px;min-height:60vh}.preview-banner{background:#e5d9c2;font-size:.75rem;text-align:center;padding:8px 20px;color:#584a32}.skip-link{position:fixed;top:-100px;left:16px;background:var(--ink);color:white;padding:12px;z-index:99}.skip-link:focus{top:16px}@media(max-width:900px){.site-header,main,.site-footer{width:calc(100% - 48px)}.hero,.product-hero{gap:30px;padding:55px 0}.chat-scene{padding:24px;min-height:360px}.product-hero .chat-scene{min-height:390px}.about-section{gap:32px}.product-benefits{gap:24px}.steps{gap:30px}.featured-tool{padding:30px}nav{gap:22px}}@media(max-width:680px){.site-header,main,.site-footer{width:calc(100% - 36px)}.site-header{min-height:88px;gap:20px}.wordmark{font-size:1.95rem}nav{gap:15px}nav a{font-size:.8rem}.hero,.product-hero,.about-section{grid-template-columns:1fr;gap:36px}.hero,.product-hero{padding:42px 0 52px}.hero h1{font-size:3.5rem}.hero-copy .lead{font-size:1.1rem}.chat-scene,.product-hero .chat-scene{min-height:330px}.product-benefits,.steps{grid-template-columns:1fr;gap:26px}.product-benefits{padding:40px 0}.product-benefits h2{margin-top:12px}.steps{margin-top:30px}.steps li{padding-left:4px}.about-section,.getting-started,.support-section{padding:45px 0}.featured-tool{padding:25px;gap:16px}.featured-tool h3{font-size:1.8rem}.round-arrow{width:44px;height:44px}.site-footer{flex-wrap:wrap;gap:16px}.site-footer>a:last-child{width:100%}.simple-intro{padding:55px 0 70px}.demo-overlay{padding:20px}.preview-banner{font-size:.65rem}.lead{font-size:1.1rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}

/* Owner direction: minimal + restrained neumorphism + local frosted glass. */
:root{--paper:#eeeae4;--sage:#e9e7df;--line:#d6d1c9;--gold:#a07c52;--raised:9px 9px 22px #ccc6bc85,-9px -9px 22px #ffffffbd}
body{background:radial-gradient(ellipse at 90% 6%,#e5d8c388,transparent 35%),var(--paper)}
.site-header{position:relative}
nav{padding:9px 18px;border-radius:99px;background:#eeeae4;box-shadow:inset 3px 3px 7px #ccc6bc70,inset -3px -3px 7px #ffffffc0}
nav a{padding:3px 0}
.featured-tool{background:#eeeae4;border:1px solid #ffffff75;box-shadow:var(--raised)}
.round-arrow{background:#eeeae4;border:1px solid #ffffffa0;box-shadow:5px 5px 10px #c8c2b980,-5px -5px 10px #ffffffa8}
.button.primary{box-shadow:5px 5px 12px #aaa29580,-4px -4px 10px #ffffffa0}
.button:active,.featured-tool:active .round-arrow{transform:translateY(1px)}
.chat-scene{background:linear-gradient(135deg,#e7e7de,#dcded2);box-shadow:inset 7px 7px 18px #c5c8ba90,inset -7px -7px 18px #ffffffb0;border:1px solid #ffffff70}
.demo-overlay{background:linear-gradient(130deg,#45493fdd,#606757c9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid #ffffff65;box-shadow:0 22px 38px #3d443033,inset 0 1px 0 #ffffff40}
.preview-banner{background:#ddd3c2}
@supports not (backdrop-filter:blur(1px)){.demo-overlay{background:#50564a}}
@media(max-width:680px){nav{padding:7px 12px;gap:12px}.site-header{gap:12px}}
@media(max-width:360px){.site-header .wordmark{font-size:1.6rem}nav{gap:10px;padding:7px 10px}nav a{font-size:.75rem}}

/* Confirmed brand direction from owner screenshots: neutral light gray,
   predominantly lowercase sans-serif, width axis 80 / unchanged height. */
@font-face{font-family:'41m Roboto';font-style:normal;font-weight:100 900;font-stretch:75% 100%;font-display:swap;src:url('/assets/fonts/roboto-latin-variable.woff2') format('woff2')}
:root{--paper:#d8d8d8;--ink:#292929;--muted:#555;--line:#c5c5c5;--gold:#777;--sage:#d8d8d8;--raised:8px 8px 20px #b8b8b8a8,-8px -8px 20px #f8f8f8c4;font-family:'41m Roboto',Arial,sans-serif;font-stretch:80%;font-weight:400}
body{background:var(--paper);text-transform:lowercase}
h1,h2,h3{font-weight:400;letter-spacing:-.035em}
.eyebrow{letter-spacing:.08em;font-weight:400;font-size:.82rem}
.wordmark{font-weight:600;letter-spacing:-.075em}
.brand-dot{color:#777}
a:hover{color:#111}a:focus-visible,summary:focus-visible{outline-color:#555}
nav{background:#d8d8d8;box-shadow:inset 3px 3px 7px #bcbcbca0,inset -3px -3px 7px #f8f8f8c0}
nav a[aria-current=page]{text-decoration-color:#666}
.featured-tool{background:#d8d8d8;border-color:#ffffff80;box-shadow:var(--raised)}
.round-arrow{background:#d8d8d8;border-color:#ffffff80;box-shadow:5px 5px 10px #b8b8b8a0,-5px -5px 10px #f8f8f8c0}
.primary{background:#dedede;color:#292929;border:1px solid #ffffff80}
.primary:hover{background:#e8e8e8;color:#111}
.button.primary{box-shadow:6px 6px 13px #b4b4b4a0,-6px -6px 13px #f8f8f8b8}
.button:active{box-shadow:inset 3px 3px 7px #bcbcbca0,inset -3px -3px 7px #f8f8f8c0}
.chat-scene{background:linear-gradient(145deg,#dadada,#d0d0d0);box-shadow:inset 7px 7px 18px #b8b8b8a0,inset -7px -7px 18px #f4f4f4b0;border-color:#ffffff75}
.shape-one{background:#c3c3c3}.shape-two{background:#e8e8e8}
.demo-overlay{background:linear-gradient(130deg,#eeeeeea8,#e5e5e57a);color:#292929;border-color:#ffffffa0;box-shadow:0 22px 38px #66666625,inset 0 1px 0 #ffffff70;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.demo-top{color:#5a5a5a}.demo-message small{color:#555}.tag{background:#f4f4f4b8;color:#333}.demo-name{color:#555}.demo-caption{color:#555}
.pill,.round-arrow{border-color:#b6b6b6}.preview-banner{background:#c9c9c9;color:#444}
.document-copy,.hash,.download-meta,.registration-note,.details-body dd,.demo-message{text-transform:none}
@supports not (backdrop-filter:blur(1px)){.demo-overlay{background:#e6e6e6}}
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:48px}.catalog-card{min-width:0;border-radius:20px;background:var(--paper);box-shadow:var(--raised);overflow:hidden}.product-image{display:block;background:#d1d1d1}.product-image img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.catalog-copy{padding:24px}.catalog-copy h2{font-size:1.7rem;overflow-wrap:anywhere}.catalog-copy details{border-bottom:1px solid var(--line)}.catalog-copy summary{padding:12px 0;font-size:.9rem}.catalog-description{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;padding-bottom:20px;text-transform:none;font-size:.95rem}.catalog-links{display:flex;flex-wrap:wrap;gap:24px;padding-top:20px;font-size:.9rem}@media(max-width:680px){.catalog-grid{grid-template-columns:1fr;gap:28px}.catalog-copy{padding:22px}}

/* Latest correction: 100% width, 80% outline height, brighter neutral base. */
@font-face{font-family:'41m Sans H80';font-weight:400;font-style:normal;font-display:swap;src:url('/assets/fonts/41m-sans-h80-400.woff2') format('woff2')}
@font-face{font-family:'41m Sans H80';font-weight:500;font-style:normal;font-display:swap;src:url('/assets/fonts/41m-sans-h80-500.woff2') format('woff2')}
@font-face{font-family:'41m Sans H80';font-weight:600;font-style:normal;font-display:swap;src:url('/assets/fonts/41m-sans-h80-600.woff2') format('woff2')}
:root{--paper:#eeeeee;--sage:#eeeeee;--line:#d8d8d8;--ink:#303030;--muted:#555;--raised:7px 7px 20px #d2d2d299,-7px -7px 20px #ffffffdd;font-family:'41m Sans H80',Arial,sans-serif;font-stretch:100%}
nav,.featured-tool,.round-arrow{background:var(--paper)}nav{box-shadow:inset 3px 3px 8px #d4d4d480,inset -3px -3px 8px #ffffffd0}
.primary{background:#f3f3f3;border-color:#ffffff;color:var(--ink)}.primary:hover{background:#fff}.button.primary{box-shadow:5px 5px 14px #cfcfcfa0,-5px -5px 14px #ffffffd8}
.round-arrow{box-shadow:5px 5px 10px #d0d0d090,-5px -5px 10px #ffffffd0}
.chat-scene{background:linear-gradient(145deg,#f2f2f2,#e3e3e3);box-shadow:inset 7px 7px 18px #d3d3d399,inset -7px -7px 18px #ffffffcc}
.shape-one{background:#ddd}.shape-two{background:#f9f9f9}.demo-overlay{background:linear-gradient(130deg,#ffffffb8,#f2f2f28a);box-shadow:0 22px 38px #77777720,inset 0 1px 0 #fff}
.preview-banner{background:#e3e3e3}.portal-hero{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding:60px 0 70px}.portal-intro h1{font-size:clamp(5rem,10vw,9rem);line-height:1.05;margin-bottom:10px;letter-spacing:-.065em}.portal-intro .lead{margin-bottom:0}.portal-links .eyebrow{margin-bottom:18px}.quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.quick-link{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;padding:16px 20px;min-height:56px;border:1px solid #ffffffd9;border-radius:18px;background:var(--paper);box-shadow:var(--raised)}.quick-link:hover{background:#f8f8f8}.quick-link:active{box-shadow:inset 3px 3px 8px #d4d4d499,inset -3px -3px 8px #ffffffcc}.quick-link span:last-child{color:#666}.portal-local{display:flex;flex-wrap:wrap;gap:28px;margin-top:28px}.product-image{background:#e8e8e8}.button:active{box-shadow:inset 3px 3px 8px #d4d4d499,inset -3px -3px 8px #ffffffcc}
@media(max-width:900px){.portal-hero{gap:40px}.quick-link{padding:15px}}@media(max-width:680px){.portal-hero{grid-template-columns:1fr;gap:28px;padding:26px 0 42px}.portal-intro h1{font-size:4.6rem;margin:0}.portal-intro .eyebrow{margin-bottom:6px}.portal-intro .lead{font-size:1.05rem}.quick-links{gap:14px}.quick-link{min-height:50px;padding:12px 16px}.portal-links .eyebrow{margin-bottom:12px}.portal-local{margin-top:22px;gap:24px}}
@media(max-width:360px){nav{gap:8px;padding:7px 9px}.site-header{gap:10px}.quick-link{padding:12px;font-size:.9rem}}

/* Brand assets and direct product dev-kit navigation. */
.wordmark img{display:block;width:64px;height:64px;object-fit:contain}.portal-logo{margin:0!important;line-height:1}.portal-logo img{display:block;width:min(100%,300px);height:auto}.devkit-menu{position:relative;border:0;background:transparent;box-shadow:none;padding:0;margin:0}.devkit-menu summary{cursor:pointer;list-style:none;white-space:nowrap;font-size:inherit;padding:8px 0}.devkit-menu summary::after{content:' ⌄'}.devkit-options{position:absolute;right:0;top:100%;min-width:210px;padding:10px;border-radius:16px;background:#fafafa;box-shadow:0 8px 25px #0002;z-index:20}.devkit-options a,.devkit-options span{display:block;padding:10px;line-height:1.4}.kit-content{max-width:780px;margin:0 auto 64px;padding:24px}.kit-copy{white-space:pre-wrap;overflow-wrap:anywhere}.kit-content h2{margin-top:36px}@media(max-width:480px){.site-header{flex-wrap:wrap;gap:0}.site-header nav{flex-wrap:wrap;gap:14px;justify-content:center;width:100%}.site-header>.wordmark{margin:auto}.portal-logo img{width:160px}.devkit-options{right:-50px;min-width:190px}}

.catalog-pagination{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin:40px 0}.catalog-pagination span{white-space:nowrap}
/* Keep the five navigation controls compact and visually consistent. */
.site-header nav{align-items:center}.devkit-menu summary{display:inline-flex;align-items:center;justify-content:flex-start;gap:4px;font-size:.9rem;line-height:1.6;padding:3px 0;color:var(--muted)}.devkit-menu summary::after{font-size:.75em}
@media(max-width:680px){.devkit-menu summary{font-size:.8rem}.site-header nav{gap:12px}.site-header{padding:12px 0}.devkit-options{right:0}}
@media(max-width:360px){.site-header nav{gap:8px;padding:7px 9px;flex-wrap:nowrap}.site-header nav a,.devkit-menu summary{font-size:.75rem}.devkit-options{right:-25px}}
.devkit-menu summary::after{content:'';display:block;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);margin:0 1px 3px 3px;flex:none}.devkit-options{top:100%}.steps{list-style:none;padding-left:0}.steps .eyebrow{display:block;margin-bottom:18px}.demo-overlay{transform:none;padding:22px;border-radius:12px}.demo-top{align-items:center;font-size:.7rem;letter-spacing:0;margin-bottom:22px}.demo-controls{display:flex;gap:8px}.demo-controls span{width:30px;height:30px;border-radius:50%;background:#ffffff12;display:grid;place-items:center;font-size:1.2rem}.demo-message .tag{background:white;color:black;font-size:.64rem;border-radius:4px}.demo-name{color:#ece2aa}.demo-message small{font-size:.6rem}.demo-message p{font-size:.85rem}.demo-message+.demo-message{margin-top:14px}.button[aria-disabled=true]{opacity:.65;cursor:default}.portal-intro>.lead:empty{display:none}

/* Preserve the original brand asset; trim transparent margins in presentation. */ .portal-logo .home-logo-crop{display:block;position:relative;overflow:hidden;width:min(100%,360px);aspect-ratio:1520/660}.portal-logo .home-logo-crop img{position:absolute;max-width:none;width:142.105263%;height:auto;left:-21.052632%;top:-110.30303%}@media(max-width:480px){.portal-logo .home-logo-crop{width:220px}}

/* Shared page grid and typography; retain the homepage brand mark as artwork. */
:root{--column-gap:64px;--title-size:clamp(2.75rem,5.2vw,4.75rem);--section-size:clamp(1.8rem,3.2vw,2.75rem)}
.hero,.portal-hero,.product-hero,.about-section{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap)}
.hero,.portal-hero,.product-hero{padding:64px 0}
.hero>*,.portal-hero>*,.product-hero>*,.about-section>*{min-width:0}
h1,.product-hero h1,.hero h1{font-size:var(--title-size)}
h2{font-size:var(--section-size)}
.lead,.hero-copy .lead,.portal-intro .lead{font-size:1.125rem;line-height:1.65}
.featured-tool h2,.featured-tool h3{font-size:1.8rem}
.simple-intro{padding:64px 0;min-height:0}
.catalog-grid{gap:var(--column-gap)}
.demo-overlay{background:linear-gradient(130deg,rgba(255,255,255,.39),rgba(242,242,242,.23));color:#303030;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid #ffffffbd;box-shadow:0 22px 38px #77777720,inset 0 1px 0 #fff9}
.demo-top{color:#555;text-transform:none}.demo-message small{color:#666}.demo-name{color:#505050;font-weight:600}.demo-controls span{background:#ffffff60;color:#666}
.shape-one{right:-80px;top:-70px;background:#d1d1d1}.shape-two{background:#fafafa}
@supports not (backdrop-filter:blur(1px)){.demo-overlay{background:#f2f2f2e6}}
@media(max-width:900px){:root{--column-gap:32px}}
@media(max-width:680px){:root{--column-gap:28px}.hero,.portal-hero,.product-hero,.about-section{grid-template-columns:minmax(0,1fr)}.hero,.portal-hero,.product-hero,.simple-intro{padding:42px 0}.lead,.hero-copy .lead,.portal-intro .lead{font-size:1.1rem}}

html{scrollbar-gutter:stable}

/* Shared opening section across pages, with compact product heading. */
.portal-hero,.product-hero,.page-hero{min-height:560px}.page-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap);align-items:center}.product-hero h1{line-height:1.055}.imvu-links{margin-top:32px}.demo-resident{text-decoration:underline;text-underline-offset:3px;font-weight:400}.actions{gap:16px}.secondary{font-family:inherit;color:var(--ink);background:transparent;border:1px solid #fff;box-shadow:var(--raised)}button.secondary:disabled{opacity:.65;cursor:default}.catalog-section{padding-bottom:64px}.catalog-section .catalog-grid{margin-top:0}@media(max-width:680px){.portal-hero,.product-hero,.page-hero{min-height:0}.page-hero{grid-template-columns:1fr}.imvu-links{gap:14px}.imvu-links .quick-link{font-size:.85rem}.actions .button{gap:18px}.product-hero h1{line-height:1.055}}

@media(min-width:901px){.portal-hero,.product-hero,.page-hero{min-height:608px}}

@media(max-width:680px){.portal-logo{display:none}}
.kit-art{display:block;min-width:0}.kit-art img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:var(--raised)}.kit-type{text-transform:none}.kit-sections{padding:48px 0 64px;border-top:1px solid var(--line)}.kit-sections h2:not(:first-child){margin-top:48px}.kit-sections .kit-copy{max-width:780px;text-transform:none;line-height:1.8}.compatible-links{display:flex;flex-wrap:wrap;gap:16px}.button:disabled{opacity:.65;cursor:default}.category-links{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 36px}.category-links a{font-size:.85rem;min-height:42px;padding:10px 18px}.category-links a[aria-current=page]{box-shadow:inset 3px 3px 8px #d4d4d499,inset -3px -3px 8px #fff}

/* Shared control typography and stroke-based direction icons. */
.button,button.button{font-family:inherit;font-size:.9rem;font-weight:600;line-height:1.6;text-transform:none;appearance:none}.button.primary,.button.secondary{min-height:52px;padding:15px 23px}.link-arrow{width:18px;height:18px;flex:none;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.arrow-down{transform:rotate(135deg)}.devkit-options a,.kit-hero h1,.featured-tool h3,.catalog-card h2,.kit-copy,.kit-type{ text-transform:none}.lead,.kit-sections>p{font-size:1.125rem;line-height:1.65}.kit-copy,.details-body,.catalog-description{font-size:.95rem;line-height:1.8}.image-viewer{border:0;padding:48px 16px 16px;border-radius:18px;background:#eeeeeeed;max-width:96vw;max-height:96vh}.image-viewer::backdrop{background:#222a;backdrop-filter:blur(8px)}.image-viewer img{display:block;max-width:90vw;max-height:82vh;width:auto;height:auto;object-fit:contain}.image-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font:28px Arial;cursor:pointer}.catalog-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;padding:36px 0 64px}.catalog-sidebar{align-self:start;position:sticky;top:24px}.catalog-sidebar label{display:block;font-size:.9rem;margin-bottom:8px}.catalog-sidebar input{font:inherit;width:100%;padding:12px;border:1px solid #fff;border-radius:12px;background:#f4f4f4}.catalog-categories{display:grid;gap:8px;margin:24px 0}.catalog-categories button{text-align:left;font:inherit;font-size:.9rem;padding:12px;border:1px solid #fff;border-radius:12px;background:var(--paper);cursor:pointer}.catalog-categories button[aria-pressed=true]{box-shadow:inset 3px 3px 8px #ccc9,inset -3px -3px 8px #fff}.catalog-tags label{display:flex;gap:8px;align-items:center}.catalog-tags input{width:auto}.catalog-results .catalog-grid{margin-top:24px;gap:28px}.catalog-count{font-size:.9rem;color:var(--muted)}.catalog-tags-summary{font-size:.85rem;color:var(--muted)}@media(max-width:680px){.catalog-layout{grid-template-columns:minmax(0,1fr);gap:24px}.catalog-sidebar{position:static}.catalog-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-tags{display:flex;flex-wrap:wrap;gap:12px}.catalog-results .catalog-grid{grid-template-columns:1fr}}

.product-hero .eyebrow{text-transform:none}

/* All action buttons use one tone; availability does not change their color. */
.button.primary,.button.secondary,button.button,.button[aria-disabled=true],button.button:disabled{background:var(--paper);color:#666;border:1px solid #ffffffb3;box-shadow:var(--raised);opacity:1;font-family:inherit;font-size:.9rem;font-weight:600}.button.primary:hover,.button.secondary:hover{background:#f5f5f5;color:#555}.button[aria-disabled=true],button.button:disabled{cursor:default}

.button:not(:disabled):not([aria-disabled=true]):hover,.quick-link:hover,.featured-tool:hover{background:#f8f8f8;color:#111;cursor:pointer}.button:not(:disabled):not([aria-disabled=true]):active,.quick-link:active{box-shadow:inset 3px 3px 8px #d4d4d499,inset -3px -3px 8px #ffffffcc}.button:disabled:hover,.button[aria-disabled=true]:hover{background:var(--paper);color:#666;cursor:default}

.product-hero .chat-scene,.chat-scene,.kit-art{aspect-ratio:4/3;min-height:0;width:100%}.kit-art img{width:100%;height:100%;object-fit:contain}.product-hero,.portal-hero,.page-hero{min-height:608px}@media(max-width:680px){.product-hero,.portal-hero,.page-hero{min-height:0}.chat-scene{padding:18px}.demo-overlay{padding:16px}.demo-message+.demo-message{margin-top:16px}}

/* Compact catalog: native image proportions and equal-height rows. */
.catalog-results .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.catalog-card{display:flex;flex-direction:column;border-radius:16px}.product-image{background:transparent}.product-image img{aspect-ratio:auto;height:auto;object-fit:initial}.catalog-copy{padding:16px;flex:1}.catalog-card-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.catalog-tag-chips{display:flex;flex-wrap:wrap;gap:5px;min-width:0}.catalog-tag-chips span{border-radius:5px;background:#666;color:#fff;padding:2px 6px;font-size:.68rem;line-height:1.4;text-transform:none}.catalog-card-meta .catalog-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;padding:0;flex-shrink:0;max-width:96px}.catalog-icon{display:inline-flex;width:20px;height:22px;align-items:center;justify-content:center;color:#666}.catalog-icon:hover{color:#111}.catalog-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.catalog-icon img{width:18px;height:18px;object-fit:contain;filter:grayscale(1)}.catalog-copy h2{font-size:1.05rem;line-height:1.35;margin:0;letter-spacing:-.015em}.catalog-pagination{gap:8px}.catalog-pagination button{font:inherit;border:1px solid #fff;border-radius:10px;background:var(--paper);color:#666;min-width:36px;min-height:36px;cursor:pointer}.catalog-pagination button[aria-current=page]{background:#666;color:#fff}.catalog-pagination button:disabled{opacity:.4;cursor:default}@media(max-width:1000px){.catalog-layout{grid-template-columns:180px minmax(0,1fr);gap:24px}.catalog-results .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.catalog-layout{grid-template-columns:1fr}.catalog-results .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.catalog-copy{padding:12px}.catalog-copy h2{font-size:.95rem}.catalog-card-meta{flex-wrap:wrap}.catalog-card-meta .catalog-links{margin-left:auto}}@media(max-width:360px){.catalog-results .catalog-grid{grid-template-columns:1fr}}

.catalog-card .product-image{flex-shrink:0}
.catalog-icon img{filter:brightness(0);opacity:.65}.catalog-icon:hover img{opacity:1}

.catalog-tag-chips{gap:8px}.catalog-tag-chips button{appearance:none;border:0;border-radius:0;background:transparent;color:#666;padding:0;font:inherit;font-size:.72rem;line-height:1.5;text-decoration:underline;text-underline-offset:3px;cursor:pointer;text-transform:none}.catalog-tag-chips button:hover{color:#111}.catalog-tag-chips button:focus-visible{outline:2px solid #666;outline-offset:3px}

/* Catalog controls retain authored tag case; numbered paging has no boxes. */
.catalog-tags,.catalog-tag{text-transform:none}.catalog-pagination button,.catalog-pagination button[aria-current=page]{border:0;border-radius:0;background:transparent;box-shadow:none;padding:6px 9px;min-width:0;min-height:0;color:var(--ink);font:inherit;cursor:pointer}.catalog-pagination button[aria-current=page]{text-decoration:underline;text-underline-offset:5px;font-weight:600}.catalog-pagination button:disabled{opacity:.4;cursor:default}.announcement-bar{padding:11px 24px;text-align:center;font-size:.85rem;line-height:1.5;text-transform:none;border-bottom:1px solid var(--line);background:#c9c9c9}.announcement-bar a{color:inherit;text-decoration:underline;text-underline-offset:3px}

.product-date{display:block;margin-top:10px;font-size:.75rem;color:var(--muted);text-transform:none}.announcement-bar{font-size:clamp(2rem,3.4vw,3.25rem);font-weight:500;line-height:1.08;letter-spacing:-.045em;overflow:hidden;padding:16px 0}.announcement-track{display:flex;width:max-content;animation:announcement-scroll 80s linear infinite}.announcement-group{display:flex;align-items:center;flex-shrink:0;gap:5rem;padding-right:5rem}.announcement-item{display:inline-block;white-space:nowrap}.announcement-item p,.announcement-item div{display:inline;margin:0}.announcement-item br{display:none}.announcement-bar:hover .announcement-track,.announcement-bar:focus-within .announcement-track{animation-play-state:paused}@keyframes announcement-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(prefers-reduced-motion:reduce){.announcement-track{animation:none;width:auto}.announcement-group{display:block;padding:0 24px}.announcement-group[aria-hidden=true],.announcement-item~.announcement-item{display:none}.announcement-item{white-space:normal}}

.announcement-enter{width:max-content}.announcement-track{animation-delay:0s}.announcement-group{min-width:100vw;justify-content:space-around}@media(prefers-reduced-motion:reduce){.announcement-enter{animation:none;width:auto}}

.announcement-bar{font-size:var(--section-size)}

/* Header graphic uses the supplied image as a currentColor mask; source pixels unchanged. */
.site-header>.wordmark{color:var(--muted)}.menu-logo-crop{display:block;position:relative;overflow:hidden;width:86px;aspect-ratio:1494/638}.menu-logo-mask{display:block;position:absolute;left:-22.22222222222222%;top:-119.27899686520375%;width:144.57831325301206%;height:338.55799373040753%;background:currentColor;mask:url('/assets/brand/menu-logo.png') center/100% 100% no-repeat;-webkit-mask:url('/assets/brand/menu-logo.png') center/100% 100% no-repeat}

/* Consistent card metadata, image loading and explicit line spacing. */
.catalog-card-meta{flex-wrap:nowrap;min-height:22px;justify-content:flex-end}.catalog-card-meta .catalog-links{max-width:none;flex-wrap:nowrap;gap:7px;margin-left:auto}.catalog-tag-chips{display:none}
.image-viewer.is-loading{width:min(900px,94vw)}.image-viewer.is-loading img{width:100%;height:auto;max-height:78vh;aspect-ratio:var(--image-ratio,1.3333);object-fit:contain}.image-status{margin:8px 0 0;text-align:center;font-size:.85rem;color:var(--muted)}.image-status:empty{display:none}.image-close{width:32px;height:32px;display:grid;place-items:center;line-height:1}
.lead,.hero-copy .lead,.portal-intro .lead,.kit-sections>p{line-height:1.45}.kit-copy,.kit-sections .kit-copy,.details-body,.catalog-description,.document-copy{line-height:1.45}.kit-copy,.document-copy{white-space:normal}.copy-break{display:block;height:.35em}.kit-copy p,.details-body p{margin-bottom:1em}
@media(max-width:680px){.site-header{row-gap:24px;padding:24px 0}.site-header>.wordmark{margin:0 auto}.site-footer>p{display:none}}
/* Mobile metallic masthead; desktop keeps the graphic mark. */
@media(max-width:680px){.site-header .menu-logo-crop{width:86px;aspect-ratio:1520/660;background:url('/assets/brand/home-logo.png') no-repeat;background-size:142.105263% auto;background-position:50% 48.533333%}.site-header .menu-logo-mask{display:none}}
.announcement-bar{position:sticky;top:0;z-index:100}
/* Shared heading rhythm; body wrapping is tighter than authored paragraph breaks. */
h1,.product-hero h1,.hero h1,.kit-hero h1{font-size:var(--title-size);line-height:1.055;font-weight:500;letter-spacing:-.045em}
.lead,.hero-copy .lead,.portal-intro .lead,.kit-sections>p{line-height:1.38}
.kit-copy,.kit-sections .kit-copy,.details-body,.catalog-description,.document-copy,.steps p,.product-benefits p{line-height:1.38}
.hero,.portal-hero,.product-hero,.page-hero{min-height:0;padding-top:56px;padding-bottom:56px}
.about-section,.getting-started,.support-section{padding-top:56px;padding-bottom:56px}
.kit-sections{padding-top:42px;padding-bottom:56px}
@media(max-width:680px){.hero,.portal-hero,.product-hero,.page-hero,.about-section,.getting-started,.support-section{padding-top:36px;padding-bottom:36px}.kit-sections{padding-top:36px;padding-bottom:36px}}
/* Paging is not the neumorphic main menu. Empty single-page paging has no footprint. */
nav.catalog-pagination{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;min-height:0}
nav.catalog-pagination:empty{display:none;margin:0;padding:0}
/* Loading stays transparent; the full picture fades in once ready. */
.image-viewer.is-loading{width:min(300px,88vw);height:130px;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.image-viewer.is-loading img{display:none}
.image-viewer.is-loading .image-status{position:relative;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;gap:22px;width:100%;height:130px;margin:0;padding-bottom:8px;font-size:.85rem;font-weight:400;letter-spacing:.025em;color:#fff;white-space:nowrap}
.image-viewer.is-loading .image-status::before{content:'';position:absolute;left:50%;top:8px;width:52px;height:52px;margin-left:-26px;border:0;border-radius:50%;background:conic-gradient(from 0deg,#ffffff18,#ffffff48 65%,#fff);mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2.5px));animation:image-loading-spin 1s linear infinite}
.image-viewer.is-loading .image-status::after{content:none}
.image-viewer.is-loading .image-close{position:fixed;top:20px;right:20px;color:#fff}
.image-viewer[open]:not(.is-loading){animation:image-reveal .4s ease-out both}
@keyframes image-loading-spin{to{transform:rotate(360deg)}}
@keyframes image-reveal{from{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.image-viewer.is-loading .image-status::before,.image-viewer.is-loading .image-status::after,.image-viewer[open]:not(.is-loading){animation:none}}

/* Keep the dialog open until picture and backdrop have faded away. */
.image-viewer[open].is-closing{animation:image-dismiss .24s ease-in both;pointer-events:none}
.image-viewer[open].is-closing::backdrop{animation:image-backdrop-dismiss .24s ease-in both}
@keyframes image-dismiss{from{opacity:1;transform:none}to{opacity:0;transform:translateY(4px) scale(.99)}}
@keyframes image-backdrop-dismiss{to{background-color:transparent;backdrop-filter:blur(0)}}
.document-copy strong,.kit-copy strong{font-family:inherit;font-weight:600}
@media(prefers-reduced-motion:reduce){.image-viewer[open].is-closing,.image-viewer[open].is-closing::backdrop{animation:none}}

.home-tools,.platform-groups{display:grid;gap:24px}.catalog-sidebar.is-fixed{position:fixed;top:var(--sidebar-top,24px);left:var(--sidebar-left);width:var(--sidebar-width);max-height:calc(100dvh - var(--sidebar-top,24px) - 24px);overflow-y:auto;overscroll-behavior:contain;z-index:20}.catalog-sidebar-slot{min-width:0}

/* Search and tags remain compact; the fixed sidebar yields to the footer. */
.catalog-search-wrap{position:relative;margin-bottom:20px}.catalog-search-wrap #catalog-search{padding-right:66px;text-align:left}.catalog-search-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;pointer-events:none;color:var(--muted)}
.catalog-sidebar.is-fixed{max-height:var(--sidebar-limit,calc(100dvh - 48px))}
.catalog-tags{max-height:180px;overflow-y:auto;overscroll-behavior:contain;padding:8px 10px;border:1px solid var(--line);border-radius:10px;scrollbar-width:thin;scrollbar-color:#aaa transparent}
.catalog-tags::-webkit-scrollbar{width:4px}.catalog-tags::-webkit-scrollbar-thumb{background:#aaa;border-radius:4px}.catalog-tags::-webkit-scrollbar-track{background:transparent}

/* Shared filter radius, right-aligned search, and compact tag rows. */
.catalog-layout{--filter-radius:12px}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
.catalog-toolbar .catalog-count{margin:0}.catalog-toolbar .catalog-search-wrap{width:min(260px,45%);margin:0;flex-shrink:0}
.catalog-toolbar #catalog-search{width:100%;font:inherit;font-size:.9rem;padding:12px 66px 12px 14px;border:1px solid #fff;background:#f4f4f4;border-radius:var(--filter-radius)}
.catalog-categories{margin-top:0}.catalog-categories button,.catalog-tags{border-radius:var(--filter-radius)}
.catalog-tags{display:block;height:144px;max-height:144px;padding:8px 10px;scrollbar-width:auto}
.catalog-tags label{height:28px;min-height:28px;margin:0;line-height:1.2;gap:8px}
.catalog-tags input{margin:0;padding:0;flex:none}
.catalog-tags::-webkit-scrollbar{width:4px}.catalog-tags::-webkit-scrollbar-button,.catalog-tags::-webkit-scrollbar-button:single-button{display:none;width:0;height:0}
@supports not selector(::-webkit-scrollbar){.catalog-tags{scrollbar-width:thin}}
@media(max-width:680px){.catalog-toolbar{gap:12px}.catalog-toolbar .catalog-search-wrap{width:48%}}

/* One shared corner radius for controls and product surfaces. */
:root{--control-radius:12px;--radius:12px}
.button,.quick-link,.featured-tool,.round-arrow,.catalog-categories button,.image-close,button:not(.catalog-pagination button){border-radius:var(--control-radius)}
.catalog-card,.product-image,.kit-art,.kit-art img,.chat-scene,.chat-scene img,.product-hero img,.image-viewer:not(.is-loading){border-radius:var(--control-radius)}
/* Non-auto scrollbar-color overrides WebKit styling in Chromium. Reset both. */
.catalog-tags{scrollbar-color:auto;scrollbar-width:auto}
.catalog-tags::-webkit-scrollbar{width:4px;background:transparent}
.catalog-tags::-webkit-scrollbar-thumb{background:#aaa;border-radius:4px}
.catalog-tags::-webkit-scrollbar-track,.catalog-tags::-webkit-scrollbar-corner{background:transparent}
.catalog-tags::-webkit-scrollbar-button:vertical:start:decrement,.catalog-tags::-webkit-scrollbar-button:vertical:end:increment,.catalog-tags::-webkit-scrollbar-button{display:none;height:0;width:0;background:transparent}
@supports not selector(::-webkit-scrollbar){.catalog-tags{scrollbar-width:thin;scrollbar-color:#aaa transparent}}

/* Align the homepage tagline and social heading at the top of their columns. */
.portal-hero{align-items:start}


:root{--control-radius:14px;--radius:14px;--announcement-height:0px}
.catalog-layout{--filter-radius:14px}
.site-header nav,.devkit-options{border-radius:var(--control-radius)}
@media(min-width:681px){
.site-header{position:sticky;top:var(--announcement-height);z-index:90;background:var(--paper)}
.portal-intro>.eyebrow{margin-bottom:18px}
.portal-intro .portal-logo{height:var(--social-height,240px);display:flex;align-items:center}
.portal-logo .home-logo-crop{width:min(100%,calc(var(--social-height,240px) * 2.303));flex-shrink:0}
}
.catalog-tags-shell{border:1px solid var(--line);border-radius:var(--control-radius);padding:8px;height:144px;overflow:hidden}
.catalog-tags-shell .catalog-tags{height:126px;max-height:126px;border:0;border-radius:0;padding:0 6px 0 2px}
@media(max-width:680px){.site-header{position:static}}

/* Native sticky avoids scroll-handler position switches and stays inside the catalog. */
@media(min-width:681px){.catalog-layout{padding-top:24px}.catalog-sidebar{position:sticky;align-self:start;top:calc(var(--announcement-height,0px) + var(--header-height,110px) + 24px);max-height:calc(100dvh - var(--announcement-height,0px) - var(--header-height,110px) - 48px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:680px){.catalog-sidebar{position:static;max-height:none;overflow:visible}}
.catalog-categories button{border-color:transparent;background:transparent;box-shadow:none;transition:background-color .18s ease,box-shadow .18s ease,border-color .18s ease}
.catalog-categories button:hover,.catalog-categories button:focus-visible{background:var(--paper);border-color:#ffffffb3;box-shadow:var(--raised)}
.catalog-categories button[aria-pressed=true]{background:var(--paper);border-color:#fff;box-shadow:inset 3px 3px 8px #ccc9,inset -3px -3px 8px #fff}

/* Plain navigation, backed by an opaque viewport-wide sticky header. */
.site-header nav{background:transparent;border:0;box-shadow:none;border-radius:0}
.site-header{isolation:isolate;background:var(--paper)}
@media(min-width:681px){.site-header::before{content:'';position:absolute;inset:0 calc((100% - 100vw)/2);background:var(--paper);z-index:-1;pointer-events:none}.catalog-sidebar{max-height:calc(100dvh - var(--announcement-height,0px) - var(--header-height,110px) - var(--catalog-footer-space,180px) - 48px)}}

/* Search stays with categories; tags are right-aligned grayscale filter pills. */
.catalog-sidebar{max-height:none;overflow:visible;overscroll-behavior:auto}
.catalog-sidebar .catalog-search-wrap{width:100%;margin:0 0 20px}
.catalog-sidebar .catalog-categories button{padding-top:10px;padding-bottom:10px}
.catalog-toolbar{align-items:center}.catalog-toolbar .catalog-count{flex-shrink:0}
.catalog-toolbar .catalog-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;flex:1;height:auto;max-height:none;border:0;border-radius:0;padding:0;overflow:visible}
.catalog-tags .catalog-filter-tag{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;min-height:30px;border:1px solid #bbb;border-radius:var(--control-radius);background:transparent;color:var(--muted);font:inherit;font-size:.8rem;cursor:pointer}
.catalog-tags .catalog-filter-tag:hover{background:#ddd;color:var(--ink)}
.catalog-tags .catalog-filter-tag[aria-pressed=true]{background:#666;color:#fff;border-color:#666}
@media(max-width:680px){.catalog-toolbar{align-items:flex-start;flex-direction:column}.catalog-toolbar .catalog-tags{justify-content:flex-start}}

/* Publication date belongs to the links row; omit on mobile. */
.catalog-card-meta{align-items:center}.catalog-card-meta .product-date{margin:0 auto 0 0;white-space:nowrap;line-height:22px}
@media(max-width:680px){.catalog-card-meta .product-date{display:none}}
