/*
Theme Name: CartoniPack
Theme URI: https://cartonipack.com
Description: كارتوني باك — قالب فرعي لـ Kadence، عربي بالكامل (RTL) مبني على دليل الهوية البصرية.
Author: CartoniPack
Template: kadence
Version: 1.0.0
Text Domain: cartonipack
*/

/* ---------- Fonts (self-hosted; Noto Sans Arabic + Inter per source PDF p.7) ---------- */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/Inter-latin-0.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Noto Sans Arabic';font-style:normal;font-weight:400 700;font-display:swap;src:url(assets/fonts/NotoSansArabic-arabic-1.woff2) format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EEFF}

/* ---------- Tokens (13_IMPLEMENTATION/tokens.css + design-tokens.json) ---------- */
:root{
	--cp-deep-ink:#163D39;--cp-forest-teal:#237268;--cp-warm-kraft:#C99A65;--cp-paper:#F6F4EE;--cp-charcoal:#203831;
	--cp-white:#FFFFFF;--cp-muted-sage:#DFE8DE;--cp-mist:#E9EEE8;--cp-kraft-light:#E8C89A;--cp-kraft-shadow:#A87A48;--cp-stroke:#D8DED6;--cp-dark-teal:#0F3330;
	--cp-font:'Noto Sans Arabic','Inter',system-ui,sans-serif;
	--cp-max:1320px;--cp-r-card:16px;--cp-r-btn:8px;--cp-header-h:80px;
	--global-palette1:#237268;--global-palette2:#163D39;--global-palette3:#163D39;--global-palette4:#203831;--global-palette5:#203831;
	--global-palette6:#5d6f69;--global-palette7:#DFE8DE;--global-palette8:#F6F4EE;--global-palette9:#FFFFFF;
	--global-body-font-family:var(--cp-font);--global-heading-font-family:var(--cp-font);
}

/* ---------- Base ---------- */
html{direction:rtl}
body{font-family:var(--cp-font);font-size:16px;line-height:1.8;color:var(--cp-charcoal);background:var(--cp-paper);text-align:start}
h1,h2,h3,h4,h5,h6,.entry-title{font-family:var(--cp-font);color:var(--cp-deep-ink);font-weight:700;line-height:1.35}
a{color:var(--cp-forest-teal)}
a:hover{color:var(--cp-deep-ink)}
:focus-visible{outline:3px solid var(--cp-warm-kraft);outline-offset:2px}
bdi[dir=ltr],[dir=ltr]{unicode-bidi:isolate}
img{max-width:100%;height:auto}
.cp-wrap{width:100%;max-width:var(--cp-max);margin-inline:auto;padding-inline:24px}
.cp-ico{width:22px;height:22px;flex:none;vertical-align:middle}
.cp-eyebrow{font-size:13px;font-weight:700;letter-spacing:0;color:var(--cp-forest-teal);margin:0 0 8px}
.cp-eyebrow--kraft{color:var(--cp-warm-kraft)}
.content-area{margin-top:0}
.site-main,.content-container.site-container{max-width:none}
body.page .entry-hero,body.page .page-hero-section{display:none}
.entry-content-wrap{padding:0}
.content-bg,.entry.content-bg{background:transparent;box-shadow:none}

