/* ============================================================
   Kose — front-end + editor styles
   Canon palette (source of truth): Cream #F6F1E7 · Oat #E7DCC6 · Clay #BE7256
   (primary accent) · Clay Deep #9E5A41 · Sage #8B9A7E (secondary accent) ·
   Birch #D7B98E · Ink #2C2722 · Stone #8C8479 · logo-clay #D8917A.
   No pink / rose / blush / pastel-blue.
   ============================================================ */

:root{
  --m-cream:#F6F1E7; --m-surface:#FCFAF5; --m-sand:#E7DCC6; --m-oat:#E7DCC6;
  --m-birch:#D7B98E; --m-clay:#BE7256; --m-clay-deep:#9E5A41; --m-logo-clay:#D8917A;
  --m-sage:#8B9A7E;
  --m-ink:#2C2722; --m-ink-soft:#34302B; --m-muted:#8C8479; --m-stone:#8C8479; --m-line:#E7DCC6;
  --m-serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
}

body{ -webkit-font-smoothing:antialiased; }

/* eyebrow label */
.mabels-eyebrow{ font-size:12px !important; letter-spacing:.22em; text-transform:uppercase; color:var(--m-clay); font-weight:600; margin:0 0 8px; }
.mabels-eyebrow-light{ color:var(--m-logo-clay) !important; }
/* eyebrows on coloured (clay/sage) bands need a light, legible tone */
.has-clay-background-color .mabels-eyebrow,
.has-sage-background-color .mabels-eyebrow,
.has-clay-background-color .mabels-eyebrow-light,
.has-sage-background-color .mabels-eyebrow-light{ color:rgba(255,255,255,.9) !important; }

/* section heads */
.mabels-sechead{ max-width:640px; margin:0 auto 48px; text-align:center; }
.mabels-sechead h2{ margin:8px 0 12px; }

/* ---------- Header ---------- */
.mabels-announce p{ margin:0; }
.mabels-announce strong{ color:var(--m-logo-clay); }
.mabels-header-wrap{ position:sticky; top:0; z-index:50; background:rgba(248,243,235,.94); backdrop-filter:blur(8px); border-bottom:1px solid var(--m-line); }
/* The FSE header template-part wrapper is only header-height, so the inner sticky has no room — make the wrapper itself sticky within .wp-site-blocks (full-page) */
.wp-site-blocks > header.wp-block-template-part{ position:sticky; top:0; z-index:50; }
.mabels-nav{ min-height:74px; padding-top:8px; padding-bottom:8px; max-width:calc(1240px + 48px); margin-inline:auto; padding-inline:24px; box-sizing:border-box; }
.mabels-announce{ padding-inline:24px; }
.mabels-nav .wp-block-site-title a{ color:var(--m-ink); }
.mabels-nav .wp-block-site-logo,.mabels-nav .kose-logo{ display:flex; align-items:center; line-height:0; }
.mabels-nav .custom-logo{ height:58px; width:auto; max-width:150px; object-fit:contain; }
.mabels-mainmenu a{ color:var(--m-ink); opacity:.82; }
.mabels-mainmenu a:hover{ opacity:1; }
.mabels-nav-icons p{ margin:0; }
.mabels-nav-icons a{ color:var(--m-ink); }
.mabels-nav-icons a:hover{ opacity:.6; }

