/* Scoped custom-lighting page and category banner. */
.tl-design-page{--tl-purple:#7c3aed;max-width:1180px;margin:0 auto 72px;color:#f8f7fc;font-family:"Plus Jakarta Sans",sans-serif}
.tl-design-page *{box-sizing:border-box}
.tl-design-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:center;margin:10px 0 32px;padding:38px 42px;border:1px solid #573584;border-radius:18px;background:radial-gradient(ellipse at 100% 0,#7c3aed22,transparent 65%),#19171e}
.tl-design-page .tl-eyebrow,.tl-custom-banner .tl-eyebrow{color:#b68af5;font-size:12px;font-weight:700;letter-spacing:.24em;line-height:1.7;text-transform:uppercase;margin:0 0 20px}
.tl-design-page :is(h1,h2){font-family:Sora,sans-serif;font-size:clamp(27px,3vw,40px);line-height:1.2;margin:0 0 22px;color:#fff;letter-spacing:-.035em}
.tl-design-page p{line-height:1.7;color:#c9c4d1;font-size:16px;margin:0 0 18px}
.tl-design-page .tl-design-art{display:block;width:100%;height:auto}
.tl-design-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px;align-items:start}
.tl-design-form{min-width:0;padding:32px;border:1px solid #35303e;background:#19171e;border-radius:16px}
.tl-design-form h2{font-size:25px;letter-spacing:-.02em;margin-bottom:10px}
.tl-design-form .tl-form-intro{font-size:14px;margin-bottom:25px}
.tl-design-page .formeo-render{font:inherit;color:inherit}
.tl-design-page .formeo-render .formeo-row-wrap,.tl-design-page .formeo-render .formeo-row{display:block;width:100%;margin:0!important;padding:0!important}
.tl-design-page .formeo-render .formeo-column{width:100%!important;max-width:none;margin:0!important;padding:0!important}
.tl-design-page .formeo-render .f-field-group{margin:0 0 22px!important;min-width:0}
.tl-design-page label{display:block;color:#f3effa;font-size:14px;font-weight:600;line-height:1.55;margin:0 0 9px}
.tl-design-page .text-error{color:#b58cf7;margin-left:4px}
.tl-design-page input:not([type=checkbox]):not([type=hidden]),.tl-design-page textarea{width:100%!important;max-width:100%!important;min-width:0;border:1px solid #4a4258!important;border-radius:9px!important;background:#111014!important;color:#fff!important;font:inherit;font-size:16px;padding:13px 15px;height:auto;min-height:49px;box-shadow:none!important}
.tl-design-page textarea{resize:vertical;min-height:150px!important;line-height:1.6}
.tl-design-page input:focus,.tl-design-page textarea:focus{outline:2px solid #a875ff!important;outline-offset:2px}
.tl-design-page input[type=file]{font-size:13px!important;padding:11px!important;color:#bdb5cb!important}
.tl-design-page input[type=file]::file-selector-button{background:#30213f;border:1px solid #70518e;color:#fff;padding:9px 12px;border-radius:6px;font:inherit;cursor:pointer;margin-right:12px}
.tl-design-page .f-checkbox{display:flex;gap:10px;align-items:flex-start}
.tl-design-page .f-checkbox input{width:18px;height:18px;accent-color:#7c3aed;flex:none;margin:2px 0 0!important;position:static!important;opacity:1!important}
.tl-design-page .f-checkbox label{font-size:13px;font-weight:400;margin:0!important;padding:0!important;color:#c9c4d1}
.tl-design-page .f-checkbox label:before,.tl-design-page .f-checkbox label:after{display:none!important}
.tl-design-page a{color:#bd91ff;text-decoration:underline;text-underline-offset:3px}
.tl-design-page button[type=submit]{display:inline-flex;align-items:center;justify-content:center;max-width:100%;white-space:normal;background:#7c3aed!important;color:white!important;border:1px solid #7c3aed!important;border-radius:9px!important;font:inherit;font-size:16px;font-weight:700;line-height:1.5;min-height:52px;padding:14px 22px;cursor:pointer}
.tl-design-page button[type=submit]:hover{background:#6d28d9!important}
.tl-design-help{padding:20px 0}
.tl-design-help h3{font:600 20px/1.4 Sora,sans-serif;color:#fff;margin:0 0 18px}
.tl-design-help ol{padding-left:23px;margin:0 0 30px;color:#c9c4d1}
.tl-design-help li{padding:0 0 15px 4px;line-height:1.6;font-size:15px}
.tl-design-help li::marker{color:#b68af5;font-weight:700}
.tl-design-help .tl-attachment-help{font-size:13px;border-top:1px solid #3b3048;padding-top:22px}
#products>.tl-custom-banner{box-sizing:border-box;min-width:0;align-self:start;margin:11px 0 0 12px;padding:0;container-type:inline-size;isolation:isolate;overflow:hidden;border:1px solid #7c3aed;border-radius:16px;background:radial-gradient(ellipse at 100% 0,#7c3aed30,transparent 72%),#19171e;color:#fff}
.tl-custom-banner .tl-banner-inner{position:relative;display:flex;align-items:center;min-height:350px;height:auto;padding:28px 34px;gap:8px;box-sizing:border-box}
.tl-custom-banner .tl-banner-copy{position:relative;z-index:1;width:62%;flex:none}
.tl-custom-banner h2{font:700 clamp(27px,2vw,34px)/1.22 Sora,sans-serif;color:#fff;letter-spacing:-.035em;margin:0 0 18px}
.tl-custom-banner p:not(.tl-eyebrow){font:400 16px/1.6 "Plus Jakarta Sans",sans-serif;color:#c9c4d1;margin:0 0 22px}
.tl-custom-banner .tl-banner-art{display:block;width:36%;height:auto;max-width:320px;max-height:280px;object-fit:contain;margin-left:0;pointer-events:none}
.tl-custom-banner .tl-banner-cta{display:inline-flex;align-items:center;gap:18px;background:#7c3aed;color:#fff!important;text-decoration:none;border:1px solid #7c3aed;border-radius:9px;padding:15px 22px;font:700 16px/1.45 "Plus Jakarta Sans",sans-serif;transition:background .15s;max-width:100%;box-sizing:border-box}
.tl-custom-banner .tl-banner-cta:hover{background:#6d28d9}
.tl-custom-banner .tl-banner-cta:focus-visible{outline:3px solid #c4a0ff;outline-offset:4px}
#products>.tl-custom-banner[data-full-row="true"]{margin-left:0}
@container (max-width:700px){.tl-custom-banner .tl-banner-inner{padding:26px;min-height:320px}.tl-custom-banner .tl-banner-copy{width:100%}.tl-custom-banner .tl-banner-art{position:absolute;right:-50px;bottom:-50px;width:300px;opacity:.13;z-index:0}.tl-custom-banner h2{font-size:27px}.tl-custom-banner p:not(.tl-eyebrow){max-width:480px;font-size:16px}}
@media(max-width:767px){.tl-design-page{margin-bottom:40px}.tl-design-hero{grid-template-columns:1fr;padding:27px 22px;gap:0}.tl-design-hero .tl-design-art{max-width:240px;margin:0 auto}.tl-design-layout{grid-template-columns:1fr;gap:15px}.tl-design-form{padding:24px 18px}.tl-design-help{padding:10px 6px}.tl-design-page button[type=submit]{width:100%}.tl-design-page :is(h1,h2){font-size:28px}#products>.tl-custom-banner{margin-left:0}.tl-custom-banner .tl-banner-inner{min-height:0;padding:24px}.tl-custom-banner .tl-eyebrow{font-size:11px;letter-spacing:.17em}.tl-custom-banner h2{font-size:27px}.tl-custom-banner .tl-banner-cta{padding:14px 17px;font-size:15px}}

/* 2026-10-05: compact banner and a single visible page heading. */
body.id-824 #content h1:not(#tl-design-heading){display:none!important}
.tl-custom-banner .tl-eyebrow{margin-bottom:12px}

/* Keep the existing homepage banner's width, frame and desktop height. */
.tl-home-custom{background:radial-gradient(ellipse at 100% 0,#7c3aed30,transparent 72%),#19171e;overflow:hidden}
.tl-home-custom .tl-banner-inner{height:406px;min-height:406px;padding:40px;gap:20px}
.tl-home-custom .tl-banner-copy{width:62%;max-width:840px}
.tl-home-custom .tl-banner-art{width:34%;max-width:400px;max-height:350px;margin-left:auto}
.tl-home-custom h2{font-size:clamp(28px,2.5vw,40px)}
@media(min-width:1200px) and (max-width:1600px){.tl-home-custom .tl-banner-inner{height:465px;min-height:465px}}
@media(max-width:767px){.tl-home-custom .tl-banner-inner{height:auto;min-height:406px;padding:28px 24px}.tl-home-custom .tl-banner-copy{width:100%}.tl-home-custom .tl-banner-art{position:absolute;right:-35px;bottom:-35px;width:300px;max-height:300px;opacity:.13;z-index:0}.tl-home-custom h2{font-size:28px}.tl-home-custom .tl-banner-cta{gap:12px;white-space:normal}}
