/* == MAKERWORKS NAV START == */
/* ===== MakerWorks Academy — header navigation (brand) ===== */
/* Brand: brick red #C0392B, cream #FAF7F2, charcoal #2C2C2C. Scoped to the FSE <header>. */

header.wp-block-template-part .wp-block-navigation {
	font-weight: 600;
	letter-spacing: .01em;
}

/* Base nav links */
header.wp-block-template-part .wp-block-navigation-item__content {
	color: #2C2C2C;
	position: relative;
	padding-bottom: 4px;
	text-decoration: none;
	transition: color .2s ease;
}

/* Animated brick-red underline */
header.wp-block-template-part .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 2px;
	background: #C0392B;
	transition: width .25s ease;
}

/* Hover + current page */
/* NOTE: :not(.nav-cta) matters. The CTA already has a #C0392B background, and this rule is more
   specific than the .nav-cta colour rule below - without the exclusion, the Student Login label
   rendered brick-red on brick-red (invisible) whenever /my-account/ was the current page. */
header.wp-block-template-part .wp-block-navigation-item__content:hover,
header.wp-block-template-part .wp-block-navigation-item.current-menu-item:not(.nav-cta) > .wp-block-navigation-item__content {
	color: #C0392B;
}
header.wp-block-template-part .wp-block-navigation-item__content:hover::after,
header.wp-block-template-part .wp-block-navigation-item.current-menu-item:not(.nav-cta) > .wp-block-navigation-item__content::after {
	width: 100%;
}

/* "Student Login" as a brand CTA button */
header.wp-block-template-part .nav-cta .wp-block-navigation-item__content {
	background: #C0392B;
	color: #FAF7F2;
	padding: 9px 20px;
	border-radius: 6px;
	transition: background .2s ease, transform .12s ease, box-shadow .2s ease;
}
header.wp-block-template-part .nav-cta .wp-block-navigation-item__content::after {
	display: none;
}
header.wp-block-template-part .nav-cta .wp-block-navigation-item__content:hover {
	background: #A5311F;
	color: #FAF7F2;
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(192, 57, 43, .28);
}

/* Keep the CTA legible in every state, including when it is the current page. */
header.wp-block-template-part .wp-block-navigation-item.nav-cta > .wp-block-navigation-item__content,
header.wp-block-template-part .wp-block-navigation-item.nav-cta.current-menu-item > .wp-block-navigation-item__content {
	background: #C0392B;
	color: #FAF7F2;
}
header.wp-block-template-part .wp-block-navigation-item.nav-cta > .wp-block-navigation-item__content:hover,
header.wp-block-template-part .wp-block-navigation-item.nav-cta.current-menu-item > .wp-block-navigation-item__content:hover {
	background: #A5311F;
	color: #FAF7F2;
}

/* == MAKERWORKS NAV END == */

/* == MAKERWORKS MOBILE START == */
/* Never let anything cause sideways scroll */
html, body { overflow-x: hidden; }

/* Full-bleed sections must span the exact viewport width on EVERY screen
   (fixes the homepage hero banner not reaching the right edge on both mobile and desktop) */
