:root{
  --pine:#04342C;
  --pine-light:#0B4A3F;
  --cream:#F7F3EC;
  --paper:#FCFBF8;
  --copper:#B4622E;
  --copper-light:#D98A57;
  --gold:#C9A06A;
  --steel:#3D4A52;
  --steel-light:#6B7680;
  --line:#DAD4C6;
  --whatsapp:#25D366;
  --whatsapp-dark:#1B9E4F;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;background:var(--paper);color:var(--pine);line-height:1.5;}
.mono{font-family:'IBM Plex Mono',monospace;}
.display{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:0.02em;}
a{color:inherit;text-decoration:none;}
img,svg{display:block;max-width:100%;}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;}

/* Utility bar */
.utility{background:var(--pine);color:var(--cream);font-size:12px;padding:8px 32px;display:flex;justify-content:space-between;align-items:center;letter-spacing:0.03em;flex-wrap:wrap;gap:6px;}
.utility .mono{opacity:0.85;}
.utility-links{display:flex;gap:24px;}

/* Header */
header{background:var(--paper);border-bottom:1px solid var(--line);padding:18px 32px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;}
.logo{font-family:'Oswald',sans-serif;font-weight:700;font-size:24px;letter-spacing:0.06em;color:var(--pine);}
.logo span{color:var(--copper);}
nav{display:flex;gap:28px;font-size:14px;font-weight:500;}
nav a:hover{color:var(--copper);}
nav a.active{color:var(--copper);}
.header-actions{display:flex;gap:18px;align-items:center;font-size:13px;font-weight:600;}
.btn-quote{background:var(--pine);color:var(--cream);padding:10px 18px;border-radius:24px;font-size:13px;font-weight:600;letter-spacing:0.02em;display:inline-flex;align-items:center;gap:8px;line-height:1;white-space:nowrap;}
.btn-quote:hover{background:var(--whatsapp-dark);}
.btn-quote .wa-icon{width:15px;height:15px;flex-shrink:0;color:var(--whatsapp);}
.btn-quote:hover .wa-icon{color:var(--cream);}
.btn-tech .wa-icon{color:var(--copper-light);}
.btn-tech:hover{background:var(--copper);}
.btn-tech:hover .wa-icon{color:var(--cream);}
.btn-request{background:var(--pine);color:var(--cream);padding:10px 18px;border-radius:24px;font-size:13px;font-weight:700;white-space:nowrap;}
.btn-request:hover{background:var(--pine-light);}
.menu-btn{display:none;flex-direction:column;justify-content:center;gap:4px;width:32px;height:32px;background:none;border:none;cursor:pointer;padding:0;}
.menu-btn span{display:block;width:22px;height:2px;background:var(--pine);}

/* Breadcrumb */
.breadcrumb{padding:16px 32px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--steel-light);border-bottom:1px solid var(--line);}
.breadcrumb a:hover{color:var(--copper);}

