@charset "UTF-8";
:root{--paper:#fff7ee;--ink:#191916;--orange:#ff4b1f;--yellow:#ffdb42;--line:2px solid var(--ink);--shadow:5px 5px 0 var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:900;line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(48px,6.7vw,88px)}h2,.h2{font-size:clamp(32px,4vw,52px)}h3{font-size:22px}p+p{margin-top:16px}.shell{width:min(1160px,calc(100% - 64px));margin-inline:auto}.section{padding-block:82px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px}.lead{font-size:18px;line-height:1.65;max-width:680px}.muted{color:#5a5650}.pill{display:inline-block;border:var(--line);border-radius:50px;padding:5px 13px;font-size:11px;font-weight:800;line-height:1.4;background:white}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:14px 22px;border:var(--line);border-radius:40px;background:var(--orange);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;text-decoration:none;box-shadow:3px 3px 0 var(--ink);cursor:pointer}.button.secondary{background:var(--paper)}.button:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #005fcc;outline-offset:5px}.site-header{border-bottom:var(--line);position:sticky;top:0;z-index:20;background:var(--paper)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-size:23px;font-weight:900;letter-spacing:-1px;text-decoration:none;white-space:nowrap}.brand span{color:var(--orange)}.nav{display:flex;align-items:center;gap:25px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.nav>a{text-decoration:none;padding-block:8px}.nav>a[aria-current=page]{border-bottom:2px solid var(--orange)}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-block:70px 80px}.hero h1 em{font-style:normal;color:var(--orange)}.hero .lead{font-size:16px;margin-top:24px;max-width:480px}.hero .pill{background:var(--yellow);transform:rotate(-3deg);margin-bottom:26px;box-shadow:3px 3px 0 var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px}.hero-visual{position:relative}.hero-visual>img{height:465px;object-fit:contain;background:white;border:var(--line);border-radius:18px;box-shadow:var(--shadow);transform:rotate(2deg)}.hero-badge{position:absolute;right:-8px;bottom:25px;background:var(--yellow);border:var(--line);border-radius:50%;width:112px;height:112px;display:grid;align-content:center;text-align:center;font-weight:900;font-size:19px;line-height:1.1;transform:rotate(9deg)}.ticker{background:var(--ink);color:var(--paper);padding:17px 0;font-size:12px;font-weight:800;letter-spacing:.06em;overflow:hidden}.ticker-inner{display:flex;justify-content:space-between;gap:30px;white-space:nowrap}.ticker b{color:var(--orange)}.section-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:32px}.section-title>p{max-width:410px;font-size:15px}.hard-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.hard-card{border:var(--line);background:white;padding:23px 17px 26px;border-radius:12px;box-shadow:3px 3px 0 var(--ink)}.hard-card .number{font-size:28px;color:var(--orange);margin-bottom:22px}.hard-card h3{font-size:16px;letter-spacing:-.02em;line-height:1.1;margin-bottom:12px}.hard-card p{font-size:12px;color:#5a5650;line-height:1.6}.border-section{border-top:var(--line)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.product-card{display:block;width:100%;padding:0;border:var(--line);border-radius:12px;background:white;color:var(--ink);box-shadow:4px 4px 0 var(--ink);overflow:hidden;text-align:left;cursor:pointer}.product-card:hover img{transform:scale(1.03)}.product-card img{aspect-ratio:1.08;object-fit:contain;transition:transform .2s}.product-caption{padding:17px;display:flex;align-items:end;justify-content:space-between;gap:8px}.product-caption h3{font-size:17px;line-height:1.15;margin-bottom:7px}.product-caption small{font-size:10px;font-weight:800}.case-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.case-feature img{height:450px;object-fit:contain;background:white;border:var(--line);border-radius:14px;box-shadow:var(--shadow)}.case-feature h2{margin-top:18px;margin-bottom:22px}.case-feature p{font-size:17px}.factory-home{background:#f7e8d7;border-block:var(--line)}.factory-intro{display:grid;grid-template-columns:1fr 1fr;gap:66px;align-items:center}.factory-intro h2{margin-bottom:25px}.factory-intro .lead{font-size:16px}.photo-card{margin:0;overflow:hidden;border:var(--line);border-radius:12px;background:white;box-shadow:var(--shadow)}.photo-card img{object-fit:cover;aspect-ratio:1.43}.photo-card figcaption{padding:14px 17px;font-size:12px;font-weight:700}.photo-card .photo-meta{font-weight:400;color:#605b54;margin-top:3px;font-size:11px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:40px;padding-top:28px;border-top:var(--line)}.stat{padding:0 25px;border-right:1px solid var(--ink)}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{font-size:clamp(25px,3vw,37px);font-weight:900;letter-spacing:-.04em;line-height:1.2;display:block}.stat span,.stat small{display:block;margin-top:5px;font-size:12px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:32px}.step{padding-top:20px;border-top:var(--line)}.step .number,.step-number{color:var(--orange);font-size:27px;display:block;margin-bottom:16px}.step h3{font-size:18px;line-height:1.15;margin-bottom:12px}.step p{font-size:13px;color:#514e49}.cta{background:var(--orange);border-top:var(--line);padding:58px 0}.cta .shell{display:flex;align-items:center;justify-content:space-between;gap:45px}.cta h2{font-size:clamp(32px,4vw,54px);max-width:650px}.cta p{margin-top:15px;max-width:650px}.cta .button{white-space:nowrap}.site-footer{border-top:var(--line);padding-block:36px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.site-footer p{font-size:12px}.page-hero{padding-top:40px}.breadcrumb{font-size:11px;text-transform:uppercase;margin-bottom:42px;display:flex;gap:10px;flex-wrap:wrap}.breadcrumb a{text-decoration:none}.page-hero h1{max-width:880px}.page-hero .lead{margin-top:24px}.page-photo{margin-top:36px}.page-photo img{aspect-ratio:2.15}.quality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.quality-item{border:var(--line);padding:26px;border-radius:12px;background:white;box-shadow:3px 3px 0 var(--ink)}.quality-item h3{margin-bottom:16px}.quality-item p{font-size:14px}.timing-note{font-size:13px;margin-top:30px;max-width:900px}.preview-note{padding:9px 20px;background:var(--yellow);text-align:center;font-size:12px;border-bottom:var(--line)}dialog{width:min(760px,calc(100% - 32px));max-height:90vh;border:var(--line);border-radius:14px;background:var(--paper);padding:28px;box-shadow:8px 8px 0 var(--ink)}dialog::backdrop{background:rgba(0,0,0,.65)}.dialog-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.close-dialog{border:var(--line);border-radius:50%;background:white;width:38px;height:38px;cursor:pointer;flex-shrink:0}.dialog-content{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:24px}.dialog-content img{border:var(--line);border-radius:10px;background:white;aspect-ratio:1;object-fit:contain}.dialog-content h3{margin-bottom:18px}.dialog-content p{font-size:14px}body:has(dialog[open]){overflow:hidden}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:980px){.nav{gap:17px}.hero{gap:35px}.hero-visual>img{height:390px}.hard-grid{grid-template-columns:repeat(3,1fr)}.factory-intro,.case-feature{gap:35px}.steps{grid-template-columns:repeat(3,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.shell{width:calc(100% - 40px)}.section{padding-block:54px}.header-inner{height:68px}.brand{font-size:21px}.site-header .nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;border:var(--line);border-radius:30px;font-size:12px;font-weight:800;padding:6px 14px;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:46px;width:210px;background:var(--paper);border:var(--line);border-radius:10px;box-shadow:var(--shadow);padding:14px}.mobile-menu nav a{display:block;padding:10px;font-weight:700;font-size:13px;text-decoration:none}.hero{grid-template-columns:1fr;gap:42px;padding-block:42px 54px}.hero h1{font-size:52px}.hero .lead{margin-top:20px}.hero .pill{margin-bottom:22px;font-size:10px}.hero-visual{padding-inline:7px}.hero-visual>img{height:340px}.hero-badge{right:0;width:92px;height:92px;font-size:17px}.actions{gap:12px}.button{padding:13px 18px;font-size:11px}.ticker-inner{justify-content:start}.section-title{display:block}.section-title>p{margin-top:17px}.hard-grid{grid-template-columns:repeat(2,1fr);gap:14px}.hard-card:last-child{grid-column:span 2}.hard-card .number{margin-bottom:13px}.hard-card{padding:18px}.product-grid{gap:15px}.product-caption{padding:13px}.product-caption h3{font-size:15px}.product-caption small{font-size:9px}.case-feature,.factory-intro{grid-template-columns:1fr;gap:30px}.case-feature img{height:340px}.factory-intro .photo-card{order:2}.factory-intro .factory-copy{order:1}.stat-grid{grid-template-columns:1fr 1fr;row-gap:25px;margin-top:30px}.stat{padding-inline:18px}.stat:nth-child(3){padding-left:0}.stat:nth-child(2){border:0}.stat strong{font-size:30px}.photo-grid,.quality-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr;gap:24px}.steps .step:last-child{grid-column:span 2}.cta .shell,.footer-inner{display:block}.cta .button{margin-top:28px}.site-footer p{margin-top:15px}.page-hero{padding-top:30px}.breadcrumb{margin-bottom:28px}.page-hero h1{font-size:47px}.page-photo img{aspect-ratio:1.25}.dialog-content{grid-template-columns:1fr}.dialog-content img{max-height:250px}.dialog-top h2{font-size:30px}}
[hidden]{display:none!important}
.hero>div{min-width:0}.hero .hero-title{font-size:clamp(44px,4.8vw,64px);line-height:1.04;letter-spacing:-.045em;overflow-wrap:normal}.hero-title>span{display:block;color:var(--orange)}.hero .actions .button{max-width:100%;text-align:center}.contact-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;margin-top:22px}.contact-links>a{min-width:0;font-size:14px;line-height:1.5;overflow-wrap:anywhere;text-decoration-thickness:1px}.contact-links>a>span{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;margin-bottom:5px}.footer-contact{margin-top:27px;padding-top:22px;border-top:1px solid #cbbfaf}.footer-contact .contact-links{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:0}.footer-contact .contact-links>a{font-size:13px}.factory-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:32px}.factory-strip img{aspect-ratio:1.7;object-position:50% 40%}.factory-strip figcaption{font-size:10px;letter-spacing:.04em}.factory-photo-grid .printing-photo img{object-position:50% 40%}
@media(max-width:900px){.site-header .nav{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;border:var(--line);border-radius:30px;font-size:12px;font-weight:800;padding:6px 14px;cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:46px;width:230px;background:var(--paper);border:var(--line);border-radius:10px;box-shadow:var(--shadow);padding:14px}.mobile-menu nav a{display:block;padding:10px;font-weight:700;font-size:13px;text-decoration:none}.footer-contact .contact-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
.product-card{text-decoration:none}.product-caption{align-items:center;flex-wrap:wrap}.product-caption small{text-transform:uppercase;font-size:9px}.difficulty{color:var(--orange);white-space:nowrap;font-size:13px;letter-spacing:2px}.difficulty .unfilled{color:#c9c0b6}.difficulty.pending{font-size:10px;letter-spacing:0;color:#6b645c;font-weight:400;white-space:normal;line-height:1.4}.family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.family-card{background:white;border:var(--line);box-shadow:var(--shadow);border-radius:12px;overflow:hidden;text-decoration:none}.family-card>img{height:210px;object-fit:contain}.family-card>div{padding:20px;position:relative;border-top:var(--line)}.family-card .number{font-size:12px;color:var(--orange);font-weight:800}.family-card h3{font-size:21px;line-height:1.15;margin:9px 0}.family-card small{font-size:11px}.entry-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.entry-card{border:var(--line);border-radius:12px;box-shadow:var(--shadow);background:white;overflow:hidden}.entry-card>a{text-decoration:none;display:block}.entry-card img{height:300px;object-fit:contain;background:white}.entry-copy{padding:25px}.entry-copy h3{font-size:29px;line-height:1.07;margin-bottom:14px}.entry-copy p:not(.eyebrow){font-size:14px;line-height:1.6;margin-bottom:20px}.entry-copy .eyebrow{font-size:10px}.text-link{display:inline-block;font-size:12px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:3px}.single-entry{grid-template-columns:1fr}.single-entry .entry-card>a{display:grid;grid-template-columns:1.1fr 1fr;align-items:center}.single-entry .entry-card img{height:390px}.single-entry .entry-copy{padding:45px}.single-entry .entry-copy h3{font-size:40px}.footer-links{display:flex;flex-wrap:wrap;gap:16px;font-size:12px}.page-heading{padding-block:35px 28px}.page-heading .breadcrumb{margin-bottom:40px}.page-heading h1{max-width:1050px;font-size:clamp(44px,6vw,78px)}.page-heading h1 em{color:var(--orange);font-style:normal}.page-heading .lead{margin-top:24px}.catalog-section{padding-top:24px}.catalog-tools{display:flex;gap:30px;align-items:start;justify-content:space-between}.filter-chips{display:flex;flex-wrap:wrap;gap:10px;max-width:900px}.filter-chip{background:white;border:var(--line);border-radius:40px;cursor:pointer;padding:9px 14px;font-size:11px;font-weight:800;line-height:1.3}.filter-chip.active{background:var(--ink);color:var(--paper)}.filter-chip span{opacity:.65;margin-left:5px}.catalog-search{display:block;font-size:11px;min-width:200px;font-weight:800}.catalog-search input{display:block;width:100%;border:var(--line);border-radius:25px;background:white;padding:9px 14px;margin-top:7px;font-size:13px}.result-count{font-size:12px;color:#665d53;margin:25px 0 18px}.empty-filter{padding:35px 0}.new-slot{border:2px dashed #b8ac9f;border-radius:12px;margin-top:28px;padding:32px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:900}.detail-tags{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:0 0 24px}.gallery{display:grid;grid-template-columns:2fr 1fr;gap:20px}.gallery-main,.gallery-thumb{border:var(--line);padding:0;border-radius:14px;background:white;overflow:hidden;cursor:zoom-in}.gallery-main{grid-row:span 2;position:relative;box-shadow:var(--shadow)}.gallery-main img{height:540px;object-fit:contain}.gallery-main span{position:absolute;bottom:15px;left:18px;font-size:11px;color:#6b645c;background:#ffffffd9;padding:4px 8px;border-radius:20px}.gallery-thumb img{height:260px;object-fit:contain}.gallery.one-photo{display:block}.gallery.one-photo .gallery-main{width:100%}.detail-two-column{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:start}.detail-two-column h2{margin-bottom:25px}.prose{font-size:17px;line-height:1.8;overflow-wrap:anywhere}.prose h2{font-size:35px;margin:35px 0 18px}.prose h3{font-size:26px;margin:28px 0 15px}.prose p+p{margin-top:20px}.prose ul,.prose ol{padding-left:25px}.prose img{max-height:600px;object-fit:contain;background:white;border:var(--line);border-radius:12px;margin:25px 0}.prose blockquote{border-left:5px solid var(--orange);margin:25px 0;padding:10px 25px;font-size:24px;font-weight:700;line-height:1.4}.pending-copy{font-size:15px;color:#71675c;font-style:italic}.specs{border-collapse:collapse;width:100%;font-size:13px;border-top:var(--line)}.specs th,.specs td{text-align:left;padding:14px 12px;border-bottom:1px solid #cbbfaf;overflow-wrap:anywhere}.specs th{width:36%;font-weight:800}.specs td{color:#625a51}.small-note{font-size:12px;line-height:1.6;color:#6b6258;margin-top:20px}.subheading{margin-top:40px!important;font-size:24px!important}.detail-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px}.detail-photos img{border:var(--line);border-radius:10px;object-fit:contain;background:white}.faqs{margin-top:30px;display:grid;gap:14px;max-width:900px}.faqs details{border:var(--line);background:white;border-radius:10px;box-shadow:3px 3px 0 var(--ink)}.faqs summary{font-weight:800;padding:22px 25px;cursor:pointer;line-height:1.45}.faqs details>div{padding:0 25px 25px;color:#60574e;font-size:15px;line-height:1.8}.case-gallery{display:grid;grid-template-columns:1.6fr 1fr;gap:25px}.case-gallery button{padding:0;cursor:zoom-in}.case-gallery img{height:450px;object-fit:contain}.stories-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin-top:35px}.featured-story{grid-column:span 2}.featured-story .entry-card>a{display:grid;grid-template-columns:1.25fr 1fr;align-items:center}.featured-story .entry-card img{height:400px}.article-cover img{max-height:650px;object-fit:contain;border:var(--line);border-radius:14px;background:white;box-shadow:var(--shadow)}.article-prose{width:min(760px,calc(100% - 40px));margin:auto}.experience-box{background:var(--yellow);border:var(--line);box-shadow:4px 4px 0 var(--ink);border-radius:10px;margin-top:35px;padding:30px}.experience-box p{font-size:17px;line-height:1.6}.empty-state{padding:65px 0;max-width:680px}.empty-state p{margin-top:25px}.empty-state .button{margin-top:25px}.factory-main-photo img{aspect-ratio:2.1}.factory-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.timing-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:45px}.timing-cards article{border:var(--line);background:white;border-radius:12px;padding:25px;box-shadow:3px 3px 0 var(--ink)}.timing-cards h3{font-size:24px;color:var(--orange);margin-bottom:17px}.timing-cards p{font-size:13px}.quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.upload-zone{min-height:390px;border:2px dashed var(--ink);border-radius:14px;padding:45px 35px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:20px;background:white;cursor:pointer}.upload-zone strong{font-size:36px;line-height:1.1;font-weight:900;letter-spacing:-.04em}.upload-zone>span:not(.button):not(.eyebrow){font-size:13px}.upload-zone.drag-over{background:#ffe3bd}.upload-zone .small-note{margin:0}.file-input{display:block;margin-top:15px;max-width:100%;font-size:12px}.quote-help{border:var(--line);border-radius:10px;margin-top:28px;padding:25px;background:var(--yellow);box-shadow:3px 3px 0 var(--ink)}.quote-help h3{font-size:23px;margin-bottom:15px}.quote-help p{font-size:14px}.quote-fields{border:var(--line);border-radius:14px;padding:30px;background:white;box-shadow:var(--shadow);display:grid;gap:19px}.quote-fields label{display:block;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.025em}.quote-fields label span{color:var(--orange)}.quote-fields input,.quote-fields select,.quote-fields textarea{display:block;width:100%;border:var(--line);border-radius:6px;background:var(--paper);padding:12px;font-size:14px;margin-top:8px;box-sizing:border-box}.quote-fields textarea{min-height:95px;resize:vertical}.quote-fields input:focus,.quote-fields select:focus,.quote-fields textarea:focus{outline:2px solid var(--orange);outline-offset:2px}.quote-fields .small-note{margin:0;text-transform:none;font-weight:400}.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form-feedback{font-size:14px;line-height:1.7}.form-feedback.success{border:2px solid #31714b;border-radius:8px;padding:18px;background:#effaf1}.form-feedback.error{border:2px solid #a7251d;border-radius:8px;padding:18px;background:#fff0ec}.file-row{font-size:12px;margin-top:12px;padding:12px;border:1px solid #b3a99c;border-radius:7px;overflow-wrap:anywhere}.contact-block{border-top:var(--line);margin-top:45px;padding-top:30px}.contact-block h3{margin-bottom:18px}.contact-block p,.contact-block a{font-size:14px}.draft-banner{background:#171715;color:var(--paper);padding:13px 25px;text-align:center;font-size:12px}.draft-banner a{margin-left:20px}.button:disabled{opacity:.55;cursor:wait;transform:none}.gallery button:focus-visible,.case-gallery button:focus-visible{outline:3px solid #005fcc;outline-offset:5px}#image-dialog{padding:15px;background:white;width:min(950px,calc(100% - 32px));max-height:94vh}#image-dialog .close-dialog{position:sticky;top:0;float:right;background:var(--paper);z-index:1}#lightbox-image{height:auto;max-height:82vh;object-fit:contain;clear:both}.preview-note a{font-weight:800;text-decoration:underline;margin-left:15px}.quality-item p{margin-top:16px}.gallery-main img,.gallery-thumb img{width:100%}.prose:empty{display:none}
@media(max-width:1000px){.site-header .nav{gap:15px;font-size:10px}.site-header .nav .button{padding:12px 15px;font-size:10px}.catalog-tools{display:block}.catalog-search{margin-top:25px;max-width:350px}.detail-two-column,.quote-layout{gap:35px}.family-grid{grid-template-columns:repeat(2,1fr)}.detail-two-column{grid-template-columns:1fr 1fr}.gallery-main img{height:450px}.gallery-thumb img{height:215px}}
@media(max-width:700px){.page-heading{padding-top:28px}.page-heading .breadcrumb{margin-bottom:30px}.page-heading h1{font-size:43px;line-height:1.02;overflow-wrap:anywhere}.page-heading .lead{font-size:16px;margin-top:21px}.family-grid{gap:17px}.family-card>img{height:145px}.family-card>div{padding:15px}.family-card h3{font-size:16px}.family-card small{font-size:10px}.entry-grid,.stories-grid{grid-template-columns:1fr}.single-entry .entry-card>a,.featured-story .entry-card>a{display:block}.single-entry .entry-card img,.featured-story .entry-card img{height:290px}.single-entry .entry-copy{padding:25px}.single-entry .entry-copy h3{font-size:31px}.entry-copy h3{font-size:27px}.featured-story{grid-column:auto}.filter-chip{font-size:10px;padding:8px 11px}.filter-chips{gap:8px}.catalog-search{max-width:none}.new-slot{display:block;padding:25px}.new-slot span{display:block;margin-bottom:20px;font-size:19px}.gallery{grid-template-columns:1fr 1fr;gap:14px}.gallery-main{grid-column:span 2;grid-row:auto}.gallery-main img{height:350px}.gallery-thumb img{height:165px}.detail-two-column,.quote-layout{grid-template-columns:1fr;gap:40px}.detail-two-column h2{font-size:34px}.case-gallery{grid-template-columns:1fr;gap:20px}.case-gallery img{height:330px}.factory-main-photo img{aspect-ratio:1.25}.factory-photo-grid{grid-template-columns:1fr;gap:24px}.timing-cards{grid-template-columns:1fr;gap:20px}.upload-zone{min-height:320px;padding:30px 20px}.upload-zone strong{font-size:32px}.quote-fields{padding:24px}.quote-layout{gap:30px}.footer-links{margin-top:20px}.detail-tags{gap:10px}.detail-tags .difficulty{font-size:11px}.product-caption{padding:13px;gap:10px}.product-caption h3{font-size:16px}.product-caption .difficulty{font-size:11px}.product-caption .difficulty.pending{font-size:9px}.prose{font-size:16px}.faqs summary{padding:18px;font-size:15px}.faqs details>div{padding:0 18px 18px}.experience-box{padding:23px}.quality-grid{gap:20px}.preview-note{font-size:10px}.page-heading .eyebrow{font-size:10px}.article-cover img{max-height:450px}.draft-banner{font-size:10px}.draft-banner a{margin-left:8px}}


.factory-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){.hero .hero-title{font-size:clamp(38px,11.3vw,52px)}.factory-strip,.factory-photo-grid{grid-template-columns:1fr;gap:22px}.factory-strip img{aspect-ratio:1.8}.footer-contact .contact-links{column-gap:18px}.contact-links>a{font-size:13px}}

/* Shared alignment: retain the existing palette, heavy type and outlined cards. */
.section{padding-block:72px}
.section-title{gap:32px;margin-bottom:28px}
.section-title>p{line-height:1.65}
.section-title h2{text-wrap:balance}
.header-inner{height:76px}
.site-header .nav{gap:22px}
.site-header .nav .button{min-height:44px;padding:11px 20px}
.hero{gap:56px;align-items:start;padding-block:64px}
.hero .pill{transform:none;margin-bottom:24px}
.hero .hero-title{max-width:100%;font-size:clamp(38px,4.25vw,54px);line-height:1.08;letter-spacing:-.035em;text-wrap:balance}
.hero .lead{max-width:480px;margin-top:22px}
.hero .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;max-width:480px;margin-top:28px}
.hero .actions .button{width:100%;min-height:50px;padding:13px 14px;line-height:1.35}
.hero-visual>img{height:420px;transform:none;border-radius:14px}
.hero-badge{display:block;right:18px;bottom:18px;width:96px;height:96px;padding:29px 4px;font-size:14px;line-height:1.2;transform:none}
.hard-grid{gap:20px}
.hard-card{min-width:0;padding:24px 18px}
.hard-card .number{margin-bottom:20px}
.hard-card h3{min-height:2.2em;line-height:1.1}
.step h3{min-height:2.3em;line-height:1.15}
.product-grid{gap:24px;align-items:stretch}
.product-card{display:flex;flex-direction:column;height:100%}
.product-card>img{flex:none}
.product-caption{display:flex;flex:1;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px;min-height:142px;padding:18px}
.product-caption>div{width:100%;flex:1}
.product-caption h3{min-height:2.3em;line-height:1.15;margin-bottom:8px}
.product-caption small{display:block;min-height:2.8em;line-height:1.4}
.product-caption .difficulty{margin-top:auto;line-height:1.4}
.family-card{display:flex;flex-direction:column}
.family-card>div{flex:1;display:flex;flex-direction:column;align-items:flex-start;padding:22px}
.family-card h3{min-height:2.3em}
.family-card small{margin-top:auto}
.entry-card{height:100%}
.entry-card>a{display:flex;flex-direction:column;height:100%}
.entry-card img{flex-shrink:0}
.entry-copy{display:flex;flex:1;flex-direction:column;align-items:flex-start;height:auto;padding:28px}
.entry-copy .text-link{margin-top:auto}
.single-entry .entry-card>a{grid-template-columns:1.1fr 1fr;align-items:stretch}
.single-entry .entry-card img{height:360px}
.single-entry .entry-copy{padding:40px;justify-content:center}
.single-entry .entry-copy h3{font-size:clamp(28px,3.2vw,38px);line-height:1.08}
.single-entry .entry-copy .text-link{margin-top:0}
.factory-intro{gap:48px}
.stat{min-width:0}
.factory-strip{gap:24px}
.factory-strip .photo-card,.factory-photo-grid .photo-card{display:flex;flex-direction:column;height:100%}
.factory-strip img,.factory-photo-grid img{aspect-ratio:3/2;object-fit:cover}
.photo-card figcaption{display:flex;align-items:center;min-height:48px;line-height:1.4}
.page-heading+.section{padding-top:32px}
.cta .shell{align-items:center}
.footer-inner{align-items:center}
.footer-contact .contact-links{column-gap:24px}
@media(max-width:1000px){
  .site-header .nav{gap:15px}
  .site-header .nav .button{padding-inline:15px}
  .hero{gap:36px}
  .hero .actions{grid-template-columns:1fr;max-width:340px}
}
@media(max-width:900px){
  .hero{grid-template-columns:1fr;gap:36px;padding-block:44px 52px}
  .hero .hero-title{max-width:640px;font-size:clamp(38px,6.3vw,52px)}
  .hero .lead{max-width:560px}
  .hero .actions{grid-template-columns:repeat(2,minmax(0,1fr));max-width:500px}
  .hero-visual>img{height:400px}
  .mobile-menu summary{min-height:44px;padding:10px 16px;line-height:20px}
  .mobile-menu nav{top:calc(100% + 12px)}
  .mobile-menu nav a{display:flex;align-items:center;min-height:44px;line-height:1.45}
}
@media(max-width:700px){
  .section{padding-block:48px}
  .header-inner{height:72px;gap:16px}
  .hero{gap:30px;padding-block:32px 44px}
  .hero .pill{max-width:100%;margin-bottom:20px;padding:6px 11px;font-size:9px;line-height:1.4}
  .hero .hero-title{max-width:100%;font-size:clamp(26px,8.1vw,38px);line-height:1.1;letter-spacing:-.035em}
  .hero .lead{font-size:15px;line-height:1.7;margin-top:20px}
  .hero .actions{grid-template-columns:1fr;max-width:none;gap:12px;margin-top:24px}
  .hero .actions .button{min-height:48px;font-size:11px}
  .hero-visual{padding-inline:0}
  .hero-visual>img{height:auto;aspect-ratio:1.06}
  .hero-badge{width:88px;height:88px;padding:26px 3px;font-size:13px;right:14px;bottom:14px}
  .section-title{margin-bottom:24px}
  .hard-grid{gap:16px}
  .hard-card{padding:20px 16px}
  .hard-card h3{font-size:14px}
  .hard-card .number{margin-bottom:16px}
  .product-grid{gap:16px}
  .product-caption{min-height:138px;padding:14px;gap:10px}
  .product-caption h3{font-size:15px;min-height:2.3em}
  .product-caption small{font-size:9px}
  .family-card>div{padding:16px}
  .family-card h3{font-size:16px;min-height:2.3em}
  .single-entry .entry-card>a{display:block}
  .single-entry .entry-card img{height:280px}
  .entry-copy,.single-entry .entry-copy{height:auto;padding:24px}
  .single-entry .entry-copy h3{font-size:29px}
  .factory-intro{gap:28px}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
  .stat{padding:0;border:0}
  .stat strong{font-size:clamp(22px,6.6vw,30px)}
  .factory-strip,.factory-photo-grid{gap:20px}
  .page-heading+.section{padding-top:24px}
  .footer-contact .contact-links{row-gap:22px;column-gap:16px}
}
@media(max-width:380px){
  .hard-grid{grid-template-columns:1fr}
  .hard-card:last-child{grid-column:auto}
  .hard-card h3{min-height:0}
}

/* Factory page: grouped company photographs using the existing outlined cards. */
.factory-page .factory-photo-card{display:flex;flex-direction:column;min-width:0;height:100%}
.factory-page .factory-photo-button{display:block;width:100%;padding:0;border:0;border-radius:0;background:#f3efe8;line-height:0;text-align:inherit;cursor:zoom-in}
.factory-page .factory-photo-button:focus-visible{outline:3px solid #005fcc;outline-offset:-5px}
.factory-page .factory-photo-card img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.factory-page .factory-photo-card figcaption{flex:1;min-height:60px;font-size:12px;line-height:1.5}
.factory-page .factory-main-photo img{aspect-ratio:2.1}
.factory-page .factory-main-photo figcaption{min-height:48px}
.factory-page .factory-gallery-group+.factory-gallery-group{margin-top:56px}
.factory-page .factory-group-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:32px;margin-bottom:24px}
.factory-page .factory-group-heading h3{max-width:500px;font-size:clamp(24px,2.6vw,32px);line-height:1.1;text-transform:uppercase}
.factory-page .factory-group-heading p{max-width:520px;font-size:14px;line-height:1.7}
.factory-page .factory-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.factory-page .factory-photo-portrait img{aspect-ratio:3/4}
.factory-page .factory-photo-press img{object-position:50% 35%}
.factory-page .factory-photo-montage img{object-fit:contain}
.factory-page .factory-body-copy{margin-top:48px}
@media(max-width:1000px){
  .factory-page .factory-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .factory-page .factory-gallery-group[data-factory-group="printing-line"] .factory-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:699px){
  .factory-page .factory-main-photo img{aspect-ratio:1.25}
  .factory-page .factory-gallery-grid,.factory-page .factory-gallery-group[data-factory-group="printing-line"] .factory-gallery-grid{grid-template-columns:1fr;gap:22px}
  .factory-page .factory-gallery-group+.factory-gallery-group{margin-top:40px}
  .factory-page .factory-group-heading{display:block;margin-bottom:20px}
  .factory-page .factory-group-heading p{margin-top:12px}
  .factory-page .factory-photo-card figcaption{min-height:48px}
  .factory-page .factory-body-copy{margin-top:36px}
}