/* ---------- Hero (image-led, overlay) ---------- */
.mabels-hero{ position:relative; min-height:clamp(560px,84vh,760px); display:flex; align-items:center;
  background:#26211c url('../img/hero.jpg') center/cover no-repeat; }
.mabels-hero::before{ content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg, rgba(18,15,12,.66) 0%, rgba(18,15,12,.34) 48%, rgba(18,15,12,.04) 100%); }
.mabels-hero-inner{ position:relative; z-index:2; max-width:620px !important; margin-left:0 !important; padding:80px 0; }
.mabels-hero-inner > *{ margin-left:0; }
.mabels-hero-h1{ color:#fff; font-size:clamp(46px,6vw,82px) !important; line-height:1.02 !important; margin:0 0 20px; }
.mabels-hero-sub{ color:rgba(255,255,255,.92); max-width:440px; margin:0 0 30px; font-size:1.1rem; line-height:1.55; }
.mabels-hero-btns{ gap:14px; flex-wrap:wrap; }
.mabels-hero-btns .wp-block-button:not(.mabels-btn-light) .wp-block-button__link{ background:#fff; color:var(--m-ink); }
.mabels-hero-btns .wp-block-button:not(.mabels-btn-light) .wp-block-button__link:hover{ background:var(--m-clay); color:#fff; }
.mabels-btn-light .wp-block-button__link{ background:transparent !important; color:#fff !important; border:1px solid rgba(255,255,255,.65) !important; }
.mabels-btn-light .wp-block-button__link:hover{ background:#fff !important; color:var(--m-ink) !important; }
@media(max-width:781px){
  .mabels-hero{ min-height:0; }
  .mabels-hero::before{ background:linear-gradient(180deg, rgba(18,15,12,.42), rgba(18,15,12,.6)); }
  .mabels-hero-inner{ padding:96px 0; max-width:100% !important; }
  .mabels-hero-sub{ max-width:100%; }
}

/* ---------- Category image tiles ---------- */
.mabels-cats{ display:grid !important; grid-template-columns:repeat(4,1fr); gap:16px; }
.mabels-cats > .wp-block-column{ margin:0; }
.mabels-cat{ display:block; position:relative; aspect-ratio:4/5; border-radius:10px; overflow:hidden;
  background:var(--m-oat) center/cover no-repeat; transition:transform .3s, box-shadow .3s; }
.mabels-cat:hover{ transform:translateY(-5px); box-shadow:0 18px 34px rgba(44,39,34,.16); }
.mabels-cat::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(44,39,34,0) 40%, rgba(44,39,34,.68) 100%); transition:.3s; }
.mabels-cat-label{ position:absolute; z-index:2; left:20px; right:20px; bottom:20px; color:#fff; }
.mabels-cat-name{ display:block; font-family:var(--m-serif); font-size:1.55rem; line-height:1.05; }
.mabels-cat-sub{ display:block; font-size:.78rem; letter-spacing:.05em; opacity:.85; margin-top:4px; text-transform:uppercase; }
.mabels-cat--furniture{ background-image:url('../img/cat-furniture.jpg'); }
.mabels-cat--toys{ background-image:url('../img/cat-toys.jpg'); }
.mabels-cat--play{ background-image:url('../img/cat-play.jpg'); }
.mabels-cat--printables{ background-image:url('../img/cat-printables.jpg'); }
.mabels-cat--plans{ background-image:url('../img/cat-plans.jpg'); }
/* solid-colour category tiles (no imagery) */
.mabels-cat-tile{ display:block; border-radius:10px; min-height:160px; height:100%; transition:transform .3s, box-shadow .3s; }
.mabels-cat-tile:hover{ transform:translateY(-5px); box-shadow:0 18px 34px rgba(44,39,34,.16); }
.mabels-cat-tile h3{ margin:0 0 4px; }
.mabels-cat-tile h3 a{ color:inherit; }
@media(max-width:900px){
  .mabels-cats{ grid-template-columns:repeat(2,1fr); }
}

/* ---------- Flagship feature (The One) ---------- */
.mabels-feature .wp-block-columns{ margin:0; }
.mabels-feature-cols{ gap:0 !important; min-height:520px; }
.mabels-feature-media{ align-self:stretch; min-height:380px; background:var(--m-birch) url('../img/the-one.jpg') center/cover no-repeat; }
.mabels-feature-body{ padding:64px clamp(24px,5vw,72px) !important; }
.mabels-feature-body h2{ margin:6px 0 14px; }
.mabels-modes{ list-style:none !important; margin:24px 0 28px; padding:0; }
.mabels-modes li{ padding:12px 0; border-bottom:1px solid var(--m-line); font-size:1rem; }
.mabels-modes li strong{ font-weight:600; }
@media(max-width:781px){
  .mabels-feature-cols{ min-height:0; }
  .mabels-feature-media{ min-height:300px; }
  .mabels-feature-body{ padding:48px 24px !important; }
}

/* ---------- Shop by age ---------- */
.mabels-ages{ gap:12px; justify-content:center; }
.mabels-age .wp-block-button__link{ background:var(--m-surface) !important; color:var(--m-ink) !important;
  border:1px solid var(--m-line) !important; border-radius:50px !important; padding:12px 26px !important;
  font-weight:600; letter-spacing:.03em; text-transform:none; font-size:.875rem; }
.mabels-age .wp-block-button__link:hover{ background:var(--m-ink) !important; color:#fff !important; border-color:var(--m-ink) !important; }

/* ---------- Product grid (WooCommerce) ---------- */
.mabels-products ul.products,
.woocommerce ul.products{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin:0; padding:0; }
.woocommerce ul.products::before,.woocommerce ul.products::after{ content:none; display:none; }
.woocommerce ul.products li.product{ width:auto !important; margin:0 !important; float:none !important;
  background:var(--m-surface); border:1px solid var(--m-line); border-radius:10px; overflow:hidden; text-align:left; transition:transform .25s, box-shadow .25s; padding:0; }
.woocommerce ul.products li.product:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(27,23,20,.10); }
.woocommerce ul.products li.product a img{ margin:0; border-radius:0; aspect-ratio:1/1; object-fit:cover; background:var(--m-sand); }
.woocommerce ul.products li.product .woocommerce-loop-product__title{ font-family:var(--wp--preset--font-family--sans); font-size:15px; font-weight:600; padding:16px 18px 4px; color:var(--m-ink); }
.woocommerce ul.products li.product .star-rating{ margin:0 18px 4px; font-size:.9em; color:var(--m-clay); }
.woocommerce ul.products li.product .price{ display:block; padding:0 18px 4px; color:var(--m-ink); font-weight:600; font-size:15px; }
.woocommerce ul.products li.product .price del{ color:var(--m-muted); font-weight:400; }
.woocommerce ul.products li.product .price ins{ text-decoration:none; }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{ margin:8px 18px 20px; background:var(--m-ink); color:#fff; border-radius:4px; font-size:12px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; padding:11px 16px; display:inline-block; }
.woocommerce ul.products li.product .button:hover{ background:#000; }

/* ---------- Product grid — Handpicked/All-Products BLOCK (wc-block-grid): equal-height cards, aligned full-width CTAs ---------- */
.mabels-products .wc-block-grid__products{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin:0; padding:0; list-style:none; }
.mabels-products .wc-block-grid__products::before,.mabels-products .wc-block-grid__products::after{ content:none; display:none; }
.mabels-products .wc-block-grid__product{ display:flex; flex-direction:column; height:100%; width:100% !important; max-width:none !important; justify-self:stretch; min-width:0; flex:1 1 auto !important; margin:0; padding:0; text-align:left;
  background:var(--m-surface); border:1px solid var(--m-line); border-radius:10px; overflow:hidden; transition:transform .25s, box-shadow .25s; }
.mabels-products .wc-block-grid__product:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(27,23,20,.10); }
.mabels-products .wc-block-grid__product-link{ display:block; }
.mabels-products .wc-block-grid__product-image img{ margin:0; width:100%; aspect-ratio:1/1; object-fit:cover; background:var(--m-sand); display:block; }
.mabels-products .wc-block-grid__product-title{ font-family:var(--wp--preset--font-family--sans); font-size:15px; font-weight:600; padding:16px 18px 4px; color:var(--m-ink); line-height:1.3; min-height:2.7em; }
.mabels-products .wc-block-grid__product-price{ display:block; padding:0 18px 4px; color:var(--m-ink); font-weight:600; font-size:15px; }
.mabels-products .wc-block-grid__product-price del{ color:var(--m-muted); font-weight:400; margin-right:6px; }
.mabels-products .wc-block-grid__product-price ins{ text-decoration:none; }
.mabels-products .wc-block-grid__product-onsale{ display:none; }
.mabels-products .wc-block-grid__product-add-to-cart{ box-sizing:border-box; margin-top:auto !important; width:100% !important; display:block; padding:12px 18px 20px; }
.mabels-products .wc-block-grid__product-add-to-cart .wp-block-button__link{ box-sizing:border-box; display:block; width:100% !important; text-align:center; white-space:nowrap; background:var(--m-ink); color:#fff; border-radius:4px; font-size:12px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; padding:12px 14px; }
.mabels-products .wc-block-grid__product-add-to-cart .wp-block-button__link:hover{ background:#000; }
@media(max-width:900px){ .mabels-products .wc-block-grid__products{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .mabels-products .wc-block-grid__products{ grid-template-columns:1fr; } }

/* ---------- Brand story (image + black band) ---------- */
.mabels-story .wp-block-columns{ margin:0; }
.mabels-story-cols{ gap:0 !important; min-height:460px; }
.mabels-story-media{ align-self:stretch; min-height:340px; background:#3a342d url('../img/story.jpg') center/cover no-repeat; }
.mabels-story-body{ padding:64px clamp(24px,5vw,72px) !important; }
.mabels-story-body h2{ margin:6px 0 16px; }
.mabels-story-p{ color:#D8CFC4; max-width:460px; }
.mabels-vals .wp-block-column{ flex-basis:auto; }
.mabels-val-n{ font-family:var(--m-serif); font-size:30px; color:var(--m-logo-clay); margin:0 0 2px; }
@media(max-width:781px){
  .mabels-story-cols{ min-height:0; }
  .mabels-story-media{ min-height:280px; }
  .mabels-story-body{ padding:48px 24px !important; }
}

/* ---------- Manifesto quote ---------- */
.mabels-quote{ text-align:center; }
.mabels-bq{ max-width:820px; margin:0 auto 16px !important; font-size:clamp(24px,3vw,34px) !important; line-height:1.34 !important; }
.mabels-cite{ letter-spacing:.16em; text-transform:uppercase; }

/* ---------- Values ticker (on black) ---------- */
.mabels-press{ gap:46px; }
.mabels-press-logo{ font-family:var(--wp--preset--font-family--sans); font-size:13px; letter-spacing:.18em; text-transform:uppercase; font-weight:600; color:var(--m-cream); margin:0; white-space:nowrap; }
/* on the light Oat ticker, use ink text */
.mabels-press.has-oat-background-color .mabels-press-logo{ color:var(--m-ink); }
.mabels-press-logo::after{ content:"·"; margin-left:46px; color:var(--m-logo-clay); }

/* ---------- Journal cards (image) ---------- */
.mabels-edit{ gap:24px; }
.mabels-ecard{ display:block; background:var(--m-surface); border:1px solid var(--m-line); border-radius:10px; overflow:hidden; height:100%; transition:transform .3s, box-shadow .3s; }
.mabels-ecard:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(27,23,20,.10); }
.mabels-ecard-ph{ display:block; height:210px; background:var(--m-sand) center/cover no-repeat; }
.mabels-ecard-ph--plans{ background-image:url('../img/cat-plans.jpg'); }
.mabels-ecard-ph--guide{ background-image:url('../img/story.jpg'); }
.mabels-ecard-ph--printable{ background-image:url('../img/cat-printables.jpg'); }
.mabels-ecard-body{ display:block; padding:22px; }
.mabels-ecard-body .mabels-eyebrow{ display:block; margin-bottom:8px; }
.mabels-ecard-h{ display:block; font-family:var(--m-serif); font-size:1.3rem; line-height:1.2; margin:0 0 8px; color:var(--m-ink); }
.mabels-ecard-p{ display:block; font-size:.92rem; color:var(--m-muted); margin-bottom:12px; line-height:1.5; }
.mabels-ecard .mabels-link{ display:block; color:var(--m-ink); font-weight:600; letter-spacing:.02em; font-size:.9rem; }

/* ---------- Instagram image tiles ---------- */
.mabels-insta h2{ margin-top:8px; }
.mabels-ig-strip{ display:grid; grid-template-columns:repeat(6,1fr); gap:10px; margin-top:34px; }
.mabels-ig{ display:block; aspect-ratio:1; border-radius:8px; background:var(--m-sand) center/cover no-repeat; transition:transform .3s, filter .25s; }
.mabels-ig:hover{ transform:translateY(-3px); filter:brightness(.93); }
.mabels-ig--1{ background-image:url('../img/hero.jpg'); }
.mabels-ig--2{ background-image:url('../img/cat-toys.jpg'); }
.mabels-ig--3{ background-image:url('../img/cat-play.jpg'); }
.mabels-ig--4{ background-image:url('../img/the-one.jpg'); }
.mabels-ig--5{ background-image:url('../img/cat-furniture.jpg'); }
.mabels-ig--6{ background-image:url('../img/story.jpg'); }
@media(max-width:781px){ .mabels-ig-strip{ grid-template-columns:repeat(3,1fr); } }

/* ---------- Newsletter ---------- */
.mabels-news-form{ display:flex; gap:10px; max-width:480px; margin:26px auto 0; }
.mabels-news-form input{ flex:1; padding:14px 18px; border:1px solid var(--m-line); border-radius:4px; font:inherit; background:#fff; }
.mabels-news-form button{ background:var(--m-ink); color:#fff; border:0; border-radius:4px; padding:14px 30px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; font-size:.8rem; cursor:pointer; }
.mabels-news-form button:hover{ background:#000; }
@media(max-width:520px){ .mabels-news-form{ flex-direction:column; } }

/* ---------- Footer ---------- */
.mabels-trust{ gap:50px; border-bottom:1px solid var(--m-line); }
.mabels-trust p{ margin:0; }
.mabels-flogo{ margin:0 0 12px; }
.mabels-flist{ list-style:none; margin:0; padding:0; }
.mabels-flist li{ margin-bottom:10px; }
.mabels-flist a{ color:var(--m-muted); }
.mabels-flist a:hover{ color:var(--m-ink); }
.mabels-fbar p{ margin:0; }

/* ---------- WooCommerce general ---------- */
.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{ background:var(--m-ink); color:#fff; border-radius:4px; font-weight:600; letter-spacing:.04em; }
.woocommerce .button:hover,.woocommerce a.button:hover{ background:#000; color:#fff; }
.woocommerce span.onsale{ background:var(--m-clay); color:#fff; }
.woocommerce-breadcrumb{ color:var(--m-muted); }
.woocommerce-products-header{ text-align:center; padding:50px 0 10px; }
.woocommerce-products-header__title{ font-family:var(--m-serif); font-size:clamp(28px,3.6vw,40px); }

@media(max-width:900px){
  .mabels-products ul.products,.woocommerce ul.products{ grid-template-columns:repeat(2,1fr); }
}
