
:root {
    /* Creative Oasis V4.4 — integrated handcrafted hero showcase */
    --co-forest: #123a32;
    --co-forest-deep: #082620;
    --co-porcelain: #f5e7d3;
    --co-sand: #dfc5a7;
    --co-walnut: #6b321f;
    --co-walnut-dark: #32170f;
    --co-walnut-light: #a9542f;
    --co-copper: #c75a2a;
    --co-copper-hover: #a83f1b;
    --co-teal: #0099a8;
    --co-teal-deep: #006f7a;
    --co-teal-light: #d9f0f1;
    --co-maple-gold: #d59a38;
    --co-maple-light: #f1c96d;
    --co-sage: var(--co-teal);
    --co-sage-deep: var(--co-teal-deep);
    --co-sage-light: var(--co-teal-light);
    --co-espresso: #21130e;
    --co-muted: #665448;
    --co-border: #d2b48f;
    --co-border-dark: #b4885f;
    --co-white: #fff8ee;
    --co-success: #08786f;
    --co-danger: #a43b27;

    /* Backward-compatible aliases used by the existing templates. */
    --co-ink: var(--co-espresso);
    --co-ink-2: var(--co-forest);
    --co-ink-soft: var(--co-muted);
    --co-cream: var(--co-porcelain);
    --co-cream-deep: var(--co-sand);
    --co-paper: var(--co-white);
    --co-gold: var(--co-maple-gold);
    --co-gold-light: var(--co-maple-light);

    --co-radius-xs: 8px;
    --co-radius-sm: 12px;
    --co-radius: 22px;
    --co-radius-lg: 34px;
    --co-radius-xl: 52px;
    --co-shadow-sm: 0 12px 30px rgba(33, 19, 14, .13);
    --co-shadow: 0 26px 70px rgba(33, 19, 14, .2);
    --co-shadow-deep: 0 38px 105px rgba(18, 58, 50, .3);
    --co-container: 1320px;
    --co-font-display: Georgia, 'Times New Roman', serif;
    --co-font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    color: var(--co-ink);
    background: var(--co-paper);
    font-family: var(--co-font-body);
    font-size: 17px;
    line-height: 1.65;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}