/* Hero (small, for interior pages) */
.page-hero{background:var(--pine);color:var(--cream);padding:48px 32px;}
.page-hero .eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:0.12em;color:var(--copper-light);text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.page-hero .eyebrow::before{content:'';width:24px;height:1px;background:var(--copper-light);display:inline-block;}
.page-hero h1{font-size:36px;line-height:1.1;font-weight:700;margin-bottom:10px;}
.page-hero p{color:#D7E4DF;max-width:560px;font-size:15px;}

/* Big hero (home) */
.hero{background:var(--pine);color:var(--cream);position:relative;overflow:hidden;padding:64px 32px 0;}
.blueprint{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0.10;pointer-events:none;}
.hero-inner{position:relative;z-index:2;max-width:1220px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end;}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:0.12em;color:var(--copper-light);text-transform:uppercase;margin-bottom:18px;display:flex;align-items:center;gap:10px;}
.eyebrow::before{content:'';width:24px;height:1px;background:var(--copper-light);display:inline-block;}
.hero-copy{padding-bottom:56px;}
.hero h1{font-family:'Oswald',sans-serif;font-size:38px;line-height:1.18;font-weight:700;text-transform:uppercase;margin-bottom:20px;letter-spacing:0.005em;max-width:560px;}
.hero h1 em{font-style:normal;color:var(--copper-light);}
.hero p{font-size:16px;color:#D7E4DF;max-width:480px;margin-bottom:32px;}
.hero-ctas{display:flex;gap:14px;margin-bottom:36px;flex-wrap:wrap;}
.btn-primary{background:var(--copper);color:var(--cream);padding:15px 28px;font-weight:600;font-size:14px;letter-spacing:0.02em;border-radius:2px;display:inline-block;border:none;cursor:pointer;}
.btn-primary:hover{background:var(--copper-light);}
.btn-outline{border:1px solid rgba(247,243,236,0.35);color:var(--cream);padding:15px 28px;font-weight:600;font-size:14px;border-radius:2px;display:inline-flex;align-items:center;gap:8px;}
.btn-outline:hover{border-color:var(--cream);}
.btn-outline .wa-icon{width:15px;height:15px;color:var(--whatsapp);flex-shrink:0;}
.btn-outline-tech svg{width:15px;height:15px;color:var(--copper-light);flex-shrink:0;}
.hero-tags{display:flex;gap:10px;flex-wrap:wrap;}
.tag{font-family:'IBM Plex Mono',monospace;font-size:11px;border:1px solid rgba(247,243,236,0.25);color:#BFD2CC;padding:6px 12px;border-radius:2px;display:flex;align-items:center;gap:6px;}

.hero-visual{position:relative;height:100%;display:flex;align-items:flex-end;justify-content:center;}
.hero-visual img{width:88%;max-width:460px;filter:drop-shadow(0 24px 40px rgba(0,0,0,0.35));}
.spec-tag{position:absolute;top:12%;left:4%;background:rgba(247,243,236,0.97);color:var(--pine);border-radius:2px;padding:12px 16px;min-width:180px;box-shadow:0 10px 24px rgba(0,0,0,0.25);}
.spec-tag .st-cat{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--copper);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:4px;}
.spec-tag .st-name{font-size:13px;font-weight:700;line-height:1.3;margin-bottom:6px;}
.spec-tag .st-sku{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--steel-light);}

/* Trust bar */
.trust{background:var(--cream);border-bottom:1px solid var(--line);padding:20px 32px;display:flex;justify-content:center;gap:56px;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:10px;font-size:12px;font-family:'IBM Plex Mono',monospace;color:var(--steel);letter-spacing:0.03em;}
.trust-item .dot{width:6px;height:6px;background:var(--copper);border-radius:50%;}

/* Section shared */
section{padding:72px 32px;max-width:1180px;margin:0 auto;}
.section-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:36px;border-bottom:2px solid var(--pine);padding-bottom:16px;flex-wrap:wrap;gap:12px;}
.section-head h2{font-size:30px;}
.section-head .mono{font-size:12px;color:var(--steel-light);letter-spacing:0.06em;}

