/* :root{--forest:#172d22;--forest-2:#213a2c;--cream:#f3f0e8;--paper:#e9e5da;--ink:#202720;--muted:#74786e;--gold:#b99560;--line:rgba(32,39,32,.17);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--gutter:clamp(22px,6vw,94px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}.skip-link{position:absolute;left:12px;top:-60px;z-index:1000;background:white;padding:12px}.skip-link:focus{top:12px}.site-header{height:86px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20;background:var(--cream);border-bottom:1px solid rgba(23,45,34,.08)}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:17px;color:var(--forest);letter-spacing:-2px;padding-right:2px}.brand-name{font-size:12px;font-weight:700;letter-spacing:.13em;line-height:1.45}.brand-name small{display:block;font-size:8px;font-weight:500;letter-spacing:.19em;color:#74796d}.main-nav{display:flex;align-items:center;gap:clamp(18px,2.5vw,38px);font-size:11px;letter-spacing:.06em}.main-nav>a:not(.nav-contact){transition:color .2s}.main-nav>a:hover{color:#9a7744}.nav-contact{padding:12px 16px;border:1px solid var(--forest);display:flex;gap:20px;align-items:center}.menu-toggle{display:none;border:0;background:none;width:42px;height:42px;cursor:pointer}.menu-toggle span{display:block;height:1px;background:var(--forest);width:24px;margin:6px auto}.hero{min-height:min(760px,calc(100svh - 86px));height:680px;max-height:820px;background:var(--forest);position:relative;overflow:hidden;color:white;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background-image:url('https://images.unsplash.com/photo-1562967916-eb82221dfb92?auto=format&fit=crop&w=2200&q=90');background-size:cover;background-position:center 52%;transform:scale(1.025);animation:hero-settle 1.4s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(13,29,21,.91) 0%,rgba(13,29,21,.75) 38%,rgba(13,29,21,.18) 75%,rgba(13,29,21,.08) 100%),linear-gradient(0deg,rgba(13,29,21,.32),transparent 40%)}.hero-content{position:relative;z-index:1;margin-left:var(--gutter);max-width:690px;padding:70px 0 90px}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;font-size:10px;letter-spacing:.18em;font-weight:600;color:#7d806f}.eyebrow>span:first-child:not(.section-number){display:inline-block;width:24px;height:1px;background:var(--gold)}.eyebrow.light{color:#d4d2c5}.hero h1,.section-heading h2,.intro h2,.standards-content h2,.partner-copy h2,.contact-top h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:1.04;margin:25px 0}.hero h1{font-size:clamp(54px,7.2vw,100px)}h1 em,h2 em{font-weight:500;color:#c8ad80}.hero-copy{max-width:435px;color:rgba(255,255,255,.78);font-size:14px;line-height:1.9}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px}.button{min-height:50px;padding:0 19px;display:inline-flex;align-items:center;justify-content:space-between;gap:26px;text-transform:uppercase;font-size:10px;letter-spacing:.09em;font-weight:700;border:1px solid transparent;transition:transform .25s,background .25s,color .25s}.button:hover{transform:translateY(-3px)}.button-light{background:var(--cream);color:var(--forest)}.button-light:hover{background:#fff}.button-dark{background:var(--forest);color:var(--cream)}.button-dark:hover{background:#294b37}.text-link{display:inline-flex;gap:17px;align-items:center;border-bottom:1px solid var(--gold);padding-bottom:6px;font-size:11px;font-weight:600}.light-link{color:#fff;border-color:rgba(201,173,128,.7)}.hero-note{position:absolute;z-index:1;left:var(--gutter);right:var(--gutter);bottom:28px;display:flex;justify-content:space-between;color:rgba(255,255,255,.67);font-size:9px;letter-spacing:.16em;text-transform:uppercase}.hero-vertical{position:absolute;right:25px;top:50%;writing-mode:vertical-rl;transform:translateY(-50%);font-size:8px;letter-spacing:.22em;color:rgba(255,255,255,.7)}.section-pad{padding:clamp(72px,10vw,145px) var(--gutter)}.intro{position:relative;display:grid;grid-template-columns:.8fr 2fr;gap:5vw;overflow:hidden}.intro-label{display:flex;gap:16px;align-items:flex-start;padding-top:15px}.section-number{font-size:10px;color:var(--gold);letter-spacing:.13em}.intro h2,.section-heading h2,.partner-copy h2{font-size:clamp(44px,6vw,76px)}.intro-main{max-width:800px}.intro-bottom{display:flex;align-items:flex-end;gap:7vw;max-width:760px}.intro-bottom p{max-width:490px;color:#666d62;font-size:14px;line-height:1.95;margin:4px 0 0}.intro-stamp{position:absolute;right:var(--gutter);bottom:45px;width:104px;height:104px;border:1px solid rgba(185,149,96,.7);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#7c7c69;transform:rotate(12deg);font-size:7px;letter-spacing:.17em}.intro-stamp b{font-size:20px;font-weight:400;color:var(--gold)}.products-section{background:#e9e6dc}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.section-heading h2{margin-bottom:0}.heading-side{max-width:280px;color:#6f7469;font-size:12px;line-height:1.9;margin:0 0 7px}.catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:50px 0 27px;padding-bottom:20px;border-bottom:1px solid var(--line)}.search-box{display:flex;align-items:center;gap:10px;border-bottom:1px solid #9a9b8d;width:min(260px,100%);padding:8px 0}.search-box>span{font-size:25px;color:#858778}.search-box input{width:100%;min-width:0;border:0;background:transparent;outline:none;font-size:12px;color:var(--ink)}.search-box input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.category-filters{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.filter-button{border:1px solid transparent;background:transparent;padding:9px 13px;font-size:10px;letter-spacing:.04em;cursor:pointer;transition:background .2s,border-color .2s}.filter-button:hover,.filter-button.active{background:var(--cream);border-color:var(--line)}.filter-button.active{color:var(--forest);font-weight:700}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 20px}.product-card{min-width:0}.product-open{display:block;width:100%;text-align:left;border:0;background:transparent;padding:0;cursor:pointer}.product-image-wrap{display:block;position:relative;overflow:hidden;aspect-ratio:1.08/1;background:#d9d4c8}.product-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s}.product-open:hover .product-image{transform:scale(1.055);filter:saturate(1.05)}.product-arrow{position:absolute;right:14px;bottom:14px;width:38px;height:38px;display:grid;place-items:center;background:var(--cream);border-radius:50%;font-size:18px;transform:translateY(8px);opacity:0;transition:all .25s}.product-open:hover .product-arrow,.product-open:focus-visible .product-arrow{opacity:1;transform:translateY(0)}.product-meta{display:flex;align-items:center;gap:10px;margin-top:17px;text-transform:uppercase;font-size:9px;letter-spacing:.13em;color:#7b7d70}.featured-label{color:#967346}.product-title{display:block;font-family:var(--serif);font-size:clamp(21px,2.1vw,28px);line-height:1.3;margin-top:7px}.product-description{display:block;color:#6c7168;font-size:12px;line-height:1.8;margin-top:8px;max-width:350px}.product-cta{display:flex;justify-content:space-between;align-items:center;margin-top:17px;padding-bottom:10px;border-bottom:1px solid rgba(32,39,32,.22);font-size:10px;letter-spacing:.05em;font-weight:700}.product-cta span{font-size:16px;color:#987748}.catalog-foot{display:flex;justify-content:space-between;gap:15px;padding-top:22px;color:#767a6e;font-size:10px;letter-spacing:.04em}.no-results{padding:40px 0;text-align:center;color:#777}.standards-section{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:var(--cream)}.standards-photo{min-height:690px;background:url('https://images.unsplash.com/photo-1604503468506-a8da13d82791?auto=format&fit=crop&w=1300&q=85') center/cover}.standards-content{padding-left:clamp(38px,6vw,95px);padding-right:clamp(38px,6vw,95px);align-self:center}.standards-content h2{font-size:clamp(39px,4.2vw,59px);letter-spacing:-.045em;margin:25px 0}.standards-content h2 em{color:#c6aa7a}.standards-content>p:not(.eyebrow):not(.disclaimer){font-size:12px;line-height:2;color:rgba(243,240,232,.72);max-width:475px}.standard-list{margin-top:34px;border-top:1px solid rgba(243,240,232,.2)}.standard-list>div{display:flex;gap:20px;padding:17px 0;border-bottom:1px solid rgba(243,240,232,.2)}.standard-list>div>span{font-size:9px;color:var(--gold);padding-top:4px}.standard-list p{margin:0;display:flex;flex-direction:column;gap:4px}.standard-list b{font-size:12px;font-weight:600}.standard-list small{font-size:10px;color:rgba(243,240,232,.58)}.disclaimer{font-size:9px;color:rgba(243,240,232,.48);margin-top:24px}.partners-section{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:9vw}.partner-copy h2{margin:24px 0}.partner-copy>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#6b7166;max-width:430px;margin-bottom:30px}.partner-visual{position:relative;padding:0 0 48px 36px}.partner-photo{aspect-ratio:4/5;background:url('https://images.unsplash.com/photo-1555939594-58d7cb561ad1?auto=format&fit=crop&w=1100&q=85') center/cover}.partner-visual:before{content:"";position:absolute;left:0;top:28px;bottom:18px;width:1px;background:var(--gold)}.partner-caption{position:absolute;left:36px;right:0;bottom:0;display:flex;justify-content:space-between;gap:10px;background:var(--cream);padding:16px 0 0;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.partner-caption span:last-child{color:#74796c;text-transform:none;letter-spacing:0}.contact-section{background:#233c2c;color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact-top h2{font-size:clamp(48px,6vw,75px);margin-bottom:0}.contact-top h2 em{color:#c7ab7c}.contact-bottom{align-self:end;padding-bottom:8px}.contact-bottom>p{color:rgba(243,240,232,.7);font-size:12px;line-height:1.9;max-width:440px;margin:0 0 32px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}.contact-details>div{display:flex;flex-direction:column;gap:4px;font-size:12px;overflow-wrap:anywhere}.detail-label{color:#c2a777;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.contact-details a:hover{text-decoration:underline;text-underline-offset:4px}.site-footer{background:#14271d;color:var(--cream);padding:36px var(--gutter) 20px}.footer-brand .brand-mark{color:var(--cream)}.footer-brand .brand-name small{color:#a6ad9d}.site-footer>p{color:rgba(243,240,232,.55);font-size:11px;margin:16px 0 34px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:17px;border-top:1px solid rgba(243,240,232,.15);color:rgba(243,240,232,.55);font-size:9px;letter-spacing:.05em}.footer-bottom a{color:var(--cream)}.product-dialog{border:0;padding:0;width:min(900px,calc(100% - 30px));max-width:none;max-height:90vh;background:var(--cream);color:var(--ink);box-shadow:0 25px 100px #0005}.product-dialog::backdrop{background:rgba(11,24,17,.75);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:14px;top:12px;z-index:2;width:40px;height:40px;border:0;border-radius:50%;background:var(--cream);font-size:28px;cursor:pointer}.dialog-layout{display:grid;grid-template-columns:1fr 1fr;min-height:450px}.dialog-image-wrap{min-height:450px;background:#ddd7ca}.dialog-image-wrap img{width:100%;height:100%;object-fit:cover;position:absolute}.dialog-image-wrap{position:relative}.dialog-info{padding:clamp(28px,5vw,55px);overflow-y:auto}.dialog-info h2{font:500 clamp(34px,4vw,48px)/1.1 var(--serif);margin:15px 0}.dialog-info>p:not(.eyebrow){font-size:12px;color:#6e7368;line-height:1.9}.dialog-info dl{margin:24px 0;border-top:1px solid var(--line)}.dialog-info dl>div{padding:12px 0;border-bottom:1px solid var(--line)}.dialog-info dt{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#927346}.dialog-info dd{margin:3px 0 0;font-size:11px}.dialog-info .dialog-note{font-size:9px;color:#888;margin-bottom:20px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--card-index,0)*45ms)}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes hero-settle{from{transform:scale(1.07);filter:brightness(.8)}to{transform:scale(1.025);filter:brightness(1)}}
@media(min-width:1500px){.hero{height:760px}.hero-content{max-width:780px}.hero h1{font-size:110px}.product-grid{gap:42px 26px}}
@media(max-width:900px){.site-header{height:76px}.main-nav{gap:15px;font-size:10px}.brand-name{font-size:10px}.brand-name small{font-size:7px}.brand-mark{width:37px;height:37px}.hero{min-height:640px;height:calc(88svh - 76px)}.hero h1{font-size:clamp(54px,8.5vw,80px)}.intro{grid-template-columns:.6fr 2fr}.intro-stamp{display:none}.intro-bottom{gap:30px;align-items:flex-start;flex-direction:column}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 18px}.standards-section{grid-template-columns:.8fr 1.2fr}.standards-photo{min-height:600px}.standards-content{padding-top:70px;padding-bottom:70px}.partners-section{gap:5vw}.contact-section{gap:5vw}}
@media(max-width:680px){:root{--gutter:22px}.site-header{height:72px}.menu-toggle{display:block;z-index:22}.main-nav{position:fixed;inset:0;background:var(--cream);display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:0;padding:90px var(--gutter) 35px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .25s,visibility .25s;z-index:21;font-family:var(--serif);font-size:28px;letter-spacing:-.02em}.main-nav.is-open{opacity:1;visibility:visible;transform:translateY(0)}.main-nav>a:not(.nav-contact){padding:16px 0;border-bottom:1px solid var(--line)}.nav-contact{margin-top:24px;font-family:var(--sans);font-size:11px;justify-content:space-between}.hero{min-height:690px;height:calc(100svh - 72px);max-height:850px;align-items:flex-end}.hero-image{background-position:58% center}.hero-shade{background:linear-gradient(0deg,rgba(13,29,21,.95) 0%,rgba(13,29,21,.74) 43%,rgba(13,29,21,.15) 100%)}.hero-content{margin:0;padding:0 var(--gutter) 95px;max-width:100%}.hero h1{font-size:clamp(48px,12vw,74px);margin:22px 0}.hero-copy{font-size:12px;max-width:370px}.hero-actions{gap:20px;align-items:flex-start;flex-direction:column;margin-top:25px}.hero-vertical{display:none}.hero-note{bottom:20px;font-size:8px}.section-pad{padding:75px var(--gutter)}.intro{display:block}.intro-label{padding:0}.intro h2,.section-heading h2,.partner-copy h2{font-size:clamp(42px,11vw,62px);margin:26px 0}.intro-bottom{gap:23px}.intro-bottom p{font-size:13px}.section-heading{display:block}.heading-side{margin-top:24px;max-width:370px}.catalog-tools{align-items:stretch;flex-direction:column;margin-top:32px;gap:17px}.search-box{width:100%}.category-filters{justify-content:flex-start;gap:5px}.filter-button{padding:8px 10px}.product-grid{gap:30px 12px}.product-image-wrap{aspect-ratio:.83/1}.product-meta{font-size:8px;letter-spacing:.09em;flex-wrap:wrap;gap:7px;margin-top:12px}.product-title{font-size:21px}.product-description{font-size:11px}.product-cta{font-size:9px;margin-top:13px}.catalog-foot{font-size:9px;flex-direction:column;gap:6px}.standards-section{display:flex;flex-direction:column}.standards-photo{min-height:360px;order:0;background-position:center 45%}.standards-content{padding:68px var(--gutter) 75px}.standards-content h2{font-size:clamp(38px,9vw,52px)}.partners-section{display:flex;flex-direction:column;align-items:stretch;gap:45px}.partner-visual{padding-left:18px;padding-bottom:40px}.partner-photo{aspect-ratio:4/4.5}.partner-caption{left:18px;flex-wrap:wrap;font-size:8px}.contact-section{display:block}.contact-top h2{font-size:clamp(48px,12vw,67px);margin-bottom:35px}.contact-bottom>p{font-size:12px}.contact-details{gap:20px 15px}.contact-details>div{font-size:11px}.footer-bottom{display:grid;grid-template-columns:1fr auto;gap:10px}.footer-bottom span:last-child{grid-column:1/-1}.dialog-layout{grid-template-columns:1fr}.dialog-image-wrap{min-height:280px;height:280px}.dialog-info{padding:28px 23px}.dialog-info h2{font-size:38px}.product-dialog{max-height:92vh;overflow:auto}}
@media(max-width:380px){.brand{gap:8px}.brand-name{font-size:9px;letter-spacing:.09em}.brand-name small{letter-spacing:.12em}.brand-mark{width:33px;height:33px}.product-grid{grid-template-columns:1fr}.product-image-wrap{aspect-ratio:1.15/1}.product-description{max-width:100%}.contact-details{grid-template-columns:1fr}.hero h1{font-size:47px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}


.brand-logo {
  height: 55px;
  width: auto;
  max-width: 220px;
  object-fit: contain;
  display: block;
} */