.makerworks-page .alignfull,
.makerworks-page .mw-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}
/* keep the hero background image covering the full band */
.makerworks-page .mw-hero > .wp-block-cover__image-background {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
/* == MAKERWORKS MOBILE END == */

/* == MAKERWORKS SHOP START == */
/* Product-line cards on the shop landing (archive-product template).
   Brand: brick red #C0392B / cream #FAF7F2 / charcoal #2C2C2C */
.mw-shopcats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(290px,1fr));
  gap:1.75rem;
  margin:0 auto;
}
.mw-shopcat{
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid #e7ded3;
  border-radius:10px;
  overflow:hidden;
  text-decoration:none!important;
  color:inherit;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.mw-shopcat:hover,.mw-shopcat:focus-visible{
  transform:translateY(-4px);
  border-color:#C0392B;
  box-shadow:0 14px 30px rgba(44,44,44,.13);
}
.mw-shopcat:focus-visible{outline:3px solid #C0392B;outline-offset:3px}

.mw-shopcat__media{
  display:flex;align-items:center;justify-content:center;
  background:#FAF7F2;
  aspect-ratio:16/10;
  overflow:hidden;
  border-bottom:1px solid #efe7dc;
}
.mw-shopcat__media .mw-shopcat__img{
  width:100%;height:100%;object-fit:contain;display:block;
}
.mw-shopcat__placeholder{
  font-size:3.4rem;font-weight:900;line-height:1;
  color:#C0392B;opacity:.32;letter-spacing:2px;
}

.mw-shopcat__body{
  display:flex;flex-direction:column;gap:.55rem;
  padding:1.5rem 1.5rem 1.65rem;
  flex:1;
}
.mw-shopcat__meta{
  font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:#C0392B;
}
.mw-shopcat__title{
  margin:0;
  font-size:1.5rem;line-height:1.2;font-weight:800;
  color:#2C2C2C;
}
.mw-shopcat__desc{
  color:#5e5553;font-size:.98rem;line-height:1.65;
  flex:1;
}
.mw-shopcat__cta{
  align-self:flex-start;
  margin-top:.7rem;
  background:#C0392B;color:#fff;
  font-size:.9rem;font-weight:700;
  padding:.7rem 1.25rem;border-radius:6px;
  transition:background .18s ease;
}
.mw-shopcat:hover .mw-shopcat__cta{background:#a53124}

@media (max-width:600px){
  .mw-shopcats{gap:1.25rem}
  .mw-shopcat__body{padding:1.25rem 1.25rem 1.4rem}
  .mw-shopcat__title{font-size:1.3rem}
}
/* == MAKERWORKS SHOP END == */

/* == MAKERWORKS NAV DROPDOWN START == */
/* Shop dropdown (Courses / Digital Plans). Brand: #C0392B / #FAF7F2 / #2C2C2C */

/* The dropdown panel */
header.wp-block-template-part .wp-block-navigation__submenu-container {
	background: #fff;
	border: 1px solid #e7ded3;
	border-top: 3px solid #C0392B;
	border-radius: 8px;
	box-shadow: 0 14px 34px rgba(44, 44, 44, .16);
	padding: 6px;
	min-width: 210px;
}

/* Items inside the dropdown: no animated underline, full-width hover */
header.wp-block-template-part .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	display: block;
	padding: 10px 14px;
	border-radius: 5px;
	color: #2C2C2C;
	font-weight: 600;
	white-space: nowrap;
	transition: background .18s ease, color .18s ease;
}
header.wp-block-template-part .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after {
	display: none;
}
header.wp-block-template-part .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
header.wp-block-template-part .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible {
	background: #FAF7F2;
	color: #C0392B;
}

/* Chevron sits with the parent label and picks up the brand colour on hover */
header.wp-block-template-part .wp-block-navigation-submenu__toggle {
	color: #2C2C2C;
	padding-left: 4px;
}
header.wp-block-template-part .wp-block-navigation-item.has-child:hover .wp-block-navigation-submenu__toggle,
header.wp-block-template-part .wp-block-navigation-item.has-child:focus-within .wp-block-navigation-submenu__toggle {
	color: #C0392B;
}

/* Mobile overlay: flatten the panel so it reads as an indented list, not a floating card */
@media (max-width: 781px) {
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
		background: transparent;
		border: 0;
		box-shadow: none;
		padding-left: 14px;
		min-width: 0;
	}
}
/* == MAKERWORKS NAV DROPDOWN END == */

/* == MAKERWORKS SAFETY START == */
/* Safety notice on product / course pages + the supervision line above the checkout button.
   Brand: brick red #C0392B / cream #FAF7F2 / charcoal #2C2C2C */
.mw-safety-notice{
  background:#fdf0ee;
  border-left:5px solid #C0392B;
  border-radius:4px;
  padding:1.05rem 1.25rem;
  margin:1.4rem 0;
}
.mw-safety-notice__title{
  margin:0 0 .35rem;
  color:#C0392B;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
}
.mw-safety-notice__body{
  margin:0;
  color:#2C2C2C;
  font-size:.97rem;
  line-height:1.65;
}
.mw-safety-notice__body a{
  color:#C0392B;
  font-weight:700;
  text-decoration:underline;
}
.mw-safety-notice__body a:hover{ color:#a53124; }

/* One-line parent-supervision confirmation directly above the Place Order button */
.mw-checkout-safety{
  background:#FAF7F2;
  border-left:4px solid #C0392B;
  border-radius:4px;
  padding:.85rem 1rem;
  margin:0 0 1rem;
  color:#2C2C2C;
  font-size:.92rem;
  line-height:1.6;
}
.mw-checkout-safety a{ color:#C0392B; font-weight:700; text-decoration:underline; }
.mw-checkout-safety a:hover{ color:#a53124; }
/* == MAKERWORKS SAFETY END == */

/* == MAKERWORKS ORDERCONF START == */
/* Branded order-received screen (/checkout/order-received/). Brand: #C0392B / #FAF7F2 / #2C2C2C */
.mw-orderconf{
  background:#2C2C2C;
  border-radius:10px;
  padding:2.4rem 1.9rem 2.1rem;
  margin:0 0 2rem;
  text-align:center;
}
.mw-orderconf__eyebrow{
  margin:0 0 .5rem;
  color:#e8735f;
  font-size:12px;font-weight:800;letter-spacing:3px;text-transform:uppercase;
}
.mw-orderconf__title{
  margin:0 0 .6rem;
  color:#fff;
  font-size:clamp(1.7rem,4vw,2.3rem);
  font-weight:800;line-height:1.2;
}
.mw-orderconf__sub{
  margin:0 auto .9rem;
  max-width:34rem;
  color:#e2dcd5;font-size:1.02rem;line-height:1.65;
}
.mw-orderconf__meta{
  margin:0 0 1.4rem;
  color:#a9a19a;font-size:.9rem;
}
.mw-orderconf__meta strong{ color:#fff; }
.mw-orderconf__actions{
  display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;
}
.mw-orderconf__btn{
  display:inline-block;
  background:#C0392B;color:#fff!important;
  padding:.85rem 1.5rem;border-radius:6px;
  font-weight:700;text-decoration:none!important;
  transition:background .18s ease,transform .12s ease;
}
.mw-orderconf__btn:hover{ background:#a53124; transform:translateY(-1px); }
.mw-orderconf__btn--alt{
  background:transparent;
  border:2px solid #C0392B;
  color:#f3ded9!important;
}
.mw-orderconf__btn--alt:hover{ background:#C0392B; color:#fff!important; }
.mw-orderconf__note{
  margin:1.2rem auto 0;max-width:34rem;
  color:#e8c9a0;font-size:.92rem;line-height:1.6;
}
.mw-orderconf__safety{
  margin:1.4rem auto 0;max-width:36rem;
  padding-top:1.1rem;
  border-top:1px solid rgba(255,255,255,.14);
  color:#cfc8c1;font-size:.9rem;line-height:1.6;
}
.mw-orderconf__safety a{ color:#f0a596; font-weight:700; text-decoration:underline; }
.mw-orderconf__safety a:hover{ color:#fff; }
@media (max-width:600px){
  .mw-orderconf{ padding:1.9rem 1.2rem 1.7rem; }
  .mw-orderconf__actions{ flex-direction:column; }
  .mw-orderconf__btn{ width:100%; }
}
/* == MAKERWORKS ORDERCONF END == */

/* == MAKERWORKS LEGAL START == */
/* The theme's page template prints the page title, and each legal page's hero band prints it again,
   giving two identical <h1>s. Suppress the template one so the hero is the single heading. */
body.page-id-105 .wp-block-post-title,
body.page-id-107 .wp-block-post-title,
body.page-id-1890 .wp-block-post-title,
body.page-id-1891 .wp-block-post-title{
  display:none;
}
/* The hero band is full-bleed, so drop the gap the template leaves for the title. */
body.page-id-105 main > .wp-block-group:first-child,
body.page-id-107 main > .wp-block-group:first-child,
body.page-id-1890 main > .wp-block-group:first-child,
body.page-id-1891 main > .wp-block-group:first-child{
  margin-top:0;
}
/* == MAKERWORKS LEGAL END == */

/* == MAKERWORKS MOBILE POLISH START == */
/* (The JOIN US pill was removed from header part #1763 on 2026-08-21; the rule that hid it
   on mobile is gone with it. Student Login in the nav is now the single header CTA.) */

/* Footer cover: has-global-padding made the inner container wider than the viewport (391px on a
   375px screen), so it overflowed inside the cover. */
footer.wp-block-template-part .wp-block-cover__inner-container{
  max-width: 100%;
  box-sizing: border-box;
}

/* Footer photo is portrait (851x1280) but the mobile footer is far taller than it is wide, so
   "cover" zoomed into the middle. Favour the top of the frame, where the subject sits. */
@media (max-width: 781px){
  footer.wp-block-template-part .wp-block-cover__image-background{
    object-position: 50% 20%;
  }
}
/* == MAKERWORKS MOBILE POLISH END == */

/* == MAKERWORKS NEWSLETTER START == */
/* Newsletter signup form. Brand: brick red #C0392B / cream #FAF7F2 / charcoal #2C2C2C */
.mw-newsletter{
  background:#2C2C2C;
  border-radius:10px;
  padding:2.25rem 1.9rem;
  margin:2.5rem 0;
  text-align:center;
}
.mw-newsletter__eyebrow{
  margin:0 0 .5rem;
  color:#e8735f;
  font-size:12px;font-weight:800;letter-spacing:3px;text-transform:uppercase;
}
.mw-newsletter__heading{
  margin:0 0 .55rem;
  color:#fff;
  font-size:clamp(1.45rem,3.4vw,1.95rem);
  font-weight:800;line-height:1.2;
}
.mw-newsletter__text{
  margin:0 auto 1.35rem;
  max-width:34rem;
  color:#ded7d0;font-size:1rem;line-height:1.65;
}
.mw-newsletter__form{
  display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;
  max-width:30rem;margin:0 auto;
}
.mw-newsletter__input{
  flex:1 1 16rem;min-width:0;
  padding:.85rem 1rem;
  border:2px solid transparent;border-radius:6px;
  background:#fff;color:#2C2C2C;
  font-size:1rem;line-height:1.3;
}
.mw-newsletter__input:focus{
  outline:none;border-color:#C0392B;
  box-shadow:0 0 0 3px rgba(192,57,43,.35);
}
.mw-newsletter__btn{
  flex:0 0 auto;
  padding:.85rem 1.5rem;
  border:0;border-radius:6px;
  background:#C0392B;color:#fff;
  font-size:1rem;font-weight:700;cursor:pointer;
  transition:background .18s ease,transform .12s ease;
}
.mw-newsletter__btn:hover{ background:#a53124; transform:translateY(-1px); }
.mw-newsletter__btn:focus-visible{ outline:3px solid #fff; outline-offset:2px; }

/* honeypot - visually gone but still reachable to bots */
.mw-newsletter__hp{
  position:absolute!important;width:1px;height:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px);white-space:nowrap;
}

.mw-newsletter__msg{
  max-width:30rem;margin:0 auto 1.1rem;
  padding:.75rem 1rem;border-radius:6px;
  font-size:.95rem;line-height:1.55;text-align:left;
}
.mw-newsletter__msg--ok{ background:#eef7ee; color:#1e4620; border-left:4px solid #2f7d32; }
.mw-newsletter__msg--err{ background:#fdf0ee; color:#7a1d13; border-left:4px solid #C0392B; }

.mw-newsletter__fineprint{
  margin:1.1rem auto 0;max-width:32rem;
  color:#a9a19a;font-size:.83rem;line-height:1.55;
}
.mw-newsletter__fineprint a{ color:#e8a99d; text-decoration:underline; }
.mw-newsletter__fineprint a:hover{ color:#fff; }

/* Compact variant for the footer column */
.mw-newsletter--compact{
  background:transparent;padding:0;margin:0;text-align:left;border-radius:0;
}
.mw-newsletter--compact .mw-newsletter__heading{
  font-size:1rem;font-weight:600;margin-bottom:.4rem;
}
.mw-newsletter--compact .mw-newsletter__text{ font-size:.85rem;margin-bottom:.8rem;max-width:none; }
.mw-newsletter--compact .mw-newsletter__form{ max-width:none;flex-direction:column;gap:.5rem; }
.mw-newsletter--compact .mw-newsletter__input{ flex:1 1 auto;padding:.7rem .85rem;font-size:.9rem; }
.mw-newsletter--compact .mw-newsletter__btn{ width:100%;padding:.7rem 1rem;font-size:.9rem; }
.mw-newsletter--compact .mw-newsletter__fineprint{ margin-top:.7rem;font-size:.75rem;max-width:none; }
.mw-newsletter--compact .mw-newsletter__msg{ text-align:left;font-size:.85rem;padding:.6rem .8rem; }

@media (max-width:600px){
  .mw-newsletter{ padding:1.75rem 1.15rem; }
  .mw-newsletter__form{ flex-direction:column; }
  .mw-newsletter__btn{ width:100%; }
}

/* Tap targets: the compact button/input fell just under the 44px minimum on mobile. */
.mw-newsletter__btn,
.mw-newsletter__input{ min-height:44px; }
.mw-newsletter--compact .mw-newsletter__btn,
.mw-newsletter--compact .mw-newsletter__input{ min-height:44px; }
/* == MAKERWORKS NEWSLETTER END == */

/* == MAKERWORKS GATE CTA START == */
/* Replaces the add-to-cart button on gated course products with a link to /start/ */
.mw-gate-cta{
  display:flex;flex-direction:column;gap:.5rem;align-items:flex-start;
  margin:1.25rem 0 1.5rem;
}
.mw-gate-cta__btn,
a.button.mw-gate-cta__btn{
  display:inline-block;
  background:#C0392B!important;color:#fff!important;
  padding:.9rem 1.6rem;border-radius:6px;
  font-weight:700;font-size:1rem;line-height:1.2;
  text-decoration:none!important;border:0;
  transition:background .18s ease,transform .12s ease;
}
.mw-gate-cta__btn:hover,
a.button.mw-gate-cta__btn:hover{ background:#a53124!important;color:#fff!important;transform:translateY(-1px); }
.mw-gate-cta__btn:focus-visible{ outline:3px solid #C0392B;outline-offset:3px; }
.mw-gate-cta__note{ color:#5e5553;font-size:.9rem;line-height:1.5; }
/* == MAKERWORKS GATE CTA END == */

/* == MAKERWORKS SETPW START == */
/* "Set a password" panel shown to gate-created accounts until they have one. */
.mw-setpw{
  background:#fff;
  border:1px solid #e7ded3;
  border-left:5px solid #C0392B;
  border-radius:8px;
  padding:1.25rem 1.4rem;
  margin:0 0 1.75rem;
}
.mw-setpw__title{
  margin:0 0 .35rem;
  color:#C0392B;
  font-size:.78rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;
}
.mw-setpw__body{
  margin:0 0 .9rem;
  color:#2C2C2C;font-size:.97rem;line-height:1.6;
}
.mw-setpw__msg{
  margin:0 0 .8rem;padding:.6rem .85rem;border-radius:5px;
  background:#fdf0ee;color:#7a1d13;border-left:4px solid #C0392B;
  font-size:.9rem;
}
.mw-setpw__form{
  display:flex;flex-wrap:wrap;gap:.55rem;align-items:stretch;
}
.mw-setpw__input{
  flex:1 1 12rem;min-width:0;min-height:44px;
  padding:.7rem .9rem;
  border:2px solid #e0d7cc;border-radius:6px;
  background:#fff;color:#2C2C2C;font-size:.95rem;
}
.mw-setpw__input:focus{
  outline:none;border-color:#C0392B;
  box-shadow:0 0 0 3px rgba(192,57,43,.22);
}
.mw-setpw__btn{
  flex:0 0 auto;min-height:44px;
  padding:.7rem 1.4rem;border:0;border-radius:6px;
  background:#C0392B;color:#fff;
  font-size:.95rem;font-weight:700;cursor:pointer;
  transition:background .18s ease;
}
.mw-setpw__btn:hover{ background:#a53124; }
.mw-setpw__btn:focus-visible{ outline:3px solid #C0392B;outline-offset:2px; }
.mw-setpw__skip{
  margin:.7rem 0 0;color:#6b645e;font-size:.82rem;
}
@media (max-width:600px){
  .mw-setpw__form{ flex-direction:column; }
  .mw-setpw__btn{ width:100%; }
}
/* == MAKERWORKS SETPW END == */

/* == MAKERWORKS DASHBOARD START == */
/* Student dashboard. Mobile-first: base rules are the phone layout, wider screens opt in below.
   Brand: red #C0392B / cream #FAF3EE / charcoal #2C2C2C */

.mw-dash{ max-width:900px; margin:0 auto; color:#2C2C2C; }
.mw-dash *{ box-sizing:border-box; }

/* --- welcome --- */
.mw-dash__hello{
  display:flex; align-items:center; gap:.9rem;
  padding:1.1rem 1.15rem;
  background:#2C2C2C; border-radius:12px;
  margin-bottom:1.1rem;
}
.mw-dash__avatar{
  width:52px; height:52px; border-radius:50%;
  flex:0 0 52px; border:2px solid #C0392B;
}
.mw-dash__hellotext{ min-width:0; }
.mw-dash__title{
  margin:0; color:#fff;
  font-size:1.15rem; font-weight:800; line-height:1.25;
  overflow-wrap:anywhere;
}
.mw-dash__meta{
  margin:.2rem 0 0; color:#b8b0a8;
  font-size:.78rem; line-height:1.4; overflow-wrap:anywhere;
}

/* --- continue learning --- */
.mw-dash__continue{
  background:#fff; border:1px solid #eadfd4; border-left:5px solid #C0392B;
  border-radius:10px; padding:1.1rem 1.15rem; margin-bottom:1.6rem;
}
.mw-dash__eyebrow{
  margin:0 0 .3rem; color:#C0392B;
  font-size:.72rem; font-weight:800; letter-spacing:1.6px; text-transform:uppercase;
}
.mw-dash__continuetitle{ margin:0 0 .2rem; font-size:1.1rem; font-weight:800; line-height:1.3; }
.mw-dash__continuemeta{ margin:0 0 .9rem; color:#6b625b; font-size:.86rem; }

/* --- sections --- */
.mw-dash__section{ margin-bottom:1.8rem; }
.mw-dash__h2{
  margin:0 0 .8rem; font-size:1rem; font-weight:800;
  letter-spacing:.4px; text-transform:uppercase; color:#2C2C2C;
}
.mw-dash__empty{ margin:0; color:#6b625b; font-size:.9rem; }

/* --- cards: one column on phones --- */
.mw-dash__grid{ display:grid; grid-template-columns:1fr; gap:.9rem; }
.mw-card{
  display:flex; flex-direction:column;
  background:#fff; border:1px solid #eadfd4; border-radius:10px; overflow:hidden;
}
.mw-card__media{
  display:flex; align-items:center; justify-content:center;
  background:#FAF3EE; aspect-ratio:16/10; overflow:hidden;
  border-bottom:1px solid #f0e6db;
}
.mw-card__img{ width:100%; height:100%; object-fit:contain; display:block; }
.mw-card__placeholder{ font-size:1.6rem; font-weight:900; color:#C0392B; opacity:.35; letter-spacing:1px; }
.mw-card__body{ display:flex; flex-direction:column; gap:.45rem; padding:.95rem 1rem 1.1rem; flex:1; }
.mw-card__title{ margin:0; font-size:1rem; font-weight:800; line-height:1.3; }
.mw-card__title a{ color:#2C2C2C; text-decoration:none; }
.mw-card__title a:hover{ color:#C0392B; }
.mw-card__meta{ margin:0; color:#6b625b; font-size:.82rem; }
.mw-card__text{ margin:0; color:#6b625b; font-size:.88rem; line-height:1.55; }
.mw-card--promo{ border-style:dashed; border-color:#dcc8b8; background:#fffdfb; }
.mw-card--promo .mw-card__body{ padding:1.2rem 1.1rem; }

/* --- progress bar --- */
.mw-progress{
  height:8px; background:#efe5da; border-radius:99px; overflow:hidden;
}
.mw-progress__bar{
  display:block; height:100%; background:#C0392B; border-radius:99px;
  transition:width .3s ease;
}

/* --- buttons: full width on phones for easy thumbs --- */
.mw-dash__btn{
  display:block; width:100%; text-align:center;
  min-height:44px; padding:.75rem 1.2rem;
  background:#C0392B; color:#fff !important;
  border:0; border-radius:6px;
  font-size:.95rem; font-weight:700; line-height:1.4;
  text-decoration:none !important;
  transition:background .18s ease, transform .12s ease;
}
.mw-dash__btn:hover{ background:#a53124; transform:translateY(-1px); }
.mw-dash__btn:focus-visible{ outline:3px solid #C0392B; outline-offset:3px; }
.mw-dash__btn--sm{ margin-top:.25rem; }
.mw-dash__btn--ghost{
  background:transparent; color:#C0392B !important; border:2px solid #C0392B;
}
.mw-dash__btn--ghost:hover{ background:#C0392B; color:#fff !important; }

/* --- certificates --- */
.mw-dash__certs{ list-style:none; margin:0; padding:0; display:grid; gap:.6rem; }
.mw-dash__certitem{
  display:flex; flex-direction:column; gap:.55rem;
  background:#fff; border:1px solid #eadfd4; border-radius:10px; padding:.9rem 1rem;
  font-weight:600;
}

/* --- account strip --- */
.mw-dash__account{
  display:grid; grid-template-columns:1fr 1fr; gap:.55rem;
  padding-top:1.2rem; border-top:1px solid #e6d9cc;
}
.mw-dash__acct{
  display:block; text-align:center;
  min-height:44px; padding:.7rem .6rem;
  background:#fff; border:1px solid #e0d2c4; border-radius:8px;
  color:#2C2C2C !important; text-decoration:none !important;
  font-size:.86rem; font-weight:700;
}
.mw-dash__acct:hover{ border-color:#C0392B; color:#C0392B !important; }
.mw-dash__acct--out{ color:#8a7f76 !important; }

/* --- logged-out gate --- */
.mw-dash__gate{
  background:#2C2C2C; border-radius:12px; padding:2rem 1.25rem; text-align:center;
}
.mw-dash__gatetitle{ margin:.4rem 0 .5rem; color:#fff; font-size:1.45rem; font-weight:800; line-height:1.25; }
.mw-dash__gatetext{ margin:0 auto 1.2rem; max-width:30rem; color:#ded5cc; font-size:.95rem; line-height:1.6; }
.mw-dash__gateactions{ display:grid; gap:.6rem; max-width:22rem; margin:0 auto; }

/* ---------- wider screens ---------- */
@media (min-width:560px){
  .mw-dash__grid{ grid-template-columns:repeat(2,1fr); }
  .mw-dash__btn{ display:inline-block; width:auto; }
  .mw-dash__certitem{ flex-direction:row; align-items:center; justify-content:space-between; }
  .mw-dash__account{ grid-template-columns:repeat(4,1fr); }
  .mw-dash__gateactions{ grid-template-columns:1fr 1fr; max-width:28rem; }
}
@media (min-width:820px){
  .mw-dash__hello{ padding:1.4rem 1.5rem; gap:1.1rem; }
  .mw-dash__avatar{ width:64px; height:64px; flex-basis:64px; }
  .mw-dash__title{ font-size:1.5rem; }
  .mw-dash__meta{ font-size:.85rem; }
  .mw-dash__continuetitle{ font-size:1.3rem; }
  .mw-dash__h2{ font-size:1.05rem; }
  .mw-dash__grid{ grid-template-columns:repeat(3,1fr); }
}
/* == MAKERWORKS DASHBOARD END == */

/* == MAKERWORKS HEADER CART START == */
/* Floating cart button + slide-out drawer. The ONLY cart control on the site.
   Brand: red #C0392B / cream #FAF3EE / charcoal #2C2C2C */

/* ---------- floating button ---------- */
.mw-fab{
  position:fixed;
  top:20px; right:20px;
  z-index:9000;                 /* above page content, below the drawer (9100) */
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  margin:0;
  padding:.6rem 1rem .6rem .85rem;
  background:#fff;
  color:#2C2C2C;
  border:1px solid #ece2d8;
  border-radius:999px;
  box-shadow:0 3px 14px rgba(44,44,44,.16);
  cursor:pointer;
  line-height:1;
  transition:color .18s ease, box-shadow .18s ease, transform .12s ease;
}
.mw-fab:hover{
  color:#C0392B;
  box-shadow:0 6px 20px rgba(44,44,44,.22);
  transform:translateY(-1px);
}
.mw-fab:focus-visible{ outline:3px solid #C0392B; outline-offset:3px; }

.mw-fab__icon{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  width:24px; height:24px;
}
.mw-fab__svg{ display:block; width:24px; height:24px; color:inherit; }

.mw-fab__label{
  font-family:var(--wp--preset--font-family--heading, inherit);
  font-size:.8125rem; font-weight:600; letter-spacing:.01em;
  text-transform:uppercase; color:inherit;
}

.mw-fab__badge{
  position:absolute; top:-7px; right:-9px;
  min-width:18px; height:18px; padding:0 4px;
  display:flex; align-items:center; justify-content:center;
  background:#C0392B; color:#fff;
  border-radius:99px;
  font-family:var(--wp--preset--font-family--heading, inherit);
  font-size:11px; font-weight:700; line-height:1;
  box-shadow:0 0 0 2px #fff;
  pointer-events:none;
}
.mw-fab__badge-wrap{ position:static; }
.mw-fab .screen-reader-text{
  position:absolute !important; width:1px; height:1px; overflow:hidden;
  clip:rect(1px,1px,1px,1px); white-space:nowrap;
}

/* ---------- drawer ---------- */
.mw-drawer-root{ position:fixed; inset:0; z-index:9100; pointer-events:none; }
.mw-drawer-root[data-open="false"]{ visibility:hidden; }
.mw-drawer-root[data-open="true"]{ visibility:visible; pointer-events:auto; }

.mw-drawer__overlay{
  position:absolute; inset:0;
  background:rgba(20,18,17,.55);
  opacity:0;
  transition:opacity .28s ease;
}
.mw-drawer-root[data-open="true"] .mw-drawer__overlay{ opacity:1; }

.mw-drawer{
  position:absolute; top:0; right:0; bottom:0;
  width:min(380px, 100vw);
  display:flex; flex-direction:column;
  background:#FAF3EE;
  box-shadow:-8px 0 28px rgba(20,18,17,.22);
  transform:translateX(100%);
  transition:transform .28s cubic-bezier(.4,0,.2,1);
}
.mw-drawer-root[data-open="true"] .mw-drawer{ transform:translateX(0); }
@media (prefers-reduced-motion:reduce){
  .mw-drawer, .mw-drawer__overlay{ transition:none; }
}

.mw-drawer__head{
  display:flex; align-items:center; justify-content:space-between;
  gap:1rem; padding:1.05rem 1.1rem;
  background:#2C2C2C;
}
.mw-drawer__title{
  margin:0; color:#fff;
  font-size:1rem; font-weight:800; letter-spacing:.5px; text-transform:uppercase;
}
.mw-drawer__close{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; margin:-8px -6px -8px 0;
  background:transparent; border:0; border-radius:6px;
  color:#e6ded6; cursor:pointer;
  transition:color .18s ease, background .18s ease;
}
.mw-drawer__close:hover{ color:#fff; background:rgba(255,255,255,.1); }
.mw-drawer__close:focus-visible{ outline:3px solid #C0392B; outline-offset:2px; }

.mw-drawer__body{
  flex:1; overflow-y:auto; -webkit-overflow-scrolling:touch;
  padding:1rem 1.1rem;
}

/* WooCommerce mini-cart, restyled */
.mw-drawer__body .woocommerce-mini-cart{ margin:0; padding:0; list-style:none; }
.mw-drawer__body .woocommerce-mini-cart-item{
  display:flex; align-items:flex-start; gap:.75rem;
  padding:.85rem 0; border-bottom:1px solid #e9ddd2;
  position:relative;
}
.mw-drawer__body .woocommerce-mini-cart-item img{
  width:56px; height:56px; object-fit:cover; border-radius:6px; flex:0 0 56px; margin:0;
}
.mw-drawer__body .woocommerce-mini-cart-item a:not(.remove){
  color:#2C2C2C; font-weight:700; font-size:.92rem; line-height:1.35; text-decoration:none;
}
.mw-drawer__body .woocommerce-mini-cart-item a:not(.remove):hover{ color:#C0392B; }
.mw-drawer__body .quantity{ display:block; color:#6b625b; font-size:.82rem; margin-top:.2rem; }
.mw-drawer__body a.remove{
  position:absolute; top:.85rem; right:0;
  width:26px; height:26px; line-height:24px; text-align:center;
  border-radius:50%; color:#9a8f86 !important; font-size:18px; text-decoration:none;
  background:transparent;
}
.mw-drawer__body a.remove:hover{ background:#C0392B; color:#fff !important; }
.mw-drawer__body .woocommerce-mini-cart__total{
  display:flex; justify-content:space-between; align-items:center;
  margin:1rem 0 0; padding-top:.9rem; border-top:2px solid #2C2C2C;
  font-size:1rem; font-weight:800; color:#2C2C2C;
}
/* the mini-cart template ships its own buttons - we provide our own in the footer */
.mw-drawer__body .woocommerce-mini-cart__buttons{ display:none !important; }
.mw-drawer__body .woocommerce-mini-cart__empty-message{
  margin:2rem 0; text-align:center; color:#6b625b; font-size:.95rem;
}

.mw-drawer__foot{
  padding:1rem 1.1rem 1.2rem;
  border-top:1px solid #e9ddd2;
  background:#fff;
}
.mw-drawer__checkout{
  display:block; width:100%; text-align:center;
  min-height:48px; padding:.85rem 1rem;
  background:#C0392B; color:#fff !important;
  border-radius:6px;
  font-weight:700; font-size:1rem; text-decoration:none !important;
  transition:background .18s ease;
}
.mw-drawer__checkout:hover{ background:#a53124; }
.mw-drawer__checkout:focus-visible{ outline:3px solid #2C2C2C; outline-offset:2px; }
.mw-drawer__viewcart{
  display:block; margin-top:.7rem; text-align:center;
  color:#6b625b !important; font-size:.86rem; text-decoration:underline;
}
.mw-drawer__viewcart:hover{ color:#C0392B !important; }

/* stop the page scrolling behind the drawer */
body.mw-drawer-lock{ overflow:hidden; }

/* ---------- mobile ---------- */
@media (max-width:640px){
  .mw-fab{
    /* Stays top-right and fixed, but offset BELOW the header bar: with the account icon gone
       the hamburger now sits in the top-right corner (measured at 335-359 x 55-79 on a 375px
       screen), so a 20px-from-the-top button would land straight on it.
       --mw-fab-top is measured from the real header height by JS; 148px is the fallback. */
    top:var(--mw-fab-top, 148px);
    right:14px;
    bottom:auto;
    gap:0; padding:0;
    width:48px; height:48px;
    justify-content:center;
    border-radius:50%;
  }
  .mw-fab__label{
    position:absolute !important; width:1px; height:1px; overflow:hidden;
    clip:rect(1px,1px,1px,1px); white-space:nowrap;
  }
  .mw-drawer{ width:100vw; }
}
/* == MAKERWORKS HEADER CART END == */

/* == MAKERWORKS CART CONTROLS START == */
/* Line items, steppers, undo strip, saved-for-later and empty state inside the cart drawer.
   Brand: red #C0392B / cream #FAF3EE / charcoal #2C2C2C
   NOTE: the .woocommerce-mini-cart rules in MAKERWORKS HEADER CART are now inert — the drawer body
   is custom markup, not woocommerce_mini_cart(). */

/* ---------- line items ---------- */
.mw-lines{ list-style:none; margin:0; padding:0; }
.mw-li{
  position:relative;
  display:flex; align-items:flex-start; gap:.75rem;
  padding:.9rem 1.9rem .9rem 0;
  border-bottom:1px solid #e9ddd2;
  opacity:1; transform:none;
  transition:opacity .18s ease, transform .18s ease;
}
.mw-li.is-going{ opacity:0; transform:translateX(14px); }
.mw-li.is-busy{ opacity:.6; }
.mw-li__media{ flex:0 0 56px; }
.mw-li__img{ width:56px; height:56px; object-fit:cover; border-radius:6px; display:block; }
.mw-li__body{ min-width:0; flex:1; }
.mw-li__name{ margin:0; font-size:.92rem; font-weight:700; line-height:1.35; color:#2C2C2C; }
.mw-li__price{ margin:.15rem 0 .4rem; font-size:.85rem; color:#6b625b; }
.mw-li__qtyfixed{ margin:0; font-size:.78rem; color:#8a7f76; }

.mw-li__remove{
  position:absolute; top:.8rem; right:0;
  width:28px; height:28px;
  display:inline-flex; align-items:center; justify-content:center;
  background:transparent; border:0; border-radius:50%;
  color:#9a8f86; cursor:pointer;
  transition:background .18s ease, color .18s ease;
}
.mw-li__remove:hover{ background:#C0392B; color:#fff; }
.mw-li__remove:focus-visible{ outline:3px solid #C0392B; outline-offset:2px; }

/* ---------- quantity stepper ---------- */
.mw-qty{
  display:inline-flex; align-items:center;
  border:1px solid #ddcfc2; border-radius:6px; overflow:hidden;
  background:#fff;
}
.mw-qty__btn{
  width:32px; height:32px;
  display:inline-flex; align-items:center; justify-content:center;
  background:transparent; border:0;
  color:#2C2C2C; font-size:1rem; font-weight:700; line-height:1;
  cursor:pointer;
  transition:background .16s ease, color .16s ease;
}
.mw-qty__btn:hover{ background:#C0392B; color:#fff; }
.mw-qty__btn:focus-visible{ outline:2px solid #C0392B; outline-offset:-2px; }
.mw-qty__val{
  min-width:34px; text-align:center;
  font-size:.9rem; font-weight:700; color:#2C2C2C;
  border-left:1px solid #ecdfd3; border-right:1px solid #ecdfd3;
  line-height:32px;
}

/* ---------- save for later ---------- */
.mw-li__save{
  display:inline-block; margin-top:.45rem; padding:0;
  background:none; border:0;
  color:#6b625b; font-size:.78rem; text-decoration:underline; cursor:pointer;
}
.mw-li__save:hover{ color:#C0392B; }
.mw-li__save:focus-visible{ outline:2px solid #C0392B; outline-offset:2px; }

/* ---------- subtotal ---------- */
.mw-subtotal{
  display:flex; justify-content:space-between; align-items:center;
  margin-top:1rem; padding-top:.9rem;
  border-top:2px solid #2C2C2C;
  font-size:1rem; font-weight:800; color:#2C2C2C;
}

/* ---------- undo strip ---------- */
.mw-undo{
  display:flex; align-items:center; justify-content:space-between; gap:.75rem;
  margin:0 0 .8rem; padding:.6rem .75rem;
  background:#2C2C2C; border-radius:6px;
  color:#f0e9e2; font-size:.84rem;
}
.mw-undo[hidden]{ display:none; }
.mw-undo__txt{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mw-undo__btn{
  flex:0 0 auto;
  background:transparent; border:1px solid #C0392B; border-radius:4px;
  color:#f0a596; font-size:.78rem; font-weight:700;
  padding:.3rem .7rem; cursor:pointer;
  transition:background .16s ease, color .16s ease;
}
.mw-undo__btn:hover{ background:#C0392B; color:#fff; }

/* ---------- saved for later ---------- */
.mw-saved{ margin-top:1.5rem; padding-top:1.1rem; border-top:1px dashed #d9c9ba; }
.mw-saved__title{
  margin:0 0 .6rem; font-size:.78rem; font-weight:800;
  letter-spacing:1.4px; text-transform:uppercase; color:#8a7f76;
}
.mw-saved__list{ list-style:none; margin:0; padding:0; }
.mw-saved__item{
  position:relative;
  display:flex; align-items:flex-start; gap:.75rem;
  padding:.7rem 1.9rem .7rem 0;
  border-bottom:1px solid #eee2d7;
}
.mw-saved__item .mw-li__img{ width:44px; height:44px; }
.mw-saved__item .mw-li__media{ flex-basis:44px; }
.mw-saved__move{
  display:inline-block; margin-top:.3rem; padding:0;
  background:none; border:0;
  color:#C0392B; font-size:.78rem; font-weight:700; text-decoration:underline; cursor:pointer;
}
.mw-saved__move:hover{ color:#a53124; }
.mw-saved__drop{
  position:absolute; top:.65rem; right:0;
  width:24px; height:24px;
  display:inline-flex; align-items:center; justify-content:center;
  background:transparent; border:0; border-radius:50%;
  color:#b3a89f; cursor:pointer;
}
.mw-saved__drop:hover{ background:#e6d9cc; color:#2C2C2C; }

/* ---------- empty state ---------- */
.mw-empty{ padding:2.2rem 0 1.4rem; text-align:center; }
.mw-empty__icon{
  display:inline-flex; color:#cfc4b9;
}
.mw-empty__icon svg{ width:52px; height:52px; }
.mw-empty__title{
  margin:.7rem 0 1.1rem;
  font-size:1rem; font-weight:700; color:#6b625b;
}
.mw-empty__btn{
  display:inline-block; min-height:44px;
  padding:.75rem 1.5rem;
  background:#C0392B; color:#fff !important;
  border-radius:6px; font-weight:700; font-size:.95rem;
  text-decoration:none !important;
  transition:background .18s ease;
}
.mw-empty__btn:hover{ background:#a53124; }
.mw-empty__alt{
  display:block; margin-top:.8rem;
  color:#6b625b !important; font-size:.85rem; text-decoration:underline;
}
.mw-empty__alt:hover{ color:#C0392B !important; }

/* nothing to check out with — the empty state carries its own actions */
body.mw-cart-empty .mw-drawer__foot{ display:none; }

/* ---------- no quantity counter on the shop side ---------- */
/* Quantity is chosen in the cart drawer, not on the product page: the shop adds one of a thing,
   and the drawer stepper is where it gets adjusted. Scoped to the product form so the drawer
   stepper (.mw-qty) is untouched. */
.woocommerce div.product form.cart div.quantity,
form.cart div.quantity,
.wp-block-add-to-cart-form div.quantity,
.wc-block-add-to-cart-form div.quantity,
.wp-block-add-to-cart-form .wc-block-components-quantity-selector,
.wc-block-add-to-cart-form .wc-block-components-quantity-selector{
  display:none !important;
}
/* == MAKERWORKS CART CONTROLS END == */

/* == MAKERWORKS LOGGED IN START == */
/* One visual system for the signed-in experience: dashboard, My Account endpoints, LearnDash
   course/lesson pages, and checkout. Brand: red #C0392B / cream #FAF3EE / charcoal #2C2C2C. */

:root{
  --mw-red:#C0392B; --mw-red-dark:#a53124;
  --mw-cream:#FAF3EE; --mw-char:#2C2C2C;
  --mw-line:#e9ddd2; --mw-muted:#6b625b;
}

/* ---------- account shell (wraps the My Account endpoints) ---------- */
.mw-acct{ max-width:900px; margin:0 auto 1.4rem; }
.mw-acct__back{
  display:inline-block; margin:0 0 .9rem;
  color:var(--mw-muted) !important; font-size:.85rem; text-decoration:none !important;
}
.mw-acct__back:hover{ color:var(--mw-red) !important; }
.mw-acct__tabs{ display:grid; grid-template-columns:1fr 1fr; gap:.5rem; }
.mw-acct__tab{
  display:block; text-align:center;
  min-height:44px; padding:.7rem .6rem;
  background:#fff; border:1px solid #e0d2c4; border-radius:8px;
  color:var(--mw-char) !important; text-decoration:none !important;
  font-size:.86rem; font-weight:700;
}
.mw-acct__tab:hover{ border-color:var(--mw-red); color:var(--mw-red) !important; }
.mw-acct__tab.is-current{ background:var(--mw-char); border-color:var(--mw-char); color:#fff !important; }
.mw-acct__tab--out{ color:#8a7f76 !important; }

/* ---------- My Account content ---------- */
body.mw-account{ background:var(--mw-cream); }
body.mw-account .woocommerce{ max-width:900px; margin:0 auto; }
body.mw-account .woocommerce-MyAccount-navigation{ display:none; }   /* replaced by .mw-acct__tabs */
body.mw-account .woocommerce-MyAccount-content{
  width:100%; float:none; margin:0;
  background:#fff; border:1px solid var(--mw-line); border-radius:10px;
  padding:1.25rem 1.35rem;
}
body.mw-account .woocommerce-MyAccount-content > h2,
body.mw-account .woocommerce-MyAccount-content > h3{
  margin-top:0; color:var(--mw-char); font-weight:800;
}

/* tables (orders, downloads) */
body.mw-account table.woocommerce-orders-table,
body.mw-account table.woocommerce-table,
body.mw-account table.shop_table{
  width:100%; border-collapse:collapse; border:0; font-size:.92rem;
}
body.mw-account table.shop_table th,
body.mw-account table.woocommerce-table th{
  background:transparent; border:0; border-bottom:2px solid var(--mw-char);
  padding:.6rem .5rem; text-align:left;
  font-size:.74rem; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:var(--mw-char);
}
body.mw-account table.shop_table td,
body.mw-account table.woocommerce-table td{
  border:0; border-bottom:1px solid var(--mw-line);
  padding:.75rem .5rem; color:#4a4340;
}
body.mw-account table.shop_table tr:last-child td{ border-bottom:0; }

/* buttons + forms */
body.mw-account .woocommerce-button,
body.mw-account .woocommerce-Button,
body.mw-account a.button,
body.mw-account button.button,
body.mw-account input.button,
body.mw-checkout #place_order,
body.mw-checkout .checkout-button{
  background:var(--mw-red) !important; color:#fff !important;
  border:0; border-radius:6px;
  min-height:44px; padding:.7rem 1.25rem;
  font-weight:700; font-size:.92rem; text-decoration:none !important;
  transition:background .18s ease;
}
body.mw-account .woocommerce-button:hover,
body.mw-account a.button:hover,
body.mw-account button.button:hover,
body.mw-checkout #place_order:hover,
body.mw-checkout .checkout-button:hover{ background:var(--mw-red-dark) !important; }

body.mw-account input[type="text"],
body.mw-account input[type="email"],
body.mw-account input[type="tel"],
body.mw-account input[type="password"],
body.mw-account select,
body.mw-checkout input[type="text"],
body.mw-checkout input[type="email"],
body.mw-checkout input[type="tel"],
body.mw-checkout select,
body.mw-checkout textarea{
  min-height:44px; padding:.6rem .8rem;
  border:2px solid #e0d2c4; border-radius:6px;
  background:#fff; color:var(--mw-char); font-size:.95rem;
}
body.mw-account input:focus,
body.mw-account select:focus,
body.mw-checkout input:focus,
body.mw-checkout select:focus,
body.mw-checkout textarea:focus{
  outline:none; border-color:var(--mw-red);
  box-shadow:0 0 0 3px rgba(192,57,43,.22);
}

/* woo notices in the brand */
body.mw-account .woocommerce-message,
body.mw-account .woocommerce-info,
body.mw-checkout .woocommerce-info{
  border-top:0; border-left:4px solid var(--mw-red);
  background:#fdf0ee; color:var(--mw-char); border-radius:6px;
}
body.mw-account .woocommerce-message::before,
body.mw-account .woocommerce-info::before{ display:none; }

/* ---------- checkout ---------- */
body.mw-checkout{ background:var(--mw-cream); }
body.mw-checkout .woocommerce-checkout-review-order,
body.mw-checkout .woocommerce-billing-fields{
  background:#fff; border:1px solid var(--mw-line); border-radius:10px; padding:1.15rem 1.25rem;
}
body.mw-checkout h3{ color:var(--mw-char); font-weight:800; }

/* ---------- LearnDash course + lesson ----------
   NOTE: this install uses LearnDash's LEGACY templates, not LD30. There is no .learndash-wrapper and
   no ld-* classes — the course content is .learndash_course_content > .learndash_lessons > .lessons_list
   with rows like <div class="post-1858 is_not_sample"><div class="list-count">1</div><h4><a class="completed">.
   Target those, not the LD30 selectors. */
body.mw-learn{ background:var(--mw-cream); }

body.mw-learn .learndash_course_content{
  max-width:900px; margin:1.5rem auto 0;
}
body.mw-learn .learndash_course_content > h4{
  margin:0 0 .8rem;
  font-size:.8rem; font-weight:800; letter-spacing:1.4px; text-transform:uppercase;
  color:var(--mw-char);
}

/* Each lesson becomes a card, matching the dashboard.
   The theme/LearnDash styles win on specificity here (they set display:table-row, a blue link colour
   and a grey border), so these rules are deliberately specific and use !important on the properties
   that were being overridden. */
body.mw-learn .learndash_course_content .lessons_list > div,
body.mw-learn .learndash_course_content .topics_list > div{
  display:flex !important; align-items:center; gap:.9rem;
  background:#fff !important;
  border:1px solid var(--mw-line) !important;
  border-radius:10px !important;
  margin:0 0 .55rem !important; padding:.85rem 1rem !important;
  transition:border-color .18s ease, transform .12s ease, box-shadow .18s ease;
}
body.mw-learn .learndash_course_content .lessons_list > div:hover,
body.mw-learn .learndash_course_content .topics_list > div:hover{
  border-color:var(--mw-red) !important;
  transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(44,44,44,.08);
}
body.mw-learn .learndash_course_content .lessons_list .list-count,
body.mw-learn .learndash_course_content .topics_list .list-count{
  flex:0 0 30px; width:30px; height:30px;
  display:flex !important; align-items:center; justify-content:center;
  background:var(--mw-cream); border-radius:50%;
  font-size:.82rem; font-weight:800; color:var(--mw-muted);
}
body.mw-learn .learndash_course_content .lessons_list h4,
body.mw-learn .learndash_course_content .topics_list h4{
  margin:0 !important; font-size:.98rem; font-weight:700; line-height:1.35;
}
body.mw-learn .learndash_course_content .lessons_list h4 a,
body.mw-learn .learndash_course_content .topics_list h4 a{
  color:var(--mw-char) !important; text-decoration:none !important;
}
body.mw-learn .learndash_course_content .lessons_list h4 a:hover,
body.mw-learn .learndash_course_content .topics_list h4 a:hover{
  color:var(--mw-red) !important;
}

/* completed lessons get a red tick and a filled counter */
body.mw-learn .learndash_course_content .lessons_list a.completed::before,
body.mw-learn .learndash_course_content .topics_list a.completed::before{
  content:"\2713";
  display:inline-block; margin-right:.45rem;
  color:var(--mw-red); font-weight:900;
}
body.mw-learn .learndash_course_content .lessons_list > div:has(a.completed) .list-count{
  background:var(--mw-red); color:#fff;
}
/* generic LearnDash buttons/links that do appear on lesson pages */
body.mw-learn .learndash_next_prev_link a,
body.mw-learn a.ld-button,
body.mw-learn input.learndash_mark_complete_button,
body.mw-learn .learndash_mark_complete_button{
  display:inline-block;
  background:var(--mw-red) !important; color:#fff !important;
  border:0 !important; border-radius:6px !important;
  min-height:44px; padding:.7rem 1.3rem;
  font-weight:700; font-size:.92rem; text-decoration:none !important;
  transition:background .18s ease;
}
body.mw-learn .learndash_next_prev_link a:hover,
body.mw-learn input.learndash_mark_complete_button:hover{ background:var(--mw-red-dark) !important; }
body.mw-learn .learndash_next_prev_link a.prev-link{
  background:transparent !important; color:var(--mw-red) !important;
  border:2px solid var(--mw-red) !important;
}
/* ---------- wider screens ---------- */
@media (min-width:560px){
  .mw-acct__tabs{ grid-template-columns:repeat(5,1fr); }
}

/* WooCommerce ships its own input styling that outranks the generic rule above. */
body.mw-checkout .woocommerce form .form-row input.input-text,
body.mw-checkout .woocommerce form .form-row textarea,
body.mw-checkout .woocommerce form .form-row select,
body.mw-account .woocommerce form .form-row input.input-text,
body.mw-account .woocommerce form .form-row select{
  border:2px solid #e0d2c4 !important;
  border-radius:6px !important;
  min-height:44px;
  padding:.6rem .8rem !important;
  background:#fff !important;
  color:var(--mw-char) !important;
}
body.mw-checkout .woocommerce form .form-row input.input-text:focus,
body.mw-account .woocommerce form .form-row input.input-text:focus{
  border-color:var(--mw-red) !important;
  box-shadow:0 0 0 3px rgba(192,57,43,.22) !important;
  outline:none !important;
}
/* == MAKERWORKS LOGGED IN END == */

/* == MAKERWORKS IN CART START == */
/* "In your cart / View cart" state for sold-individually products (makerworks-in-cart-buttons.php).
   Both states are in the DOM; data-in-cart on the wrapper picks the visible one, so JS can flip a
   button on a cart change without a page load.
   Brand: brick red #C0392B / cream #FAF7F2 / charcoal #2C2C2C */
.mw-atc[data-in-cart="0"] > .mw-atc__incart{ display:none; }
.mw-atc[data-in-cart="1"] > .mw-atc__buy{ display:none; }

.mw-atc__incart{
  display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;
}
.mw-atc__flag{
  display:inline-flex;align-items:center;gap:.4rem;
  font-size:.92rem;font-weight:700;line-height:1.2;
  color:#2C2C2C;
}
.mw-atc__tick{
  flex:0 0 auto;
  color:#C0392B;
}
.mw-atc__view,
a.mw-atc__view{
  display:inline-block;
  background:transparent;color:#C0392B!important;
  border:2px solid #C0392B;border-radius:6px;
  padding:.55rem 1.1rem;
  font-size:.9rem;font-weight:700;line-height:1.2;
  text-decoration:none!important;
  cursor:pointer;
  transition:background .18s ease,color .18s ease;
}
.mw-atc__view:hover,
a.mw-atc__view:hover{ background:#C0392B;color:#fff!important; }
.mw-atc__view:focus-visible{ outline:3px solid #C0392B;outline-offset:3px; }

/* Shop / category grid — the product template centres its column, so match it and keep the
   swapped state the same height as the button it replaces (no card-height jump). */
.mw-atc--loop{ text-align:center; }
.mw-atc--loop .mw-atc__incart{
  justify-content:center;
  gap:.5rem;
  margin-bottom:1rem;
  min-height:2.6rem;
}
.mw-atc--loop .mw-atc__flag{ font-size:.86rem; }
.mw-atc--loop .mw-atc__view{ padding:.45rem .9rem;font-size:.84rem; }

/* Single product page — sits where the add-to-cart form was. */
.mw-atc--single .mw-atc__incart{
  margin:1.25rem 0 1.5rem;
  gap:1rem;
}
.mw-atc--single .mw-atc__flag{ font-size:1rem; }
.mw-atc--single .mw-atc__view{ padding:.75rem 1.5rem;font-size:.95rem; }

/* 44px tap targets on phones, in line with the rest of the mobile pass. */
@media (max-width:600px){
  .mw-atc__view,
  a.mw-atc__view{ padding:.7rem 1.2rem;min-height:44px;display:inline-flex;align-items:center; }
  .mw-atc--loop .mw-atc__incart{ flex-direction:column;gap:.55rem; }
}
/* == MAKERWORKS IN CART END == */

/* == MAKERWORKS YOUTUBE START == */
/* Ryan & Mia YouTube call-to-action on the homepage (#youtube section of template #1758).
   The button itself inherits the homepage's .mw-button-primary styling; this only adds the play
   glyph and the handle link under it. */
.mw-yt-button .wp-block-button__link{
  display:inline-flex;align-items:center;gap:.6rem;
}
/* Play triangle as a mask so it follows the button's text colour on hover. */
.mw-yt-button .wp-block-button__link::before{
  content:"";
  flex:0 0 auto;
  width:1.05em;height:1.05em;
  background-color:currentColor;
  -webkit-mask:var(--mw-yt-play) center/contain no-repeat;
          mask:var(--mw-yt-play) center/contain no-repeat;
}
.mw-yt-button{
  --mw-yt-play:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.6 7.2a2.6 2.6 0 0 0-1.8-1.8C18.2 5 12 5 12 5s-6.2 0-7.8.4A2.6 2.6 0 0 0 2.4 7.2 27 27 0 0 0 2 12a27 27 0 0 0 .4 4.8 2.6 2.6 0 0 0 1.8 1.8C5.8 19 12 19 12 19s6.2 0 7.8-.4a2.6 2.6 0 0 0 1.8-1.8A27 27 0 0 0 22 12a27 27 0 0 0-.4-4.8ZM10 15.2V8.8l5.2 3.2Z'/%3E%3C/svg%3E");
}

.mw-yt-handle{
  margin-top:.9rem;
}
.mw-yt-handle a{
  color:#8a7f7a;
  text-decoration:none;
  border-bottom:1px solid rgba(138,127,122,.4);
  transition:color .18s ease,border-color .18s ease;
}
.mw-yt-handle a:hover,
.mw-yt-handle a:focus-visible{
  color:#C0392B;
  border-bottom-color:#C0392B;
}
.mw-yt-handle a:focus-visible{ outline:3px solid #C0392B;outline-offset:3px; }

@media (max-width:600px){
  /* 44px tap targets, in line with the rest of the mobile pass. The homepage's shared
     .mw-button-primary only reaches 37px, so the height is topped up here rather than in that
     rule — this section has no sibling buttons to look inconsistent against. */
  .mw-yt-button .wp-block-button__link{ min-height:44px;justify-content:center; }
  .mw-yt-handle a{ display:inline-block;padding:.6rem 0;min-height:24px; }

  /* The footer's social icons render at 16x16 — far under a usable touch target, and the YouTube
     one is the only link there that actually goes anywhere. Padding (not a bigger icon) grows the
     hit area to 34x44 without changing how the row looks; measured at 375px it still sits on one
     line and the row keeps its width.
     MOBILE ONLY ON PURPOSE: the desktop footer column is 266px wide, so the same padding wraps the
     row onto three lines. */
  footer .wp-block-social-links .wp-social-link a{ padding:14px 9px; }
}
/* == MAKERWORKS YOUTUBE END == */

/* == MAKERWORKS PREP START == */
/* Parent & Guardian Prep Sheet panel in the description of LearnDash course #1844.
   Brand: brick red #C0392B / cream #FAF7F2 / charcoal #2C2C2C.
   NOTE: LearnDash on this install uses LEGACY templates - no .learndash-wrapper, no ld-* classes -
   so this is scoped by its own class, not by any LD wrapper. */
.mw-prep{
  border:1px solid #e7ded3;
  border-left:5px solid #C0392B;
  margin:0 0 2rem;
  max-width:760px;
}
.mw-prep__eyebrow{
  margin:0 0 .35rem;
  font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;
  color:#C0392B;
}
.mw-prep__title{
  margin:0 0 .85rem;
  font-size:1.45rem;line-height:1.25;font-weight:800;
  color:#2C2C2C;
}
.mw-prep p{ color:#4a4442;line-height:1.7; }
.mw-prep__list{
  margin:1rem 0 1.4rem;
  padding-left:1.15rem;
  color:#4a4442;line-height:1.7;
}
.mw-prep__list li{ margin-bottom:.5rem; }

.mw-prep__btn .wp-block-button__link,
.mw-prep .wp-block-button.mw-prep__btn .wp-block-button__link{
  display:inline-flex;align-items:center;gap:.6rem;
  background:#C0392B;color:#fff;
  border:0;border-radius:6px;
  padding:.85rem 1.5rem;
  font-size:1rem;font-weight:700;line-height:1.2;
  text-decoration:none;
  transition:background .18s ease,transform .12s ease;
}
.mw-prep__btn .wp-block-button__link:hover,
.mw-prep__btn .wp-block-button__link:focus-visible{
  background:#a53124;color:#fff;transform:translateY(-1px);
}
.mw-prep__btn .wp-block-button__link:focus-visible{ outline:3px solid #C0392B;outline-offset:3px; }
/* Download arrow, so the button reads as a file rather than a navigation link. */
.mw-prep__btn .wp-block-button__link::before{
  content:"";
  flex:0 0 auto;width:1.05em;height:1.05em;
  background-color:currentColor;
  -webkit-mask:var(--mw-dl) center/contain no-repeat;
          mask:var(--mw-dl) center/contain no-repeat;
}
.mw-prep__btn{
  --mw-dl:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v12'/%3E%3Cpath d='M7 11l5 5 5-5'/%3E%3Cpath d='M4 20h16'/%3E%3C/svg%3E");
}

.mw-prep__note{
  margin:1.2rem 0 0;
  font-size:.9rem;line-height:1.65;
  color:#5e5553;
}
.mw-prep__note a{ color:#C0392B;font-weight:600; }

@media (max-width:600px){
  .mw-prep{ padding:1.25rem !important; }
  .mw-prep__title{ font-size:1.25rem; }
  /* 44px tap target, in line with the rest of the mobile pass. */
  .mw-prep__btn .wp-block-button__link{ min-height:44px;justify-content:center;width:100%; }
}
/* == MAKERWORKS PREP END == */

/* == MAKERWORKS ABOUT PHOTO START == */
/* The "Built by makers for makers." photo (#about section of Front Page template #1758).
   The slot was built for a PORTRAIT stock image; the real shop photo of Ryan and Mia is a 16:9
   video frame, which left the image column ~242px tall against a ~659px text column and rendered
   the pair quite small. Framing it 4:3 with object-fit:cover keeps both of them plus the pegboard,
   trims only the empty bench in the foreground, and scales the subjects up about a third.
   Scoped to #about on purpose - the "Learn To Build" section above still uses a portrait image. */
#about .mw-image-rounded img{
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:50% 45%;   /* bias up slightly: keeps faces off the crop line */
}

@media (max-width:781px){
  /* Stacked on phones, where a wide frame reads fine and keeps the section short. */
  #about .mw-image-rounded img{ aspect-ratio:3/2; }
}
/* == MAKERWORKS ABOUT PHOTO END == */

/* Safety page — /product-category/safety/ (template taxonomy-product_cat-safety). Mobile-first. */
.mw-safety{display:grid;gap:1.5rem;margin:0}
@media (min-width:900px){.mw-safety{grid-template-columns:1.08fr .92fr;gap:2rem;align-items:start}}
.mw-safety__card{background:#fff;border:1px solid #e6ded4;border-radius:14px;padding:1.4rem 1.3rem 1.6rem;box-shadow:0 2px 10px rgba(44,44,44,.05);color:#2C2C2C}
.mw-safety__card--check{border-top:5px solid #C0392B}
.mw-safety__card--setup{border-top:5px solid #2C2C2C}
.mw-safety__eyebrow{margin:0 0 .2rem;font-size:12px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:#C0392B}
.mw-safety__title{margin:0 0 .35rem;font-size:clamp(1.5rem,3.4vw,2rem);font-weight:800;line-height:1.15;color:#2C2C2C}
.mw-safety__lede{margin:0 0 1.1rem;color:#5e5553;font-size:1rem;line-height:1.6}
.mw-safety__tools{display:flex;flex-wrap:wrap;gap:.5rem .6rem;margin:0 0 1.3rem}
.mw-safety__btn{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:.55rem 1.05rem;border-radius:8px;border:2px solid #C0392B;background:#C0392B;color:#fff !important;font-weight:700;font-size:.92rem;text-decoration:none !important;cursor:pointer;line-height:1.1;font-family:inherit}
.mw-safety__btn:hover{background:#a5301f;border-color:#a5301f}
.mw-safety__btn--ghost{background:transparent;color:#C0392B !important}
.mw-safety__btn--ghost:hover{background:#fbeeea}
.mw-safety__reset{align-self:center;margin-left:auto;background:none;border:0;padding:.4rem;color:#7a6f68;font-size:.85rem;text-decoration:underline;cursor:pointer;font-family:inherit}
.mw-safety__reset:hover{color:#C0392B}
.mw-safety__group{margin:0 0 1.15rem}
.mw-safety__group:last-of-type{margin-bottom:0}
.mw-safety__h{margin:0 0 .5rem;font-size:.95rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:#C0392B;padding-bottom:.35rem;border-bottom:1px solid #f0e6dd}
.mw-safety__list{list-style:none;margin:0;padding:0}
.mw-safety__list li{margin:0;padding:0}
.mw-safety__item{display:flex;align-items:flex-start;gap:.7rem;padding:.42rem .3rem;border-radius:8px;cursor:pointer;line-height:1.45;font-size:1rem;color:#2C2C2C}
.mw-safety__item:hover{background:#faf7f2}
.mw-safety__item input{appearance:none;-webkit-appearance:none;flex:0 0 auto;width:22px;height:22px;margin:.1rem 0 0;border:2px solid #2C2C2C;border-radius:5px;background:#fff;display:grid;place-content:center;cursor:pointer}
.mw-safety__item input::before{content:"";width:12px;height:12px;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%);background:#fff;transform:scale(0);transition:transform .12s ease-in}
.mw-safety__item input:checked{background:#C0392B;border-color:#C0392B}
.mw-safety__item input:checked::before{transform:scale(1)}
.mw-safety__item input:focus-visible{outline:3px solid rgba(192,57,43,.35);outline-offset:2px}
.mw-safety__item.is-done span{color:#7a6f68;text-decoration:line-through;text-decoration-color:rgba(192,57,43,.5)}
.mw-safety__ready{margin:1.2rem 0 0;padding:.9rem 1rem;border-radius:10px;background:#faf7f2;border:1px dashed #d9cfc4;color:#5e5553;font-size:.95rem;line-height:1.5}
.mw-safety__ready strong{color:#2C2C2C}
.mw-safety__ready.is-ready{background:#fbeeea;border-color:#C0392B;color:#2C2C2C}
.mw-safety__remember{margin:1rem 0 0;font-weight:700;color:#2C2C2C;line-height:1.5}
.mw-safety__bul{margin:0;padding:0 0 0 1.2rem;color:#2C2C2C;line-height:1.55}
.mw-safety__bul li{margin:.28rem 0}
.mw-safety__bul li strong{color:#2C2C2C}
.mw-safety__tag{display:inline-block;margin:0 .35rem 0 0;padding:.05rem .5rem;border-radius:999px;background:#2C2C2C;color:#fff;font-size:.7rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;vertical-align:middle}
.mw-safety__note{margin:.9rem 0 0;padding:.75rem .9rem;border-left:4px solid #C0392B;background:#faf7f2;color:#2C2C2C;font-weight:700;line-height:1.45;border-radius:0 8px 8px 0}
.mw-safety__sheets{display:grid;gap:1rem;margin:0}
@media (min-width:640px){.mw-safety__sheets{grid-template-columns:1fr 1fr}}
.mw-safety__sheet{display:block;border:1px solid #e6ded4;border-radius:12px;overflow:hidden;background:#fff;text-decoration:none !important;color:#2C2C2C !important;box-shadow:0 2px 10px rgba(44,44,44,.05);transition:transform .15s ease,box-shadow .15s ease}
.mw-safety__sheet:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(44,44,44,.12)}
.mw-safety__sheet img{display:block;width:100%;height:auto;border-bottom:1px solid #f0e6dd}
.mw-safety__sheet span{display:block;padding:.75rem 1rem;font-weight:700;font-size:.95rem}
.mw-safety__sheet span small{display:block;font-weight:500;color:#7a6f68;font-size:.82rem;margin-top:.15rem}
/* Print: just the two cards on white. */
@media print{
  body.term-safety header.wp-block-template-part,body.term-safety footer.wp-block-template-part,body.term-safety .mw-fab,body.term-safety .mw-drawer,body.term-safety .mw-drawer-overlay,body.term-safety .mw-safety__tools,body.term-safety .mw-safety__reset,body.term-safety .mw-safety-sheets,body.term-safety .mw-safety-cta{display:none !important}
  body.term-safety .mw-safety{grid-template-columns:1fr 1fr;gap:1rem}
  body.term-safety .mw-safety__card{box-shadow:none;break-inside:avoid;padding:1rem}
  body.term-safety .mw-safety__item input{border-color:#000}
  body.term-safety .mw-safety__item input:checked{background:#000;border-color:#000}
}

/* Course 1 lesson pages — workbook content rendered on the page (.mw-learn = LearnDash single, legacy templates). */
.mw-learn .mw-lesson{color:#2C2C2C;line-height:1.6;font-size:1.02rem}
.mw-learn .mw-lesson > *{margin-left:0;margin-right:0}
.mw-learn .mw-lesson__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem 1.2rem;margin:0 0 1.6rem;padding:1rem 1.2rem;background:#2C2C2C;border-radius:12px;color:#fff}
.mw-learn .mw-lesson__kicker{margin:0;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#e8735f}
.mw-learn .mw-lesson__sub{margin:.15rem 0 0;color:#e9e4dd;font-size:.95rem}
.mw-learn .mw-lesson__pdf{display:inline-flex;align-items:center;min-height:44px;padding:.55rem 1.05rem;border-radius:8px;background:#C0392B;color:#fff !important;font-weight:700;font-size:.9rem;text-decoration:none !important;white-space:nowrap}
.mw-learn .mw-lesson__pdf:hover{background:#a5301f}
.mw-learn .mw-lesson__eyebrow{margin:2rem 0 .15rem;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#C0392B}
.mw-learn .mw-lesson__eyebrow + .mw-lesson__h{margin-top:0}
.mw-learn .mw-lesson .mw-lesson__h{margin:1.6rem 0 .6rem;font-size:clamp(1.35rem,2.6vw,1.7rem);font-weight:800;line-height:1.2;color:#2C2C2C;padding-bottom:.35rem;border-bottom:2px solid #C0392B;display:inline-block}
.mw-learn .mw-lesson p{margin:0 0 .9rem}
.mw-learn .mw-lesson .mw-lesson__body strong{color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__quote{margin:1.2rem 0;padding:1rem 1.2rem;background:#FAF7F2;border-left:4px solid #C0392B;border-radius:0 10px 10px 0;font-style:italic;color:#5e5553}
.mw-learn .mw-lesson .mw-lesson__quote p{margin:0;font-size:1.02rem}
.mw-learn .mw-lesson .mw-lesson__quote p::before,.mw-learn .mw-lesson .mw-lesson__quote p::after{content:none}
/* lists */
.mw-learn .mw-lesson ul.wp-block-list,.mw-learn .mw-lesson ol.wp-block-list{margin:0 0 1.1rem;padding-left:1.4rem}
.mw-learn .mw-lesson .wp-block-list li{margin:.3rem 0;display:list-item}
.mw-learn .mw-lesson ul.mw-lesson__check{list-style:none;padding-left:0}
.mw-learn .mw-lesson ul.mw-lesson__check li{position:relative;padding:.35rem 0 .35rem 2.1rem;border-bottom:1px solid #f0e6dd}
.mw-learn .mw-lesson ul.mw-lesson__check li::before{content:"";position:absolute;left:.15rem;top:.55rem;width:18px;height:18px;border:2px solid #2C2C2C;border-radius:4px;background:#fff}
.mw-learn .mw-lesson ol.mw-lesson__steps{counter-reset:mwstep;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li{counter-increment:mwstep;position:relative;padding:.45rem 0 .45rem 2.6rem;margin:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li::before{content:counter(mwstep);position:absolute;left:0;top:.45rem;width:1.9rem;height:1.9rem;border-radius:50%;background:#C0392B;color:#fff;font-weight:800;font-size:.9rem;display:grid;place-content:center}
.mw-learn .mw-lesson ol.mw-lesson__questions{counter-reset:mwq;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__questions li{counter-increment:mwq;position:relative;padding:.55rem 0 .55rem 2.2rem;font-weight:700}
.mw-learn .mw-lesson ol.mw-lesson__questions li::before{content:counter(mwq);position:absolute;left:0;top:.5rem;width:1.6rem;height:1.6rem;border-radius:6px;border:2px solid #C0392B;color:#C0392B;font-weight:800;font-size:.85rem;display:grid;place-content:center}
.mw-learn .mw-lesson .mw-lesson__hint{display:block;margin-top:.2rem;font-weight:400;color:#6b625b;font-size:.95rem}
/* tables */
.mw-learn .mw-lesson .mw-lesson__table{margin:.6rem 0 1.4rem;overflow-x:auto}
.mw-learn .mw-lesson .mw-lesson__table table{width:100%;border-collapse:collapse;font-size:.95rem;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__table th,.mw-learn .mw-lesson .mw-lesson__table td{padding:.55rem .75rem;border:1px solid #e6ded4;text-align:left;vertical-align:top;color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__table th{background:#2C2C2C;color:#fff;font-weight:700;font-size:.8rem;letter-spacing:1px;text-transform:uppercase}
.mw-learn .mw-lesson .mw-lesson__table tbody tr:nth-child(even) td{background:#FAF7F2}
/* callout + write-in box */
.mw-learn .mw-lesson .mw-lesson__callout{margin:1rem 0 1.3rem;padding:.9rem 1.1rem;background:#fff7f3;border:1px solid #f1d9d3;border-left:4px solid #C0392B;border-radius:0 10px 10px 0}
.mw-learn .mw-lesson .mw-lesson__callout p{margin:0;font-size:.98rem}
.mw-learn .mw-lesson .mw-lesson__writebox{--lines:4;height:calc(var(--lines) * 2rem + .5rem);margin:.4rem 0 1.4rem;border:1px solid #e0d2c4;border-radius:8px;background:#fff repeating-linear-gradient(to bottom,transparent 0,transparent calc(2rem - 1px),#e6ded4 calc(2rem - 1px),#e6ded4 2rem);background-position:0 .5rem}
.mw-learn .mw-lesson .mw-lesson__figure{margin:1rem 0 1.4rem}
.mw-learn .mw-lesson .mw-lesson__figure img{border-radius:10px;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__foot{margin:2rem 0 0;padding-top:1rem;border-top:1px solid #e6ded4;color:#6b625b;font-size:.95rem}
.mw-learn .mw-lesson a{color:#C0392B !important}
@media (max-width:600px){
  .mw-learn .mw-lesson__head{padding:.9rem 1rem}
  .mw-learn .mw-lesson__pdf{width:100%;justify-content:center}
  .mw-learn .mw-lesson .mw-lesson__table table{font-size:.88rem}
}
@media print{
  .mw-learn .mw-lesson__pdf,.mw-learn .mw-lesson__foot{display:none}
}

/* Course 1 lesson pages — workbook content rendered on the page (.mw-learn = LearnDash single, legacy templates). */
.mw-learn .mw-lesson{color:#2C2C2C;line-height:1.6;font-size:1.02rem}
.mw-learn .mw-lesson > *{margin-left:0;margin-right:0}
.mw-learn .mw-lesson__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem 1.2rem;margin:0 0 1.6rem;padding:1rem 1.2rem;background:#2C2C2C;border-radius:12px;color:#fff}
.mw-learn .mw-lesson__kicker{margin:0;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#e8735f}
.mw-learn .mw-lesson__sub{margin:.15rem 0 0;color:#e9e4dd;font-size:.95rem}
.mw-learn .mw-lesson__pdf{display:inline-flex;align-items:center;min-height:44px;padding:.55rem 1.05rem;border-radius:8px;background:#C0392B;color:#fff !important;font-weight:700;font-size:.9rem;text-decoration:none !important;white-space:nowrap}
.mw-learn .mw-lesson__pdf:hover{background:#a5301f}
.mw-learn .mw-lesson__eyebrow{margin:2rem 0 .15rem;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#C0392B}
.mw-learn .mw-lesson__eyebrow + .mw-lesson__h{margin-top:0}
.mw-learn .mw-lesson .mw-lesson__h{margin:1.6rem 0 .6rem;font-size:clamp(1.35rem,2.6vw,1.7rem);font-weight:800;line-height:1.2;color:#2C2C2C;padding-bottom:.35rem;border-bottom:2px solid #C0392B;display:inline-block}
.mw-learn .mw-lesson p{margin:0 0 .9rem}
.mw-learn .mw-lesson .mw-lesson__body strong{color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__quote{margin:1.2rem 0;padding:1rem 1.2rem;background:#FAF7F2;border-left:4px solid #C0392B;border-radius:0 10px 10px 0;font-style:italic;color:#5e5553}
.mw-learn .mw-lesson .mw-lesson__quote p{margin:0;font-size:1.02rem}
.mw-learn .mw-lesson .mw-lesson__quote p::before,.mw-learn .mw-lesson .mw-lesson__quote p::after{content:none}
/* lists */
.mw-learn .mw-lesson ul.wp-block-list,.mw-learn .mw-lesson ol.wp-block-list{margin:0 0 1.1rem;padding-left:1.4rem}
.mw-learn .mw-lesson .wp-block-list li{margin:.3rem 0;display:list-item}
.mw-learn .mw-lesson ul.mw-lesson__check{list-style:none;padding-left:0}
.mw-learn .mw-lesson ul.mw-lesson__check li{position:relative;padding:.35rem 0 .35rem 2.1rem;border-bottom:1px solid #f0e6dd}
.mw-learn .mw-lesson ul.mw-lesson__check li::before{content:"";position:absolute;left:.15rem;top:.55rem;width:18px;height:18px;border:2px solid #2C2C2C;border-radius:4px;background:#fff}
.mw-learn .mw-lesson ol.mw-lesson__steps{counter-reset:mwstep;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li{counter-increment:mwstep;position:relative;padding:.45rem 0 .45rem 2.6rem;margin:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li::before{content:counter(mwstep);position:absolute;left:0;top:.45rem;width:1.9rem;height:1.9rem;border-radius:50%;background:#C0392B;color:#fff;font-weight:800;font-size:.9rem;display:grid;place-content:center}
.mw-learn .mw-lesson ol.mw-lesson__questions{counter-reset:mwq;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__questions li{counter-increment:mwq;position:relative;padding:.55rem 0 .55rem 2.2rem;font-weight:700}
.mw-learn .mw-lesson ol.mw-lesson__questions li::before{content:counter(mwq);position:absolute;left:0;top:.5rem;width:1.6rem;height:1.6rem;border-radius:6px;border:2px solid #C0392B;color:#C0392B;font-weight:800;font-size:.85rem;display:grid;place-content:center}
.mw-learn .mw-lesson .mw-lesson__hint{display:block;margin-top:.2rem;font-weight:400;color:#6b625b;font-size:.95rem}
/* tables */
.mw-learn .mw-lesson .mw-lesson__table{margin:.6rem 0 1.4rem;overflow-x:auto}
.mw-learn .mw-lesson .mw-lesson__table table{width:100%;border-collapse:collapse;font-size:.95rem;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__table th,.mw-learn .mw-lesson .mw-lesson__table td{padding:.55rem .75rem;border:1px solid #e6ded4;text-align:left;vertical-align:top;color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__table th{background:#2C2C2C;color:#fff;font-weight:700;font-size:.8rem;letter-spacing:1px;text-transform:uppercase}
.mw-learn .mw-lesson .mw-lesson__table tbody tr:nth-child(even) td{background:#FAF7F2}
/* callout + write-in box */
.mw-learn .mw-lesson .mw-lesson__callout{margin:1rem 0 1.3rem;padding:.9rem 1.1rem;background:#fff7f3;border:1px solid #f1d9d3;border-left:4px solid #C0392B;border-radius:0 10px 10px 0}
.mw-learn .mw-lesson .mw-lesson__callout p{margin:0;font-size:.98rem}
.mw-learn .mw-lesson .mw-lesson__writebox{--lines:4;height:calc(var(--lines) * 2rem + .5rem);margin:.4rem 0 1.4rem;border:1px solid #e0d2c4;border-radius:8px;background:#fff repeating-linear-gradient(to bottom,transparent 0,transparent calc(2rem - 1px),#e6ded4 calc(2rem - 1px),#e6ded4 2rem);background-position:0 .5rem}
.mw-learn .mw-lesson .mw-lesson__figure{margin:1rem 0 1.4rem}
.mw-learn .mw-lesson .mw-lesson__figure img{border-radius:10px;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__foot{margin:2rem 0 0;padding-top:1rem;border-top:1px solid #e6ded4;color:#6b625b;font-size:.95rem}
.mw-learn .mw-lesson a{color:#C0392B !important}
/* the generic link rule above is (0,2,1) — the button needs to outrank it or it is red-on-red until hover */
.mw-learn .mw-lesson a.mw-lesson__pdf,.mw-learn .mw-lesson a.mw-lesson__pdf:hover,.mw-learn .mw-lesson a.mw-lesson__pdf:focus,.mw-learn .mw-lesson a.mw-lesson__pdf:visited{color:#fff !important;text-decoration:none !important}
@media (max-width:600px){
  .mw-learn .mw-lesson__head{padding:.9rem 1rem}
  .mw-learn .mw-lesson__pdf{width:100%;justify-content:center}
  .mw-learn .mw-lesson .mw-lesson__table table{font-size:.88rem}
}
@media print{
  .mw-learn .mw-lesson__pdf,.mw-learn .mw-lesson__foot{display:none}
}

/* Course 1 lesson pages — workbook content rendered on the page (.mw-learn = LearnDash single, legacy templates). */
.mw-learn .mw-lesson{color:#2C2C2C;line-height:1.6;font-size:1.02rem}
.mw-learn .mw-lesson > *{margin-left:0;margin-right:0}
.mw-learn .mw-lesson__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem 1.2rem;margin:0 0 1.6rem;padding:1rem 1.2rem;background:#2C2C2C;border-radius:12px;color:#fff}
.mw-learn .mw-lesson__kicker{margin:0;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#e8735f}
.mw-learn .mw-lesson__sub{margin:.15rem 0 0;color:#e9e4dd;font-size:.95rem}
.mw-learn .mw-lesson__pdf{display:inline-flex;align-items:center;min-height:44px;padding:.55rem 1.05rem;border-radius:8px;background:#C0392B;color:#fff !important;font-weight:700;font-size:.9rem;text-decoration:none !important;white-space:nowrap}
.mw-learn .mw-lesson__pdf:hover{background:#a5301f}
.mw-learn .mw-lesson__eyebrow{margin:2rem 0 .15rem;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#C0392B}
.mw-learn .mw-lesson__eyebrow + .mw-lesson__h{margin-top:0}
.mw-learn .mw-lesson .mw-lesson__h{margin:1.6rem 0 .6rem;font-size:clamp(1.35rem,2.6vw,1.7rem);font-weight:800;line-height:1.2;color:#2C2C2C;padding-bottom:.35rem;border-bottom:2px solid #C0392B;display:inline-block}
.mw-learn .mw-lesson p{margin:0 0 .9rem}
.mw-learn .mw-lesson .mw-lesson__body strong{color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__quote{margin:1.2rem 0;padding:1rem 1.2rem;background:#FAF7F2;border-left:4px solid #C0392B;border-radius:0 10px 10px 0;font-style:italic;color:#5e5553}
.mw-learn .mw-lesson .mw-lesson__quote p{margin:0;font-size:1.02rem}
.mw-learn .mw-lesson .mw-lesson__quote p::before,.mw-learn .mw-lesson .mw-lesson__quote p::after{content:none}
/* lists */
.mw-learn .mw-lesson ul.wp-block-list,.mw-learn .mw-lesson ol.wp-block-list{margin:0 0 1.1rem;padding-left:1.4rem}
.mw-learn .mw-lesson .wp-block-list li{margin:.3rem 0;display:list-item}
.mw-learn .mw-lesson ul.mw-lesson__check{list-style:none;padding-left:0}
.mw-learn .mw-lesson ul.mw-lesson__check li{position:relative;padding:.35rem 0 .35rem 2.1rem;border-bottom:1px solid #f0e6dd}
.mw-learn .mw-lesson ul.mw-lesson__check li::before{content:"";position:absolute;left:.15rem;top:.55rem;width:18px;height:18px;border:2px solid #2C2C2C;border-radius:4px;background:#fff}
.mw-learn .mw-lesson ol.mw-lesson__steps{counter-reset:mwstep;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li{counter-increment:mwstep;position:relative;padding:.45rem 0 .45rem 2.6rem;margin:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li::before{content:counter(mwstep);position:absolute;left:0;top:.45rem;width:1.9rem;height:1.9rem;border-radius:50%;background:#C0392B;color:#fff;font-weight:800;font-size:.9rem;display:grid;place-content:center}
.mw-learn .mw-lesson ol.mw-lesson__questions{counter-reset:mwq;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__questions li{counter-increment:mwq;position:relative;padding:.55rem 0 .55rem 2.2rem;font-weight:700}
.mw-learn .mw-lesson ol.mw-lesson__questions li::before{content:counter(mwq);position:absolute;left:0;top:.5rem;width:1.6rem;height:1.6rem;border-radius:6px;border:2px solid #C0392B;color:#C0392B;font-weight:800;font-size:.85rem;display:grid;place-content:center}
.mw-learn .mw-lesson .mw-lesson__hint{display:block;margin-top:.2rem;font-weight:400;color:#6b625b;font-size:.95rem}
/* tables */
.mw-learn .mw-lesson .mw-lesson__table{margin:.6rem 0 1.4rem;overflow-x:auto}
.mw-learn .mw-lesson .mw-lesson__table table{width:100%;border-collapse:collapse;font-size:.95rem;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__table th,.mw-learn .mw-lesson .mw-lesson__table td{padding:.55rem .75rem;border:1px solid #e6ded4;text-align:left;vertical-align:top;color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__table th{background:#2C2C2C;color:#fff;font-weight:700;font-size:.8rem;letter-spacing:1px;text-transform:uppercase}
.mw-learn .mw-lesson .mw-lesson__table tbody tr:nth-child(even) td{background:#FAF7F2}
/* callout + write-in box */
.mw-learn .mw-lesson .mw-lesson__callout{margin:1rem 0 1.3rem;padding:.9rem 1.1rem;background:#fff7f3;border:1px solid #f1d9d3;border-left:4px solid #C0392B;border-radius:0 10px 10px 0}
.mw-learn .mw-lesson .mw-lesson__callout p{margin:0;font-size:.98rem}
.mw-learn .mw-lesson .mw-lesson__writebox{--lines:4;height:calc(var(--lines) * 2rem + .5rem);margin:.4rem 0 1.4rem;border:1px solid #e0d2c4;border-radius:8px;background:#fff repeating-linear-gradient(to bottom,transparent 0,transparent calc(2rem - 1px),#e6ded4 calc(2rem - 1px),#e6ded4 2rem);background-position:0 .5rem}
.mw-learn .mw-lesson .mw-lesson__figure{margin:1rem 0 1.4rem}
.mw-learn .mw-lesson .mw-lesson__figure img{border-radius:10px;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__foot{margin:2rem 0 0;padding-top:1rem;border-top:1px solid #e6ded4;color:#6b625b;font-size:.95rem}
.mw-learn .mw-lesson a{color:#C0392B !important}
/* the generic link rule above is (0,2,1) — the button needs to outrank it or it is red-on-red until hover */
.mw-learn .mw-lesson a.mw-lesson__pdf,.mw-learn .mw-lesson a.mw-lesson__pdf:hover,.mw-learn .mw-lesson a.mw-lesson__pdf:focus,.mw-learn .mw-lesson a.mw-lesson__pdf:visited{color:#fff !important;text-decoration:none !important}
@media (max-width:600px){
  .mw-learn .mw-lesson__head{padding:.9rem 1rem}
  .mw-learn .mw-lesson__pdf{width:100%;justify-content:center}
  .mw-learn .mw-lesson .mw-lesson__table table{font-size:.88rem}
}
@media print{
  .mw-learn .mw-lesson__pdf,.mw-learn .mw-lesson__foot{display:none}
}
/* clickable tick boxes (makerworks-lesson-checklist.php adds role=checkbox + .is-checked) */
.mw-learn .mw-lesson ul.mw-lesson__check li[role="checkbox"]{cursor:pointer;user-select:none;border-radius:6px;transition:background .12s ease}
.mw-learn .mw-lesson ul.mw-lesson__check li[role="checkbox"]:hover{background:#FAF7F2}
.mw-learn .mw-lesson ul.mw-lesson__check li[role="checkbox"]:focus-visible{outline:3px solid rgba(192,57,43,.35);outline-offset:2px}
.mw-learn .mw-lesson ul.mw-lesson__check li::before{transition:background .12s ease,border-color .12s ease}
.mw-learn .mw-lesson ul.mw-lesson__check li.is-checked::before{background:#C0392B;border-color:#C0392B}
.mw-learn .mw-lesson ul.mw-lesson__check li.is-checked::after{content:"";position:absolute;left:calc(.15rem + 4px);top:calc(.55rem + 4px);width:10px;height:10px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
.mw-learn .mw-lesson ul.mw-lesson__check li.is-checked{color:#6b625b}
.mw-learn .mw-lesson ul.mw-lesson__check.is-complete li.is-checked{color:#2C2C2C}
.mw-learn .mw-lesson ul.mw-lesson__check.is-complete{box-shadow:inset 3px 0 0 #C0392B;padding-left:.6rem}

/* == MAKERWORKS LESSON START == */
/* Course 1 lesson pages — workbook content rendered on the page (.mw-learn = LearnDash single, legacy templates). */
.mw-learn .mw-lesson{color:#2C2C2C;line-height:1.6;font-size:1.02rem}
.mw-learn .mw-lesson > *{margin-left:0;margin-right:0}
.mw-learn .mw-lesson__head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.8rem 1.2rem;margin:0 0 1.6rem;padding:1rem 1.2rem;background:#2C2C2C;border-radius:12px;color:#fff}
.mw-learn .mw-lesson__kicker{margin:0;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#e8735f}
.mw-learn .mw-lesson__sub{margin:.15rem 0 0;color:#e9e4dd;font-size:.95rem}
.mw-learn .mw-lesson__pdf{display:inline-flex;align-items:center;min-height:44px;padding:.55rem 1.05rem;border-radius:8px;background:#C0392B;color:#fff !important;font-weight:700;font-size:.9rem;text-decoration:none !important;white-space:nowrap}
.mw-learn .mw-lesson__pdf:hover{background:#a5301f}
.mw-learn .mw-lesson__eyebrow{margin:2rem 0 .15rem;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#C0392B}
.mw-learn .mw-lesson__eyebrow + .mw-lesson__h{margin-top:0}
.mw-learn .mw-lesson .mw-lesson__h{margin:1.6rem 0 .6rem;font-size:clamp(1.35rem,2.6vw,1.7rem);font-weight:800;line-height:1.2;color:#2C2C2C;padding-bottom:.35rem;border-bottom:2px solid #C0392B;display:inline-block}
.mw-learn .mw-lesson p{margin:0 0 .9rem}
.mw-learn .mw-lesson .mw-lesson__body strong{color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__quote{margin:1.2rem 0;padding:1rem 1.2rem;background:#FAF7F2;border-left:4px solid #C0392B;border-radius:0 10px 10px 0;font-style:italic;color:#5e5553}
.mw-learn .mw-lesson .mw-lesson__quote p{margin:0;font-size:1.02rem}
.mw-learn .mw-lesson .mw-lesson__quote p::before,.mw-learn .mw-lesson .mw-lesson__quote p::after{content:none}
/* lists */
.mw-learn .mw-lesson ul.wp-block-list,.mw-learn .mw-lesson ol.wp-block-list{margin:0 0 1.1rem;padding-left:1.4rem}
.mw-learn .mw-lesson .wp-block-list li{margin:.3rem 0;display:list-item}
.mw-learn .mw-lesson ul.mw-lesson__check{list-style:none;padding-left:0}
.mw-learn .mw-lesson ul.mw-lesson__check li{position:relative;padding:.35rem 0 .35rem 2.1rem;border-bottom:1px solid #f0e6dd}
.mw-learn .mw-lesson ul.mw-lesson__check li::before{content:"";position:absolute;left:.15rem;top:.55rem;width:18px;height:18px;border:2px solid #2C2C2C;border-radius:4px;background:#fff}
.mw-learn .mw-lesson ol.mw-lesson__steps{counter-reset:mwstep;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li{counter-increment:mwstep;position:relative;padding:.45rem 0 .45rem 2.6rem;margin:0}
.mw-learn .mw-lesson ol.mw-lesson__steps li::before{content:counter(mwstep);position:absolute;left:0;top:.45rem;width:1.9rem;height:1.9rem;border-radius:50%;background:#C0392B;color:#fff;font-weight:800;font-size:.9rem;display:grid;place-content:center}
.mw-learn .mw-lesson ol.mw-lesson__questions{counter-reset:mwq;list-style:none;padding-left:0}
.mw-learn .mw-lesson ol.mw-lesson__questions li{counter-increment:mwq;position:relative;padding:.55rem 0 .55rem 2.2rem;font-weight:700}
.mw-learn .mw-lesson ol.mw-lesson__questions li::before{content:counter(mwq);position:absolute;left:0;top:.5rem;width:1.6rem;height:1.6rem;border-radius:6px;border:2px solid #C0392B;color:#C0392B;font-weight:800;font-size:.85rem;display:grid;place-content:center}
.mw-learn .mw-lesson .mw-lesson__hint{display:block;margin-top:.2rem;font-weight:400;color:#6b625b;font-size:.95rem}
/* tables */
.mw-learn .mw-lesson .mw-lesson__table{margin:.6rem 0 1.4rem;overflow-x:auto}
.mw-learn .mw-lesson .mw-lesson__table table{width:100%;border-collapse:collapse;font-size:.95rem;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__table th,.mw-learn .mw-lesson .mw-lesson__table td{padding:.55rem .75rem;border:1px solid #e6ded4;text-align:left;vertical-align:top;color:#2C2C2C}
.mw-learn .mw-lesson .mw-lesson__table th{background:#2C2C2C;color:#fff;font-weight:700;font-size:.8rem;letter-spacing:1px;text-transform:uppercase}
.mw-learn .mw-lesson .mw-lesson__table tbody tr:nth-child(even) td{background:#FAF7F2}
/* callout + write-in box */
.mw-learn .mw-lesson .mw-lesson__callout{margin:1rem 0 1.3rem;padding:.9rem 1.1rem;background:#fff7f3;border:1px solid #f1d9d3;border-left:4px solid #C0392B;border-radius:0 10px 10px 0}
.mw-learn .mw-lesson .mw-lesson__callout p{margin:0;font-size:.98rem}
.mw-learn .mw-lesson .mw-lesson__writebox{--lines:4;height:calc(var(--lines) * 2rem + .5rem);margin:.4rem 0 1.4rem;border:1px solid #e0d2c4;border-radius:8px;background:#fff repeating-linear-gradient(to bottom,transparent 0,transparent calc(2rem - 1px),#e6ded4 calc(2rem - 1px),#e6ded4 2rem);background-position:0 .5rem}
.mw-learn .mw-lesson .mw-lesson__figure{margin:1rem 0 1.4rem}
.mw-learn .mw-lesson .mw-lesson__figure img{border-radius:10px;border:1px solid #e6ded4}
.mw-learn .mw-lesson .mw-lesson__foot{margin:2rem 0 0;padding-top:1rem;border-top:1px solid #e6ded4;color:#6b625b;font-size:.95rem}
.mw-learn .mw-lesson a{color:#C0392B !important}
/* the generic link rule above is (0,2,1) — the button needs to outrank it or it is red-on-red until hover */
.mw-learn .mw-lesson a.mw-lesson__pdf,.mw-learn .mw-lesson a.mw-lesson__pdf:hover,.mw-learn .mw-lesson a.mw-lesson__pdf:focus,.mw-learn .mw-lesson a.mw-lesson__pdf:visited{color:#fff !important;text-decoration:none !important}
@media (max-width:600px){
  .mw-learn .mw-lesson__head{padding:.9rem 1rem}
  .mw-learn .mw-lesson__pdf{width:100%;justify-content:center}
  .mw-learn .mw-lesson .mw-lesson__table table{font-size:.88rem}
}
@media print{
  .mw-learn .mw-lesson__pdf,.mw-learn .mw-lesson__foot{display:none}
}
/* clickable tick boxes (makerworks-lesson-checklist.php adds role=checkbox + .is-checked) */
.mw-learn .mw-lesson ul.mw-lesson__check li[role="checkbox"]{cursor:pointer;user-select:none;border-radius:6px;transition:background .12s ease}
.mw-learn .mw-lesson ul.mw-lesson__check li[role="checkbox"]:hover{background:#FAF7F2}
.mw-learn .mw-lesson ul.mw-lesson__check li[role="checkbox"]:focus-visible{outline:3px solid rgba(192,57,43,.35);outline-offset:2px}
.mw-learn .mw-lesson ul.mw-lesson__check li::before{transition:background .12s ease,border-color .12s ease}
.mw-learn .mw-lesson ul.mw-lesson__check li.is-checked::before{background:#C0392B;border-color:#C0392B}
.mw-learn .mw-lesson ul.mw-lesson__check li.is-checked::after{content:"";position:absolute;left:calc(.15rem + 4px);top:calc(.55rem + 4px);width:10px;height:10px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
.mw-learn .mw-lesson ul.mw-lesson__check li.is-checked{color:#6b625b}
.mw-learn .mw-lesson ul.mw-lesson__check.is-complete li.is-checked{color:#2C2C2C}
.mw-learn .mw-lesson ul.mw-lesson__check.is-complete{box-shadow:inset 3px 0 0 #C0392B;padding-left:.6rem}
/* lesson video slot (makerworks-lesson-video.php) — top of the lesson, 16:9, phone + desktop */
.mw-learn .mw-video{margin:0 0 1.6rem}
.mw-learn .mw-video__frame{position:relative;width:100%;aspect-ratio:16/9;background:#2C2C2C;border-radius:12px;overflow:hidden;box-shadow:0 8px 28px rgba(44,44,44,.18)}
@supports not (aspect-ratio:16/9){.mw-learn .mw-video__frame{height:0;padding-top:56.25%}}
.mw-learn .mw-video__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.mw-learn .mw-video__caption{margin:.6rem 0 0;color:#6b625b;font-size:.92rem;text-align:center}
.mw-learn .mw-video--empty .mw-video__frame{display:grid;place-items:center;background:#FAF7F2;border:2px dashed #d9cfc4;box-shadow:none;color:#5e5553;padding:1rem;text-align:center;aspect-ratio:auto;min-height:7rem}
.mw-learn .mw-video--empty p{margin:0;font-size:.95rem}
@media (max-width:600px){.mw-learn .mw-video{margin-bottom:1.1rem}.mw-learn .mw-video__frame{border-radius:8px}}
/* "Back to my dashboard" — top of the title band + after the content (learn-template.html) */
.mw-learn .mw-learn__nav{margin:0 0 1rem;text-align:left}
.mw-learn .mw-learn__nav--bottom{margin:2.5rem 0 0;text-align:center}
.mw-learn a.mw-learn__back{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:.45rem 1rem;border-radius:999px;border:1.5px solid rgba(255,255,255,.45);background:transparent;color:#fff !important;font-weight:700;font-size:.86rem;letter-spacing:.3px;text-decoration:none !important;transition:background .12s ease,color .12s ease}
.mw-learn a.mw-learn__back:hover,.mw-learn a.mw-learn__back:focus-visible{background:#fff;color:#2C2C2C !important}
.mw-learn a.mw-learn__back--solid{border-color:#C0392B;background:#C0392B;color:#fff !important;min-height:44px;padding:.6rem 1.3rem;font-size:.95rem}
.mw-learn a.mw-learn__back--solid:hover,.mw-learn a.mw-learn__back--solid:focus-visible{background:#a5301f;border-color:#a5301f;color:#fff !important}
/* "Finished this lesson?" — LearnDash's own Mark Complete form, dressed as a panel */
.mw-learn .learndash_content > br{display:none}
.mw-learn form.sfwd-mark-complete{margin:2.2rem 0 1.2rem;padding:1.6rem 1.4rem 1.5rem;border:2px solid #C0392B;border-radius:14px;background:#fff7f3;text-align:center}
.mw-learn form.sfwd-mark-complete::before{content:"Finished this lesson?";display:block;font-size:clamp(1.25rem,2.6vw,1.6rem);font-weight:800;line-height:1.2;color:#2C2C2C;margin-bottom:.9rem}
.mw-learn form.sfwd-mark-complete::after{content:"Tick off the competency check above, then mark the lesson complete to unlock the next one.";display:block;color:#6b625b;font-size:.92rem;line-height:1.5;margin-top:.9rem}
.mw-learn input.learndash_mark_complete_button{font-size:1.05rem !important;padding:.85rem 2.2rem !important;border-radius:999px !important;cursor:pointer;box-shadow:0 4px 14px rgba(192,57,43,.28)}
.mw-learn input.learndash_mark_complete_button:hover{transform:translateY(-1px)}
.mw-learn #learndash_next_prev_link{display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin:1rem 0 0}
.mw-learn #learndash_next_prev_link a{border-radius:999px !important}
/* "Lesson complete" banner (makerworks-lesson-complete.php) */
.mw-learn .mw-learn__done{display:flex;align-items:flex-start;gap:.8rem;margin:0 0 1.4rem;padding:.9rem 1.1rem;background:#FAF7F2;border:1px solid #e6ded4;border-left:4px solid #C0392B;border-radius:0 10px 10px 0;color:#2C2C2C;line-height:1.5}
.mw-learn .mw-learn__done-check{flex:0 0 auto;width:26px;height:26px;margin-top:.1rem;border-radius:50%;background:#C0392B;position:relative}
.mw-learn .mw-learn__done-check::after{content:"";position:absolute;left:7px;top:7px;width:12px;height:12px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
.mw-learn .mw-learn__done a.mw-learn__done-link{color:#C0392B !important;font-weight:700;text-decoration:underline !important}
/* header card: "Want it on paper? [You can print it here.] Or you can scroll down for a digital copy." */
.mw-learn .mw-lesson__paper{margin:0;flex:0 1 300px;color:#e9e4dd;font-size:.92rem;line-height:1.55}
.mw-learn .mw-lesson__paper a.mw-lesson__pdf{margin:.25rem 0;min-height:40px;padding:.45rem .95rem;font-size:.88rem}
.mw-learn .mw-lesson__paper-or{display:block;margin-top:.25rem;color:#bfb6ad;font-size:.86rem}
@media (max-width:600px){.mw-learn .mw-lesson__paper{flex-basis:100%}.mw-learn .mw-lesson__paper a.mw-lesson__pdf{width:100%;justify-content:center}}
/* fix: the print button spilled out of the header card on phones — the theme leaves it content-box, so
   width:100% + padding overshot the card by ~30px. Border-box + wrapping text. */
.mw-learn a.mw-lesson__pdf,.mw-learn a.mw-learn__back{box-sizing:border-box;max-width:100%}
@media (max-width:600px){
  .mw-learn .mw-lesson__paper a.mw-lesson__pdf{display:flex;width:100%;white-space:normal;text-align:center}
  .mw-learn .mw-lesson__head{overflow:hidden}
}
/* LearnDash prev/next links (legacy template prints <p id="learndash_next_prev_link">, an ID — the older
   `.learndash_next_prev_link a` rule in the LOGGED IN block never matched). Styled like the other pills. */
.mw-learn #learndash_next_prev_link{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap;margin:1.4rem 0 0;padding-top:1.2rem;border-top:1px solid #e6ded4}
.mw-learn #learndash_next_prev_link a{box-sizing:border-box;display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:.6rem 1.3rem;border-radius:999px;border:2px solid #C0392B;background:#C0392B;color:#fff !important;font-weight:700;font-size:.95rem;text-decoration:none !important;transition:background .12s ease,transform .12s ease;box-shadow:0 4px 14px rgba(192,57,43,.22)}
.mw-learn #learndash_next_prev_link a:hover,.mw-learn #learndash_next_prev_link a:focus-visible{background:#a5301f;border-color:#a5301f;transform:translateY(-1px)}
.mw-learn #learndash_next_prev_link a.prev-link{background:transparent;color:#C0392B !important;box-shadow:none}
.mw-learn #learndash_next_prev_link a.prev-link:hover,.mw-learn #learndash_next_prev_link a.prev-link:focus-visible{background:#fbeeea;color:#C0392B !important}
.mw-learn #learndash_next_prev_link a.next-link{margin-left:auto}
.mw-learn #learndash_next_prev_link .meta-nav{display:inline;font-size:1.05em;line-height:1}   /* theme makes .meta-nav display:block → the arrow wrapped onto its own line (67px pill) */
@media (max-width:600px){
  .mw-learn #learndash_next_prev_link a{flex:1 1 100%;justify-content:center}
  .mw-learn #learndash_next_prev_link a.next-link{order:-1;margin-left:0}
}
/* == MAKERWORKS LESSON END == */

/* == MAKERWORKS PATTERNS START == */
/* MakerWorks patterns + product details panel — generic branded building blocks usable on any page. */
.mw-eyebrow{margin:2rem 0 .2rem;font-size:.76rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#C0392B}
.mw-eyebrow + .mw-h2,.mw-eyebrow + h2{margin-top:0}
.mw-h2{margin:1.4rem 0 .6rem;font-size:clamp(1.4rem,2.8vw,1.9rem);font-weight:800;line-height:1.2;color:#2C2C2C}
.mw-band{color:#fff}
.mw-band__eyebrow{margin:0 0 .4rem;font-size:.78rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:#e8735f}
.mw-band__h{margin:0 0 .6rem;font-size:clamp(1.9rem,4.5vw,2.8rem);font-weight:800;line-height:1.15;color:#fff}
.mw-band__sub{margin:0;color:#e9e4dd;font-size:1.05rem;line-height:1.6}
.mw-panel{margin:1.4rem 0;padding:1.4rem 1.5rem;background:#FAF7F2;border:1px solid #e6ded4;border-radius:12px}
.mw-panel .mw-eyebrow{margin-top:0}
.mw-panel--red{background:#fff7f3;border-color:#f1d9d3;border-left:4px solid #C0392B}
.mw-cards{margin:1rem 0 1.4rem;gap:1rem}
.mw-card{padding:1.1rem 1.2rem;background:#fff;border:1px solid #e6ded4;border-top:4px solid #C0392B;border-radius:10px;box-shadow:0 2px 10px rgba(44,44,44,.05)}
.mw-card__h{margin:0 0 .35rem;font-size:1.05rem;font-weight:800;color:#2C2C2C}
.mw-card__p{margin:0;color:#5e5553;line-height:1.5}
.mw-list{margin:0 0 1.2rem;padding-left:1.3rem;line-height:1.55}
.mw-list li{margin:.3rem 0}
.mw-list--check{list-style:none;padding-left:0}
.mw-list--check li{position:relative;padding-left:1.8rem}
.mw-list--check li::before{content:"";position:absolute;left:0;top:.38rem;width:16px;height:16px;border-radius:50%;background:#C0392B}
.mw-list--check li::after{content:"";position:absolute;left:4px;top:calc(.38rem + 4px);width:8px;height:8px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
.mw-list--steps{list-style:none;padding-left:0;counter-reset:mws}
.mw-list--steps li{counter-increment:mws;position:relative;padding:.4rem 0 .4rem 2.5rem}
.mw-list--steps li::before{content:counter(mws);position:absolute;left:0;top:.35rem;width:1.8rem;height:1.8rem;border-radius:50%;background:#C0392B;color:#fff;font-weight:800;font-size:.85rem;display:grid;place-content:center}
.mw-table{margin:.6rem 0 1.4rem;overflow-x:auto}
.mw-table table{width:100%;border-collapse:collapse;border:1px solid #e6ded4;font-size:.95rem}
.mw-table th,.mw-table td{padding:.55rem .75rem;border:1px solid #e6ded4;text-align:left;vertical-align:top}
.mw-table th{background:#2C2C2C;color:#fff;font-size:.78rem;letter-spacing:1px;text-transform:uppercase}
.mw-table tbody tr:nth-child(even) td{background:#FAF7F2}
.mw-btn .wp-block-button__link{box-shadow:0 4px 14px rgba(192,57,43,.22)}
.mw-btn .wp-block-button__link:hover{background-color:#a5301f !important}
.mw-btn-outline .wp-block-button__link{border:2px solid #C0392B !important}
/* synced: CTA, signup panel, testimonial, safety notice */
.mw-cta{margin:2rem 0;padding:1.6rem 1.2rem;text-align:center;background:#FAF7F2;border-radius:14px}
.mw-cta .wp-block-buttons{margin-bottom:.6rem}
.mw-cta__btn .wp-block-button__link{padding:.8rem 2rem;font-size:1.05rem;box-shadow:0 4px 14px rgba(192,57,43,.25)}
.mw-cta__btn .wp-block-button__link:hover{background-color:#a5301f !important}
.mw-signup-panel{margin:2rem 0 0;padding:1.6rem 1.4rem;background:#2C2C2C;border-radius:14px;color:#fff}
.mw-signup-panel__h{margin:0 0 .3rem;font-size:1.4rem;font-weight:800;color:#fff}
.mw-signup-panel__p{margin:0 0 1rem;color:#d9d0c7}
.mw-testimonial{margin:2rem 0;padding:1.5rem 1.6rem;background:#fff;border:1px solid #e6ded4;border-left:5px solid #C0392B;border-radius:0 14px 14px 0}
.mw-testimonial__quote{margin:0 0 .6rem;font-size:1.15rem;line-height:1.55;color:#2C2C2C;font-style:italic}
.mw-testimonial__who{margin:0;font-size:.92rem;color:#6b625b;font-weight:700}
.mw-testimonial__who em{font-weight:400}
.mw-notice{margin:1.6rem 0;padding:.9rem 1.1rem;background:#fff7f3;border:1px solid #f1d9d3;border-left:4px solid #C0392B;border-radius:0 10px 10px 0}
.mw-notice__p{margin:0;font-size:.95rem;line-height:1.55;color:#2C2C2C}
.mw-notice__p a{color:#C0392B;font-weight:700}
/* product details panel (makerworks-product-specs.php) */
.mw-spec{margin:0 0 1.8rem;padding:1.3rem 1.4rem;background:#FAF7F2;border:1px solid #e6ded4;border-radius:14px}
.mw-spec__chips{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 1rem}
.mw-spec__chip{display:flex;flex-direction:column;min-width:9rem;padding:.55rem .9rem;background:#fff;border:1px solid #e6ded4;border-radius:10px}
.mw-spec__chip dt{font-size:.68rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#C0392B}
.mw-spec__chip dd{margin:0;font-weight:700;color:#2C2C2C}
.mw-spec__lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem 1.6rem}
.mw-spec__list h3{margin:0 0 .35rem;font-size:.8rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:#2C2C2C;border-bottom:2px solid #C0392B;display:inline-block;padding-bottom:.2rem}
.mw-spec__list ul{margin:0;padding-left:1.1rem;line-height:1.5}
.mw-spec__list li{margin:.2rem 0}
.mw-spec__note{margin:1rem 0 0;padding-top:.8rem;border-top:1px dashed #d9cfc4;font-size:.92rem;color:#5e5553}
.mw-spec__note + .mw-spec__note{margin-top:.4rem;padding-top:0;border-top:0}
/* blog single (single-post template) */
.mw-post .wp-block-post-featured-image img{border-radius:14px}
.mw-post__meta{color:#bfb6ad;font-size:.9rem}
.mw-post__more{margin:2rem 0 0;text-align:center}
.mw-post__more a{color:#C0392B !important;font-weight:700}
@media (max-width:600px){
  .mw-panel{padding:1.1rem 1rem}
  .mw-cta{padding:1.3rem .9rem}
}
/* == MAKERWORKS PATTERNS END == */

/* == MAKERWORKS DOWNLOADS START == */
/* My Account → Downloads: button + table on phones */
.mw-account a.mw-download-btn,.mw-account .woocommerce-MyAccount-downloads-file{box-sizing:border-box;border:0 !important;display:inline-flex !important;align-items:center;gap:.4rem;min-height:40px;padding:.5rem 1.1rem !important;border-radius:999px !important;background:#C0392B !important;color:#fff !important;font-weight:700;font-size:.9rem;line-height:1.1;white-space:nowrap;text-decoration:none !important;box-shadow:0 3px 10px rgba(192,57,43,.22)}
.mw-account a.mw-download-btn:hover{background:#a5301f !important}
.mw-account table.woocommerce-MyAccount-downloads td{vertical-align:middle}
@media (max-width:600px){
  .mw-account table.woocommerce-MyAccount-downloads td.download-file::before{display:none}
  .mw-account a.mw-download-btn{width:100%;justify-content:center}
}
/* My Account tables in general (Orders, Downloads, view-order): action buttons as pills, even row rules.
   Woo prints the order number as a <th> inside <tbody>, which inherited the header's 2px rule — the stray
   underline under "#1896". */
.mw-account .woocommerce-MyAccount-content table tbody th,.mw-account .woocommerce-MyAccount-content table tbody td{border-bottom:1px solid #f0e6dd !important;vertical-align:middle}
.mw-account .woocommerce-MyAccount-content table tbody tr:last-child th,.mw-account .woocommerce-MyAccount-content table tbody tr:last-child td{border-bottom:0 !important}
.mw-account .woocommerce-MyAccount-content table tbody th a{color:#C0392B !important;font-weight:800;text-decoration:none !important}
.mw-account .woocommerce-MyAccount-content table tbody th a:hover{text-decoration:underline !important}
.mw-account .woocommerce-MyAccount-content a.woocommerce-button,.mw-account .woocommerce-MyAccount-content table .button{box-sizing:border-box;display:inline-flex !important;align-items:center;justify-content:center;gap:.4rem;min-height:40px;margin:0 .3rem .3rem 0;padding:.5rem 1.1rem !important;border:0 !important;border-radius:999px !important;background:#C0392B !important;color:#fff !important;font-weight:700;font-size:.9rem;line-height:1.1;white-space:nowrap;text-decoration:none !important;box-shadow:0 3px 10px rgba(192,57,43,.22)}
.mw-account .woocommerce-MyAccount-content a.woocommerce-button:hover,.mw-account .woocommerce-MyAccount-content table .button:hover{background:#a5301f !important}
.mw-account .woocommerce-MyAccount-content a.woocommerce-button.cancel{background:transparent !important;color:#C0392B !important;box-shadow:inset 0 0 0 2px #C0392B}
.mw-account .woocommerce-MyAccount-content a.woocommerce-button.cancel:hover{background:#fbeeea !important}
@media (max-width:600px){.mw-account .woocommerce-MyAccount-content a.woocommerce-button{width:100%}}
/* "← Back to dashboard" on the account tabs: was a plain text link, easy to miss. Same outlined pill as the
   lesson pages' back button; fills red on hover. */
.mw-account a.mw-acct__back{box-sizing:border-box;display:inline-flex;align-items:center;gap:.45rem;min-height:42px;margin:.4rem 0 1.1rem;padding:.5rem 1.15rem;border:2px solid #C0392B;border-radius:999px;background:#fff;color:#C0392B !important;font-weight:800;font-size:.95rem;text-decoration:none !important;box-shadow:0 2px 8px rgba(44,44,44,.06);transition:background .12s ease,color .12s ease}
.mw-account a.mw-acct__back:hover,.mw-account a.mw-acct__back:focus-visible{background:#C0392B;color:#fff !important}
@media (max-width:600px){.mw-account a.mw-acct__back{width:100%;justify-content:center}}
/* == MAKERWORKS DOWNLOADS END == */

/* == MAKERWORKS FOOTER EMAIL START == */
/* Footer contact: "Email" as a small label on its own line, the address as a clean mailto link under it
   (the column is ~266px, so "Email : address" always broke mid-line). */
footer .mw-footer-email{display:flex;flex-direction:column;gap:.15rem;margin-top:.6rem}
footer .mw-footer-email__label{font-size:.7rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;opacity:.75}
footer .mw-footer-email a{overflow-wrap:anywhere;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
footer .mw-footer-email a:hover{border-bottom-color:currentColor}
/* == MAKERWORKS FOOTER EMAIL END == */

/* == MAKERWORKS CONTACT START == */
/* Contact page (#1727, template page-contact-2) */
.mw-contact__grid{display:grid;gap:1.4rem;margin:0}
@media (min-width:860px){.mw-contact__grid{grid-template-columns:1.25fr .85fr;gap:1.8rem;align-items:start}}
.mw-contact__card{background:#fff;border:1px solid #e6ded4;border-radius:14px;padding:1.5rem 1.5rem 1.6rem;box-shadow:0 2px 10px rgba(44,44,44,.05);color:#2C2C2C}
.mw-contact__card--form{border-top:5px solid #C0392B}
.mw-contact__side{display:grid;gap:1rem}
.mw-contact__side .mw-contact__card{padding:1.2rem 1.3rem}
.mw-contact__eyebrow{margin:0 0 .25rem;font-size:.74rem;font-weight:800;letter-spacing:2.5px;text-transform:uppercase;color:#C0392B}
.mw-contact__title{margin:0 0 .5rem;font-size:clamp(1.5rem,3vw,2rem);font-weight:800;line-height:1.15;color:#2C2C2C}
.mw-contact__lede{margin:0 0 1.2rem;color:#5e5553;line-height:1.6}
.mw-contact__fine{margin:1rem 0 0;color:#8a7f76;font-size:.85rem}
.mw-contact__big{display:block;margin:.1rem 0 .35rem;font-size:1.1rem;font-weight:800;color:#2C2C2C !important;text-decoration:none !important;overflow-wrap:anywhere}
a.mw-contact__big:hover{color:#C0392B !important}
.mw-contact__muted{margin:0;color:#6b625b;font-size:.92rem;line-height:1.55}
.mw-contact__quick{list-style:none;margin:.4rem 0 0;padding:0}
.mw-contact__quick li{position:relative;padding:.4rem 0 .4rem 1.4rem;border-bottom:1px solid #f0e6dd;font-size:.93rem;line-height:1.5;color:#5e5553}
.mw-contact__quick li:last-child{border-bottom:0}
.mw-contact__quick li::before{content:"";position:absolute;left:0;top:.95rem;width:8px;height:8px;border-radius:50%;background:#C0392B}
.mw-contact__quick a{color:#C0392B !important;font-weight:700;text-decoration:none !important}
.mw-contact__quick a:hover{text-decoration:underline !important}
/* WPForms inside the card */
.mw-contact .wpforms-container{margin:0}
.mw-contact .wpforms-form .wpforms-field{padding:.45rem 0}
.mw-contact .wpforms-form .wpforms-field-label{font-weight:700;font-size:.9rem;color:#2C2C2C;margin-bottom:.3rem}
.mw-contact .wpforms-form input[type=text],.mw-contact .wpforms-form input[type=email],.mw-contact .wpforms-form textarea{width:100%;max-width:100%;min-height:46px;padding:.65rem .9rem;border:1.5px solid #d9cfc4;border-radius:10px;background:#FAF7F2;color:#2C2C2C;font-size:1rem;box-shadow:none}
.mw-contact .wpforms-form textarea{min-height:150px}
.mw-contact .wpforms-form input:focus,.mw-contact .wpforms-form textarea:focus{outline:none;border-color:#C0392B;background:#fff;box-shadow:0 0 0 3px rgba(192,57,43,.15)}
.mw-contact .wpforms-form .wpforms-submit-container{padding-top:.6rem}
.mw-contact .wpforms-form button.wpforms-submit{box-sizing:border-box;min-height:48px;padding:.75rem 1.8rem;border:0;border-radius:999px;background:#C0392B;color:#fff;font-weight:800;font-size:1rem;cursor:pointer;box-shadow:0 4px 14px rgba(192,57,43,.25);transition:background .12s ease,transform .12s ease}
.mw-contact .wpforms-form button.wpforms-submit:hover{background:#a5301f;transform:translateY(-1px)}
.mw-contact .wpforms-form .wpforms-error{color:#C0392B;font-size:.85rem}
.mw-contact .wpforms-confirmation-container-full{background:#fff7f3;border:1px solid #f1d9d3;border-left:4px solid #C0392B;border-radius:0 10px 10px 0;padding:1rem 1.2rem;color:#2C2C2C}
@media (max-width:600px){.mw-contact .wpforms-form button.wpforms-submit{width:100%}.mw-contact__card{padding:1.2rem 1.1rem}}
/* == MAKERWORKS CONTACT END == */

/* == MAKERWORKS HOME STRIP START == */
/* Homepage "What's here" strip (three ways in) — added 2026-10-08 under the mission strip. */
.mw-wh{max-width:1080px;margin:0 auto}
.mw-wh__head{text-align:center;margin-bottom:1.6rem}
.mw-wh__title{margin:.4rem 0 0;font-size:clamp(1.7rem,3.6vw,2.4rem);font-weight:900;line-height:1.08;color:#111}
.mw-wh__grid{display:grid;gap:1.1rem}
@media (min-width:760px){.mw-wh__grid{grid-template-columns:repeat(3,1fr);gap:1.4rem}}
.mw-wh__card{display:flex;flex-direction:column;gap:.45rem;padding:1.4rem 1.4rem 1.5rem;background:#fff;border:1px solid #efe2dc;border-top:5px solid #C0392B;border-radius:14px;color:#2C2C2C;text-decoration:none !important;box-shadow:0 2px 10px rgba(44,44,44,.05);transition:transform .15s ease,box-shadow .15s ease}
.mw-wh__card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(44,44,44,.12)}
.mw-wh__tag{align-self:flex-start;padding:.2rem .65rem;border-radius:999px;background:#C0392B;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.mw-wh__tag--soon{background:#2C2C2C}
.mw-wh__name{font-size:1.15rem;font-weight:800;line-height:1.2;color:#111}
.mw-wh__desc{color:#5e5553;font-size:.95rem;line-height:1.55;flex:1 1 auto}
.mw-wh__cta{margin-top:.4rem;color:#C0392B;font-weight:800;font-size:.95rem}
.mw-wh__card:hover .mw-wh__cta{text-decoration:underline}
@media (max-width:781px){.makerworks-page .mw-whats-here{padding-top:40px !important;padding-bottom:40px !important}}
/* "Start here": the lone course card lies on its side on desktop (image left, words right) so a one-course
   section is not a 1,000px column. The card's wrapper group is constrained to 460px — widen it. */
@media (min-width:760px){
  .makerworks-page .mw-course-catalog .wp-block-group.is-layout-constrained:has(> .mw-course-card){max-width:860px}
  .makerworks-page .mw-course-card{display:grid;grid-template-columns:320px 1fr;align-items:center;overflow:hidden;max-width:860px !important;width:100%;margin-inline:auto}
  .makerworks-page .mw-course-card .mw-course-image{margin:0;height:100%}
  .makerworks-page .mw-course-card .mw-course-image img{width:100%;height:100%;object-fit:cover;display:block}
}
/* == MAKERWORKS HOME STRIP END == */
