:root { --ink:#18231f; --muted:#68766c; --paper:#f3f5ed; --white:#fff; --line:#d9dfd5; --teal:#185c59; --lime:#d9ef75; --orange:#ee6b3a; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; font-size:16px; line-height:1.5; }
a { color:inherit; text-decoration:none; }
button, input, select { font:inherit; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible { outline:2px solid var(--orange); outline-offset:3px; }
.shell { width:min(1180px, calc(100% - 64px)); margin-inline:auto; }
.screen-reader-text, .screen-reader-text:focus { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:absolute; left:1rem; top:-3rem; z-index:10; padding:.7rem 1rem; background:var(--lime); }
.skip-link:focus { top:1rem; }
.preview-notice { padding:8px 16px; background:#f4e4a6; color:#564b20; text-align:center; font-size:12px; }
.site-header { position:relative; z-index:4; background:var(--paper); border-bottom:1px solid var(--line); }
.site-header__inner { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { display:inline-flex; align-items:center; flex:0 0 auto; line-height:0; }
.brand__logo { display:block; width:142px; height:auto; }
.primary-nav { display:flex; align-items:center; gap:25px; font-size:13px; }
.primary-nav > a:not(.command):hover, .text-link:hover, .footer-column a:hover { color:var(--orange); }
.primary-nav > a:not(.command)[aria-current="page"] { color:var(--orange); box-shadow:inset 0 -2px var(--orange); }
.primary-nav > .command[aria-current="page"] { background:var(--teal); }
.command { display:inline-flex; align-items:center; justify-content:center; gap:10px; border:0; padding:12px 17px; background:var(--ink); color:var(--white); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0; cursor:pointer; }
.command:hover { background:var(--teal); color:var(--white); }.command--lime { background:var(--lime); color:var(--ink); }.command--lime:hover { background:#c8e467; color:var(--ink); }
.menu-toggle { display:none; border:0; background:transparent; padding:8px; }.menu-toggle span:not(.screen-reader-text) { display:block; width:22px; height:2px; margin:4px; background:var(--ink); }
.eyebrow { margin:0; color:var(--orange); font-size:11px; font-weight:700; letter-spacing:0; text-transform:uppercase; }
h1, h2, h3 { margin:0; line-height:.95; letter-spacing:0; } h1 { font-size:clamp(54px, 7vw, 108px); } h2 { font-size:clamp(42px, 5.5vw, 76px); } h3 { font-size:24px; }
em { color:var(--orange); font-style:normal; }
.hero { display:grid; grid-template-columns:1.02fr .98fr; gap:80px; padding-top:94px; padding-bottom:38px; }
.hero__copy > p:not(.eyebrow) { max-width:460px; margin:30px 0; color:var(--muted); font-size:18px; line-height:1.65; }.actions { display:flex; align-items:center; gap:22px; }.text-link { border-bottom:1px solid currentColor; font-size:13px; }
.hero__visual { position:relative; min-height:440px; background:var(--teal); overflow:hidden; }.hero__visual:before, .hero__visual:after { content:""; position:absolute; border:1px solid rgba(217,239,117,.45); border-radius:50%; transform:rotate(-16deg); }.hero__visual:before { inset:13% -8%; }.hero__visual:after { inset:23% 6%; }
.hero__frame { position:absolute; display:grid; align-content:end; width:265px; height:318px; padding:18px; background:#e7ebdf; color:var(--ink); box-shadow:14px 18px 0 rgba(0,0,0,.09); z-index:1; }.hero__frame span { font-size:12px; font-weight:700; letter-spacing:0; }.hero__frame b { font-size:22px; }.hero__frame--one { top:45px; left:14%; transform:rotate(-8deg); }.hero__frame--two { right:9%; bottom:36px; transform:rotate(8deg); background:var(--lime); }.hero__seal { position:absolute; z-index:2; right:10%; top:12%; display:grid; place-items:center; width:74px; height:74px; border:1px solid var(--orange); border-radius:50%; background:var(--orange); color:var(--white); font-size:10px; font-weight:700; letter-spacing:0; text-align:center; transform:rotate(9deg); }
.proof { grid-column:1/-1; display:grid; grid-template-columns:auto 1fr auto 1fr auto 1fr; align-items:center; column-gap:14px; border-top:1px solid var(--line); padding-top:20px; font-size:11px; text-transform:uppercase; letter-spacing:0; }.proof span { color:var(--muted); }
.catalog-section { padding:125px 0 130px; background:#e7ece3; }.section-heading { display:grid; grid-template-columns:1fr 320px; gap:50px; align-items:end; margin-bottom:50px; }.section-heading > p { margin:0; color:var(--muted); line-height:1.7; font-size:15px; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.product-card { min-width:0; }.product-card__image { position:relative; display:block; height:310px; overflow:hidden; background:#dfe5da; }.product-card__image img { width:100%; height:100%; object-fit:cover; mix-blend-mode:multiply; }.product-image-missing { display:grid; place-items:center; width:100%; height:100%; color:var(--teal); font-size:12px; font-weight:800; letter-spacing:0; }.product-card__badges { position:absolute; top:12px; left:12px; display:flex; flex-wrap:wrap; gap:5px; }.product-card__badges b, .badges b { padding:5px 7px; background:var(--lime); color:var(--ink); font-size:9px; letter-spacing:0; }.product-card__badges b.deep, .badges b.deep { background:var(--orange); color:var(--white); }.product-card__meta { display:flex; justify-content:space-between; gap:8px; margin-top:15px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:0; }.product-card h2 { margin-top:9px; font-size:24px; }.product-card h2 a:hover { color:var(--orange); }.product-card p { min-height:42px; margin:11px 0 14px; color:var(--muted); font-size:12px; line-height:1.55; }.product-card__price { display:flex; align-items:baseline; gap:6px; border-top:1px solid var(--line); padding-top:10px; }.product-card__price span, .product-card__price small { color:var(--muted); font-size:10px; }.product-card__price strong { font-size:17px; }.catalog-links { display:flex; justify-content:space-between; border-top:1px solid #c8d2c5; margin-top:45px; padding-top:18px; font-size:12px; text-transform:uppercase; letter-spacing:0; }.catalog-links a:hover { color:var(--orange); }
.empty-catalog { grid-column:1/-1; min-height:190px; display:grid; align-content:center; justify-items:start; gap:10px; border:1px dashed var(--line); padding:28px; color:var(--muted); }.empty-catalog h2 { color:var(--ink); font-size:30px; }.empty-catalog p { margin:0; }
.trade-band { padding:120px 0 130px; background:var(--teal); color:var(--white); }.trade-band .shell { display:grid; grid-template-columns:1fr 300px; gap:60px; align-items:end; }.trade-band h2 { grid-column:1; margin-top:20px; }.trade-band > .shell > p:last-child { grid-column:2; margin:0; color:#c6d3c9; line-height:1.7; }.trade-band em { color:var(--lime); }
.about-band { display:grid; grid-template-columns:1fr 1fr; gap:100px; padding-top:125px; padding-bottom:125px; }.about-band h2 { margin:20px 0 25px; font-size:clamp(44px,5vw,70px); }.about-band > div > p:not(.eyebrow) { max-width:460px; margin:0 0 25px; color:var(--muted); line-height:1.7; }.about-band dl { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin:0; background:var(--line); border:1px solid var(--line); }.about-band dl div { display:grid; align-content:center; min-height:150px; padding:22px; background:var(--paper); }.about-band dt { color:var(--orange); font-size:10px; font-weight:700; letter-spacing:0; text-transform:uppercase; }.about-band dd { margin:8px 0 0; font-size:15px; }
.resources-band { padding:110px 0 125px; background:#e7ece3; }.resources-band h2 { max-width:620px; margin:20px 0 45px; }.resource-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }.resource-grid a { display:grid; gap:10px; min-height:170px; padding:24px; background:var(--white); }.resource-grid a:hover { background:var(--lime); }.resource-grid strong { font-size:19px; }.resource-grid span { color:var(--muted); font-size:12px; }
.contact-band { padding:100px 0; background:var(--teal); color:var(--white); }.contact-band .shell { display:grid; grid-template-columns:1fr 320px; gap:70px; align-items:end; }.contact-band h2 { max-width:720px; margin:20px 0 24px; }.contact-band p:not(.eyebrow) { max-width:670px; margin:0; color:#d4e0d4; line-height:1.7; }.contact-band__action { display:grid; justify-items:start; gap:24px; }.contact-band address { color:#d4e0d4; font-size:13px; font-style:normal; line-height:1.7; }.contact-band address strong { color:var(--white); }
.site-footer { background:var(--ink); color:#e7eee3; }.footer-grid { display:grid; grid-template-columns:1.5fr repeat(3,1fr); gap:50px; padding-top:60px; padding-bottom:58px; }.brand--footer .brand__logo { width:154px; }.footer-grid p { margin:15px 0 0; color:#9bad9f; font-size:12px; }.footer-column { display:grid; align-content:start; gap:9px; color:#d4e0d4; font-size:12px; }.footer-column strong { color:var(--lime); font-size:10px; text-transform:uppercase; letter-spacing:0; }.footer-column address { color:inherit; font-style:normal; line-height:1.7; }.footer-bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid rgba(231,238,227,.2); padding-top:16px; padding-bottom:20px; color:#9bad9f; font-size:10px; text-transform:uppercase; letter-spacing:0; }
.catalog-page { padding-top:70px; padding-bottom:120px; }.catalog-header { max-width:670px; padding-bottom:35px; }.catalog-header h1 { margin:18px 0 18px; }.catalog-header > p:last-child { margin:0; color:var(--muted); font-size:17px; }.category-nav { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:30px; }.category-nav a { display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line); padding:8px 11px; background:var(--white); font-size:12px; }.category-nav a:hover, .category-nav a[aria-current="page"] { border-color:var(--teal); background:var(--teal); color:var(--white); }.category-nav span { color:var(--muted); font-size:10px; }.category-nav a[aria-current="page"] span { color:#d4e0d4; }.catalog-filter { display:grid; grid-template-columns:1.5fr 1fr auto auto; align-items:end; gap:12px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:20px 0; margin-bottom:40px; }.catalog-filter label { display:grid; gap:7px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:0; }.catalog-filter input, .catalog-filter select { width:100%; border:1px solid var(--line); border-radius:0; padding:11px; background:var(--white); color:var(--ink); }.clear-filter { align-self:center; color:var(--muted); font-size:12px; border-bottom:1px solid currentColor; }.catalog-page .product-grid { grid-template-columns:repeat(3,1fr); }.nav-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:35px; font-size:12px; }.nav-links a, .nav-links .current { display:inline-flex; min-width:38px; min-height:38px; align-items:center; justify-content:center; border:1px solid var(--line); padding:7px 10px; }.nav-links a:hover, .nav-links .current { border-color:var(--teal); background:var(--teal); color:var(--white); }
.product-detail { padding-top:35px; padding-bottom:120px; }.breadcrumbs { display:flex; gap:9px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:0; }.breadcrumbs b { color:var(--orange); font-weight:700; }.product-hero { display:grid; grid-template-columns:1fr 1fr; gap:75px; padding-top:42px; padding-bottom:85px; }.product-gallery { min-width:0; background:#dfe5da; overflow:hidden; }.product-gallery__primary { height:510px; overflow:hidden; }.product-gallery__primary-link { display:block; width:100%; height:100%; }.product-gallery__primary img { width:100%; height:100%; object-fit:cover; mix-blend-mode:multiply; }.product-gallery__thumbs { display:grid; grid-template-columns:repeat(5, 1fr); gap:8px; padding:8px; background:#dfe5da; }.product-gallery__thumb { display:block; aspect-ratio:1; overflow:hidden; background:var(--white); outline-offset:2px; }.product-gallery__thumb:hover, .product-gallery__thumb:focus-visible, .product-gallery__thumb[aria-current="true"] { outline:2px solid var(--orange); }.product-gallery__thumb img { width:100%; height:100%; object-fit:cover; mix-blend-mode:multiply; }.product-summary { padding-top:10px; }.badges { display:flex; gap:6px; margin:20px 0 18px; }.product-summary h1 { max-width:560px; }.product-intro { max-width:480px; margin:22px 0; color:var(--muted); font-size:16px; line-height:1.7; }.price-heading { display:flex; justify-content:space-between; align-items:end; gap:15px; border-top:1px solid var(--line); padding-top:19px; margin-top:28px; }.price-heading span { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:0; }.price-heading strong { white-space:nowrap; font-size:19px; }.price-note { color:var(--muted); font-size:11px; line-height:1.5; }.table-wrap { overflow:auto; }.product-summary table { width:100%; min-width:460px; border-collapse:collapse; margin:20px 0 27px; font-size:12px; }.product-summary th { padding:10px; background:var(--teal); color:var(--white); text-align:left; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:0; }.product-summary td { padding:11px 10px; border-bottom:1px solid var(--line); }.product-summary td:nth-child(2) { font-size:15px; font-weight:700; }.detail-sections { border-top:1px solid var(--line); }.detail-sections details { border-bottom:1px solid var(--line); }.detail-sections summary { padding:23px 0; cursor:pointer; font-size:21px; font-weight:700; list-style:none; }.detail-sections summary::-webkit-details-marker { display:none; }.detail-sections summary:after { float:right; color:var(--orange); content:'+'; }.detail-sections details[open] summary:after { content:'−'; }.detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px 50px; margin:0; padding:0 0 27px; }.detail-grid > div { display:grid; grid-template-columns:155px 1fr; gap:15px; border-top:1px solid #e8ebe6; padding-top:11px; }.detail-grid dt { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:0; }.detail-grid dd { margin:0; font-size:13px; line-height:1.55; }.imprint-option { margin:0 0 28px; }.imprint-option h3 { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px; margin:3px 0 17px; font-size:18px; line-height:1.2; }.imprint-option h3 span { color:var(--muted); font-size:10px; font-weight:400; }.imprint-option .detail-grid { padding-bottom:0; }.imprint-common { padding-top:4px; }.detail-note { max-width:760px; margin:0; padding:0 0 25px; color:var(--muted); font-size:11px; line-height:1.6; }.disclaimer { max-width:750px; margin-top:27px; padding:16px; background:#edf5d3; color:#526426; font-size:11px; line-height:1.6; }
.product-summary { min-width:0; }.table-wrap { max-width:100%; }
.content-page { padding-top:75px; padding-bottom:120px; }.content-page header { max-width:800px; padding-bottom:55px; }.content-page h1 { margin-top:20px; }.content-page__body { max-width:800px; border-top:1px solid var(--line); padding-top:32px; }.content-page__body h2 { margin:32px 0 14px; font-size:29px; }.content-page__body h2:first-child { margin-top:0; }.content-page__body p, .content-page__body li, .content-page__body address { color:var(--muted); line-height:1.75; }.content-page__body address { font-style:normal; }.content-page__body a { border-bottom:1px solid currentColor; color:var(--teal); }.content-page__body a:hover { color:var(--orange); }.content-page__body ul { padding-left:20px; }.not-found { min-height:560px; padding-top:120px; }.not-found h1 { max-width:650px; margin:18px 0 22px; }.not-found p { color:var(--muted); margin-bottom:25px; }
@media (max-width:900px) { .shell { width:min(680px, calc(100% - 40px)); }.menu-toggle { display:block; }.primary-nav { position:absolute; z-index:3; top:100%; left:0; right:0; display:none; flex-direction:column; align-items:stretch; gap:4px; padding:12px 20px 20px; background:var(--paper); border-bottom:1px solid var(--line); box-shadow:0 12px 25px rgba(23,33,30,.1); }.primary-nav.is-open { display:flex; }.primary-nav > a { padding:10px 4px; }.primary-nav > a:not(.command)[aria-current="page"] { box-shadow:inset 3px 0 var(--orange); padding-left:13px; }.primary-nav > .command { margin-top:6px; }.hero { grid-template-columns:1fr; gap:45px; padding-top:65px; }.hero__visual { min-height:400px; }.section-heading, .trade-band > .shell, .about-band, .contact-band .shell { grid-template-columns:1fr; gap:35px; }.trade-band > .shell > p:last-child { grid-column:auto; }.product-grid, .catalog-page .product-grid { grid-template-columns:repeat(2,1fr); }.footer-grid { grid-template-columns:1.5fr 1fr 1fr; }.footer-grid > div:first-child { grid-column:1/-1; }.product-hero { grid-template-columns:1fr; gap:40px; }.product-gallery__primary { height:500px; }.catalog-filter { grid-template-columns:1fr 1fr; }.catalog-filter .command { justify-self:start; } }
@media (max-width:560px) { .shell { width:calc(100% - 32px); }.hero__visual { min-height:330px; }.hero__frame { width:190px; height:240px; }.hero__frame--one { left:4%; }.hero__frame--two { right:2%; }.proof { grid-template-columns:1fr 1fr; gap:8px 13px; }.proof span { margin-bottom:10px; }.product-grid, .catalog-page .product-grid, .resource-grid { grid-template-columns:1fr; }.product-card__image { height:340px; }.catalog-links { flex-direction:column; gap:15px; }.about-band dl { grid-template-columns:1fr; }.footer-grid { grid-template-columns:1fr 1fr; gap:32px 20px; }.footer-bottom { display:grid; gap:10px; }.catalog-filter { grid-template-columns:1fr; }.catalog-page { padding-top:45px; }.product-gallery__primary { height:390px; }.product-gallery__thumbs { grid-template-columns:repeat(4, 1fr); }.price-heading { display:grid; gap:8px; }.detail-grid { grid-template-columns:1fr; gap:15px; }.detail-grid > div { grid-template-columns:125px 1fr; }.product-summary h1 { font-size:53px; } }