:root {
    --forest: #172d22;
    --forest-2: #213a2c;
    --cream: #f3f0e8;
    --paper: #e9e5da;
    --ink: #202720;
    --muted: #74786e;
    --gold: #b99560;
    --line: rgba(32,39,32,.17);
    --serif: "Playfair Display",Georgia,serif;
    --sans: "DM Sans",Arial,sans-serif;
    --gutter: clamp(22px,6vw,94px);
}

\* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 88px;
}

body {
    margin: 0;
    background: var(--cream);
    color: var(--ink);
    font-family: var(--sans);
    font-size: 15px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}

body.menu-open {
    overflow: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

button,input {
    font: inherit;
}

button {
    color: inherit;
}

.skip-link {
    position: absolute;
    left: 12px;
    top: -60px;
    z-index: 1000;
    background: white;
    padding: 12px;
}

.skip-link:focus {
    top: 12px;
}

.site-header {
    height: 86px;
    padding: 0 var(--gutter);
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 20;
    background: var(--cream);
    border-bottom: 1px solid rgba(23,45,34,.08);
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: max-content;
}

.brand-mark {
    width: 42px;
    height: 42px;
    border: 1px solid var(--gold);
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-family: var(--serif);
    font-size: 17px;
    color: var(--forest);
    letter-spacing: -2px;
    padding-right: 2px;
}

.brand-name {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .13em;
    line-height: 1.45;
}

.brand-name small {
    display: block;
    font-size: 8px;
    font-weight: 500;
    letter-spacing: .19em;
    color: #74796d;
}

.main-nav {
    display: flex;
    align-items: center;
    gap: clamp(18px,2.5vw,38px);
    font-size: 11px;
    letter-spacing: .06em;
}

.main-nav>a:not(.nav-contact) {
    transition: color .2s;
}

.main-nav>a:hover {
    color: #9a7744;
}

.nav-contact {
    padding: 12px 16px;
    border: 1px solid var(--forest);
    display: flex;
    gap: 20px;
    align-items: center;
}

.menu-toggle {
    display: none;
    border: 0;
    background: none;
    width: 42px;
    height: 42px;
    cursor: pointer;
}

.menu-toggle span {
    display: block;
    height: 1px;
    background: var(--forest);
    width: 24px;
    margin: 6px auto;
}

.hero {
    min-height: min(760px,calc(100svh - 86px));
    height: 680px;
    max-height: 820px;
    background: var(--forest);
    position: relative;
    overflow: hidden;
    color: white;
    display: flex;
    align-items: center;
}

.hero-image,.hero-shade {
    position: absolute;
    inset: 0;
}

.hero-image {
    /* background-image: url('https\://images.unsplash.com/photo-1562967916-eb82221dfb92?auto=format&fit=crop&w=2200&q=90'); */
    background-image: url('./images/company/hero\ image.avif');
    background-size: cover;
    background-position: center 52%;
    transform: scale(1.025);
    animation: hero-settle 1.4s ease-out both;
}

.hero-shade {
    background: linear-gradient(90deg,rgba(13,29,21,.91) 0%,rgba(13,29,21,.75) 38%,rgba(13,29,21,.18) 75%,rgba(13,29,21,.08) 100%),linear-gradient(0deg,rgba(13,29,21,.32),transparent 40%);
}

.hero-content {
    position: relative;
    z-index: 1;
    margin-left: var(--gutter);
    max-width: 690px;
    padding: 70px 0 90px;
}

.eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: .18em;
    font-weight: 600;
    color: #7d806f;
}

