@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap");

:root { --ink: #18221f; --muted: #70807a; --paper: #f4f6f1; --line: #dfe7df; --lime: #d9f64b; --green: #7d986c; --cream: #f0eedf; --dark: #18221f; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: "DM Sans", Arial, sans-serif; }
button, input, textarea, select { font: inherit; }
button { border: 0; cursor: pointer; color: inherit; }
button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 2px solid #7a936d; outline-offset: 3px; }
.container { width: min(1180px, calc(100% - 56px)); margin: 0 auto; }
.topline { background: var(--ink); color: #d9e0d8; font-family: "DM Mono", monospace; font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.topline-inner { min-height: 35px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.topline-detail { color: #85918b; }
.topline-link { background: transparent; color: var(--lime); text-transform: uppercase; font-size: 10px; letter-spacing: .08em; }
.topline-link span { margin-left: 9px; font-size: 14px; }
.site-header { background: var(--paper); border-bottom: 1px solid var(--line); position: sticky; z-index: 20; top: 0; }
.header-row { height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.brand-mark { display: inline-flex; align-items: center; gap: 10px; background: transparent; text-align: left; }
.brand-symbol { background: var(--lime); width: 35px; height: 35px; display: grid; place-items: center; border-radius: 50%; color: var(--ink); font-family: "Space Grotesk", sans-serif; font-size: 26px; font-weight: 700; line-height: 1; transform: rotate(-9deg); }
.brand-copy { display: flex; flex-direction: column; line-height: 1; }
.brand-copy strong { font-family: "Space Grotesk", sans-serif; font-size: 19px; letter-spacing: -.07em; }
.brand-copy small { color: var(--muted); font-family: "DM Mono", monospace; font-size: 7px; letter-spacing: .08em; margin-top: 5px; text-transform: uppercase; }
.desktop-nav { display: flex; gap: 28px; margin-left: auto; }
.desktop-nav button, .footer-links button { background: transparent; font-size: 12px; color: #5e6c66; }
.desktop-nav button:hover, .footer-links button:hover { color: var(--ink); }
.header-actions { display: flex; align-items: center; gap: 12px; }
.icon-button, .menu-button { background: transparent; font-size: 23px; line-height: 1; }
.quote-button { background: var(--ink); color: white; padding: 12px 15px 12px 17px; font-size: 11px; letter-spacing: .02em; }
.quote-count { background: var(--lime); color: var(--ink); display: inline-grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; margin-left: 9px; font-family: "DM Mono", monospace; font-size: 10px; }
.menu-button { display: none; }
.hero { min-height: 635px; overflow: hidden; }
.hero-grid { min-height: 635px; display: grid; grid-template-columns: .88fr 1.12fr; align-items: center; gap: 50px; }
.eyebrow, .section-index { font-family: "DM Mono", monospace; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.eyebrow { display: flex; align-items: center; gap: 10px; margin-bottom: 28px; }
.eyebrow-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--lime); display: inline-block; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: "Space Grotesk", sans-serif; letter-spacing: -.08em; line-height: .94; }
h1 { font-size: clamp(58px, 7vw, 94px); margin-bottom: 27px; }
h1 em, h2 em { color: #809a70; font-style: normal; }
.hero-lead { width: min(410px, 100%); color: #687670; line-height: 1.65; font-size: 15px; margin-bottom: 34px; }
.hero-actions { display: flex; align-items: center; gap: 25px; }
.button { padding: 15px 19px; display: inline-flex; align-items: center; justify-content: center; gap: 24px; font-size: 11px; font-weight: 600; letter-spacing: .02em; transition: transform .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-dark { background: var(--ink); color: white; }
.button-light { background: white; border: 1px solid var(--line); }
.text-button { background: transparent; color: var(--ink); padding: 7px 0; font-size: 11px; border-bottom: 1px solid #9aaa98; }
.text-button span { margin-left: 18px; }
.hero-proof { display: flex; gap: 13px; align-items: center; color: #84918b; font-family: "DM Mono", monospace; font-size: 9px; line-height: 1.55; margin-top: 60px; text-transform: uppercase; letter-spacing: .05em; }
.avatar-stack { display: flex; padding-left: 8px; }
.avatar-stack i { width: 27px; height: 27px; display: grid; place-items: center; border: 2px solid var(--paper); border-radius: 50%; background: #a3ba99; color: white; font-style: normal; margin-left: -8px; font-size: 9px; }
.avatar-stack i:nth-child(2) { background: #ce9984; }.avatar-stack i:nth-child(3) { background: #667e71; }
.hero-art { min-height: 530px; position: relative; }
.art-orbit { position: absolute; border: 1px solid #cfdacf; border-radius: 50%; transform: rotate(-22deg); }
.orbit-one { width: 570px; height: 250px; right: -70px; top: 135px; }.orbit-two { width: 560px; height: 220px; right: -50px; top: 150px; transform: rotate(26deg); }
.art-card { position: absolute; box-shadow: 18px 26px 45px rgba(24,34,31,.13); }
.card-back { width: 295px; height: 360px; top: 89px; right: 87px; background: #2d453a; padding: 26px; color: #e4eddd; font-family: "DM Mono", monospace; font-size: 10px; letter-spacing: .12em; line-height: 1.4; transform: rotate(7deg); }
.card-back::after { content: ""; width: 95px; height: 95px; border: 1px solid #9bb288; border-radius: 50%; position: absolute; bottom: 38px; right: 36px; }
.card-main { width: 248px; height: 348px; top: 95px; right: 220px; background: #dfeaa9; transform: rotate(-8deg); display: flex; justify-content: center; padding-top: 28px; }
.bottle-cap { width: 54px; height: 28px; background: #1d2924; position: absolute; top: 41px; border-radius: 5px 5px 2px 2px; }
.bottle-body { width: 136px; height: 225px; background: #1f2a25; position: absolute; top: 65px; border-radius: 22px 22px 15px 15px; box-shadow: 9px 12px 16px rgba(19,35,25,.2); display: flex; justify-content: center; align-items: center; }
.bottle-body::before { content: ""; width: 120px; height: 210px; position: absolute; border: 1px solid #546a57; border-radius: 18px 18px 12px 12px; }
.bottle-label { width: 89px; height: 107px; background: var(--lime); color: var(--ink); display: flex; flex-direction: column; justify-content: center; align-items: center; font-family: "DM Mono", monospace; font-size: 16px; letter-spacing: .04em; line-height: .9; }
.bottle-label b { font-family: "Space Grotesk", sans-serif; font-size: 24px; letter-spacing: -.12em; margin: 3px 0 9px; }.bottle-label small { font-size: 6px; text-transform: uppercase; letter-spacing: .04em; }
.card-number { font-family: "DM Mono", monospace; font-size: 9px; position: absolute; bottom: 27px; left: 30px; }
.card-front { width: 258px; height: 245px; background: #f0e4d0; bottom: 28px; right: 0; padding: 32px; transform: rotate(5deg); display: flex; flex-direction: column; justify-content: space-between; }
.front-kicker { color: #8b7d69; font-family: "DM Mono", monospace; font-size: 8px; letter-spacing: .12em; }.card-front strong { font-family: "Space Grotesk", sans-serif; font-size: 31px; line-height: .9; letter-spacing: -.08em; }.card-front strong i { color: #798f68; font-style: normal; }.front-line { width: 44px; height: 2px; background: #7e9473; }
.art-note { position: absolute; font-family: "DM Mono", monospace; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; color: #82918a; display: flex; gap: 10px; align-items: center; }.art-note span { color: #a5b1a8; }.note-top { top: 70px; right: 14px; }.note-bottom { bottom: 40px; left: 62px; align-items: flex-start; line-height: 1.6; flex-direction: column; gap: 3px; }.note-bottom strong { color: var(--ink); }.art-stamp { position: absolute; left: 43px; top: 196px; width: 75px; height: 75px; border: 1px solid #a8b8a5; border-radius: 50%; display: grid; place-content: center; text-align: center; transform: rotate(-17deg); color: #7c9874; font-family: "Space Grotesk", sans-serif; font-size: 17px; line-height: .8; }.art-stamp span { font-family: "DM Mono", monospace; font-size: 7px; margin-top: 7px; }
.search-band { background: var(--lime); }
.search-row { min-height: 108px; display: grid; grid-template-columns: 1fr 2fr auto; align-items: center; gap: 34px; }
.search-heading { display: flex; align-items: center; gap: 15px; font-family: "Space Grotesk", sans-serif; font-size: 16px; letter-spacing: -.03em; }.search-heading span { font-family: "DM Mono", monospace; font-size: 10px; color: #718536; }
.search-input { height: 46px; background: rgba(255,255,255,.7); display: flex; align-items: center; padding: 0 15px; gap: 12px; }.search-input > span { font-size: 22px; }.search-input input { border: 0; background: transparent; outline: 0; flex: 1; min-width: 0; color: var(--ink); font-size: 12px; }.search-input input::placeholder { color: #83915a; }.search-input kbd { font-family: "DM Mono", monospace; font-size: 9px; color: #85934f; white-space: nowrap; }.search-categories { background: transparent; font-family: "DM Mono", monospace; font-size: 9px; text-transform: uppercase; letter-spacing: .07em; white-space: nowrap; }.search-categories span { font-size: 14px; margin-left: 14px; }
.section { padding: 115px 0; }.section-heading, .catalog-top { display: flex; justify-content: space-between; align-items: end; gap: 50px; }.section-heading h2, .catalog-top h2, .solutions-intro h2, .about-section h2, .contact-copy h2 { font-size: clamp(42px, 5vw, 68px); margin: 19px 0 0; }.section-heading p, .catalog-intro p { max-width: 290px; color: #718078; font-size: 13px; line-height: 1.7; margin: 0 0 6px; }
.category-section { background: var(--paper); }.category-grid { margin-top: 62px; display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }.category-card { position: relative; min-height: 205px; background: transparent; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 25px 22px; display: flex; flex-direction: column; align-items: flex-start; text-align: left; transition: .2s ease; }.category-card:hover, .category-card.active { background: #e8efdf; }.category-index { font-family: "DM Mono", monospace; color: #9aa9a0; font-size: 9px; }.category-icon { color: #8da57b; font-size: 33px; font-weight: 300; margin: 30px 0 20px; }.category-card strong { font-family: "Space Grotesk", sans-serif; font-size: 14px; letter-spacing: -.03em; line-height: 1.2; }.category-count { color: #9aa79e; font-family: "DM Mono", monospace; font-size: 8px; margin-top: auto; text-transform: uppercase; letter-spacing: .04em; }.category-count i { color: var(--ink); font-size: 14px; font-style: normal; margin-left: 9px; }
.catalog-section { background: #e9efdf; }.catalog-top { align-items: end; }.catalog-intro { display: flex; align-items: flex-start; gap: 22px; }.catalog-intro p { margin: 0; }.catalog-toolbar { display: flex; justify-content: space-between; gap: 25px; align-items: center; border-bottom: 1px solid #d1ddcf; border-top: 1px solid #d1ddcf; margin-top: 65px; padding: 13px 0; }.filter-scroll { display: flex; gap: 21px; overflow-x: auto; white-space: nowrap; scrollbar-width: none; }.filter-scroll::-webkit-scrollbar { display: none; }.filter-scroll button { padding: 6px 0; background: transparent; color: #809087; font-size: 11px; }.filter-scroll button.filter-active { color: var(--ink); border-bottom: 1px solid var(--ink); }.brand-select { display: flex; align-items: center; gap: 9px; white-space: nowrap; }.brand-select span { color: #809087; font-family: "DM Mono", monospace; font-size: 9px; text-transform: uppercase; }.brand-select select { background: transparent; border: 0; font-size: 11px; color: var(--ink); padding-right: 0; }
.product-grid { margin-top: 30px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }.product-card { background: var(--paper); min-width: 0; transition: transform .2s ease; }.product-card:hover { transform: translateY(-4px); }.product-visual { height: 250px; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; }.product-code { position: absolute; left: 18px; top: 17px; font-family: "DM Mono", monospace; font-size: 8px; color: rgba(24,34,31,.62); }.product-note { position: absolute; bottom: 16px; left: 18px; font-family: "DM Mono", monospace; font-size: 8px; text-transform: uppercase; letter-spacing: .03em; color: rgba(24,34,31,.65); }.product-shape { width: 114px; height: 162px; border-radius: 15px 15px 11px 11px; background: #e9f3d6; position: relative; box-shadow: 14px 15px 18px rgba(26,43,34,.16); display: grid; place-items: center; }.product-shape::before { content: ""; position: absolute; top: -18px; width: 45px; height: 22px; border-radius: 5px 5px 2px 2px; background: #24342a; }.product-shape::after { content: ""; position: absolute; width: 82px; height: 82px; background: var(--lime); top: 39px; left: 16px; }.product-shape span { z-index: 1; position: relative; font-family: "Space Grotesk", sans-serif; font-weight: 700; font-size: 36px; letter-spacing: -.12em; color: #2c4434; }.product-sand { background: #e9ddcb; }.product-sand .product-shape { width: 166px; height: 80px; border-radius: 5px; background: #aa7f64; transform: rotate(-8deg); }.product-sand .product-shape::before { display: none; }.product-sand .product-shape::after { background: #eee5d6; width: 116px; height: 48px; top: 16px; left: 25px; }.product-sand .product-shape span { font-size: 23px; }.product-green { background: #d2dfcb; }.product-green .product-shape { width: 102px; height: 176px; background: #eef3e8; border-radius: 4px 4px 10px 10px; }.product-green .product-shape::before { background: #334a3c; top: -10px; }.product-green .product-shape::after { background: #79a17a; width: 102px; height: 45px; top: 62px; left: 0; }.product-green .product-shape span { color: white; }.product-red { background: #ead6cc; }.product-red .product-shape { background: #b56851; width: 133px; height: 92px; border-radius: 8px; transform: rotate(4deg); }.product-red .product-shape::before { display: none; }.product-red .product-shape::after { background: #f0dec3; width: 95px; height: 49px; top: 21px; left: 19px; }.product-red .product-shape span { font-size: 24px; }.product-lilac { background: #dfd9eb; }.product-lilac .product-shape { width: 148px; height: 104px; background: #596f80; border-radius: 0; }.product-lilac .product-shape::before { display: none; }.product-lilac .product-shape::after { background: #cbd8d2; height: 60px; width: 115px; top: 22px; left: 17px; }.product-lilac .product-shape span { color: #2e4c55; }.product-yellow { background: #ede7bd; }.product-yellow .product-shape { width: 100px; height: 160px; background: #e7b53d; border-radius: 22px 22px 12px 12px; }.product-yellow .product-shape::after { background: #f4e6a8; }.product-yellow .product-shape span { color: #5e5232; }.product-charcoal { background: #d4d9d0; }.product-charcoal .product-shape { width: 132px; height: 132px; background: #27312e; border-radius: 3px; }.product-charcoal .product-shape::before { display: none; }.product-charcoal .product-shape::after { background: #68736b; width: 70px; height: 70px; top: 30px; left: 30px; }.product-charcoal .product-shape span { color: #dae6d1; }.product-orange { background: #e6d4be; }.product-orange .product-shape { width: 180px; height: 26px; background: #738a65; border-radius: 50px; transform: rotate(-17deg); }.product-orange .product-shape::before, .product-orange .product-shape::after { display: none; }.product-orange .product-shape span { color: #d9efaf; font-size: 22px; }
.product-info { min-height: 142px; padding: 18px 17px 15px; display: flex; justify-content: space-between; gap: 10px; }.product-brand { color: #83918a; font-family: "DM Mono", monospace; font-size: 8px; text-transform: uppercase; }.product-info h3 { font-family: "Space Grotesk", sans-serif; letter-spacing: -.04em; font-size: 15px; line-height: 1.1; margin: 10px 0 7px; }.product-info p { color: #87948d; font-size: 11px; line-height: 1.35; margin: 0; }.add-button { width: 31px; height: 31px; flex: 0 0 auto; border: 1px solid #b7c4ba; background: transparent; border-radius: 50%; font-size: 20px; line-height: 1; }.add-button:hover, .add-button.added { background: var(--ink); color: var(--lime); border-color: var(--ink); }.catalog-footer { display: flex; justify-content: space-between; align-items: center; margin-top: 36px; color: #87948b; font-family: "DM Mono", monospace; font-size: 9px; text-transform: uppercase; letter-spacing: .04em; }.empty-state { display: flex; justify-content: center; align-items: center; flex-direction: column; gap: 15px; min-height: 180px; color: #87948b; }.empty-state strong { font-family: "Space Grotesk", sans-serif; color: var(--ink); }
.solutions-section { background: var(--ink); color: white; }.solutions-section .section-index { color: #87998c; }.solutions-intro { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 40px; align-items: end; }.solutions-intro h2 { margin: 0; }.solutions-intro p { color: #9aa9a0; font-size: 13px; line-height: 1.7; max-width: 250px; margin: 0; }.solution-list { border-top: 1px solid #41514a; margin-top: 74px; }.solution-item { display: grid; grid-template-columns: 90px 1fr 30px; gap: 25px; align-items: center; padding: 25px 0; border-bottom: 1px solid #41514a; }.solution-item > span { color: #8c9b91; font-family: "DM Mono", monospace; font-size: 10px; }.solution-item h3 { font-family: "Space Grotesk", sans-serif; font-size: 20px; letter-spacing: -.04em; margin: 0 0 7px; }.solution-item p { max-width: 450px; color: #9ba8a0; font-size: 12px; line-height: 1.5; margin: 0; }.solution-item b { color: var(--lime); font-size: 20px; font-weight: 400; }
.brands-section { background: #dfe9da; }.brand-grid { margin-top: 60px; display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }.brand-card { min-height: 183px; padding: 22px; display: flex; flex-direction: column; align-items: flex-start; text-align: left; justify-content: space-between; position: relative; transition: transform .2s ease; }.brand-card:hover { transform: translateY(-4px); }.brand-card span { font-family: "DM Mono", monospace; font-size: 8px; text-transform: uppercase; letter-spacing: .04em; opacity: .65; }.brand-card strong { font-family: "Space Grotesk", sans-serif; font-size: 25px; letter-spacing: -.08em; }.brand-card i { font-style: normal; font-size: 17px; align-self: flex-end; }.brand-primary { background: var(--lime); }.brand-teal { background: #abc6b5; }.brand-blue { background: #b4c4d1; }.brand-ink { background: #283b35; color: white; }.brand-sand { background: #e9dec9; }
.about-section { background: #f2efe4; }.about-grid { display: grid; grid-template-columns: 100px 1fr 235px; gap: 35px; align-items: center; }.about-number { font-family: "Space Grotesk", sans-serif; font-size: 100px; letter-spacing: -.12em; color: #d2dccc; align-self: start; line-height: .8; }.about-number span { font-size: 18px; color: #8aa078; vertical-align: top; margin-left: 8px; letter-spacing: 0; }.about-section p { color: #6f7c74; font-size: 14px; line-height: 1.7; max-width: 420px; margin: 29px 0 31px; }.about-aside { border-left: 1px solid #d4dbcc; padding-left: 30px; }.aside-circle { width: 130px; height: 130px; border: 1px solid #a5b69c; border-radius: 50%; display: grid; place-items: center; color: #809873; font-family: "Space Grotesk", sans-serif; font-size: 52px; letter-spacing: -.12em; transform: rotate(-12deg); }.aside-circle span { font-size: 17px; margin-left: 5px; vertical-align: top; }.about-aside p { font-family: "DM Mono", monospace; font-size: 9px; line-height: 1.6; text-transform: uppercase; margin: 20px 0 0; }
.contact-section { background: var(--lime); padding: 118px 0 110px; }.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }.contact-copy h2 { margin-top: 20px; }.contact-copy > p { color: #66743e; font-size: 14px; line-height: 1.7; max-width: 340px; margin: 30px 0 30px; }.contact-details { display: flex; flex-wrap: wrap; gap: 10px 20px; color: #6a793d; font-family: "DM Mono", monospace; font-size: 9px; text-transform: uppercase; }.contact-details span::before { content: "•"; margin-right: 7px; }.contact-form { background: rgba(255,255,255,.48); padding: 27px; display: flex; flex-direction: column; gap: 21px; }.contact-form label { display: flex; flex-direction: column; gap: 9px; }.contact-form label span { color: #778748; font-family: "DM Mono", monospace; font-size: 9px; text-transform: uppercase; }.contact-form input, .contact-form textarea { background: transparent; border: 0; border-bottom: 1px solid #b9c887; padding: 5px 0 12px; outline: 0; color: var(--ink); resize: vertical; font-size: 13px; }.contact-form input::placeholder, .contact-form textarea::placeholder { color: #9aa765; }.form-submit { align-self: flex-start; }.contact-form small { color: #869451; font-family: "DM Mono", monospace; font-size: 8px; }.form-success { min-height: 350px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }.form-success > span { width: 39px; height: 39px; border-radius: 50%; background: var(--ink); color: var(--lime); display: grid; place-items: center; margin-bottom: 24px; }.form-success h3 { font-family: "Space Grotesk", sans-serif; font-size: 28px; letter-spacing: -.07em; margin-bottom: 13px; }.form-success p { color: #6e7e41; font-size: 13px; line-height: 1.6; max-width: 280px; }
.site-footer { background: var(--ink); color: white; padding: 55px 0 20px; }.footer-main { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; padding-bottom: 58px; }.footer-brand .brand-copy strong { color: white; }.footer-brand .brand-copy small { color: #809087; }.footer-note { color: #84948a; font-family: "DM Mono", monospace; font-size: 10px; line-height: 1.5; text-transform: uppercase; letter-spacing: .05em; }.footer-note span { color: var(--lime); }.footer-links { display: flex; justify-content: flex-end; gap: 23px; }.footer-links button { color: #9aa69e; }.footer-bottom { border-top: 1px solid #3a4a42; padding-top: 18px; display: flex; justify-content: space-between; gap: 20px; color: #718077; font-family: "DM Mono", monospace; font-size: 8px; text-transform: uppercase; letter-spacing: .04em; }.footer-bottom span:last-child { color: var(--lime); cursor: pointer; }
.drawer-backdrop { position: fixed; inset: 0; background: rgba(24,34,31,.42); z-index: 50; display: flex; justify-content: flex-end; }.quote-drawer { width: min(410px, 100%); min-height: 100%; background: var(--paper); padding: 34px; box-shadow: -10px 0 35px rgba(0,0,0,.12); }.drawer-heading { display: flex; justify-content: space-between; align-items: start; padding-bottom: 30px; border-bottom: 1px solid var(--line); }.drawer-heading h2 { font-size: 41px; margin: 14px 0 0; }.drawer-heading h2 em { font-size: 18px; color: #8a9b8c; font-style: normal; letter-spacing: -.04em; }.drawer-close { background: transparent; font-size: 28px; line-height: 1; }.quote-items { padding: 22px 0; display: flex; flex-direction: column; gap: 15px; }.quote-item { display: flex; align-items: center; gap: 13px; padding-bottom: 15px; border-bottom: 1px solid var(--line); }.quote-item strong { display: block; font-family: "Space Grotesk", sans-serif; font-size: 14px; line-height: 1.12; letter-spacing: -.04em; }.quote-item small { display: block; color: #8b9990; font-family: "DM Mono", monospace; font-size: 8px; margin-top: 7px; text-transform: uppercase; }.mini-product { width: 45px; height: 55px; flex: 0 0 auto; display: block; background: #d5eaa3; }.mini-product.product-sand { background: #aa7f64; }.mini-product.product-green { background: #79a17a; }.mini-product.product-red { background: #b56851; }.mini-product.product-lilac { background: #596f80; }.mini-product.product-yellow { background: #e7b53d; }.mini-product.product-charcoal { background: #27312e; }.mini-product.product-orange { background: #738a65; }.drawer-cta { width: 100%; margin-top: 15px; }.drawer-empty { min-height: 390px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 16px; }.drawer-empty > span { width: 45px; height: 45px; border: 1px solid #b6c4b9; border-radius: 50%; display: grid; place-items: center; color: #7d9870; font-size: 24px; }.drawer-empty p { color: #7c8982; font-size: 13px; line-height: 1.6; max-width: 250px; }
@media (max-width: 980px) { .container { width: min(100% - 36px, 760px); }.desktop-nav { gap: 16px; }.hero-grid { grid-template-columns: 1fr 1fr; gap: 15px; }.hero-art { transform: scale(.78); transform-origin: center right; margin-left: -60px; }.category-grid { grid-template-columns: repeat(3, 1fr); }.product-grid { grid-template-columns: repeat(2, 1fr); }.brand-grid { grid-template-columns: repeat(3, 1fr); }.brand-card:last-child { grid-column: span 2; }.about-grid { grid-template-columns: 60px 1fr 180px; }.about-number { font-size: 68px; }.contact-grid { gap: 45px; } }
@media (max-width: 700px) { .container { width: calc(100% - 32px); }.topline-detail, .topline-link { display: none; }.topline-inner { min-height: 31px; }.header-row { height: 68px; }.desktop-nav { display: none; position: absolute; top: 68px; left: 0; right: 0; background: var(--paper); border-bottom: 1px solid var(--line); padding: 15px 16px 21px; flex-direction: column; gap: 0; }.desktop-nav.is-open { display: flex; }.desktop-nav button { text-align: left; padding: 13px 0; border-bottom: 1px solid var(--line); }.menu-button { display: block; }.quote-button { padding: 9px 10px 9px 12px; }.quote-count { width: 17px; height: 17px; }.hero { min-height: auto; }.hero-grid { display: flex; flex-direction: column; align-items: stretch; padding-top: 75px; }.hero-copy { position: relative; z-index: 2; }.hero-art { min-height: 440px; margin: -18px -21px -55px 0; transform: scale(.72); transform-origin: top right; }.hero-proof { margin-top: 43px; }.search-row { grid-template-columns: 1fr; gap: 11px; padding: 20px 0; }.search-categories { text-align: left; }.section { padding: 78px 0; }.section-heading, .catalog-top { display: block; }.section-heading p, .catalog-intro p { margin-top: 27px; }.category-grid { margin-top: 37px; grid-template-columns: repeat(2, 1fr); }.category-card { min-height: 180px; padding: 18px 16px; }.category-icon { margin: 22px 0 15px; }.catalog-toolbar { align-items: flex-start; flex-direction: column; margin-top: 37px; }.brand-select { width: 100%; justify-content: space-between; }.brand-select select { flex: 1; text-align: right; }.product-grid { grid-template-columns: 1fr 1fr; gap: 9px; }.product-visual { height: 175px; }.product-shape { transform: scale(.72); }.product-sand .product-shape, .product-red .product-shape, .product-lilac .product-shape, .product-orange .product-shape { transform: scale(.65) rotate(-8deg); }.product-info { min-height: 150px; padding: 13px 11px; }.product-info h3 { font-size: 13px; }.product-info p { font-size: 10px; }.product-code { left: 11px; top: 12px; }.product-note { left: 11px; bottom: 11px; font-size: 7px; }.catalog-footer { align-items: flex-start; flex-direction: column; gap: 19px; }.solutions-intro { display: block; }.solutions-intro p { margin-top: 26px; }.solution-list { margin-top: 48px; }.solution-item { grid-template-columns: 30px 1fr 20px; gap: 14px; padding: 21px 0; }.solution-item h3 { font-size: 16px; }.solution-item p { font-size: 11px; }.brand-grid { grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 38px; }.brand-card { min-height: 145px; padding: 17px; }.brand-card:last-child { grid-column: span 2; }.brand-card strong { font-size: 21px; }.about-grid { grid-template-columns: 1fr; gap: 22px; }.about-number { position: absolute; opacity: .5; margin-top: -20px; }.about-aside { border-left: 0; border-top: 1px solid #d4dbcc; padding: 27px 0 0; display: flex; align-items: center; gap: 18px; }.aside-circle { width: 84px; height: 84px; font-size: 34px; }.about-aside p { margin: 0; }.contact-section { padding: 80px 0; }.contact-grid { grid-template-columns: 1fr; gap: 36px; }.contact-form { padding: 20px; }.footer-main { grid-template-columns: 1fr 1fr; gap: 35px 15px; padding-bottom: 40px; }.footer-note { grid-column: span 2; grid-row: 2; }.footer-links { justify-content: flex-end; gap: 15px; }.footer-bottom { flex-direction: column; gap: 12px; }.quote-drawer { padding: 24px; }.drawer-heading h2 { font-size: 35px; } }

/* Mr.Dass brand system and supplier catalogue additions */
:root { --ink: #071b35; --muted: #58728a; --paper: #f7fbfd; --line: #d5e8ef; --lime: #39c8ef; --green: #118fc2; --cream: #eaf8fc; --dark: #071b35; }
body { background: var(--paper); }
.topline { background: var(--ink); }
.topline-link { color: #58d9ff; }
.site-header { background: rgba(247,251,253,.96); border-color: var(--line); }
.brand-mark { width: 92px; min-height: 58px; justify-content: flex-start; }
.brand-logo { display: block; width: 84px; height: 58px; object-fit: contain; object-position: center; }
.footer-brand { width: 110px; }
.footer-brand .brand-logo { width: 102px; height: 70px; }
.hero { background: linear-gradient(135deg, #e6f8fd 0%, #f7fbfd 53%, #c7f2fb 100%); }
.hero::after { background: rgba(30,181,225,.08); }
.hero-art.hero-logo-art { min-height: 530px; display: grid; place-items: center; isolation: isolate; }
.hero-logo-ring { position: absolute; width: min(520px, 86%); aspect-ratio: 1; border: 1px solid rgba(0,157,211,.3); border-radius: 50%; box-shadow: 0 0 0 24px rgba(57,200,239,.07), 0 0 0 52px rgba(57,200,239,.045); }
.hero-logo { position: relative; z-index: 2; width: min(560px, 100%); height: auto; filter: drop-shadow(0 22px 30px rgba(7,27,53,.18)); }
.hero-logo-panel { position: absolute; z-index: 3; right: 5%; bottom: 42px; display: flex; flex-direction: column; gap: 3px; padding: 14px 16px; border-left: 2px solid var(--lime); background: rgba(247,251,253,.86); color: var(--ink); }
.hero-logo-panel span, .hero-logo-panel small { font-family: "DM Mono", monospace; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; color: #5b7890; }
.hero-logo-panel strong { font-family: "Space Grotesk", sans-serif; font-size: 22px; letter-spacing: -.06em; }
.search-band { background: #c7f3fb; }
.category-card:hover, .category-card.active { background: #dff7fc; }
.category-icon { color: #0b9dcc; }
.catalog-section { background: #e9f8fc; }
.catalog-toolbar { border-color: #c8e2eb; }
.brands-section { background: #d9f2f8; }
.brand-primary { background: #38c8ef; }
.brand-teal { background: #83d8eb; }
.brand-blue { background: #a8d3ed; }
.brand-ink { background: #082747; }
.brand-sand { background: #d7edf3; }
.contact-section { background: #3bc9ef; }
.contact-copy > p, .contact-details { color: #185f7c; }
.contact-form input, .contact-form textarea { border-color: #8cdced; }
.button-dark { background: var(--ink); }
.button-light { background: #f7fbfd; border-color: #badfe9; }
.product-visual.has-image { background: #f8fcfd; }
.product-image { display: block; width: 100%; height: 100%; object-fit: contain; padding: 32px; }
.product-visual.has-image .product-note { background: rgba(247,251,253,.86); padding: 5px 7px; }
.source-link { position: absolute; right: 15px; bottom: 13px; z-index: 2; color: var(--ink); font-family: "DM Mono", monospace; font-size: 8px; text-transform: uppercase; letter-spacing: .03em; text-decoration: none; background: rgba(247,251,253,.9); padding: 5px 6px; }
.source-link span { color: #058fbc; font-size: 12px; }
.catalog-more { min-height: 58px; display: flex; justify-content: center; align-items: center; padding-top: 26px; }
.catalog-more .button { padding: 13px 18px; }
.mini-product-image { width: 45px; height: 55px; flex: 0 0 auto; object-fit: contain; background: #e7f8fc; }
.quote-item-copy { min-width: 0; flex: 1; }
.quote-remove { flex: 0 0 auto; width: 27px; height: 27px; border: 1px solid #b4d9e3; border-radius: 50%; background: transparent; color: #4f7790; font-size: 18px; line-height: 1; }
.quote-remove:hover, .drawer-close:hover { background: #dff7fc; color: var(--ink); }
.drawer-backdrop { background: rgba(7,27,53,.52); }
.drawer-backdrop[hidden] { display: none !important; }
.drawer-close { border: 1px solid #b4d9e3; border-radius: 50%; width: 38px; height: 38px; color: #3b6780; }
.drawer-empty > span { border-color: #a9d9e5; color: #078db9; }
@media (max-width: 700px) {
  .brand-mark { width: 72px; min-height: 52px; }
  .brand-logo { width: 68px; height: 52px; }
  .hero-art.hero-logo-art { min-height: 360px; margin: 15px -15px 0 0; }
  .hero-logo { width: 92%; }
  .hero-logo-ring { width: 76%; }
  .hero-logo-panel { right: 2%; bottom: 10px; }
  .hero-logo-panel strong { font-size: 17px; }
  .product-image { padding: 21px; }
  .source-link { right: 8px; bottom: 8px; font-size: 7px; }
}
