/* Public pages — graphite, warm paper and a lime industrial accent. */
.page-intro{padding:32px 0 48px;background:transparent;border:0;overflow:visible}
.page-intro:after{display:none}
.breadcrumbs{gap:12px;flex-wrap:wrap;font-size:12px;line-height:1.6;color:#89928a;margin-bottom:35px}
.breadcrumbs>a:hover{color:#17231f}
.breadcrumbs>span:last-child{color:#536158}
.page-intro .eyebrow{display:inline-flex;align-items:center;background:#e9eee1;color:#46553d;padding:8px 12px;border-radius:999px;font-size:10px;line-height:1.3;letter-spacing:1.5px;margin-bottom:22px}
.page-intro h1{font:750 clamp(38px,4.7vw,66px)/1.08 var(--heading);letter-spacing:-2.8px;max-width:1050px;margin:0 0 24px;color:#17231f;overflow-wrap:normal}
.page-intro p{font-size:16px;line-height:1.8;color:#6e7973;max-width:760px;margin:0}

/* Catalogue */
body[data-page='catalog'] .page-intro{padding-bottom:38px}
body[data-page='catalog'] .catalog{padding-top:24px;min-height:540px}
.catalog-toolbar,body[data-page='catalog'] .catalog-toolbar{gap:20px;padding-bottom:25px;border-bottom:1px solid #dfe5dd;margin-bottom:25px;align-items:center}
.catalog-toolbar .filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;flex:1;padding:0}
.filter{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dfe5dd;border-radius:999px;padding:11px 17px;background:transparent;font-size:12px;line-height:1.4;font-weight:500;white-space:nowrap;color:#5e6c62;transition:background .2s,border-color .2s,color .2s}
.filter:hover{background:#e9eee2;border-color:#cbd5c4;color:#17231f}
.filter.active{background:#17231f;border-color:#17231f;color:#fff}
.filter.active:before{content:'';height:6px;width:6px;flex-shrink:0;border-radius:50%;background:#d7ef73}
.catalog-search.icon-button{height:45px;width:45px;flex-shrink:0;border:1px solid #dfe5dd;border-radius:50%;background:#fff}
.catalog-search.icon-button:hover{background:#d7ef73;border-color:#d7ef73}
.catalog-search svg{width:19px;height:19px}
.search-row{padding:5px 12px 5px 18px;background:#fff;border:1px solid #d6dfcf;border-radius:16px;margin-bottom:25px;gap:13px}
.search-row input{font-size:15px;padding:14px 0;background:transparent}
.search-row>svg{color:#69775f}
.search-row .icon-button{border-radius:50%;width:36px;height:36px}
.catalog-results{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 24px;color:#7b877e;font-size:12px}
.catalog-results strong{font-size:15px;line-height:1.6;display:flex;align-items:center;gap:15px;color:#17231f;font-weight:600}
.catalog-results strong span{font-size:12px;color:#7b877e;font-weight:400;padding-left:15px;border-left:1px solid #d4ddcd}
.products-grid,body[data-page='catalog'] .products-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch}
.product-card{min-width:0;background:#fff;border:1px solid #e0e6db;border-radius:18px;box-shadow:0 2px 5px #17231f03;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,border-color .25s,box-shadow .25s}
.product-card:hover{transform:translateY(-4px);border-color:#c7d4bd;box-shadow:0 15px 35px #17231f08}
.product-card .product-picture{height:auto!important;aspect-ratio:1;width:100%;margin:0;border-radius:0;background:#f3f5f0;border-bottom:1px solid #edf0e8;overflow:hidden}
.product-card .product-picture img{object-fit:contain;width:100%;height:100%;display:block;transition:transform .5s ease}
.product-card .product-picture:hover img{transform:scale(1.035)}
.product-quick-view{bottom:12px;right:12px;border:0;border-radius:999px;padding:10px 13px;background:#17231ff0;color:#fff;font-size:10px;font-weight:500;gap:8px;box-shadow:0 4px 18px #17231f14}
.product-quick-view svg{width:14px;height:14px;color:#d7ef73}
.product-card .product-body{padding:17px 18px 16px;display:flex;flex:1;flex-direction:column;min-width:0}
.product-card .product-category{align-self:flex-start;max-width:100%;padding:4px 7px;border-radius:5px;background:#f1f4eb;font-size:9px;line-height:1.4;font-weight:600;letter-spacing:.7px;color:#6b7c60;margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.product-card .product-title{font-family:var(--heading);font-size:15px;font-weight:650;line-height:1.45;min-height:2.9em;max-height:2.9em;letter-spacing:-.2px;color:#17231f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 10px;overflow:hidden;overflow-wrap:anywhere}
.product-card .product-title:hover{color:#58713b}
.product-facts{display:flex;flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:27px;margin-bottom:15px}
.product-facts>span{display:inline-flex;align-items:center;font-size:10px;font-weight:450;line-height:1.3;border:0;border-radius:6px;padding:6px 8px;background:#f0f4e9;color:#596b48}
.product-card .product-description{display:none}
.product-card .product-bottom{display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:9px;margin-top:auto;padding-top:13px;border-top:1px solid #ebeee6}
.product-card .product-price{min-width:0;color:#17231f;font-size:13px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}
.product-card .product-price small{display:none}
.product-card .product-add{height:36px;width:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#17231f;border:1px solid #17231f;color:#d7ef73;transition:transform .2s,background .2s,color .2s}
.product-card .product-add svg{height:16px;width:16px}
.product-card .product-add:hover{background:#d7ef73;border-color:#d7ef73;color:#17231f;transform:rotate(90deg)}
.catalog-foot{border-top:1px solid #dfe5dd;padding-top:24px;margin-top:30px;gap:20px;font-size:12px;line-height:1.7;color:#7c897b}
.catalog-foot>span{gap:10px;align-items:flex-start}
.catalog-foot svg{width:17px;height:17px;flex-shrink:0;margin-top:2px}
.catalog-foot .text-link{font-size:12px;color:#17231f;white-space:nowrap}
.catalog .empty-state,.cart-page>.empty-state{font-size:14px;color:#7a877a;line-height:1.8}
.catalog .empty-state strong,.cart-page>.empty-state strong{color:#17231f;font-size:22px;letter-spacing:-.5px}

/* Manufacturing and company */
.services{background:transparent}
.services-layout{grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.services-visual{height:auto;aspect-ratio:1;position:relative;padding:25px;background:#e9ede3;border-radius:28px;overflow:hidden}
.services-visual>img{height:100%;width:100%;object-fit:contain;border-radius:18px}
.visual-label{position:absolute;left:22px;bottom:22px;padding:20px 23px;background:#d7ef73;border:0;border-radius:17px;box-shadow:none;backdrop-filter:none;gap:16px;color:#17231f;font-size:14px;font-weight:600;line-height:1.6;max-width:calc(100% - 44px)}
.visual-label svg{width:31px;height:31px;color:#17231f;stroke-width:1.5}
.visual-corner{position:absolute;top:20px;left:20px;right:auto;bottom:auto;background:#17231f;color:#f6f7f2;font-size:9px;font-weight:500;letter-spacing:1.1px;border-radius:999px;padding:8px 11px}
.services-copy{min-width:0}
.services-copy h2{font-size:clamp(30px,3.6vw,47px);font-weight:700;line-height:1.16;letter-spacing:-1.8px;margin:0 0 24px;color:#17231f}
.services-copy h2 em{font-style:normal;color:#738963}
.services-copy>p{font-size:15px;line-height:1.85;color:#7b877c;max-width:560px;margin-bottom:28px}
.service-step{display:flex;align-items:center;gap:17px;border-top:1px solid #dfe5dd;padding:21px 0}
.service-step>span:first-child{height:34px;width:34px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;background:#e8efdc;color:#617249;font-size:11px;font-weight:600;align-self:flex-start;padding:0}
.service-step>div{min-width:0}
.service-step h3{font-size:15px;font-weight:650;line-height:1.5;color:#17231f;margin:0 0 5px}
.service-step p{font-size:12px;line-height:1.7;color:#83907f;margin:0}
.service-step>svg{width:19px;height:19px;flex-shrink:0;margin-left:auto;color:#75856a}
.services-copy>.button{margin-top:24px}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.process-grid article{padding:30px;border:1px solid #e1e7da;border-radius:24px;background:#fff;min-width:0;min-height:235px}
.process-grid article>span{height:43px;width:43px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#d7ef73;color:#26321e;font-size:12px;font-weight:600}
.process-grid article>span svg{width:23px;height:23px;stroke-width:1.5}
.process-grid h3{font:650 20px/1.4 var(--heading);letter-spacing:-.5px;color:#17231f;margin:25px 0 14px}
.process-grid p{font-size:14px;line-height:1.85;color:#7a8779}
.about-page-visual{height:430px;margin-top:30px;border-radius:28px;background:#17231f;overflow:hidden}
.about-page-visual>img{object-position:60% 55%;opacity:1}
.about-page-visual:after{background:linear-gradient(90deg,#101f18b8 0%,#101f1820 75%),linear-gradient(0deg,#101f1870,transparent 75%)}
.about-page-visual>div{left:40px;bottom:40px;right:30px}
.about-page-visual h2{font:600 40px/1.2 var(--heading);letter-spacing:-1.6px;color:#fff;max-width:650px;margin:0}
.about{gap:65px;align-items:start}
.about h2{font-size:clamp(30px,3.6vw,46px);font-weight:700;line-height:1.2;letter-spacing:-1.7px;color:#17231f;max-width:550px;margin:0}
.about h2>span{color:#738963}
.about>div>p{font-size:16px;line-height:1.9;color:#73806f;margin-top:0;margin-bottom:25px}
.about-points{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;line-height:1.6}
.about-points>span{padding:10px 13px;border:1px solid #dce5d2;border-radius:999px;gap:8px;color:#5e7053;background:#fbfcf8}
.about-points svg{height:16px;width:16px;flex-shrink:0;color:#718d4d}
.about-values{padding-top:0}

/* Inquiry and contact forms */
.contact-page{display:grid;grid-template-columns:1fr 1.07fr;gap:65px;align-items:start}
.contact-page-copy{padding-top:10px;min-width:0}
.contact-page-copy h2{font-size:clamp(32px,3.7vw,47px);font-weight:700;line-height:1.16;letter-spacing:-1.8px;color:#17231f;margin:0 0 25px}
.contact-page-copy h2>span{color:#758967}
.contact-page-copy>p{font-size:15px;line-height:1.85;color:#768273;max-width:490px;margin-bottom:28px}
.contact-page-copy>.text-link{font-size:14px;color:#354d29}
.contact-page-details{display:flex;flex-direction:column;gap:21px;background:#eaf0e1;border:0;border-radius:22px;padding:28px;margin-top:32px;font-size:13px;line-height:1.7;color:#405c32}
.contact-page-details>span{gap:15px;align-items:flex-start}
.contact-page-details svg{width:23px;height:23px;flex-shrink:0;color:#597941;stroke-width:1.5}
.contact-page-form{padding:36px;border:1px solid #e3e8db;border-radius:28px;background:#fff;box-shadow:0 14px 40px #17231f04;min-width:0}
.contact-page-form .field{font-size:12px;font-weight:600;line-height:1.6;color:#40503d;margin-bottom:21px}
.contact-page-form .field-row{gap:19px}
.contact-page-form .field input,.contact-page-form .field textarea,.contact-page-form .field select{width:100%;background:#f7f9f3;border:1px solid #e0e7d8;border-radius:12px;padding:14px 15px;font-size:14px;color:#17231f;margin-top:8px;min-height:51px;line-height:1.5;box-shadow:none}
.contact-page-form .field input::placeholder,.contact-page-form .field textarea::placeholder{color:#a0ad97}
.contact-page-form .field input:focus,.contact-page-form .field textarea:focus{border-color:#8fa569;background:#fff;outline:3px solid #d7ef7355;outline-offset:1px}
.contact-page-form textarea{min-height:150px!important;resize:vertical}
.contact-page-form .form-note{font-size:11px;line-height:1.8;color:#929c8b;margin:18px 0 0}
.contact-page-form .form-error{font-size:12px;line-height:1.7}

/* Product detail */
.product-breadcrumbs{padding-top:30px;margin-bottom:0;font-size:12px}
.product-page-layout{display:grid;grid-template-columns:1.05fr 1fr;align-items:start;gap:65px}
.product-page-visual,.product-page-visual:has(img[src*='/catalog-']){background:#edf1e6;border:1px solid #e2e7db;border-radius:28px;overflow:hidden;position:sticky;top:130px}
.product-page-visual>img,.product-page-visual>img[src*='/catalog-']{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.product-page-copy{min-width:0;padding-top:12px}
.product-page-copy>.eyebrow{font-size:10px;color:#6d8257}
.product-page-copy h1{font:700 clamp(30px,3.1vw,43px)/1.16 var(--heading);letter-spacing:-1.5px;color:#17231f;margin:0 0 22px;overflow-wrap:anywhere}
.detail-facts{margin:0 0 24px;min-height:0;gap:8px}
.detail-facts>span{font-size:12px;line-height:1.5;padding:8px 11px;border:0;border-radius:8px;background:#e8efd9;color:#5d7446}
.product-page-copy>.detail-description{font-size:15px;line-height:1.9;color:#768371;margin:0 0 28px}
.product-specs{border-top:1px solid #dce3d4;margin-top:0}
.product-specs>div{padding:15px 0;border-bottom:1px solid #dce3d4;font-size:12px;line-height:1.6;gap:20px}
.product-specs span{color:#8b9783}
.product-specs strong{font-weight:500;color:#4a5b43;overflow-wrap:anywhere}
.product-page-copy .detail-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:29px 0}
.product-page-price{font:650 26px/1.4 var(--heading);color:#17231f;letter-spacing:-.7px}
.product-page-price small{font:400 11px/1.6 var(--font);color:#8f9b86;margin-top:7px;letter-spacing:0}
.product-page-copy .quantity{height:44px;width:120px;border:1px solid #d9e1cf;border-radius:999px;background:#fff;flex-shrink:0}
.product-page-copy .quantity input{width:42px;font-size:14px;background:transparent}
.product-page-copy .quantity button{width:34px;height:40px;display:flex;align-items:center;justify-content:center}
.product-page-copy .quantity svg{width:14px;height:14px}
.product-page-copy .product-back-link{font-size:12px;margin:24px 0 15px;gap:10px;color:#5e7250}
.instagram-product-source{font-size:12px;color:#506a3c;gap:10px;margin:16px 0}
.product-page-copy .form-note{font-size:11px;line-height:1.8;color:#94a087}

/* Inquiry basket */
.cart-page{max-width:1050px;min-height:300px;background:#fff;border:1px solid #e2e8d9;border-radius:26px;padding:15px 32px 30px;margin-inline:auto}
.cart-page>.cart-line{display:grid;grid-template-columns:94px minmax(0,1fr) auto 35px;gap:22px;padding:25px 0;border-bottom:1px solid #e8eddf}
.cart-page .cart-line>img{width:94px;height:94px;border-radius:16px;object-fit:contain;background:#f3f6ec}
.cart-page .cart-line-info{min-width:0}
.cart-page .cart-line-info strong{font-size:16px;line-height:1.6;font-weight:600;color:#26371f;overflow-wrap:anywhere}
.cart-page .cart-line-info small{font-size:12px;line-height:1.8;color:#8b9881}
.cart-page .quantity{width:120px;height:43px;border:1px solid #d7e1cd;border-radius:999px;background:#fcfdf8}
.cart-page .quantity input{width:42px;background:transparent;font-size:14px}
.cart-page .quantity button{width:33px;height:39px}
.cart-page .cart-remove{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f2f5eb;color:#839372;padding:0}
.cart-page .cart-remove svg{width:16px;height:16px}
.cart-page .cart-remove:hover{background:#17231f;color:#d7ef73}
.cart-page>.form-note{font-size:12px;line-height:1.8;color:#8b9880;margin-top:25px;max-width:750px}
.cart-page .cart-actions{margin-top:27px;gap:13px;justify-content:flex-end}
.checkout-summary{padding:22px;background:#eef4e4;border:0;border-radius:18px;margin-bottom:27px}
.checkout-summary>strong{font-size:14px;line-height:1.7;color:#486236;margin-bottom:15px}
.checkout-summary>div{border-top:1px solid #d9e5c9;padding:13px 0;font-size:12px;line-height:1.7;color:#698256;gap:18px}
.checkout-summary b{font-weight:550;white-space:normal;text-align:right;color:#486236}
.checkout-summary .text-link{font-size:12px;margin-top:14px;color:#3d5a2a}

@media(max-width:1100px){
  .products-grid,body[data-page='catalog'] .products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
  .product-card .product-body{padding:22px 19px 20px}
  .services-layout,.about,.contact-page,.product-page-layout{gap:40px}
  .contact-page-form{padding:28px}
  .process-grid article{padding:25px}
  .about-page-visual{height:390px}
}
@media(max-width:850px){
  .page-intro h1{font-size:49px;letter-spacing:-2px}
  .page-intro p{font-size:15px}
  .products-grid,body[data-page='catalog'] .products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .catalog-toolbar .filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%;padding-bottom:2px}
  .catalog-toolbar .filters::-webkit-scrollbar{display:none}
  .filter{font-size:12px;padding:11px 16px}
  .catalog-toolbar,body[data-page='catalog'] .catalog-toolbar{gap:12px}
  .process-grid{gap:15px}
  .process-grid article{padding:22px;min-height:0}
  .process-grid h3{font-size:18px}
  .process-grid p{font-size:13px}
  .contact-page{grid-template-columns:1fr;gap:35px}
  .contact-page-copy>p{max-width:600px}
  .contact-page-details{max-width:650px}
  .product-page-layout{grid-template-columns:1fr 1fr;gap:32px}
  .product-page-copy h1{font-size:31px}
  .product-page-copy>.detail-description{font-size:14px}
  .product-page-price{font-size:22px}
  .product-page-copy .detail-bottom{gap:12px;flex-wrap:wrap}
  .cart-page{padding-inline:24px}
}
@media(max-width:650px){
  .page-intro,body[data-page='catalog'] .page-intro{padding:26px 0 32px}
  .breadcrumbs{font-size:10px;gap:9px;margin-bottom:27px}
  .page-intro .eyebrow{font-size:8px;padding:7px 10px;letter-spacing:1.1px;margin-bottom:18px}
  .page-intro h1{font-size:38px;line-height:1.12;letter-spacing:-1.7px;margin-bottom:21px}
  .page-intro p{font-size:14px;line-height:1.8}
  body[data-page='catalog'] .catalog{padding-top:15px}
  .catalog-results{margin-bottom:20px}
  .catalog-results>span{display:none}
  .catalog-results strong{font-size:14px;gap:12px}
  .catalog-results strong span{font-size:11px;padding-left:12px}
  .catalog-search.icon-button{height:41px;width:41px}
  .catalog-toolbar,body[data-page='catalog'] .catalog-toolbar{padding-bottom:20px;margin-bottom:21px}
  .filter{font-size:11px;padding:10px 14px}
  .product-card .product-body{padding:21px 18px 20px}
  .product-card .product-title{font-size:15px}
  .product-card .product-description{font-size:12px}
  .product-card .product-price{font-size:13px}
  .product-facts>span{font-size:10px}
  .catalog-foot{font-size:11px;gap:15px;padding-top:21px;margin-top:24px;align-items:flex-start;flex-direction:column}
  .catalog-foot .text-link{font-size:12px}
  .services-layout,.about{grid-template-columns:1fr;gap:32px}
  .services-visual{order:2;border-radius:24px;padding:20px;max-width:550px;width:100%;margin-inline:auto}
  .visual-label{left:17px;bottom:17px;font-size:13px;padding:16px 18px;border-radius:14px;gap:13px;max-width:calc(100% - 34px)}
  .visual-label svg{height:27px;width:27px}
  .visual-corner{top:17px;left:17px;font-size:8px}
  .services-copy h2{font-size:35px;line-height:1.18;letter-spacing:-1.4px}
  .services-copy>p{font-size:14px;line-height:1.85;margin-bottom:25px}
  .service-step{padding:19px 0;gap:15px}
  .service-step h3{font-size:15px}
  .service-step p{font-size:12px}
  .process-grid{grid-template-columns:1fr;gap:14px}
  .process-grid article{padding:27px;border-radius:22px}
  .process-grid h3{font-size:21px;margin-top:21px}
  .process-grid p{font-size:14px}
  .about-page-visual{height:355px;border-radius:24px;margin-top:15px}
  .about-page-visual>div{left:25px;right:25px;bottom:28px}
  .about-page-visual h2{font-size:32px;letter-spacing:-1.2px;line-height:1.23}
  .about h2{font-size:35px;line-height:1.2;letter-spacing:-1.4px}
  .about>div>p{font-size:15px}
  .about-points{font-size:11px}
  .about-points>span{padding:10px 12px}
  .contact-page{gap:30px}
  .contact-page-copy h2{font-size:36px;letter-spacing:-1.4px}
  .contact-page-copy>p{font-size:14px;line-height:1.85}
  .contact-page-details{padding:25px;gap:19px;margin-top:27px;font-size:12px;border-radius:20px}
  .contact-page-form{padding:27px 23px;border-radius:24px}
  .contact-page-form .field-row{grid-template-columns:1fr;gap:0}
  .contact-page-form .field{font-size:12px;margin-bottom:20px}
  .contact-page-form .field input,.contact-page-form .field textarea,.contact-page-form .field select{font-size:14px;padding:14px;min-height:51px}
  .contact-page-form .form-note{font-size:11px}
  .product-breadcrumbs{padding-top:25px;font-size:10px;gap:9px;line-height:1.8}
  .product-breadcrumbs+.section{padding-top:24px}
  .product-page-layout{grid-template-columns:1fr;gap:30px}
  .product-page-visual{position:static;border-radius:24px}
  .product-page-copy{padding-top:0}
  .product-page-copy h1{font-size:35px;line-height:1.18;letter-spacing:-1.4px;margin-bottom:21px}
  .product-page-copy>.detail-description{font-size:14px;line-height:1.9}
  .detail-facts>span{font-size:11px;padding:8px 10px}
  .product-specs>div{font-size:12px;padding:14px 0}
  .product-page-copy .detail-bottom{margin:26px 0;flex-wrap:nowrap}
  .product-page-price{font-size:24px}
  .product-page-price small{font-size:10px;max-width:170px}
  .product-page-copy .quantity{width:115px}
  .cart-page{padding:5px 21px 25px;border-radius:24px}
  .cart-page>.cart-line{grid-template-columns:72px minmax(0,1fr) 30px;gap:11px 15px;padding:23px 0;align-items:start}
  .cart-page .cart-line>img{height:72px;width:72px;border-radius:13px;grid-row:1 / span 2}
  .cart-page .cart-line-info{grid-column:2}
  .cart-page .cart-line-info strong{font-size:14px;line-height:1.6}
  .cart-page .cart-line-info small{font-size:11px}
  .cart-page .cart-line .quantity{grid-column:2;justify-self:start;width:109px;height:39px}
  .cart-page .quantity input{font-size:13px;width:38px}
  .cart-page .quantity button{width:31px;height:35px}
  .cart-page .cart-remove{grid-column:3;grid-row:1;width:30px;height:30px}
  .cart-page>.form-note{font-size:11px;line-height:1.85}
  .cart-page .cart-actions{flex-direction:column;gap:12px;margin-top:24px}
  .cart-page .cart-actions .button{width:100%;flex:auto}
  .checkout-summary{padding:20px;border-radius:16px}
  .checkout-summary>div{font-size:11px;gap:13px}
  .checkout-summary>strong{font-size:13px}
}
@media(max-width:520px){
  .products-grid,body[data-page='catalog'] .products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .product-card{border-radius:15px}
  .product-card .product-picture{width:100%;margin:0;border-radius:0}
  .product-card .product-body{padding:12px 11px 11px}
  .product-card .product-category{font-size:8px;letter-spacing:.35px;padding:3px 5px;margin-bottom:8px}
  .product-card .product-title{font-size:12.5px;line-height:1.45;letter-spacing:-.15px;min-height:4.35em;max-height:4.35em;-webkit-line-clamp:3;margin-bottom:9px}
  .product-card .product-facts{min-height:23px;margin-bottom:12px;gap:0;flex-wrap:nowrap}
  .product-card .product-facts>span{max-width:100%;font-size:9px;padding:5px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .product-card .product-facts>span:not(:first-child){display:none}
  .product-card .product-price{font-size:11.5px;line-height:1.4;letter-spacing:-.1px}
  .product-card .product-add{width:34px;height:34px}
  .product-card .product-add svg{width:16px;height:16px}
  .product-card .product-bottom{grid-template-columns:minmax(0,1fr) 34px;gap:6px;padding-top:10px;min-height:45px}
}
@media(max-width:380px){
  .page-intro h1{font-size:34px;letter-spacing:-1.4px}
  .product-page-copy h1,.contact-page-copy h2,.services-copy h2,.about h2{font-size:32px}
  .product-card .product-body{padding:11px 9px 10px}
  .products-grid,body[data-page='catalog'] .products-grid{gap:10px}
  .product-card .product-title{font-size:12px;letter-spacing:-.2px}
  .product-card .product-price{font-size:10.5px}
  .contact-page-form{padding:24px 19px}
  .product-page-price{font-size:21px}
  .product-page-price small{max-width:150px}
  .product-page-copy .quantity{width:106px}
  .cart-page{padding-inline:17px}
}
@media(hover:none){
  .product-card:hover{transform:none;box-shadow:none}
  .product-card .product-add:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .product-card,.product-card .product-picture img,.product-card .product-add{transition:none}
}

/* Product page: a compact visual and a clear inquiry panel. */
body[data-page='product'] .product-page-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
body[data-page='product'] .product-page-visual{border-radius:22px;background:#f4f6f0;border-color:#e0e6da}
body[data-page='product'] .product-page-visual>img{object-fit:contain;max-height:570px}
body[data-page='product'] .product-page-copy{padding-top:4px}
.product-page-copy>.eyebrow{display:inline-flex;padding:5px 9px;background:#edf2e5;border-radius:6px;font-size:9px;letter-spacing:1px;margin-bottom:14px}
.product-page-copy h1{font-size:clamp(28px,2.7vw,38px);line-height:1.22;letter-spacing:-1.2px;margin-bottom:17px}
.product-page-copy .detail-facts{margin-bottom:21px;gap:6px}
.product-page-copy .detail-facts>span{padding:6px 9px;font-size:11px;border-radius:6px}
.product-purchase{padding:21px;background:#fff;border:1px solid #e0e7d9;border-radius:19px;margin-bottom:30px;box-shadow:0 4px 15px #17231f03}
.product-page-copy .product-purchase .detail-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 17px}
.product-purchase .product-page-price{min-width:0;font-size:24px;line-height:1.35;letter-spacing:-.6px;overflow-wrap:anywhere}
.product-purchase .product-page-price small{display:block;font-size:10px;line-height:1.6;font-weight:400;letter-spacing:0;max-width:205px;margin-top:6px;color:#87937f}
.product-purchase .quantity{height:44px;width:118px;background:#f8faf3}
.product-purchase .button{min-height:51px;font-size:12px;justify-content:space-between;padding-inline:20px}
.product-information{padding-top:3px}
.product-information h2{font:600 17px/1.4 var(--heading);letter-spacing:-.3px;margin:0 0 12px}
.product-information>.detail-description{font-size:13px;line-height:1.85;color:#74816e;margin:0 0 22px}
.product-information .product-specs{background:#eef3e7;border:0;border-radius:14px;padding:4px 15px;margin:0}
.product-information .product-specs>div{font-size:11px;padding:12px 0;border-bottom-color:#dce5d1;gap:15px}
.product-information .product-specs>div:last-child{border-bottom:0}
.product-information .product-specs span{flex-shrink:0;color:#7e8e73}
.product-information .product-specs strong{max-width:65%;font-weight:500;color:#405638}
.product-page-copy .product-back-link{font-size:11px;margin-top:22px}
.product-page-copy .product-visual-note{font-size:10px;line-height:1.8;color:#98a18f}
@media(max-width:850px){
  body[data-page='product'] .product-page-layout{gap:28px;grid-template-columns:minmax(0,1fr)}
  body[data-page='product'] .product-page-layout .product-page-visual{position:static;top:auto;height:310px;display:grid;place-items:center}
  body[data-page='product'] .product-page-visual>img{width:100%;height:100%;max-height:310px;aspect-ratio:auto}
}
@media(max-width:650px){
  .product-breadcrumbs{padding-top:18px;margin-bottom:0;font-size:10px;gap:8px}
  .product-breadcrumbs #product-breadcrumb-title,.product-breadcrumbs>span:nth-last-child(2){display:none}
  .product-breadcrumbs+.section{padding-top:18px;padding-bottom:40px}
  body[data-page='product'] .product-page-layout{gap:22px}
  body[data-page='product'] .product-page-layout .product-page-visual{height:248px;border-radius:18px;position:static;top:auto}
  body[data-page='product'] .product-page-visual>img{height:100%;width:100%;max-height:248px;aspect-ratio:auto}
  .product-page-copy>.eyebrow{font-size:8px;padding:4px 7px;margin-bottom:10px}
  .product-page-copy h1{font-size:26px;line-height:1.23;letter-spacing:-.8px;margin-bottom:14px}
  .product-page-copy .detail-facts{margin-bottom:17px;gap:5px}
  .product-page-copy .detail-facts>span{font-size:10px;line-height:1.4;padding:6px 8px}
  .product-purchase{padding:15px;border-radius:16px;margin-bottom:25px}
  .product-page-copy .product-purchase .detail-bottom{gap:12px;margin-bottom:14px}
  .product-purchase .product-page-price{font-size:20px;letter-spacing:-.4px}
  .product-purchase .product-page-price small{font-size:10px;max-width:170px}
  .product-purchase[data-price-mode='inquiry'] .product-page-price small{display:none}
  .product-page-copy .product-purchase .quantity{width:106px;height:42px;flex-shrink:0}
  .product-purchase .quantity input{width:36px;font-size:16px}
  .product-purchase .quantity button{width:33px;height:39px}
  .product-purchase .button{font-size:11px;min-height:49px;padding:13px 16px;gap:12px}
  .product-information h2{font-size:16px}
  .product-information>.detail-description{font-size:13px;line-height:1.9;margin-bottom:20px}
  .product-information .product-specs{padding:3px 13px;border-radius:13px}
  .product-information .product-specs>div{font-size:10px;padding:11px 0;gap:12px}
  .product-information .product-specs strong{max-width:63%}
  .product-page-copy .product-back-link{font-size:11px;margin:20px 0 14px}
}
@media(max-width:360px){
  body[data-page='product'] .product-page-layout .product-page-visual{height:224px}
  body[data-page='product'] .product-page-visual>img{max-height:224px}
  .product-page-copy h1{font-size:24px}
  .product-purchase{padding:13px}
  .product-purchase .product-page-price{font-size:18px}
  .product-page-copy .product-purchase .quantity{width:100px}
  .product-purchase .quantity input{width:32px}
  .product-purchase .quantity button{width:31px}
}