.eyebrow>span:first-child:not(.section-number) {
    display: inline-block;
    width: 24px;
    height: 1px;
    background: var(--gold);
}

.eyebrow\.light {
    color: #d4d2c5;
}

.hero h1,.section-heading h2,.intro h2,.standards-content h2,.partner-copy h2,.contact-top h2 {
    font-family: var(--serif);
    font-weight: 500;
    letter-spacing: -.045em;
    line-height: 1.04;
    margin: 25px 0;
}

.hero h1 {
    font-size: clamp(54px,7.2vw,100px);
}

h1 em,h2 em {
    font-weight: 500;
    color: #c8ad80;
}

.hero-copy {
    max-width: 435px;
    color: rgba(255,255,255,.78);
    font-size: 14px;
    line-height: 1.9;
}

.hero-actions {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-top: 34px;
}

/* .button {
    min-height: 50px;
    padding: 0 19px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 26px;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: .09em;
    font-weight: 700;
    border: 1px solid transparent;
    transition: transform .25s,*background* .25s,color .25s;
} */


.button {
    min-height: 50px;
    padding: 0 19px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 26px;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: .09em;
    font-weight: 700;
    border: 1px solid transparent;
    transition: transform .25s, background .25s, color .25s;
}

.button:hover {
    transform: translateY(-3px);
}

