section.catalog-hero{background:linear-gradient(115deg,#292827,#3f3d3b);color:#fff;padding:5rem 0}.catalog-hero-inner{display:grid;grid-template-columns:1.3fr .7fr;gap:3rem;align-items:center}.catalog-eyebrow,.catalog-kicker{display:block;color:#d9b46c;font-weight:800;font-size:.9rem}.catalog-hero h1{color:#fff;font-size:clamp(2.3rem,4vw,4rem);line-height:1.18;margin:.7rem 0 1.2rem}.catalog-hero p{color:#f2efea;font-size:1.1rem;line-height:1.9;max-width:650px}.catalog-primary-link{display:inline-flex;align-items:center;gap:.65rem;background:#fff;color:#373634;text-decoration:none;font-weight:800;padding:.9rem 1.35rem;border-radius:10px;margin-top:1rem}.catalog-primary-link:hover,.catalog-primary-link:focus-visible{background:#d9b46c;color:#292827}.catalog-hero-visual{position:relative;background:#f1eee9;border-radius:26px;padding:2rem;box-shadow:0 20px 45px #08243766}.catalog-hero-visual img{display:block;max-width:100%;height:260px;object-fit:contain;margin:auto}.catalog-hero-visual span{position:absolute;bottom:-18px;inset-inline-start:18px;background:#d9b46c;color:#292827;padding:.6rem .9rem;border-radius:8px;font-weight:900}.catalog-company{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:2rem;padding-top:3rem;padding-bottom:3rem}.catalog-company h2,.catalog-section-head h2{font-weight:900;color:#292827;margin:.3rem 0 1rem}.catalog-company p,.catalog-section-head p{line-height:1.85;color:#585653}.catalog-company-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.catalog-company-facts div{border:1px solid #e6e4e0;border-radius:12px;padding:1rem;text-align:center}.catalog-company-facts strong{display:block;color:#464442;font-size:1.65rem}.catalog-company-facts span{display:block;font-size:.8rem;color:#5a5855}.catalog-main{padding-bottom:5rem}.catalog-section-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.7rem}.catalog-section-head p{max-width:480px}.catalog-filters{display:flex;gap:.55rem;flex-wrap:wrap;margin-bottom:2rem}.catalog-chip{border:1px solid #d9d7d3;background:#fff;color:#363533;padding:.6rem 1rem;border-radius:999px;text-decoration:none;font-weight:800;font-size:.9rem}.catalog-chip:hover,.catalog-chip:focus-visible,.catalog-chip.is-active{color:#fff;background:#41403d;border-color:#41403d}.catalog-group{padding:0 0 3rem!important;background:transparent!important}.catalog-group-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid #e8e6e2;margin:2.2rem 0 1.35rem;padding-bottom:.9rem}.catalog-group-heading h3{font-size:1.55rem;font-weight:900;color:#292827;margin:0}.catalog-group-heading p{margin:.25rem 0 0;color:#6d6c69}.catalog-group-heading>span{white-space:nowrap;color:#474643;font-weight:800}.catalog-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.catalog-product{display:grid;grid-template-columns:42% 58%;min-width:0;border:1px solid #e7e5e1;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 6px 22px #18384c12}.catalog-product-photo{display:flex;align-items:center;justify-content:center;background:#faf7f2;padding:1rem}.catalog-product-photo img{display:block;width:100%;max-height:265px;object-fit:contain}.catalog-product-body{padding:1.3rem;min-width:0}.catalog-product-body h4{font-size:1.16rem;font-weight:900;line-height:1.4;color:#292827;margin:0 0 .55rem}.catalog-product-body>p{font-size:.91rem;line-height:1.65;color:#555350}.catalog-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:.8rem 0}.catalog-specs div{background:#f7f4ef;border-radius:8px;padding:.45rem .6rem;min-width:0}.catalog-specs dt{font-size:.75rem;color:#5a5854}.catalog-specs dd{font-size:.84rem;font-weight:900;margin:0;color:#393735;overflow-wrap:anywhere}.catalog-models{border-top:1px solid #eae8e4;padding-top:.6rem;margin-top:.8rem}.catalog-models summary{cursor:pointer;color:#464442;font-weight:800;font-size:.86rem}.catalog-models ul{padding-inline-start:1.2rem;font-size:.78rem;line-height:1.7;margin:.5rem 0;overflow-wrap:anywhere}.catalog-uses{font-size:.83rem!important;margin:.8rem 0}.catalog-contact{font-weight:900;color:#454341;text-decoration:none;font-size:.85rem}.catalog-contact:hover{text-decoration:underline}.catalog-source{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#f7f4ef;border-radius:15px;padding:1.5rem 2rem;margin:1rem 0 2rem}.catalog-source h3{font-size:1.15rem;font-weight:900;color:#292827}.catalog-source p{margin:0;line-height:1.7;color:#54524f}.catalog-source a{white-space:nowrap;color:#464442;font-weight:900}.catalog-contact-block{background:#2c2b2a!important;border-radius:16px;padding:2rem!important;color:#fff}.catalog-contact-block h3{color:#fff;font-weight:900}.catalog-contact-block p{color:#e7e5e1}.catalog-contact-links{display:flex;gap:.6rem;flex-wrap:wrap}.catalog-contact-links a{color:#fff;border:1px solid #9f9d9a;padding:.5rem .75rem;border-radius:8px;text-decoration:none;direction:ltr}.catalog-contact-links a:hover{background:#fff;color:#2c2b2a}@media(max-width:1000px){.catalog-product-grid{grid-template-columns:1fr}}@media(max-width:700px){section.catalog-hero{padding:3rem 0}.catalog-hero-inner,.catalog-company{grid-template-columns:1fr}.catalog-hero-visual{display:none}.catalog-company-facts{gap:.4rem}.catalog-company-facts div{padding:.65rem .25rem}.catalog-company-facts strong{font-size:1.3rem}.catalog-section-head{display:block}.catalog-product{grid-template-columns:1fr}.catalog-product-photo{height:210px}.catalog-product-photo img{max-height:190px}.catalog-source{display:block}.catalog-source a{display:inline-block;margin-top:.7rem}}
.catalog-scenes{border-top:1px solid #eae8e4;margin:.75rem 0;padding-top:.6rem}.catalog-scenes summary{cursor:pointer;color:#464442;font-weight:800;font-size:.86rem}.catalog-scenes>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;margin:.6rem 0}.catalog-scenes img{display:block;width:100%;height:92px;object-fit:cover;border-radius:6px}
.catalog-company-detail{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;background:#f8f5f0;border-radius:14px;padding:1.4rem}.catalog-company-detail h3{font-size:1rem;font-weight:900;color:#363533}.catalog-company-detail ul{padding-inline-start:1.2rem;margin:0;line-height:1.85;color:#545250}.catalog-company-detail p{margin:0;line-height:1.85;color:#545250}@media(max-width:700px){.catalog-company-detail{grid-template-columns:1fr}}
@media(max-width:700px){.catalog-hero-inner,.catalog-company,.catalog-main{padding-inline:18px!important}.catalog-product-grid{gap:1rem}.catalog-company h2{font-size:1.55rem}}
.catalog-factory-photos{grid-column:1/-1;display:grid;grid-template-columns:1.5fr 1fr;gap:1rem}.catalog-factory-photos figure{margin:0;position:relative;border-radius:12px;overflow:hidden;background:#f2efea}.catalog-factory-photos img{display:block;width:100%;height:220px;object-fit:cover}.catalog-factory-photos figcaption{position:absolute;inset-inline:0;bottom:0;background:linear-gradient(transparent,#092838bb);color:#fff;padding:1.5rem .9rem .7rem;font-weight:800}@media(max-width:700px){.catalog-factory-photos{grid-template-columns:1fr}.catalog-factory-photos img{height:180px}}
.catalog-capacity{grid-column:1/-1;display:flex;gap:.9rem;align-items:center;border-inline-start:4px solid #d9b46c;background:#faf7ef;border-radius:8px;padding:.9rem 1.2rem;color:#403f3d;line-height:1.7}.catalog-capacity strong{color:#393836;min-width:190px}@media(max-width:700px){.catalog-capacity{display:block}.catalog-capacity strong{display:block}}
.catalog-hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1.25rem}.catalog-hero-actions .catalog-primary-link{margin-top:0}.catalog-download-link{display:inline-flex;align-items:center;gap:.65rem;border:1px solid #f4f1ec;color:#fff;padding:.9rem 1.25rem;border-radius:10px;text-decoration:none;font-weight:800;min-height:50px}.catalog-download-link:hover,.catalog-download-link:focus-visible{background:#fff;color:#292827}.catalog-search-wrap{position:relative;margin-bottom:1.1rem;max-width:520px}.catalog-search-wrap label{display:block;font-weight:800;color:#2c2b2a;margin-bottom:.4rem}.catalog-search-wrap input{display:block;width:100%;min-height:48px;border:1px solid #cdcbc7;border-radius:10px;padding:.65rem 1rem;color:#2c2b2a;background:#fff;font:inherit}.catalog-search-wrap input:focus-visible{outline:3px solid #d9b46c;outline-offset:2px}.catalog-search-wrap p{min-height:1.2em;margin:.35rem 0 0;color:#585653;font-size:.85rem}.catalog-empty{border:1px solid #e4e2de;border-radius:10px;padding:1.5rem;background:#faf7f2;color:#464542}.catalog-product[hidden],.catalog-group[hidden],.catalog-empty[hidden]{display:none!important}.catalog-source a{display:inline-flex;align-items:center;gap:.5rem;border:1px solid #464442;border-radius:8px;padding:.65rem .9rem;text-decoration:none}.catalog-source a:hover,.catalog-source a:focus-visible{color:#fff;background:#464442}@media(max-width:700px){.catalog-hero-actions{align-items:stretch}.catalog-hero-actions a{justify-content:center;width:100%}}
/* Product cards: image-first, quiet material palette, and depth without white image boxes. */
.catalog-product-grid{gap:1.5rem}
.catalog-product{display:flex;flex-direction:column;grid-template-columns:none;border:1px solid #e2e0dc;border-radius:18px;box-shadow:0 12px 28px rgba(13,49,65,.08);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.catalog-product:hover{transform:translateY(-5px);border-color:#c1bfbb;box-shadow:0 22px 42px rgba(13,49,65,.14)}
.catalog-product-photo{position:relative;isolation:isolate;flex:0 0 auto;height:260px;padding:1.3rem;overflow:hidden;background:radial-gradient(circle at 50% 24%,#fdfaf5 0%,#f2efea 55%,#eae8e4 100%);border-bottom:1px solid #e7e5e1}
.catalog-product-photo::before{content:"";position:absolute;z-index:0;left:20%;right:20%;bottom:14px;height:36px;border-radius:50%;background:rgba(22,54,65,.22);filter:blur(17px)}
.catalog-product-photo::after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.6);border-radius:12px;pointer-events:none;z-index:3}
.catalog-product-photo img{position:relative;z-index:2;width:100%;height:100%;max-height:none;object-fit:contain;transform:perspective(900px) rotateX(4deg) translateY(-4px) scale(1.08);transition:transform .35s ease}
.catalog-product-photo img[src^="/assets/catalog/products/"]{mix-blend-mode:multiply}
.catalog-product-photo img[src$="/40.webp"]{mix-blend-mode:normal;border-radius:10px}
.catalog-product:hover .catalog-product-photo img{transform:perspective(900px) rotateX(0deg) translateY(-10px) scale(1.13)}
.catalog-product-body{display:flex;flex:1;flex-direction:column;padding:1.35rem 1.45rem 1.45rem;min-width:0}
.catalog-product-body h4{font-size:1.25rem;line-height:1.45;margin-bottom:.5rem}
.catalog-product-body>p{line-height:1.75}
.catalog-specs{gap:.65rem;margin:1rem 0}
.catalog-specs div{background:#f9f6f1;border:1px solid #eeebe6;padding:.65rem .75rem}
.catalog-specs dt{font-size:.78rem}
.catalog-specs dd{font-size:.9rem;line-height:1.5}
.catalog-contact{display:inline-flex;align-items:center;gap:.4rem;align-self:flex-start;margin-top:auto;padding-top:.9rem;font-size:.9rem}
.catalog-hero-visual img[src^="/assets/catalog/products/"]{mix-blend-mode:multiply}
@media(max-width:700px){.catalog-product-grid{gap:1rem}.catalog-product-photo{height:235px;padding:1rem}.catalog-product-photo img{max-height:none}.catalog-product-body{padding:1.1rem 1.2rem 1.3rem}}
@media(prefers-reduced-motion:reduce){.catalog-product,.catalog-product-photo img{transition:none}.catalog-product:hover,.catalog-product:hover .catalog-product-photo img{transform:none}}

.catalog-product-photo{text-decoration:none;cursor:pointer}
.catalog-product-photo:focus-visible,.catalog-product-title:focus-visible,.catalog-detail-link:focus-visible{outline:3px solid #b88834;outline-offset:3px}
.catalog-product-title{color:inherit;text-decoration:none}
.catalog-product-title:hover{color:#454341;text-decoration:underline}
.catalog-detail-link{display:inline-flex;align-items:center;gap:.45rem;align-self:flex-start;color:#3b3a38;font-weight:900;text-decoration:none;margin-top:auto;padding-top:1rem}
.catalog-detail-link:hover{text-decoration:underline}
.catalog-product .catalog-contact{margin-top:.3rem;padding-top:.2rem;font-weight:700}
.product-detail-page{background:#fefbf6;padding:2.2rem 0 5rem}
.product-detail-container{max-width:1200px}
.product-breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;color:#6f6e6b;font-size:.88rem;margin-bottom:1.5rem}
.product-breadcrumb a{color:#454341;text-decoration:none;font-weight:700}
.product-breadcrumb a:hover{text-decoration:underline}
.product-breadcrumb span[aria-current]{color:#323130}
.product-detail-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:2rem;align-items:start}
.product-detail-primary{position:relative;display:grid;place-items:center;min-height:430px;overflow:hidden;border-radius:22px;background:radial-gradient(circle at 50% 26%,#fcfdfb,#f2efea 65%,#e6e4e0);box-shadow:0 22px 50px #15384917}
.product-detail-primary::after{content:"";position:absolute;left:23%;right:23%;bottom:13%;height:36px;border-radius:50%;background:#173d4d33;filter:blur(17px)}
.product-detail-primary img{position:relative;z-index:1;display:block;width:90%;height:370px;object-fit:contain;transform:perspective(1000px) rotateX(3deg);filter:drop-shadow(0 14px 10px #21404825)}
.product-detail-primary img.catalog-cutout{mix-blend-mode:multiply;filter:contrast(1.28)}
.product-detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:.8rem}
.product-detail-gallery figure{margin:0;background:#f2efea;border-radius:12px;overflow:hidden}
.product-detail-gallery img{display:block;width:100%;height:160px;object-fit:cover}
.product-detail-copy{background:#fff;border:1px solid #e7e5e1;border-radius:20px;padding:2rem;box-shadow:0 12px 32px #1538490e}
.product-detail-copy h1{color:#2c2b2a;font-size:clamp(1.9rem,3vw,2.6rem);line-height:1.35;margin:.5rem 0 1rem}
.product-detail-intro{font-size:1.05rem;line-height:1.9;color:#52504d}
.product-detail-copy h2{font-size:1.18rem;color:#2c2b2a;font-weight:900;margin:1.6rem 0 .65rem}
.product-detail-uses{border-top:1px solid #eceae6;margin-top:1.5rem}
.product-detail-note{background:#f6f1e5;color:#4b4947;border-inline-start:4px solid #c39b4a;padding:.8rem 1rem;border-radius:8px;line-height:1.75}
.product-detail-uses p{color:#555350;line-height:1.75}
.product-detail-specs{border-top:1px solid #eceae6;margin-top:1.5rem}
.product-detail-specs dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:0}
.product-detail-specs dl>div{padding:.85rem;background:#f8f5f0;border-radius:9px;min-width:0}
.product-detail-specs dt{color:#5b5956;font-size:.83rem}
.product-detail-specs dd{color:#353432;font-weight:900;margin:.25rem 0 0;overflow-wrap:anywhere}
.product-detail-models{margin-top:1.1rem;border-top:1px solid #eceae6;padding-top:1rem}
.product-detail-models summary{color:#454341;font-weight:800;cursor:pointer}
.product-detail-models ul{line-height:1.9;overflow-wrap:anywhere}
.product-detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem}
.product-detail-enquire{display:inline-flex;align-items:center;gap:.6rem;padding:.85rem 1.25rem;background:#43413f;color:#fff;text-decoration:none;border-radius:10px;font-weight:900}
.product-detail-enquire:hover,.product-detail-enquire:focus-visible{background:#32302f;color:#fff}
.product-detail-back,.product-detail-pdf{color:#43413f;font-weight:800;text-decoration:none}
.product-detail-back:hover,.product-detail-pdf:hover{text-decoration:underline}
.product-detail-pdf{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.5rem}
@media(max-width:850px){.product-detail-layout{grid-template-columns:1fr}.product-detail-page{padding:1.3rem 0 3rem}.product-detail-primary{min-height:320px}.product-detail-primary img{height:280px}.product-detail-copy{padding:1.4rem}}
@media(max-width:480px){.product-detail-gallery img{height:125px}.product-detail-specs dl{grid-template-columns:1fr}.product-detail-container{padding-inline:18px}}
.project-card-image img{height:230px;object-fit:cover}
.project-empty{max-width:540px;margin:auto;padding:3rem 2rem;text-align:center;background:#f9f6f1;border:1px solid #e9e7e3;border-radius:18px;color:#555350}
.project-empty i{font-size:2.5rem;color:#4c4a47}.project-empty h3{color:#2c2b2a;margin:1rem 0}.project-empty a{display:inline-block;margin-top:.7rem;background:#43413f;color:#fff;padding:.7rem 1rem;border-radius:9px;text-decoration:none;font-weight:800}
.project-detail-page{padding:2.2rem 0 5rem;background:#fefbf6}.project-detail-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1.8rem;align-items:start}.project-detail-cover{display:block;width:100%;height:440px;object-fit:cover;border-radius:18px;box-shadow:0 15px 35px #15384918}.project-detail-copy{background:#fff;border:1px solid #e7e5e1;border-radius:18px;padding:2rem;line-height:1.9}.project-detail-copy h1{color:#2c2b2a;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.35}.project-detail-copy p{color:#555350}.project-detail-copy dl>div{border-top:1px solid #efece7;padding:.65rem 0}.project-detail-copy dt{font-size:.83rem;color:#706f6c}.project-detail-copy dd{font-weight:800;color:#2c2b2a;margin:0}.project-detail-copy>a{color:#454341;font-weight:800}
@media(max-width:850px){.project-detail-layout{grid-template-columns:1fr}.project-detail-cover{height:300px}.project-detail-copy{padding:1.4rem}}
/* Booklet-led corporate pages. Scoped to leave the homepage slideshow intact. */
.booklet-section{padding:clamp(3.5rem,6vw,6.5rem) 0;background:#fdfaf5;color:#2c2b2a}
.booklet-section:nth-of-type(even){background:#fff}
.booklet-kicker{display:block;color:#a5782e;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.9rem}
.booklet-section h2,.booklet-page-hero h1{font-weight:900;line-height:1.25;letter-spacing:-.025em}
.booklet-section h2{color:#2c2b2a;font-size:clamp(1.8rem,3vw,2.8rem)}
.booklet-section p{color:#575552;line-height:1.9}
.booklet-section-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem}
.booklet-section-heading p{max-width:680px;margin:.65rem 0 0}
.booklet-text-link{display:inline-flex;gap:.7rem;align-items:center;color:#444240;font-weight:900;text-decoration:none;white-space:nowrap;min-height:44px}
.booklet-text-link:hover,.booklet-text-link:focus-visible{text-decoration:underline;color:#2c2b2a}
.booklet-solid-link{display:inline-flex;gap:.75rem;align-items:center;justify-content:center;background:#3f3d3b;color:#fff;font-weight:900;padding:.85rem 1.25rem;border-radius:9px;text-decoration:none;min-height:48px}
.booklet-solid-link:hover,.booklet-solid-link:focus-visible{background:#2f2e2c;color:#fff}
.home-category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.1rem}
.home-category-card{grid-column:span 2;display:block;overflow:hidden;background:#fff;border:1px solid #e8e6e2;border-radius:16px;text-decoration:none;box-shadow:0 11px 26px #183d4910;transition:transform .25s ease,box-shadow .25s ease}
.home-category-card:nth-child(n+4){grid-column:span 3}
.home-category-card:hover{transform:translateY(-4px);box-shadow:0 17px 34px #183d4922}
.home-category-card:focus-visible{outline:3px solid #bd914c;outline-offset:3px}
.home-category-photo{height:250px;display:grid;place-items:center;background:radial-gradient(circle at 50% 20%,#fefbf6,#eeebe6);overflow:hidden}
.home-category-photo img{width:100%;height:100%;object-fit:contain;padding:1rem;mix-blend-mode:multiply;transition:transform .3s ease}
.home-category-card:hover img{transform:scale(1.05)}
.home-category-card:last-child img{mix-blend-mode:normal;object-fit:cover;padding:0}
.home-category-copy{padding:1.25rem 1.4rem 1.35rem}
.home-category-copy h3{font-size:1.2rem;color:#2c2b2a;font-weight:900;margin:0 0 .25rem}
.home-category-copy p{font-size:.9rem;margin:0 0 .8rem;line-height:1.6}
.home-category-copy span{font-size:.85rem;color:#444240;font-weight:900}
.home-heritage{background:#f3f0eb!important}
.home-heritage-grid,.about-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.home-heritage-photo{position:relative;min-height:520px;border-radius:18px;overflow:hidden;background:#e1dfdb}
.home-heritage-photo img{display:block;width:100%;height:520px;object-fit:cover}
.home-heritage-photo span{position:absolute;inset-inline-end:0;bottom:0;padding:1rem 1.3rem;background:#2c2b2a;color:#fff;font-weight:900;letter-spacing:.1em}
.home-heritage-copy p{font-size:1.04rem;max-width:570px}
.home-heritage-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;border-block:1px solid #d6d4d0;padding:1.25rem 0;margin:1.6rem 0}
.home-heritage-facts div+div{border-inline-start:1px solid #d6d4d0;padding-inline-start:.9rem}
.home-heritage-facts strong{display:block;color:#403e3c;font-size:1.5rem;font-weight:900;line-height:1.2}
.home-heritage-facts span{display:block;color:#565451;font-size:.8rem;line-height:1.5;margin-top:.4rem}
.home-process-grid,.about-factory-grid,.agencies-grid,.services-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.home-process-grid>div,.about-factory-grid article,.agency-record,.services-capability-grid article{border:1px solid #e7e5e1;background:#fff;border-radius:14px;padding:1.6rem}
.home-process-grid>div>span,.agency-record-number{font-size:.8rem;color:#b28a46;font-weight:900;letter-spacing:.1em}
.home-process-grid h3,.services-capability-grid h3{font-size:1.16rem;font-weight:900;color:#2c2b2a;margin:.85rem 0 .4rem}
.home-process-grid p,.services-capability-grid p{font-size:.94rem;margin:0}
.booklet-page-hero{padding:clamp(4rem,7vw,7rem) 0;background:linear-gradient(120deg,#2a2927,#403e3c);color:#fff}
.booklet-page-hero .booklet-kicker{color:#dfb773}
.booklet-page-hero h1{color:#fff;max-width:850px;font-size:clamp(2.1rem,4.5vw,4rem)}
.booklet-page-hero p{color:#efece7;line-height:1.9;font-size:1.1rem;max-width:750px;margin:1.2rem 0}
.booklet-page-hero a{color:#fff;font-weight:900;text-decoration:none;border-bottom:1px solid #dfb773;padding-bottom:.3rem}
.about-story-grid figure{margin:0;position:relative}
.about-story-grid img{width:100%;height:450px;object-fit:cover;border-radius:14px}
.about-story-grid figcaption{font-size:.82rem;color:#72716e;margin-top:.65rem}
.about-story-grid p{max-width:650px}
.about-factories{background:#f7f4ef!important}
.about-factory-grid article{border-top:4px solid #ba9050}
.about-factory-year{font-size:2.3rem;color:#403f3d;font-weight:900}
.about-factory-grid h3{font-size:1.2rem;font-weight:900;color:#2c2b2a;margin:.35rem 0 1.4rem}
.about-factory-grid dl{margin:0}
.about-factory-grid dl div{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #ebe9e5;padding:.6rem 0}
.about-factory-grid dt{font-weight:500;color:#706f6c}.about-factory-grid dd{font-weight:900;color:#2c2b2a;margin:0}
.about-capacity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.about-capacity-grid div{background:#f3f0eb;border-radius:14px;padding:1.5rem}
.about-capacity-grid strong{display:block;font-size:clamp(1.6rem,3vw,2.5rem);color:#403f3d;font-weight:900}.about-capacity-grid small{font-size:.55em}
.about-capacity-grid span{display:block;color:#575552;margin-top:.4rem}
.booklet-data-note{font-size:.82rem!important;color:#757371!important;margin-top:1rem}
.about-next .container,.agencies-contact{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.about-next p{max-width:680px}
.agencies-subsidiary{display:flex;justify-content:space-between;gap:2rem;align-items:center;background:#f3f0eb;border-inline-start:5px solid #bd9554;padding:2rem;border-radius:12px;margin-bottom:4rem}
.agencies-subsidiary h2{max-width:720px}.agencies-subsidiary p{max-width:630px;margin:0}
.agencies-mark{font-size:5rem;color:#d6d4d0;font-weight:900;line-height:1}
.agency-record{min-height:220px;position:relative}
.agency-record i{display:block;font-size:1.5rem;color:#444240;margin:1.2rem 0}
.agency-record h3{font-size:1.15rem;font-weight:900;color:#2c2b2a;line-height:1.5}
.agency-record p{margin:0;font-size:.9rem}
.agencies-contact{background:#2c2b2a;color:#fff;border-radius:14px;margin-top:2rem;padding:2rem}
.agencies-contact h2{color:#fff;font-size:1.5rem}.agencies-contact p{color:#e8e6e2;margin:0}
.agencies-contact .booklet-solid-link{background:#d9b46c;color:#2c2b2a}
.services-capability-grid article{display:flex;flex-direction:column}
.service-capability-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:12px;background:#f1eee9;color:#41403d;font-size:1.5rem}
.services-capability-grid a{margin-top:auto;padding-top:1.5rem;color:#444240;font-weight:900;text-decoration:none}
.services-capability-grid a:hover{text-decoration:underline}
@media(max-width:900px){.home-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-category-card,.home-category-card:nth-child(n+4){grid-column:auto}.home-heritage-grid,.about-story-grid{grid-template-columns:1fr}.home-heritage-photo,.home-heritage-photo img{height:370px;min-height:0}.about-story-grid figure{order:-1}.home-process-grid,.about-factory-grid,.agencies-grid,.services-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.booklet-section{padding:3.5rem 0}.booklet-section-heading,.about-next .container,.agencies-contact{display:block}.booklet-section-heading .booklet-text-link{margin-top:1rem}.home-category-grid,.home-process-grid,.about-factory-grid,.about-capacity-grid,.agencies-grid,.services-capability-grid{grid-template-columns:1fr}.home-category-photo{height:230px}.home-heritage-photo,.home-heritage-photo img{height:300px}.home-heritage-facts{grid-template-columns:1fr;gap:.8rem}.home-heritage-facts div+div{border:0;padding:0}.about-story-grid img{height:300px}.agencies-mark{display:none}.agencies-subsidiary{padding:1.5rem}.about-next .booklet-solid-link,.agencies-contact .booklet-solid-link{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){.home-category-card,.home-category-photo img{transition:none}.home-category-card:hover,.home-category-card:hover img{transform:none}}
.contact-booklet-details{display:grid;grid-template-columns:1.15fr 1fr;gap:2rem;align-items:start;background:#f8f5f0;border:1px solid #e8e6e2;border-radius:16px;padding:2rem;margin:0 0 3rem}.contact-booklet-details h2{color:#2c2b2a;font-size:1.6rem;font-weight:900}.contact-booklet-details p{color:#575552;line-height:1.8;margin:0}.contact-booklet-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.contact-booklet-numbers a{display:block;background:#fff;border:1px solid #e6e4e0;border-radius:10px;padding:.9rem 1rem;text-decoration:none}.contact-booklet-numbers a:hover,.contact-booklet-numbers a:focus-visible{border-color:#4d4b48;box-shadow:0 5px 14px #123c4914}.contact-booklet-numbers span{display:block;color:#757371;font-size:.78rem}.contact-booklet-numbers strong{display:block;color:#403f3d;font-size:.95rem;margin-top:.2rem;text-align:start}@media(max-width:850px){.contact-booklet-details{grid-template-columns:1fr}}@media(max-width:530px){.contact-booklet-details{padding:1.25rem}.contact-booklet-numbers{grid-template-columns:1fr}}
.booklet-page-hero{background:#302f2d!important;background-image:linear-gradient(120deg,#2a2927,#403e3c)!important}
/* Editorial product render: source-shaped paver on a calm material backdrop. */
.catalog-hero-visual{display:grid;place-items:center;min-height:345px;padding:1rem;background:radial-gradient(circle at 52% 33%,#fbf8f3 0%,#eeebe6 64%,#e2e0dc 100%);border:1px solid #f6f8f399}
.catalog-hero-product-link{display:grid;place-items:center;width:100%;min-width:0;border-radius:18px;text-decoration:none}
.catalog-hero-product-link:focus-visible{outline:3px solid #d9b46c;outline-offset:3px}
.catalog-hero-product-link img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;filter:drop-shadow(0 16px 19px #17394e2d);transform:scale(1.13);transition:transform .35s ease}
.catalog-hero-product-link:hover img{transform:translateY(-7px) scale(1.18)}
@media(max-width:700px){.catalog-hero-visual{display:grid;min-height:230px;margin:0 0 1rem;padding:.6rem}.catalog-hero-product-link img{max-height:215px}.catalog-hero-visual span{bottom:-14px}}
@media(prefers-reduced-motion:reduce){.catalog-hero-product-link img{transition:none}.catalog-hero-product-link:hover img{transform:scale(1.13)}}

/* Corporate editorial presentation below the existing homepage slider. */
.home-categories{background:#fbf8f3!important}
.home-categories .booklet-section-heading{padding-bottom:1.4rem;border-bottom:1px solid #e1dfdb}
.home-category-grid{gap:1.25rem}
.home-category-card{border:0;border-radius:4px;background:#fff;box-shadow:0 13px 38px rgba(17,49,58,.08)}
.home-category-card:hover{box-shadow:0 22px 45px rgba(17,49,58,.15)}
.home-category-photo{height:280px;background:radial-gradient(circle at 50% 24%,#f9faf6,#eae8e4 78%)}
.home-category-photo img{padding:1.5rem;filter:drop-shadow(0 12px 12px #243c4024)}
.home-category-copy{padding:1.35rem 1.5rem 1.5rem;border-top:1px solid #ebe9e5}
.home-category-copy h3{font-size:1.33rem}
.home-category-copy p{min-height:2.9em}
.home-category-copy span{border-bottom:1px solid #b9965d;padding-bottom:.25rem}
.home-heritage{background:#f1eee9!important}
.home-heritage-photo,.home-heritage-photo img{border-radius:2px}
.home-heritage-photo:after{content:"";position:absolute;inset:0;border:12px solid rgba(255,255,255,.12);pointer-events:none}
.home-heritage-facts strong{font-variant-numeric:tabular-nums}
.home-applications{background:#fff!important}
.home-application-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:1rem}
.home-application-card{display:block;position:relative;overflow:hidden;min-height:390px;background:#e2e0dc;color:#fff;text-decoration:none;border-radius:3px;isolation:isolate}
.home-application-card:after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(8,30,36,.78));z-index:1}
.home-application-card img{display:block;width:100%;height:100%;min-height:390px;object-fit:cover;transition:transform .4s ease}
.home-application-card:hover img{transform:scale(1.045)}
.home-application-card span{position:absolute;z-index:2;inset-inline:1.6rem;bottom:1.55rem;display:block}
.home-application-card small{display:block;color:#e5c88c;font-size:.76rem;font-weight:900;letter-spacing:.08em;margin-bottom:.4rem}
.home-application-card strong{display:block;color:#fff;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.35}
.home-application-card:focus-visible{outline:3px solid #a87a36;outline-offset:4px}
.home-process{background:#faf7f2!important}
.home-process-grid>div{position:relative;padding:2rem 1.6rem;border:0;border-top:3px solid #bd9860;border-radius:2px;box-shadow:0 10px 28px #123a4610}
.home-process-grid>div>span{font-size:1.2rem;color:#b08b55}
.home-process-grid h3{margin:1.1rem 0 .6rem}

/* Projects are a visual product-application gallery, with verified records above when published. */
.projects-editorial-hero{position:relative;overflow:hidden;background:#2a2927;color:#fff;padding:clamp(4rem,7vw,7rem) 0}
.projects-editorial-hero:before{content:"";position:absolute;width:48vw;height:48vw;border:1px solid #ffffff1d;transform:rotate(35deg);inset-inline-start:-18vw;top:-22vw;pointer-events:none}
.projects-hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.projects-hero-copy .booklet-kicker{color:#e5be79}
.projects-hero-copy h1{font-size:clamp(2.3rem,4.6vw,4.7rem);font-weight:900;line-height:1.22;letter-spacing:-.025em;color:#fff;margin:0 0 1.3rem}
.projects-hero-copy p{font-size:1.05rem;color:#e6e4e0;line-height:2;max-width:580px;margin:0 0 1.9rem}
.projects-hero-link{display:inline-flex;align-items:center;gap:.7rem;min-height:49px;border:1px solid #e5be79;color:#e5be79;padding:.8rem 1.1rem;text-decoration:none;font-weight:900}
.projects-hero-link:hover,.projects-hero-link:focus-visible{background:#e5be79;color:#2d2c2b}
.projects-hero-photo{position:relative;min-width:0;aspect-ratio:1.35;background:#393735;box-shadow:24px 25px 0 #ffffff0c}
.projects-hero-photo img{display:block;width:100%;height:100%;object-fit:cover}
.projects-hero-photo span{position:absolute;inset-inline-end:0;bottom:0;background:#e5be79;color:#2c2b2a;font-weight:900;padding:.8rem 1.1rem}
.projects-applications{background:#fcf9f4!important;scroll-margin-top:100px}
.projects-application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.7rem 1.15rem}
.projects-application-card{min-width:0;background:#fff;box-shadow:0 12px 30px #153d4912}
.projects-application-image{display:block;overflow:hidden;background:#e9e7e3}
.projects-application-image img{display:block;width:100%;height:260px;object-fit:cover;transition:transform .35s ease}
.projects-application-card:hover .projects-application-image img{transform:scale(1.045)}
.projects-application-copy{padding:1.3rem 1.45rem 1.5rem}
.projects-application-copy>span{display:block;color:#aa7f42;font-size:.76rem;font-weight:900;letter-spacing:.07em}
.projects-application-copy h3{font-size:1.28rem;font-weight:900;color:#2c2b2a;margin:.65rem 0 .45rem}
.projects-application-copy p{font-size:.91rem;line-height:1.8;min-height:3.6em;margin:0 0 1rem;color:#575552}
.projects-application-copy>a{font-size:.87rem;font-weight:900;text-decoration:none;color:#41403d;border-bottom:1px solid #b9955e;padding-bottom:.25rem}
.projects-application-copy>a:hover{text-decoration:underline}
.projects-records{background:#fff!important}
.projects-record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.projects-record-card{background:#fcf9f4;border:1px solid #e7e5e1}
.projects-record-image{display:block;overflow:hidden}
.projects-record-image img{width:100%;height:260px;object-fit:cover;display:block}
.projects-record-copy{padding:1.3rem 1.5rem 1.6rem}
.projects-record-copy h3{color:#2c2b2a;font-size:1.3rem;font-weight:900}
.projects-record-copy p{color:#575552;line-height:1.8}
.projects-endcap{background:#302f2d;color:#fff;padding:clamp(3rem,5vw,5rem) 0}
.projects-endcap-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.projects-endcap .booklet-kicker{color:#e5be79}
.projects-endcap h2{color:#fff;font-size:clamp(1.7rem,3vw,2.7rem);font-weight:900;margin:0 0 .7rem}
.projects-endcap p{color:#e9e7e3;line-height:1.8;margin:0;max-width:650px}
.projects-endcap .booklet-solid-link{white-space:nowrap;background:#d9b46c;color:#2c2b2a}
.projects-endcap .booklet-solid-link:hover{background:#f0d59d;color:#2c2b2a}
@media(max-width:950px){.projects-application-grid,.projects-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-hero-layout{grid-template-columns:1fr 1fr}.home-application-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-application-card:first-child{grid-row:span 2}}
@media(max-width:700px){.projects-editorial-hero{padding:3rem 0}.projects-hero-layout{grid-template-columns:1fr;gap:2rem}.projects-hero-photo{aspect-ratio:1.45}.projects-application-grid,.projects-record-grid{grid-template-columns:1fr}.projects-application-image img,.projects-record-image img{height:245px}.projects-endcap-inner{display:block}.projects-endcap .booklet-solid-link{margin-top:1.4rem}.home-application-grid{grid-template-columns:1fr}.home-application-card,.home-application-card img{min-height:270px;height:270px}.home-application-card:first-child{grid-row:auto}.home-category-copy p{min-height:0}}
@media(prefers-reduced-motion:reduce){.home-application-card img,.projects-application-image img{transition:none}.home-application-card:hover img,.projects-application-card:hover img{transform:none}}
.projects-editorial-hero{background:#2a2927!important;color:#fff!important}
.projects-editorial-hero .projects-hero-copy h1{color:#fff!important}
.projects-editorial-hero .projects-hero-copy p{color:#e6e4e0!important}

/* Let the catalog use the full section width without stretching individual cards. */
.catalog-product-grid {
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 470px), 1fr));
  gap: clamp(1rem, 1.5vw, 1.5rem);
}
.catalog-product {
  width: 100%;
  max-width: 660px;
  justify-self: center;
}
@media (min-width: 1500px) {
  .catalog-product-photo { height: 235px; }
  .catalog-product-body { padding: 1.2rem 1.3rem 1.35rem; }
}
@media (max-width: 700px) {
  .catalog-product-grid { grid-template-columns: minmax(0, 1fr); }
  .catalog-product { max-width: none; }
}
