:root{
  --green:#003d2c;
  --green-deep:#002d21;
  --ink:#122d25;
  --muted:#35463c;
  --paper:#faf8f3;
  --gold:#cfac66;
  --line:#e5e1d8;
  font-family:"Inter","Inter Display",Arial,sans-serif;
  font-size:clamp(12px,calc((100vw - 32px)/77.875),20.5457px);
  font-optical-sizing:none;
  font-variation-settings:"opsz" 14;
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#061a15}
body{padding:16px}
button,input,textarea{font:inherit}
button,a{color:inherit}
a{text-decoration:none}
button{border:0;cursor:pointer}
img{display:block;max-width:100%}
p,h1,h2,h3,h4,dl,dd{margin:0}
.site-shell{max-width:1600px;margin:0 auto;border-radius:1.2rem;overflow:hidden;background:var(--paper)}

.brand{display:inline-flex;align-items:center;gap:.75rem;flex-shrink:0}
.brand-bottle{width:1.5rem;height:3.375rem;flex:0 0 auto}
.brand-copy{display:flex;flex-direction:column;gap:.125rem}
.brand-name{font-size:1.4375rem;line-height:1.08;letter-spacing:-.015em;font-weight:600;white-space:nowrap}
.brand-tagline{font-size:.5rem;line-height:1.25;letter-spacing:-.035em;font-weight:500;white-space:nowrap}

.button{min-height:3rem;display:inline-flex;justify-content:center;align-items:center;gap:.75rem;padding:.75rem 1.375rem;border:1px solid transparent;border-radius:.375rem;font-size:.875rem;line-height:1.2;font-weight:500;white-space:nowrap}
.button-gold{color:#1a2a1f;border-color:#c7a15d;background:linear-gradient(115deg,#d7b977,#caa25f);box-shadow:inset 0 0 0 1px #e2c58d40}

.icon-button{display:inline-grid;place-items:center;padding:0;background:none;color:inherit;width:1.7rem;height:2.75rem}
.icon{width:1.4rem;height:1.4rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.page-hero{position:relative;min-height:16rem;color:#fff;background:#003d2c;isolation:isolate;display:flex;align-items:center}
.page-hero .hero-photo{position:absolute;inset:0 0 0 auto;width:64%;height:100%;object-fit:cover;object-position:center;z-index:-3}
.page-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#004631 0%,#004631 30%,#00432fd6 48%,#003d2c72 70%,#002d2150 100%)}
.page-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#013d2a25,#001d1636)}
.page-hero-copy{position:relative;width:100%;max-width:43rem;padding:4.5rem 3.375rem;z-index:1}
.page-hero h1{font-family:"Inter Display","Inter",Arial,sans-serif;font-size:2.25rem;line-height:1.25;font-weight:600;letter-spacing:-.02em}
.page-hero p{margin-top:.7rem;font-size:.83rem;line-height:1.72;color:#f1f4ed}
.page-hero .breadcrumb{font-size:.75rem;line-height:1.5;margin-top:.78rem;color:#f2f3ed}
.paper{background:linear-gradient(112deg,#faf8f3,#fbf9f5 52%,#f9f7f1);position:relative}
.paper:before{content:"";pointer-events:none;position:absolute;inset:0;opacity:.018;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.65' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
/* ABOUT */
.about-main{position:relative;z-index:1}
.about-intro{display:grid;grid-template-columns:minmax(0,34.5rem) minmax(0,35rem);gap:2.6rem;padding:4.1rem 3.45rem 3.85rem;align-items:start}
.about-copy{padding-top:.8rem}
.about-copy h2{font-family:"Inter Display","Inter",sans-serif;font-size:2rem;line-height:1.28;font-weight:600;letter-spacing:-.025em;max-width:29rem}
.about-copy .lead{font-size:.82rem;line-height:1.75;color:#26382f;margin-top:1.45rem;max-width:31rem}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:3.15rem;max-width:34rem}
.about-stat{padding-right:1rem}
.about-stat strong{font-size:1.7rem;line-height:1.2;font-weight:600;letter-spacing:-.015em;color:#15342a;display:block}
.about-stat span{font-size:.68rem;line-height:1.7;color:#2f4138;display:block;margin-top:.72rem;max-width:5.3rem}
.about-building{width:100%;height:30.6rem;object-fit:cover;border-radius:.75rem;border:1px solid #d6cec0;box-shadow:0 .1rem .15rem #0001}
.values{padding:3.55rem 3.45rem 4.35rem;background:#fbfaf6;position:relative;z-index:1}
.values-label{text-align:center;font-size:.78rem;font-weight:600;line-height:1.5;letter-spacing:.03em}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:2.1rem}
.value-item{text-align:center;padding:0 2rem;min-height:12.6rem;position:relative;display:flex;flex-direction:column;align-items:center}
.value-item+.value-item:before{content:"";position:absolute;left:0;top:.7rem;bottom:0;width:1px;background:#dfdbd1}
.value-icon{width:3.5rem;height:3.5rem;color:#c8a45e;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.value-item h3{font-size:.92rem;line-height:1.4;font-weight:600;margin-top:1rem}
.value-item p{font-size:.72rem;line-height:1.7;color:#34463d;margin-top:.75rem;max-width:11.5rem}
.why{height:18.3rem;padding:2.25rem 3.45rem 2.4rem;background:linear-gradient(100deg,#00422f,#003526 60%,#00402d);color:#f5f6ef;position:relative;z-index:1}
.why h2{text-align:center;font-size:1.48rem;line-height:1.35;font-weight:500;letter-spacing:-.01em}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:2.1rem}
.why-item{position:relative;text-align:center;min-height:10rem;padding:0 2rem;display:flex;flex-direction:column;align-items:center}
.why-item+.why-item:before{content:"";position:absolute;left:0;top:.2rem;bottom:0;width:1px;background:#e4e8dc1f}
.why-icon{width:2.3rem;height:2.3rem;color:#c7a55f;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.why-item p{font-size:.74rem;line-height:1.55;margin-top:1rem;color:#f3f4ed;max-width:10rem}
/* PRODUCTS */
.products-page{min-height:65rem;padding:6.05rem 3rem 4.2rem;position:relative;z-index:1}
.filter-bar{display:flex;align-items:center;gap:1.55rem;flex-wrap:wrap}
.filter-pill{height:2.72rem;padding:0 1.85rem;border:1px solid #afb6ae;border-radius:999px;background:transparent;font-size:.78rem;line-height:1;color:#20362d}
.filter-pill.is-active{background:#00523b;color:#fff;border-color:#00523b}
.product-grid-primary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.7rem;margin-top:3.1rem}
.product-grid-secondary{width:75.5%;margin:2.8rem auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.85rem}
.product-card{border:1px solid #e1ddd4;border-radius:.58rem;overflow:hidden;background:#fbfaf6;box-shadow:0 .12rem .2rem #00000005}
.product-card img{width:100%;height:22.9rem;object-fit:cover;background:#eeece6}
.product-grid-secondary .product-card img{height:16.6rem}
.product-card-body{min-height:13.9rem;padding:1.35rem 1.3rem 1.4rem;display:flex;flex-direction:column;align-items:flex-start}
.product-card h2{font-size:1.04rem;line-height:1.4;font-weight:600;letter-spacing:-.015em}
.product-card p{font-size:.74rem;line-height:1.72;color:#34423a;margin-top:.72rem;max-width:20rem}
.product-link{display:inline-flex;align-items:center;gap:.4rem;background:none;padding:0;margin-top:auto;font-size:.75rem;font-weight:500;line-height:1.4}
.product-link svg{width:.86rem;height:.86rem;color:#9d7d3e}
/* CONTACT */
.contact-page{min-height:44.1rem;padding:4.05rem 3.1rem 4rem;display:grid;grid-template-columns:19rem 24.5rem minmax(0,21.8rem);gap:3rem;justify-content:space-between;position:relative;z-index:1}
.contact-details{padding-top:.25rem}
.contact-row{display:grid;grid-template-columns:2rem 1fr;gap:1.2rem;margin-bottom:2.28rem;align-items:start}
.contact-row svg{width:1.65rem;height:1.65rem;stroke:#00664d;fill:none;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.contact-row h3{font-size:.78rem;line-height:1.35;font-weight:600}
.contact-row p{font-size:.73rem;line-height:1.72;color:#34453c;margin-top:.5rem}
.socials{display:flex;gap:1rem;margin-top:.25rem}
.social{width:2rem;height:2rem;border:1px solid #4d5c55;border-radius:50%;display:grid;place-items:center;background:transparent}
.social svg{width:1.08rem;height:1.08rem;fill:none;stroke:#3c5047;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.contact-form h2{font-size:.92rem;line-height:1.4;font-weight:600;margin-bottom:1.2rem}
.field{width:100%;height:2.86rem;border:1px solid #d9d7d0;background:#fffdfa;border-radius:.2rem;padding:0 .85rem;margin-bottom:.88rem;font-size:.7rem;color:#25382f;outline:none}
textarea.field{height:8.1rem;padding-top:.85rem;resize:none}
.send-button{margin-top:.22rem;min-height:2.9rem;padding:.7rem 1.45rem;color:#fff;background:linear-gradient(115deg,#006149,#004a36);border-radius:.34rem;font-size:.76rem;display:inline-flex;align-items:center;gap:.55rem}
.send-button svg{width:.9rem;height:.9rem}
.map-panel{width:100%;height:35.7rem;border-radius:.6rem;overflow:hidden;border:1px solid #e1ddd5;background:#ecebe6}
.map-panel img{width:100%;height:100%;object-fit:cover}
/* precision pass */

.page-hero h1{font-size:2.45rem}
.about-intro{grid-template-columns:minmax(0,33.2rem) minmax(0,34.6rem);gap:3.3rem}
.about-copy h2{font-size:2.45rem;line-height:1.23}
.about-copy .lead{font-size:1.02rem;line-height:1.72;margin-top:1.65rem}
.about-stats{margin-top:3rem}
.about-stat strong{font-size:1.82rem}
.about-stat span{font-size:.76rem;line-height:1.65}
.values{padding-top:4.1rem;padding-bottom:5.8rem}
.values-label{font-size:.9rem}
.values-grid{margin-top:2.8rem}
.value-item{min-height:14.8rem}
.value-icon,.value-icon *{stroke:#c8a45e !important}
.value-item h3{font-size:1.1rem}
.value-item p{font-size:.86rem;line-height:1.65;max-width:12.8rem}
.why-icon,.why-icon *{stroke:#c7a55f !important}
.why-item p{font-size:.82rem}
.filter-bar{flex-wrap:nowrap;gap:1.45rem}
.filter-pill{height:3.2rem;padding:0;font-size:.85rem;flex:0 0 auto}
.filter-pill:nth-child(1){width:8.2rem}.filter-pill:nth-child(2){width:13.3rem}.filter-pill:nth-child(3){width:8.3rem}.filter-pill:nth-child(4){width:9.6rem}.filter-pill:nth-child(5){width:13.5rem}.filter-pill:nth-child(6){width:9.6rem}
.product-card img{height:23.8rem}.product-grid-secondary .product-card img{height:17.1rem}
.product-card h2{font-size:1.38rem;white-space:nowrap}
.product-card p{font-size:.9rem;line-height:1.62}
.product-link{font-size:.86rem}
.contact-page{display:flex;grid-template-columns:none;gap:0;justify-content:space-between;align-items:flex-start}
.contact-details{flex:0 0 19rem}.contact-form{flex:0 0 24.5rem}.map-panel{flex:0 0 21.8rem;height:36.7rem}
.contact-row svg,.contact-row svg *{stroke:#00664d !important}
.contact-row h3{font-size:.95rem}.contact-row p{font-size:.82rem;line-height:1.65}
.contact-form h2{font-size:1rem}.field{font-size:.84rem}
.social svg,.social svg *{stroke:#3c5047 !important}
/* final geometry alignment */

.about-stats{margin-top:6rem}
.about-building{margin-top:-.65rem;height:31.25rem}
.products-page{padding-top:6.05rem}
.product-grid-secondary{margin-top:3.45rem}

.send-button{width:11.8rem;padding-left:0;padding-right:0;justify-content:center}
/* product row alignment */
.product-grid-primary{margin-top:3.75rem}
.product-grid-secondary .product-card-body{min-height:15rem}
/* contact coordinate and vertical rhythm alignment */
.contact-page{padding-left:2.4rem;padding-right:2.8rem;justify-content:flex-start}
.contact-details{flex-basis:19rem}
.contact-form{flex-basis:25rem;margin-left:3.9rem}
.map-panel{margin-left:2.95rem}
.contact-row{margin-bottom:3.2rem}
.contact-row:nth-child(1){margin-bottom:4.6rem}
.contact-row:nth-child(3){margin-bottom:3.6rem}
.contact-row:nth-child(4){margin-bottom:4.8rem}
.socials{gap:1.6rem}
.field{height:3rem;margin-bottom:.95rem}
textarea.field{height:10.05rem;margin-bottom:1.45rem}
/* contact exact vertical placement */
.contact-details{position:relative;height:36.7rem;padding-top:0}
.contact-details .contact-row{position:absolute;left:0;right:0;margin:0}
.contact-details .contact-row:nth-child(1){top:.35rem}
.contact-details .contact-row:nth-child(2){top:11.2rem}
.contact-details .contact-row:nth-child(3){top:17.45rem}
.contact-details .contact-row:nth-child(4){top:23.85rem}
.contact-details .socials{position:absolute;left:0;top:32.9rem;margin:0}
.contact-form{position:relative;height:36.7rem}
.contact-form h2{position:absolute;left:0;top:.25rem;margin:0}
.contact-form form{position:absolute;inset:0}
.contact-form .field{position:absolute;left:0;width:100%;margin:0;height:3rem}
.contact-form .f1{top:3.2rem}.contact-form .f2{top:7.15rem}.contact-form .f3{top:11.1rem}.contact-form .f4{top:15.05rem}.contact-form .f5{top:19rem;height:10.05rem}
.contact-form .send-button{position:absolute;left:0;top:30.7rem;margin:0}
.contact-form form{position:absolute;left:0;top:0;width:100%;height:100%}