.button-light {
    background: var(--cream);
    color: var(--forest);
}

.button-light:hover {
    background: #fff;
}

.button-dark {
    background: var(--forest);
    color: var(--cream);
}

.button-dark:hover {
    background: #294b37;
}

.text-link {
    display: inline-flex;
    gap: 17px;
    align-items: center;
    border-bottom: 1px solid var(--gold);
    padding-bottom: 6px;
    font-size: 11px;
    font-weight: 600;
}

.light-link {
    color: #fff;
    border-color: rgba(201,173,128,.7);
}

.hero-note {
    position: absolute;
    z-index: 1;
    left: var(--gutter);
    right: var(--gutter);
    bottom: 28px;
    display: flex;
    justify-content: space-between;
    color: rgba(255,255,255,.67);
    font-size: 9px;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.hero-vertical {
    position: absolute;
    right: 25px;
    top: 50%;
    writing-mode: vertical-rl;
    transform: translateY(-50%);
    font-size: 8px;
    letter-spacing: .22em;
    color: rgba(255,255,255,.7);
}

.section-pad {
    padding: clamp(72px,10vw,145px) var(--gutter);
}

.intro {
    position: relative;
    display: grid;
    grid-template-columns: .8fr 2fr;
    gap: 5vw;
    overflow: hidden;
}

.intro-label {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding-top: 15px;
}

.section-number {
    font-size: 10px;
    color: var(--gold);
    letter-spacing: .13em;
}

.intro h2,.section-heading h2,.partner-copy h2 {
    font-size: clamp(44px,6vw,76px);
}

.intro-main {
    max-width: 800px;
}

.intro-bottom {
    display: flex;
    align-items: flex-end;
    gap: 7vw;
    max-width: 760px;
}

.intro-bottom p {
    max-width: 490px;
    color: #666d62;
    font-size: 14px;
    line-height: 1.95;
    margin: 4px 0 0;
}

.intro-stamp {
    position: absolute;
    right: var(--gutter);
    bottom: 45px;
    width: 104px;
    height: 104px;
    border: 1px solid rgba(185,149,96,.7);
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    color: #7c7c69;
    transform: rotate(12deg);
    font-size: 7px;
    letter-spacing: .17em;
}

.intro-stamp b {
    font-size: 20px;
    font-weight: 400;
    color: var(--gold);
}

.products-section {
    background: #e9e6dc;
}

.section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
}

