@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--orange:#fc5b2b;--orange-ink:#d83e12;--ink:#20201e;--muted:#65655f;--paper:#fafaf7;--line:#deded8;--blue:#254cc8;--radius:6px;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;font-size:1rem;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}svg{display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.wrap{max-width:1360px;width:calc(100% - 112px);margin-inline:auto}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--ink);color:white;padding:14px 20px}.skip-link:focus{top:12px}.announcement{background:var(--ink);color:#fff;display:flex;justify-content:space-between;gap:20px;padding:11px max(56px,calc((100% - 1248px)/2));font-size:.8125rem;letter-spacing:.015em}.header{height:114px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:28px}.brand{display:inline-flex;align-items:center;gap:11px;font-family:'Manrope',Arial,sans-serif;font-size:1.875rem;font-weight:800;letter-spacing:-.065em;white-space:nowrap}.brand-mark{width:35px;height:39px;color:var(--orange);stroke-width:2.5;flex-shrink:0}.orange{color:var(--orange-ink)}.brand .orange{color:var(--orange)}nav{display:flex;align-items:center;gap:38px;font-size:.9375rem;font-weight:550}nav>a:not(.nav-pill){position:relative}nav>a:not(.nav-pill):after{content:'';height:1px;background:var(--ink);position:absolute;bottom:-6px;left:0;width:0;transition:width .2s}nav>a:hover:after{width:100%}.nav-pill{border:1px solid #b6b6ad;border-radius:50px;padding:11px 20px;display:flex;align-items:center;gap:24px;transition:background .2s}.nav-pill:hover{background:#ecece6}.nav-pill span{font-size:1.3rem}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1.06fr;gap:45px;padding-top:66px;padding-bottom:57px;align-items:center}.eyebrow{font-size:.8125rem;font-weight:600;letter-spacing:.065em;text-transform:uppercase;margin:0 0 22px}.hero .eyebrow{display:flex;align-items:center;gap:9px;font-size:.75rem;letter-spacing:.07em}.short-line{height:2px;width:23px;background:var(--orange);flex-shrink:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;font-weight:750}h1{font-size:clamp(4rem,6.75vw,6.2rem);letter-spacing:-.069em;line-height:1.015;margin-bottom:28px}h1 .orange{color:var(--orange-ink)}.hero-description{max-width:345px;font-size:1.0625rem;line-height:1.65;color:var(--muted);margin-bottom:26px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:16px 22px;border-radius:var(--radius);font-size:.9375rem;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:1.3rem}.dark-button{background:var(--ink);color:#fff}.dark-button:hover{background:#373733}.hero-footnote{display:flex;gap:8px;align-items:center;font-size:.8125rem;color:var(--muted);margin-top:26px}.hero-footnote svg{width:16px;height:16px;flex-shrink:0}.hero-visual{margin:0;min-width:0}.image-frame{position:relative;background:#e9e9e4;border-radius:8px;isolation:isolate}.image-frame>img{height:586px;border-radius:8px;object-position:center}.image-label{position:absolute;left:24px;top:23px;display:flex;flex-direction:column;font-size:.875rem;line-height:1.4;font-weight:550;padding:10px 13px;border-radius:4px;background:rgba(250,250,247,.9)}.round-label{position:absolute;right:-22px;bottom:26px;background:var(--orange);color:var(--ink);height:120px;width:120px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;transform:rotate(12deg);border:1px solid rgba(32,32,30,.15)}.round-label span{text-align:center;font-size:.75rem;font-weight:750;letter-spacing:.09em;line-height:1.25}.round-label svg{height:28px;width:28px;stroke-width:2}.hero-visual figcaption{font-size:.75rem;display:flex;justify-content:space-between;gap:12px;margin-top:15px;color:var(--muted)}.hero-visual figcaption span:last-child{white-space:nowrap}.values-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f1f1eb}.values-strip>.wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:24px;font-size:.875rem;font-weight:550}.asterisk{color:var(--orange-ink);font-size:1.75rem;line-height:1}.section{padding-block:92px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:55px;margin-bottom:35px}.section-heading .eyebrow{color:var(--muted);margin-bottom:15px}h2{font-size:clamp(2.5rem,3.6vw,3.4rem);letter-spacing:-.05em;line-height:1.12;margin-bottom:0}.section-heading>p{max-width:335px;margin-bottom:4px;font-size:1rem;color:var(--muted);line-height:1.75}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.product{min-width:0}.product-image{position:relative;aspect-ratio:1.23;background:#eeefed;overflow:hidden;border-radius:var(--radius)}.product-image img{height:100%;transition:transform .5s}.product:hover .product-image img{transform:scale(1.025)}.product-category{position:absolute;top:19px;left:19px;background:var(--paper);padding:7px 12px;border-radius:3px;z-index:1;font-size:.75rem;font-weight:550}.product-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:25px;margin-bottom:9px}.product-title h3{font-size:clamp(1.125rem,1.6vw,1.4375rem);line-height:1.4;letter-spacing:-.035em;margin:0}.product-number{font-size:.8125rem;color:var(--muted)}.product>p{font-size:.9375rem;max-width:420px;color:var(--muted);margin-bottom:20px}.product details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.product summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 0;font-size:.875rem;font-weight:550}.product summary::-webkit-details-marker{display:none}.product summary>span{font-size:1.5rem;font-weight:400;line-height:1;transition:transform .2s}.product details[open] summary>span{transform:rotate(45deg)}.product-details{font-size:.9375rem;color:var(--muted);padding:0 18px 6px 0}.product-details .detail-note{font-size:.8125rem}.concept-note{font-size:.8125rem;color:var(--muted);margin:25px 0 0;line-height:1.6}.about{background:var(--orange);padding-block:83px}.about-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:100px}.about .eyebrow{font-size:.75rem}.about h2{font-size:clamp(3.5rem,5vw,4.5rem);line-height:1.1}.about h2>span{color:#fff}.about-signoff{display:inline-block;font-size:.8125rem;margin-top:32px;font-weight:550}.about-copy{padding-top:8px;max-width:440px}.about-copy .large-copy{font-family:'Manrope',Arial,sans-serif;font-size:1.75rem;font-weight:650;line-height:1.4;letter-spacing:-.03em;margin-bottom:23px}.about-copy>p{line-height:1.75;font-size:1rem}.about-bottom{display:flex;align-items:center;gap:14px;border-top:1px solid rgba(32,32,30,.3);padding-top:23px;margin-top:30px;font-size:.875rem;font-weight:550;line-height:1.4}.about-bottom svg{width:32px;height:37px;stroke-width:2}.shipping{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.shipping .eyebrow{color:var(--muted);margin-bottom:17px}.shipping h2{font-size:clamp(2.5rem,3.25vw,3rem);margin-bottom:25px}.shipping-copy>p:not(.eyebrow){color:var(--muted);max-width:405px;line-height:1.75}.location-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.location-tags>span{font-size:.8125rem;border:1px solid #c7c7bd;padding:7px 13px;border-radius:50px}.contact-card{background:var(--blue);color:#fff;border-radius:8px;padding:38px 40px}.contact-label{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid #8098e5;display:inline-block;padding-bottom:8px;margin-bottom:25px}.contact-card h3{font-size:2.4375rem;letter-spacing:-.045em;line-height:1.15;margin-bottom:19px}.contact-card>p{font-size:.9375rem;color:#edf0ff;line-height:1.75;max-width:340px}.contact-card .contact-note{font-size:.8125rem;margin-top:27px;margin-bottom:0;color:#edf0ff}.footer{background:var(--ink);color:var(--paper);padding:45px 0 22px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:42px}.footer-top p{font-size:.875rem;line-height:1.6;color:#c9c9c1;margin:0}.footer .brand{font-size:1.75rem}.back-top{font-size:.8125rem;display:flex;gap:22px;align-items:center}.back-top span{font-size:1.5rem}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #4a4a43;padding-top:19px;font-size:.75rem;color:#c9c9c1}
@media(min-width:1600px){.announcement{padding-inline:calc((100% - 1360px)/2)}.hero{gap:70px}.image-frame>img{height:650px}h1{font-size:7rem}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.announcement{padding-inline:32px}.hero{gap:30px;padding-top:45px}.image-frame>img{height:530px}h1{font-size:5.1rem}.hero .eyebrow{font-size:.75rem}.hero-visual figcaption{flex-direction:column;gap:2px}.about-grid,.shipping{gap:55px}.round-label{right:-12px;height:104px;width:104px}.values-strip>.wrap{gap:14px;font-size:.8125rem}.header{height:96px}nav{gap:25px}.brand{font-size:1.65rem}.section{padding-block:70px}.about{padding-block:65px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.announcement{justify-content:center;padding:9px 20px;text-align:center;font-size:.75rem}.announcement>span:first-child{display:none}.header{height:85px;position:relative;z-index:5}.brand{font-size:1.55rem}.brand-mark{width:29px;height:33px}.menu-toggle{border:1px solid #c7c7bd;border-radius:4px;width:44px;height:44px;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:6px;align-items:center;cursor:pointer}.menu-toggle span{width:20px;height:1.5px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}nav{display:none;position:absolute;top:84px;left:-20px;right:-20px;background:var(--paper);padding:22px 20px;align-items:stretch;gap:25px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #20201e0d}nav.is-open{display:flex;flex-direction:column}nav>a{padding:5px 2px}.nav-pill{align-self:flex-start;padding:10px 18px}.hero{grid-template-columns:1fr;gap:34px;padding-block:35px}.hero .eyebrow{font-size:.75rem;margin-bottom:18px}h1{font-size:clamp(4.25rem,11vw,6rem);margin-bottom:22px}h1>br{display:none}h1 .orange{display:inline}h1 .orange>br{display:none}.hero-description{max-width:440px;font-size:1rem;margin-bottom:24px}.hero-footnote{margin-top:20px}.image-frame>img{height:auto;aspect-ratio:1.15}.image-label{top:16px;left:16px;font-size:.8125rem}.round-label{right:12px;bottom:20px;height:105px;width:105px}.hero-visual figcaption{flex-direction:row;font-size:.75rem;gap:16px}.hero-visual figcaption span:last-child{white-space:normal;text-align:right}.values-strip>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;padding-block:22px;font-size:.75rem}.values-strip .asterisk{display:none}.values-strip>.wrap>span:not(.asterisk){display:flex;align-items:center;gap:10px}.values-strip>.wrap>span:not(.asterisk):before{content:'✳';font-size:1.25rem;color:var(--orange-ink)}.section{padding-block:56px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{max-width:450px;margin:20px 0 0;font-size:.9375rem}.section-heading .eyebrow{font-size:.75rem}h2{font-size:2.75rem}.product-grid{gap:22px}.product-image{aspect-ratio:1}.product-category{top:12px;left:12px;font-size:.75rem;padding:6px 9px}.product-title{align-items:flex-start;margin-top:20px}.product-title h3{font-size:1.2rem}.product>p{font-size:.875rem}.product summary{font-size:.8125rem;align-items:center}.product-number{display:none}.about{padding-block:52px}.about-grid{grid-template-columns:1fr;gap:28px}.about h2{font-size:3.5rem}.about h2>br:nth-of-type(2){display:none}.about-signoff{margin-top:24px}.about-copy{max-width:none;padding:0}.about-copy .large-copy{font-size:1.5rem;max-width:450px}.about-bottom{margin-top:22px}.shipping{grid-template-columns:1fr;gap:30px}.shipping h2{font-size:2.5rem}.contact-card{padding:32px}.footer{padding-top:35px}.footer-top{flex-wrap:wrap;gap:20px;padding-bottom:28px}.footer-top .brand{font-size:1.5rem}.footer-top>p{display:none}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;column-gap:20px;row-gap:8px}.footer-bottom>span:last-child{display:none}}
@media(max-width:520px){h1{font-size:4.2rem}.hero .eyebrow{font-size:.75rem;letter-spacing:.04em}.product-grid{grid-template-columns:1fr;gap:36px}.product-image{aspect-ratio:1.18}.product-title h3{font-size:1.3125rem}.product-number{display:block}.product>p{font-size:.9375rem}.product summary{font-size:.875rem}.hero-visual figcaption span:first-child{max-width:210px}.image-label{font-size:.75rem}.round-label{height:90px;width:90px;bottom:16px}.round-label span{font-size:.75rem}.round-label svg{height:24px;width:24px}.concept-note{font-size:.75rem}.contact-card h3{font-size:2.25rem}.footer-top .brand{font-size:1.375rem}.footer-top .brand-mark{width:26px}.back-top{font-size:.75rem;gap:10px}.footer-bottom{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Print inspiration, maker details, and direct order inquiries. */
.model-section{margin-top:60px;padding-top:36px;border-top:1px solid var(--line)}
.model-section-header{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:26px}
.model-section-header h3{font-size:2rem;line-height:1.2;letter-spacing:-.04em;margin:0}
.model-section-header p{font-size:.9375rem;color:var(--muted);max-width:390px;margin:0}
.model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.model-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:6px;padding:25px;background:#f1f1eb;min-width:0}
.model-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.model-kind{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.model-index{font-size:.8125rem;color:var(--orange-ink)}
.model-card h4{font-family:'Manrope',Arial,sans-serif;font-size:1.25rem;line-height:1.35;letter-spacing:-.025em;margin:0 0 12px}
.model-card>p{font-size:.9375rem;color:var(--muted);margin-bottom:14px;line-height:1.65}
.model-card .model-credit{font-size:.8125rem;margin-bottom:18px}
.model-link{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:15px;border-top:1px solid #d5d5cc;font-size:.875rem;font-weight:600}
.model-link:hover{color:var(--orange-ink)}
.model-link span{font-size:1.25rem}
.model-note{font-size:.8125rem;color:var(--muted);margin:20px 0 0;line-height:1.7}
.model-note a,.model-credit a{text-decoration:underline;text-underline-offset:3px}
.printer-details{margin-top:26px;padding-top:23px;border-top:1px solid rgba(32,32,30,.3)}
.printer-details .eyebrow{font-size:.75rem;margin-bottom:10px}
.printer-details h3{font-size:1.375rem;letter-spacing:-.03em;margin-bottom:12px}
.printer-details>p:last-child{font-size:1rem;line-height:1.75;margin-bottom:0}
.contact-card{min-width:0}
.contact-method{display:grid;grid-template-columns:minmax(0,1fr) auto;border-bottom:1px solid #8098e5;padding:17px 0;gap:2px 14px}
.contact-method>span:first-child{font-size:.8125rem;color:#edf0ff}
.contact-method>strong{grid-column:1;font-size:1.125rem;font-weight:550;overflow-wrap:anywhere;line-height:1.6}
.contact-arrow{grid-column:2;grid-row:1/3;align-self:center;font-size:1.5rem}
.contact-method:hover strong,.text-link:hover{text-decoration:underline;text-underline-offset:4px}
.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:21px;font-size:.875rem}
.contact-card a:focus-visible{outline-color:white}
@media(max-width:800px){.model-section{margin-top:42px;padding-top:28px}.model-section-header{display:block}.model-section-header h3{font-size:1.75rem;margin-bottom:15px}.model-section-header p{max-width:none}.model-card{padding:21px}.shipping{gap:30px}.contact-card h3{font-size:2.25rem}.about-heading h2{font-size:3.4rem}}
@media(max-width:520px){.model-grid{grid-template-columns:1fr}.contact-method>strong{font-size:1rem}.contact-card{padding:28px}.contact-card h3{font-size:1.9375rem}}

[hidden]{display:none!important}
.model-request{font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:4px;align-self:flex-start;margin-top:14px;padding:5px 0}
.model-request:hover{color:var(--orange-ink)}
.quote-section{padding:86px 0;background:#eeeeE7;border-bottom:1px solid var(--line)}
.quote-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:75px;align-items:start}
.quote-intro{padding-top:14px;position:sticky;top:32px}
.quote-intro h2{font-size:clamp(2.5rem,3.7vw,3.4rem);margin-bottom:25px}
.quote-intro>p:not(.eyebrow){color:var(--muted);max-width:390px;line-height:1.75}
.quote-stock{margin-top:33px;padding:26px 0;border-top:1px solid #cacac0;border-bottom:1px solid #cacac0}
.quote-stock h3{font-size:1.25rem;letter-spacing:-.025em;margin-bottom:14px}
.quote-stock p{font-size:.9375rem;color:var(--muted);line-height:1.75}
.quote-stock p:last-child{margin-bottom:0}
.quote-stock strong{color:var(--ink);font-weight:600}
.quote-intro .quote-personal{font-size:.875rem;margin-top:24px}
.quote-surface{min-width:0;background:var(--paper);border:1px solid #d8d8cd;border-radius:8px;padding:34px}
.form-guidance{font-size:.875rem;color:var(--muted);line-height:1.7;margin-bottom:25px}
.form-field{display:flex;flex-direction:column;gap:8px;margin-bottom:21px;min-width:0}
.form-field label,.quote-surface legend{font-size:.9375rem;font-weight:600}
.form-field input{font:inherit;font-size:1rem;border:1px solid #b9b9af;background:#fff;color:var(--ink);border-radius:5px;padding:12px 13px;width:100%;min-width:0;line-height:1.5}
.form-field input:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.form-field input[aria-invalid=true]{border-color:#b22219}
.field-hint{font-size:.8125rem;color:var(--muted);line-height:1.5;margin:0}
.field-error{font-size:.8125rem;color:#ab2519;line-height:1.5;display:block}
.field-error:empty{display:none}
.form-row{display:grid;grid-template-columns:minmax(0,1fr) 115px;gap:18px}
.quote-surface fieldset{margin:0 0 22px;padding:0;border:0;min-width:0}
.quote-surface legend{margin-bottom:12px;padding:0}
.material-options{display:flex;flex-wrap:wrap;gap:10px}
.material-options label{display:flex;align-items:center;gap:9px;border:1px solid #c8c8be;padding:11px 13px;border-radius:5px;font-size:.9375rem;cursor:pointer}
.material-options label:has(input:checked){background:#eceffa;border-color:var(--blue)}
.quote-surface input[type=radio],.quote-surface input[type=checkbox]{accent-color:var(--blue);height:17px;width:17px;flex-shrink:0;margin:0}
.quote-surface input[type=radio]:focus-visible,.quote-surface input[type=checkbox]:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.color-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}
.color-option{display:flex;align-items:center;gap:9px;border:1px solid #c8c8be;border-radius:5px;min-height:64px;padding:11px 12px;cursor:pointer}
.color-option:has(input:checked){background:#eceffa;border-color:var(--blue)}
.swatch{width:20px;height:20px;border:1px solid #20201e30;border-radius:50%;flex-shrink:0}
.swatch-black{background:#232326}.swatch-purple{background:#7145a5}.swatch-jade-white{background:#f0f5e7}.swatch-gray{background:#8f969e}.swatch-green{background:#329355}.swatch-sunflower{background:#f7bd20}
.color-label{font-size:.875rem;font-weight:550;line-height:1.4;min-width:0}
.color-label small{display:block;color:#8b4913;font-size:.75rem;font-weight:400;margin-top:3px}
.carbon-note{background:#f2edf7;border-left:3px solid #7145a5;padding:18px;font-size:.9375rem;margin-bottom:22px}
.carbon-note>p{font-size:.875rem;color:#5f5269;margin:8px 0 0;line-height:1.65}
.zip-field{max-width:245px}
.form-honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.quote-privacy{font-size:.8125rem;color:var(--muted);line-height:1.7;margin:7px 0 22px}
.quote-submit{width:100%;border:0;font:inherit;font-weight:600;cursor:pointer;text-align:left}
.quote-submit:disabled{cursor:wait;opacity:.65;transform:none}
.form-alert{background:#fff0ed;color:#8e2118;border:1px solid #e3a699;border-radius:5px;padding:15px;font-size:.9375rem;margin-bottom:22px;line-height:1.6}
.quote-success{padding:20px 0}
.quote-success h3{font-size:2.5rem;line-height:1.15;letter-spacing:-.04em;margin-bottom:23px}
.quote-success>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.75}
.quote-success .quote-reference{font-family:monospace;font-size:1.25rem;color:var(--ink);border:1px solid var(--line);padding:14px;background:#eeeEE7}
.quote-success button{border:0;cursor:pointer;font:inherit;margin-top:12px}
.owner-inbox-link{text-decoration:underline;text-underline-offset:4px}
.inbox{max-width:1000px}.inbox h1{font-size:3.5rem;margin-bottom:22px}.inbox-intro{color:var(--muted);margin-bottom:35px}
.inbox-card,.inbox-empty{padding:28px;border:1px solid var(--line);border-radius:6px;background:#f1f1eb;margin-bottom:22px}
.inbox-card-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.inbox h2{font-size:1.5rem;letter-spacing:-.02em}.inbox time{font-size:.875rem;color:var(--muted)}
.inbox dl{display:grid;grid-template-columns:145px minmax(0,1fr);gap:10px 18px;margin:24px 0}
.inbox dt{font-weight:600;font-size:.9375rem}.inbox dd{margin:0;overflow-wrap:anywhere;font-size:.9375rem;white-space:pre-wrap}
.inbox dd a{text-decoration:underline;text-underline-offset:3px}.inbox-empty p{margin:15px 0 0}
@media(max-width:1100px){.quote-grid{gap:36px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.quote-surface{padding:26px}.quote-intro h2{font-size:2.75rem}}
@media(max-width:800px){.quote-section{padding:56px 0}.quote-grid{grid-template-columns:1fr;gap:24px}.quote-intro{position:static;padding:0}.quote-intro>p:not(.eyebrow){max-width:none}.quote-stock{margin-top:25px;padding:20px 0}.quote-intro .quote-personal{margin-bottom:0}.quote-intro h2 br{display:none}.quote-surface{padding:28px}.inbox h1{font-size:2.8rem}}
@media(max-width:520px){.quote-surface{padding:20px}.form-row{grid-template-columns:minmax(0,1fr) 86px;gap:12px}.color-option{padding:10px 9px;gap:7px}.swatch{width:16px;height:16px}.color-label{font-size:.875rem}.material-options label{font-size:.875rem}.quote-intro h2{font-size:2.5rem}.inbox-card{padding:20px}.inbox dl{grid-template-columns:1fr;gap:5px}.inbox dd{margin-bottom:12px}}
.workshop-hero .image-frame{background:#e8e5df}
.workshop-hero .image-frame>img{object-fit:contain;object-position:center}
.workshop-grid .product-image{aspect-ratio:4/5;background:#e8e5df}
.workshop-grid .product-image>img{object-fit:contain;object-position:center}
.workshop-grid .product:hover .product-image img{transform:none}
@media(max-width:800px){.workshop-hero .image-frame>img{height:auto;aspect-ratio:1281/1536}.workshop-hero .round-label{right:8px;bottom:20px}.workshop-grid .product-image{aspect-ratio:4/5}}
.workshop-grid .landscape-project .product-image{aspect-ratio:1/1}
.ordering-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:0;margin:36px 0;list-style:none}
.ordering-steps li{min-width:0;border-top:2px solid var(--orange);padding-top:20px}
.ordering-number{display:block;color:var(--blue);font-size:.875rem;font-weight:650;margin-bottom:18px}
.ordering-steps h3{font-size:1.25rem;line-height:1.4;letter-spacing:-.025em;margin-bottom:12px}
.ordering-steps p{font-size:1rem;line-height:1.7;color:var(--muted);margin-bottom:0}
.ordering-footer{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid var(--line);padding-top:28px}
.ordering-footer p{max-width:710px;margin:0;line-height:1.7;font-size:1rem;color:var(--muted)}
.ordering-footer strong{color:var(--ink)}
.ordering-footer p a{text-decoration:underline;text-underline-offset:3px}
.ordering-footer .button{flex-shrink:0}
@media(min-width:801px) and (max-width:1100px){nav{gap:18px}}
@media(max-width:1000px){.ordering-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}}
@media(max-width:800px){.ordering-footer{align-items:flex-start;flex-direction:column;gap:24px}}
@media(max-width:520px){.ordering-steps{grid-template-columns:1fr;gap:28px;margin-block:28px}.ordering-number{margin-bottom:12px}}
.payment-guide{margin-top:36px;padding:28px 30px;background:#eceffa;border-left:3px solid var(--blue);border-radius:4px}
.payment-guide h3{font-size:1.4rem;letter-spacing:-.025em;margin-bottom:14px}
.payment-guide p{max-width:850px;font-size:1rem;line-height:1.7}
.payment-instructions{white-space:pre-wrap;overflow-wrap:anywhere}
.payment-guide .payment-help{margin-bottom:0;font-size:.9375rem;color:var(--muted)}
.payment-guide a{text-decoration:underline;text-underline-offset:3px}
.inbox .inbox-intro{line-height:1.7;max-width:800px}
.alert-overview,.inbox-settings{border:1px solid var(--line);padding:22px;border-radius:6px;margin-bottom:22px;background:#f1f1eb}
.alert-overview p,.inbox-settings p{font-size:1rem;line-height:1.7;margin:10px 0 0}
.alert-overview summary,.inbox-settings>summary{cursor:pointer;font-weight:600}
.alert-overview a{text-decoration:underline}.alert-overview details{margin-top:12px}
.alert-overview code{overflow-wrap:anywhere}
.payment-settings-form{margin-top:18px}.payment-settings-form label,.quote-status-form label{display:block;font-size:.9375rem;font-weight:600;margin-bottom:8px}
.payment-settings-form textarea{display:block;width:100%;padding:12px;background:var(--paper);border:1px solid #9b9b92;border-radius:4px;font:inherit;line-height:1.6;resize:vertical;margin-bottom:15px}
.quote-status-form{padding-top:18px;border-top:1px solid var(--line)}
.status-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.status-controls select{padding:13px 35px 13px 12px;font:inherit;max-width:100%;background:var(--paper);border:1px solid #9b9b92;border-radius:4px;min-height:48px}
.inbox button.button{border:0;cursor:pointer;font:inherit;font-size:.9375rem}
.inbox button:disabled{opacity:.6;cursor:wait}
.inbox textarea:focus-visible,.inbox select:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.inbox .quote-filters{display:flex;position:static;flex-wrap:wrap;gap:8px;box-shadow:none;padding:0;border:0;background:none;margin:28px 0 18px;font-size:.9375rem}
.inbox .quote-filters a{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:4px;font-weight:500}
.inbox .quote-filters a:after{display:none}
.quote-filters a[aria-current=page]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.quote-filters a span{font-size:.875rem;opacity:.8}
.inbox-result-note{font-size:.9375rem;color:var(--muted)}.inbox-result-note a{text-decoration:underline}
.quote-status{font-size:.875rem;font-weight:600;padding:6px 10px;border-radius:4px;background:#e2e6f4;color:#213a87}
.status-new,.status-awaiting_payment{background:#f8e5c6;color:#744719}.status-paid,.status-mailed{background:#d9e9dc;color:#275035}.status-cancelled{background:#e5e5e0;color:#55554c}
.inbox-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:20px;font-size:.9375rem}
.inbox-actions a{text-decoration:underline;text-underline-offset:3px}
.alert-retry,.confirmation-retry{background:transparent;color:var(--ink);border:1px solid #a7a79e;padding:10px 12px;border-radius:4px;cursor:pointer;font-size:.9375rem}
.fulfillment-fields{display:grid;grid-template-columns:minmax(180px,1fr) 2fr;gap:12px 20px;align-items:center}.fulfillment-fields input,.fulfillment-fields select,.customer-link-box input{width:100%;font:inherit;padding:10px;border:1px solid #a7a79e;border-radius:4px;min-width:0;background:#fff;color:var(--ink)}.customer-link-box{margin:20px 0}.customer-link-box label{display:block;margin-bottom:8px}.customer-link-box input{margin-bottom:12px}.customer-link-box .button{font-size:.9375rem;padding:10px 16px}@media(max-width:620px){.fulfillment-fields{grid-template-columns:1fr;gap:8px}.fulfillment-fields input,.fulfillment-fields select{margin-bottom:12px}}
.manage-message{font-size:.9375rem;line-height:1.6;margin:12px 0 0;color:#275035}.manage-message:empty{display:none}.manage-message.is-error{color:#942d1a}
@media(max-width:520px){.payment-guide{padding:22px}.inbox-settings,.alert-overview{padding:18px}.status-controls>*{width:100%}.inbox .quote-filters{gap:7px}.inbox .quote-filters a{font-size:.875rem}.inbox-card-heading{gap:12px}}

.upload-field{padding:20px;background:#eef3f5;border:1px solid #bacbd3;border-radius:8px}.upload-field .field-hint{font-size:.875rem}.upload-field input[type=file]{background:#fff;font-size:.9375rem}.upload-field input::file-selector-button{font:inherit;border:0;border-radius:4px;background:var(--ink);color:#fff;padding:8px 12px;margin-right:12px;cursor:pointer}.file-selection{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:.875rem;overflow-wrap:anywhere}.file-selection button{font:inherit;color:var(--ink);background:transparent;border:0;text-decoration:underline;cursor:pointer}.file-selection button[hidden]{display:none}

.link-specs { border: 0; margin: 0; padding: 0; min-width: 0; }
.stl-part { border: 1px solid #c9cec9; border-radius: 12px; margin: 18px 0; padding: 18px; min-width: 0; }
.stl-part legend { font-size: 1rem; font-weight: 700; padding: 0 8px; overflow-wrap: anywhere; max-width: 100%; }
.stl-part .form-field { margin-bottom: 14px; }
.stl-part select, .stl-part textarea { width: 100%; font: inherit; padding: 12px; background: white; border: 1px solid #bcc3bd; border-radius: 7px; }
.stl-part .part-color-option { display: flex; align-items: center; gap: 8px; font-size: .9rem; min-height: 44px; }
.stl-part .part-color-option input { width: 18px; height: 18px; }
.remove-stl-part { font: inherit; border: 1px solid #919c94; border-radius: 6px; padding: 9px 12px; background: transparent; cursor: pointer; }

.link-specs > legend { font-size: 1rem; font-weight: 700; padding: 0; margin-bottom: 16px; }

.stock-notice { margin: 14px 0; padding: 12px 14px; background: #eef3f5; border-radius: 6px; font-size: .875rem; }
.stock-notice p { margin: 0 0 8px; }
.stock-notice button { background: none; border: 0; padding: 5px 0; text-decoration: underline; cursor: pointer; }
.stock-summary { list-style: none; padding: 0; margin: 12px 0; }
.stock-summary li { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--line); font-size: .9rem; }
.stock-summary strong { font-size: .875rem; }
.stock-limited { color: #925116; }.stock-unavailable { color: #a52d2a; }
.stock-choice-label { display: block; font-size: .8125rem; color: var(--muted); }
.part-color-option { flex-wrap: wrap; }.part-color-option .stock-choice-label { flex-basis: 100%; padding-left: 26px; }
.color-option { flex-wrap: wrap; }.color-option .stock-choice-label { flex-basis: 100%; }
.is-unavailable { border-style: dashed; }.is-unavailable .stock-choice-label { color: #a52d2a; }
.stl-preview-toggle, .stl-preview-controls button { font: inherit; font-size: .875rem; border: 1px solid #939da8; border-radius: 6px; padding: 9px 12px; background: #fff; cursor: pointer; min-height: 44px; }
.stl-preview-toggle { margin: 4px 0 14px; }
.stl-preview { margin: 0 0 18px; padding: 12px; border: 1px solid #c7cfd8; border-radius: 8px; }
.stl-preview-stage { height: 300px; width: 100%; min-width: 0; border-radius: 6px; overflow: hidden; }
.stl-preview-stage canvas { display: block; width: 100%; height: 100%; touch-action: none; cursor: grab; }
.stl-preview-stage canvas:focus-visible { outline: 3px solid var(--blue); outline-offset: -4px; }
.stl-preview-controls { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 12px; }
@media (max-width: 600px) { .stl-preview { padding: 8px; }.stl-preview-stage { height: 250px; } }