body.co-menu-open { overflow: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
svg { display: block; }
::selection { background: var(--co-gold-light); color: var(--co-ink); }
.screen-reader-text {
    border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px;
    overflow: hidden; padding: 0; position: absolute; width: 1px; word-wrap: normal !important;
}
.co-skip-link { position: fixed; left: 18px; top: -80px; z-index: 9999; background: var(--co-ink); color: #fff; padding: 10px 16px; }
.co-skip-link:focus { top: 18px; }
.co-container { width: min(calc(100% - 48px), var(--co-container)); margin-inline: auto; }
.co-content-width { max-width: 920px; }
.co-site-main { min-height: 60vh; }

h1, h2, h3, h4 {
    color: var(--co-ink);
    font-family: var(--co-font-display);
    line-height: 1.04;
    margin: 0 0 .65em;
    font-weight: 600;
    text-wrap: balance;
}
h1 { font-size: clamp(3rem, 6.5vw, 7rem); letter-spacing: -.058em; }
h2 { font-size: clamp(2.25rem, 4.4vw, 4.8rem); letter-spacing: -.046em; }
h3 { font-size: clamp(1.4rem, 2vw, 2rem); letter-spacing: -.025em; }
p { margin: 0 0 1.35em; }

.co-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    color: var(--co-copper);
    font-size: .74rem;
    font-weight: 850;
    letter-spacing: .17em;
    text-transform: uppercase;
}
.co-button-row { display: flex; flex-wrap: wrap; gap: 13px; align-items: center; }
.co-button,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    min-height: 54px;
    padding: 14px 24px;
    border: 1px solid var(--co-copper);
    border-radius: 999px;
    background: var(--co-copper);
    color: #fff !important;
    text-decoration: none;
    font-weight: 780;
    line-height: 1;
    transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
    box-shadow: none;
}
.co-button svg, .co-text-link svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.co-button:hover,
.wp-element-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    transform: translateY(-2px);
    background: var(--co-copper-hover);
    border-color: var(--co-copper-hover);
    box-shadow: var(--co-shadow-sm);
}
.co-button--outline { color: var(--co-ink) !important; background: transparent; border-color: var(--co-ink); }
.co-button--outline:hover { color: #fff !important; background: var(--co-ink); }
.co-button--light { color: var(--co-ink) !important; background: #fff; border-color: #fff; }
.co-button--light:hover { color: #fff !important; background: var(--co-copper); border-color: var(--co-copper); }
.co-text-link { color: var(--co-copper); font-weight: 800; text-decoration: none; }
.co-text-link:hover { text-decoration: underline; }
.co-text-link--light { color: #fff; }
.co-text-link--arrow { display: inline-flex; align-items: center; gap: 8px; }

/* Header */
.co-site-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: rgba(34, 48, 40, .98);
    border-bottom: 1px solid rgba(255,255,255,.1);
    transition: transform .25s ease, box-shadow .25s ease;
    backdrop-filter: blur(18px);
}
.co-site-header.is-scrolled { box-shadow: 0 12px 38px rgba(24, 35, 29, .24); }
.co-site-header.is-hidden { transform: translateY(-100%); }
.admin-bar .co-site-header { top: 32px; }
.co-announcement { background: var(--co-walnut); color: #fff; font-size: .76rem; letter-spacing: .01em; }
.co-announcement__inner { min-height: 38px; display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.co-announcement__message, .co-announcement__links, .co-announcement__links a { display: flex; align-items: center; gap: 9px; }
.co-announcement__message svg { width: 18px; height: 18px; fill: none; stroke: #f0d9cb; stroke-width: 1.5; }
.co-announcement__links { gap: 24px; color: rgba(255,255,255,.72); }
.co-announcement a { color: #fff; font-weight: 800; text-decoration: none; }
.co-announcement a svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; }
.co-header-main { display: grid; grid-template-columns: minmax(190px, 260px) 1fr auto; gap: 28px; align-items: center; min-height: 88px; }
.custom-logo { max-width: 235px; max-height: 66px; width: auto; }
.co-brand__text { display: flex; flex-direction: column; text-decoration: none; }
.co-brand__name { color: var(--co-white); font-family: var(--co-font-display); font-size: 1.62rem; font-weight: 700; line-height: 1; letter-spacing: -.03em; }
.co-brand__tagline { margin-top: 6px; max-width: 235px; overflow: hidden; color: rgba(255,253,249,.7); font-size: .62rem; font-weight: 730; letter-spacing: .09em; line-height: 1.3; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.co-nav { justify-self: center; }
.co-nav__list { display: flex; align-items: center; gap: clamp(16px, 1.65vw, 28px); margin: 0; padding: 0; list-style: none; }
.co-nav__list a { position: relative; color: var(--co-white); font-size: .88rem; font-weight: 760; text-decoration: none; }
.co-nav__list > li:not(.co-nav__cta) > a::after { position: absolute; left: 0; bottom: -7px; width: 100%; height: 2px; background: var(--co-copper); content: ''; transform: scaleX(0); transform-origin: right; transition: transform .2s ease; }
.co-nav__list > li:not(.co-nav__cta) > a:hover::after,
.co-nav__list > li.current-menu-item:not(.co-nav__cta) > a::after { transform: scaleX(1); transform-origin: left; }
.co-nav__list a:hover, .co-nav__list .current-menu-item > a { color: #e7c6b3; }
.co-nav__cta > a { display: inline-flex; align-items: center; min-height: 42px; padding: 10px 17px; border-radius: 999px; background: var(--co-copper); color: #fff !important; box-shadow: 0 8px 20px rgba(184,101,63,.22); }
.co-nav__cta > a:hover { background: var(--co-copper-hover); }
.co-nav__list .sub-menu { position: absolute; display: none; min-width: 230px; margin-top: 14px; padding: 14px; background: var(--co-white); border: 1px solid var(--co-border); border-radius: var(--co-radius-sm); box-shadow: var(--co-shadow); list-style: none; }
.co-nav__list li { position: relative; }
.co-nav__list li:hover > .sub-menu, .co-nav__list li:focus-within > .sub-menu { display: grid; gap: 8px; }
.co-nav__list .sub-menu a { display: block; padding: 7px 8px; border-radius: 8px; }
.co-nav__list .sub-menu a:hover { background: var(--co-cream); }
.co-header-actions { display: flex; gap: 7px; align-items: center; }
.co-icon-link { position: relative; display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 1px solid rgba(255,253,249,.28); border-radius: 50%; background: rgba(255,253,249,.04); color: var(--co-white); text-decoration: none; transition: .2s ease; }
.co-icon-link:hover { border-color: var(--co-copper); background: var(--co-copper); color: #fff; }
.co-icon-link svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.co-cart-count { position: absolute; top: -5px; right: -5px; display: grid; place-items: center; min-width: 19px; height: 19px; padding: 0 4px; border-radius: 99px; background: var(--co-copper); color: #fff; font-size: .64rem; font-weight: 850; }
.co-menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid rgba(255,253,249,.3); border-radius: 50%; background: rgba(255,253,249,.04); }
.co-menu-toggle__icon, .co-menu-toggle__icon::before, .co-menu-toggle__icon::after { display: block; width: 19px; height: 2px; background: var(--co-white); content: ''; transition: .2s ease; }
.co-menu-toggle__icon { position: relative; margin: auto; }
.co-menu-toggle__icon::before { position: absolute; top: -6px; }
.co-menu-toggle__icon::after { position: absolute; top: 6px; }
.co-search-panel { border-top: 1px solid var(--co-border); background: var(--co-paper); box-shadow: 0 22px 45px rgba(34, 35, 31, .08); }
.co-search-panel[hidden] { display: none; }
.co-search-panel__inner { padding-block: 18px; }
.co-search-form { display: grid; grid-template-columns: auto 1fr auto auto; gap: 12px; align-items: center; }
.co-search-form__icon { color: var(--co-copper); }
.co-search-form__icon svg, .co-search-close svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }
.co-search-form input[type='search'] { width: 100%; min-height: 52px; padding: 10px 4px; border: 0; border-bottom: 1px solid var(--co-border-dark); background: transparent; color: var(--co-ink); font-size: 1.05rem; outline: 0; }
.co-search-form input[type='search']:focus { border-color: var(--co-copper); }
.co-search-close { display: grid; place-items: center; width: 42px; height: 42px; padding: 0; border: 0; background: transparent; color: var(--co-ink); }

/* Hero */
.co-hero { position: relative; overflow: hidden; background: var(--co-cream); }
.co-hero::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(184,101,63,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(184,101,63,.045) 1px, transparent 1px); background-size: 46px 46px; content: ''; mask-image: linear-gradient(to right, #000, transparent 68%); }
.co-hero__grid { position: relative; display: grid; grid-template-columns: minmax(0, .97fr) minmax(440px, 1.03fr); gap: clamp(45px, 6.5vw, 100px); align-items: center; min-height: min(820px, calc(100vh - 126px)); padding-block: clamp(68px, 7vw, 105px); }
.co-hero__content { position: relative; z-index: 2; }
.co-hero__content h1 { max-width: 780px; }
.co-hero__content > p { max-width: 680px; color: var(--co-ink-soft); font-size: clamp(1.08rem, 1.55vw, 1.32rem); }
.co-hero__proof { display: flex; flex-wrap: wrap; gap: 10px 26px; margin-top: 32px; color: var(--co-ink-soft); font-size: .83rem; font-weight: 760; }
.co-hero__proof span { display: flex; align-items: center; }
.co-hero__proof span::before { width: 7px; height: 7px; margin-right: 9px; border-radius: 50%; background: var(--co-gold); content: ''; }
.co-hero__visual { position: relative; min-height: 590px; }
.co-hero__visual::before { position: absolute; top: 3%; left: 1%; width: 74%; height: 88%; border: 1px solid rgba(184,101,63,.24); border-radius: 48% 52% 45% 55%; content: ''; transform: rotate(-8deg); }
.co-hero-media { position: absolute; inset: 4% 0 3% 9%; overflow: hidden; border-radius: 44% 12% 28% 14%; background: var(--co-cream-deep); box-shadow: var(--co-shadow-deep); transform: rotate(1.6deg); }
.co-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.co-hero-media__grain { position: absolute; inset: 0; background: radial-gradient(circle at 65% 12%, rgba(255,255,255,.36), transparent 36%), linear-gradient(to top, rgba(27,19,13,.22), transparent 42%); pointer-events: none; }
.co-hero-note { position: absolute; z-index: 3; display: flex; flex-direction: column; padding: 20px 22px; border: 1px solid rgba(255,255,255,.55); border-radius: 20px; background: rgba(255,253,249,.91); box-shadow: var(--co-shadow); backdrop-filter: blur(12px); }
.co-hero-note--top { top: 2%; right: -3%; width: min(265px, 46%); transform: rotate(3deg); }
.co-hero-note--top span { color: var(--co-copper); font-size: .66rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.co-hero-note--top strong { margin-top: 4px; font-family: var(--co-font-display); font-size: 1.35rem; line-height: 1.1; }
.co-hero-note--bottom { left: 0; bottom: 8%; flex-direction: row; align-items: center; gap: 12px; color: var(--co-ink); font-size: .77rem; font-weight: 800; }
.co-hero-note--bottom svg { width: 34px; height: 34px; fill: none; stroke: var(--co-copper); stroke-width: 1.5; }

/* Trust rail */
.co-trust-rail { border-top: 1px solid var(--co-border); border-bottom: 1px solid var(--co-border); background: var(--co-paper); }
.co-trust-rail__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.co-trust-item { display: flex; gap: 13px; align-items: center; min-height: 112px; padding: 22px 26px; border-right: 1px solid var(--co-border); }
.co-trust-item:first-child { border-left: 1px solid var(--co-border); }
.co-trust-item > svg { flex: 0 0 auto; width: 38px; height: 38px; fill: none; stroke: var(--co-copper); stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.co-trust-item span { display: grid; }
.co-trust-item strong { font-size: .92rem; }
.co-trust-item small { color: var(--co-ink-soft); font-size: .71rem; line-height: 1.4; }

/* Shared sections */
.co-section { padding-block: clamp(82px, 9vw, 138px); }
.co-section--soft { background: var(--co-cream); }
.co-section-heading { max-width: 820px; margin-bottom: clamp(38px, 5vw, 68px); }
.co-section-heading--split { max-width: none; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(250px, .55fr); gap: 50px; align-items: end; }
.co-section-heading--split > p { margin: 0; color: var(--co-ink-soft); }

/* Order paths */
.co-order-paths { background: var(--co-paper); }
.co-path-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.co-path-card { position: relative; display: flex; flex-direction: column; min-height: 410px; padding: clamp(26px, 3vw, 40px); overflow: hidden; border: 1px solid var(--co-border); border-radius: var(--co-radius-lg); background: #fff; text-decoration: none; transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease; }
.co-path-card::before { position: absolute; right: -80px; bottom: -110px; width: 260px; height: 260px; border-radius: 50%; content: ''; opacity: .38; transition: transform .35s ease; }
.co-path-card--ready::before { background: #ecd2c2; }
.co-path-card--personalize::before { background: var(--co-sage-light); }
.co-path-card--custom::before { background: var(--co-sand); }
.co-path-card:hover { transform: translateY(-8px); border-color: rgba(184,101,63,.46); box-shadow: var(--co-shadow); }
.co-path-card:hover::before { transform: scale(1.12); }
.co-path-card__icon { display: grid; place-items: center; width: 72px; height: 72px; margin-bottom: 54px; border-radius: 22px; background: var(--co-porcelain); color: var(--co-copper); }
.co-path-card__icon svg { width: 42px; height: 42px; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.co-path-card__number { position: absolute; top: 30px; right: 32px; color: rgba(31,33,29,.24); font-size: .74rem; font-weight: 850; letter-spacing: .15em; }
.co-path-card__label { display: block; margin-bottom: 8px; color: var(--co-copper); font-size: .68rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.co-path-card h3 { margin-bottom: 13px; }
.co-path-card p { color: var(--co-ink-soft); font-size: .96rem; }
.co-path-card .co-text-link { position: relative; z-index: 2; margin-top: auto; }

/* Collections */
.co-section--collections { overflow: hidden; background: var(--co-forest); color: #fff; }
.co-section--collections h2, .co-section--collections h3 { color: #fff; }
.co-section--collections .co-eyebrow { color: var(--co-gold-light); }
.co-section--collections .co-text-link { color: #fff; }
.co-collection-grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: minmax(280px, auto); gap: 18px; }
.co-collection-card { position: relative; min-height: 300px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: var(--co-radius); background: linear-gradient(145deg, #45463f, #24251f); color: #fff; text-decoration: none; isolation: isolate; }
.co-collection-card.is-featured { grid-column: span 2; min-height: 420px; }
.co-collection-card__media { position: absolute; inset: 0; display: grid; place-items: center; background-image: var(--co-card-image); background-position: center; background-size: cover; transition: transform .5s ease; }
.co-collection-card.has-image .co-collection-card__media { background-image: var(--co-card-image); }
.co-collection-card.has-placeholder:nth-child(4n+1) .co-collection-card__media { background: radial-gradient(circle at 70% 15%, #8b6b50, transparent 35%), linear-gradient(140deg, #66412e, #2f2822); }
.co-collection-card.has-placeholder:nth-child(4n+2) .co-collection-card__media { background: radial-gradient(circle at 70% 20%, #849078, transparent 38%), linear-gradient(140deg, #4b5547, #272d26); }
.co-collection-card.has-placeholder:nth-child(4n+3) .co-collection-card__media { background: radial-gradient(circle at 70% 20%, #c3a578, transparent 38%), linear-gradient(140deg, #695d4b, #302c25); }
.co-collection-card.has-placeholder:nth-child(4n+4) .co-collection-card__media { background: radial-gradient(circle at 70% 20%, #9a7465, transparent 38%), linear-gradient(140deg, #5d4239, #292421); }
.co-collection-card.has-placeholder .co-collection-card__media svg { width: 145px; height: 145px; fill: none; stroke: rgba(255,255,255,.12); stroke-width: 1; }
.co-collection-card.has-placeholder .co-collection-card__media > span { position: absolute; color: rgba(255,255,255,.1); font-family: var(--co-font-display); font-size: 11rem; font-weight: 700; }
.co-collection-card__shade { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(17,18,15,.94) 0, rgba(17,18,15,.45) 48%, rgba(17,18,15,.05) 100%); }
.co-collection-card__content { position: absolute; inset: auto 0 0; z-index: 2; padding: 28px; }
.co-collection-card__meta { display: block; margin-bottom: 8px; color: var(--co-gold-light); font-size: .68rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.co-collection-card h3 { margin-bottom: 10px; }
.co-collection-card p { max-width: 520px; margin: 0; color: rgba(255,255,255,.72); font-size: .85rem; line-height: 1.5; }
.co-collection-card__arrow { position: absolute; right: 24px; bottom: 24px; display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; color: #fff; transition: .25s ease; }
.co-collection-card__arrow svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.co-collection-card:hover .co-collection-card__media { transform: scale(1.045); }
.co-collection-card:hover .co-collection-card__arrow { background: #fff; color: var(--co-ink); }

/* Products */
.co-featured-products { background: var(--co-cream); }
.co-product-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.co-product-card { overflow: hidden; border: 1px solid var(--co-border); border-radius: var(--co-radius); background: #fff; box-shadow: 0 0 0 rgba(0,0,0,0); transition: transform .25s ease, box-shadow .25s ease; }
.co-product-card:hover { transform: translateY(-6px); box-shadow: var(--co-shadow); }
.co-product-card__image { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 3; background: var(--co-cream-deep); }
.co-product-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.co-product-card:hover .co-product-card__image img { transform: scale(1.035); }
.co-product-card__badge { position: absolute; top: 14px; left: 14px; z-index: 2; display: inline-flex; padding: 7px 10px; border-radius: 999px; background: rgba(255,253,249,.92); color: var(--co-copper); font-size: .66rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; backdrop-filter: blur(8px); }
.co-product-card__body { padding: 22px; }
.co-product-card__body h3 { margin-bottom: 8px; font-size: 1.45rem; }
.co-product-card__body h3 a { text-decoration: none; }
.co-product-card__price { margin-bottom: 15px; color: var(--co-copper); font-weight: 850; }

/* Workshop */
.co-workshop { background: var(--co-paper); }
.co-workshop__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(50px, 8vw, 110px); align-items: center; }
.co-workshop__visual { position: relative; display: grid; grid-template-columns: 1.2fr .8fr; grid-template-rows: 1fr 1fr; gap: 14px; min-height: 600px; padding: 18px; border-radius: var(--co-radius-xl); background: var(--co-cream); box-shadow: var(--co-shadow); }
.co-workshop__visual.has-image { background-image: linear-gradient(to top, rgba(26,24,20,.28), transparent 55%), var(--co-workshop-image); background-position: center; background-size: cover; }
.co-machine-tile { display: flex; flex-direction: column; justify-content: flex-end; min-height: 230px; padding: 28px; border-radius: 28px; color: #fff; overflow: hidden; }
.co-machine-tile strong { font-family: var(--co-font-display); font-size: clamp(2rem, 4vw, 4.2rem); line-height: .9; }
.co-machine-tile span { margin-top: 10px; font-size: .75rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.co-machine-tile--cnc { grid-row: 1 / 3; background: radial-gradient(circle at 75% 18%, #b97a57, transparent 32%), linear-gradient(145deg, var(--co-walnut), #3f2c23); }
.co-machine-tile--laser { background: radial-gradient(circle at 75% 20%, #a4ae9e, transparent 35%), linear-gradient(145deg, var(--co-sage-deep), var(--co-forest)); }
.co-machine-tile--print { background: radial-gradient(circle at 75% 20%, #d09673, transparent 35%), linear-gradient(145deg, var(--co-copper), var(--co-copper-hover)); }
.co-workshop__stamp { position: absolute; left: 38px; bottom: -24px; display: flex; align-items: center; gap: 9px; padding: 14px 18px; border-radius: 999px; background: var(--co-paper); color: var(--co-copper); box-shadow: var(--co-shadow-sm); font-size: .72rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.co-workshop__stamp svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.co-workshop__content > p { color: var(--co-ink-soft); font-size: 1.05rem; }
.co-check-list { display: grid; gap: 13px; margin: 28px 0 34px; padding: 0; list-style: none; }
.co-check-list li { position: relative; padding-left: 34px; }
.co-check-list li::before { position: absolute; left: 0; top: .1em; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--co-sage-light); color: var(--co-success); content: '✓'; font-size: .72rem; font-weight: 900; }

/* Process */
.co-process { background: var(--co-cream); }
.co-process-list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--co-border-dark); }
.co-process-list li { position: relative; padding: 32px 30px 12px 0; border-right: 1px solid var(--co-border-dark); }
.co-process-list li:not(:first-child) { padding-left: 30px; }
.co-process-list li:last-child { border-right: 0; }
.co-process-list__number { display: block; margin-bottom: 35px; color: var(--co-copper); font-size: .68rem; font-weight: 850; letter-spacing: .14em; }
.co-process-list h3 { font-size: 1.5rem; }
.co-process-list p { margin: 0; color: var(--co-ink-soft); font-size: .9rem; }
.co-process__action { margin-top: 42px; }

/* Projects */
.co-section--projects { background: var(--co-forest); color: #fff; }
.co-section--projects h2, .co-section--projects h3 { color: #fff; }
.co-section--projects .co-eyebrow { color: var(--co-gold-light); }
.co-project-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.co-project-card { overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: var(--co-radius); background: rgba(255,255,255,.04); color: #fff; text-decoration: none; }
.co-project-card__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #34352f; }
.co-project-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.co-project-card__content { display: flex; justify-content: space-between; gap: 18px; align-items: center; padding: 20px 22px; }
.co-project-card__content svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.co-project-card:hover img { transform: scale(1.04); }

/* CTA and footer */
.co-final-cta { background: var(--co-walnut); color: #fff; }
.co-final-cta h2 { color: #fff; }
.co-final-cta .co-eyebrow { color: var(--co-gold-light); }
.co-final-cta__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 70px; align-items: center; }
.co-final-cta__copy { max-width: 850px; }
.co-final-cta__copy p { max-width: 700px; margin: 0; color: rgba(255,255,255,.73); }
.co-final-cta__actions { display: grid; gap: 18px; justify-items: start; }
.co-site-footer { background: var(--co-forest-deep); color: #fff; }
.co-footer-grid { display: grid; grid-template-columns: 1.35fr .75fr .85fr 1fr; gap: clamp(35px, 6vw, 85px); padding-block: 78px 64px; }
.co-footer-brand h2 { color: #fff; font-size: clamp(2rem, 3vw, 3rem); }
.co-footer-brand p { max-width: 430px; color: rgba(255,255,255,.66); }
.co-site-footer h3 { color: #fff; font-family: var(--co-font-body); font-size: .72rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.co-footer-links, .co-footer-points { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.co-footer-links a { color: rgba(255,255,255,.72); text-decoration: none; }
.co-footer-links a:hover { color: #fff; }
.co-footer-points li { color: rgba(255,255,255,.72); }
.co-footer-points li::before { content: '✓'; margin-right: 9px; color: var(--co-gold-light); }
.co-footer-contact { display: grid; gap: 8px; margin-top: 24px; }
.co-footer-contact a { color: #fff; font-weight: 760; text-decoration: none; }
.co-footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-block: 22px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.55); font-size: .76rem; }

/* Page and archive headers */
.co-page-hero { position: relative; overflow: hidden; padding-block: clamp(72px, 9vw, 130px); background: var(--co-cream); }
.co-page-hero::after { position: absolute; right: -10%; top: -60%; width: 50%; height: 190%; border-radius: 50%; background: radial-gradient(circle, rgba(184,101,63,.15), transparent 68%); content: ''; }
.co-page-hero__inner { position: relative; z-index: 1; }
.co-page-hero h1 { max-width: 1000px; font-size: clamp(3rem, 6vw, 6.2rem); }
.co-page-hero__intro { max-width: 720px; color: var(--co-ink-soft); font-size: 1.12rem; }
.co-page-content { background: var(--co-paper); }
.co-page-content .wp-block-image, .co-single-image { overflow: hidden; border-radius: var(--co-radius); }
.co-post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.co-post-card { overflow: hidden; border: 1px solid var(--co-border); border-radius: var(--co-radius); background: #fff; }
.co-post-card img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.co-post-card__body { padding: 24px; }

/* WooCommerce */
.co-commerce-hero { padding-block: clamp(65px, 7vw, 105px); background: var(--co-cream); }
.co-commerce-hero__inner { display: grid; grid-template-columns: 1fr .55fr; gap: 50px; align-items: end; }
.co-commerce-hero h1 { margin: 0; font-size: clamp(3rem, 6vw, 6rem); }
.co-commerce-hero p { margin: 0; color: var(--co-ink-soft); font-size: 1.05rem; }
.co-commerce-wrap { padding-top: 58px; padding-bottom: 110px; }
.woocommerce .woocommerce-breadcrumb { margin-bottom: 28px; color: var(--co-ink-soft); font-size: .79rem; }
.woocommerce .woocommerce-breadcrumb a { color: var(--co-copper); }
.woocommerce-products-header__title.page-title { font-size: clamp(2.5rem, 5vw, 4.8rem); }
.co-shop-categories { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 30px; }
.co-shop-categories a { display: inline-flex; padding: 9px 14px; border: 1px solid var(--co-border); border-radius: 999px; background: #fff; color: var(--co-ink); font-size: .76rem; font-weight: 760; text-decoration: none; }
.co-shop-categories a:hover { border-color: var(--co-copper); color: var(--co-copper); }
.woocommerce .woocommerce-result-count { color: var(--co-ink-soft); font-size: .82rem; }
.woocommerce .woocommerce-ordering select { min-height: 44px; padding: 8px 38px 8px 12px; border: 1px solid var(--co-border); border-radius: 999px; background: #fff; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; margin: 40px 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { position: relative; width: auto !important; margin: 0 !important; overflow: hidden; border: 1px solid var(--co-border); border-radius: var(--co-radius); background: #fff; transition: transform .25s ease, box-shadow .25s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: var(--co-shadow); }
.woocommerce ul.products li.product a img { margin: 0; aspect-ratio: 4/3; object-fit: cover; background: var(--co-cream); transition: transform .4s ease; }
.woocommerce ul.products li.product:hover a img { transform: scale(1.035); }
.co-loop-flow-badge { display: inline-flex; margin: 18px 22px 0; padding: 6px 9px; border-radius: 999px; background: var(--co-sage-light); color: var(--co-success); font-size: .64rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .button { margin-left: 22px; margin-right: 22px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding-top: 13px; font-family: var(--co-font-display); font-size: 1.38rem; }
.woocommerce ul.products li.product .price { color: var(--co-copper); font-weight: 850; }
.woocommerce ul.products li.product .button { margin-top: 5px; margin-bottom: 22px; min-height: 44px; padding: 11px 17px; font-size: .82rem; }
.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); gap: clamp(42px, 7vw, 90px); }
.woocommerce div.product div.images, .woocommerce div.product div.summary { float: none; width: auto; }
.woocommerce div.product div.images img { border-radius: var(--co-radius); }
.woocommerce div.product .product_title { font-size: clamp(2.6rem, 5vw, 4.9rem); }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--co-copper); font-size: 1.55rem; font-weight: 850; }
.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.woocommerce .quantity .qty { min-height: 52px; border: 1px solid var(--co-border); border-radius: 999px; }
.woocommerce div.product .woocommerce-tabs, .woocommerce div.product .related { grid-column: 1 / -1; }
.woocommerce-tabs { margin-top: 68px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { padding: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-color: var(--co-border); }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border-color: var(--co-border); background: var(--co-cream); }
.woocommerce table.shop_table { border-color: var(--co-border); border-radius: var(--co-radius); }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
    min-height: 50px; padding: 10px 14px; border: 1px solid var(--co-border); border-radius: var(--co-radius-sm); background: #fff;
}
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top-color: var(--co-copper); background: var(--co-cream); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--co-copper); }

/* Core plugin forms and grids */
.co-form { display: grid; gap: 22px; }
.co-form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.co-field { display: grid; gap: 7px; }
.co-field--full { grid-column: 1 / -1; }
.co-field label { font-weight: 760; }
.co-field label span { color: var(--co-danger); }
.co-field input, .co-field select, .co-field textarea { width: 100%; min-height: 52px; padding: 12px 14px; border: 1px solid var(--co-border); border-radius: var(--co-radius-sm); background: #fff; color: var(--co-ink); }
.co-field input:focus, .co-field select:focus, .co-field textarea:focus { outline: 2px solid rgba(184,101,63,.20); border-color: var(--co-copper); }
.co-field textarea { min-height: 145px; resize: vertical; }
.co-field small { color: var(--co-ink-soft); }
.co-notice { padding: 18px 20px; border-left: 4px solid var(--co-success); border-radius: var(--co-radius-sm); background: var(--co-sage-light); }
.co-notice--error { border-left-color: var(--co-danger); background: #f9e8e5; }
.co-honeypot { position: absolute !important; left: -9999px !important; opacity: 0 !important; }
.co-personalization-box { clear: both; margin: 25px 0; padding: 24px; border: 1px solid var(--co-border); border-radius: var(--co-radius); background: var(--co-cream); }
.co-product-flow-note { margin: 15px 0; padding: 14px 18px; border-radius: var(--co-radius-sm); background: var(--co-sage-light); color: var(--co-success); font-weight: 700; }
.co-gallery-grid, .co-customize-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.co-gallery-card, .co-customize-card { overflow: hidden; border: 1px solid var(--co-border); border-radius: var(--co-radius); background: #fff; transition: .25s ease; }
.co-gallery-card:hover, .co-customize-card:hover { transform: translateY(-5px); box-shadow: var(--co-shadow-sm); }
.co-gallery-card img, .co-customize-card img { width: 100%; aspect-ratio: 4/3; object-fit: cover; background: var(--co-cream); }
.co-gallery-card__body, .co-customize-card__body { padding: 22px; }
.co-gallery-card__body h3, .co-customize-card__body h3 { margin-bottom: 8px; }
.co-meta-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.co-chip { display: inline-flex; padding: 5px 9px; border-radius: 999px; background: var(--co-sage-light); color: var(--co-success); font-size: .72rem; font-weight: 800; }


/* V4.2 palette refinements */
.co-site-header .custom-logo-link { display: inline-flex; align-items: center; }
.co-site-header .custom-logo { filter: drop-shadow(0 2px 8px rgba(0,0,0,.10)); }
.co-header-main a:focus-visible,
.co-header-main button:focus-visible { outline: 3px solid rgba(231,198,179,.92); outline-offset: 3px; }
.co-search-panel { background: var(--co-porcelain); }
.co-search-close { color: var(--co-espresso); }
.co-section--collections h2,
.co-section--projects h2,
.co-final-cta h2,
.co-site-footer h2 { color: #fff; }
.co-section--collections .co-section-heading--split > p,
.co-section--projects .co-section-heading--split > p { color: rgba(255,255,255,.72); }
.co-product-card__price,
.co-process-list__number,
.co-workshop__stamp { color: var(--co-copper); }
.co-loop-flow-badge,
.co-chip { background: var(--co-sage-light); color: var(--co-success); }
.woocommerce span.onsale { background: var(--co-copper); color: #fff; }

/* Tablet */
@media (max-width: 1180px) {
    .co-header-main { grid-template-columns: 1fr auto auto; }
    .co-menu-toggle { display: inline-grid; place-items: center; order: 2; }
    .co-header-actions { order: 3; }
    .co-nav { position: fixed; inset: 126px 0 0; display: none; justify-self: stretch; padding: 30px 24px 70px; overflow: auto; background: var(--co-paper); }
    .co-nav__list a { color: var(--co-espresso); }
    .co-nav__list a:hover, .co-nav__list .current-menu-item > a { color: var(--co-copper); }
    .co-nav__cta > a { color: #fff !important; }
    .admin-bar .co-nav { top: 158px; }
    .co-nav.is-open { display: block; }
    .co-nav__list { width: min(100%, 760px); margin-inline: auto; align-items: stretch; flex-direction: column; gap: 0; }
    .co-nav__list > li { border-bottom: 1px solid var(--co-border); }
    .co-nav__list > li > a { display: block; padding: 17px 4px; font-family: var(--co-font-display); font-size: 1.7rem; }
    .co-nav__cta > a { margin: 16px 0; text-align: center; }
    .co-nav__list .sub-menu { position: static; display: grid; padding: 0 0 14px 18px; box-shadow: none; border: 0; background: transparent; }
    .co-hero__grid { grid-template-columns: 1fr; }
    .co-hero__visual { min-height: 570px; }
    .co-hero-media { inset: 1% 5% 2% 10%; }
    .co-trust-rail__grid { grid-template-columns: repeat(2, 1fr); }
    .co-trust-item:nth-child(2) { border-right: 0; }
    .co-trust-item:nth-child(n+3) { border-top: 1px solid var(--co-border); }
    .co-path-grid { grid-template-columns: 1fr; }
    .co-path-card { min-height: 310px; }
    .co-path-card__icon { margin-bottom: 30px; }
    .co-collection-grid { grid-template-columns: repeat(2, 1fr); }
    .co-product-grid, .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
    .co-workshop__grid { grid-template-columns: 1fr; }
    .co-workshop__visual { min-height: 560px; }
    .co-process-list { grid-template-columns: repeat(2, 1fr); }
    .co-process-list li:nth-child(2) { border-right: 0; }
    .co-process-list li:nth-child(n+3) { border-top: 1px solid var(--co-border-dark); }
    .co-project-grid { grid-template-columns: repeat(2, 1fr); }
    .co-footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 782px) {
    .admin-bar .co-site-header { top: 46px; }
    .admin-bar .co-nav { top: 172px; }
}

/* Mobile */
@media (max-width: 720px) {
    body { font-size: 16px; }
    .co-container { width: min(calc(100% - 28px), var(--co-container)); }
    .co-announcement__inner { min-height: 38px; justify-content: center; }
    .co-announcement__message { display: none; }
    .co-announcement__links > span { display: none; }
    .co-header-main { min-height: 76px; gap: 8px; }
    .custom-logo { max-width: 170px; }
    .co-brand__name { font-size: 1.35rem; }
    .co-brand__tagline { display: none; }
    .co-header-actions { gap: 4px; }
    .co-header-actions .co-account-link { display: none; }
    .co-icon-link { width: 40px; height: 40px; }
    .co-nav { inset: 114px 0 0; }
    .admin-bar .co-nav { top: 160px; }
    .co-search-panel__inner { padding-block: 12px; }
    .co-search-form { grid-template-columns: auto 1fr auto; }
    .co-search-form .co-button { display: none; }
    .co-hero__grid { min-height: auto; padding-block: 58px 76px; }
    .co-hero__content h1 { font-size: clamp(3rem, 14vw, 4.9rem); }
    .co-hero__visual { min-height: 410px; }
    .co-hero-media { inset: 5% 2% 2% 5%; border-radius: 38% 10% 25% 12%; }
    .co-hero-note--top { right: 0; width: 55%; padding: 15px; }
    .co-hero-note--top strong { font-size: 1rem; }
    .co-hero-note--bottom { left: 2%; bottom: 3%; padding: 13px 15px; }
    .co-trust-rail__grid { grid-template-columns: 1fr; }
    .co-trust-item { min-height: 94px; border-right: 0; border-left: 0 !important; border-top: 1px solid var(--co-border); }
    .co-trust-item:first-child { border-top: 0; }
    .co-section-heading--split, .co-final-cta__inner, .co-commerce-hero__inner { grid-template-columns: 1fr; gap: 20px; }
    .co-collection-grid, .co-product-grid, .co-project-grid, .co-post-grid, .co-gallery-grid, .co-customize-grid, .woocommerce ul.products { grid-template-columns: 1fr; }
    .co-collection-card.is-featured { grid-column: auto; min-height: 340px; }
    .co-collection-card { min-height: 300px; }
    .co-collection-card p { padding-right: 55px; }
    .co-workshop__visual { grid-template-columns: 1fr 1fr; min-height: 470px; padding: 12px; border-radius: 34px; }
    .co-machine-tile { min-height: 150px; padding: 20px; border-radius: 22px; }
    .co-machine-tile--cnc { grid-column: 1 / -1; grid-row: auto; }
    .co-machine-tile strong { font-size: 2.5rem; }
    .co-workshop__stamp { left: 24px; }
    .co-process-list { grid-template-columns: 1fr; }
    .co-process-list li, .co-process-list li:not(:first-child) { padding: 27px 0; border-right: 0; border-top: 1px solid var(--co-border-dark); }
    .co-process-list li:first-child { border-top: 0; }
    .co-process-list__number { margin-bottom: 15px; }
    .co-footer-grid { grid-template-columns: 1fr; gap: 35px; }
    .co-footer-bottom { align-items: flex-start; flex-direction: column; }
    .co-form-grid { grid-template-columns: 1fr; }
    .woocommerce div.product { grid-template-columns: 1fr; }
    .co-page-hero { padding-top: 65px; }
}

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


/* V4.3 rich-contrast visual layer */
body {
    background: var(--co-white);
    color: var(--co-espresso);
}
::selection { background: var(--co-teal); color: #fff; }
.co-eyebrow { color: var(--co-copper); }
.co-text-link { color: var(--co-teal-deep); }
.co-text-link:hover { color: var(--co-copper); }

.co-site-header {
    background: linear-gradient(105deg, rgba(33,19,14,.99), rgba(50,23,15,.99));
    border-bottom-color: rgba(241,201,109,.22);
}
.co-site-header.is-scrolled { box-shadow: 0 16px 44px rgba(33,19,14,.34); }
.co-announcement {
    background: linear-gradient(90deg, var(--co-forest-deep), var(--co-forest));
    border-bottom: 1px solid rgba(0,153,168,.28);
}
.co-announcement__message svg { stroke: var(--co-maple-light); }
.co-brand__name { color: var(--co-white); }
.co-brand__tagline { color: rgba(255,248,238,.78); }
.co-nav__list a { color: var(--co-white); }
.co-nav__list a:hover,
.co-nav__list .current-menu-item > a { color: var(--co-maple-light); }
.co-nav__list > li:not(.co-nav__cta) > a::after { background: var(--co-teal); height: 3px; }
.co-nav__cta > a {
    background: linear-gradient(135deg, var(--co-copper), #df7a35);
    box-shadow: 0 10px 28px rgba(199,90,42,.34);
}
.co-icon-link { border-color: rgba(255,248,238,.34); }
.co-icon-link:hover { background: var(--co-teal); border-color: var(--co-teal); }
.co-cart-count { background: var(--co-maple-gold); color: var(--co-espresso); }

.co-hero {
    background:
        radial-gradient(circle at 83% 12%, rgba(0,153,168,.17), transparent 27%),
        radial-gradient(circle at 64% 88%, rgba(199,90,42,.2), transparent 34%),
        linear-gradient(135deg, #fff6e7 0%, #f1d8b8 54%, #d6a068 100%);
}
.co-hero::before {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(107,50,31,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(107,50,31,.035) 1px, transparent 1px);
    background-size: 34px 34px;
    content: '';
    pointer-events: none;
}
.co-hero__content,
.co-hero__visual { position: relative; z-index: 1; }
.co-hero .co-eyebrow { color: var(--co-walnut); }
.co-hero h1 { color: var(--co-espresso); }
.co-hero__content > p { color: #513a2e; }
.co-hero-media {
    background: linear-gradient(145deg, var(--co-walnut-dark), var(--co-walnut));
    border: 3px solid rgba(213,154,56,.62);
    box-shadow: 0 40px 110px rgba(50,23,15,.38);
}
.co-hero-note {
    border-color: rgba(107,50,31,.2);
    background: rgba(255,248,238,.95);
    color: var(--co-espresso);
}
.co-hero-note--bottom { background: rgba(18,58,50,.96); color: #fff; border-color: rgba(0,153,168,.5); }
.co-hero-note--bottom svg { color: var(--co-maple-light); }
.co-hero__proof span::before { background: var(--co-teal); }

.co-trust-rail {
    background: linear-gradient(100deg, var(--co-forest-deep), var(--co-forest));
    border-color: rgba(0,153,168,.32);
    color: #fff;
}
.co-trust-item strong { color: #fff; }
.co-trust-item small { color: rgba(255,248,238,.72); }
.co-trust-item svg { color: var(--co-maple-light); }

.co-order-paths { background: var(--co-white); }
.co-path-card {
    border-color: var(--co-border);
    background: linear-gradient(160deg, #fffaf2, #f6e7d2);
    box-shadow: 0 12px 36px rgba(50,23,15,.08);
}
.co-path-card:hover { border-color: var(--co-copper); box-shadow: 0 24px 58px rgba(50,23,15,.2); }
.co-path-card--ready::before { background: linear-gradient(90deg, var(--co-copper), #ec8a42); }
.co-path-card--personalize::before { background: linear-gradient(90deg, var(--co-teal-deep), var(--co-teal)); }
.co-path-card--custom::before { background: linear-gradient(90deg, var(--co-maple-gold), #efc566); }
.co-path-card__icon { background: var(--co-walnut-dark); color: var(--co-maple-light); }
.co-path-card--personalize .co-path-card__icon { background: var(--co-forest); color: #fff; }
.co-path-card--custom .co-path-card__icon { background: var(--co-maple-gold); color: var(--co-espresso); }
.co-path-card__label { color: var(--co-copper); }
.co-path-card--personalize .co-path-card__label { color: var(--co-teal-deep); }
.co-path-card--custom .co-path-card__label { color: #8b5b05; }

.co-section--collections {
    background:
        radial-gradient(circle at 10% 0, rgba(0,153,168,.2), transparent 30%),
        linear-gradient(145deg, var(--co-forest-deep), #16473d 58%, #0b2c26);
}
.co-section--collections .co-eyebrow { color: var(--co-maple-light); }
.co-collection-card { border-color: rgba(241,201,109,.28); box-shadow: 0 16px 44px rgba(0,0,0,.2); }
.co-collection-card.has-placeholder:nth-child(4n+1) .co-collection-card__media { background: radial-gradient(circle at 70% 15%, #d47739, transparent 35%), linear-gradient(140deg, #7a3820, #2d160f); }
.co-collection-card.has-placeholder:nth-child(4n+2) .co-collection-card__media { background: radial-gradient(circle at 70% 20%, #00a8b6, transparent 36%), linear-gradient(140deg, #125247, #082620); }
.co-collection-card.has-placeholder:nth-child(4n+3) .co-collection-card__media { background: radial-gradient(circle at 70% 20%, #efbd59, transparent 36%), linear-gradient(140deg, #7b541b, #2f210d); }
.co-collection-card.has-placeholder:nth-child(4n+4) .co-collection-card__media { background: radial-gradient(circle at 70% 20%, #b85e36, transparent 36%), linear-gradient(140deg, #63301f, #25130e); }
.co-collection-card__meta { color: var(--co-maple-light); }
.co-collection-card__arrow { border-color: rgba(241,201,109,.62); }
.co-collection-card:hover .co-collection-card__arrow { background: var(--co-teal); color: #fff; border-color: var(--co-teal); }

.co-featured-products { background: linear-gradient(180deg, #f4e2ca, #fff8ee); }
.co-product-card,
.woocommerce ul.products li.product,
.co-gallery-card,
.co-customize-card {
    border-color: var(--co-border);
    background: #fffaf2;
    box-shadow: 0 8px 24px rgba(50,23,15,.08);
}
.co-product-card:hover,
.woocommerce ul.products li.product:hover,
.co-gallery-card:hover,
.co-customize-card:hover { box-shadow: 0 24px 60px rgba(50,23,15,.2); }
.co-product-card__badge,
.co-loop-flow-badge,
.co-chip {
    background: var(--co-teal-light);
    color: var(--co-teal-deep);
    border: 1px solid rgba(0,153,168,.22);
}
.co-product-card__price,
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--co-copper); }

.co-workshop { background: linear-gradient(160deg, #fff8ee 0%, #eed6b8 100%); }
.co-workshop__visual { background: var(--co-walnut-dark); border: 2px solid rgba(213,154,56,.46); }
.co-machine-tile--cnc { background: radial-gradient(circle at 75% 18%, #e87c39, transparent 32%), linear-gradient(145deg, #7a3820, #2d160f); }
.co-machine-tile--laser { background: radial-gradient(circle at 75% 20%, #00adba, transparent 35%), linear-gradient(145deg, #146254, var(--co-forest-deep)); }
.co-machine-tile--print { background: radial-gradient(circle at 75% 20%, #f2c65e, transparent 35%), linear-gradient(145deg, #b34e20, #70250f); }
.co-workshop__stamp { background: var(--co-forest); color: #fff; border: 1px solid rgba(0,153,168,.55); }
.co-check-list li::before { background: var(--co-teal); color: #fff; }

.co-process {
    background:
        radial-gradient(circle at 85% 10%, rgba(0,153,168,.14), transparent 28%),
        linear-gradient(135deg, var(--co-walnut-dark), #4f2417);
    color: #fff;
}
.co-process h2,
.co-process h3 { color: #fff; }
.co-process .co-eyebrow { color: var(--co-maple-light); }
.co-process .co-section-heading > p,
.co-process-list p { color: rgba(255,248,238,.72); }
.co-process-list { border-top-color: rgba(241,201,109,.38); }
.co-process-list li { border-right-color: rgba(241,201,109,.25); }
.co-process-list__number { color: var(--co-teal); }
.co-process .co-button--outline { color: #fff !important; border-color: var(--co-maple-light); }
.co-process .co-button--outline:hover { background: var(--co-maple-light); color: var(--co-espresso) !important; }

.co-section--projects {
    background:
        radial-gradient(circle at 12% 8%, rgba(199,90,42,.22), transparent 30%),
        linear-gradient(145deg, #21130e, #482117 62%, #2b160f);
}
.co-section--projects .co-eyebrow { color: var(--co-teal); }
.co-project-card { border-color: rgba(241,201,109,.28); background: rgba(255,248,238,.05); }

.co-final-cta {
    background:
        radial-gradient(circle at 80% 20%, rgba(241,201,109,.34), transparent 28%),
        linear-gradient(110deg, #8a3d20, var(--co-copper) 52%, #a6401b);
}
.co-final-cta .co-eyebrow { color: #fff0bd; }
.co-final-cta .co-button--light { background: var(--co-forest-deep); border-color: var(--co-forest-deep); color: #fff !important; }
.co-final-cta .co-button--light:hover { background: var(--co-teal-deep); border-color: var(--co-teal-deep); }

.co-site-footer {
    background: linear-gradient(145deg, var(--co-forest-deep), #113a32 65%, #08211d);
    border-top: 4px solid var(--co-teal);
}
.co-site-footer a:hover { color: var(--co-maple-light); }

.co-page-hero,
.co-commerce-hero {
    background:
        radial-gradient(circle at 83% 10%, rgba(0,153,168,.17), transparent 28%),
        linear-gradient(135deg, #fff6e7, #e9c69c);
}
.co-page-hero::after { background: radial-gradient(circle, rgba(199,90,42,.28), transparent 66%); }
.co-page-content { background: var(--co-white); }
.co-shop-categories a:hover { background: var(--co-teal); color: #fff; border-color: var(--co-teal); }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error { background: #fff0dc; border-top-color: var(--co-copper); }
.co-notice,
.co-product-flow-note { background: var(--co-teal-light); color: var(--co-teal-deep); }
.woocommerce span.onsale { background: var(--co-copper); }

@media (max-width: 1080px) {
    .co-nav { background: linear-gradient(160deg, #fff8ee, #f0d8b9); }
    .co-nav__list a { color: var(--co-espresso); }
    .co-nav__list a:hover,
    .co-nav__list .current-menu-item > a { color: var(--co-copper); }
    .co-nav__cta > a { color: #fff !important; }
}


/* V4.4 hero integration refresh */
.co-hero__grid {
    grid-template-columns: minmax(0, .93fr) minmax(500px, 1.07fr);
    align-items: center;
}
.co-hero__visual {
    min-height: 560px;
}
.co-hero__visual::before {
    top: 8%;
    left: 3%;
    width: 88%;
    height: 78%;
    border-radius: 32px;
    border-color: rgba(184,101,63,.18);
    transform: none;
}
.co-hero-media {
    inset: 4% 0 2% 3%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: visible;
    border-radius: 30px;
    background: transparent;
    box-shadow: none;
    transform: none;
}
.co-hero-media img {
    width: 100%;
    height: auto;
    object-fit: contain;
    border-radius: 26px;
    box-shadow: 0 28px 60px rgba(50,23,15,.18);
}
.co-hero-media__grain {
    display: none;
}
@media (max-width: 1100px) {
    .co-hero__grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }
    .co-hero__visual {
        min-height: 0;
    }
    .co-hero__visual::before {
        left: 4%;
        width: 92%;
        height: 86%;
    }
    .co-hero-media {
        inset: 0;
    }
}