.section-heading h2 {
    margin-bottom: 0;
}

.heading-side {
    max-width: 280px;
    color: #6f7469;
    font-size: 12px;
    line-height: 1.9;
    margin: 0 0 7px;
}

.catalog-tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin: 50px 0 27px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
}

.search-box {
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #9a9b8d;
    width: min(260px,100%);
    padding: 8px 0;
}

.search-box>span {
    font-size: 25px;
    color: #858778;
}

.search-box input {
    width: 100%;
    min-width: 0;
    border: 0;
    background: transparent;
    outline: none;
    font-size: 12px;
    color: var(--ink);
}

.search-box input:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 4px;
}

.category-filters {
    display: flex;
    gap: 7px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

/* .filter-button {
    border: 1px solid transparent;
    background: transparent;
    padding: 9px 13px;
    font-size: 10px;
    letter-spacing: .04em;
    cursor: pointer;
    transition: *background* .2s,border-color .2s;
} */

.filter-button {
    border: 1px solid transparent;
    background: transparent;
    padding: 9px 13px;
    font-size: 10px;
    letter-spacing: .04em;
    cursor: pointer;
    transition: background .2s, border-color .2s;
}


.filter-button:hover,.filter-button.active {
    background: var(--cream);
    border-color: var(--line);
}

.filter-button.active {
    color: var(--forest);
    font-weight: 700;
}

.product-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 36px 20px;
}

