.lego3d{--l3-navy:#08283b;--l3-ink:#102f3e;--l3-orange:#ff9d28;--l3-soft:#f2f6f6;color:var(--l3-ink);max-width:1240px;margin:auto}
.lego3d [hidden]{display:none!important}
.lego3d *{box-sizing:border-box}
.lego3d h1,.lego3d h2,.lego3d h3,.lego3d p,.lego3d figure{margin:0}
.lego3d a:focus-visible,.lego3d button:focus-visible,.lego3d input:focus-visible,.lego3d summary:focus-visible{outline:3px solid #1688c9;outline-offset:5px}
.lego3d-hero{overflow:hidden;border-radius:24px;background:var(--l3-navy);color:white;box-shadow:0 18px 48px #08283b18}
.lego3d-hero-copy{position:relative;text-align:center;padding:48px 26px 32px;background:radial-gradient(ellipse at top,#17516a,transparent 75%)}
.lego3d-eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:#317061}
.lego3d-hero .lego3d-eyebrow{color:#b9dedc}
.lego3d-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--l3-orange);margin-right:8px}
.lego3d h1{font-size:clamp(38px,5.8vw,76px);font-weight:900;letter-spacing:-.055em;line-height:1.02;margin:20px 0}
.lego3d h1 em{font-style:normal;color:var(--l3-orange)}
.lego3d-lead{font-size:clamp(17px,2vw,22px);line-height:1.5;color:#f0f7fa}
.lego3d-description{max-width:620px;margin:14px auto 0!important;color:#c8dce5;font-size:15px;line-height:1.7}
.lego3d-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 24px;margin-top:25px}
.lego3d-primary{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:52px;padding:14px 24px;border:0;border-radius:8px;background:var(--l3-orange);color:#132733;font-size:15px;font-weight:800;text-decoration:none;box-shadow:0 5px 0 #0002;transition:background .15s,transform .15s}
.lego3d-primary:hover{background:#ffb451;transform:translateY(-2px);color:#132733}
.lego3d-primary span{font-size:23px;line-height:1}
.lego3d-secondary{font-size:14px;color:#e2edf1;padding:12px 0;border-bottom:1px solid #57727f}
.lego3d-secondary:hover{color:white;border-color:white}
.lego3d-offer{margin-top:17px!important;font-size:12px;color:#c8dce5}
.lego3d-offer strong{color:white}
.lego3d-hero-art{background:#08283b}
.lego3d-hero-art img{display:block;width:100%;height:auto}
.lego3d-hero-art figcaption{padding:10px 20px 14px;color:#b5cbd4;text-align:center;font-size:11px}
.lego3d-specs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:24px 18px;border-top:1px solid #ffffff24;background:#061e2d;gap:16px;text-align:center}
.lego3d-specs span{font-size:11px;color:#adcad5}
.lego3d-specs strong{display:block;margin-bottom:5px;color:white;font-size:14px}
.lego3d-section{padding:72px 16px;scroll-margin-top:24px}
.lego3d-section-heading{text-align:center;margin-bottom:30px}
.lego3d h2{font-size:clamp(28px,3.4vw,43px);line-height:1.15;font-weight:850;letter-spacing:-.035em}
.lego3d-section-heading h2{margin-top:12px}
.lego3d-section-heading p{margin-top:14px;color:#5c707b}
.lego3d-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;margin:0;padding:0}
.lego3d-steps li{padding:24px 22px 26px;border-top:2px solid #dbe8e5;background:linear-gradient(#f4f8f7,white);border-radius:0 0 12px 12px}
.lego3d-number{display:block;font-size:38px;font-weight:850;color:#176b4d;letter-spacing:-.05em;margin-bottom:20px}
.lego3d h3{font-size:19px;line-height:1.3;font-weight:800;letter-spacing:-.02em}
.lego3d-steps p,.lego3d-styles p{font-size:14px;color:#546a74;margin-top:12px;line-height:1.75}
.lego3d-showcase{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#f3f5f5;border:1px solid #e6eceb;border-radius:20px;overflow:hidden}
.lego3d-showcase figure{background:white;padding:16px}
.lego3d-showcase img{display:block;width:100%;height:auto;max-height:550px;object-fit:contain}
.lego3d-showcase figcaption{font-size:11px;color:#627780;text-align:center;padding:10px}
.lego3d-showcase-copy{padding:40px}
.lego3d-showcase h2{margin:14px 0 20px}
.lego3d-showcase p{line-height:1.8;color:#435f6d}
.lego3d .lego3d-note{font-size:12px;line-height:1.7;margin-top:18px;color:#647983}
.lego3d-text-link{display:inline-block;margin-top:22px;font-weight:800;color:#176b4d;border-bottom:1px solid #b6ccc0;padding-bottom:5px}
.lego3d-styles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lego3d-styles article{border:1px solid #dce5e4;border-radius:16px;padding:28px;background:white}
.lego3d-style-icon{display:flex;width:54px;height:54px;align-items:center;justify-content:center;background:#eaf2ef;color:#176b4d;border-radius:12px;font-size:32px;margin-bottom:28px}
.lego3d-kicker{font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:#56756e;display:block;margin-bottom:8px}
.lego3d-styles .lego3d-style-full{border-color:#b9d0c7;background:#f0f7f3}
.lego3d-start{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:42px;background:var(--l3-navy);color:white;border-radius:20px}
.lego3d-start .lego3d-eyebrow{color:#a7cecb;margin-bottom:16px}
.lego3d-start h2{font-size:clamp(26px,3vw,38px)}
.lego3d-start p{margin-top:18px;color:#c7dce3;font-size:14px}
.lego3d-start .lego3d-primary{flex-shrink:0}
.lego3d-workspace{margin-top:64px;padding:32px;border:1px solid #dce5e4;border-radius:20px;background:#f7faf8;scroll-margin-top:24px}
.lego3d-workspace>p{color:#526c62;margin:12px 0;line-height:1.7;font-size:14px}
.lego3d-workspace>h2{font-size:26px;margin-top:36px}
.lego3d-workspace .form{display:grid;gap:18px}
.lego3d .lego3d-coupon{background:white;padding:20px;border:1px solid #dce5e4;border-radius:12px;margin:22px 0 30px;max-width:540px}
.lego3d .lego3d-upload{padding:26px;background:white;border:1px solid #dce5e4;border-radius:14px}
.lego3d .form label{font-size:14px;color:#264438;gap:8px}
.lego3d .form input{padding:12px;border:1px solid #becdc7;border-radius:7px;background:white;max-width:100%}
.lego3d input[type=number]{width:160px}
.lego3d input[type=file]{width:100%;font-size:14px}
.lego3d input::file-selector-button{padding:8px 12px;border:0;border-radius:4px;background:#eaf2ee;color:#164e38;margin-right:12px;cursor:pointer}
.lego3d fieldset{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:0;padding:12px 0;margin:0}
.lego3d legend{font-size:14px;font-weight:750;color:#264438}
.lego3d fieldset label:has(input[type=radio]){display:block;padding:16px;line-height:1.8;background:#f6f9f7;border:1px solid #d5e0da;border-radius:8px;font-size:13px}
.lego3d fieldset label:has(input:checked){border-color:#176b4d;background:#eaf4ed;box-shadow:0 0 0 1px #176b4d}
.lego3d label:has(input[type=checkbox]){display:block;line-height:1.7}
.lego3d input[type=radio],.lego3d input[type=checkbox]{margin-right:8px;padding:0;accent-color:#176b4d;vertical-align:middle}
.lego3d .form p,.lego3d small{font-size:12px;line-height:1.7;color:#5a7166}
.lego3d .button{justify-self:start;border-radius:7px;padding:13px 20px;font-weight:750;white-space:normal}
.lego3d details{border-bottom:1px solid #dce5e4;padding:20px 0}
.lego3d summary{cursor:pointer;font-size:15px;font-weight:750;line-height:1.6;color:#1f423d}
.lego3d details p{font-size:14px;line-height:1.8;color:#526d67;margin-top:14px;max-width:900px}
.lego3d-upload details{padding:15px 0}
.lego3d-table{overflow-x:auto;border:1px solid #dce5e4;border-radius:10px;background:white;margin-top:20px}
.lego3d table{width:100%;border-collapse:collapse;font-size:14px}
.lego3d td,.lego3d th{text-align:left;padding:16px;border-bottom:1px solid #e3e8e3;overflow-wrap:anywhere;min-width:105px}
.lego3d th{background:#edf4f0;font-size:12px}
.lego3d .lego3d-disclaimer{font-size:11px;color:#637770;margin-top:24px}
@media(min-width:1000px){.lego3d-hero-copy{padding-top:54px}.lego3d-hero-art{margin-top:0!important}}
@media(max-width:760px){.lego3d-hero{border-radius:16px}.lego3d-hero-copy{padding:32px 20px 25px}.lego3d h1{font-size:44px}.lego3d-description{font-size:14px}.lego3d-specs{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.lego3d-section{padding:48px 0}.lego3d-steps,.lego3d-styles{grid-template-columns:1fr;gap:14px}.lego3d-steps li{padding:22px}.lego3d-number{margin-bottom:12px}.lego3d-showcase{grid-template-columns:1fr}.lego3d-showcase img{max-height:420px}.lego3d-showcase-copy{padding:28px}.lego3d-styles article{padding:24px}.lego3d-style-icon{float:right;margin:0 0 16px 12px}.lego3d-start{display:block;padding:28px}.lego3d-start .lego3d-primary{margin-top:24px}.lego3d-workspace{padding:20px;margin-top:40px}.lego3d .lego3d-upload{padding:18px}.lego3d fieldset{grid-template-columns:1fr}.lego3d .lego3d-coupon{padding:18px}.lego3d-eyebrow{font-size:10px;letter-spacing:.1em}}
@media(max-width:380px){.lego3d h1{font-size:36px}.lego3d-actions{flex-direction:column;gap:8px}.lego3d-primary{width:100%;gap:14px;padding:13px 16px}.lego3d-hero-copy{padding-left:16px;padding-right:16px}.lego3d-workspace{padding:14px}}
@media(prefers-reduced-motion:reduce){.lego3d-primary{transition:none}.lego3d-primary:hover{transform:none}}