/* Category grid (signature spec-card) */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;}
.cat-card2{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:22px;position:relative;overflow:hidden;min-height:190px;display:flex;flex-direction:column;justify-content:flex-start;box-shadow:0 1px 3px rgba(4,52,44,0.05);transition:box-shadow 0.15s,border-color 0.15s;}
.cat-card2:hover{box-shadow:0 8px 20px rgba(4,52,44,0.10);border-color:var(--copper);}
.cat-card2.highlight{background:#FBF3EA;border-color:#E9CEB0;}
.cat-card2-body{position:relative;z-index:2;max-width:62%;}
.cat-icon-badge{width:42px;height:42px;border-radius:50%;background:var(--pine);color:var(--cream);display:flex;align-items:center;justify-content:center;margin-bottom:14px;flex-shrink:0;}
.cat-icon-badge svg{width:20px;height:20px;}
.cat-card2.highlight .cat-icon-badge{background:var(--copper);}
.cat-card2 h3{font-size:17px;font-weight:700;line-height:1.25;margin-bottom:8px;color:var(--pine);}
.cat-card2 .go{font-size:12px;font-weight:600;color:var(--copper);}
.cat-card2-media{position:absolute;right:-8px;bottom:-8px;width:44%;max-width:120px;aspect-ratio:1/1;z-index:1;opacity:0.95;}
.cat-card2-media img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(4,52,44,0.15));}
.cat-card2-icon-lg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--line);}
.cat-card2-icon-lg svg{width:70%;height:70%;stroke-width:1.2;}
.cat-card2.highlight .cat-card2-icon-lg{color:#E9CEB0;}

.stat-chip{display:flex;align-items:center;gap:10px;}
.stat-chip-icon{width:38px;height:38px;border-radius:50%;background:var(--cream);border:1px solid var(--line);color:var(--pine);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.stat-chip-icon svg{width:18px;height:18px;}
.stat-chip strong{display:block;font-size:16px;color:var(--pine);line-height:1.2;}
.stat-chip span{font-size:11px;color:var(--steel-light);text-transform:uppercase;letter-spacing:0.04em;}
.stat-divider{width:1px;height:32px;background:var(--line);}

.trust-icons{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:36px;padding-top:28px;border-top:1px solid var(--line);}
.trust-icon-item{display:flex;align-items:flex-start;gap:10px;}
.trust-icon-badge{width:36px;height:36px;border-radius:8px;background:var(--cream);border:1px solid var(--line);color:var(--copper);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.trust-icon-badge svg{width:17px;height:17px;}
.trust-icon-item strong{display:block;font-size:13px;color:var(--pine);margin-bottom:2px;}
.trust-icon-item span{font-size:11px;color:var(--steel-light);line-height:1.4;}

.wa-help-bar{background:var(--pine);padding:16px 32px;text-align:center;}
.wa-help-bar a{color:var(--cream);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:8px;}
.wa-help-bar .wa-icon{width:15px;height:15px;color:var(--whatsapp);}

/* Products */
.prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.prod-card{border:1px solid var(--line);background:var(--paper);}
.prod-media{height:150px;background:var(--cream);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line);position:relative;font-size:40px;}
.prod-media .part-tag{position:absolute;top:8px;left:8px;font-family:'IBM Plex Mono',monospace;font-size:10px;background:var(--pine);color:var(--cream);padding:3px 7px;letter-spacing:0.04em;}
.prod-body{padding:16px;}
.prod-cat{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--copper);letter-spacing:0.06em;margin-bottom:6px;text-transform:uppercase;}
.prod-body h4{font-size:14px;font-weight:600;margin-bottom:8px;line-height:1.35;}
.prod-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;}
.price{font-weight:700;font-size:15px;}
.price-old{font-size:12px;color:var(--steel-light);text-decoration:line-through;margin-right:6px;}
.wa-btn{display:flex;align-items:center;justify-content:center;gap:6px;background:var(--whatsapp);color:#fff;font-size:12px;font-weight:600;padding:9px 12px;border-radius:2px;border:none;cursor:pointer;letter-spacing:0.02em;}
.wa-btn:hover{background:var(--whatsapp-dark);}
.wa-btn-full{width:100%;padding:13px;font-size:14px;}
.wa-icon{width:14px;height:14px;flex-shrink:0;}

/* Filter sidebar (category pages) */
.cat-layout{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:start;}
.category-group{margin-bottom:40px;scroll-margin-top:110px;}
.category-group:last-child{margin-bottom:0;}
.category-group-head{font-size:16px;font-weight:700;color:var(--pine);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--line);display:flex;align-items:baseline;gap:8px;}
.filters{border:1px solid var(--line);padding:20px;position:sticky;top:90px;}
.filters h5{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--steel-light);margin-bottom:12px;}
.filters .f-group{margin-bottom:24px;}
.filters label{display:flex;align-items:center;gap:8px;font-size:13px;margin-bottom:8px;color:var(--steel);cursor:pointer;}