/* .product-card {
    min-width: 0;
}

.product-open {
    display: block;
    width: 100%;
    text-align: left;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
} */


/* Align product card bottoms */
.product-card {
    min-width: 0;
    height: 100%;
}

.product-open {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    text-align: left;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
}

.product-description {
    flex: 1;
}

.product-cta {
    margin-top: 17px;
    margin-bottom: 0;
    flex-shrink: 0;
}


.product-image-wrap {
    display: block;
    position: relative;
    overflow: hidden;
    aspect-ratio: 1.08/1;
    background: #d9d4c8;
}

.product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .7s cubic-bezier(.2,.7,.2,1),filter .5s;
}

.product-open:hover .product-image {
    transform: scale(1.055);
    filter: saturate(1.05);
}

.product-arrow {
    position: absolute;
    right: 14px;
    bottom: 14px;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    background: var(--cream);
    border-radius: 50%;
    font-size: 18px;
    transform: translateY(8px);
    opacity: 0;
    transition: all .25s;
}

.product-open:hover .product-arrow,.product-open:focus-visible .product-arrow {
    opacity: 1;
    transform: translateY(0);
}

.product-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 17px;
    text-transform: uppercase;
    font-size: 9px;
    letter-spacing: .13em;
    color: #7b7d70;
}

.featured-label {
    color: #967346;
}

.product-title {
    display: block;
    font-family: var(--serif);
    font-size: clamp(21px,2.1vw,28px);
    line-height: 1.3;
    margin-top: 7px;
}

.product-description {
    display: block;
    color: #6c7168;
    font-size: 12px;
    line-height: 1.8;
    margin-top: 8px;
    max-width: 350px;
}

.product-cta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 17px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(32,39,32,.22);
    font-size: 10px;
    letter-spacing: .05em;
    font-weight: 700;
}

.product-cta span {
    font-size: 16px;
    color: #987748;
}

.catalog-foot {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding-top: 22px;
    color: #767a6e;
    font-size: 10px;
    letter-spacing: .04em;
}

.no-results {
    padding: 40px 0;
    text-align: center;
    color: #777;
}

.standards-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: var(--forest);
    color: var(--cream);
}

.standards-photo {
    min-height: 690px;
    /* background: url('https\://images.unsplash.com/photo-1604503468506-a8da13d82791?auto=format&fit=crop&w=1300&q=85') center/cover; */
    background: url('./images/company/our\ promise.png') center / cover no-repeat;
}

.standards-content {
    padding-left: clamp(38px,6vw,95px);
    padding-right: clamp(38px,6vw,95px);
    align-self: center;
}

.standards-content h2 {
    font-size: clamp(39px,4.2vw,59px);
    letter-spacing: -.045em;
    margin: 25px 0;
}

.standards-content h2 em {
    color: #c6aa7a;
}

.standards-content>p:not(.eyebrow):not(.disclaimer) {
    font-size: 12px;
    line-height: 2;
    color: rgba(243,240,232,.72);
    max-width: 475px;
}

.standard-list {
    margin-top: 34px;
    border-top: 1px solid rgba(243,240,232,.2);
}

.standard-list>div {
    display: flex;
    gap: 20px;
    padding: 17px 0;
    border-bottom: 1px solid rgba(243,240,232,.2);
}

.standard-list>div>span {
    font-size: 9px;
    color: var(--gold);
    padding-top: 4px;
}