/* ---------- Buttons (board 05 CTA styles) ---------- */
.cp-btn,.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce button.button.alt,.wp-block-button__link{
	display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 22px;border-radius:var(--cp-r-btn);
	font-family:var(--cp-font);font-weight:700;font-size:15px;line-height:1.3;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.cp-btn--ink,.woocommerce .button,.woocommerce button.button.alt,.woocommerce a.button.alt{background:var(--cp-deep-ink);color:#fff;border-color:var(--cp-deep-ink)}
.cp-btn--ink:hover,.woocommerce .button:hover,.woocommerce button.button.alt:hover{background:var(--cp-forest-teal);border-color:var(--cp-forest-teal);color:#fff}
.cp-btn--kraft{background:var(--cp-warm-kraft);color:var(--cp-deep-ink);border-color:var(--cp-warm-kraft)}
.cp-btn--kraft:hover{background:var(--cp-kraft-light);border-color:var(--cp-kraft-light);color:var(--cp-deep-ink)}
.cp-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.cp-btn--ghost:hover{background:#fff;color:var(--cp-deep-ink)}
.cp-btn--outline{background:#fff;color:var(--cp-deep-ink);border-color:var(--cp-deep-ink)}
.cp-btn--outline:hover{background:var(--cp-mist);color:var(--cp-deep-ink)}
.cp-btn--light{background:#fff;color:var(--cp-deep-ink);border-color:#fff}
.cp-btn--sm{min-height:38px;padding:6px 16px;font-size:14px}
.cp-btn--block{width:100%}
.cp-btns{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- Header (mockup p.2–5, mirrored) ---------- */
.cp-header{background:#fff;position:relative;z-index:50}
.cp-topbar{background:var(--cp-deep-ink);color:#E9EEE8;font-size:12.5px}
.cp-topbar__in{display:flex;justify-content:space-between;align-items:center;min-height:36px}
.cp-mainbar{display:flex;align-items:center;gap:32px;min-height:var(--cp-header-h)}
.cp-brand{display:block;flex:none;line-height:0}
.cp-logo{width:200px;height:auto}
.cp-search{flex:1;max-width:520px;display:flex;align-items:center;gap:10px;background:var(--cp-paper);border:1px solid var(--cp-stroke);border-radius:var(--cp-r-btn);padding-inline:14px;color:var(--cp-forest-teal)}
.cp-search input{flex:1;border:0;background:transparent;min-height:44px;font-family:var(--cp-font);font-size:15px;color:var(--cp-charcoal);padding:0;box-shadow:none}
.cp-search input:focus{outline:none;box-shadow:none}
.cp-search:focus-within{border-color:var(--cp-forest-teal)}
.cp-actions{display:flex;align-items:center;gap:8px;margin-inline-start:auto}
.cp-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:var(--cp-deep-ink);background:transparent;border:0;padding:0;position:relative;cursor:pointer}
.cp-iconbtn:hover{background:var(--cp-mist);color:var(--cp-deep-ink)}
.cp-cart__count{position:absolute;inset-block-start:4px;inset-inline-end:2px;min-width:18px;height:18px;border-radius:9px;background:var(--cp-warm-kraft);color:var(--cp-deep-ink);font:700 11px/18px Inter,sans-serif;text-align:center;padding-inline:4px}
.cp-actions .cp-btn{margin-inline-start:8px}
.cp-search-toggle,.cp-menu-toggle{display:none}
.cp-navbar{border-block:1px solid var(--cp-stroke)}
.cp-navbar__in{display:flex;align-items:center;justify-content:space-between;min-height:52px}
.cp-nav__list{display:flex;gap:6px;list-style:none;margin:0;padding:0}
.cp-nav__list>li{position:relative}
.cp-nav__list a{display:block;padding:14px 14px;color:var(--cp-charcoal);text-decoration:none;font-size:15px;font-weight:600;border-block-end:2px solid transparent}
.cp-nav__list>li.current-menu-item>a,.cp-nav__list>li.current-menu-ancestor>a,.cp-nav__list a:hover{color:var(--cp-forest-teal);border-block-end-color:var(--cp-forest-teal)}
.cp-nav__list .sub-menu{position:absolute;inset-inline-start:0;top:100%;min-width:230px;background:#fff;border:1px solid var(--cp-stroke);border-radius:12px;box-shadow:0 12px 30px rgba(22,61,57,.12);list-style:none;margin:0;padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.15s}
.cp-nav__list li:hover>.sub-menu,.cp-nav__list li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.cp-nav__list .sub-menu a{border:0;padding:9px 12px;border-radius:8px;font-weight:400}
.cp-nav__list .sub-menu a:hover{background:var(--cp-paper)}
.cp-navbar__bulk{color:var(--cp-kraft-shadow);font-size:14px;font-weight:600;text-decoration:none}
.cp-navbar__bulk:hover{color:var(--cp-deep-ink)}
.cp-crumbs{font-size:13.5px;color:#5d6f69;padding-block:18px 0}
.cp-crumbs a{color:#5d6f69;text-decoration:none}
.cp-crumbs .breadcrumb_last{color:var(--cp-deep-ink);font-weight:700}

/* ---------- Hero (board 03; text live DOM on the right, art on the left) ---------- */
.cp-hero{position:relative;background:var(--cp-deep-ink);color:#fff;overflow:hidden;isolation:isolate}
.cp-hero__bg img,.cp-hero__bg source{display:block}
.cp-hero__bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left center;z-index:-1}
.cp-hero__in{min-height:clamp(460px,42.7vw,640px);display:flex;align-items:center}
.cp-hero__content{width:min(46%,620px);padding-block:56px}
.cp-hero h1{color:#fff;font-size:clamp(30px,4vw,58px);line-height:1.25;margin:0 0 18px}
.cp-hero h1 span{color:var(--cp-warm-kraft)}
.cp-hero__text{font-size:18px;color:#E9EEE8;margin:0 0 28px;max-width:44ch}
.cp-hero__steps{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;margin:28px 0 0;padding:0;counter-reset:s;font-size:13px}
.cp-hero__steps li{counter-increment:s}
.cp-hero__steps li::before{content:"0" counter(s) " ";color:var(--cp-warm-kraft);font-family:Inter,sans-serif;font-weight:700}
.cp-hero__steps a{color:#DFE8DE;text-decoration:none}
.cp-hero__steps a:hover{color:#fff}

/* ---------- Sections ---------- */
.cp-section{padding-block:64px}
.cp-section+.cp-section{padding-block-start:0}
.cp-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-block-end:28px}
.cp-head h2{font-size:clamp(24px,2.6vw,34px);margin:0}
.cp-more{font-weight:700;text-decoration:none;white-space:nowrap}

/* Category tiles */
.cp-cats__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;list-style:none;margin:0;padding:0}
.cp-cat a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--cp-stroke);border-radius:var(--cp-r-card);overflow:hidden;text-decoration:none;color:var(--cp-deep-ink);transition:transform .15s,box-shadow .15s}
.cp-cat a:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(22,61,57,.10)}
.cp-cat img{width:100%;aspect-ratio:1;object-fit:cover;background:var(--cp-paper)}
.cp-cat__name{font-weight:700;padding:14px 14px 2px}
.cp-cat__go{font-size:13px;color:var(--cp-forest-teal);padding:0 14px 14px}

/* Feature strip */
.cp-features{background:#fff;border-block:1px solid var(--cp-stroke)}
.cp-features ul{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0}
.cp-features a{display:flex;gap:14px;align-items:center;justify-content:center;padding:22px 16px;text-decoration:none;color:var(--cp-charcoal)}
.cp-features .cp-ico{width:30px;height:30px;color:var(--cp-forest-teal)}
.cp-features strong{display:block;color:var(--cp-deep-ink);font-size:15px}
.cp-features small{display:block;font-size:13px;color:#5d6f69}

/* Industries (board 04) */
.cp-inds__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;list-style:none;margin:0;padding:0}
.cp-ind{position:relative;border-radius:var(--cp-r-card);overflow:hidden;background:var(--cp-deep-ink);color:#fff;min-height:320px;display:flex;align-items:flex-end;isolation:isolate}
.cp-ind:nth-child(2n){background:var(--cp-warm-kraft);color:var(--cp-deep-ink)}
.cp-ind img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.cp-ind::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(15,51,48,.92) 15%,rgba(15,51,48,.2) 70%,transparent)}
.cp-ind__body{padding:20px}
.cp-ind h3{color:#fff;font-size:19px;margin:0 0 6px;display:flex;gap:8px;align-items:center}
.cp-ind p{color:#E9EEE8;font-size:14px;margin:0 0 14px}
.cp-inds__grid.is-detail{grid-template-columns:repeat(2,1fr)}
.cp-inds__grid.is-detail .cp-ind{min-height:380px}

/* Promo banner (10_PROMOTIONAL) */
.cp-banner{position:relative;border-radius:var(--cp-r-card);overflow:hidden;min-height:300px;display:flex;align-items:center;isolation:isolate;background:var(--cp-deep-ink)}
.cp-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left center;z-index:-1}
.cp-banner__body{width:min(50%,560px);padding:40px 48px;color:#fff}
.cp-banner h2{color:#fff;font-size:clamp(24px,2.8vw,36px);margin:0 0 10px}
.cp-banner h2 span{color:var(--cp-warm-kraft)}
.cp-banner p{color:#E9EEE8;margin:0 0 22px}
.cp-banner--light{background:var(--cp-paper)}
.cp-banner--light .cp-banner__body,.cp-banner--light h2{color:var(--cp-deep-ink)}
.cp-banner--light p{color:var(--cp-charcoal)}

/* Inner page hero (08_PAGE_MEDIA) */
.cp-phero{background:var(--cp-muted-sage)}
.cp-phero__in{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-block:48px}
.cp-phero h1{font-size:clamp(28px,3.4vw,46px);margin:0 0 12px}
.cp-phero p{font-size:17px;margin:0 0 22px}
.cp-phero__img{width:100%;border-radius:var(--cp-r-card);aspect-ratio:16/9;object-fit:cover}

/* Split */
.cp-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.cp-split__img{width:100%;border-radius:var(--cp-r-card)}
.cp-split h2{font-size:clamp(22px,2.4vw,30px)}
.cp-prose{max-width:820px}
.cp-prose h2{font-size:24px;margin-block:32px 10px}
.cp-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none;margin:0;padding:0}
.cp-cards li{background:#fff;border:1px solid var(--cp-stroke);border-radius:var(--cp-r-card);padding:24px}
.cp-cards h3{font-size:18px;margin:0 0 6px}
.cp-cards p{margin:0;font-size:15px}

/* FAQ */
.cp-faq details{background:#fff;border:1px solid var(--cp-stroke);border-radius:12px;margin-block-end:10px}
.cp-faq summary{cursor:pointer;padding:16px 20px;font-weight:700;color:var(--cp-deep-ink);list-style:none;display:flex;justify-content:space-between;gap:12px}
.cp-faq summary::after{content:"+";font-family:Inter,sans-serif;color:var(--cp-forest-teal)}
.cp-faq details[open] summary::after{content:"−"}
.cp-faq p{margin:0;padding:0 20px 18px}

/* ---------- Forms (board 05 inputs; mockup p.5 RFQ) ---------- */
.cp-rfq{display:grid;grid-template-columns:1fr 360px;gap:32px;align-items:start}
.cp-form{background:#fff;border:1px solid var(--cp-stroke);border-radius:var(--cp-r-card);padding:32px}
.cp-form__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-block-end:18px}
.cp-form__head h2{font-size:22px;margin:0}
.cp-form__head p{font-size:13px;color:#5d6f69;margin:0}
.cp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}
.cp-field{display:flex;flex-direction:column;gap:6px;margin-block-end:4px}
.cp-field--full{margin-block:16px}
.cp-field label{font-size:14px;font-weight:600;color:var(--cp-deep-ink)}
.cp-req{color:#b4462f}
.cp-form input[type=text],.cp-form input[type=email],.cp-form input[type=tel],.cp-form select,.cp-form textarea,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{
	width:100%;min-height:48px;border:1px solid var(--cp-stroke);border-radius:var(--cp-r-btn);background:#fff;padding:10px 14px;font-family:var(--cp-font);font-size:15px;color:var(--cp-charcoal)}
.cp-form input:focus,.cp-form select:focus,.cp-form textarea:focus{border-color:var(--cp-forest-teal);outline:none;box-shadow:0 0 0 3px rgba(35,114,104,.15)}
.cp-upload{display:flex;flex-direction:column;align-items:center;gap:4px;margin-block-start:20px;padding:22px;border:1.5px dashed var(--cp-stroke);border-radius:12px;background:var(--cp-paper);cursor:pointer;text-align:center;color:var(--cp-forest-teal)}
.cp-upload strong{color:var(--cp-forest-teal)}
.cp-upload small{color:#5d6f69}
.cp-upload input{position:absolute;width:1px;height:1px;opacity:0}
.cp-upload:focus-within{border-color:var(--cp-forest-teal)}
.cp-upload__name{font-size:13px;color:var(--cp-deep-ink);font-weight:600}
.cp-consent{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;margin-block:4px 18px}
.cp-consent input{margin-block-start:6px}
.cp-consent--sm{font-size:12px;color:#DFE8DE;margin:8px 0 0}
.cp-hp{position:absolute!important;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}
.cp-notice{padding:14px 18px;border-radius:10px;margin-block-end:18px;font-weight:600}
.cp-notice--ok{background:var(--cp-muted-sage);color:var(--cp-deep-ink)}
.cp-notice--err{background:#f6e3dc;color:#7a2c17}
.cp-rfq__side{background:var(--cp-deep-ink);color:#E9EEE8;border-radius:var(--cp-r-card);padding:32px;position:sticky;top:24px}
.cp-rfq__side h2{color:#fff;font-size:26px;margin:0 0 10px}
.cp-rfq__side img{display:block;width:160px;margin:16px auto}
.cp-rfq__side ul{list-style:none;margin:0;padding:16px 0 0;border-top:1px solid rgba(255,255,255,.18);display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:13px}
.cp-rfq__side li{display:flex;gap:6px;align-items:center}
.cp-rfq__side .cp-ico{width:16px;height:16px;color:var(--cp-warm-kraft)}
.cp-steps{display:flex;gap:0;list-style:none;margin:0;padding:0}
.cp-steps li{padding-inline:22px;border-inline-start:1px solid rgba(22,61,57,.18);font-size:13px}
.cp-steps b{display:block;font:700 26px/1.2 Inter,sans-serif;color:var(--cp-warm-kraft)}

/* ---------- WooCommerce: shop/category (mockup p.3) ---------- */
.cp-catbanner{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--cp-muted-sage);border-radius:var(--cp-r-card);padding:28px 40px;margin-block:20px 28px;overflow:hidden;max-height:240px}
.cp-catbanner h1{font-size:clamp(26px,3vw,40px);margin:0 0 6px}
.cp-catbanner p{margin:0;color:#4a5d57}
.cp-catbanner__img{width:min(38%,380px);aspect-ratio:16/9;object-fit:cover;border-radius:12px}
.cp-shop{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}
.cp-shop__bar{display:flex;justify-content:space-between;align-items:center;margin-block-end:16px;color:#5d6f69}
.cp-shop__bar .woocommerce-result-count,.cp-shop__bar .woocommerce-ordering{margin:0;float:none}
.cp-filters{background:#fff;border:1px solid var(--cp-stroke);border-radius:12px;padding:18px}
.cp-filters__head{display:flex;justify-content:space-between;align-items:center;border-block-end:1px solid var(--cp-stroke);padding-block-end:12px}
.cp-filters__head h2{font-size:15px;margin:0}
.cp-filters__head a{font-size:12.5px;color:#5d6f69}
.cp-filters details{border-block-end:1px solid var(--cp-stroke);padding-block:12px}
.cp-filters summary{font-weight:700;font-size:14px;color:var(--cp-deep-ink);cursor:pointer}
.cp-filters ul{list-style:none;margin:8px 0 0;padding:0}
.cp-filters li a{display:flex;justify-content:space-between;gap:8px;padding:6px 0;font-size:14px;color:var(--cp-charcoal);text-decoration:none}
.cp-filters li a[aria-current],.cp-filters .cp-check.is-on{color:var(--cp-forest-teal);font-weight:700}
.cp-check span:first-child::before{content:"";display:inline-block;width:14px;height:14px;border:1.5px solid var(--cp-stroke);border-radius:3px;margin-inline-end:8px;vertical-align:-2px}
.cp-check.is-on span:first-child::before{background:var(--cp-forest-teal);border-color:var(--cp-forest-teal)}
.cp-count{color:#8a9893;font-family:Inter,sans-serif;font-size:12.5px}
.cp-empty{background:#fff;border:1px solid var(--cp-stroke);border-radius:var(--cp-r-card);padding:32px;text-align:center}

/* Product cards */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:16px;margin:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border:1px solid var(--cp-stroke);border-radius:12px;overflow:hidden;position:relative;display:flex;flex-direction:column;text-align:start}
.woocommerce ul.products li.product a img{background:var(--cp-paper);aspect-ratio:1;object-fit:contain;margin:0;padding:16px}
.woocommerce ul.products li.product .woocommerce-loop-product__link{display:block;color:inherit;text-decoration:none}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:17px!important;color:var(--cp-deep-ink);padding:0 16px!important;margin:0 0 8px}
.cp-card__qty{font-size:12px;font-weight:600;color:#5d6f69;margin:14px 16px 4px;letter-spacing:.02em}
.woocommerce ul.products li.product .price{display:block;color:var(--cp-forest-teal)!important;font-size:19px!important;font-weight:700;padding:0 16px 16px;margin:0!important;padding-inline-end:70px}
.cp-unit{font-size:13px;color:#5d6f69;font-weight:400}
.cp-price-request{font-size:15px;color:var(--cp-kraft-shadow)}
.woocommerce ul.products li.product .button{position:absolute;inset-inline-end:14px;inset-block-end:14px;width:40px;min-height:40px;height:40px;padding:0;border-radius:6px;font-size:0;background:var(--cp-forest-teal);border-color:var(--cp-forest-teal);margin:0}
.woocommerce ul.products li.product .button::before{content:"+";font:400 24px/1 Inter,sans-serif;color:#fff}
.woocommerce ul.products li.product .button.cp-loop-quote::before{content:none}
.woocommerce ul.products li.product .button .cp-ico{color:#fff;width:20px;height:20px}
.woocommerce ul.products li.product .added_to_cart{display:none}
.cp-badge{position:absolute;inset-block-start:12px;inset-inline-start:12px;z-index:2;background:#fff;color:var(--cp-forest-teal);font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.06)}

/* Single product (mockup p.4) */
.single-product div.product{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding-block:24px 48px}
.single-product div.product .woocommerce-product-gallery,.single-product div.product .summary{width:auto!important;float:none!important;margin:0!important}
.single-product div.product .woocommerce-product-gallery{position:relative}
.single-product .woocommerce-product-gallery__wrapper{background:#F1EFE8;border-radius:12px}
.single-product .woocommerce-product-gallery__image img{border-radius:12px;padding:32px}
.single-product .flex-control-thumbs{display:flex;gap:10px;margin-block-start:12px!important}
.single-product .flex-control-thumbs li{width:84px!important;border-radius:8px;overflow:hidden;background:#F1EFE8}
.single-product .flex-control-thumbs img.flex-active{outline:2px solid var(--cp-forest-teal);outline-offset:-2px}
.single-product div.product .woocommerce-tabs,.single-product .related,.single-product .upsells{grid-column:1/-1}
.single-product .product_title{font-size:clamp(28px,3vw,40px);margin:0 0 12px}
.single-product .cp-eyebrow a{color:var(--cp-forest-teal);text-decoration:none}
.single-product .cp-dot{margin-inline:6px;color:#9aa8a3}
.single-product div.product p.price{font-size:32px;font-weight:700;color:var(--cp-forest-teal);font-family:Inter,var(--cp-font)}
.single-product .woocommerce-product-details__short-description{color:#4a5d57}
.cp-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}
.cp-specs div{background:var(--cp-paper);border-radius:8px;padding:10px 14px}
.cp-specs dt{font-size:12.5px;color:#5d6f69}
.cp-specs dd{margin:0;font-weight:700;color:var(--cp-deep-ink)}
.single-product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin-block:22px!important}
.single-product form.cart .quantity input{min-height:48px;width:80px;border:1px solid var(--cp-stroke);border-radius:var(--cp-r-btn)}
.single-product form.cart .single_add_to_cart_button{flex:1;min-height:48px}
.single-product form.cart .cp-quote-btn{flex:1;min-height:48px}
.single-product .variations td,.single-product .variations th{padding-block:6px}
.cp-quote-only{margin-block:22px}
.cp-assure{list-style:none;margin:20px 0 0;padding:16px 0 0;border-top:1px solid var(--cp-stroke);font-size:14px}
.cp-assure li{display:flex;gap:10px;align-items:center}
.single-product .product_meta{display:none}
.woocommerce-tabs ul.tabs{padding:0!important}
.woocommerce-tabs ul.tabs li a{font-family:var(--cp-font)}
.related>h2,.upsells>h2{font-size:26px}

/* Cart / checkout */
.woocommerce-cart .cp-wrap,.woocommerce-checkout .cp-wrap{max-width:var(--cp-max)}
.woocommerce table.shop_table{border-radius:12px;border-color:var(--cp-stroke);background:#fff}
.woocommerce-message,.woocommerce-info{border-top-color:var(--cp-forest-teal);background:#fff}
.woocommerce-message::before,.woocommerce-info::before{color:var(--cp-forest-teal)}
.woocommerce span.onsale{background:var(--cp-warm-kraft);color:var(--cp-deep-ink)}

/* ---------- Footer (board 08) ---------- */
.cp-footer{background:var(--cp-deep-ink);color:#DFE8DE;padding-block:56px 24px;margin-block-start:64px;background-image:url(assets/03_PATTERNS/slanted-mark-pattern-1.svg);background-size:1200px 700px}
.cp-footer__grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1.6fr;gap:32px}
.cp-footer__brand .cp-logo{width:190px}
.cp-footer__brand p{font-size:14px;margin-block-start:14px}
.cp-footer__title{color:#fff;font-size:15px;margin:0 0 12px;display:flex;gap:8px;align-items:center}
.cp-footer ul{list-style:none;margin:0;padding:0}
.cp-footer li{margin-block-end:6px}
.cp-footer a{color:#DFE8DE;text-decoration:none;font-size:14px}
.cp-footer a:hover{color:var(--cp-warm-kraft)}
.cp-footer__news p{font-size:14px;margin:0 0 12px}
.cp-news__row{display:flex;background:#fff;border-radius:var(--cp-r-btn);padding:4px;gap:4px}
.cp-news__row input{flex:1;border:0;min-height:42px;padding-inline:12px;font-family:var(--cp-font);background:transparent}
.cp-news__row .cp-btn{min-height:42px;padding-block:6px}
.cp-footer .cp-notice{font-size:13px}
.cp-footer__bottom{display:flex;justify-content:space-between;gap:16px;border-top:1px solid rgba(255,255,255,.15);margin-block-start:40px;padding-block-start:18px;font-size:13px}
.cp-footer__bottom p{margin:0}
.cp-mobilebar{display:none}

/* ---------- Responsive ---------- */
@media (max-width:1200px){
	.cp-cats__grid{grid-template-columns:repeat(4,1fr)}
	.cp-inds__grid{grid-template-columns:repeat(3,1fr)}
	.cp-footer__grid{grid-template-columns:1fr 1fr 1fr}
	.cp-footer__brand,.cp-footer__news{grid-column:span 3}
}
@media (max-width:1024px){
	.cp-mainbar{gap:16px}
	.cp-search{display:none}
	.cp-search-open .cp-search{display:flex;position:absolute;inset-inline:16px;top:calc(100% - 4px);max-width:none;z-index:60;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.12)}
	.cp-mainbar{position:relative}
	.cp-search-toggle,.cp-menu-toggle{display:inline-flex}
	.cp-navbar{display:none}
	.cp-nav-open .cp-navbar{display:block}
	.cp-navbar__in{flex-direction:column;align-items:stretch;padding-block:8px}
	.cp-nav__list{flex-direction:column}
	.cp-nav__list .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 16px 0 0}
	.cp-navbar__bulk{padding:12px 14px}
	.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}
	.cp-shop{grid-template-columns:1fr}
	.cp-shop__rail details:not(:first-of-type){display:none}
	.cp-rfq{grid-template-columns:1fr}
	.cp-rfq__side{position:static}
	.single-product div.product{grid-template-columns:1fr;gap:24px}
}
@media (max-width:767px){
	.cp-wrap{padding-inline:16px}
	.cp-topbar__end,.cp-hide-sm{display:none}
	.cp-logo{width:150px}
	.cp-hero__in{min-height:0;align-items:flex-start}
	.cp-hero__bg img{object-position:center bottom}
	.cp-hero__content{width:100%;padding-block:36px 62vw}
	.cp-hero h1{font-size:clamp(30px,8.5vw,38px)}
	.cp-hero__text{font-size:16px}
	.cp-section{padding-block:44px}
	.cp-cats__grid{grid-template-columns:repeat(2,1fr);gap:12px}
	.cp-features ul{grid-template-columns:1fr}
	.cp-features a{justify-content:flex-start}
	.cp-inds__grid,.cp-inds__grid.is-detail{grid-template-columns:1fr}
	.cp-ind{min-height:260px}
	.cp-banner{min-height:0;align-items:flex-end}
	.cp-banner>img{position:static;height:auto;aspect-ratio:1600/650;object-fit:cover}
	.cp-banner{flex-direction:column;align-items:stretch}
	.cp-banner__body{width:100%;padding:24px}
	.cp-phero__in,.cp-split{grid-template-columns:1fr;gap:24px}
	.cp-phero__in{padding-block:28px}
	.cp-cards{grid-template-columns:1fr}
	.cp-grid2{grid-template-columns:1fr}
	.cp-form,.cp-rfq__side{padding:20px}
	.cp-steps li{padding-inline:12px}
	.cp-catbanner{padding:20px;max-height:none}
	.cp-catbanner__img{display:none}
	.woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:10px}
	.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:15px!important}
	.woocommerce ul.products li.product .price{font-size:16px!important}
	.cp-specs{grid-template-columns:1fr}
	.cp-footer{margin-block-start:40px;padding-block-end:96px}
	.cp-footer__grid{grid-template-columns:1fr 1fr}
	.cp-footer__brand,.cp-footer__news{grid-column:span 2}
	.cp-footer__bottom{flex-direction:column}
	/* Persistent quote access — mockup p.6 */
	.cp-mobilebar{display:flex;position:fixed;inset-inline:0;bottom:0;z-index:90;background:#fff;border-top:1px solid var(--cp-stroke);padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:12px;align-items:center;justify-content:space-between;box-shadow:0 -6px 20px rgba(22,61,57,.08)}
	.cp-mobilebar__link{display:flex;gap:8px;align-items:center;font-weight:700;color:var(--cp-deep-ink);text-decoration:none}
	.cp-mobilebar .cp-btn{flex:1;max-width:220px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