/* Forms / trade CTA */
.trade-cta{background:var(--pine);color:var(--cream);border-radius:2px;padding:56px;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;}
.trade-cta h2{font-size:28px;margin-bottom:12px;}
.trade-cta p{color:#CBDAD4;font-size:14px;max-width:460px;}
.trade-form{background:rgba(247,243,236,0.06);border:1px solid rgba(247,243,236,0.2);padding:24px;}
.trade-form label{font-size:11px;font-family:'IBM Plex Mono',monospace;color:#AFC4BD;letter-spacing:0.05em;display:block;margin-bottom:6px;text-transform:uppercase;}
.trade-form input,.trade-form select,.trade-form textarea{width:100%;background:transparent;border:1px solid rgba(247,243,236,0.3);color:var(--cream);padding:10px;margin-bottom:14px;font-size:13px;font-family:'Inter',sans-serif;}
.trade-form button{width:100%;background:var(--copper);color:var(--cream);padding:12px;font-weight:600;font-size:13px;border:none;letter-spacing:0.03em;cursor:pointer;}
.trade-form button:hover{background:var(--copper-light);}

.form-card{border:1px solid var(--line);padding:32px;max-width:560px;}
.form-card label{font-size:11px;font-family:'IBM Plex Mono',monospace;color:var(--steel-light);letter-spacing:0.05em;display:block;margin-bottom:6px;text-transform:uppercase;}
.form-card input,.form-card select,.form-card textarea{width:100%;border:1px solid var(--line);padding:10px;margin-bottom:16px;font-size:13px;font-family:'Inter',sans-serif;background:var(--paper);}
.form-card button{background:var(--pine);color:var(--cream);padding:12px 26px;font-weight:600;font-size:13px;border:none;letter-spacing:0.03em;cursor:pointer;}
.form-card button:hover{background:var(--pine-light);}

/* Product detail */
.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.product-media-main{background:var(--cream);border:1px solid var(--line);height:420px;display:flex;align-items:center;justify-content:center;font-size:100px;position:relative;}
.product-media-main .part-tag{position:absolute;top:14px;left:14px;font-family:'IBM Plex Mono',monospace;font-size:11px;background:var(--pine);color:var(--cream);padding:5px 10px;letter-spacing:0.04em;}
.product-info h1{font-size:28px;margin-bottom:10px;}
.product-info .price-row{display:flex;align-items:baseline;gap:10px;margin:16px 0 24px;}
.product-info .price-row .price{font-size:24px;}
.product-info .desc{font-size:14px;color:var(--steel);margin-bottom:24px;}
.qty-row{display:flex;gap:12px;align-items:center;margin-bottom:20px;}
.variant-row{margin-bottom:22px;}
.variant-label-head{font-size:11px;font-family:'IBM Plex Mono',monospace;color:var(--steel-light);letter-spacing:0.05em;text-transform:uppercase;display:block;margin-bottom:8px;}
.variant-btns{display:flex;gap:8px;flex-wrap:wrap;}
.variant-btn{border:1px solid var(--line);background:var(--paper);color:var(--pine);padding:9px 16px;font-size:13px;font-weight:500;cursor:pointer;border-radius:2px;}
.variant-btn:hover{border-color:var(--copper);}
.variant-btn.active{background:var(--pine);border-color:var(--pine);color:var(--cream);}

/* Footer */
footer{background:var(--pine);color:#BFD2CC;padding:56px 32px 24px;}
.foot-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:36px;border-bottom:1px solid rgba(247,243,236,0.15);}
.foot-inner h5{color:var(--cream);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:16px;font-family:'IBM Plex Mono',monospace;}
.foot-inner ul{list-style:none;display:flex;flex-direction:column;gap:10px;font-size:13px;}
.foot-inner ul a:hover{color:var(--copper-light);}
.foot-bottom{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding-top:20px;font-size:12px;font-family:'IBM Plex Mono',monospace;color:#8FA8A0;flex-wrap:wrap;gap:10px;}
.foot-social{display:flex;gap:18px;}
.foot-social a{display:inline-flex;align-items:center;gap:6px;color:#8FA8A0;}
.foot-social a:hover{color:var(--copper-light);}
.foot-social svg{width:15px;height:15px;flex-shrink:0;}

/* Policy pages / FAQ */
.policy-content{max-width:760px;}
.policy-content h2{font-size:20px;margin:32px 0 12px;color:var(--pine);}
.policy-content h2:first-child{margin-top:0;}
.policy-content p{font-size:14px;color:var(--steel);line-height:1.7;margin-bottom:14px;}
.policy-content ul{margin:0 0 14px 20px;font-size:14px;color:var(--steel);line-height:1.7;}
.policy-content li{margin-bottom:4px;}
.policy-content strong{color:var(--pine);}
.policy-updated{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--steel-light);margin-bottom:32px;display:block;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item summary{padding:18px 0;font-size:15px;font-weight:600;color:var(--pine);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';font-family:'IBM Plex Mono',monospace;font-size:20px;color:var(--copper);flex-shrink:0;transition:transform 0.15s;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item p{font-size:14px;color:var(--steel);line-height:1.7;padding-bottom:18px;max-width:640px;}

@media(max-width:900px){
  header{padding:14px 20px;}
  .utility{padding:8px 20px;font-size:11px;}
  .utility-links{gap:14px;}
  .hero{padding:44px 20px 0;}
  .hero h1{font-size:26px;}
  .hero-copy{padding-bottom:32px;}
  .hero-visual img{max-width:280px;}
  .spec-tag{left:2%;top:6%;min-width:150px;padding:10px 12px;}
  section{padding:48px 20px;}
  .hero-inner{grid-template-columns:1fr;}
  .prod-grid{grid-template-columns:repeat(2,1fr);}
  .trade-cta{grid-template-columns:1fr;padding:36px 24px;}
  .foot-inner{grid-template-columns:1fr 1fr;}
  .cat-layout{grid-template-columns:1fr;}
  .filters{position:static;top:auto;margin-bottom:24px;}
  .product-detail{grid-template-columns:1fr;}
  .btn-request{display:none;}
  .btn-tech{display:none;}
  .menu-btn{display:flex;}
  nav{
    display:none;
    position:absolute;top:100%;left:0;right:0;
    background:var(--paper);border-bottom:1px solid var(--line);
    flex-direction:column;gap:0;padding:8px 20px 16px;
    box-shadow:0 8px 16px rgba(4,52,44,0.08);
  }
  nav.open{display:flex;}
  nav a{padding:12px 0;border-bottom:1px solid var(--line);}
  nav a:last-child{border-bottom:none;}
}

@media(max-width:560px){
  .hero h1{font-size:24px;}
  .hero p{font-size:14px;}
  .hero-ctas{flex-direction:column;align-items:stretch;}
  .hero-ctas a{text-align:center;}
  .section-head{flex-direction:column;align-items:flex-start;gap:6px;}
  .trust{gap:16px;padding:16px 20px;}
  .foot-inner{grid-template-columns:1fr;gap:28px;}
  .foot-bottom{flex-direction:column;align-items:flex-start;}
  .btn-quote{padding:9px 14px;font-size:12px;}
  .logo{font-size:20px;}
  .form-card{padding:20px;}
  .variant-btns{gap:6px;}

  /* Category cards: 2-up on phones, smaller icon/text */
  .cat-grid{grid-template-columns:repeat(2,1fr);gap:10px;}
  .cat-card2{padding:14px;min-height:150px;border-radius:10px;}
  .cat-card2-body{max-width:70%;}
  .cat-icon-badge{width:34px;height:34px;margin-bottom:10px;}
  .cat-icon-badge svg{width:16px;height:16px;}
  .cat-card2 h3{font-size:13px;margin-bottom:6px;}
  .cat-card2 .go{font-size:10px;}
  .cat-card2-media{width:52%;max-width:80px;}
  .stat-chip strong{font-size:14px;}
  .trust-icons{grid-template-columns:repeat(2,1fr);gap:16px 12px;}

  /* Product tiles: small squares, image on top, compact text + order button */
  .prod-grid{grid-template-columns:repeat(2,1fr);gap:10px;}
  .prod-card{border-radius:6px;overflow:hidden;}
  .prod-media{height:auto;aspect-ratio:1/1;font-size:26px;}
  .prod-media .part-tag{font-size:8px;padding:2px 5px;}
  .prod-body{padding:8px;}
  .prod-cat{font-size:8px;margin-bottom:3px;}
  .prod-body h4{font-size:11px;line-height:1.3;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;}
  .wa-btn-full{padding:7px;font-size:10px;gap:4px;}
  .wa-icon{width:11px;height:11px;}
}