.standard-list p {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.standard-list b {
    font-size: 12px;
    font-weight: 600;
}

.standard-list small {
    font-size: 10px;
    color: rgba(243,240,232,.58);
}

.disclaimer {
    font-size: 9px;
    color: rgba(243,240,232,.48);
    margin-top: 24px;
}

.partners-section {
    display: grid;
    grid-template-columns: 1fr .9fr;
    align-items: center;
    gap: 9vw;
}

.partner-copy h2 {
    margin: 24px 0;
}

.partner-copy>p:not(.eyebrow) {
    font-size: 13px;
    line-height: 1.9;
    color: #6b7166;
    max-width: 430px;
    margin-bottom: 30px;
}

.partner-visual {
    position: relative;
    padding: 0 0 48px 36px;
}

.partner-photo {
    aspect-ratio: 4/5;
    /* background: url('https\://images.unsplash.com/photo-1555939594-58d7cb561ad1?auto=format&fit=crop&w=1100&q=85') center/cover; */
    background: url('./images/company/04.avif') center / cover no-repeat;

}

.partner-visual:before {
    content: "";
    position: absolute;
    left: 0;
    top: 28px;
    bottom: 18px;
    width: 1px;
    background: var(--gold);
}

.partner-caption {
    position: absolute;
    left: 36px;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    gap: 10px;
    background: var(--cream);
    padding: 16px 0 0;
    font-size: 9px;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.partner-caption span:last-child {
    color: #74796c;
    text-transform: none;
    letter-spacing: 0;
}

.contact-section {
    background: #233c2c;
    color: var(--cream);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9vw;
}

.contact-top h2 {
    font-size: clamp(48px,6vw,75px);
    margin-bottom: 0;
}

.contact-top h2 em {
    color: #c7ab7c;
}

.contact-bottom {
    align-self: end;
    padding-bottom: 8px;
}

.contact-bottom>p {
    color: rgba(243,240,232,.7);
    font-size: 12px;
    line-height: 1.9;
    max-width: 440px;
    margin: 0 0 32px;
}

.contact-details {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px 28px;
}

.contact-details>div {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 12px;
    overflow-wrap: anywhere;
}

.detail-label {
    color: #c2a777;
    font-size: 9px;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.contact-details a:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
}

.site-footer {
    background: #14271d;
    color: var(--cream);
    padding: 36px var(--gutter) 20px;
}

.footer-brand .brand-mark {
    color: var(--cream);
}

.footer-brand .brand-name small {
    color: #a6ad9d;
}

.site-footer>p {
    color: rgba(243,240,232,.55);
    font-size: 11px;
    margin: 16px 0 34px;
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding-top: 17px;
    border-top: 1px solid rgba(243,240,232,.15);
    color: rgba(243,240,232,.55);
    font-size: 9px;
    letter-spacing: .05em;
}

.footer-bottom a {
    color: var(--cream);
}

.product-dialog {
    border: 0;
    padding: 0;
    width: min(900px,calc(100% - 30px));
    max-width: none;
    max-height: 90vh;
    background: var(--cream);
    color: var(--ink);
    box-shadow: 0 25px 100px #0005;
}

.product-dialog::backdrop {
    background: rgba(11,24,17,.75);
    backdrop-filter: blur(4px);
}

.dialog-close {
    position: absolute;
    right: 14px;
    top: 12px;
    z-index: 2;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: var(--cream);
    font-size: 28px;
    cursor: pointer;
}

.dialog-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 450px;
}

.dialog-image-wrap {
    min-height: 450px;
    background: #ddd7ca;
}

.dialog-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
}

.dialog-image-wrap {
    position: relative;
}

.dialog-info {
    padding: clamp(28px,5vw,55px);
    overflow-y: auto;
}

.dialog-info h2 {
    font: 500 clamp(34px,4vw,48px)/1.1 var(--serif);
    margin: 15px 0;
}

.dialog-info>p:not(.eyebrow) {
    font-size: 12px;
    color: #6e7368;
    line-height: 1.9;
}

.dialog-info dl {
    margin: 24px 0;
    border-top: 1px solid var(--line);
}

.dialog-info dl>div {
    padding: 12px 0;
    border-bottom: 1px solid var(--line);
}

.dialog-info dt {
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .12em;
    color: #927346;
}

.dialog-info dd {
    margin: 3px 0 0;
    font-size: 11px;
}

.dialog-info .dialog-note {
    font-size: 9px;
    color: #888;
    margin-bottom: 20px;
}

.reveal {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);
    transition-delay: calc(var(--card-index,0)\*45ms);
}

.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@keyframes hero-settle {
    from {
        transform: scale(1.07);
        filter: brightness(.8);
    }

    to {
        transform: scale(1.025);
        filter: brightness(1);
    }

}

@media(min-width:1500px) {
    .hero {
        height: 760px;
    }

    .hero-content {
        max-width: 780px;
    }

    .hero h1 {
        font-size: 110px;
    }

    .product-grid {
        gap: 42px 26px;
    }

}

@media(max-width:900px) {
    .site-header {
        height: 76px;
    }

    .main-nav {
        gap: 15px;
        font-size: 10px;
    }

    .brand-name {
        font-size: 10px;
    }

    .brand-name small {
        font-size: 7px;
    }

    .brand-mark {
        width: 37px;
        height: 37px;
    }

    .hero {
        min-height: 640px;
        height: calc(88svh - 76px);
    }

    .hero h1 {
        font-size: clamp(54px,8.5vw,80px);
    }

    .intro {
        grid-template-columns: .6fr 2fr;
    }

    .intro-stamp {
        display: none;
    }

    .intro-bottom {
        gap: 30px;
        align-items: flex-start;
        flex-direction: column;
    }

    .product-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 35px 18px;
    }

    .standards-section {
        grid-template-columns: .8fr 1.2fr;
    }

    .standards-photo {
        min-height: 600px;
    }

    .standards-content {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .partners-section {
        gap: 5vw;
    }

    .contact-section {
        gap: 5vw;
    }

}

@media(max-width:680px) {
    :root {
        --gutter: 22px;
    }

    .site-header {
        height: 72px;
    }

    .menu-toggle {
        display: block;
        z-index: 22;
    }

    .main-nav {
        position: fixed;
        inset: 0;
        background: var(--cream);
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
        gap: 0;
        padding: 90px var(--gutter) 35px;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-8px);
        transition: opacity .25s,transform .25s,visibility .25s;
        z-index: 21;
        font-family: var(--serif);
        font-size: 28px;
        letter-spacing: -.02em;
    }

    .main-nav.is-open {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .main-nav>a:not(.nav-contact) {
        padding: 16px 0;
        border-bottom: 1px solid var(--line);
    }

    .nav-contact {
        margin-top: 24px;
        font-family: var(--sans);
        font-size: 11px;
        justify-content: space-between;
    }

    .hero {
        min-height: 690px;
        height: calc(100svh - 72px);
        max-height: 850px;
        align-items: flex-end;
    }

    .hero-image {
        background-position: 58% center;
    }

    .hero-shade {
        background: linear-gradient(0deg,rgba(13,29,21,.95) 0%,rgba(13,29,21,.74) 43%,rgba(13,29,21,.15) 100%);
    }

    .hero-content {
        margin: 0;
        padding: 0 var(--gutter) 95px;
        max-width: 100%;
    }

    .hero h1 {
        font-size: clamp(48px,12vw,74px);
        margin: 22px 0;
    }

    .hero-copy {
        font-size: 12px;
        max-width: 370px;
    }

    .hero-actions {
        gap: 20px;
        align-items: flex-start;
        flex-direction: column;
        margin-top: 25px;
    }

    .hero-vertical {
        display: none;
    }

    .hero-note {
        bottom: 20px;
        font-size: 8px;
    }

    .section-pad {
        padding: 75px var(--gutter);
    }

    .intro {
        display: block;
    }

    .intro-label {
        padding: 0;
    }

    .intro h2,.section-heading h2,.partner-copy h2 {
        font-size: clamp(42px,11vw,62px);
        margin: 26px 0;
    }

    .intro-bottom {
        gap: 23px;
    }

    .intro-bottom p {
        font-size: 13px;
    }

    .section-heading {
        display: block;
    }

    .heading-side {
        margin-top: 24px;
        max-width: 370px;
    }

    .catalog-tools {
        align-items: stretch;
        flex-direction: column;
        margin-top: 32px;
        gap: 17px;
    }

    .search-box {
        width: 100%;
    }

    .category-filters {
        justify-content: flex-start;
        gap: 5px;
    }

    .filter-button {
        padding: 8px 10px;
    }

    .product-grid {
        gap: 30px 12px;
    }

    .product-image-wrap {
        aspect-ratio: .83/1;
    }

    .product-meta {
        font-size: 8px;
        letter-spacing: .09em;
        flex-wrap: wrap;
        gap: 7px;
        margin-top: 12px;
    }

    .product-title {
        font-size: 21px;
    }

    .product-description {
        font-size: 11px;
    }

    .product-cta {
        font-size: 9px;
        margin-top: 13px;
    }

    .catalog-foot {
        font-size: 9px;
        flex-direction: column;
        gap: 6px;
    }

    .standards-section {
        display: flex;
        flex-direction: column;
    }

    .standards-photo {
        min-height: 360px;
        order: 0;
        background-position: center 45%;
    }

    .standards-content {
        padding: 68px var(--gutter) 75px;
    }

    .standards-content h2 {
        font-size: clamp(38px,9vw,52px);
    }

    .partners-section {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 45px;
    }

    .partner-visual {
        padding-left: 18px;
        padding-bottom: 40px;
    }

    .partner-photo {
        aspect-ratio: 4/4.5;
    }

    .partner-caption {
        left: 18px;
        flex-wrap: wrap;
        font-size: 8px;
    }

    .contact-section {
        display: block;
    }

    .contact-top h2 {
        font-size: clamp(48px,12vw,67px);
        margin-bottom: 35px;
    }

    .contact-bottom>p {
        font-size: 12px;
    }

    .contact-details {
        gap: 20px 15px;
    }

    .contact-details>div {
        font-size: 11px;
    }

    .footer-bottom {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 10px;
    }

    .footer-bottom span:last-child {
        grid-column: 1/-1;
    }

    .dialog-layout {
        grid-template-columns: 1fr;
    }

    .dialog-image-wrap {
        min-height: 280px;
        height: 280px;
    }

    .dialog-info {
        padding: 28px 23px;
    }

    .dialog-info h2 {
        font-size: 38px;
    }

    .product-dialog {
        max-height: 92vh;
        overflow: auto;
    }

}

@media(max-width:380px) {
    .brand {
        gap: 8px;
    }

    .brand-name {
        font-size: 9px;
        letter-spacing: .09em;
    }

    .brand-name small {
        letter-spacing: .12em;
    }

    .brand-mark {
        width: 33px;
        height: 33px;
    }

    .product-grid {
        grid-template-columns: 1fr;
    }

    .product-image-wrap {
        aspect-ratio: 1.15/1;
    }

    .product-description {
        max-width: 100%;
    }

    .contact-details {
        grid-template-columns: 1fr;
    }

    .hero h1 {
        font-size: 47px;
    }

}

@media(prefers-reduced-motion:reduce) {
    \*,\*::before,\*::after {
        scroll-behavior: auto!important;
        animation-duration: .01ms!important;
        animation-iteration-count: 1!important;
        transition-duration: .01ms!important;
    }

    .reveal {
        opacity: 1;
        transform: none;
    }

}





























